This wiki is out of date, use the continuation of this wiki instead

Write

From FenixWiki

(Difference between revisions)
Jump to: navigation, search
Revision as of 22:43, 27 June 2007 (edit)
Sandman (Talk | contribs)
m
← Previous diff
Revision as of 02:33, 24 July 2007 (edit) (undo)
Rincewind (Talk | contribs)
(linked to alignment modes article, notes added)
Next diff →
Line 5: Line 5:
'''INT''' write ( <'''INT''' fontID> , <'''INT''' x> , <'''INT''' y> , <'''INT''' alignment> , <'''STRING''' text>) '''INT''' write ( <'''INT''' fontID> , <'''INT''' x> , <'''INT''' y> , <'''INT''' alignment> , <'''STRING''' text>)
-Puts a dynamic text with a certain font on certain coordinates on the screen with a certain [[alignment]].+Puts a dynamic text with a certain font on certain coordinates on the screen with a certain [[Alignment modes|alignment]].
== Parameters == == Parameters ==
Line 15: Line 15:
| '''INT''' y || - The Y coordinate of the text. | '''INT''' y || - The Y coordinate of the text.
|- |-
-| '''INT''' alignment || - The type of [[alignment]].+| '''INT''' alignment || - The type of [[Alignment modes|alignment]].
|- |-
| '''STRING''' text || - The text to be used. | '''STRING''' text || - The text to be used.
Line 27: Line 27:
| !0 || - The [[TextID]] of the text. | !0 || - The [[TextID]] of the text.
|} |}
 +
 +== Notes ==
 +There is a limit of an unknown amount (>1000) of texts to simultaneously exist on the screen. The program will crash when this number is reached.
 +
 +The text depth can be changed by adjusting the global variable [[text_z]].
 +
 +To write variables to the screen, rather use [[write_int]](), [[write_string]](), [[write_float]]() or [[write_var]]() than this command.
 +
 +To write text on a map you can use the command [[write_in_map]]().
== Example == == Example ==

Revision as of 02:33, 24 July 2007


Contents

Definition

INT write ( <INT fontID> , <INT x> , <INT y> , <INT alignment> , <STRING text>)

Puts a dynamic text with a certain font on certain coordinates on the screen with a certain alignment.

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 text - The text to be used.

Returns

INT : TextID

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

Notes

There is a limit of an unknown amount (>1000) of texts to simultaneously exist on the screen. The program will crash when this number is reached.

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

To write variables to the screen, rather use write_int(), write_string(), write_float() or write_var() than this command.

To write text on a map you can use the command write_in_map().

Example

Program texts;
Const
    maxtexts = 10;
Private
    int textid[maxtexts-1];
    string str;
    float flt;
Begin

    // Set FPS
    set_fps(60,0);

    // Write some texts
    textid[0] = write(0,0,0,0,"FPS:");
    textid[1] = write_int(0,30,0,0,&fps);
    textid[2] = write_string(0,160,95,1,&str);
    textid[3] = write_float(0,160,105,0,&flt);

    // Update the texts until ESC is pressed
    Repeat
        // Notice the texts get updated as the values of str and flt changes.
        // The same goes for the value of fps.
        str = "This program is running for " + timer/100 + " seconds.";
        flt = (float)timer/100;
        frame;
    Until(key(_esc));

    // Delete the texts
    for(x=0; x<maxtexts; x++)
        if(textid[x]!=0)
            delete_text(textid[x]);
        end
    end

End

Used in example: set_fps(), write_int(), write_string(), write_float(), key(), delete_text(), array, fps, TextID

This will result in something like:
texts.PNG

Personal tools