1
0
forked from 0ad/0ad

Reorganised GUI scripts a bit.

This was SVN commit r1743.
This commit is contained in:
Acumen 2005-01-18 19:29:03 +00:00
parent 1eb9a7872b
commit e62258e47e
15 changed files with 1324 additions and 1280 deletions

View File

@ -10,8 +10,7 @@
==========================================
-->
<!-- Generic utilities -->
<script file="gui/test/functions_utility.js"><![CDATA[
<script file="gui/test/functions_utility_coord.js"><![CDATA[
]]></script>
<script file="gui/test/functions_utility_object.js"><![CDATA[
@ -29,29 +28,51 @@
<script file="gui/test/functions_utility_music.js"><![CDATA[
]]></script>
<script file="gui/test/functions_test.js"><![CDATA[
<script file="gui/test/functions_utility_test.js"><![CDATA[
]]></script>
<script file="gui/test/functions_utility.js"><![CDATA[
]]></script>
<script file="gui/test/functions_global.js"><![CDATA[
]]></script>
<script file="gui/test/functions_pregame_cpn.js"><![CDATA[
]]></script>
<script file="gui/test/functions_pregame_mp.js"><![CDATA[
]]></script>
<script file="gui/test/functions_pregame_sp.js"><![CDATA[
]]></script>
<script file="gui/test/functions_pregame_options.js"><![CDATA[
]]></script>
<script file="gui/test/functions_pregame_history.js"><![CDATA[
]]></script>
<script file="gui/test/functions_pregame_load.js"><![CDATA[
]]></script>
<script file="gui/test/functions_pregame.js"><![CDATA[
]]></script>
<script file="gui/test/functions_atlas_map_creator.js"><![CDATA[
]]></script>
<script file="gui/test/functions_atlas_terrain_editor.js"><![CDATA[
]]></script>
<script file="gui/test/functions_atlas_object_editor.js"><![CDATA[
]]></script>
<script file="gui/test/functions_atlas.js"><![CDATA[
]]></script>
<script file="gui/test/functions_manual.js"><![CDATA[
]]></script>
<script file="gui/test/functions_atlas.js"><![CDATA[
]]></script>
<!-- Global functions -->
<script file="gui/test/functions_global.js"><![CDATA[
]]></script>
<!-- Game Session GUI -->
<script file="gui/test/functions_coord.js"><![CDATA[
]]></script>
<script file="gui/test/functions_session_group_pane.js"><![CDATA[
]]></script>

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,248 @@
function initAtlasSectionMapCreator()
{
// ============================================= MAP CREATOR SECTION MENU ===============================================
// ============================================= MAP CREATOR: MAP TYPE ===============================================
// ============================================= MAP CREATOR: MAP TYPE: MAP SIZE ===============================================
// Height input box for map size.
ATLAS_LEFT_PANE_SECTION_MAP_TILE_HEIGHT_INPUT_BOX = addSizeArrayWH(atlasCoord, atlasCoord_Last,
58,
14
); atlasCoord_Last = addSizeArrayXY(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_HEADING_2].x+atlasCoord[ATLAS_LEFT_PANE_SECTION_HEADING_2].width-atlasCoord[ATLAS_LEFT_PANE_SECTION_MAP_TILE_HEIGHT_INPUT_BOX].width-ATLAS_LEFT_PANE_SECTION.RMARGIN,
atlasCoord[ATLAS_LEFT_PANE_SECTION_HEADING_2].y+atlasCoord[ATLAS_LEFT_PANE_SECTION_HEADING_2].height+ATLAS_LEFT_PANE_SECTION.TMARGIN+ATLAS_LEFT_PANE_SECTION.TMARGIN
);
// "X" between map size input boxes.
ATLAS_LEFT_PANE_SECTION_MAP_TILE_X = addSizeArrayWH(atlasCoord, atlasCoord_Last,
20,
atlasCoord[ATLAS_LEFT_PANE_SECTION_MAP_TILE_HEIGHT_INPUT_BOX].height
); atlasCoord_Last = addSizeArrayXY(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_MAP_TILE_HEIGHT_INPUT_BOX].x-atlasCoord[ATLAS_LEFT_PANE_SECTION_MAP_TILE_X].width,
atlasCoord[ATLAS_LEFT_PANE_SECTION_MAP_TILE_HEIGHT_INPUT_BOX].y
);
// Width input box for map size.
ATLAS_LEFT_PANE_SECTION_MAP_TILE_WIDTH_INPUT_BOX = addSizeArrayWH(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_MAP_TILE_HEIGHT_INPUT_BOX].width,
atlasCoord[ATLAS_LEFT_PANE_SECTION_MAP_TILE_HEIGHT_INPUT_BOX].height
); atlasCoord_Last = addSizeArrayXY(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_MAP_TILE_X].x-atlasCoord[ATLAS_LEFT_PANE_SECTION_MAP_TILE_HEIGHT_INPUT_BOX].width,
atlasCoord[ATLAS_LEFT_PANE_SECTION_MAP_TILE_HEIGHT_INPUT_BOX].y
);
// "Size:" label.
ATLAS_LEFT_PANE_SECTION_MAP_SIZE_LABEL = addSizeArrayWH(atlasCoord, atlasCoord_Last,
32,
atlasCoord[ATLAS_LEFT_PANE_SECTION_MAP_TILE_HEIGHT_INPUT_BOX].height
); atlasCoord_Last = addSizeArrayXY(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_MAP_TILE_WIDTH_INPUT_BOX].x-atlasCoord[ATLAS_LEFT_PANE_SECTION_MAP_SIZE_LABEL].width,
atlasCoord[ATLAS_LEFT_PANE_SECTION_MAP_TILE_HEIGHT_INPUT_BOX].y
);
ATLAS_LEFT_PANE_SECTION_MAP_SIZE_BUTTON_SPAN = 3;
// "Huge" map size button.
ATLAS_LEFT_PANE_SECTION_MAP_SIZE_BUTTON_HUGE = addSizeArrayWH(atlasCoord, atlasCoord_Last,
40,
20
); atlasCoord_Last = addSizeArrayXY(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_HEADING_2].x+atlasCoord[ATLAS_LEFT_PANE_SECTION_HEADING_2].width-atlasCoord[ATLAS_LEFT_PANE_SECTION_MAP_SIZE_BUTTON_HUGE].width-ATLAS_LEFT_PANE_SECTION.RMARGIN+2,
atlasCoord[ATLAS_LEFT_PANE_SECTION_MAP_TILE_HEIGHT_INPUT_BOX].y+atlasCoord[ATLAS_LEFT_PANE_SECTION_MAP_TILE_HEIGHT_INPUT_BOX].height+ATLAS_LEFT_PANE_SECTION.TMARGIN
);
// "Large" map size button.
ATLAS_LEFT_PANE_SECTION_MAP_SIZE_BUTTON_LARGE = addSizeArrayWH(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_MAP_SIZE_BUTTON_HUGE].width,
atlasCoord[ATLAS_LEFT_PANE_SECTION_MAP_SIZE_BUTTON_HUGE].height
); atlasCoord_Last = addSizeArrayXY(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_MAP_SIZE_BUTTON_HUGE].x-atlasCoord[ATLAS_LEFT_PANE_SECTION_MAP_SIZE_BUTTON_HUGE].width-ATLAS_LEFT_PANE_SECTION_MAP_SIZE_BUTTON_SPAN,
atlasCoord[ATLAS_LEFT_PANE_SECTION_MAP_SIZE_BUTTON_HUGE].y
);
// "Medium" map size button.
ATLAS_LEFT_PANE_SECTION_MAP_SIZE_BUTTON_MEDIUM = addSizeArrayWH(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_MAP_SIZE_BUTTON_HUGE].width,
atlasCoord[ATLAS_LEFT_PANE_SECTION_MAP_SIZE_BUTTON_HUGE].height
); atlasCoord_Last = addSizeArrayXY(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_MAP_SIZE_BUTTON_LARGE].x-atlasCoord[ATLAS_LEFT_PANE_SECTION_MAP_SIZE_BUTTON_LARGE].width-ATLAS_LEFT_PANE_SECTION_MAP_SIZE_BUTTON_SPAN,
atlasCoord[ATLAS_LEFT_PANE_SECTION_MAP_SIZE_BUTTON_HUGE].y
);
// "Small" map size button.
ATLAS_LEFT_PANE_SECTION_MAP_SIZE_BUTTON_SMALL = addSizeArrayWH(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_MAP_SIZE_BUTTON_HUGE].width,
atlasCoord[ATLAS_LEFT_PANE_SECTION_MAP_SIZE_BUTTON_HUGE].height
); atlasCoord_Last = addSizeArrayXY(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_MAP_SIZE_BUTTON_MEDIUM].x-atlasCoord[ATLAS_LEFT_PANE_SECTION_MAP_SIZE_BUTTON_MEDIUM].width-ATLAS_LEFT_PANE_SECTION_MAP_SIZE_BUTTON_SPAN,
atlasCoord[ATLAS_LEFT_PANE_SECTION_MAP_SIZE_BUTTON_HUGE].y
);
// Horizontal rule at end of Map Size settings.
ATLAS_LEFT_PANE_SECTION_MAP_SIZE_HR = addSizeArrayWH(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_BKG].width-ATLAS_LEFT_PANE_SECTION.LMARGIN-ATLAS_LEFT_PANE_SECTION.RMARGIN,
2
); atlasCoord_Last = addSizeArrayXY(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_BKG].x+ATLAS_LEFT_PANE_SECTION.LMARGIN,
atlasCoord[ATLAS_LEFT_PANE_SECTION_MAP_SIZE_BUTTON_HUGE].y+atlasCoord[ATLAS_LEFT_PANE_SECTION_MAP_SIZE_BUTTON_HUGE].height+ATLAS_LEFT_PANE_SECTION.BMARGIN
);
// ============================================= MAP CREATOR: MAP TYPE: RANDOM MAP ===============================================
// ============================================= MAP CREATOR: MAP SETTINGS ===============================================
// "Players:" label for Map Settings.
ATLAS_LEFT_PANE_SECTION_MAP_SETTINGS_PLAYER_LABEL = addSizeArrayWH(atlasCoord, atlasCoord_Last,
45,
15
); atlasCoord_Last = addSizeArrayXY(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_HEADING_3].x+ATLAS_LEFT_PANE_SECTION.LMARGIN,
atlasCoord[ATLAS_LEFT_PANE_SECTION_HEADING_3].y+atlasCoord[ATLAS_LEFT_PANE_SECTION_HEADING_3].height+ATLAS_LEFT_PANE_SECTION.TMARGIN+ATLAS_LEFT_PANE_SECTION.TMARGIN
);
// Players "counter" input box for Map Settings.
ATLAS_LEFT_PANE_SECTION_MAP_SETTINGS_PLAYER_INPUT_BOX = addSizeArrayWH(atlasCoord, atlasCoord_Last,
30,
atlasCoord[ATLAS_LEFT_PANE_SECTION_MAP_SETTINGS_PLAYER_LABEL].height
); atlasCoord_Last = addSizeArrayXY(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_MAP_SETTINGS_PLAYER_LABEL].x+atlasCoord[ATLAS_LEFT_PANE_SECTION_MAP_SETTINGS_PLAYER_LABEL].width,
atlasCoord[ATLAS_LEFT_PANE_SECTION_MAP_SETTINGS_PLAYER_LABEL].y
);
// Players up button for "counter" input box for Map Settings.
ATLAS_LEFT_PANE_SECTION_MAP_SETTINGS_PLAYER_INPUT_BOX_UP = addSizeArrayWH(atlasCoord, atlasCoord_Last,
ATLAS_COUNTER_BOX.width,
(atlasCoord[ATLAS_LEFT_PANE_SECTION_MAP_SETTINGS_PLAYER_INPUT_BOX].height/2)+3
); atlasCoord_Last = addSizeArrayXY(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_MAP_SETTINGS_PLAYER_INPUT_BOX].x+atlasCoord[ATLAS_LEFT_PANE_SECTION_MAP_SETTINGS_PLAYER_INPUT_BOX].width-atlasCoord[ATLAS_LEFT_PANE_SECTION_MAP_SETTINGS_PLAYER_INPUT_BOX_UP].width,
atlasCoord[ATLAS_LEFT_PANE_SECTION_MAP_SETTINGS_PLAYER_INPUT_BOX].y-3
);
// Players down button for "counter" input box for Map Settings.
ATLAS_LEFT_PANE_SECTION_MAP_SETTINGS_PLAYER_INPUT_BOX_DN = addSizeArrayWH(atlasCoord, atlasCoord_Last,
ATLAS_COUNTER_BOX.width,
atlasCoord[ATLAS_LEFT_PANE_SECTION_MAP_SETTINGS_PLAYER_INPUT_BOX_UP].height
); atlasCoord_Last = addSizeArrayXY(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_MAP_SETTINGS_PLAYER_INPUT_BOX].x+atlasCoord[ATLAS_LEFT_PANE_SECTION_MAP_SETTINGS_PLAYER_INPUT_BOX].width-atlasCoord[ATLAS_LEFT_PANE_SECTION_MAP_SETTINGS_PLAYER_INPUT_BOX_UP].width,
atlasCoord[ATLAS_LEFT_PANE_SECTION_MAP_SETTINGS_PLAYER_INPUT_BOX].y+atlasCoord[ATLAS_LEFT_PANE_SECTION_MAP_SETTINGS_PLAYER_INPUT_BOX].height-atlasCoord[ATLAS_LEFT_PANE_SECTION_MAP_SETTINGS_PLAYER_INPUT_BOX_DN].height
);
// Settlements "counter" input box for Map Settings.
ATLAS_LEFT_PANE_SECTION_MAP_SETTINGS_SETTLEMENT_INPUT_BOX = addSizeArrayWH(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_MAP_SETTINGS_PLAYER_INPUT_BOX].width,
atlasCoord[ATLAS_LEFT_PANE_SECTION_MAP_SETTINGS_PLAYER_INPUT_BOX].height
); atlasCoord_Last = addSizeArrayXY(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_HEADING_3].x+atlasCoord[ATLAS_LEFT_PANE_SECTION_HEADING_3].width-atlasCoord[ATLAS_LEFT_PANE_SECTION_MAP_SETTINGS_SETTLEMENT_INPUT_BOX].width-ATLAS_LEFT_PANE_SECTION.RMARGIN,
atlasCoord[ATLAS_LEFT_PANE_SECTION_MAP_SETTINGS_PLAYER_INPUT_BOX].y
);
// Settlements up button for "counter" input box for Map Settings.
ATLAS_LEFT_PANE_SECTION_MAP_SETTINGS_SETTLEMENT_INPUT_BOX_UP = addSizeArrayWH(atlasCoord, atlasCoord_Last,
ATLAS_COUNTER_BOX.width,
(atlasCoord[ATLAS_LEFT_PANE_SECTION_MAP_SETTINGS_SETTLEMENT_INPUT_BOX].height/2)+3
); atlasCoord_Last = addSizeArrayXY(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_MAP_SETTINGS_SETTLEMENT_INPUT_BOX].x+atlasCoord[ATLAS_LEFT_PANE_SECTION_MAP_SETTINGS_SETTLEMENT_INPUT_BOX].width-atlasCoord[ATLAS_LEFT_PANE_SECTION_MAP_SETTINGS_SETTLEMENT_INPUT_BOX_UP].width,
atlasCoord[ATLAS_LEFT_PANE_SECTION_MAP_SETTINGS_SETTLEMENT_INPUT_BOX].y-3
);
// Settlements down button for "counter" input box for Map Settings.
ATLAS_LEFT_PANE_SECTION_MAP_SETTINGS_SETTLEMENT_INPUT_BOX_DN = addSizeArrayWH(atlasCoord, atlasCoord_Last,
ATLAS_COUNTER_BOX.width,
atlasCoord[ATLAS_LEFT_PANE_SECTION_MAP_SETTINGS_SETTLEMENT_INPUT_BOX_UP].height
); atlasCoord_Last = addSizeArrayXY(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_MAP_SETTINGS_SETTLEMENT_INPUT_BOX].x+atlasCoord[ATLAS_LEFT_PANE_SECTION_MAP_SETTINGS_SETTLEMENT_INPUT_BOX].width-atlasCoord[ATLAS_LEFT_PANE_SECTION_MAP_SETTINGS_SETTLEMENT_INPUT_BOX_UP].width,
atlasCoord[ATLAS_LEFT_PANE_SECTION_MAP_SETTINGS_SETTLEMENT_INPUT_BOX].y+atlasCoord[ATLAS_LEFT_PANE_SECTION_MAP_SETTINGS_SETTLEMENT_INPUT_BOX].height-atlasCoord[ATLAS_LEFT_PANE_SECTION_MAP_SETTINGS_SETTLEMENT_INPUT_BOX_DN].height
);
// "Settlements" label for Map Settings.
ATLAS_LEFT_PANE_SECTION_MAP_SETTINGS_SETTLEMENT_LABEL = addSizeArrayWH(atlasCoord, atlasCoord_Last,
62,
atlasCoord[ATLAS_LEFT_PANE_SECTION_MAP_SETTINGS_PLAYER_LABEL].height
); atlasCoord_Last = addSizeArrayXY(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_MAP_SETTINGS_SETTLEMENT_INPUT_BOX].x-atlasCoord[ATLAS_LEFT_PANE_SECTION_MAP_SETTINGS_SETTLEMENT_LABEL].width,
atlasCoord[ATLAS_LEFT_PANE_SECTION_MAP_SETTINGS_SETTLEMENT_INPUT_BOX].y
);
// "Resources:" label for Map Settings.
ATLAS_LEFT_PANE_SECTION_MAP_SETTINGS_RESOURCES_LABEL = addSizeArrayWH(atlasCoord, atlasCoord_Last,
60,
15
); atlasCoord_Last = addSizeArrayXY(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_MAP_SETTINGS_PLAYER_LABEL].x,
atlasCoord[ATLAS_LEFT_PANE_SECTION_MAP_SETTINGS_PLAYER_LABEL].y+atlasCoord[ATLAS_LEFT_PANE_SECTION_MAP_SETTINGS_PLAYER_LABEL].height+ATLAS_LEFT_PANE_SECTION.TMARGIN+ATLAS_LEFT_PANE_SECTION.TMARGIN
);
// Resources "drop-down" box for Map Settings.
ATLAS_LEFT_PANE_SECTION_MAP_SETTINGS_RESOURCES_COMBO_BOX = addSizeArrayWH(atlasCoord, atlasCoord_Last,
55,
atlasCoord[ATLAS_LEFT_PANE_SECTION_MAP_SETTINGS_PLAYER_LABEL].height
); atlasCoord_Last = addSizeArrayXY(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_MAP_SETTINGS_RESOURCES_LABEL].x+atlasCoord[ATLAS_LEFT_PANE_SECTION_MAP_SETTINGS_RESOURCES_LABEL].width,
atlasCoord[ATLAS_LEFT_PANE_SECTION_MAP_SETTINGS_RESOURCES_LABEL].y
);
// ============================================= MAP CREATOR: MAP SETTINGS: TERRITORIES ===============================================
// ============================================= MAP CREATOR: GENERATE ===============================================
// Terrain Map input box.
ATLAS_LEFT_PANE_SECTION_GENERATE_TERRAIN_MAP_INPUT_BOX = addSizeArrayWH(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_HEADING_3].width-ATLAS_LEFT_PANE_SECTION.LMARGIN-ATLAS_LEFT_PANE_SECTION.RMARGIN-ATLAS_LEFT_PANE_SECTION.LMARGIN,
15
); atlasCoord_Last = addSizeArrayXY(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_HEADING_3].x+ATLAS_LEFT_PANE_SECTION.LMARGIN+ATLAS_LEFT_PANE_SECTION.LMARGIN,
ATLAS_LEFT_PANE_SECTION.BMARGIN
);
// "Terrain Map:" label.
ATLAS_LEFT_PANE_SECTION_GENERATE_TERRAIN_MAP_LABEL = addSizeArrayWH(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_GENERATE_TERRAIN_MAP_INPUT_BOX].width,
20
); atlasCoord_Last = addSizeArrayXY(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_GENERATE_TERRAIN_MAP_INPUT_BOX].x,
atlasCoord[ATLAS_LEFT_PANE_SECTION_GENERATE_TERRAIN_MAP_INPUT_BOX].y+atlasCoord[ATLAS_LEFT_PANE_SECTION_GENERATE_TERRAIN_MAP_INPUT_BOX].height
);
// Height Map input box.
ATLAS_LEFT_PANE_SECTION_GENERATE_HEIGHT_MAP_INPUT_BOX = addSizeArrayWH(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_GENERATE_TERRAIN_MAP_INPUT_BOX].width,
atlasCoord[ATLAS_LEFT_PANE_SECTION_GENERATE_TERRAIN_MAP_INPUT_BOX].height
); atlasCoord_Last = addSizeArrayXY(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_GENERATE_TERRAIN_MAP_INPUT_BOX].x,
atlasCoord[ATLAS_LEFT_PANE_SECTION_GENERATE_TERRAIN_MAP_LABEL].y+atlasCoord[ATLAS_LEFT_PANE_SECTION_GENERATE_TERRAIN_MAP_LABEL].height
);
// "Height Map:" label.
ATLAS_LEFT_PANE_SECTION_GENERATE_HEIGHT_MAP_LABEL = addSizeArrayWH(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_GENERATE_TERRAIN_MAP_INPUT_BOX].width,
atlasCoord[ATLAS_LEFT_PANE_SECTION_GENERATE_TERRAIN_MAP_LABEL].height
); atlasCoord_Last = addSizeArrayXY(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_GENERATE_TERRAIN_MAP_INPUT_BOX].x,
atlasCoord[ATLAS_LEFT_PANE_SECTION_GENERATE_HEIGHT_MAP_INPUT_BOX].y+atlasCoord[ATLAS_LEFT_PANE_SECTION_GENERATE_HEIGHT_MAP_INPUT_BOX].height
);
// "Generate!" border.
ATLAS_LEFT_PANE_SECTION_GENERATE_BORDER = addSizeArrayWH(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_GENERATE_TERRAIN_MAP_INPUT_BOX].width,
40
); atlasCoord_Last = addSizeArrayXY(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_GENERATE_TERRAIN_MAP_INPUT_BOX].x,
atlasCoord[ATLAS_LEFT_PANE_SECTION_GENERATE_HEIGHT_MAP_INPUT_BOX].y+atlasCoord[ATLAS_LEFT_PANE_SECTION_GENERATE_HEIGHT_MAP_INPUT_BOX].height+atlasCoord[ATLAS_LEFT_PANE_SECTION_GENERATE_BORDER].height+ATLAS_LEFT_PANE_SECTION.BMARGIN
);
ATLAS_LEFT_PANE_SECTION_GENERATE_SPAN = 7;
// "Generate!" button.
ATLAS_LEFT_PANE_SECTION_GENERATE_BUTTON = addSizeArrayWH(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_GENERATE_TERRAIN_MAP_INPUT_BOX].width-ATLAS_LEFT_PANE_SECTION_GENERATE_SPAN-ATLAS_LEFT_PANE_SECTION_GENERATE_SPAN,
atlasCoord[ATLAS_LEFT_PANE_SECTION_GENERATE_BORDER].height-ATLAS_LEFT_PANE_SECTION_GENERATE_SPAN-ATLAS_LEFT_PANE_SECTION_GENERATE_SPAN
); atlasCoord_Last = addSizeArrayXY(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_GENERATE_BORDER].x+ATLAS_LEFT_PANE_SECTION_GENERATE_SPAN,
atlasCoord[ATLAS_LEFT_PANE_SECTION_GENERATE_BORDER].y+ATLAS_LEFT_PANE_SECTION_GENERATE_SPAN
);
}
// ====================================================================

