Obsługuje tagi:
[b] [/b] - wytłuszczanie tekstu
[i] [/i] - kursywa
[u] [/u] - podkreślenie
[color=c_red] [/color]; [color=#AABBCC] [/color] - kolorowanie tekstu
[font=font_tahoma] [/font] - zmiana czcionki
Funkcje/skrypty:
bbcode_tokenize( Tekst, ObiektCzcionki ) - Tworzy "obiekt bbcode" (szkoda, że w GM brak OOP
bbcode_draw( x, y, ObiektBBCode [, Kolor] ) - Rysuje na pozycji X i Y sformatowany tekst z "obiektu BBCode", który podajemy w trzecim argumencie. Opcjonalnie można podać kolor podkreślenia w czwartym argumencie, jak nie podamy wtedy podkreślać będzie na czarno
bbcode_free( ObiektBBCode ) - Zwalnia "obiekt bbcode" z pamięci.
bbcode_rebuild( ObiektBBCode, Tekst, ObiektCzcionki ) - Przetwarza na nowo podane argumenty i zwraca nowy uchwyt "obiektu bbcode". Zwykłe opakowanie funkcji bbcode_tokenize i bbcode_free.
bbcode_font_add( Kolor, Czcionka, Czcionka, Czcionka, Czcionka ) - Tworzy "obiekt czcionki" i zwraca jego uchwyt. W 1st argumencie podajemy standardowy kolor czcionki, w 2nd argumencie podajemy czcionkę bez formatowania, w 3rd argumencie podajemy czcionkę wytłuszczoną, w 4th argumencie podajemy czcionkę z kursywą, w 5th argumencie podajemy wytłuszczoną czcionkę z kursywą
bbcode_font_free( ObiektCzcionki ) - zwalnia "obiekt czcionki" z pamięci. Nie, nie usuwa czcionek z GM podanych przy tworzeniu "obiektu czcionki".
Tak, więc trzeba zrobić co najmniej cztery rzeczy by wyświetlić sformatowany tekst:
- Utworzyć cztery czcionki (ten sam krój, tylko inne style [normalny, wytłuszczony, kursywa, wytłuszczony+kursywa])
- Utworzyć "obiekt czcionki" (bbcode_font_add)
- Utworzyć "obiekt bbcode" (bbcode_tokenize)
- i rysować za pomocą bbcode_draw
Parę słów o tagach itp:
- W tagu color kolor możemy podać w hex, czyli np. [color=#AABBCC][/color] i za pomocą kodu GML czyli np. [color=c_red][/color] i [color=make_color_rgb( 100, 100, 100 )][/color]
- W tagu font podajemy uchwyt "obiektu czcionki".
- Żeby wyświetlić znak "[" musisz wpisać "\[", to samo z "#"
Screenik:

Download (gm6):
http://www.gmclan.org/up541_11_bbcode.html (with example!
Dopiszcie mnie do credits jeśli tego użyjecie.