Oh I’m trying to write the code since 3-4 hours, it gets boring I can’t take it anymore I’ve quitted writing.
Maybe if I continue to writing the code, I will success but I don’t want to write it over and over, sorry. And I hate that huge switch block. I find ideas, I mean maybe I can do bitmap fonts with just one script but I can’t write it because I get tired and confused quickly.
Here’s the unfinished code. It doesn’t give error but it doesn’t print fonts either. And this is the simplest form. It was splitted into two scripts once.
using UnityEngine;
using System.Collections;
using System.Collections.Generic;
public class TextController : MonoBehaviour {
public Texture2D[] theFont;
private string text1before;
private string text1after;
private int arrayCounter;
private int offset;
private float timeCounter;
private int guiCounter;
void Start() {
text1before = "HOW ARE YOU?";
text1after = null;
arrayCounter = 0;
timeCounter = 0;
guiCounter = 0;
offset = 0;
}
void Update() {
timeCounter += Time.deltaTime;
if(timeCounter >= 0.1) {
if(arrayCounter < text1before.Length){
switch(text1before[arrayCounter]){
case 'A':
text1after = text1after + 'A';
break;
case 'B':
text1after = text1after + 'B';
break;
case 'C':
text1after = text1after + 'C';
break;
case '\u00C7':
text1after = text1after + '\u00C7';
break;
case 'D':
text1after = text1after + 'D';
break;
case 'E':
text1after = text1after + 'E';
break;
case 'F':
text1after = text1after + 'F';
break;
case 'G':
text1after = text1after + 'G';
break;
case '\u011E':
text1after = text1after + '\u011E';
break;
case 'H':
text1after = text1after + 'H';
break;
case 'I':
text1after = text1after + 'I';
break;
case '\u0130':
text1after = text1after + '\u0130';
break;
case 'J':
text1after = text1after + 'J';
break;
case 'K':
text1after = text1after + 'K';
break;
case 'L':
text1after = text1after + 'L';
break;
case 'M':
text1after = text1after + 'M';
break;
case 'N':
text1after = text1after + 'N';
break;
case 'O':
text1after = text1after + 'O';
break;
case '\u00D6':
text1after = text1after + '\u00D6';
break;
case 'P':
text1after = text1after + 'P';
break;
case 'Q':
text1after = text1after + 'Q';
break;
case 'R':
text1after = text1after + 'R';
break;
case 'S':
text1after = text1after + 'S';
break;
case '\u015E':
text1after = text1after + '\u015E';
break;
case 'T':
text1after = text1after + 'T';
break;
case 'U':
text1after = text1after + 'U';
break;
case '\u00DC':
text1after = text1after + '\u00DC';
break;
case 'V':
text1after = text1after + 'V';
break;
case 'W':
text1after = text1after + 'W';
break;
case 'X':
text1after = text1after + 'X';
break;
case 'Y':
text1after = text1after + 'Y';
break;
case 'Z':
text1after = text1after + 'Z';
break;
case '0':
text1after = text1after + '0';
break;
case '1':
text1after = text1after + '1';
break;
case '2':
text1after = text1after + '2';
break;
case '3':
text1after = text1after + '3';
break;
case '4':
text1after = text1after + '4';
break;
case '5':
text1after = text1after + '5';
break;
case '6':
text1after = text1after + '6';
break;
case '7':
text1after = text1after + '7';
break;
case '8':
text1after = text1after + '8';
break;
case '9':
text1after = text1after + '9';
break;
case '.':
text1after = text1after + '.';
break;
case '\'':
text1after = text1after + '\'';
break;
case ',':
text1after = text1after + ',';
break;
case '!':
text1after = text1after + '!';
break;
case '?':
text1after = text1after + '?';
break;
case ' ':
text1after = text1after + ' ';
break;
default:
text1after = text1after + '?';
break;
}
}
arrayCounter++;
timeCounter = 0;
}
}
void OnGUI(){
if(text1after != null){
if(guiCounter < text1after.Length){
switch(text1after[guiCounter]){
case 'A':
GUI.DrawTexture(new Rect(offset*24, 54, 162, 600), theFont[0]);
break;
case 'B':
GUI.DrawTexture(new Rect(offset*24, 54, 162, 600), theFont[1]);
break;
case 'C':
GUI.DrawTexture(new Rect(offset*24, 54, 162, 600), theFont[0]);
break;
case '\u00C7':
GUI.DrawTexture(new Rect(offset*24, 54, 162, 600), theFont[0]);
break;
case 'D':
GUI.DrawTexture(new Rect(offset*24, 54, 162, 600), theFont[0]);
break;
case 'E':
GUI.DrawTexture(new Rect(offset*24, 54, 162, 600), theFont[0]);
break;
case 'F':
GUI.DrawTexture(new Rect(offset*24, 54, 162, 600), theFont[0]);
break;
case 'G':
GUI.DrawTexture(new Rect(offset*24, 54, 162, 600), theFont[0]);
break;
case '\u011E':
GUI.DrawTexture(new Rect(offset*24, 54, 162, 600), theFont[0]);
break;
case 'H':
GUI.DrawTexture(new Rect(offset*24, 54, 162, 600), theFont[0]);
break;
case 'I':
GUI.DrawTexture(new Rect(offset*24, 54, 162, 600), theFont[0]);
break;
case '\u0130':
GUI.DrawTexture(new Rect(offset*24, 54, 162, 600), theFont[0]);
break;
case 'J':
GUI.DrawTexture(new Rect(offset*24, 54, 162, 600), theFont[0]);
break;
case 'K':
GUI.DrawTexture(new Rect(offset*24, 54, 162, 600), theFont[0]);
break;
case 'L':
GUI.DrawTexture(new Rect(offset*24, 54, 162, 600), theFont[0]);
break;
case 'M':
GUI.DrawTexture(new Rect(offset*24, 54, 162, 600), theFont[0]);
break;
case 'N':
GUI.DrawTexture(new Rect(offset*24, 54, 162, 600), theFont[0]);
break;
case 'O':
GUI.DrawTexture(new Rect(offset*24, 54, 162, 600), theFont[0]);
break;
case '\u00D6':
GUI.DrawTexture(new Rect(offset*24, 54, 162, 600), theFont[0]);
break;
case 'P':
GUI.DrawTexture(new Rect(offset*24, 54, 162, 600), theFont[0]);
break;
case 'Q':
GUI.DrawTexture(new Rect(offset*24, 54, 162, 600), theFont[0]);
break;
case 'R':
GUI.DrawTexture(new Rect(offset*24, 54, 162, 600), theFont[0]);
break;
case 'S':
GUI.DrawTexture(new Rect(offset*24, 54, 162, 600), theFont[0]);
break;
case '\u015E':
GUI.DrawTexture(new Rect(offset*24, 54, 162, 600), theFont[0]);
break;
case 'T':
GUI.DrawTexture(new Rect(offset*24, 54, 162, 600), theFont[0]);
break;
case 'U':
GUI.DrawTexture(new Rect(offset*24, 54, 162, 600), theFont[0]);
break;
case '\u00DC':
GUI.DrawTexture(new Rect(offset*24, 54, 162, 600), theFont[0]);
break;
case 'V':
GUI.DrawTexture(new Rect(offset*24, 54, 162, 600), theFont[0]);
break;
case 'W':
GUI.DrawTexture(new Rect(offset*24, 54, 162, 600), theFont[0]);
break;
case 'X':
GUI.DrawTexture(new Rect(offset*24, 54, 162, 600), theFont[0]);
break;
case 'Y':
GUI.DrawTexture(new Rect(offset*24, 54, 162, 600), theFont[0]);
break;
case 'Z':
GUI.DrawTexture(new Rect(offset*24, 54, 162, 600), theFont[0]);
break;
case '0':
GUI.DrawTexture(new Rect(offset*24, 54, 162, 600), theFont[0]);
break;
case '1':
GUI.DrawTexture(new Rect(offset*24, 54, 162, 600), theFont[0]);
break;
case '2':
GUI.DrawTexture(new Rect(offset*24, 54, 162, 600), theFont[0]);
break;
case '3':
GUI.DrawTexture(new Rect(offset*24, 54, 162, 600), theFont[0]);
break;
case '4':
GUI.DrawTexture(new Rect(offset*24, 54, 162, 600), theFont[0]);
break;
case '5':
GUI.DrawTexture(new Rect(offset*24, 54, 162, 600), theFont[0]);
break;
case '6':
GUI.DrawTexture(new Rect(offset*24, 54, 162, 600), theFont[0]);
break;
case '7':
GUI.DrawTexture(new Rect(offset*24, 54, 162, 600), theFont[0]);
break;
case '8':
GUI.DrawTexture(new Rect(offset*24, 54, 162, 600), theFont[0]);
break;
case '9':
GUI.DrawTexture(new Rect(offset*24, 54, 162, 600), theFont[0]);
break;
case '.':
GUI.DrawTexture(new Rect(offset*24, 54, 162, 600), theFont[0]);
break;
case '\'':
GUI.DrawTexture(new Rect(offset*24, 54, 162, 600), theFont[0]);
break;
case ',':
GUI.DrawTexture(new Rect(offset*24, 54, 162, 600), theFont[0]);
break;
case '!':
GUI.DrawTexture(new Rect(offset*24, 54, 162, 600), theFont[0]);
break;
case '?':
GUI.DrawTexture(new Rect(offset*24, 54, 162, 600), theFont[0]);
break;
case ' ':
GUI.DrawTexture(new Rect(offset*24, 54, 162, 600), theFont[0]);
break;
default:
GUI.DrawTexture(new Rect(offset*24, 54, 162, 600), theFont[0]);
break;
}
}
guiCounter++;
offset++;
}
}
}