View File

@ -0,0 +1,164 @@
function initAtlasSectionObjectEditor()
{
// ============================================= OBJECT EDITOR: SELECTION ==============================================
// Object category label.
ATLAS_LEFT_PANE_SECTION_OBJECT_CATEGORY_LABEL = addSizeArrayWH(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_HEADING_2].width-ATLAS_LEFT_PANE_SECTION.LMARGIN-ATLAS_LEFT_PANE_SECTION.RMARGIN-ATLAS_LEFT_PANE_SECTION.LMARGIN,
20
); atlasCoord_Last = addSizeArrayXY(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_HEADING_2].x+ATLAS_LEFT_PANE_SECTION.LMARGIN+ATLAS_LEFT_PANE_SECTION.LMARGIN,
atlasCoord[ATLAS_LEFT_PANE_SECTION_HEADING_2].y+atlasCoord[ATLAS_LEFT_PANE_SECTION_HEADING_2].height
);
// Object category input box.
ATLAS_LEFT_PANE_SECTION_OBJECT_CATEGORY_COMBO_BOX = addSizeArrayWH(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_OBJECT_CATEGORY_LABEL].width,
15
); atlasCoord_Last = addSizeArrayXY(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_OBJECT_CATEGORY_LABEL].x,
atlasCoord[ATLAS_LEFT_PANE_SECTION_OBJECT_CATEGORY_LABEL].y+atlasCoord[ATLAS_LEFT_PANE_SECTION_OBJECT_CATEGORY_LABEL].height
);
// Custom button.
ATLAS_LEFT_PANE_SECTION_OBJECT_BUTTON_CUSTOM_ACTOR = addSizeArrayWH(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_CLIFF_BUTTON_CUSTOM].width,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_CLIFF_BUTTON_CUSTOM].height
); atlasCoord_Last = addSizeArrayXY(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_OBJECT_CATEGORY_COMBO_BOX].x-4,
atlasCoord[ATLAS_LEFT_PANE_SECTION_OBJECT_CATEGORY_COMBO_BOX].y+atlasCoord[ATLAS_LEFT_PANE_SECTION_OBJECT_CATEGORY_COMBO_BOX].height+ATLAS_LEFT_PANE_SECTION.TMARGIN
);
// Custom button.
ATLAS_LEFT_PANE_SECTION_OBJECT_BUTTON_CUSTOM_ENTITY = addSizeArrayWH(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_OBJECT_BUTTON_CUSTOM_ACTOR].width,
atlasCoord[ATLAS_LEFT_PANE_SECTION_OBJECT_BUTTON_CUSTOM_ACTOR].height
); atlasCoord_Last = addSizeArrayXY(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_OBJECT_CATEGORY_COMBO_BOX].x+4+atlasCoord[ATLAS_LEFT_PANE_SECTION_OBJECT_CATEGORY_COMBO_BOX].width-atlasCoord[ATLAS_LEFT_PANE_SECTION_OBJECT_BUTTON_CUSTOM_ENTITY].width,
atlasCoord[ATLAS_LEFT_PANE_SECTION_OBJECT_BUTTON_CUSTOM_ACTOR].y
);
// ============================================= OBJECT EDITOR: LIST ==============================================
// Background of Object List.
ATLAS_LEFT_PANE_SECTION_OBJECT_LIST_BKG = addSizeArrayWH(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_OBJECT_CATEGORY_COMBO_BOX].width+2,
163+2
); atlasCoord_Last = addSizeArrayXY(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_OBJECT_CATEGORY_COMBO_BOX].x,
atlasCoord[ATLAS_LEFT_PANE_SECTION_OBJECT_BUTTON_CUSTOM_ACTOR].y+atlasCoord[ATLAS_LEFT_PANE_SECTION_OBJECT_BUTTON_CUSTOM_ACTOR].height+ATLAS_LEFT_PANE_SECTION.TMARGIN
);
// Player input box.
ATLAS_LEFT_PANE_SECTION_OBJECT_LIST_PLAYER_INPUT_BOX = addSizeArrayWH(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_WATER_DEPTH_INPUT_BOX].width,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_WATER_DEPTH_INPUT_BOX].height
); atlasCoord_Last = addSizeArrayXY(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_OBJECT_LIST_BKG].x+10,
atlasCoord[ATLAS_LEFT_PANE_SECTION_OBJECT_LIST_BKG].y+10
);
// Up button for Player input box.
ATLAS_LEFT_PANE_SECTION_OBJECT_LIST_PLAYER_INPUT_BOX_UP = addSizeArrayWH(atlasCoord, atlasCoord_Last,
ATLAS_COUNTER_BOX.width,
(atlasCoord[ATLAS_LEFT_PANE_SECTION_OBJECT_LIST_PLAYER_INPUT_BOX].height/2)+3
); atlasCoord_Last = addSizeArrayXY(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_OBJECT_LIST_PLAYER_INPUT_BOX].x+atlasCoord[ATLAS_LEFT_PANE_SECTION_OBJECT_LIST_PLAYER_INPUT_BOX].width-atlasCoord[ATLAS_LEFT_PANE_SECTION_OBJECT_LIST_PLAYER_INPUT_BOX_UP].width,
atlasCoord[ATLAS_LEFT_PANE_SECTION_OBJECT_LIST_PLAYER_INPUT_BOX].y-3
);
// Down button for Player input box.
ATLAS_LEFT_PANE_SECTION_OBJECT_LIST_PLAYER_INPUT_BOX_DN = addSizeArrayWH(atlasCoord, atlasCoord_Last,
ATLAS_COUNTER_BOX.width,
atlasCoord[ATLAS_LEFT_PANE_SECTION_OBJECT_LIST_PLAYER_INPUT_BOX_UP].height
); atlasCoord_Last = addSizeArrayXY(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_OBJECT_LIST_PLAYER_INPUT_BOX].x+atlasCoord[ATLAS_LEFT_PANE_SECTION_OBJECT_LIST_PLAYER_INPUT_BOX].width-atlasCoord[ATLAS_LEFT_PANE_SECTION_OBJECT_LIST_PLAYER_INPUT_BOX_UP].width,
atlasCoord[ATLAS_LEFT_PANE_SECTION_OBJECT_LIST_PLAYER_INPUT_BOX].y+atlasCoord[ATLAS_LEFT_PANE_SECTION_OBJECT_LIST_PLAYER_INPUT_BOX].height-atlasCoord[ATLAS_LEFT_PANE_SECTION_OBJECT_LIST_PLAYER_INPUT_BOX_DN].height
);
// Player label.
ATLAS_LEFT_PANE_SECTION_OBJECT_LIST_PLAYER_LABEL = addSizeArrayWH(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_WATER_DEPTH_LABEL].width,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_WATER_DEPTH_LABEL].height
); atlasCoord_Last = addSizeArrayXY(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_OBJECT_LIST_PLAYER_INPUT_BOX].x+atlasCoord[ATLAS_LEFT_PANE_SECTION_OBJECT_LIST_PLAYER_INPUT_BOX].width,
atlasCoord[ATLAS_LEFT_PANE_SECTION_OBJECT_LIST_PLAYER_INPUT_BOX].y
);
// Objects heading.
ATLAS_LEFT_PANE_SECTION_OBJECT_LIST_HEADING = addSizeArrayWH(atlasCoord, atlasCoord_Last,
65,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_WATER_DEPTH_LABEL].height
); atlasCoord_Last = addSizeArrayXY(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_OBJECT_LIST_BKG].x+atlasCoord[ATLAS_LEFT_PANE_SECTION_OBJECT_LIST_BKG].width-atlasCoord[ATLAS_LEFT_PANE_SECTION_OBJECT_LIST_HEADING].width,
atlasCoord[ATLAS_LEFT_PANE_SECTION_OBJECT_LIST_PLAYER_INPUT_BOX].y
);
// Object list sort input box.
ATLAS_LEFT_PANE_SECTION_OBJECT_LIST_SORT_COMBO_BOX = addSizeArrayWH(atlasCoord, atlasCoord_Last,
90,
15
); atlasCoord_Last = addSizeArrayXY(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_OBJECT_LIST_BKG].x+atlasCoord[ATLAS_LEFT_PANE_SECTION_OBJECT_LIST_BKG].width-atlasCoord[ATLAS_LEFT_PANE_SECTION_OBJECT_LIST_SORT_COMBO_BOX].width-10,
atlasCoord[ATLAS_LEFT_PANE_SECTION_OBJECT_LIST_HEADING].y+atlasCoord[ATLAS_LEFT_PANE_SECTION_OBJECT_LIST_HEADING].height+10
);
// Object list sort label.
ATLAS_LEFT_PANE_SECTION_OBJECT_LIST_SORT_LABEL = addSizeArrayWH(atlasCoord, atlasCoord_Last,
35,
atlasCoord[ATLAS_LEFT_PANE_SECTION_OBJECT_LIST_SORT_COMBO_BOX].height
); atlasCoord_Last = addSizeArrayXY(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_OBJECT_LIST_SORT_COMBO_BOX].x-atlasCoord[ATLAS_LEFT_PANE_SECTION_OBJECT_LIST_SORT_LABEL].width,
atlasCoord[ATLAS_LEFT_PANE_SECTION_OBJECT_LIST_SORT_COMBO_BOX].y-3
);
// Object List.
ATLAS_LEFT_PANE_SECTION_OBJECT_LIST = addSizeArrayWH(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_OBJECT_LIST_BKG].width,
atlasCoord[ATLAS_LEFT_PANE_SECTION_OBJECT_LIST_BKG].height
); atlasCoord_Last = addSizeArrayXY(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_OBJECT_LIST_BKG].x,
atlasCoord[ATLAS_LEFT_PANE_SECTION_OBJECT_LIST_SORT_COMBO_BOX].y+atlasCoord[ATLAS_LEFT_PANE_SECTION_OBJECT_LIST_SORT_COMBO_BOX].height+ATLAS_LEFT_PANE_SECTION.TMARGIN
);
// ============================================= OBJECT EDITOR: ANIMATION VIEWER ===============================================
// Animation Viewer combobox label.
ATLAS_BOTTOM_PANE_SECTION_OBJECT_ANIM_COMBO_BOX_LABEL = addSizeArrayWH(atlasCoord, atlasCoord_Last,
60,
20
); atlasCoord_Last = addSizeArrayXY(atlasCoord, atlasCoord_Last,
ATLAS_LEFT_PANE_SECTION.LMARGIN,
2
);
// Animation Viewer combobox.
ATLAS_BOTTOM_PANE_SECTION_OBJECT_ANIM_COMBO_BOX = addSizeArrayWH(atlasCoord, atlasCoord_Last,
65,
10
); atlasCoord_Last = addSizeArrayXY(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_BOTTOM_PANE_SECTION_OBJECT_ANIM_COMBO_BOX_LABEL].x+atlasCoord[ATLAS_BOTTOM_PANE_SECTION_OBJECT_ANIM_COMBO_BOX_LABEL].width,
atlasCoord[ATLAS_BOTTOM_PANE_SECTION_OBJECT_ANIM_COMBO_BOX_LABEL].y
);
// Animation Viewer.
ATLAS_BOTTOM_PANE_SECTION_OBJECT_ANIM_VIEWER = addSizeArrayWH(atlasCoord, atlasCoord_Last,
125,
125
); atlasCoord_Last = addSizeArrayXY(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_BOTTOM_PANE_SECTION_OBJECT_ANIM_COMBO_BOX_LABEL].x,
atlasCoord[ATLAS_BOTTOM_PANE_SECTION_OBJECT_ANIM_COMBO_BOX_LABEL].y+atlasCoord[ATLAS_BOTTOM_PANE_SECTION_OBJECT_ANIM_COMBO_BOX_LABEL].height
);
// Animation Viewer label.
ATLAS_BOTTOM_PANE_SECTION_OBJECT_ANIM_VIEWER_LABEL = addSizeArrayWH(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_BOTTOM_PANE_SECTION_OBJECT_ANIM_VIEWER].width,
15
); atlasCoord_Last = addSizeArrayXY(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_BOTTOM_PANE_SECTION_OBJECT_ANIM_VIEWER].x,
atlasCoord[ATLAS_BOTTOM_PANE_SECTION_OBJECT_ANIM_VIEWER].y+atlasCoord[ATLAS_BOTTOM_PANE_SECTION_OBJECT_ANIM_VIEWER].height
);
}
// ====================================================================

