Write string

From Bennu Wiki
Revision as of 06:04, 8 November 2009 by Sandman (talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search


Syntax

INT write_string ( <INT fontID> , <INT x> , <INT y> , <INT alignment> , <STRING POINTER var> )

Description

Writes a string to the screen, which will be automatically updated when the value of the string changes. The string will remain on the screen until deleted with delete_text().

Parameters

INT fontID - The FontID of the font to be used for the text.
INT x - The X coordinate of the text.
INT y - The Y coordinate of the text.
INT alignment - The type of alignment.
STRING POINTER var - A pointer to a string.

Returns

INT : TextID

-1 - Error. The text could not be obtained or was empty.
>=0 - The TextID of the text.

Notes

There is a limit of 511 texts to simultaneously exist on the screen. The program will crash with an error when this number is reached.

The text depth can be changed by adjusting the global variable text_z.

Instead of write_string(), write_var() can be used for the same purpose, which is a more general function that allows you to write variables of any type to the screen.

Errors

Too many texts onscreen - There are too many texts on the screen.

Example

import "mod_text"
import "mod_key"

Global
    string my_string="Bennu Game Development";
End
Process Main()
Begin

    write_string(0,320/2,200/2,4,&my_string);

    Repeat
        frame;
    Until(key(_ESC))

End

Used in example: write_string(), key()

This will result in something like:
Write string.png