0ad/binaries/data/mods/official/gui/test/hello.xml
2004-08-26 08:19:33 +00:00

384 lines
16 KiB
XML
Executable File

<?xml version="1.0" encoding="iso-8859-1" standalone="no" ?>
<!DOCTYPE objects SYSTEM "../gui.dtd">
<objects>
<!--
==========================================
- GLOBAL SCRIPTS -
==========================================
-->
<script file="gui/test/basefunctions.js"><![CDATA[
writeConsole("GUI file loading");
function MakeDude(x, y, z) {
DudeSpawnPoint = new Vector3D(x, y, z);
new Entity(getEntityTemplate("Prometheus Dude"), DudeSpawnPoint, 1.0);
writeConsole("Dude created at " + DudeSpawnPoint);
writeConsole("Made MakeDude " + MakeDude);
}
function selected()
{
if( selection.length > 0 )
return( selection[0] );
return( null );
}
function updateOrbital()
{
if( !getGUIObjectByName( 'arena' ).hidden )
{
g_ballx += g_balldx;
g_bally += g_balldy;
if (g_ballx > 600) {
g_balldx *= -0.9;
g_ballx = 600-(g_ballx-600);
}
else if (g_ballx < 0) {
g_balldx *= -0.9;
g_ballx = -g_ballx;
}
if (g_bally > 400) {
g_balldy *= -0.9;
g_bally = 400-(g_bally-400);
}
else if (g_bally < 0) {
g_balldy *= -0.9;
g_bally = -g_bally;
}
// Gravitate towards the mouse
var vect_x = g_ballx-g_mousex;
var vect_y = g_bally-g_mousey;
var dsquared = vect_x*vect_x + vect_y*vect_y;
if (dsquared < 1000) dsquared = 1000;
var force = 10000.0 / dsquared;
var mag = Math.sqrt(dsquared);
vect_x /= mag; vect_y /= mag;
g_balldx -= force * vect_x;
g_balldy -= force * vect_y;
var ball = getGUIObjectByName('ball');
var r=5;
ball.size = new GUISize(g_ballx-r, g_bally-r, g_ballx+r, g_bally+r);
}
}
function Start()
{
var gameAttribs=new Object();
gameAttribs.mapFile="test_01.pmp";
startGame(gameAttribs);
}
]]></script>
<script file="gui/test/animation.js"><![CDATA[
writeConsole("GUI anim script loading");
]]></script>
<!--
==========================================
- GLOBAL OBJECTS -
==========================================
-->
<object type="empty" name="all_gui" size="0 0 100% 100%" z="1" hidden="false">
<!--
==========================================
- START/END GAME BUTTONS -
==========================================
-->
<object type="empty" name="pregame_gui" size="0 0 100% 100%" z="1" hidden="false">
<object type="button" name="Start_Game_Button" sprite="sprite1" sprite-over="sprite1-over" sprite-pressed="sprite1-pressed" size="100%-150 2 100%-30 22" z="100" textcolor="0 0 0" hidden="false">
Start Game
<action on="Press"><![CDATA[
GUIObjectUnhide("session_gui");
GUIObjectHide("Start_Game_Button");
GUIObjectUnhide("End_Game_Button");
startGame();
]]></action>
</object>
<object type="button" name="End_Game_Button" sprite="sprite1" sprite-over="sprite1-over" sprite-pressed="sprite1-pressed" size="100%-150 2 100%-30 22" z="100" textcolor="0 0 0" hidden="true">
End Game
<action on="Press"><![CDATA[
endGame();
GUIObjectHide("session_gui");
GUIObjectHide("End_Game_Button");
GUIObjectUnhide("Start_Game_Button");
]]></action>
</object>
</object>
<object type="empty" name="always_on" size="0 0 100% 100%" z="1" hidden="false">
<!--
==========================================
- EXIT BUTTON -
==========================================
-->
<object type="button" name="exit_button" sprite="exit_sprite" sprite-over="exit_sprite-over" size="100%-18 2 100%-2 18" z="100" hidden="false">
<action on="Load"><![CDATA[
writeConsole("(GUI) Exit button successfully loaded.");
]]></action>
<action on="Press"><![CDATA[
exit();
]]></action>
</object>
</object>
<object type="empty" name="session_gui" size="0 0 100% 100%" z="1" hidden="true">
<!--
==========================================
- DUDE PRODUCTION BUTTONS -
==========================================
-->
<object type="button" name="Dude_Production_Button_random" hotkey="dudemachine.random" sprite="sprite1" sprite-over="sprite1-over" sprite-pressed="sprite1-pressed" size="100%-288 2 100%-160 22" z="100" textcolor="0 0 0">
Make random dude
<action on="Press"><![CDATA[
// Generate random numbers
rand_x = Math.round(Math.random()*100);
rand_y = Math.round(Math.random()*100);
rand_z = Math.round(Math.random()*100);
MakeDude(rand_x, rand_y, rand_z);
]]></action>
</object>
<!--
==========================================
- RESOURCE ICONS -
==========================================
-->
<object type="text" name="resource_food" sprite="resource_food" size="10 4 14 14" z="100" hidden="false"></object>
<object type="text" name="resource_food_text" size="26 -2 1 1" font="prospero16" textcolor="255 255 255" hidden="false"> 123,456</object>
<object type="text" name="resource_wood" sprite="resource_wood" size="90 4 14 14" z="100" hidden="false"></object>
<object type="text" name="resource_wood_text" size="106 -2 1 1" font="prospero16" textcolor="255 255 255" hidden="false"> 789,012</object>
<object type="text" name="resource_stone" sprite="resource_stone" size="170 4 14 14" z="100" hidden="false"></object>
<object type="text" name="resource_stone_text" size="186 -2 1 1" font="prospero16" textcolor="255 255 255" hidden="false"> 345,678</object>
<object type="text" name="resource_ore" sprite="resource_ore" size="250 4 14 14" z="100" hidden="false"></object>
<object type="text" name="resource_ore_text" size="266 -2 1 1" font="prospero16" textcolor="255 255 255" hidden="false"> 910,123</object>
<object type="text" name="resource_population" sprite="resource_population" size="330 4 14 14" z="100" hidden="false"></object>
<object type="text" name="resource_population_text" size="346 -2 1 1" font="prospero16" textcolor="255 255 255" hidden="false"> 100/150</object>
<!--
==========================================
- STATISTIC ICONS -
==========================================
-->
<object type="text" name="statistic_attack" sprite="statistic_attack" size="50%+75 100%-110 20 20" z="100" hidden="false"></object>
<object type="text" name="statistic_hack" sprite="statistic_hack" size="50%+75 100%-75 20 20" z="100" hidden="false"></object>
<object type="text" name="statistic_pierce" sprite="statistic_pierce" size="50%+75 100%-40 20 20" z="100" hidden="false"></object>
<object type="text" name="statistic_accuracy" sprite="statistic_accuracy" size="50%+175 100%-110 20 20" z="100" hidden="false"></object>
<object type="text" name="statistic_los" sprite="statistic_los" size="50%+175 100%-75 20 20" z="100" hidden="false"></object>
<object type="text" name="statistic_speed" sprite="statistic_speed" size="50%+175 100%-40 20 20" z="100" hidden="false"></object>
<!--
==========================================
- MISCELLANEOUS -
==========================================
-->
<object type="text" name="wfg_logo" sprite="wfg_logo_128" size="20 20 148 148" z="100" hidden="false">
</object>
<!--
==========================================
- BOTTOM PANEL IN SESSION UI -
==========================================
-->
<object type="text" name="session_panel" hidden="false">
<object type="text" name="session_panel_bg_left" sprite="session_panel_bg_left" size="0 100%-161 258 100%" z="50" hidden="false" />
<object type="text" name="session_panel_minimap_bg" sprite="session_panel_minimap_bg" size="0%-14 100%-235 242 100%+16" z="60" hidden="false" />
<object type="text" name="session_panel_minimap_dummy" sprite="session_panel_minimap_dummy" size="0%-14 100%-235 242 100%+16" z="60" hidden="false" />
<object type="text" name="session_panel_bg_middle" sprite="session_panel_bg_middle" size="50%-257 100%-161 50%+274 100%" z="50" hidden="false">
<action on="Tick"><![CDATA[
getGUIGlobal().GUIUpdateObjectInfo();
]]></action>
</object>
<!-- Entity info objects -->
<object type="text" name="selection_portrait_test" sprite="portrait_unit_dude_lrg" size="50%-250 100%-130 64 64" z="60" hidden="false" />
<object type="text" name="selection_name_test" size="50%-180 100%-140 50%+200 100%-120" font="prospero24b" textcolor="255 255 255" z="60" hidden="false" />
<object type="text" name="selection_pos_test" size="50%-250 100%-60 50%+200 100%-95" textcolor="255 255 255" z="60" hidden="false" />
<object type="text" name="selection_speed_test" size="50%+200 100%-43 100%-241 0" textcolor="255 255 255" z="60" hidden="false" />
<!-- / Entity info objects -->
<object type="text" name="session_panel_bg_right" sprite="session_panel_bg_right" size="100%-241 100%-161 100% 100%" z="50" hidden="false" />
<object type="text" name="session_panel_tabs_bg_left" sprite="session_panel_tabs_bg1" size="100%-235 100%-152 100%-176 100%-7" z="60" hidden="false" />
<object type="text" name="session_panel_tabs_bg_right" sprite="session_panel_tabs_bg2" size="100%-197 100%-152 100%-7 100%-7" z="61" hidden="false" />
<object type="button" name="session_panel_tabs_command_activebg" sprite="session_panel_tabs_activetabbg"
size="100%-235 100%-152 100%-195 100%-112" z="62" hidden="false">
<object type="button" name="normal_mode_button" sprite="portrait_unit_dude_sml" sprite-over="portrait_unit_dude_sml_over" size="100%-190 100%-143 100%-158 100%-111" z="64" hidden="false">
<action on="Press"><![CDATA[
MakeDude(15,0,15);
]]></action>
</object>
</object>
<object type="button" name="session_panel_tabs_buildcivil_activebg" sprite="session_panel_tabs_activetabbg"
size="100%-235 100%-117 100%-195 100%-77" z="62" hidden="true">
</object>
<object type="button" name="session_panel_tabs_buildmil_activebg" sprite="session_panel_tabs_activetabbg"
size="100%-235 100%-82 100%-195 100%-42" z="62" hidden="true">
</object>
<object type="button" name="session_panel_tabs_formations_activebg" sprite="session_panel_tabs_activetabbg"
size="100%-235 100%-47 100%-195 100%-7" z="62" hidden="true">
</object>
<object type="button" name="session_panel_tabs_command_bt" sprite="icon_command" size="100%-230 100%-147 100%-198 100%-115" z="63" hidden="false">
<action on="Press"><![CDATA[
GUIObjectUnhide("session_panel_tabs_command_activebg");
GUIObjectHide("session_panel_tabs_buildcivil_activebg");
GUIObjectHide("session_panel_tabs_buildmil_activebg");
GUIObjectHide("session_panel_tabs_formations_activebg");
]]></action>
</object>
<object type="button" name="session_panel_tabs_buildcivil_bt" sprite="icon_buildcivil" size="100%-230 100%-112 100%-198 100%-80" z="63" hidden="false">
<action on="Press"><![CDATA[
GUIObjectUnhide("session_panel_tabs_buildcivil_activebg");
GUIObjectHide("session_panel_tabs_command_activebg");
GUIObjectHide("session_panel_tabs_buildmil_activebg");
GUIObjectHide("session_panel_tabs_formations_activebg");
]]></action>
</object>
<object type="button" name="session_panel_tabs_buildmil_bt" sprite="icon_buildmil" size="100%-230 100%-77 100%-198 100%-45" z="63" hidden="false">
<action on="Press"><![CDATA[
GUIObjectUnhide("session_panel_tabs_buildmil_activebg");
GUIObjectHide("session_panel_tabs_command_activebg");
GUIObjectHide("session_panel_tabs_buildcivil_activebg");
GUIObjectHide("session_panel_tabs_formations_activebg");
]]></action>
</object>
<object type="button" name="session_panel_tabs_formations_bt" sprite="icon_formations" size="100%-230 100%-42 100%-198 100%-10" z="63" hidden="false">
<action on="Press"><![CDATA[
GUIObjectUnhide("session_panel_tabs_formations_activebg");
GUIObjectHide("session_panel_tabs_command_activebg");
GUIObjectHide("session_panel_tabs_buildcivil_activebg");
GUIObjectHide("session_panel_tabs_buildmil_activebg");
]]></action>
</object>
</object>
<!--
==========================================
- END BOTTOM PANEL -
==========================================
-->
<!--
==========================================
- ORBITAL BALL ARENA OBJECTS -
==========================================
-->
<object type="button" name="arena" sprite="sprite1" sprite-over="sprite1-over" size="0 0 600 400" z="100" hidden="true" textcolor="127 0 0">
<!-- stress-test the text renderer -->
Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Integer nisl libero, ornare sit amet, feugiat sit amet, pretium vitae, tellus. Etiam tempor est vel neque rutrum congue. Quisque sed elit. Suspendisse vel tellus consectetuer lacus blandit varius. Etiam pretium malesuada turpis. Pellentesque urna justo, facilisis sodales, ultrices eget, pretium vestibulum, nibh. Mauris vulputate. Aliquam luctus feugiat felis. In venenatis, nulla eu suscipit auctor, turpis purus tincidunt arcu, non mattis pede urna nec est. Quisque sodales dolor sit amet odio. Suspendisse rutrum tellus ut sem. Vestibulum consequat est.
Sed nec quam sit amet mi blandit ornare. Phasellus condimentum varius urna. Suspendisse velit leo, feugiat sit amet, mattis quis, adipiscing placerat, enim. Vivamus dapibus. Fusce porta felis ac diam. Vestibulum mollis augue non quam. Vestibulum id sapien. Donec ornare felis non eros. Curabitur eget dui. Suspendisse potenti. Phasellus ultrices, sem ac consequat aliquet, felis tellus mollis dui, vitae imperdiet mi arcu eu augue. Duis libero neque, tristique eu, pellentesque et, facilisis sit amet, est. Vestibulum vehicula aliquam enim. Maecenas hendrerit nunc in orci sagittis ullamcorper. Donec cursus, sapien eget luctus tincidunt, mi ante accumsan leo, non fermentum diam ipsum ac tellus. Pellentesque ipsum sapien, mollis a, viverra eget, malesuada id, est. Sed nec tellus nec velit posuere euismod. Aenean turpis. Donec eu nibh. Fusce in libero.
Nunc bibendum metus a tellus. Nulla lorem metus, convallis id, lobortis eu, elementum ut, tellus. Suspendisse et risus sit amet arcu volutpat volutpat. Maecenas vel tortor id lectus suscipit suscipit. Maecenas condimentum ipsum eu augue. Nunc nisl. Etiam libero augue, gravida ac, imperdiet vel, sollicitudin ac, dui. Sed ullamcorper faucibus libero. Etiam egestas tellus vel justo. Etiam venenatis metus in pede. Pellentesque quam tellus, elementum eu, elementum ut, auctor a, velit. Suspendisse potenti. Quisque fermentum justo ut pede. Donec adipiscing, dolor ut consequat eleifend, neque nunc iaculis arcu, et nonummy elit tortor sed enim. Cras ultricies nunc ac massa. Ut turpis massa, sodales et, tincidunt vel, elementum eu, dolor.
<action on="Load"><![CDATA[
g_ballx = 300;
g_bally = 200;
g_balldx = 0;
g_balldy = 0;
g_mousex = 0;
g_mousey = 0;
setInterval( updateOrbital, 100 );
]]></action>
<action on="MouseOver"><![CDATA[
g_mousex = mouse.x;
g_mousey = mouse.y;
]]></action>
</object>
<object type="button" name="ball" sprite="sprite1" size="0 0 1 1" z="120" hotkey="orbital.cheat">
<action on="Press"><![CDATA[
writeConsole(mouse);
g_balldx = 0;
g_balldy = 0;
]]></action>
</object>
<object type="button" sprite="sprite1" size="592 2 608 18" z="200" hotkey="orbital.toggle"> |v|
<action on="Press"><![CDATA[
var arena = getGUIObjectByName('arena');
arena.hidden = !arena.hidden;
this.caption = arena.hidden ? "|v|" : "|^|";
]]></action>
</object>
<!--
==========================================
- END ORBITAL BALL ARENA OBJECTS -
==========================================
-->
</object>
</object>
</objects>