View File

@ -0,0 +1,716 @@
function initAtlasSectionTerrainEditor()
{
// ============================================= TERRAIN EDITOR SECTION MENU ===============================================
// ============================================= TERRAIN EDITOR: EDIT ELEVATION ===============================================
ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_BUTTON_SPAN = 10;
// Modify button.
ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_MODIFY_BUTTON = addSizeArrayWH(atlasCoord, atlasCoord_Last,
50,
15
); atlasCoord_Last = addSizeArrayXY(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_HEADING_2].x+ATLAS_LEFT_PANE_SECTION.LMARGIN,
atlasCoord[ATLAS_LEFT_PANE_SECTION_HEADING_2].y+atlasCoord[ATLAS_LEFT_PANE_SECTION_HEADING_2].height+ATLAS_LEFT_PANE_SECTION.TMARGIN
);
// Smooth button.
ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_SMOOTH_BUTTON = addSizeArrayWH(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_MODIFY_BUTTON].width,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_MODIFY_BUTTON].height
); atlasCoord_Last = addSizeArrayXY(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_MODIFY_BUTTON].x+atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_MODIFY_BUTTON].width+ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_BUTTON_SPAN,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_MODIFY_BUTTON].y
);
// Sample button.
ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_SAMPLE_BUTTON = addSizeArrayWH(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_MODIFY_BUTTON].width,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_MODIFY_BUTTON].height
); atlasCoord_Last = addSizeArrayXY(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_SMOOTH_BUTTON].x+atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_SMOOTH_BUTTON].width+ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_BUTTON_SPAN,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_MODIFY_BUTTON].y
);
// Intensity slider bar.
ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_INTENSITY_SLIDER_BAR = addSizeArrayWH(atlasCoord, atlasCoord_Last,
138,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_SMOOTH_BUTTON].height
); atlasCoord_Last = addSizeArrayXY(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_SMOOTH_BUTTON].x,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_SMOOTH_BUTTON].y+atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_SMOOTH_BUTTON].height+ATLAS_LEFT_PANE_SECTION.TMARGIN
);
// Intensity slider marker.
ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_INTENSITY_SLIDER_MARKER = addSizeArrayWH(atlasCoord, atlasCoord_Last,
8,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_INTENSITY_SLIDER_BAR].height
); atlasCoord_Last = addSizeArrayXY(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_INTENSITY_SLIDER_BAR].x+40,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_INTENSITY_SLIDER_BAR].y+(atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_INTENSITY_SLIDER_BAR].height/3)
);
// Intensity label.
ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_INTENSITY_LABEL = addSizeArrayWH(atlasCoord, atlasCoord_Last,
50,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_INTENSITY_SLIDER_BAR].height
); atlasCoord_Last = addSizeArrayXY(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_INTENSITY_SLIDER_BAR].x-atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_INTENSITY_LABEL].width,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_INTENSITY_SLIDER_BAR].y
);
// Roughen button.
ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_ROUGHEN_BUTTON = addSizeArrayWH(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_MODIFY_BUTTON].width,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_MODIFY_BUTTON].height
); atlasCoord_Last = addSizeArrayXY(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_MODIFY_BUTTON].x,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_INTENSITY_LABEL].y+atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_MODIFY_BUTTON].height+ATLAS_LEFT_PANE_SECTION.TMARGIN
);
// Roughen style combo box.
ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_STYLE_COMBO_BOX = addSizeArrayWH(atlasCoord, atlasCoord_Last,
75,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_SAMPLE_BUTTON].height
); atlasCoord_Last = addSizeArrayXY(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_SAMPLE_BUTTON].x+atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_SAMPLE_BUTTON].width-atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_STYLE_COMBO_BOX].width,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_ROUGHEN_BUTTON].y+4
);
// Roughen style label.
ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_STYLE_LABEL = addSizeArrayWH(atlasCoord, atlasCoord_Last,
40,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_ROUGHEN_BUTTON].height
); atlasCoord_Last = addSizeArrayXY(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_STYLE_COMBO_BOX].x-atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_STYLE_LABEL].width,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_ROUGHEN_BUTTON].y
);
// Power input box.
ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_POWER_INPUT_BOX = addSizeArrayWH(atlasCoord, atlasCoord_Last,
40,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_SAMPLE_BUTTON].height
); atlasCoord_Last = addSizeArrayXY(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_SAMPLE_BUTTON].x+atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_SAMPLE_BUTTON].width-atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_POWER_INPUT_BOX].width,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_ROUGHEN_BUTTON].y+4+atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_ROUGHEN_BUTTON].height+ATLAS_LEFT_PANE_SECTION.TMARGIN
);
// Up button for power input box.
ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_POWER_INPUT_BOX_UP = addSizeArrayWH(atlasCoord, atlasCoord_Last,
ATLAS_COUNTER_BOX.width,
(atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_POWER_INPUT_BOX].height/2)+3
); atlasCoord_Last = addSizeArrayXY(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_POWER_INPUT_BOX].x+atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_POWER_INPUT_BOX].width-atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_POWER_INPUT_BOX_UP].width,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_POWER_INPUT_BOX].y-3
);
// Down button for power input box.
ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_POWER_INPUT_BOX_DN = addSizeArrayWH(atlasCoord, atlasCoord_Last,
ATLAS_COUNTER_BOX.width,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_POWER_INPUT_BOX_UP].height
); atlasCoord_Last = addSizeArrayXY(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_POWER_INPUT_BOX].x+atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_POWER_INPUT_BOX].width-atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_POWER_INPUT_BOX_UP].width,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_POWER_INPUT_BOX].y+atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_POWER_INPUT_BOX].height-atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_POWER_INPUT_BOX_DN].height
);
// Power label.
ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_POWER_LABEL = addSizeArrayWH(atlasCoord, atlasCoord_Last,
40,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_ROUGHEN_BUTTON].height
); atlasCoord_Last = addSizeArrayXY(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_POWER_INPUT_BOX].x-atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_POWER_LABEL].width,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_POWER_INPUT_BOX].y
);
// Scale label.
ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_SCALE_LABEL = addSizeArrayWH(atlasCoord, atlasCoord_Last,
40,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_ROUGHEN_BUTTON].height
); atlasCoord_Last = addSizeArrayXY(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_ROUGHEN_BUTTON].x,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_POWER_INPUT_BOX].y
);
// Scale input box.
ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_SCALE_INPUT_BOX = addSizeArrayWH(atlasCoord, atlasCoord_Last,
40,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_SAMPLE_BUTTON].height
); atlasCoord_Last = addSizeArrayXY(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_SCALE_LABEL].x+atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_SCALE_LABEL].width,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_POWER_INPUT_BOX].y
);
// Up button for scale input box.
ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_SCALE_INPUT_BOX_UP = addSizeArrayWH(atlasCoord, atlasCoord_Last,
ATLAS_COUNTER_BOX.width,
(atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_SCALE_INPUT_BOX].height/2)+3
); atlasCoord_Last = addSizeArrayXY(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_SCALE_INPUT_BOX].x+atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_SCALE_INPUT_BOX].width-atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_SCALE_INPUT_BOX_UP].width,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_SCALE_INPUT_BOX].y-3
);
// Down button for scale input box.
ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_SCALE_INPUT_BOX_DN = addSizeArrayWH(atlasCoord, atlasCoord_Last,
ATLAS_COUNTER_BOX.width,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_SCALE_INPUT_BOX_UP].height
); atlasCoord_Last = addSizeArrayXY(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_SCALE_INPUT_BOX].x+atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_SCALE_INPUT_BOX].width-atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_SCALE_INPUT_BOX_UP].width,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_SCALE_INPUT_BOX].y+atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_SCALE_INPUT_BOX].height-atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_SCALE_INPUT_BOX_DN].height
);
// Increment button.
ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_INCREMENT_BUTTON = addSizeArrayWH(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_ROUGHEN_BUTTON].width,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_ROUGHEN_BUTTON].height
); atlasCoord_Last = addSizeArrayXY(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_ROUGHEN_BUTTON].x,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_SCALE_INPUT_BOX].y+atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_SCALE_INPUT_BOX].height+ATLAS_LEFT_PANE_SECTION.TMARGIN
);
// Amount input box.
ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_AMOUNT_INPUT_BOX = addSizeArrayWH(atlasCoord, atlasCoord_Last,
40,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_SAMPLE_BUTTON].height
); atlasCoord_Last = addSizeArrayXY(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_SAMPLE_BUTTON].x+atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_SAMPLE_BUTTON].width-atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_POWER_INPUT_BOX].width,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_INCREMENT_BUTTON].y
);
// Up button for amount input box.
ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_AMOUNT_INPUT_BOX_UP = addSizeArrayWH(atlasCoord, atlasCoord_Last,
ATLAS_COUNTER_BOX.width,
(atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_AMOUNT_INPUT_BOX].height/2)+3
); atlasCoord_Last = addSizeArrayXY(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_POWER_INPUT_BOX].x+atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_POWER_INPUT_BOX].width-atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_AMOUNT_INPUT_BOX_UP].width,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_INCREMENT_BUTTON].y-3
);
// Down button for amount input box.
ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_AMOUNT_INPUT_BOX_DN = addSizeArrayWH(atlasCoord, atlasCoord_Last,
ATLAS_COUNTER_BOX.width,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_AMOUNT_INPUT_BOX_UP].height
); atlasCoord_Last = addSizeArrayXY(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_AMOUNT_INPUT_BOX].x+atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_AMOUNT_INPUT_BOX].width-atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_AMOUNT_INPUT_BOX_UP].width,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_AMOUNT_INPUT_BOX].y+atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_AMOUNT_INPUT_BOX].height-atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_AMOUNT_INPUT_BOX_DN].height
);
// Amount label.
ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_AMOUNT_LABEL = addSizeArrayWH(atlasCoord, atlasCoord_Last,
45,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_ROUGHEN_BUTTON].height
); atlasCoord_Last = addSizeArrayXY(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_AMOUNT_INPUT_BOX].x-atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_AMOUNT_LABEL].width,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_AMOUNT_INPUT_BOX].y
);
// Horizontal rule at end of Edit Elevation.
ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_HR = addSizeArrayWH(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_BKG].width-ATLAS_LEFT_PANE_SECTION.LMARGIN-ATLAS_LEFT_PANE_SECTION.RMARGIN,
2
); atlasCoord_Last = addSizeArrayXY(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_BKG].x+ATLAS_LEFT_PANE_SECTION.LMARGIN,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_INCREMENT_BUTTON].y+atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_INCREMENT_BUTTON].height+ATLAS_LEFT_PANE_SECTION.BMARGIN
);
// ============================================= TERRAIN EDITOR: CLIFF ===============================================
// List of cliff portraits.
ATLAS_LEFT_PANE_SECTION_TERRAIN_CLIFF_LIST = addSizeArrayWH(atlasCoord, atlasCoord_Last,
75,
162
); atlasCoord_Last = addSizeArrayXY(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_HR].x+3,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_HR].y+atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_HR].x+3
);
// "Cliff" heading.
ATLAS_LEFT_PANE_SECTION_TERRAIN_CLIFF_HEADING = addSizeArrayWH(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_HEADING_2].x+atlasCoord[ATLAS_LEFT_PANE_SECTION_HEADING_2].width-atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_CLIFF_LIST].x-atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_CLIFF_LIST].width,
22
); atlasCoord_Last = addSizeArrayXY(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_CLIFF_LIST].x+atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_CLIFF_LIST].width,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_HR].y+atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_HR].height
);
// Horizontal rule under heading.
ATLAS_LEFT_PANE_SECTION_TERRAIN_CLIFF_HEADING_HR = addSizeArrayWH(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_CLIFF_HEADING].width-ATLAS_LEFT_PANE_SECTION.LMARGIN-ATLAS_LEFT_PANE_SECTION.RMARGIN,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_HR].height
); atlasCoord_Last = addSizeArrayXY(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_CLIFF_HEADING].x+ATLAS_LEFT_PANE_SECTION.LMARGIN,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_CLIFF_HEADING].y+atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_CLIFF_HEADING].height
);
// Place button.
ATLAS_LEFT_PANE_SECTION_TERRAIN_CLIFF_BUTTON_PLACE = addSizeArrayWH(atlasCoord, atlasCoord_Last,
84,
15
); atlasCoord_Last = addSizeArrayXY(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_CLIFF_HEADING_HR].x,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_CLIFF_HEADING_HR].y+atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_CLIFF_HEADING_HR].height+(ATLAS_LEFT_PANE_SECTION.TMARGIN/2)
);
// Height label.
ATLAS_LEFT_PANE_SECTION_TERRAIN_CLIFF_HEIGHT_LABEL = addSizeArrayWH(atlasCoord, atlasCoord_Last,
48,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_CLIFF_BUTTON_PLACE].height
); atlasCoord_Last = addSizeArrayXY(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_CLIFF_HEADING].x+2,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_CLIFF_BUTTON_PLACE].y+atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_CLIFF_BUTTON_PLACE].height+ATLAS_LEFT_PANE_SECTION.TMARGIN*1.5
);
// Height input box.
ATLAS_LEFT_PANE_SECTION_TERRAIN_CLIFF_HEIGHT_INPUT_BOX = addSizeArrayWH(atlasCoord, atlasCoord_Last,
40,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_CLIFF_HEIGHT_LABEL].height
); atlasCoord_Last = addSizeArrayXY(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_CLIFF_HEIGHT_LABEL].x+atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_CLIFF_HEIGHT_LABEL].width,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_CLIFF_HEIGHT_LABEL].y
);
// Up button for height input box.
ATLAS_LEFT_PANE_SECTION_TERRAIN_CLIFF_HEIGHT_INPUT_BOX_UP = addSizeArrayWH(atlasCoord, atlasCoord_Last,
ATLAS_COUNTER_BOX.width,
(atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_CLIFF_HEIGHT_INPUT_BOX].height/2)+3
); atlasCoord_Last = addSizeArrayXY(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_CLIFF_HEIGHT_INPUT_BOX].x+atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_CLIFF_HEIGHT_INPUT_BOX].width-atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_CLIFF_HEIGHT_INPUT_BOX_UP].width,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_CLIFF_HEIGHT_INPUT_BOX].y-3
);
// Down button for height input box.
ATLAS_LEFT_PANE_SECTION_TERRAIN_CLIFF_HEIGHT_INPUT_BOX_DN = addSizeArrayWH(atlasCoord, atlasCoord_Last,
ATLAS_COUNTER_BOX.width,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_CLIFF_HEIGHT_INPUT_BOX_UP].height
); atlasCoord_Last = addSizeArrayXY(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_CLIFF_HEIGHT_INPUT_BOX].x+atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_CLIFF_HEIGHT_INPUT_BOX].width-atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_CLIFF_HEIGHT_INPUT_BOX_UP].width,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_CLIFF_HEIGHT_INPUT_BOX].y+atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_CLIFF_HEIGHT_INPUT_BOX].height-atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_CLIFF_HEIGHT_INPUT_BOX_DN].height
);
// Angle label.
ATLAS_LEFT_PANE_SECTION_TERRAIN_CLIFF_ANGLE_LABEL = addSizeArrayWH(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_CLIFF_HEIGHT_LABEL].width,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_CLIFF_HEIGHT_LABEL].height
); atlasCoord_Last = addSizeArrayXY(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_CLIFF_HEIGHT_LABEL].x,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_CLIFF_HEIGHT_LABEL].y+atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_CLIFF_HEIGHT_LABEL].height+ATLAS_LEFT_PANE_SECTION.TMARGIN*1.5
);
// Angle input box.
ATLAS_LEFT_PANE_SECTION_TERRAIN_CLIFF_ANGLE_INPUT_BOX = addSizeArrayWH(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_CLIFF_HEIGHT_INPUT_BOX].width,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_CLIFF_HEIGHT_INPUT_BOX].height
); atlasCoord_Last = addSizeArrayXY(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_CLIFF_HEIGHT_INPUT_BOX].x,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_CLIFF_HEIGHT_INPUT_BOX].y+atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_CLIFF_HEIGHT_INPUT_BOX].height+ATLAS_LEFT_PANE_SECTION.TMARGIN*1.5
);
// Up button for angle input box.
ATLAS_LEFT_PANE_SECTION_TERRAIN_CLIFF_ANGLE_INPUT_BOX_UP = addSizeArrayWH(atlasCoord, atlasCoord_Last,
ATLAS_COUNTER_BOX.width,
(atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_CLIFF_ANGLE_INPUT_BOX].height/2)+3
); atlasCoord_Last = addSizeArrayXY(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_CLIFF_ANGLE_INPUT_BOX].x+atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_CLIFF_ANGLE_INPUT_BOX].width-atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_CLIFF_ANGLE_INPUT_BOX_UP].width,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_CLIFF_ANGLE_INPUT_BOX].y-3
);
// Down button for Angle input box.
ATLAS_LEFT_PANE_SECTION_TERRAIN_CLIFF_ANGLE_INPUT_BOX_DN = addSizeArrayWH(atlasCoord, atlasCoord_Last,
ATLAS_COUNTER_BOX.width,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_CLIFF_ANGLE_INPUT_BOX_UP].height
); atlasCoord_Last = addSizeArrayXY(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_CLIFF_ANGLE_INPUT_BOX].x+atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_CLIFF_ANGLE_INPUT_BOX].width-atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_CLIFF_ANGLE_INPUT_BOX_UP].width,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_CLIFF_ANGLE_INPUT_BOX].y+atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_CLIFF_ANGLE_INPUT_BOX].height-atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_CLIFF_ANGLE_INPUT_BOX_DN].height
);
// Smooth label.
ATLAS_LEFT_PANE_SECTION_TERRAIN_CLIFF_SMOOTH_LABEL = addSizeArrayWH(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_CLIFF_HEIGHT_LABEL].width,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_CLIFF_HEIGHT_LABEL].height
); atlasCoord_Last = addSizeArrayXY(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_CLIFF_HEIGHT_LABEL].x,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_CLIFF_ANGLE_LABEL].y+atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_CLIFF_ANGLE_LABEL].height+ATLAS_LEFT_PANE_SECTION.TMARGIN*1.5
);
// Smooth input box.
ATLAS_LEFT_PANE_SECTION_TERRAIN_CLIFF_SMOOTH_INPUT_BOX = addSizeArrayWH(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_CLIFF_HEIGHT_INPUT_BOX].width,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_CLIFF_HEIGHT_INPUT_BOX].height
); atlasCoord_Last = addSizeArrayXY(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_CLIFF_HEIGHT_INPUT_BOX].x,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_CLIFF_ANGLE_INPUT_BOX].y+atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_CLIFF_ANGLE_INPUT_BOX].height+ATLAS_LEFT_PANE_SECTION.TMARGIN*1.5
);
// Up button for Smooth input box.
ATLAS_LEFT_PANE_SECTION_TERRAIN_CLIFF_SMOOTH_INPUT_BOX_UP = addSizeArrayWH(atlasCoord, atlasCoord_Last,
ATLAS_COUNTER_BOX.width,
(atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_CLIFF_SMOOTH_INPUT_BOX].height/2)+3
); atlasCoord_Last = addSizeArrayXY(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_CLIFF_SMOOTH_INPUT_BOX].x+atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_CLIFF_SMOOTH_INPUT_BOX].width-atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_CLIFF_SMOOTH_INPUT_BOX_UP].width,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_CLIFF_SMOOTH_INPUT_BOX].y-3
);
// Down button for Smooth input box.
ATLAS_LEFT_PANE_SECTION_TERRAIN_CLIFF_SMOOTH_INPUT_BOX_DN = addSizeArrayWH(atlasCoord, atlasCoord_Last,
ATLAS_COUNTER_BOX.width,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_CLIFF_SMOOTH_INPUT_BOX_UP].height
); atlasCoord_Last = addSizeArrayXY(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_CLIFF_SMOOTH_INPUT_BOX].x+atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_CLIFF_SMOOTH_INPUT_BOX].width-atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_CLIFF_SMOOTH_INPUT_BOX_UP].width,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_CLIFF_SMOOTH_INPUT_BOX].y+atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_CLIFF_SMOOTH_INPUT_BOX].height-atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_CLIFF_SMOOTH_INPUT_BOX_DN].height
);
// Custom button.
ATLAS_LEFT_PANE_SECTION_TERRAIN_CLIFF_BUTTON_CUSTOM = addSizeArrayWH(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_CLIFF_BUTTON_PLACE].width,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_CLIFF_BUTTON_PLACE].height
); atlasCoord_Last = addSizeArrayXY(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_CLIFF_BUTTON_PLACE].x,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_CLIFF_LIST].y+atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_CLIFF_LIST].height-atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_CLIFF_BUTTON_CUSTOM].height
);
// Horizontal rule at end of Paint Cliff.
ATLAS_LEFT_PANE_SECTION_TERRAIN_CLIFF_HR = addSizeArrayWH(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_HR].width,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_HR].height
); atlasCoord_Last = addSizeArrayXY(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_ELEVATION_HR].x,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_CLIFF_LIST].y+atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_CLIFF_LIST].height+ATLAS_LEFT_PANE_SECTION.BMARGIN
);
// ============================================= TERRAIN EDITOR: WATER ===============================================
// List of water portraits.
ATLAS_LEFT_PANE_SECTION_TERRAIN_WATER_LIST = addSizeArrayWH(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_CLIFF_LIST].width,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_CLIFF_LIST].height
); atlasCoord_Last = addSizeArrayXY(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_CLIFF_LIST].x,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_CLIFF_HR].y+atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_CLIFF_HR].x+3
);
// "Water" heading.
ATLAS_LEFT_PANE_SECTION_TERRAIN_WATER_HEADING = addSizeArrayWH(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_CLIFF_HEADING].width,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_CLIFF_HEADING].height
); atlasCoord_Last = addSizeArrayXY(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_CLIFF_HEADING].x,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_CLIFF_HR].y
);
// Horizontal rule under heading.
ATLAS_LEFT_PANE_SECTION_TERRAIN_WATER_HEADING_HR = addSizeArrayWH(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_CLIFF_HEADING_HR].width,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_CLIFF_HEADING_HR].height
); atlasCoord_Last = addSizeArrayXY(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_CLIFF_HEADING_HR].x,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_WATER_HEADING].y+atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_WATER_HEADING].height
);
// Place button.
ATLAS_LEFT_PANE_SECTION_TERRAIN_WATER_BUTTON_PLACE = addSizeArrayWH(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_CLIFF_BUTTON_PLACE].width-15,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_CLIFF_BUTTON_PLACE].height
); atlasCoord_Last = addSizeArrayXY(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_CLIFF_BUTTON_PLACE].x,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_WATER_HEADING_HR].y+atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_WATER_HEADING_HR].height+(ATLAS_LEFT_PANE_SECTION.TMARGIN/2)
);
// Beautify Water button.
ATLAS_LEFT_PANE_SECTION_TERRAIN_WATER_BUTTON_BEAUTIFY = addSizeArrayWH(atlasCoord, atlasCoord_Last,
15,
15
); atlasCoord_Last = addSizeArrayXY(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_WATER_BUTTON_PLACE].x+atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_WATER_BUTTON_PLACE].width+1,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_WATER_BUTTON_PLACE].y
);
// Depth label.
ATLAS_LEFT_PANE_SECTION_TERRAIN_WATER_DEPTH_LABEL = addSizeArrayWH(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_CLIFF_HEIGHT_LABEL].width,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_CLIFF_HEIGHT_LABEL].height
); atlasCoord_Last = addSizeArrayXY(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_CLIFF_HEIGHT_LABEL].x,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_WATER_BUTTON_PLACE].y+atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_WATER_BUTTON_PLACE].height+ATLAS_LEFT_PANE_SECTION.TMARGIN*1.5
);
// Depth input box.
ATLAS_LEFT_PANE_SECTION_TERRAIN_WATER_DEPTH_INPUT_BOX = addSizeArrayWH(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_CLIFF_HEIGHT_INPUT_BOX].width,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_CLIFF_HEIGHT_INPUT_BOX].height
); atlasCoord_Last = addSizeArrayXY(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_CLIFF_HEIGHT_INPUT_BOX].x,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_WATER_DEPTH_LABEL].y
);
// Up button for depth input box.
ATLAS_LEFT_PANE_SECTION_TERRAIN_WATER_DEPTH_INPUT_BOX_UP = addSizeArrayWH(atlasCoord, atlasCoord_Last,
ATLAS_COUNTER_BOX.width,
(atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_WATER_DEPTH_INPUT_BOX].height/2)+3
); atlasCoord_Last = addSizeArrayXY(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_WATER_DEPTH_INPUT_BOX].x+atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_WATER_DEPTH_INPUT_BOX].width-atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_WATER_DEPTH_INPUT_BOX_UP].width,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_WATER_DEPTH_INPUT_BOX].y-3
);
// Down button for depth input box.
ATLAS_LEFT_PANE_SECTION_TERRAIN_WATER_DEPTH_INPUT_BOX_DN = addSizeArrayWH(atlasCoord, atlasCoord_Last,
ATLAS_COUNTER_BOX.width,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_WATER_DEPTH_INPUT_BOX_UP].height
); atlasCoord_Last = addSizeArrayXY(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_WATER_DEPTH_INPUT_BOX].x+atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_WATER_DEPTH_INPUT_BOX].width-atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_WATER_DEPTH_INPUT_BOX_UP].width,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_WATER_DEPTH_INPUT_BOX].y+atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_WATER_DEPTH_INPUT_BOX].height-atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_WATER_DEPTH_INPUT_BOX_DN].height
);
// Colour label.
ATLAS_LEFT_PANE_SECTION_TERRAIN_WATER_COLOUR_LABEL = addSizeArrayWH(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_WATER_DEPTH_LABEL].width,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_WATER_DEPTH_LABEL].height
); atlasCoord_Last = addSizeArrayXY(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_WATER_DEPTH_LABEL].x,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_WATER_DEPTH_LABEL].y+atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_WATER_DEPTH_LABEL].height+ATLAS_LEFT_PANE_SECTION.TMARGIN*1.5
);
// Colour input box.
ATLAS_LEFT_PANE_SECTION_TERRAIN_WATER_COLOUR_R_INPUT_BOX = addSizeArrayWH(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_WATER_DEPTH_INPUT_BOX].width,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_WATER_DEPTH_INPUT_BOX].height/3
); atlasCoord_Last = addSizeArrayXY(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_WATER_DEPTH_INPUT_BOX].x,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_WATER_DEPTH_INPUT_BOX].y+atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_WATER_DEPTH_INPUT_BOX].height+ATLAS_LEFT_PANE_SECTION.TMARGIN
);
// Colour input box.
ATLAS_LEFT_PANE_SECTION_TERRAIN_WATER_COLOUR_G_INPUT_BOX = addSizeArrayWH(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_WATER_DEPTH_INPUT_BOX].width,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_WATER_DEPTH_INPUT_BOX].height/3
); atlasCoord_Last = addSizeArrayXY(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_WATER_DEPTH_INPUT_BOX].x,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_WATER_COLOUR_R_INPUT_BOX].y+atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_WATER_COLOUR_R_INPUT_BOX].height+ATLAS_LEFT_PANE_SECTION.TMARGIN
);
// Colour input box.
ATLAS_LEFT_PANE_SECTION_TERRAIN_WATER_COLOUR_B_INPUT_BOX = addSizeArrayWH(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_WATER_DEPTH_INPUT_BOX].width,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_WATER_DEPTH_INPUT_BOX].height/3
); atlasCoord_Last = addSizeArrayXY(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_WATER_DEPTH_INPUT_BOX].x,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_WATER_COLOUR_G_INPUT_BOX].y+atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_WATER_COLOUR_G_INPUT_BOX].height+ATLAS_LEFT_PANE_SECTION.TMARGIN
);
// Colour tint box.
ATLAS_LEFT_PANE_SECTION_TERRAIN_WATER_COLOUR_TINT_BOX = addSizeArrayWH(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_WATER_COLOUR_LABEL].width/3,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_WATER_COLOUR_LABEL].height/2
); atlasCoord_Last = addSizeArrayXY(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_WATER_COLOUR_LABEL].x+atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_WATER_COLOUR_LABEL].width/5,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_WATER_COLOUR_LABEL].y+atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_WATER_COLOUR_LABEL].height+atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_WATER_COLOUR_LABEL].height/3
);
// Smooth input box.
ATLAS_LEFT_PANE_SECTION_TERRAIN_WATER_SMOOTH_INPUT_BOX = addSizeArrayWH(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_WATER_DEPTH_INPUT_BOX].width,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_WATER_DEPTH_INPUT_BOX].height
); atlasCoord_Last = addSizeArrayXY(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_WATER_DEPTH_INPUT_BOX].x,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_WATER_COLOUR_B_INPUT_BOX].y+atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_WATER_COLOUR_B_INPUT_BOX].height+ATLAS_LEFT_PANE_SECTION.TMARGIN*1.5
);
// Up button for Smooth input box.
ATLAS_LEFT_PANE_SECTION_TERRAIN_WATER_SMOOTH_INPUT_BOX_UP = addSizeArrayWH(atlasCoord, atlasCoord_Last,
ATLAS_COUNTER_BOX.width,
(atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_WATER_SMOOTH_INPUT_BOX].height/2)+3
); atlasCoord_Last = addSizeArrayXY(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_WATER_SMOOTH_INPUT_BOX].x+atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_WATER_SMOOTH_INPUT_BOX].width-atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_WATER_SMOOTH_INPUT_BOX_UP].width,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_WATER_SMOOTH_INPUT_BOX].y-3
);
// Down button for Smooth input box.
ATLAS_LEFT_PANE_SECTION_TERRAIN_WATER_SMOOTH_INPUT_BOX_DN = addSizeArrayWH(atlasCoord, atlasCoord_Last,
ATLAS_COUNTER_BOX.width,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_WATER_SMOOTH_INPUT_BOX_UP].height
); atlasCoord_Last = addSizeArrayXY(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_WATER_SMOOTH_INPUT_BOX].x+atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_WATER_SMOOTH_INPUT_BOX].width-atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_WATER_SMOOTH_INPUT_BOX_UP].width,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_WATER_SMOOTH_INPUT_BOX].y+atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_WATER_SMOOTH_INPUT_BOX].height-atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_WATER_SMOOTH_INPUT_BOX_DN].height
);
// Smooth label.
ATLAS_LEFT_PANE_SECTION_TERRAIN_WATER_SMOOTH_LABEL = addSizeArrayWH(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_WATER_DEPTH_LABEL].width,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_WATER_DEPTH_LABEL].height
); atlasCoord_Last = addSizeArrayXY(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_WATER_DEPTH_LABEL].x,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_WATER_SMOOTH_INPUT_BOX].y-2
);
// Custom button.
ATLAS_LEFT_PANE_SECTION_TERRAIN_WATER_BUTTON_CUSTOM = addSizeArrayWH(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_CLIFF_BUTTON_CUSTOM].width,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_CLIFF_BUTTON_CUSTOM].height
); atlasCoord_Last = addSizeArrayXY(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_CLIFF_BUTTON_CUSTOM].x,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_WATER_LIST].y+atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_WATER_LIST].height-atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_WATER_BUTTON_CUSTOM].height
);
// Horizontal rule at end of Paint Water.
ATLAS_LEFT_PANE_SECTION_TERRAIN_WATER_HR = addSizeArrayWH(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_CLIFF_HR].width,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_CLIFF_HR].height
); atlasCoord_Last = addSizeArrayXY(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_CLIFF_HR].x,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_WATER_LIST].y+atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_WATER_LIST].height+ATLAS_LEFT_PANE_SECTION.BMARGIN
);
// ============================================= TERRAIN EDITOR: BRUSH SETTINGS ==============================================
// Terrain Preview.
ATLAS_BOTTOM_PANE_SECTION_TERRAIN_PREVIEW = addSizeArrayWH(atlasCoord, atlasCoord_Last,
125,
125
); atlasCoord_Last = addSizeArrayXY(atlasCoord, atlasCoord_Last,
ATLAS_LEFT_PANE_SECTION.LMARGIN,
ATLAS_LEFT_PANE_SECTION.LMARGIN
);
// Terrain Preview label.
ATLAS_BOTTOM_PANE_SECTION_TERRAIN_PREVIEW_LABEL = addSizeArrayWH(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_BOTTOM_PANE_SECTION_TERRAIN_PREVIEW].width,
15
); atlasCoord_Last = addSizeArrayXY(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_BOTTOM_PANE_SECTION_TERRAIN_PREVIEW].x,
atlasCoord[ATLAS_BOTTOM_PANE_SECTION_TERRAIN_PREVIEW].y+atlasCoord[ATLAS_BOTTOM_PANE_SECTION_TERRAIN_PREVIEW].height
);
// Brush border.
ATLAS_BOTTOM_PANE_SECTION_TERRAIN_BRUSH_BORDER = addSizeArrayWH(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_RB_CORNER].x-atlasCoord[ATLAS_BOTTOM_PANE_SECTION_TERRAIN_PREVIEW].width,
atlasCoord[ATLAS_BOTTOM_PANE_SECTION_TERRAIN_PREVIEW].height
); atlasCoord_Last = addSizeArrayXY(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_BOTTOM_PANE_SECTION_TERRAIN_PREVIEW].x+atlasCoord[ATLAS_BOTTOM_PANE_SECTION_TERRAIN_PREVIEW].width+(atlasCoord[ATLAS_RB_CORNER].width/4),
atlasCoord[ATLAS_BOTTOM_PANE_SECTION_TERRAIN_PREVIEW].y
);
// Brush border label.
ATLAS_BOTTOM_PANE_SECTION_TERRAIN_BRUSH_BORDER_LABEL = addSizeArrayWH(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_BOTTOM_PANE_SECTION_TERRAIN_BRUSH_BORDER].width,
15
); atlasCoord_Last = addSizeArrayXY(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_BOTTOM_PANE_SECTION_TERRAIN_BRUSH_BORDER].x,
atlasCoord[ATLAS_BOTTOM_PANE_SECTION_TERRAIN_BRUSH_BORDER].y+atlasCoord[ATLAS_BOTTOM_PANE_SECTION_TERRAIN_BRUSH_BORDER].height
);
// Brush size slider bar.
ATLAS_BOTTOM_PANE_SECTION_TERRAIN_BRUSH_SIZE_SLIDER_BAR = addSizeArrayWH(atlasCoord, atlasCoord_Last,
15,
atlasCoord[ATLAS_BOTTOM_PANE_SECTION_TERRAIN_BRUSH_BORDER].height+11
); atlasCoord_Last = addSizeArrayXY(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_BOTTOM_PANE_SECTION_TERRAIN_BRUSH_BORDER].x+atlasCoord[ATLAS_BOTTOM_PANE_SECTION_TERRAIN_BRUSH_BORDER].width-atlasCoord[ATLAS_BOTTOM_PANE_SECTION_TERRAIN_BRUSH_SIZE_SLIDER_BAR].width-5,
atlasCoord[ATLAS_BOTTOM_PANE_SECTION_TERRAIN_BRUSH_BORDER].y-22
);
// Brush size slider marker.
ATLAS_BOTTOM_PANE_SECTION_TERRAIN_BRUSH_SIZE_SLIDER_MARKER = addSizeArrayWH(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_BOTTOM_PANE_SECTION_TERRAIN_BRUSH_SIZE_SLIDER_BAR].width,
8
); atlasCoord_Last = addSizeArrayXY(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_BOTTOM_PANE_SECTION_TERRAIN_BRUSH_SIZE_SLIDER_BAR].x-3,
atlasCoord[ATLAS_BOTTOM_PANE_SECTION_TERRAIN_BRUSH_SIZE_SLIDER_BAR].y+70
);
ATLAS_BOTTOM_PANE_SECTION_TERRAIN_BRUSH_BUTTON_SPAN = 5;
// Brush button.
ATLAS_BOTTOM_PANE_SECTION_TERRAIN_BRUSH_BUTTON_1 = addSizeArrayWH(atlasCoord, atlasCoord_Last,
15,
15
); atlasCoord_Last = addSizeArrayXY(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_BOTTOM_PANE_SECTION_TERRAIN_BRUSH_BORDER].x+10,
atlasCoord[ATLAS_BOTTOM_PANE_SECTION_TERRAIN_BRUSH_BORDER].y+atlasCoord[ATLAS_BOTTOM_PANE_SECTION_TERRAIN_BRUSH_BORDER].height-15-10
);
// Brush button.
ATLAS_BOTTOM_PANE_SECTION_TERRAIN_BRUSH_BUTTON_2 = addSizeArrayWH(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_BOTTOM_PANE_SECTION_TERRAIN_BRUSH_BUTTON_1].width,
atlasCoord[ATLAS_BOTTOM_PANE_SECTION_TERRAIN_BRUSH_BUTTON_1].height
); atlasCoord_Last = addSizeArrayXY(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_BOTTOM_PANE_SECTION_TERRAIN_BRUSH_BUTTON_1].x,
atlasCoord[ATLAS_BOTTOM_PANE_SECTION_TERRAIN_BRUSH_BUTTON_1].y-atlasCoord[ATLAS_BOTTOM_PANE_SECTION_TERRAIN_BRUSH_BUTTON_1].height-ATLAS_BOTTOM_PANE_SECTION_TERRAIN_BRUSH_BUTTON_SPAN
);
// Brush button.
ATLAS_BOTTOM_PANE_SECTION_TERRAIN_BRUSH_BUTTON_3 = addSizeArrayWH(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_BOTTOM_PANE_SECTION_TERRAIN_BRUSH_BUTTON_1].width,
atlasCoord[ATLAS_BOTTOM_PANE_SECTION_TERRAIN_BRUSH_BUTTON_1].height
); atlasCoord_Last = addSizeArrayXY(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_BOTTOM_PANE_SECTION_TERRAIN_BRUSH_BUTTON_1].x,
atlasCoord[ATLAS_BOTTOM_PANE_SECTION_TERRAIN_BRUSH_BUTTON_2].y-atlasCoord[ATLAS_BOTTOM_PANE_SECTION_TERRAIN_BRUSH_BUTTON_2].height-ATLAS_BOTTOM_PANE_SECTION_TERRAIN_BRUSH_BUTTON_SPAN
);
// Brush button.
ATLAS_BOTTOM_PANE_SECTION_TERRAIN_BRUSH_BUTTON_4 = addSizeArrayWH(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_BOTTOM_PANE_SECTION_TERRAIN_BRUSH_BUTTON_1].width,
atlasCoord[ATLAS_BOTTOM_PANE_SECTION_TERRAIN_BRUSH_BUTTON_1].height
); atlasCoord_Last = addSizeArrayXY(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_BOTTOM_PANE_SECTION_TERRAIN_BRUSH_BUTTON_1].x,
atlasCoord[ATLAS_BOTTOM_PANE_SECTION_TERRAIN_BRUSH_BUTTON_3].y-atlasCoord[ATLAS_BOTTOM_PANE_SECTION_TERRAIN_BRUSH_BUTTON_3].height-ATLAS_BOTTOM_PANE_SECTION_TERRAIN_BRUSH_BUTTON_SPAN
);
// Beautify Terrain button.
ATLAS_BOTTOM_PANE_SECTION_TERRAIN_BRUSH_BUTTON_BEAUTIFY = addSizeArrayWH(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_BOTTOM_PANE_SECTION_TERRAIN_BRUSH_BUTTON_1].width,
atlasCoord[ATLAS_BOTTOM_PANE_SECTION_TERRAIN_BRUSH_BUTTON_1].height
); atlasCoord_Last = addSizeArrayXY(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_BOTTOM_PANE_SECTION_TERRAIN_BRUSH_BUTTON_1].x,
atlasCoord[ATLAS_BOTTOM_PANE_SECTION_TERRAIN_BRUSH_BORDER].y+10
);
// ============================================= TERRAIN EDITOR: PAINT TERRAIN ===============================================
// Terrain Palette Background.
ATLAS_BOTTOM_PANE_SECTION_TERRAIN_PALETTE_BKG = addSizeArrayWH(atlasCoord, atlasCoord_Last,
603,
122
); atlasCoord_Last = addSizeArrayXY(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_RB_CORNER].x+atlasCoord[ATLAS_RB_CORNER].width,
atlasCoord[ATLAS_BOTTOM_PANE_BKG].y+5
);
// Terrain Palette Tabs.
ATLAS_BOTTOM_PANE_SECTION_TERRAIN_PALETTE_TAB = new Object();
ATLAS_BOTTOM_PANE_SECTION_TERRAIN_PALETTE_TAB.span = 9;
ATLAS_BOTTOM_PANE_SECTION_TERRAIN_PALETTE_TAB.max = 9;
for (ATLAS_BOTTOM_PANE_SECTION_TERRAIN_PALETTE_TAB.last = 1; ATLAS_BOTTOM_PANE_SECTION_TERRAIN_PALETTE_TAB.last <= ATLAS_BOTTOM_PANE_SECTION_TERRAIN_PALETTE_TAB.max; ATLAS_BOTTOM_PANE_SECTION_TERRAIN_PALETTE_TAB.last++)
{
ATLAS_BOTTOM_PANE_SECTION_TERRAIN_PALETTE_TAB[ATLAS_BOTTOM_PANE_SECTION_TERRAIN_PALETTE_TAB.last] = atlasCoord_Last;
atlasCoord[atlasCoord_Last] = new Object();
atlasCoord[atlasCoord_Last].width = 63;
atlasCoord[atlasCoord_Last].height = 17;
if (ATLAS_BOTTOM_PANE_SECTION_TERRAIN_PALETTE_TAB.last == 1)
atlasCoord[atlasCoord_Last].x = atlasCoord[ATLAS_BOTTOM_PANE_SECTION_TERRAIN_PALETTE_BKG].x+atlasCoord[ATLAS_BOTTOM_PANE_SECTION_TERRAIN_PALETTE_BKG].width-atlasCoord[atlasCoord_Last].width+2;
else
atlasCoord[atlasCoord_Last].x = atlasCoord[ATLAS_BOTTOM_PANE_SECTION_TERRAIN_PALETTE_TAB[ATLAS_BOTTOM_PANE_SECTION_TERRAIN_PALETTE_TAB.last]-1].x-atlasCoord[atlasCoord_Last].width+ATLAS_BOTTOM_PANE_SECTION_TERRAIN_PALETTE_TAB.span;
atlasCoord[atlasCoord_Last].y = atlasCoord[ATLAS_BOTTOM_PANE_SECTION_TERRAIN_PALETTE_BKG].y+atlasCoord[ATLAS_BOTTOM_PANE_SECTION_TERRAIN_PALETTE_BKG].height;
atlasCoord_Last++;
}
// Custom button.
ATLAS_BOTTOM_PANE_SECTION_TERRAIN_PALETTE_BUTTON_CUSTOM = addSizeArrayWH(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_CLIFF_BUTTON_CUSTOM].width,
atlasCoord[ATLAS_LEFT_PANE_SECTION_TERRAIN_CLIFF_BUTTON_CUSTOM].height
); atlasCoord_Last = addSizeArrayXY(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_BOTTOM_PANE_SECTION_TERRAIN_PALETTE_BKG].x-1,
atlasCoord[ATLAS_BOTTOM_PANE_SECTION_TERRAIN_PALETTE_BKG].y+atlasCoord[ATLAS_BOTTOM_PANE_SECTION_TERRAIN_PALETTE_BKG].height+3
);
// Right arrow on Terrain Palette.
ATLAS_BOTTOM_PANE_SECTION_TERRAIN_PALETTE_RT_ARROW = addSizeArrayWH(atlasCoord, atlasCoord_Last,
6,
12
); atlasCoord_Last = addSizeArrayXY(atlasCoord, atlasCoord_Last,
atlasCoord[ATLAS_BOTTOM_PANE_SECTION_TERRAIN_PALETTE_TAB[ATLAS_BOTTOM_PANE_SECTION_TERRAIN_PALETTE_TAB.last-1]].x-atlasCoord[ATLAS_BOTTOM_PANE_SECTION_TERRAIN_PALETTE_RT_ARROW].width-atlasCoord[ATLAS_BOTTOM_PANE_SECTION_TERRAIN_PALETTE_RT_ARROW].width,
atlasCoord[ATLAS_BOTTOM_PANE_SECTION_TERRAIN_PALETTE_BUTTON_CUSTOM].y-2
);
}
// ====================================================================

View File

@ -1,5 +1,5 @@
// Main Pregame JS Script file
// Contains functions and code for Main Menu, Session Creation etc.
// Contains functions and code for Main Menu.
// ====================================================================
@ -10,67 +10,3 @@ function initPreGame()
// ====================================================================
function initIPHost()
{
// IP Host Window background.
crd_pregame_iphost_bkg_x = -250;
crd_pregame_iphost_bkg_y = -200;
crd_pregame_iphost_bkg_width = (crd_pregame_iphost_bkg_x * -1) * 2;
crd_pregame_iphost_bkg_height = (crd_pregame_iphost_bkg_y * -1) * 2;
// IP Host Window exit button.
crd_pregame_iphost_exit_button_width = 16;
crd_pregame_iphost_exit_button_height = crd_pregame_iphost_exit_button_width;
crd_pregame_iphost_exit_button_x = crd_pregame_iphost_bkg_x+crd_pregame_iphost_bkg_width+10;
crd_pregame_iphost_exit_button_y = crd_pregame_iphost_bkg_y-25;
// IP Host Window titlebar.
crd_pregame_iphost_titlebar_width = crd_pregame_iphost_bkg_width;
crd_pregame_iphost_titlebar_height = 16;
crd_pregame_iphost_titlebar_x = crd_pregame_iphost_bkg_x;
crd_pregame_iphost_titlebar_y = crd_pregame_iphost_bkg_y-25;
}
// ====================================================================
function initMPSessionHost(playerName, mapName)
{
// Code here
var success = startServer(80);
if(!success) {
messageBox(400, 200, "Failed to start server. Please review the logfile for more information on the problem.", "Problem", 2, new Array(), new Array());
}
GUIObjectHide("pregame_mp_ip");
GUIObjectHide("pregame_subwindow_bkg");
// Need "waiting for more players to join and start game" code here
/*btCaptions = new Array("OK");
btCode = new Array("");
messageBox(400, 200, "Data: " + playerName + ";" + mapName + ";", "Test", 0, btCaptions, btCode);*/
}
// ====================================================================
function initMPSessionClient(playerName, serverIP)
{
// Join MP game
var success = joinGame(playerName, serverIP);
if(!success) {
messageBox(400, 200, "Failed to join game. Please review the logfile for more information on the problem.", 2, new Array(), new Array());
}
GUIObjectHide("pregame_mp_ip");
GUIObjectHide("pregame_subwindow_bkg");
// Need "waiting for game to start" code here - it should automatically start if the client recieves the start signal from the server,
// but I currently don't know how that could be done.
/*btCaptions = new Array("OK");
btCode = new Array("");
messageBox(400, 200, "Data: " + playerName + ";" + serverIP + ";", "Test", 0, btCaptions, btCode);*/
}
// ====================================================================

View File

@ -0,0 +1,42 @@
function startLoadingScreen()
{
// Setup loading screen.
// Switch screens from main menu to loading screen.
GUIObjectHide("pregame_gui");
GUIObjectUnhide("loading_screen");
console.write("Loading " + g_GameAttributes.mapFile + " (" + g_GameAttributes.numPlayers + " players) ...");
getGUIObjectByName("loading_screen_titlebar_text").caption = "Loading Scenario ...";
getGUIObjectByName("loading_screen_progress_bar_text").caption = "... Reticulating splines ...";
getGUIObjectByName("loading_screen_progress_bar").caption = 80;
getGUIObjectByName("loading_screen_text").caption = "LOADING " + g_GameAttributes.mapFile + " ...\nPlease wait ...\n(Yes, we know the progress bar doesn't do diddly squat right now)\nJust keep waiting ...\nIt'll get there ...\nAlmost done ...\nTrust me!";
getGUIObjectByName("loading_screen_tip").caption = "Wise man once say ...\nHe who thinks slow, he act in haste, be rash and quick and foolish. But he that thinks too much, acts too slowly. The stupid always win, Commandersan. Remember that. You are tiny grasshopper.";
// Begin game session.
setTimeout( loadSession, 200 );
}
// ====================================================================
function loadSession()
{
if (! startGame())
{
// Failed to start the game; go back to the main menu. TODO: display an error message.
GUIObjectHide("loading_screen");
GUIObjectUnhide("pregame_gui");
return;
}
GUIObjectHide("loading_screen");
GUIObjectUnhide("session_gui");
FlipGUI(GUIType);
// Select session peace track.
curr_session_playlist_1 = newRandomSound("music", "peace");
// Fade out main theme and fade in session theme.
CrossFade(curr_music, curr_session_playlist_1, 0.0001);
}
// ====================================================================

View File

@ -0,0 +1,64 @@
function initIPHost()
{
// IP Host Window background.
crd_pregame_iphost_bkg_x = -250;
crd_pregame_iphost_bkg_y = -200;
crd_pregame_iphost_bkg_width = (crd_pregame_iphost_bkg_x * -1) * 2;
crd_pregame_iphost_bkg_height = (crd_pregame_iphost_bkg_y * -1) * 2;
// IP Host Window exit button.
crd_pregame_iphost_exit_button_width = 16;
crd_pregame_iphost_exit_button_height = crd_pregame_iphost_exit_button_width;
crd_pregame_iphost_exit_button_x = crd_pregame_iphost_bkg_x+crd_pregame_iphost_bkg_width+10;
crd_pregame_iphost_exit_button_y = crd_pregame_iphost_bkg_y-25;
// IP Host Window titlebar.
crd_pregame_iphost_titlebar_width = crd_pregame_iphost_bkg_width;
crd_pregame_iphost_titlebar_height = 16;
crd_pregame_iphost_titlebar_x = crd_pregame_iphost_bkg_x;
crd_pregame_iphost_titlebar_y = crd_pregame_iphost_bkg_y-25;
}
// ====================================================================
function initMPSessionHost(playerName, mapName)
{
// Code here
var success = startServer(80);
if(!success) {
messageBox(400, 200, "Failed to start server. Please review the logfile for more information on the problem.", "Problem", 2, new Array(), new Array());
}
GUIObjectHide("pregame_mp_ip");
GUIObjectHide("pregame_subwindow_bkg");
// Need "waiting for more players to join and start game" code here
/*btCaptions = new Array("OK");
btCode = new Array("");
messageBox(400, 200, "Data: " + playerName + ";" + mapName + ";", "Test", 0, btCaptions, btCode);*/
}
// ====================================================================
function initMPSessionClient(playerName, serverIP)
{
// Join MP game
var success = joinGame(playerName, serverIP);
if(!success) {
messageBox(400, 200, "Failed to join game. Please review the logfile for more information on the problem.", 2, new Array(), new Array());
}
GUIObjectHide("pregame_mp_ip");
GUIObjectHide("pregame_subwindow_bkg");
// Need "waiting for game to start" code here - it should automatically start if the client recieves the start signal from the server,
// but I currently don't know how that could be done.
/*btCaptions = new Array("OK");
btCode = new Array("");
messageBox(400, 200, "Data: " + playerName + ";" + serverIP + ";", "Test", 0, btCaptions, btCode);*/
}
// ====================================================================

