- This wiki is out of date, use the continuation of this wiki instead
Write
From FenixWiki
(Difference between revisions)
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: