Loading Screen Text: Difference between revisions
Springheel (talk | contribs) No edit summary |
Springheel (talk | contribs) No edit summary |
||
Line 5: | Line 5: | ||
Use the following GUI event to read out the "gui::random_value" state variable. The event will be fired by the SDK code as soon as the random_value is set. Just copy and paste into your loading screen .gui. | Use the following GUI event to read out the "gui::random_value" state variable. The event will be fired by the SDK code as soon as the random_value is set. Just copy and paste into your loading screen .gui. | ||
'' | |||
edit: presently this doesn't seem to work when you load a game, only on a fresh start. [Springheel]'' | |||
onNamedEvent OnRandomValueInitialised | onNamedEvent OnRandomValueInitialised |
Revision as of 00:12, 12 July 2011
It's common to add flavour text to a loading screen to help set the mood and give the player something to read while the map is loading.
Mappers can now add a random selection of text, so players will see a different bit of text each time they load the map.
Use the following GUI event to read out the "gui::random_value" state variable. The event will be fired by the SDK code as soon as the random_value is set. Just copy and paste into your loading screen .gui.
edit: presently this doesn't seem to work when you load a game, only on a fresh start. [Springheel]
onNamedEvent OnRandomValueInitialised { if ("gui::random_value" < 0.1) { set "TextLoading::text" "Text1"; // Replace "TextLoading" with the name of your text windowdef. } else if ("gui::random_value" < 0.2) { set "TextLoading::text" "Text2"; } else if ("gui::random_value" < 0.3) { set "TextLoading::text" "Text3"; } else if ("gui::random_value" < 0.4) { set "TextLoading::text" "Text4"; } else if ("gui::random_value" < 0.5) { set "TextLoading::text" "Text5"; } else if ("gui::random_value" < 0.6) { set "TextLoading::text" "Text6"; } else if ("gui::random_value" < 0.7) { set "TextLoading::text" "Text7"; } else if ("gui::random_value" < 0.8) { set "TextLoading::text" "Text8"; } else if ("gui::random_value" < 0.9) { set "TextLoading::text" "Text9"; } else { set "TextLoading::text" "Text10"; } }
(The indentation has been screwed by the forum code block). This is just an example supporting 10 different texts of roughly equal probability in a "TextLoading" windowDef. The "gui::random_value" will be in the range [0..1), so if you need more or less than 10 values as in the example, you need to adjust the if () clauses in the GUI code accordingly.