View File

@ -76,49 +76,6 @@ function initCellReference()
// ====================================================================
function startLoadingScreen()
{
// Setup loading screen.
// Switch screens from main menu to loading screen.
GUIObjectHide("pregame_gui");
GUIObjectUnhide("loading_screen");
console.write("Loading " + g_GameAttributes.mapFile + " (" + g_GameAttributes.numPlayers + " players) ...");
getGUIObjectByName("loading_screen_titlebar_text").caption = "Loading Scenario ...";
getGUIObjectByName("loading_screen_progress_bar_text").caption = "... Reticulating splines ...";
getGUIObjectByName("loading_screen_progress_bar").caption = 80;
getGUIObjectByName("loading_screen_text").caption = "LOADING " + g_GameAttributes.mapFile + " ...\nPlease wait ...\n(Yes, we know the progress bar doesn't do diddly squat right now)\nJust keep waiting ...\nIt'll get there ...\nAlmost done ...\nTrust me!";
getGUIObjectByName("loading_screen_tip").caption = "Wise man once say ...\nHe who thinks slow, he act in haste, be rash and quick and foolish. But he that thinks too much, acts too slowly. The stupid always win, Commandersan. Remember that. You are tiny grasshopper.";
// Begin game session.
setTimeout( loadSession, 200 );
}
// ====================================================================
function loadSession()
{
if (! startGame())
{
// Failed to start the game; go back to the main menu. TODO: display an error message.
GUIObjectHide("loading_screen");
GUIObjectUnhide("pregame_gui");
return;
}
GUIObjectHide("loading_screen");
GUIObjectUnhide("session_gui");
FlipGUI(GUIType);
// Select session peace track.
curr_session_playlist_1 = newRandomSound("music", "peace");
// Fade out main theme and fade in session theme.
CrossFade(curr_music, curr_session_playlist_1, 0.0001);
}
// ====================================================================
function setPortrait(objectName, portraitString, portraitSuffix, portraitCell)
{
// Use this function as a shortcut to change a portrait object to a different portrait image.
@ -228,3 +185,5 @@ function selected()
return( selection[0] );
return( null );
}
// ====================================================================

View File

@ -1,40 +1,40 @@
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 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);
}
}