PAlib: PA_Text.h File Reference

Main Page | Modules | File List | Globals | Search for

# PA_Text.h File Reference

Text system in tile mode. More...

Go to the source code of this file.

## Data Structures

struct | textborders

## Defines

#define | PA_InitCustomTextEx(screen, bg_select, tiles, map, pal)
#define | PA_InitCustomText(screen, bg_select, text) PA_InitCustomTextEx(screen, bg_select, text##_Tiles, text##_Map, text##_Pal)
| Init the text using one of your own fonts !
#define | PA_ShowFont(screen) PA_LoadBgMap(screen, PAbgtext[screen], (void*)PA_textmap[screen], BG_256X256)
| Show the current font used. This is just for debug, no real use ingame

## Typedefs

typedef void(* | letterfp )(u8 size, u8 screen, u16 x, u16 y, char lettertemp, u8 color)

## Functions

void | PA_CreateTextPal (u8 screen, u8 pal_number, u16 r, u16 g, u16 b)
void | PA_InitText (u8 screen, u8 bg_select)
| Output text on the gba screen. Works only in modes 0-2
void | PA_SetTileLetter (u8 screen, u16 x, u16 y, char letter)
| Output a letter on the DS screen.
void | PA_SetTextTileCol (u8 screen, u8 color)
| Change the text writing color (does not change the current text's color)
void | PA_OutputText (u8 screen, u16 x, u16 y, char *text,...)
| Output text on the DS screen. Works only in modes 0-2
u16 | PA_OutputSimpleText (u8 screen, u16 x, u16 y, const char *text)
| Output simple text on the DS screen. Works only in modes 0-2. Much faster than PA_OutputText, but much more limited... Returns the number of letters
u32 | PA_BoxText (u8 screen, u16 basex, u16 basey, u16 maxx, u16 maxy, const char *text, s32 limit)
u32 | PA_BoxTextNoWrap (u8 screen, u16 basex, u16 basey, u16 maxx, u16 maxy, const char *text, u32 limit)

Output text on the DS screen. This text is limited to a chosen box, and you can chose the number of letters to output (can be used to show 'typed' text, just put 10000 if you want to show all the text...). Returns the number of letters outputed. This function does not support word wrapping

void | PA_SetTextCol (u8 screen, u16 r, u16 g, u16 b)
| Change the screen text's default color
s16 | PA_SmartText (u8 screen, s16 basex, s16 basey, s16 maxx, s16 maxy, char *text, u8 color, u8 size, u8 transp, s32 limit)

This is a variable width and variable size function to draw text on the screen. It draws on an 8 bit background (see PA_Init8bitBg for more info), and has options such as size, transaprency, and box limits, as well as the color. Only problem : it does not take commands such as d, etc... The function returns the number of characters it outputed

s16 | PA_CenterSmartText (u8 screen, s16 basex, s16 basey, s16 maxx, s16 maxy, char *text, u8 color, u8 size, u8 transp)
| Basicaly the same as the SmartText function, but this time centered...
u8 | PA_CompareText (char *text1, char *text2)
| Compare a string to a second. Example : PA_CompareText(Playname, "Mollusk");
void | PA_CopyText (char *text1, char *text2)
| Copy one string into another
void | PA_InitTextBorders (u8 screen, u8 x1, u8 y1, u8 x2, u8 y2)
| Initialise a text box with it's borders. This makes writing in a delimited area much easier...
void | PA_EraseTextBox (u8 screen)
| Erases the text in a textbox. Requires that that box be initialized with PA_InitTextBorders
u32 | PA_SimpleBoxText (u8 screen, const char *text, u32 limit)
| Write text in an initiliazed textbox. Similar to PA_BoxText, but without needing the text limits
void | PA_ClearTextBg (u8 screen)
| Erase all the text on a given screen
void | PA_OutputTextSpecial0 (u8 screen, int x1, int y, char *text)
void | PA_OutputTextSpecial1 (u8 screen, int x1, int y, char *text)
void | PA_OutputTextSpecial2 (u8 screen, int x1, int y, char *text)
void | PA_OutputTextSpecial3 (u8 screen, int x1, int y, char *text)
void | PA_OutputTextSpecial4 (u8 screen, int x1, int y, char *text)
void | PA_OutputTextSpecial5 (u8 screen, int x1, int y, char *text)

## Variables

u16 | textcol [2]
u8 | PAbgtext [2]
u16 * | PA_textmap [2]
u8 * | PA_texttiles [2]
u16 * | PA_textpal [2]
s8 | PA_font [2]
letterfp | letters [5]
u16 | PAtext_pal [2]
textborders | PA_TextBox [2]

## Detailed Description

Text system in tile mode.

Not much to say, just a good debug option...

## Define Documentation

#define PA_InitCustomTextEx | ( | screen,
|  | bg_select,
|  | tiles,
|  | map,
|  | pal |  | ) |

Value:

    {\
       PAbgtext[screen] = bg_select;\
       PA_LoadSimpleBg(screen, bg_select, tiles, Blank, BG_256X256, 0, 1);\
       PA_LoadBgPal(screen, bg_select, (void*)pal);\
       PA_textmap[screen] = (u16*)map;PA_textpal[screen] = (u16*)pal;PAtext_pal[screen]=0;\
       u32 PAtexttempvar = 0; for (PAtexttempvar = 0; PAtexttempvar < 32*24; PAtexttempvar++) PA_SetTileLetter(screen, PAtexttempvar, 0, 0);   }