Any luck, Im going slightly bald as it's driving me crazy. Hehehe.
I'd love very much for this to draw a letter of a bitmap font rather then text.
Thanks immensly!! :)
I'd love very much for this to draw a letter of a bitmap font rather then text.
Const TOKEN_EOL = 0 Const TOKEN_TAG = 1 Const TOKEN_STRING = 2 Const xres=800,yres=600 Graphics xres,yres SetBuffer BackBuffer() ;-==========================- ;-=[Create Some Font Types]=- ;-==========================- Const ABFontW=16 ;Font Width Const ABFontH=16 ;Font Height Const ABFontL=96 ;Number Of Letters In The Font Global Bitmap_Font =LoadAnimImage("media\Font16x16.png" ,ABFontW,ABFontH,0,ABFontL-1) ;-==============- ;-=[Setup Text]=- ;-==============- Global Article$ Article$ = "[Red]Please [Green]Change [Blue]My [Purple]colors[Return]" Article$ = Article$ + "[Normal]And this is default / normal [Bum] text and this should be [Blue]blue Text" Global i=1 Global push = False Global pushed$ Global message$ Global messagepointer = 1 Global token$ Global TextX = 0 Global TextY = 0 Global Article_Store=CreateImage(800,600) ;-============================- ;-=[Feed Me Some Texts Bitch]=- ;-============================- SetBuffer ImageBuffer(Article_Store) displayText(Article$) Flip SetBuffer BackBuffer() Global Over=False While Not Over=True Cls DrawImage Article_Store,0,0 value=getkey() If value<>0 Then Over=True Flip Wend ;character input Function GetCharacter$() If push = True ;if a character has been pushed onto the buffer, send it first DebugLog pushed$ push = False Return pushed$ End If If messagepointer > Len(message$) Then Return "eol" character$ = Mid$(message$,messagepointer,1) messagepointer = messagepointer + 1 Return character$ End Function Function PushCharacter(character$) Pushed = character$ Push = True End Function Function Lex() character$ = GetCharacter() Select character$ Case "[" character$ = GetCharacter() Token = "" While character$ <> "]" And character$<> "eol" Token = Token + character$ character$ = GetCharacter() Wend Return TOKEN_TAG Case "eol" Token$ = "" Return TOKEN_EOL Default Token$ = "" While character$ <> "["And character$<>"eol" Token = Token + character$ character$ = GetCharacter() Wend PushCharacter(character$) Return TOKEN_STRING End Select End Function Function DisplayText(TextString$) Message$ = TextString$ Repeat TokenValue = Lex() DebugLog TokenValue +" " + Token$ Select TokenValue Case TOKEN_EOL Return Case TOKEN_TAG Select (Token$) Case "Red" Color 255,000,000 ;these will be changed to signify character sets Case "Green" ; Color 000,255,000 Case "Blue" ; Color 000,000,255 Case "White" ; Color 255,255,255 Case "Purple" ; Color 255,000,255 Case "Normal" ; Color 212,212,212 Case "Bum" ; Color 111,111,111 Case "Return" TextX = 0 TextY = TextY + 16 ;Default : RuntimeError "Don't recognize tag " + Token End Select Default If Character>0 And Character<ABFontL-1 DrawImage Bitmap_Font,TextX,TextY,Character End If TextX = TextX + 8 * Len(Token) End Select Forever End Function
Thanks immensly!! :)