Compare commits

..
Author SHA1 Message Date
Stefan MaierandClaude Opus 5.5 493713b0a6 Steam Frame: the refresh rates offered in the log; its rate and speed noted
The runtime offers only the rate SteamOS is set to. At 72 Hz the game holds
it with multiview (about 11.6 ms a frame); at 90 Hz it cannot, and the
frames SteamVR makes up showed as a doubled picture when the head turned.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-04 21:47:56 +02:00
Stefan Maier bf356fc58a Merge branch 'fix/vr-shot-origin' into frame/controllers 2026-10-04 21:42:21 +02:00
Stefan MaierandClaude Opus 5.5 6a7b919522 VR: shots fly along the aim, not above it
A shot fired from the muzzle of the weapon in the hand was kept inside the
level by the game's test of the line from the eyes to it, which in VR runs
down through the player's own body: the test hit it and moved the shot up
towards the eyes, from where it flew parallel to the aim, a few centimetres
above the crosshair and the laser (measured: up to 7 cm at 3 m). In VR the
line is tested against the level alone (a hand through a wall still does
not fire through it); measured after: the impacts on their rays, on
average within a millimetre.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-04 21:42:07 +02:00
Stefan MaierandClaude Opus 5.5 c1305fa94f Steam Frame: its controllers as themselves, with the Xbox's layout
SteamVR offers the Frame's controllers by their own profile
(XR_VALVE_frame_controller_interaction); without bindings for it, it mapped
the Quest's onto them, and X and Y landed on the left one's D-pad. Now: the
right one's A, B, X, Y and menu button are the game's A, B, X, Y and Start
(the Xbox's layout), the left one's View is Back and its D-pad the D-pad,
the bumpers switch grenades and the flashlight. The VR options' page of
buttons shows the Frame's layout there. The runtime's extensions and the
controllers' profile are in the log.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-04 20:28:13 +02:00
Stefan MaierandClaude Opus 5.5 0fc85d6c67 Steam Frame: the overlays' alpha from their colour on SteamVR
SteamVR draws a quad's texels by their alpha alone, and the game's menus,
HUD and text have none in their additive parts: on the Frame nothing showed.
On SteamVR (the runtime's name says) the copy into the quads' images takes
their alpha from their colour where it is higher; HALO_XR_QUAD_ALPHA
(colour, keep) overrides, for trying. The Frame's notes updated.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-04 20:17:43 +02:00
Stefan MaierandClaude Opus 5.5 c0a08f395e Steam Frame: the game's data in the SteamOS user's Documents when it is there
Lepton empties the app's own folders (and uninstalls the app) whenever it
starts again; Documents is the SteamOS user's and kept. When
/home/steamos/Documents/HaloCE holds the maps and is writable, the launcher
and the game take it as the data folder (maps, config.toml, saves, logs).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-04 19:51:08 +02:00
Stefan MaierandClaude Opus 5.5 06cb70fb58 Steam Frame: notes, and no variable the Android loader never reads
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-04 18:27:28 +02:00
Stefan MaierandClaude Opus 5.5 1709698053 Start on the Steam Frame (Lepton)
Lepton has no clipboard service, and SDL3's activity died taking one for
granted: the build now patches SDL's clipboard handler to do without.
The Frame lists an implicit OpenXR layer for Vulkan apps whose library an
app cannot load, which failed xrCreateInstance (and the Android loader
reads no variable to turn it off): the app now carries a pass-through
layer under that library's name. With both, the game runs on the Frame
and its OpenXR session starts (SteamVR, 1728x1728 an eye, 72 Hz).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-04 18:26:39 +02:00
Stefan Maier cb72dca40f Merge branch 'merge/upstream-2026-10-04' 2026-10-04 14:00:26 +02:00
Stefan MaierandClaude Opus 5.5 bbea2a2bff The online panel's game by its row past the fixed rows
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-04 13:47:56 +02:00
Stefan MaierandClaude Opus 5.5 57cdbd8f80 Merge upstream (cybersecurity/halo-ce-universal 193cbf59): server browser, split-screen co-op
Upstream's server browser of public internet games (p2p_lobby.c) and the VR
port's own public list share the brokers: its topics are a table now, and
the VR port's (join codes' and public games') are entries of it; the VR
port's retained publishes carry MQTT 5's empty properties. The VR port's
public toggle lists the game in the server browser too, and the VR online
panel shows the server browser's games (PC, phones, VR) first, joined by
their invites, then its own list's that it has not.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-04 13:47:29 +02:00
Stefan Maier c5c5a8eaeb Merge branch 'feature/bots-vehicles' 2026-10-04 13:33:07 +02:00
Stefan Maier a3ee36b5ef Merge branch 'feature/vr-hud-fixes' 2026-10-04 13:33:07 +02:00
Stefan Maier 30a1e0f40e Merge branch 'feature/vr-menu-lists' 2026-10-04 13:33:07 +02:00
Stefan Maier 327cf96d6f Merge branch 'feature/vr-options' 2026-10-04 13:33:07 +02:00
Stefan MaierandClaude Opus 5.5 867855d388 Bot drivers see walls and rocks ahead, back off when stuck, go round teammates
Driving a jeep or a scout, a bot looks ahead (farther the faster) along the
way it turns: a wall or a rock there (not ground it can drive up) is passed
on the most open side nearest its way, slower, and boxed in it backs off.
Stuck is now making no way along its heading for a second and a half, which
spinning wheels no longer hide. A teammate in the way is gone round slowly
on the other side instead of waited for.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-04 13:25:15 +02:00
Stefan MaierandClaude Opus 5.5 4af570bc08 VR: the online games' hint further left and shorter, clear of Y = Create Game
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-04 13:13:27 +02:00
Stefan MaierandClaude Opus 5.5 7a1cf79396 VR: teammates' triangles over their heads, a click joins on the profile screen
The triangle the game draws over each teammate goes into the name's slot
over the head (shown in the world there, not on the HUD before the eyes,
where it hung distorted), under the name, or alone when names are off. On
the screen where controllers join by pressing A, a click is the pad's A. On
the screen of games to join, the online games' hint goes into the key bar's
free left and the join status under it, clear of the map's picture.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-04 12:00:41 +02:00
Stefan MaierandClaude Opus 5.5 9e7fd75f57 Bots: a vehicle left stuck is left alone a while; every third bot follows a person
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-04 11:41:40 +02:00
Stefan MaierandClaude Opus 5.5 6754403d68 VR: the menu pointer leaves the stick's choice be; clicks beside a list step it
A choice the stick moved to (a map among the tiles) is no longer taken back
by the pointer resting on another, until the pointer moves well away; and a
click beside a list's slots or a value's box, along the way it steps (where
its arrows are drawn), steps it back or on.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-04 11:41:09 +02:00
Stefan MaierandClaude Opus 5.5 aedf5ff9bc Bot drivers wait for those coming to get in, and brake for teammates
Just in, a bot driver waits up to six seconds while a bot goes for its
vehicle or a person of its team stands near it with a gun's seat free; it
brakes (backing, if fast) for a teammate on foot in its way. A bot takes a
vehicle only when the nearest enemy (or the objective) is a long way off.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-04 11:39:24 +02:00
MrBruh 193cbf59c7 Split-screen co-op 2026-10-04 22:27:13 +13:00
Stefan MaierandClaude Opus 5.5 fe160e9dbe Bots man turrets while an enemy is about
A turret near a bot (15 world units) is manned while an enemy is within 35
of it, and left once there has been no one to shoot for ten seconds; at it
the bot aims and fires as at a vehicle's gun. The map's vehicles are named
in the log once a game.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-04 11:23:49 +02:00
MrBruhandClaude Opus 5.5 d578f88bd0 Validate server browser names as player names
The server browser cleans each game's name as a host cleans the names
of the players and machines that join it, and leaves out a game whose
name has nothing left that names it. A host lists a Latin letter with
a mark as its plain letter, as player names are read.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-10-04 20:53:00 +13:00
MrBruhandClaude Opus 5.5 d3fc997fdc Ready walked-over weapons, swap out the selected one
In multiplayer a second weapon is picked up into the empty slot on
walking over it and readied, as in campaign; a client readies the
weapon the host says it picked up once it has it. A swap drops the
weapon the player selected, not the one still in hand mid-switch.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-10-04 20:47:06 +13:00
MrBruh a227872ccb Merge pull request #73 from thelinkin3000/fix/unarmed-melee-campaign
Leave an unarmed melee alone where the map has no multiplayer weapons
2026-10-04 20:28:01 +13:00
MrBruh 812ffeea33 Outline the focused server browser row 2026-10-04 20:19:12 +13:00
MrBruh c05864b3fc Leave quit players off the scoreboard 2026-10-04 20:06:28 +13:00
thelinkin3000andClaude Opus 5.5 ce77db8404 Leave an unarmed melee alone where the map has no multiplayer weapons
A player with no weapon, whose biped has no blow of its own, borrows the
melee of the globals' first multiplayer weapon. A campaign map's globals
list no multiplayer weapons, and a10 starts the player unarmed, so a melee
in the cryo tube's tutorial asked for element 0 of an empty block and
halted in tag_groups.c. With no multiplayer weapon there is no blow to
borrow, and the melee does what the game's always did there: nothing.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-04 06:22:42 +00:00
MrBruh 39350fb81f Enemy names to the motion sensor's range and setting 2026-10-04 18:57:11 +13:00
MrBruh 1a15a171ac No unarmed grenades or melee from vehicle seats 2026-10-04 17:54:34 +13:00
MrBruh 2e3841ff7d Left-align the shotgun's ammo meter 2026-10-04 17:47:55 +13:00
MrBruh 46edf53657 Settings and End Game in the pause menu 2026-10-04 17:20:32 +13:00
MrBruh c3adcfe5bf Deflate the release zips again 2026-10-04 14:22:11 +13:00
MrBruh 3304965653 Lobby check test past the compiler launcher 2026-10-04 13:43:13 +13:00
MrBruh c04765d7f4 Server browser of public internet games 2026-10-04 13:34:23 +13:00
MrBruh 933aac6175 No map weapons option, grenades with no weapon 2026-10-04 10:44:37 +13:00
MrBruh 809408c663 Survive kills and joins in departed players' slots 2026-10-04 10:12:32 +13:00
MrBruh 601a4c1f50 Unload the menu map before a client's next game 2026-10-04 09:51:47 +13:00
MrBruh 133d6a5dc1 Free quit players' slots 2026-10-04 09:07:47 +13:00
Stefan MaierandClaude Opus 5.5 12c97ffa85 Bots take vehicles: drive, man the gun, ride along; and race
A bot whose way is long takes an empty vehicle it can drive near it (a
Warthog, a Ghost, a Scorpion), walking to the driver's door and standing
there until the game offers the seat. Driving, it follows a vehicle's path
(from the vehicle's surface, wider, its steps further apart), turning a
Warthog or a Ghost by facing where it goes and pushing a Scorpion there from
where its gun faces; it runs an enemy down, circles one with a gunner
aboard, fires a Ghost's and a Scorpion's guns, backs off what it is stuck
on, roams between the map's spawn points, and gets out at the objective,
overturned, stuck again and again, or with an enemy close while it stands.
In a game of teams a bot mans the gun of a teammate's vehicle, a person's
first (or rides along with a person), aims and fires it, and gets out once
no one drives. Overturned vehicles near it are turned upright.

In a race a bot heads for the flag it is to touch next
(game_engine_race_next_flag), in a vehicle if it can have one.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-03 16:48:59 +02:00
MrBruh 23b542601f Unarmed melee and infinite grenades for any player count 2026-10-04 03:22:16 +13:00
MrBruh 62b630a261 Remove the flamethrower and gravity rifle 2026-10-04 03:05:59 +13:00
Stefan MaierandClaude Opus 5.5 0e6327cadf The controls page lists switching grenades (B held) on a line of its own
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-03 15:41:56 +02:00
Stefan MaierandClaude Opus 5.5 5f82df71f0 VR options: Y on the main menu or the pause menu
A panel of the VR settings one may change while playing (turning, snap
angle, smooth speed, the vehicles' comfort vignette, the Warthog's wheel,
the weapon laser, the crosshair, the motion tracker on the wrist), written
to config.toml, which vr.c reads again as they change; and a page of what
the controllers' buttons do, on foot, in vehicles and in the menus. The
pointer works both, and its hint opens the panel. The menus' screens are
named in the log as they come up.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-03 15:37:10 +02:00
Stefan Maier cfdd821b45 Merge branch 'merge/upstream-v11' 2026-10-03 15:21:57 +02:00
Stefan MaierandClaude Opus 5.5 a9bbce5f7a Merge upstream (cybersecurity/halo-ce-universal c9ee319a): PC menus, network version 11
Upstream's PC menus are kept for the desktop; in VR the Xbox's stay, which
the VR port's join codes, game list, host options and keyboard pointer are
built into. config_write_integer now writes through upstream's config_write.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-03 15:11:07 +02:00
MrBruh e8e0c2215a Find the port's headers in Windows game units 2026-10-04 02:08:45 +13:00
MrBruh 383355381c Kills to win up to 500 in the PC menus 2026-10-04 02:04:14 +13:00
Stefan Maier e94906100c Merge branch 'feature/warthog-wheel' 2026-10-03 14:58:32 +02:00
Stefan Maier 57add5ed71 Merge branch 'feature/vr-menu-pointer' 2026-10-03 14:58:32 +02:00
Milenko 2b0103a0ef Slayer's kills to win up to 500, for big games
The game type editor's kills to win (Slayer and Team Slayer) went up to
50, which a game of many players reaches in moments: it now also offers 75,
100, 150, 200, 250 and 500. The spinner's items are its string list's
(ui.map's 5, 10, 15, 25, 50) and then strings of the port's own, each with
its description; the options list's descriptions count only a spinner's
items of the tag's own, so those of the rows after it are where they were.
A spinner with extra items is a little wider, for three digits.
2026-10-04 01:58:26 +13:00
MrBruh c9ee319ab5 Add the PC menus 2026-10-04 01:56:45 +13:00
Stefan MaierandClaude Opus 5.5 770f8881e0 At the wheel, the right trigger is the throttle and the left the brake
Holding a Warthog's wheel, the triggers drive as the left stick pushed up
or down would (backwards once stopped), unless the stick is pushed further;
they neither fire nor hold a grenade then.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-03 13:50:41 +02:00
Stefan MaierandClaude Opus 5.5 38ab192749 Steer a Warthog by its wheel with the hands
At an open vehicle's wheel, a hand that grips near it (where the driver's
drawn hands hold it) takes hold, and the hands turn it about its column:
both by the line between them, one about the wheel's middle. Turned
vr.vehicle_wheel_degrees (90) either way it steers fully; let go, the right
stick steers as before. Holding the wheel, the right grip is no melee.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-03 13:00:26 +02:00
Stefan MaierandClaude Opus 5.5 827eb0fc1d The keyboard gets the menu pointer's clicks; its BACK and ENTER hints click
The menus' mouse handling took the pointer's clicks each frame before the
keyboard asked for them, so the keyboard never saw one: with the keyboard
up the pointer is now the keyboard's alone. Clicking the hints under it
(B = BACK, A = ENTER, in its picture) cancels or finishes as Done does.
The pointer counts as moved past 3 pixels, not a hand's tremor.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-03 12:47:51 +02:00
Stefan MaierandClaude Opus 5.5 a482a5f5bb The on-screen keyboard follows the menu pointer in VR
The key under the controller's pointer is picked and a click types it.
In the menus the triggers no longer reach the game as the gamepad's (they
click the pointer; on the keyboard they also moved its cursor).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-03 12:42:57 +02:00
Stefan MaierandClaude Opus 5.5 81f321f959 Of overlapping screen keys, the one whose icon is nearest on the left
A key's label is a text box often far wider than its text, reaching over
the next key (Back pressed Delete). Of the keys under the pointer, the one
whose icon begins nearest on its left is taken: each key from its icon to
the next one's.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-03 12:30:20 +02:00
Stefan MaierandClaude Opus 5.5 f97ff9219f Menu pointer: narrower keys, the click where the trigger began to move
The screen keys' margin in VR was wide enough to reach the next key (Back
pressed Delete): now 2 pixels to the sides and 4 above and below, with a
label at most 25 pixels off. A click is taken where the controller
pointed as its trigger began to move (past a tenth), not a fixed time
before, which could still be on the key it just left.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-03 12:27:28 +02:00
Stefan MaierandClaude Opus 5.5 85e79a067a Steadier menu pointer clicks in VR
A click is taken where the controller pointed a few frames before the
trigger went down (pulling it tips the controller), and in VR a screen
key's button takes a label up to 40 pixels off and a margin of 6 about it,
so the keys under the menus (A, B, Back) are hit as readily as items.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-03 12:23:28 +02:00
Stefan MaierandClaude Opus 5.5 effeda1b7c Point at the menus with a controller in VR
The desktop builds' mouse in the menus (halo_ui_pointer.h) now comes, on
Android in VR, from a controller: where its aim's line meets the menus'
screen fixed in the room is the pointer, the trigger clicks (the hand
pressed last points; a click ticks its rumble), and a ringed dot shows
where it points. The item under it takes the focus and a click presses A,
as with the mouse; the online games and host options panels take it too.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-03 11:56:05 +02:00
Stefan Maier 6299503191 Merge branch 'feature/bots-team' 2026-10-03 11:10:25 +02:00
Stefan MaierandClaude Opus 5.5 7242151017 Names over the heads at 60% of their size on the HUD
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-03 10:48:01 +02:00
Stefan MaierandClaude Opus 5.5 4b8f8dde8b Players' names over their heads in VR, each on a quad of its own
The HUD in VR is a screen at one distance before the eyes, where the names
upstream draws on it hung. Each name is now drawn into a slot of a region
of the back buffer before the HUD (up to eight, one under another), taken
into a names layer, and shown on a quad of its own over its player's head,
facing the eyes, as wide as it would look on the HUD: in depth, for both
eyes. Who is named, and when, is as upstream has it.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-03 10:31:36 +02:00
483 changed files with 48315 additions and 485 deletions

No files matched your search

+1 -4
View File
@@ -242,10 +242,7 @@ jobs:
mkdir release
for build in artifacts/*/; do
name="$(basename "$build")"
# stored, not deflated: the updater in builds up to 57 waits for
# an end of stream the game's zlib 1.1 does not always report,
# and fails on a deflated entry that unpacked correctly
(cd "$build" && zip -0 -qr "$GITHUB_WORKSPACE/release/$name.zip" .)
(cd "$build" && zip -qr "$GITHUB_WORKSPACE/release/$name.zip" .)
done
ls -l release
+95
View File
@@ -0,0 +1,95 @@
# Steam Frame
The same APK as for the Quest runs on the Steam Frame, in Lepton (SteamOS's
Android, a Waydroid fork: Android 11, arm64), with SteamVR's OpenXR runtime.
What differs is found at run time, not by a build of its own.
## The device
- Steam Settings > System > Enable Developer Mode; then start "Lepton
Development" from the library. While the headset sleeps Lepton stops, and
adb with it.
- adb over the network: `adb connect <frame-ip>:5555`; over USB:
`adb forward tcp:5555 tcp:5555` then `adb connect localhost:5555`.
Always name the device (`adb -s <frame-ip>:5555 ...`): a Quest may be
connected as well.
- Install with `adb install -r --no-streaming`. It prints "Lepton post
installation failed due to APP_PATH being unset", but installs. Start the
game with `am start -n com.halo.decomp/.LauncherActivity`.
- Lepton empties `/sdcard/Android/data` whenever it starts again: the game's
data must live elsewhere (stage 2). `/sdcard/Documents` and
`/sdcard/Download` are the SteamOS user's folders and are kept.
## What the port does for it
- SDL3's clipboard handler takes a clipboard service for granted, which
Lepton has not: `tools/android_build.py` patches it to do without.
- SteamVR lists an implicit OpenXR layer for Vulkan apps whose library an
app cannot load: the APK carries a pass-through layer under its name
(`port/android/xr_layer/fdm_injection_stub.c`).
## Stages
| # | Stage | State |
| --- | --- | --- |
| 1 | Base: the fixes above on the current main | done |
| 2 | The game's data where Lepton keeps it | done: `/home/steamos/Documents/HaloCE` |
| 3 | Menus, HUD and text visible (quad layers) | done: their alpha from their colour |
| 4 | The freeze at the cryo bay's calibration | not seen again (2026-10-04) |
| 5 | The Frame's controllers | done: their own profile, the Xbox's layout |
| 6 | Frame rate, resolution | done: 72 Hz steady, multiview on |
| 7 | Multiplayer, voice, cross-play with the Quest | |
| 8 | Installing it, for others | |
## The game's data
Lepton uninstalls the app and empties its folders whenever it starts again.
The game's data lives in the SteamOS user's Documents instead: when
`/home/steamos/Documents/HaloCE` holds `maps/ui.map` and is writable, the
launcher and the game take it as their data folder (config.toml, saves and
debug.txt go there too). Once:
adb -s <frame-ip>:5555 shell mkdir -p /home/steamos/Documents/HaloCE/maps
adb -s <frame-ip>:5555 push assets/maps/. /home/steamos/Documents/HaloCE/maps/
adb -s <frame-ip>:5555 shell chmod -R 777 /home/steamos/Documents/HaloCE
After a Lepton restart only the APK is installed again. (Use the path under
/home, not /sdcard/Documents: Android 11's scoped storage stands between the
app and the latter.)
## The controllers
SteamVR offers the Frame's controllers as themselves
(`XR_VALVE_frame_controller_interaction`,
`/interaction_profiles/valve/frame_controller_valve`; Valve's "Steam Frame
Input" page). Without bindings for it, SteamVR maps the Quest's onto them,
and the left Touch controller's X and Y land on the D-pad. With them the
game gets the Xbox's layout, as the right controller has it: A jump, B
flashlight (held: switch grenades), X action and reload, Y switch weapon,
menu pause; the left one's View is Back (scores), its D-pad the D-pad, the
bumpers switch grenades (left) and the flashlight (right). The VR options'
page of buttons shows this layout on the Frame.
## Findings
- 2026-10-02: runs flat and in VR (GLES 3.2 by Mesa zink on Turnip, eyes
1728x1728, 72 Hz, XR_FB_display_refresh_rate absent). Quad layers
(menus, HUD, instructions) are not shown; the projection layer is. Froze
at the cryo bay's look calibration; its log was lost to Lepton's wipe.
- 2026-10-04: SteamVR draws a quad's texels by their alpha alone; the
game's menus and HUD have none in their additive parts, so nothing showed.
On SteamVR (by the runtime's name) the overlays' alpha now comes from their
colour (host_xr.c; `HALO_XR_QUAD_ALPHA=colour|keep` overrides). With it,
menus, HUD and the campaign ran well (the user: "lief 1a"); no freeze.
- 2026-10-04: no online games found: the public MQTT brokers had banned the
home connection for a while (too many connections from tests that day);
broker.emqx.io came back within minutes. Lepton's network is the Frame's
own (same IP), DNS works.
- 2026-10-04: the refresh rate is SteamOS's setting; the runtime offers
only that one (the game asks for the highest at or below
`vr.refresh_rate`, and logs the rates offered). At 72 Hz the game holds
72 fps (about 11.6 ms a frame with multiview, eyes 7.6 ms; without it
eyes about 9 ms). At 90 Hz it cannot (11.1 ms a frame), and SteamVR's
making up of the missed frames showed as a doubled picture when turning
the head. Keep the Frame at 72 Hz, or lower `vr.resolution_scale` (about
0.85) for 90.
@@ -35,6 +35,7 @@ import java.nio.channels.FileChannel;
*/
public class LauncherActivity extends Activity {
private static final int PICK_IMAGE = 1;
private static final String SHARED_DATA_ROOT = "/home/steamos/Documents/HaloCE";
private File dataRoot;
private TextView status;
@@ -46,6 +47,12 @@ public class LauncherActivity extends Activity {
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
dataRoot = getExternalFilesDir(null);
// the Steam Frame: Lepton empties the app's own folders whenever it
// starts again; the game's data lives in the SteamOS user's
// Documents instead, when it is there (port/android/STEAM_FRAME.md;
// the same choice as host_main.c's)
if (new File(SHARED_DATA_ROOT, "maps/ui.map").isFile() && new File(SHARED_DATA_ROOT).canWrite())
dataRoot = new File(SHARED_DATA_ROOT);
// created by the app, so that files pushed into it with adb stay
// readable (a directory adb creates there belongs to the shell user)
if (dataRoot != null)
+3
View File
@@ -68,6 +68,9 @@ int host_sdl_gl_swap_window(unsigned int window);
int host_sdl_poll_event(void *event);
int host_sdl_set_clipboard_text(const char *text);
void host_sdl_get_clipboard_text(char *buffer, unsigned int size);
/* the keyboard's keys by name (the controls' bindings, xinput_sdl.c) */
void host_sdl_scancode_name(int scancode, char *buffer, unsigned int size);
int host_sdl_scancode_from_name(const char *name);
int host_sdl_show_toast(const char *message, int duration, int gravity, int x, int y);
int host_sdl_show_simple_message_box(unsigned int flags, const char *title, const char *message);
int host_sdl_get_gamepads(unsigned int *ids, int capacity);
+13
View File
@@ -39,6 +39,19 @@ const char *SDL_GetError(void)
return buffer;
}
const char *SDL_GetScancodeName(SDL_Scancode scancode)
{
static __thread char buffer[64];
host_sdl_scancode_name((int)scancode, buffer, sizeof(buffer));
return buffer;
}
SDL_Scancode SDL_GetScancodeFromName(const char *name)
{
return (SDL_Scancode)host_sdl_scancode_from_name(name);
}
Uint64 SDL_GetTicks(void)
{
return (Uint64)host_sdl_ticks();
+8
View File
@@ -90,6 +90,8 @@ int host_errno(void)
static char data_root[512];
static char save_root[512];
/* where a device that empties the app's folders keeps the game's data */
#define SHARED_DATA_ROOT "/home/steamos/Documents/HaloCE"
void host_android_path(int which, char *buffer, uint32_t size)
{
@@ -269,6 +271,12 @@ static void *game_main(void *unused)
external = SDL_GetAndroidExternalStoragePath();
if (!external)
host_fatal("Android storage is unavailable: %s", SDL_GetError());
/* the Steam Frame: Lepton empties the app's own folders whenever it
starts again; the game's data lives in the SteamOS user's Documents
instead, when it is there (port/android/STEAM_FRAME.md; the same choice
as LauncherActivity's) */
if (directory_has_maps(SHARED_DATA_ROOT) && access(SHARED_DATA_ROOT, W_OK) == 0)
external = SHARED_DATA_ROOT;
snprintf(data_root, sizeof(data_root), "%s", external);
snprintf(save_root, sizeof(save_root), "%s/save", external);
/* readable by adb (the shell user), for managing saves */
+10
View File
@@ -98,6 +98,16 @@ void host_sdl_get_error(char *buffer, uint32_t size)
SDL_strlcpy(buffer, SDL_GetError(), size);
}
void host_sdl_scancode_name(int32_t scancode, char *buffer, uint32_t size)
{
SDL_strlcpy(buffer, SDL_GetScancodeName((SDL_Scancode)scancode), size);
}
int32_t host_sdl_scancode_from_name(const char *name)
{
return (int32_t)SDL_GetScancodeFromName(name);
}
int64_t host_sdl_ticks(void)
{
return (int64_t)SDL_GetTicks();
+207 -3
View File
@@ -102,6 +102,14 @@ static struct
XrAction button_b; /* B on the right controller, Y on the left */
XrAction menu;
XrAction thumbrest;
/* the Steam Frame's controllers' own (XR_VALVE_frame_controller_interaction) */
int has_frame_controller;
int frame_layout;
XrAction button_x;
XrAction button_y;
XrAction view;
XrAction bumper;
XrAction dpad[4];
XrAction haptic;
struct xr_hand_actions hands[HALO_XR_HAND_COUNT];
@@ -122,6 +130,11 @@ static struct
GLint rect_uniform;
GLint cut_disc_uniform;
GLint vignette_uniform;
GLint alpha_from_colour_uniform;
/* the runtime draws a quad's texels by their alpha alone, ignoring the
colour of those with none (SteamVR on the Steam Frame): the game's
overlays, whose additive parts have none, get alpha from their colour */
int quad_alpha_from_colour;
GLint tangents_uniform;
float vignette;
/* the same copy from a layer of a texture array (the eyes drawn at
@@ -223,6 +236,7 @@ static const char copy_fragment_shader[] =
"precision highp float;\n"
"uniform sampler2D source;\n"
"uniform float cut_disc;\n"
"uniform float alpha_from_colour; /* 1: as opaque as it is bright (a quad's, SteamVR) */\n"
"uniform float vignette; /* 0..1: the eye images darken from their edges */\n"
"uniform vec4 tangents; /* the eye's edges: left, right, down, up */\n"
"in vec2 coordinate;\n"
@@ -236,6 +250,8 @@ static const char copy_fragment_shader[] =
"{\n"
" vec4 texel = texture(source, coordinate);\n"
" color = vec4(to_linear(texel.rgb), texel.a);\n"
" if (alpha_from_colour > 0.5)\n"
" color.a = max(color.a, max(color.r, max(color.g, color.b)));\n"
" if (cut_disc > 0.5)\n"
" {\n"
" float inside = 1.0 - smoothstep(0.95, 1.0, length(disc));\n"
@@ -326,6 +342,7 @@ static int copy_initialize(void)
xr.rect_uniform = glGetUniformLocation(xr.program, "rect");
xr.cut_disc_uniform = glGetUniformLocation(xr.program, "cut_disc");
xr.vignette_uniform = glGetUniformLocation(xr.program, "vignette");
xr.alpha_from_colour_uniform = glGetUniformLocation(xr.program, "alpha_from_colour");
xr.tangents_uniform = glGetUniformLocation(xr.program, "tangents");
xr.copy_array_layer = -1;
{
@@ -580,6 +597,14 @@ static int actions_initialize(void)
xr.button_b = action_create("button_upper", "B / Y", XR_ACTION_TYPE_BOOLEAN_INPUT);
xr.menu = action_create("menu", "Menu", XR_ACTION_TYPE_BOOLEAN_INPUT);
xr.thumbrest = action_create("thumbrest", "Thumb rest", XR_ACTION_TYPE_BOOLEAN_INPUT);
xr.button_x = action_create("button_x", "X", XR_ACTION_TYPE_BOOLEAN_INPUT);
xr.button_y = action_create("button_y", "Y", XR_ACTION_TYPE_BOOLEAN_INPUT);
xr.view = action_create("view", "View", XR_ACTION_TYPE_BOOLEAN_INPUT);
xr.bumper = action_create("bumper", "Bumper", XR_ACTION_TYPE_BOOLEAN_INPUT);
xr.dpad[0] = action_create("dpad_up", "D-pad up", XR_ACTION_TYPE_BOOLEAN_INPUT);
xr.dpad[1] = action_create("dpad_down", "D-pad down", XR_ACTION_TYPE_BOOLEAN_INPUT);
xr.dpad[2] = action_create("dpad_left", "D-pad left", XR_ACTION_TYPE_BOOLEAN_INPUT);
xr.dpad[3] = action_create("dpad_right", "D-pad right", XR_ACTION_TYPE_BOOLEAN_INPUT);
xr.haptic = action_create("haptic", "Rumble", XR_ACTION_TYPE_VIBRATION_OUTPUT);
{
@@ -644,6 +669,44 @@ static int actions_initialize(void)
{ &xr.haptic, "/user/hand/right/output/haptic" },
};
/* the Steam Frame's controllers, as themselves: the right one has
A, B, X, Y and a menu button, the left one a D-pad and a View button
(port/android/STEAM_FRAME.md) */
static const struct binding frame_controller[] =
{
{ &xr.grip_pose, "/user/hand/left/input/grip/pose" },
{ &xr.grip_pose, "/user/hand/right/input/grip/pose" },
{ &xr.aim_pose, "/user/hand/left/input/aim/pose" },
{ &xr.aim_pose, "/user/hand/right/input/aim/pose" },
{ &xr.trigger, "/user/hand/left/input/trigger/value" },
{ &xr.trigger, "/user/hand/right/input/trigger/value" },
{ &xr.squeeze, "/user/hand/left/input/squeeze/value" },
{ &xr.squeeze, "/user/hand/right/input/squeeze/value" },
{ &xr.thumbstick, "/user/hand/left/input/thumbstick" },
{ &xr.thumbstick, "/user/hand/right/input/thumbstick" },
{ &xr.thumbstick_click, "/user/hand/left/input/thumbstick/click" },
{ &xr.thumbstick_click, "/user/hand/right/input/thumbstick/click" },
{ &xr.button_a, "/user/hand/right/input/a/click" },
{ &xr.button_b, "/user/hand/right/input/b/click" },
{ &xr.button_x, "/user/hand/right/input/x/click" },
{ &xr.button_y, "/user/hand/right/input/y/click" },
{ &xr.menu, "/user/hand/right/input/menu/click" },
{ &xr.view, "/user/hand/left/input/view/click" },
{ &xr.bumper, "/user/hand/left/input/bumper/click" },
{ &xr.bumper, "/user/hand/right/input/bumper/click" },
{ &xr.dpad[0], "/user/hand/left/input/dpad_up/click" },
{ &xr.dpad[1], "/user/hand/left/input/dpad_down/click" },
{ &xr.dpad[2], "/user/hand/left/input/dpad_left/click" },
{ &xr.dpad[3], "/user/hand/left/input/dpad_right/click" },
{ &xr.haptic, "/user/hand/left/output/haptic" },
{ &xr.haptic, "/user/hand/right/output/haptic" },
};
if (xr.has_frame_controller)
{
suggest("/interaction_profiles/valve/frame_controller_valve", frame_controller,
sizeof(frame_controller) / sizeof(frame_controller[0]));
}
suggest("/interaction_profiles/oculus/touch_controller", touch, sizeof(touch) / sizeof(touch[0]));
suggest("/interaction_profiles/valve/index_controller", index, sizeof(index) / sizeof(index[0]));
suggest("/interaction_profiles/khr/simple_controller", simple, sizeof(simple) / sizeof(simple[0]));
@@ -713,6 +776,30 @@ static void hands_read(struct halo_xr_frame *frame)
sync.activeActionSets = &active;
if (!XR_SUCCEEDED(xrSyncActions(xr.session, &sync)))
return;
{
/* (the controllers' profile the runtime chose, in the log as it
changes) */
static XrPath logged[HALO_XR_HAND_COUNT];
for (hand = 0; hand < HALO_XR_HAND_COUNT; hand++)
{
XrInteractionProfileState state = { XR_TYPE_INTERACTION_PROFILE_STATE };
if (XR_SUCCEEDED(xrGetCurrentInteractionProfile(xr.session, xr.hands[hand].path, &state)) &&
state.interactionProfile != logged[hand])
{
char name[XR_MAX_PATH_LENGTH] = "none";
uint32_t length = 0;
logged[hand] = state.interactionProfile;
if (state.interactionProfile != XR_NULL_PATH)
xrPathToString(xr.instance, state.interactionProfile, sizeof(name), &length, name);
if (hand == HALO_XR_HAND_RIGHT)
xr.frame_layout = strstr(name, "frame_controller") != NULL;
host_logf(HOST_LOG_INFO, "xr: the %s hand's controller: %s", hand ? "right" : "left", name);
}
}
}
for (hand = 0; hand < HALO_XR_HAND_COUNT; hand++)
{
struct halo_xr_hand *out = &frame->hands[hand];
@@ -757,7 +844,31 @@ static void hands_read(struct halo_xr_frame *frame)
(action_boolean(xr.menu, hand) ? HALO_XR_BUTTON_MENU : 0) |
(action_boolean(xr.thumbrest, hand) ? HALO_XR_BUTTON_THUMBREST : 0) |
(out->trigger > 0.5f ? HALO_XR_BUTTON_TRIGGER : 0) |
(out->squeeze > 0.5f ? HALO_XR_BUTTON_SQUEEZE : 0);
(out->squeeze > 0.5f ? HALO_XR_BUTTON_SQUEEZE : 0) |
(action_boolean(xr.view, hand) ? HALO_XR_BUTTON_VIEW : 0) |
(action_boolean(xr.bumper, hand) ? HALO_XR_BUTTON_BUMPER : 0) |
(action_boolean(xr.dpad[0], hand) ? HALO_XR_BUTTON_DPAD_UP : 0) |
(action_boolean(xr.dpad[1], hand) ? HALO_XR_BUTTON_DPAD_DOWN : 0) |
(action_boolean(xr.dpad[2], hand) ? HALO_XR_BUTTON_DPAD_LEFT : 0) |
(action_boolean(xr.dpad[3], hand) ? HALO_XR_BUTTON_DPAD_RIGHT : 0);
}
frame->controller_layout = xr.frame_layout ? HALO_XR_LAYOUT_FRAME : HALO_XR_LAYOUT_TOUCH;
if (xr.frame_layout)
{
/* (the Frame's right X, Y and menu button: the game's X, Y and Start,
which the Quest has on the left) */
struct halo_xr_hand *left = &frame->hands[HALO_XR_HAND_LEFT];
struct halo_xr_hand *right = &frame->hands[HALO_XR_HAND_RIGHT];
if (action_boolean(xr.button_x, HALO_XR_HAND_RIGHT))
left->buttons |= HALO_XR_BUTTON_A;
if (action_boolean(xr.button_y, HALO_XR_HAND_RIGHT))
left->buttons |= HALO_XR_BUTTON_B;
if (right->buttons & HALO_XR_BUTTON_MENU)
{
right->buttons &= ~HALO_XR_BUTTON_MENU;
left->buttons |= HALO_XR_BUTTON_MENU;
}
}
}
@@ -774,6 +885,13 @@ static void refresh_rate_choose(float wanted)
{
return;
}
{
char line[128] = "";
for (index = 0; index < count; index++)
snprintf(line + strlen(line), sizeof(line) - strlen(line), " %.0f", rates[index]);
host_logf(HOST_LOG_INFO, "xr: refresh rates offered:%s Hz", line);
}
/* the highest rate not above the one wanted (0: the highest) */
for (index = 0; index < count; index++)
{
@@ -794,6 +912,12 @@ the eyes reads it. Shown only while it is. */
#define WRIST_IMAGE_SIZE 512
#define CROSSHAIR_IMAGE_SIZE 256
/* the names layer: HALO_XR_MAXIMUM_NAMES slots of 4:1, one over another */
#define NAMES_IMAGE_WIDTH 512
#define NAMES_IMAGE_HEIGHT (NAMES_IMAGE_WIDTH / 4 * HALO_XR_MAXIMUM_NAMES)
/* a name's slot, as the game draws it: wider than its image's 4:1 (the
game's 640x480 drawn square): the height a slot shows at, to its width */
#define NAME_SLOT_ASPECT (30.0f / 160.0f)
#define WRIST_BEHIND_PALM 0.05f
#define WRIST_DOWN_HANDLE 0.02f
#define WRIST_ABOVE_HAND 0.04f
@@ -889,6 +1013,12 @@ int host_xr_probe(float resolution_scale, int *eye_width, int *eye_height)
/* the loader and the runtime keep the activity */
activity = (*environment)->NewGlobalRef(environment, activity);
/* (The Steam Frame lists an implicit API layer of its own for Vulkan
apps, XR_APILAYER_VALVE_fdm_injection, whose library an app cannot load
from its namespace, failing xrCreateInstance; the Android loader reads
no variable to turn it off, so the app carries a pass-through layer
under that library's name: port/android/xr_layer/fdm_injection_stub.c) */
if (!XR_SUCCEEDED(xrGetInstanceProcAddr(XR_NULL_HANDLE, "xrInitializeLoaderKHR",
(PFN_xrVoidFunction *)&initialize_loader)) || !initialize_loader)
{
@@ -916,6 +1046,23 @@ int host_xr_probe(float resolution_scale, int *eye_width, int *eye_height)
extensions[index].next = NULL;
}
xrEnumerateInstanceExtensionProperties(NULL, extension_count, &extension_count, extensions);
{
/* (the runtime's extensions, in the log: what a headset offers) */
char line[512] = "";
for (index = 0; index < extension_count; index++)
{
if (strlen(line) + strlen(extensions[index].extensionName) + 2 >= sizeof(line))
{
host_logf(HOST_LOG_INFO, "xr: extensions %s", line);
line[0] = 0;
}
strcat(line, " ");
strcat(line, extensions[index].extensionName);
}
if (line[0])
host_logf(HOST_LOG_INFO, "xr: extensions %s", line);
}
if (!has_extension(extensions, extension_count, XR_KHR_OPENGL_ES_ENABLE_EXTENSION_NAME))
{
host_logf(HOST_LOG_ERROR, "xr: the runtime has no OpenGL ES support");
@@ -927,6 +1074,9 @@ int host_xr_probe(float resolution_scale, int *eye_width, int *eye_height)
xr.has_performance_settings = has_extension(extensions, extension_count, XR_EXT_PERFORMANCE_SETTINGS_EXTENSION_NAME);
if (xr.has_performance_settings)
enabled[enabled_count++] = XR_EXT_PERFORMANCE_SETTINGS_EXTENSION_NAME;
xr.has_frame_controller = has_extension(extensions, extension_count, "XR_VALVE_frame_controller_interaction");
if (xr.has_frame_controller)
enabled[enabled_count++] = "XR_VALVE_frame_controller_interaction";
xr.has_refresh_rate = has_extension(extensions, extension_count, XR_FB_DISPLAY_REFRESH_RATE_EXTENSION_NAME);
if (xr.has_refresh_rate)
enabled[enabled_count++] = XR_FB_DISPLAY_REFRESH_RATE_EXTENSION_NAME;
@@ -954,6 +1104,22 @@ int host_xr_probe(float resolution_scale, int *eye_width, int *eye_height)
}
xrGetSystemProperties(xr.instance, xr.system, &properties);
strncpy(xr.system_name, properties.systemName, sizeof(xr.system_name) - 1);
{
/* (SteamVR: the quads' alpha from their colour; HALO_XR_QUAD_ALPHA
"colour" or "keep" says otherwise, for trying) */
XrInstanceProperties instance = { XR_TYPE_INSTANCE_PROPERTIES };
const char *choice = getenv("HALO_XR_QUAD_ALPHA");
if (XR_SUCCEEDED(xrGetInstanceProperties(xr.instance, &instance)))
{
xr.quad_alpha_from_colour = strstr(instance.runtimeName, "SteamVR") != NULL;
host_logf(HOST_LOG_INFO, "xr: runtime %s", instance.runtimeName);
}
if (choice)
xr.quad_alpha_from_colour = !strcmp(choice, "colour");
if (xr.quad_alpha_from_colour)
host_logf(HOST_LOG_INFO, "xr: the overlays' alpha from their colour");
}
views[0].type = views[1].type = XR_TYPE_VIEW_CONFIGURATION_VIEW;
views[0].next = views[1].next = NULL;
@@ -1032,8 +1198,15 @@ int host_xr_initialize(struct halo_xr_info *info, float wanted_refresh_rate)
{
int size = layer == HALO_XR_LAYER_WRIST || layer == HALO_XR_LAYER_SCOPE ? WRIST_IMAGE_SIZE :
layer == HALO_XR_LAYER_CROSSHAIR ? CROSSHAIR_IMAGE_SIZE : 0;
int width = size ? size : xr.eye_width;
int height = size ? size : xr.eye_height;
if (!swapchain_create(&xr.swapchains[layer], size ? size : xr.eye_width, size ? size : xr.eye_height))
if (layer == HALO_XR_LAYER_NAMES)
{
width = NAMES_IMAGE_WIDTH;
height = NAMES_IMAGE_HEIGHT;
}
if (!swapchain_create(&xr.swapchains[layer], width, height))
return 0;
}
if (!copy_initialize() || !actions_initialize())
@@ -1303,6 +1476,8 @@ int host_xr_copy_layer_region(int layer, uint32_t texture, int clear_alpha, floa
glUniform1i(xr.source_uniform, 0);
glUniform4f(xr.rect_uniform, left, top, right, bottom);
glUniform1f(xr.cut_disc_uniform, clear_alpha == HALO_XR_COPY_DISC ? 1.0f : 0.0f);
glUniform1f(xr.alpha_from_colour_uniform, xr.quad_alpha_from_colour && clear_alpha == HALO_XR_COPY_ALPHA &&
layer != HALO_XR_LAYER_EYE_LEFT && layer != HALO_XR_LAYER_EYE_RIGHT ? 1.0f : 0.0f);
if ((layer == HALO_XR_LAYER_EYE_LEFT || layer == HALO_XR_LAYER_EYE_RIGHT) && xr.vignette > 0.001f)
{
const XrFovf *fov = &xr.views[layer - HALO_XR_LAYER_EYE_LEFT].fov;
@@ -1354,7 +1529,8 @@ int host_xr_end_frame(const struct halo_xr_submit *submit)
XrCompositionLayerQuad wrist = { XR_TYPE_COMPOSITION_LAYER_QUAD };
XrCompositionLayerQuad scope = { XR_TYPE_COMPOSITION_LAYER_QUAD };
XrCompositionLayerQuad crosshair = { XR_TYPE_COMPOSITION_LAYER_QUAD };
const XrCompositionLayerBaseHeader *layers[5];
XrCompositionLayerQuad names[HALO_XR_MAXIMUM_NAMES];
const XrCompositionLayerBaseHeader *layers[5 + HALO_XR_MAXIMUM_NAMES];
uint32_t layer_count = 0;
int eye;
@@ -1458,6 +1634,34 @@ int host_xr_end_frame(const struct halo_xr_submit *submit)
layers[layer_count++] = (const XrCompositionLayerBaseHeader *)&crosshair;
}
if (xr.frame_state.shouldRender && submit->name_count > 0 && xr.swapchains[HALO_XR_LAYER_NAMES].filled)
{
struct xr_swapchain *swapchain = &xr.swapchains[HALO_XR_LAYER_NAMES];
int slot_height = swapchain->height / HALO_XR_MAXIMUM_NAMES;
int name;
for (name = 0; name < submit->name_count && name < HALO_XR_MAXIMUM_NAMES; name++)
{
XrCompositionLayerQuad *quad_name = &names[name];
memset(quad_name, 0, sizeof(*quad_name));
quad_name->type = XR_TYPE_COMPOSITION_LAYER_QUAD;
quad_name->layerFlags = XR_COMPOSITION_LAYER_BLEND_TEXTURE_SOURCE_ALPHA_BIT;
quad_name->space = xr.local_space;
quad_name->eyeVisibility = XR_EYE_VISIBILITY_BOTH;
quad_name->subImage.swapchain = swapchain->handle;
/* (slot 0 at the image's top: GL's rows run bottom up) */
quad_name->subImage.imageRect.offset.x = 0;
quad_name->subImage.imageRect.offset.y = swapchain->height - (name + 1) * slot_height;
quad_name->subImage.imageRect.extent.width = swapchain->width;
quad_name->subImage.imageRect.extent.height = slot_height;
quad_name->size.width = submit->name_widths[name];
quad_name->size.height = submit->name_widths[name] * NAME_SLOT_ASPECT;
pose_to_xr(&quad_name->pose, &submit->name_poses[name]);
layers[layer_count++] = (const XrCompositionLayerBaseHeader *)quad_name;
}
}
end.displayTime = xr.frame_state.predictedDisplayTime;
end.environmentBlendMode = XR_ENVIRONMENT_BLEND_MODE_OPAQUE;
end.layerCount = layer_count;
+2
View File
@@ -38,6 +38,8 @@ host_sdl_gamepad_axis
host_sdl_gamepad_button
host_sdl_gamepad_type
host_sdl_rumble_gamepad
host_sdl_scancode_name
host_sdl_scancode_from_name
host_sdl_open_audio_stream
host_sdl_put_audio_stream_data
host_sdl_resume_audio_stream_device
+28 -1
View File
@@ -27,7 +27,10 @@ enum
HALO_XR_LAYER_WRIST = 3, /* the motion tracker, on the left wrist */
HALO_XR_LAYER_SCOPE = 4, /* the zoomed view, a disc over the weapon */
HALO_XR_LAYER_CROSSHAIR = 5, /* the weapon's crosshair, where it aims */
HALO_XR_LAYER_COUNT = 6,
HALO_XR_LAYER_NAMES = 6, /* players' names, each a quad over a head */
HALO_XR_LAYER_COUNT = 7,
/* the names layer's slots, one a name, stacked from its top */
HALO_XR_MAXIMUM_NAMES = 8,
/* host_xr_copy_layer's clear_alpha: the source's alpha kept, made
opaque, or cut to a disc (premultiplied) */
@@ -50,6 +53,23 @@ enum
HALO_XR_BUTTON_TRIGGER = 1 << 4, /* trigger past its click point */
HALO_XR_BUTTON_SQUEEZE = 1 << 5, /* grip past its click point */
HALO_XR_BUTTON_THUMBREST = 1 << 6, /* thumb resting (touch) */
/* the Steam Frame's controllers' (HALO_XR_LAYOUT_FRAME): the left one's
View button and D-pad, either one's bumper (their right one's X, Y and
menu button come as the left hand's A, B and MENU: the game's X, Y and
Start, as on the Quest) */
HALO_XR_BUTTON_VIEW = 1 << 7,
HALO_XR_BUTTON_BUMPER = 1 << 8,
HALO_XR_BUTTON_DPAD_UP = 1 << 9,
HALO_XR_BUTTON_DPAD_DOWN = 1 << 10,
HALO_XR_BUTTON_DPAD_LEFT = 1 << 11,
HALO_XR_BUTTON_DPAD_RIGHT = 1 << 12,
};
/* the controllers' layout, for what the game tells the player */
enum
{
HALO_XR_LAYOUT_TOUCH = 0, /* the Quest's: X, Y and menu on the left */
HALO_XR_LAYOUT_FRAME = 1, /* the Steam Frame's: A, B, X, Y and menu on the right, a D-pad on the left */
};
/* halo_xr_hand.flags, halo_xr_view.flags, halo_xr_frame.head_flags */
@@ -109,6 +129,7 @@ struct halo_xr_frame
struct halo_xr_pose head;
struct halo_xr_view views[HALO_XR_EYE_COUNT];
struct halo_xr_hand hands[HALO_XR_HAND_COUNT];
int controller_layout; /* HALO_XR_LAYOUT_* */
};
/* halo_xr_submit.overlay_mode */
@@ -147,6 +168,12 @@ struct halo_xr_submit
int crosshair;
float crosshair_size;
struct halo_xr_pose crosshair_pose;
/* the names layer was filled: its first name_count slots, each shown
this wide (metres, a slot's height following from its shape), here in
LOCAL space, facing the eyes */
int name_count;
float name_widths[HALO_XR_MAXIMUM_NAMES];
struct halo_xr_pose name_poses[HALO_XR_MAXIMUM_NAMES];
};
#endif
@@ -0,0 +1,62 @@
/*
FDM_INJECTION_STUB.C
An OpenXR API layer that does nothing, named as the Steam Frame's
XR_APILAYER_VALVE_fdm_injection names its library
(libVkLayer_VALVE_fdm_injection.so). The Frame lists that layer as implicit
for every OpenXR app (/vendor/etc/openxr/1/api_layers/implicit.d), but an
Android app (in Lepton) cannot load the system's library from its own
namespace, and the Khronos loader then fails xrCreateInstance altogether;
nor does the Android loader read the variable that would turn the layer
off. With this one in the app's libraries the loader finds a layer of that
name, which hands every call on to the next. (The real layer adds fragment
density maps to Vulkan apps; this game draws with OpenGL ES.) On a Quest no
manifest names it and it is never loaded.
*/
#include <openxr/openxr.h>
#include <openxr/openxr_loader_negotiation.h>
#include <stddef.h>
static PFN_xrGetInstanceProcAddr next_get_instance_proc_addr;
static XRAPI_ATTR XrResult XRAPI_CALL layer_get_instance_proc_addr(XrInstance instance, const char *name,
PFN_xrVoidFunction *function)
{
if (!next_get_instance_proc_addr)
return XR_ERROR_HANDLE_INVALID;
return next_get_instance_proc_addr(instance, name, function);
}
static XRAPI_ATTR XrResult XRAPI_CALL layer_create_api_layer_instance(const XrInstanceCreateInfo *info,
const XrApiLayerCreateInfo *layer_info, XrInstance *instance)
{
XrApiLayerCreateInfo next_layer_info;
if (!layer_info || !layer_info->nextInfo)
return XR_ERROR_INITIALIZATION_FAILED;
next_get_instance_proc_addr = layer_info->nextInfo->nextGetInstanceProcAddr;
next_layer_info = *layer_info;
next_layer_info.nextInfo = layer_info->nextInfo->next;
return layer_info->nextInfo->nextCreateApiLayerInstance(info, &next_layer_info, instance);
}
__attribute__((visibility("default")))
XRAPI_ATTR XrResult XRAPI_CALL xrNegotiateLoaderApiLayerInterface(const XrNegotiateLoaderInfo *loader_info,
const char *layer_name, XrNegotiateApiLayerRequest *request)
{
(void)layer_name;
if (!loader_info || !request || loader_info->structType != XR_LOADER_INTERFACE_STRUCT_LOADER_INFO ||
request->structType != XR_LOADER_INTERFACE_STRUCT_API_LAYER_REQUEST ||
loader_info->minInterfaceVersion > XR_CURRENT_LOADER_API_LAYER_VERSION ||
loader_info->maxInterfaceVersion < XR_CURRENT_LOADER_API_LAYER_VERSION)
{
return XR_ERROR_INITIALIZATION_FAILED;
}
request->layerInterfaceVersion = XR_CURRENT_LOADER_API_LAYER_VERSION;
request->layerApiVersion = loader_info->maxApiVersion < XR_CURRENT_API_VERSION ? loader_info->maxApiVersion :
XR_CURRENT_API_VERSION;
request->getInstanceProcAddr = layer_get_instance_proc_addr;
request->createApiLayerInstance = layer_create_api_layer_instance;
return XR_SUCCESS;
}
Binary file not shown.

Before

Width:  |  Height:  |  Size: 369 KiB

After

Width:  |  Height:  |  Size: 369 KiB

+2 -2
View File
@@ -314,7 +314,7 @@
"svg": "hud_xbox_order__bitmaps__combined__hud_ammo_meters.svg",
"source_scale": 4,
"source": [
-34,
-2,
108
],
"clip": [
@@ -380,7 +380,7 @@
"svg": "hud_xbox_order__bitmaps__combined__hud_ammo_meters.svg",
"source_scale": 4,
"source": [
-25,
-5,
312
],
"clip": [
+57
View File
@@ -0,0 +1,57 @@
# Menu pictures that are not redraws
The menus' bitmaps are drawn from the high-res redraws (`svg/`, from ui-svg-handmade) where there is
one. The PC version's pictures that have none (3D renders, screenshots and logos) are not in this
repository.
## From the Xbox's map
These have the same pictures, in the same order, in the Xbox's `ui.map`, which the menus draw them
from (the player's own; nothing is shipped). `mp_map_grafix`: the Xbox's has the 13 Xbox maps' pictures
(the PC version's first 13) and its "?"; the PC version's other 8 are its own maps'.
- `ui\shell\bitmaps\colors_sm`
- `ui\shell\bitmaps\mp_map_grafix`
- `ui\shell\bitmaps\sp_levels`
- `ui\shell\main_menu\difficulty_select\difficulty_options`
- `ui\shell\main_menu\difficulty_select\difficulty_options_small`
- `ui\shell\main_menu\halo_logo`
- `ui\shell\main_menu\settings_select\player_setup\player_profile_edit\color_edit\player_color_marine_large`
These frames are drawn from a frame of the Xbox map's bitmap of the same name, whose other frames differ:
the same picture, or for the profile settings the Xbox's picture for the same thing.
| The PC version's frame | The Xbox's frame |
| --- | --- |
| `shell/main_menu/multiplayer_type_select/mp_options__2.png` | `ui\shell\main_menu\multiplayer_type_select\mp_options` frame 3 |
| `shell/main_menu/settings_select/multiplayer_setup/playlist_edit/gametype_options__2.png` | `ui\shell\main_menu\settings_select\multiplayer_setup\playlist_edit\gametype_options` frame 2 |
| `shell/main_menu/settings_select/multiplayer_setup/playlist_edit/gametype_options__5.png` | `ui\shell\main_menu\settings_select\multiplayer_setup\playlist_edit\gametype_options` frame 4 |
| `shell/main_menu/settings_select/player_setup/player_profile_edit/profile_options__0.png` | `ui\shell\main_menu\settings_select\player_setup\player_profile_edit\profile_options` frame 0 |
| `shell/main_menu/settings_select/player_setup/player_profile_edit/profile_options__2.png` | `ui\shell\main_menu\settings_select\player_setup\player_profile_edit\profile_options` frame 1 |
| `shell/main_menu/settings_select/player_setup/player_profile_edit/profile_options__7.png` | `ui\shell\main_menu\settings_select\player_setup\player_profile_edit\profile_options` frame 3 |
## Placeholders, to be redrawn
The Xbox's map has none of these (or other pictures under the name), so each frame is a placeholder
until it is redrawn.
| File | Size | The PC version's picture |
| --- | --- | --- |
| `ce/shell/main_menu/multiplayer_type_select/mp_options__0.png` | 512x256 | `shell/main_menu/multiplayer_type_select/mp_options__0.png` |
| `ce/shell/main_menu/multiplayer_type_select/mp_options__1.png` | 512x256 | `shell/main_menu/multiplayer_type_select/mp_options__1.png` |
| `ce/shell/main_menu/settings_select/multiplayer_setup/playlist_edit/gametype_options__0.png` | 512x256 | `shell/main_menu/settings_select/multiplayer_setup/playlist_edit/gametype_options__0.png` |
| `ce/shell/main_menu/settings_select/multiplayer_setup/playlist_edit/gametype_options__3.png` | 512x256 | `shell/main_menu/settings_select/multiplayer_setup/playlist_edit/gametype_options__3.png` |
| `ce/shell/main_menu/settings_select/multiplayer_setup/playlist_edit/gametype_options__4.png` | 512x256 | `shell/main_menu/settings_select/multiplayer_setup/playlist_edit/gametype_options__4.png` |
| `ce/shell/main_menu/settings_select/multiplayer_setup/playlist_edit/gametype_options__6.png` | 512x256 | `shell/main_menu/settings_select/multiplayer_setup/playlist_edit/gametype_options__6.png` |
| `ce/shell/main_menu/settings_select/multiplayer_setup/playlist_edit/gametype_options__7.png` | 512x256 | `shell/main_menu/settings_select/multiplayer_setup/playlist_edit/gametype_options__7.png` |
| `ce/shell/main_menu/settings_select/player_setup/player_profile_edit/profile_options__1.png` | 512x256 | `shell/main_menu/settings_select/player_setup/player_profile_edit/profile_options__1.png` |
| `ce/shell/main_menu/settings_select/player_setup/player_profile_edit/profile_options__3.png` | 512x256 | `shell/main_menu/settings_select/player_setup/player_profile_edit/profile_options__3.png` |
| `ce/shell/main_menu/settings_select/player_setup/player_profile_edit/profile_options__4.png` | 512x256 | `shell/main_menu/settings_select/player_setup/player_profile_edit/profile_options__4.png` |
| `ce/shell/main_menu/settings_select/player_setup/player_profile_edit/profile_options__5.png` | 512x256 | `shell/main_menu/settings_select/player_setup/player_profile_edit/profile_options__5.png` |
| `ce/shell/main_menu/settings_select/player_setup/player_profile_edit/profile_options__6.png` | 512x256 | `shell/main_menu/settings_select/player_setup/player_profile_edit/profile_options__6.png` |
| `ce/shell/main_menu/settings_select/player_setup/player_profile_edit/profile_options__8.png` | 512x256 | `shell/main_menu/settings_select/player_setup/player_profile_edit/profile_options__8.png` |
13 of 155 frames are placeholders.
The PC version's `ui\gamespy` and `ui\ticker` fonts are drawn with `ui\small_ui`, which
the Xbox's map has.
+171
View File
@@ -0,0 +1,171 @@
# Menus
The game's menus are the PC version's (Halo Custom Edition's): its main menu
and every screen it leads to. They are XML files in this folder, which the
game builds into its own widget tags when the menus' map (`ui.map`) loads
(`port/linux/game/menu_tags.c`). They then work like the Xbox's menus: with a
controller, the keyboard and the mouse, on every port.
| Path | Contents |
| --- | --- |
| `ce/*.xml` | The PC version's screens, one file for each folder of its tags, laid out as it has them; `ce/strings.xml` their text, `ce/bitmaps.xml` their pictures |
| `ce/shell/...png` | The pictures, drawn from the high-res redraws in `svg/` (up to 4x), else a placeholder |
| `NON_HANDDRAWN.md` | The pictures that are not redraws: those drawn from the Xbox's map (the player's own), and the placeholders, to be redrawn |
| `UNWIRED.md` | The menus' functions that do nothing yet: the lists they fill are empty, and the settings they change do not change |
| `menus.json` | The files the game embeds |
`tools/ce_menus.py` writes all of them from the PC version's tags and the
redraws, but the settings screens (Controls Setup, Gamepads, Mouse, Audio,
Video and Network Setup), which `tools/port_settings.py` writes in their
style with what this port has to set: config.toml's settings (a window or
the full screen, the frame rate, the volumes, internet play, the
multiplayer HUD), the profile's controller settings, and the keyboard and
mouse's controls.
To change the menus without building the game, put files in a `menus` folder
next to `config.toml`. A file with the same path as one here replaces it. On
the desktop, any other `.xml` file there is added too. A PNG that a `<frame>`
names is found there first. If any file has a problem, the log names the
file, the line and the problem, and the game uses the Xbox's menus. The
setting `display.menus = "xbox"` also uses them. `debug.menu_open` starts on
one screen (by its name, `main_menu/settings_select/...`), for looking at it.
## Elements
A file holds one `<menus>` element (`root` names the main menu's widget, in
one file; `main_menu` if none does). It holds `<bitmap>`, `<strings>` and
`<widget>` elements. All files share one set of names. Wherever a name is
asked for, one with a backslash is a tag of the map instead
(`ui\shell\bitmaps\white`).
### `<bitmap>`
```xml
<bitmap name="bitmaps/list_item_bkd">
<frame png="ce/shell/bitmaps/list_item_bkd__0.png" width="256" height="32"/>
<frame png="ce/shell/bitmaps/list_item_bkd__1.png" width="256" height="32"/>
</bitmap>
```
A picture for widgets. Each `<frame>` is an 8-bit RGBA PNG and its size in
the 640x480 menu screen (the PNG is a whole multiple of it), or a frame of a
bitmap of the map: `<frame map="ui\shell\...\profile_options" index="1"/>`. (Or
`frames="a.png b.png"` with one `width` and `height` for all.) A widget draws
its bitmap from the top left, one unit to a texel, cut to the widget's size.
A list's item shows frame 1 while it has the focus and frame 0 otherwise, if
the bitmap has exactly two frames; the game's functions choose others.
### `<strings>`
```xml
<strings name="main_menu/main_menu_options">
<string text="NEW CAMPAIGN"/>
<string text="LOAD CAMPAIGN"/>
</strings>
```
A list of texts, which widgets show by number. `\n` starts a new line.
### `<widget>`
A screen, or a part of one. Its children are `<widget>` elements in it, or
`<child widget="name" x="" y=""/>` for one defined elsewhere (a widget can
be a child of many).
| Attribute | Value |
| --- | --- |
| `name` | Its name, unique (the game knows it as `pc\<name>`, and shows the last part) |
| `type` | `container` (the default), `text`, `spinner` or `column_list` |
| `x`, `y` | Where it is in its parent (a `<widget>` inside another) |
| `left`, `top`, `width`, `height` | Its area; 0, 0, 640 and 480 if not given |
| `flags` | Widget flags (below), separated by spaces |
| `bitmap` | Its background: a `<bitmap>` |
| `string_list`, `string_index` | Its text: a `<strings>` and the number in it |
| `text` | Its text, given here |
| `font` | `large`, `small`, `terminal`, or a font tag of the map |
| `color` | The text's colour, `#RRGGBB` or `#AARRGGBB`. Focused text is white. |
| `align`, `text_x`, `text_y` | `left`, `right` or `center`, and where the text starts in it |
| `text_flags` | `editable`, `password`, `flashing`, `no_focus_test` |
| `list_flags` | `items_in_code`, `items_from_strings` (a spinner showing its strings), `one_tooltip`, `single_preview` |
| `strings`, `setting`, `values` | A spinner's values as shown, separated by `\|`; its `config.toml` setting and the values written for each (`port setting load` and `port setting save`) |
| `header_bitmap`, `footer_bitmap`, `header_bounds`, `footer_bounds` | A list's header and footer: a `<bitmap>` and "top left bottom right" |
| `description` | A column list's extended description: a widget |
| `controller` | `1` to `4`, or `any` (the default); a `<child>`'s or `child_controller`: the one it is for |
| `auto_close`, `auto_close_fade` | It closes itself after this many milliseconds, fading for this many |
| `platform` | `desktop` or `android`: it is only there. Every element takes this. |
Widget flags: `pass_unhandled_to_focused_child` (an event it does not handle
goes to its focused child: a screen needs it for its list to get events),
`pass_unhandled_to_all_children`, `pass_handled_to_all_children`,
`up_down_tabs_items`, `left_right_tabs_items`, `up_down_tabs_children`,
`left_right_tabs_children`, `no_focused_child`, `pause_game`, `flash_bitmap`,
`render_any_controller`, `main_menu_if_no_history`, `tag_controller_index`,
`nifty_fx`, `no_history`, and the PC version's `force_handle_mouse` and
`no_widescreen_fill`, which this engine has no use for.
A widget takes the focus if it has an `<on>` or is a list; a screen gives it
to its first such child.
### `<on>`
What a widget does for an event: `event` (one or more, separated by spaces)
and what to do.
| Attribute | Value |
| --- | --- |
| `event` | `a`, `b`, `x`, `y`, `black`, `white`, `left_trigger`, `right_trigger`, `up`, `down`, `left`, `right`, `start`, `back`, `left_thumb`, `right_thumb`, `stick_up`, `stick_down`, `stick_left`, `stick_right`, `right_stick_up`, `right_stick_down`, `right_stick_left`, `right_stick_right`, `created`, `deleted`; the PC version's `get_focus`, `lose_focus`, `left_mouse`, `middle_mouse`, `right_mouse`, `double_click`, `custom_activation` and `post_render`, which this engine never sends (but `custom_activation`: `emit custom activation event` and `single prev cl item activated` send it) |
| `run` | A function: the game's, as its tags name them; the PC version's; the port's (below); or `unwired <name>`, which does nothing (`UNWIRED.md`) |
| `open`, `replace`, `focus` | A widget to open, to open in its place, to give the focus |
| `back` | `true`: back to the screen before |
| `close` | `current`, `all`, or `other` (with `widget`) |
| `reload` | `self`, or `other` (with `widget`) |
| `branch` | `true`: if `run` fails, open its `<conditional>` widget |
| `otherwise` | A widget to open if `run` fails (a `<conditional>` and `branch` in one) |
| `script` | A script of the menus' scenario to run |
| `label` | Kept as the script's name, not run (as the tags keep it) |
| `sound` | A sound tag of the map to play |
On the keyboard, A is Enter or Space, B is Backspace or F, Start is Escape and
Back is F1. The mouse picks the item under it, clicks A, right-clicks B and
scrolls lists.
The port's functions: `port quit game` quits; `port setting load` (on a
spinner's `created`) shows its setting's value and `port setting save` (on
its `deleted`) writes the value shown to `config.toml`, if it changed. Of
the PC version's: `main menu quit game` quits, `profile set edit begin`
begins editing the first player profile, `mouse emit back event` and
`mouse emit x event` push B and X, `emit custom activation event` and
`single prev cl item activated` run the screen's or the list's
`custom_activation` handlers, and its back handlers go back. Its
campaign's play: `campaign menu continue` (the saved game), New Game's list
of levels and the difficulty menu (`difficulty item select`, and `set
difficulty` on its OK button: the difficulty shown), and Load Game's list of
the profiles' saved games (with `load game menu delete finish`). For our
widgets, `initialize sp level list solo`, `solo level set map` and `set
difficulty` are the port's, as the Xbox's take the Xbox's widgets. The
settings screens': `port settings save` (OK) writes the settings changed
(config.toml's, or `profile.<field>`: the profile being edited) and applies
them, `port settings defaults` shows the defaults, `port settings help` the
help of the row chosen; Controls Setup's `controls ...` bind the keyboard
and mouse's controls (Enter takes the next key or button pressed; left and
right choose which of two; Escape cancels, Delete clears); Change Color's
`color picker ...` (the Xbox's names) set the profile's colour. The others
do nothing yet.
### `<data>`, `<conditional>`, `<replace>`
`<data input="..."/>`: a game data function, which fills in the widget every
frame (`build number textbox only`). `<conditional widget="..."
if_failed="true"/>`: a widget for a `branch` handler. `<replace search="..."
function="controller"/>`: text replaced in the widget's (the controller's
number).
## The art
`tools/ce_menus.py` draws each frame from its redraw in `svg/` (copied from
ui-svg-handmade) at up to 4x its size. A picture with no redraw is the
Xbox's map's, where it has the same one (a whole bitmap, or a `<frame
map=...>`), else a placeholder, placed where the PC version's picture is in
its frame (`--pictures`: only where, not the picture, is read);
`NON_HANDDRAWN.md` lists both. It needs `rsvg-convert`, Pillow, NumPy and
SciPy.
+36
View File
@@ -0,0 +1,36 @@
# Menu functions that are not wired yet
The PC version's menus (`ce/`, from `tools/ce_menus.py`) run functions of the game's. These do nothing
yet (`port/linux/game/menu_functions.c`), so what they fill in (lists, values) is empty, and what they
do (save a setting, join a game) does not happen; the screens open and close as the PC version's.
- The PC version's own functions, which the Xbox's game has not.
- The Xbox's functions that the PC version rewrote for its own widgets, written `unwired <name>` in the
files: run on the PC widgets, the Xbox's would stop the game.
| Function | Uses | |
| --- | --- | --- |
| `common button bar update` | 25 | PC function |
| `direct ip connect init` | 1 | PC function |
| `direct ip connect update` | 1 | PC function |
| `direct ip edit field` | 4 | PC function |
| `gamespy screen update` | 1 | PC function |
| `gamespy select button` | 8 | PC function |
| `gamespy select header` | 22 | PC function |
| `gamespy select item` | 49 | PC function |
| `gamespy update filter settings` | 2 | PC function |
| `gt edit list update` | 1 | PC function |
| `gt select list update` | 1 | PC function |
| `mouse spinner 1wide click` | 66 | PC function |
| `mp map list update` | 1 | PC function |
| `mp prof init teamplay options` | 1 | PC function |
| `mp prof init vehicle options` | 1 | PC function |
| `mp prof save teamplay options` | 1 | PC function |
| `mp prof save vehicle options` | 1 | PC function |
| `mp prof vehicles update` | 1 | PC function |
| `server settings init` | 1 | PC function |
| `server settings update` | 1 | PC function |
| `ss edit server name` | 2 | PC function |
| `ss start game` | 2 | PC function |
Wired: `campaign menu continue`, `campaign menu init`, `controls back handler`, `controls begin binding`, `controls screen change set`, `controls screen defaults`, `controls screen init`, `controls update menu`, `difficulty item select`, `direct ip connect go`, `emit custom activation event`, `gamespy back handler`, `gamespy dismiss error`, `gamespy dismiss filters`, `gamespy screen dispose`, `gamespy screen init`, `load game list update`, `load game menu activated`, `load game menu delete finish`, `load game menu delete request`, `load game menu dispose`, `load game menu init`, `main menu quit game`, `mouse emit accept event`, `mouse emit back event`, `mouse emit x event`, `mp type set mode`, `profile manager select`, `profile set edit begin`, `single prev cl item activated`, `solo map list update`.
+339
View File
@@ -0,0 +1,339 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- The PC version's menus' bitmaps, drawn from the redraws, else the PC version's own pictures (NON_HANDDRAWN.md; tools/ce_menus.py) -->
<menus>
<bitmap name="bitmaps/alert_bkd">
<frame png="ce/shell/bitmaps/alert_bkd__0.png" width="256" height="256"/>
</bitmap>
<bitmap name="bitmaps/arrow_sm_down">
<frame png="ce/shell/bitmaps/arrow_sm_down__0.png" width="16" height="16"/>
<frame png="ce/shell/bitmaps/arrow_sm_down__1.png" width="16" height="16"/>
</bitmap>
<bitmap name="bitmaps/arrow_sm_left">
<frame png="ce/shell/bitmaps/arrow_sm_left__0.png" width="16" height="16"/>
<frame png="ce/shell/bitmaps/arrow_sm_left__1.png" width="16" height="16"/>
<frame png="ce/shell/bitmaps/arrow_sm_left__2.png" width="16" height="16"/>
<frame png="ce/shell/bitmaps/arrow_sm_left__3.png" width="16" height="16"/>
</bitmap>
<bitmap name="bitmaps/arrow_sm_right">
<frame png="ce/shell/bitmaps/arrow_sm_right__0.png" width="16" height="16"/>
<frame png="ce/shell/bitmaps/arrow_sm_right__1.png" width="16" height="16"/>
<frame png="ce/shell/bitmaps/arrow_sm_right__2.png" width="16" height="16"/>
<frame png="ce/shell/bitmaps/arrow_sm_right__3.png" width="16" height="16"/>
</bitmap>
<bitmap name="bitmaps/arrow_sm_up">
<frame png="ce/shell/bitmaps/arrow_sm_up__0.png" width="16" height="16"/>
<frame png="ce/shell/bitmaps/arrow_sm_up__1.png" width="16" height="16"/>
</bitmap>
<bitmap name="bitmaps/black">
<frame png="ce/shell/bitmaps/black__0.png" width="4" height="4"/>
</bitmap>
<bitmap name="bitmaps/blue">
<frame png="ce/shell/bitmaps/blue__0.png" width="4" height="4"/>
</bitmap>
<bitmap name="bitmaps/controller_border">
<frame png="ce/shell/bitmaps/controller_border__0.png" width="1024" height="512"/>
</bitmap>
<bitmap name="bitmaps/device_border">
<frame png="ce/shell/bitmaps/device_border__0.png" width="1024" height="512"/>
</bitmap>
<bitmap name="bitmaps/game_type_grafix">
<frame png="ce/shell/bitmaps/game_type_grafix__0.png" width="256" height="128"/>
<frame png="ce/shell/bitmaps/game_type_grafix__1.png" width="256" height="128"/>
<frame png="ce/shell/bitmaps/game_type_grafix__2.png" width="256" height="128"/>
<frame png="ce/shell/bitmaps/game_type_grafix__3.png" width="256" height="128"/>
<frame png="ce/shell/bitmaps/game_type_grafix__4.png" width="256" height="128"/>
<frame png="ce/shell/bitmaps/game_type_grafix__5.png" width="256" height="128"/>
</bitmap>
<bitmap name="bitmaps/gradient">
<frame png="ce/shell/bitmaps/gradient__0.png" width="4" height="512"/>
</bitmap>
<bitmap name="bitmaps/gradient_big">
<frame png="ce/shell/bitmaps/gradient_big__0.png" width="4" height="512"/>
</bitmap>
<bitmap name="bitmaps/join_game_border">
<frame png="ce/shell/bitmaps/join_game_border__0.png" width="1024" height="512"/>
</bitmap>
<bitmap name="bitmaps/list_field">
<frame png="ce/shell/bitmaps/list_field__0.png" width="512" height="512"/>
</bitmap>
<bitmap name="bitmaps/list_item_bkd">
<frame png="ce/shell/bitmaps/list_item_bkd__0.png" width="256" height="32"/>
<frame png="ce/shell/bitmaps/list_item_bkd__1.png" width="256" height="32"/>
</bitmap>
<bitmap name="bitmaps/list_item_bkd_top">
<frame png="ce/shell/bitmaps/list_item_bkd_top__0.png" width="256" height="32"/>
<frame png="ce/shell/bitmaps/list_item_bkd_top__1.png" width="256" height="32"/>
</bitmap>
<bitmap name="bitmaps/locked_gametype">
<frame png="ce/shell/bitmaps/locked_gametype__0.png" width="16" height="16"/>
<frame png="ce/shell/bitmaps/locked_gametype__1.png" width="16" height="16"/>
</bitmap>
<bitmap name="bitmaps/option_bkds">
<frame png="ce/shell/bitmaps/option_bkds__0.png" width="512" height="32"/>
<frame png="ce/shell/bitmaps/option_bkds__1.png" width="512" height="32"/>
</bitmap>
<bitmap name="bitmaps/option_bkds_sm">
<frame png="ce/shell/bitmaps/option_bkds_sm__0.png" width="256" height="32"/>
<frame png="ce/shell/bitmaps/option_bkds_sm__1.png" width="256" height="32"/>
</bitmap>
<bitmap name="bitmaps/option_bkds_sm2">
<frame png="ce/shell/bitmaps/option_bkds_sm2__0.png" width="128" height="32"/>
<frame png="ce/shell/bitmaps/option_bkds_sm2__1.png" width="128" height="32"/>
</bitmap>
<bitmap name="bitmaps/sel_list_desc_bkd">
<frame png="ce/shell/bitmaps/sel_list_desc_bkd__0.png" width="256" height="512"/>
</bitmap>
<bitmap name="bitmaps/sel_list_item_bkd">
<frame png="ce/shell/bitmaps/sel_list_item_bkd__0.png" width="256" height="32"/>
<frame png="ce/shell/bitmaps/sel_list_item_bkd__1.png" width="512" height="32"/>
<frame png="ce/shell/bitmaps/sel_list_item_bkd__2.png" width="512" height="32"/>
</bitmap>
<bitmap name="bitmaps/sel_list_item_bkd_top">
<frame png="ce/shell/bitmaps/sel_list_item_bkd_top__0.png" width="256" height="32"/>
<frame png="ce/shell/bitmaps/sel_list_item_bkd_top__1.png" width="512" height="32"/>
<frame png="ce/shell/bitmaps/sel_list_item_bkd_top__2.png" width="512" height="32"/>
</bitmap>
<bitmap name="bitmaps/semi_transparent_grey">
<frame png="ce/shell/bitmaps/semi_transparent_grey__0.png" width="4" height="4"/>
</bitmap>
<bitmap name="bitmaps/server_header_background_0">
<frame png="ce/shell/bitmaps/server_header_background_0__0.png" width="16" height="32"/>
<frame png="ce/shell/bitmaps/server_header_background_0__1.png" width="16" height="32"/>
</bitmap>
<bitmap name="bitmaps/server_header_background_1">
<frame png="ce/shell/bitmaps/server_header_background_1__0.png" width="32" height="32"/>
<frame png="ce/shell/bitmaps/server_header_background_1__1.png" width="32" height="32"/>
</bitmap>
<bitmap name="bitmaps/server_header_background_2">
<frame png="ce/shell/bitmaps/server_header_background_2__0.png" width="64" height="32"/>
<frame png="ce/shell/bitmaps/server_header_background_2__1.png" width="64" height="32"/>
</bitmap>
<bitmap name="bitmaps/server_header_background_3">
<frame png="ce/shell/bitmaps/server_header_background_3__0.png" width="128" height="32"/>
<frame png="ce/shell/bitmaps/server_header_background_3__1.png" width="128" height="32"/>
</bitmap>
<bitmap name="bitmaps/server_item_bkds">
<frame png="ce/shell/bitmaps/server_item_bkds__0.png" width="512" height="32"/>
<frame png="ce/shell/bitmaps/server_item_bkds__1.png" width="512" height="32"/>
<frame png="ce/shell/bitmaps/server_item_bkds__2.png" width="512" height="32"/>
</bitmap>
<bitmap name="bitmaps/spinner_list_3_wide_item_background">
<frame png="ce/shell/bitmaps/spinner_list_3_wide_item_background__0.png" width="256" height="512"/>
<frame png="ce/shell/bitmaps/spinner_list_3_wide_item_background__1.png" width="256" height="512"/>
</bitmap>
<bitmap name="bitmaps/text_button_background">
<frame png="ce/shell/bitmaps/text_button_background__0.png" width="128" height="32"/>
<frame png="ce/shell/bitmaps/text_button_background__1.png" width="128" height="32"/>
</bitmap>
<bitmap name="bitmaps/white">
<frame png="ce/shell/bitmaps/white__0.png" width="4" height="4"/>
</bitmap>
<bitmap name="main_menu/campaign_select/header_load_game">
<frame png="ce/shell/main_menu/campaign_select/header_load_game__0.png" width="512" height="64"/>
</bitmap>
<bitmap name="main_menu/campaign_select/item_back">
<frame png="ce/shell/main_menu/campaign_select/item_back__0.png" width="256" height="64"/>
<frame png="ce/shell/main_menu/campaign_select/item_back__1.png" width="256" height="64"/>
</bitmap>
<bitmap name="main_menu/campaign_select/item_continue">
<frame png="ce/shell/main_menu/campaign_select/item_continue__0.png" width="256" height="64"/>
<frame png="ce/shell/main_menu/campaign_select/item_continue__1.png" width="256" height="64"/>
</bitmap>
<bitmap name="main_menu/campaign_select/item_load_game">
<frame png="ce/shell/main_menu/campaign_select/item_load_game__0.png" width="256" height="64"/>
<frame png="ce/shell/main_menu/campaign_select/item_load_game__1.png" width="256" height="64"/>
</bitmap>
<bitmap name="main_menu/campaign_select/item_new_campaign">
<frame png="ce/shell/main_menu/campaign_select/item_new_campaign__0.png" width="256" height="64"/>
<frame png="ce/shell/main_menu/campaign_select/item_new_campaign__1.png" width="256" height="64"/>
</bitmap>
<bitmap name="main_menu/difficulty_select/header_choose_difficulty">
<frame png="ce/shell/main_menu/difficulty_select/header_choose_difficulty__0.png" width="512" height="64"/>
</bitmap>
<bitmap name="main_menu/gametype_select/header_select_gametype">
<frame png="ce/shell/main_menu/gametype_select/header_select_gametype__0.png" width="512" height="64"/>
</bitmap>
<bitmap name="main_menu/menu_load_campaign">
<frame png="ce/shell/main_menu/menu_load_campaign__0.png" width="256" height="64"/>
<frame png="ce/shell/main_menu/menu_load_campaign__1.png" width="256" height="64"/>
</bitmap>
<bitmap name="main_menu/menu_multiplayer">
<frame png="ce/shell/main_menu/menu_multiplayer__0.png" width="256" height="64"/>
<frame png="ce/shell/main_menu/menu_multiplayer__1.png" width="256" height="64"/>
</bitmap>
<bitmap name="main_menu/menu_profile">
<frame png="ce/shell/main_menu/menu_profile__0.png" width="256" height="64"/>
<frame png="ce/shell/main_menu/menu_profile__1.png" width="256" height="64"/>
</bitmap>
<bitmap name="main_menu/menu_quit">
<frame png="ce/shell/main_menu/menu_quit__0.png" width="256" height="64"/>
<frame png="ce/shell/main_menu/menu_quit__1.png" width="256" height="64"/>
</bitmap>
<bitmap name="main_menu/menu_settings">
<frame png="ce/shell/main_menu/menu_settings__0.png" width="256" height="64"/>
<frame png="ce/shell/main_menu/menu_settings__1.png" width="256" height="64"/>
</bitmap>
<bitmap name="main_menu/multiplayer_type_select/direct_ip/header_direct_ip">
<frame png="ce/shell/main_menu/multiplayer_type_select/direct_ip/header_direct_ip__0.png" width="512" height="64"/>
</bitmap>
<bitmap name="main_menu/multiplayer_type_select/header_multiplayer">
<frame png="ce/shell/main_menu/multiplayer_type_select/header_multiplayer__0.png" width="512" height="64"/>
</bitmap>
<bitmap name="main_menu/multiplayer_type_select/join_game/classic_icon">
<frame png="ce/shell/main_menu/multiplayer_type_select/join_game/classic_icon__0.png" width="16" height="16"/>
<frame png="ce/shell/main_menu/multiplayer_type_select/join_game/classic_icon__1.png" width="16" height="16"/>
<frame png="ce/shell/main_menu/multiplayer_type_select/join_game/classic_icon__2.png" width="16" height="16"/>
<frame png="ce/shell/main_menu/multiplayer_type_select/join_game/classic_icon__3.png" width="16" height="16"/>
</bitmap>
<bitmap name="main_menu/multiplayer_type_select/join_game/dedicated_icon">
<frame png="ce/shell/main_menu/multiplayer_type_select/join_game/dedicated_icon__0.png" width="16" height="16"/>
<frame png="ce/shell/main_menu/multiplayer_type_select/join_game/dedicated_icon__1.png" width="16" height="16"/>
<frame png="ce/shell/main_menu/multiplayer_type_select/join_game/dedicated_icon__2.png" width="16" height="16"/>
<frame png="ce/shell/main_menu/multiplayer_type_select/join_game/dedicated_icon__3.png" width="16" height="16"/>
</bitmap>
<bitmap name="main_menu/multiplayer_type_select/join_game/filters/header_filters">
<frame png="ce/shell/main_menu/multiplayer_type_select/join_game/filters/header_filters__0.png" width="512" height="64"/>
</bitmap>
<bitmap name="main_menu/multiplayer_type_select/join_game/header_internet">
<frame png="ce/shell/main_menu/multiplayer_type_select/join_game/header_internet__0.png" width="512" height="64"/>
</bitmap>
<bitmap name="main_menu/multiplayer_type_select/join_game/header_lan">
<frame png="ce/shell/main_menu/multiplayer_type_select/join_game/header_lan__0.png" width="512" height="64"/>
</bitmap>
<bitmap name="main_menu/multiplayer_type_select/join_game/locked_icon">
<frame png="ce/shell/main_menu/multiplayer_type_select/join_game/locked_icon__0.png" width="16" height="16"/>
<frame png="ce/shell/main_menu/multiplayer_type_select/join_game/locked_icon__1.png" width="16" height="16"/>
<frame png="ce/shell/main_menu/multiplayer_type_select/join_game/locked_icon__2.png" width="16" height="16"/>
<frame png="ce/shell/main_menu/multiplayer_type_select/join_game/locked_icon__3.png" width="16" height="16"/>
</bitmap>
<bitmap name="main_menu/multiplayer_type_select/mp_map_select/header_select_map">
<frame png="ce/shell/main_menu/multiplayer_type_select/mp_map_select/header_select_map__0.png" width="512" height="64"/>
</bitmap>
<bitmap name="main_menu/multiplayer_type_select/mp_options">
<frame png="ce/shell/main_menu/multiplayer_type_select/mp_options__0.png" width="512" height="256"/>
<frame png="ce/shell/main_menu/multiplayer_type_select/mp_options__1.png" width="512" height="256"/>
<frame map="ui\shell\main_menu\multiplayer_type_select\mp_options" index="3"/>
</bitmap>
<bitmap name="main_menu/multiplayer_type_select/server_settings/header_server_settings">
<frame png="ce/shell/main_menu/multiplayer_type_select/server_settings/header_server_settings__0.png" width="512" height="64"/>
</bitmap>
<bitmap name="main_menu/player_profiles_select/header_select_profile">
<frame png="ce/shell/main_menu/player_profiles_select/header_select_profile__0.png" width="512" height="64"/>
</bitmap>
<bitmap name="main_menu/settings_select/multiplayer_setup/indicator_options_edit/header_indicator_options">
<frame png="ce/shell/main_menu/settings_select/multiplayer_setup/indicator_options_edit/header_indicator_options__0.png" width="512" height="64"/>
</bitmap>
<bitmap name="main_menu/settings_select/multiplayer_setup/item_options_edit/header_item_options">
<frame png="ce/shell/main_menu/settings_select/multiplayer_setup/item_options_edit/header_item_options__0.png" width="512" height="64"/>
</bitmap>
<bitmap name="main_menu/settings_select/multiplayer_setup/name_edit/header_gametype_name">
<frame png="ce/shell/main_menu/settings_select/multiplayer_setup/name_edit/header_gametype_name__0.png" width="512" height="64"/>
</bitmap>
<bitmap name="main_menu/settings_select/multiplayer_setup/player_options_edit/header_player_options">
<frame png="ce/shell/main_menu/settings_select/multiplayer_setup/player_options_edit/header_player_options__0.png" width="512" height="64"/>
</bitmap>
<bitmap name="main_menu/settings_select/multiplayer_setup/playlist_edit/game_type_select/header_rules">
<frame png="ce/shell/main_menu/settings_select/multiplayer_setup/playlist_edit/game_type_select/header_rules__0.png" width="512" height="64"/>
</bitmap>
<bitmap name="main_menu/settings_select/multiplayer_setup/playlist_edit/game_type_select/rules_options">
<frame png="ce/shell/main_menu/settings_select/multiplayer_setup/playlist_edit/game_type_select/rules_options__0.png" width="256" height="256"/>
<frame png="ce/shell/main_menu/settings_select/multiplayer_setup/playlist_edit/game_type_select/rules_options__1.png" width="256" height="256"/>
<frame png="ce/shell/main_menu/settings_select/multiplayer_setup/playlist_edit/game_type_select/rules_options__2.png" width="256" height="256"/>
<frame png="ce/shell/main_menu/settings_select/multiplayer_setup/playlist_edit/game_type_select/rules_options__3.png" width="256" height="256"/>
<frame png="ce/shell/main_menu/settings_select/multiplayer_setup/playlist_edit/game_type_select/rules_options__4.png" width="256" height="256"/>
<frame png="ce/shell/main_menu/settings_select/multiplayer_setup/playlist_edit/game_type_select/rules_options__5.png" width="256" height="256"/>
</bitmap>
<bitmap name="main_menu/settings_select/multiplayer_setup/playlist_edit/gametype_options">
<frame png="ce/shell/main_menu/settings_select/multiplayer_setup/playlist_edit/gametype_options__0.png" width="512" height="256"/>
<frame png="ce/shell/main_menu/settings_select/multiplayer_setup/playlist_edit/gametype_options__1.png" width="512" height="256"/>
<frame map="ui\shell\main_menu\settings_select\multiplayer_setup\playlist_edit\gametype_options" index="2"/>
<frame png="ce/shell/main_menu/settings_select/multiplayer_setup/playlist_edit/gametype_options__3.png" width="512" height="256"/>
<frame png="ce/shell/main_menu/settings_select/multiplayer_setup/playlist_edit/gametype_options__4.png" width="512" height="256"/>
<frame map="ui\shell\main_menu\settings_select\multiplayer_setup\playlist_edit\gametype_options" index="4"/>
<frame png="ce/shell/main_menu/settings_select/multiplayer_setup/playlist_edit/gametype_options__6.png" width="512" height="256"/>
<frame png="ce/shell/main_menu/settings_select/multiplayer_setup/playlist_edit/gametype_options__7.png" width="512" height="256"/>
</bitmap>
<bitmap name="main_menu/settings_select/multiplayer_setup/playlist_edit/header_edit_multiplayer_gametype">
<frame png="ce/shell/main_menu/settings_select/multiplayer_setup/playlist_edit/header_edit_multiplayer_gametype__0.png" width="1024" height="64"/>
</bitmap>
<bitmap name="main_menu/settings_select/multiplayer_setup/playlist_edit/header_set_options">
<frame png="ce/shell/main_menu/settings_select/multiplayer_setup/playlist_edit/header_set_options__0.png" width="512" height="64"/>
</bitmap>
<bitmap name="main_menu/settings_select/multiplayer_setup/playlist_select/header_select_gametype_to_edit">
<frame png="ce/shell/main_menu/settings_select/multiplayer_setup/playlist_select/header_select_gametype_to_edit__0.png" width="512" height="64"/>
</bitmap>
<bitmap name="main_menu/settings_select/multiplayer_setup/teamplay_options_edit/header_teamplay_options">
<frame png="ce/shell/main_menu/settings_select/multiplayer_setup/teamplay_options_edit/header_teamplay_options__0.png" width="512" height="64"/>
</bitmap>
<bitmap name="main_menu/settings_select/multiplayer_setup/vehicle_options_edit/header_vehicle_options">
<frame png="ce/shell/main_menu/settings_select/multiplayer_setup/vehicle_options_edit/header_vehicle_options__0.png" width="512" height="64"/>
</bitmap>
<bitmap name="main_menu/settings_select/player_setup/player_profile_edit/audio_settings/header_profile_audio_settings">
<frame png="ce/shell/main_menu/settings_select/player_setup/player_profile_edit/audio_settings/header_profile_audio_settings__0.png" width="512" height="64"/>
</bitmap>
<bitmap name="main_menu/settings_select/player_setup/player_profile_edit/color_edit/header_profile_color">
<frame png="ce/shell/main_menu/settings_select/player_setup/player_profile_edit/color_edit/header_profile_color__0.png" width="512" height="64"/>
</bitmap>
<bitmap name="main_menu/settings_select/player_setup/player_profile_edit/controller_edit/header_profile_controller_setting">
<frame png="ce/shell/main_menu/settings_select/player_setup/player_profile_edit/controller_edit/header_profile_controller_setting__0.png" width="512" height="64"/>
</bitmap>
<bitmap name="main_menu/settings_select/player_setup/player_profile_edit/controls_setup/header_profile_controls_settings">
<frame png="ce/shell/main_menu/settings_select/player_setup/player_profile_edit/controls_setup/header_profile_controls_settings__0.png" width="512" height="64"/>
</bitmap>
<bitmap name="main_menu/settings_select/player_setup/player_profile_edit/header_edit_profile_settings">
<frame png="ce/shell/main_menu/settings_select/player_setup/player_profile_edit/header_edit_profile_settings__0.png" width="512" height="64"/>
</bitmap>
<bitmap name="main_menu/settings_select/player_setup/player_profile_edit/mouse_settings/header_profile_mouse_settings">
<frame png="ce/shell/main_menu/settings_select/player_setup/player_profile_edit/mouse_settings/header_profile_mouse_settings__0.png" width="512" height="64"/>
</bitmap>
<bitmap name="main_menu/settings_select/player_setup/player_profile_edit/name_edit/header_profile_name">
<frame png="ce/shell/main_menu/settings_select/player_setup/player_profile_edit/name_edit/header_profile_name__0.png" width="512" height="64"/>
</bitmap>
<bitmap name="main_menu/settings_select/player_setup/player_profile_edit/network_setup/header_profile_network_settings">
<frame png="ce/shell/main_menu/settings_select/player_setup/player_profile_edit/network_setup/header_profile_network_settings__0.png" width="512" height="64"/>
</bitmap>
<bitmap name="main_menu/settings_select/player_setup/player_profile_edit/profile_options">
<frame map="ui\shell\main_menu\settings_select\player_setup\player_profile_edit\profile_options" index="0"/>
<frame png="ce/shell/main_menu/settings_select/player_setup/player_profile_edit/profile_options__1.png" width="512" height="256"/>
<frame map="ui\shell\main_menu\settings_select\player_setup\player_profile_edit\profile_options" index="1"/>
<frame png="ce/shell/main_menu/settings_select/player_setup/player_profile_edit/profile_options__3.png" width="512" height="256"/>
<frame png="ce/shell/main_menu/settings_select/player_setup/player_profile_edit/profile_options__4.png" width="512" height="256"/>
<frame png="ce/shell/main_menu/settings_select/player_setup/player_profile_edit/profile_options__5.png" width="512" height="256"/>
<frame png="ce/shell/main_menu/settings_select/player_setup/player_profile_edit/profile_options__6.png" width="512" height="256"/>
<frame map="ui\shell\main_menu\settings_select\player_setup\player_profile_edit\profile_options" index="3"/>
<frame png="ce/shell/main_menu/settings_select/player_setup/player_profile_edit/profile_options__8.png" width="512" height="256"/>
</bitmap>
<bitmap name="main_menu/settings_select/player_setup/player_profile_edit/video_settings/header_profile_video_settings">
<frame png="ce/shell/main_menu/settings_select/player_setup/player_profile_edit/video_settings/header_profile_video_settings__0.png" width="512" height="64"/>
</bitmap>
<bitmap name="main_menu/solo_level_select/header_load_level">
<frame png="ce/shell/main_menu/solo_level_select/header_load_level__0.png" width="512" height="64"/>
</bitmap>
<bitmap name="main_menu/multiplayer_type_select/coop/header_player_2">
<frame png="ce/port/main_menu/multiplayer_type_select/coop/header_player_2.png" width="512" height="64"/>
</bitmap>
<bitmap name="main_menu/multiplayer_type_select/join_game/header_direct_link">
<frame png="ce/port/main_menu/multiplayer_type_select/join_game/header_direct_link.png" width="512" height="64"/>
</bitmap>
<bitmap name="main_menu/multiplayer_type_select/join_game/header_server_browser">
<frame png="ce/port/main_menu/multiplayer_type_select/join_game/header_server_browser.png" width="512" height="64"/>
</bitmap>
<bitmap name="main_menu/multiplayer_type_select/lobby/header_lobby">
<frame png="ce/port/main_menu/multiplayer_type_select/lobby/header_lobby.png" width="512" height="64"/>
</bitmap>
<bitmap name="pause/pausebox_left">
<frame png="ce/port/pause/pausebox_left__0.png" width="16" height="256"/>
<frame png="ce/port/pause/pausebox_left__1.png" width="16" height="256"/>
</bitmap>
<bitmap name="pause/pausebox_center">
<frame png="ce/port/pause/pausebox_center__0.png" width="4" height="256"/>
<frame png="ce/port/pause/pausebox_center__1.png" width="4" height="256"/>
</bitmap>
<bitmap name="pause/pausebox_right">
<frame png="ce/port/pause/pausebox_right__0.png" width="16" height="256"/>
<frame png="ce/port/pause/pausebox_right__1.png" width="16" height="256"/>
</bitmap>
<bitmap name="blank">
<frame png="ce/port/blank__0.png" width="4" height="4"/>
</bitmap>
</menus>
+134
View File
@@ -0,0 +1,134 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- The PC version's menus: ui\shell\error (tools/ce_menus.py) -->
<menus>
<widget name="error/confirm_delete_gametype" controller="1" width="640" height="480" bitmap="bitmaps/semi_transparent_grey">
<child widget="error/confirm_delete_gametype_text_box" x="192" y="176"/>
<child widget="error/header_warning" x="201" y="180"/>
</widget>
<widget name="error/confirm_delete_gametype_button_bar" type="column_list" width="256" height="20" flags="pass_unhandled_to_focused_child up_down_tabs_items left_right_tabs_items">
<child widget="error/confirm_delete_gametype_button_cancel" x="128"/>
<child widget="error/confirm_delete_gametype_button_ok"/>
</widget>
<widget name="error/confirm_delete_gametype_button_cancel" type="text" width="128" height="24" bitmap="bitmaps/text_button_background" string_list="strings/common_button_captions" string_index="2" font="ui\small_ui" color="#FFFFFFFF" align="center" text_y="2">
<on event="left_mouse" run="mouse emit back event"/>
<on event="a" run="mouse emit back event"/>
<on event="start" run="mouse emit back event"/>
</widget>
<widget name="error/confirm_delete_gametype_button_ok" type="text" width="128" height="24" bitmap="bitmaps/text_button_background" string_list="strings/common_button_captions" string_index="1" font="ui\small_ui" color="#FFFFFFFF" align="center" text_y="2">
<on event="a" run="final del playlist profile" close="current" sound="sound\sfx\ui\forward"/>
<on event="start" run="final del playlist profile" close="current" sound="sound\sfx\ui\forward"/>
<on event="left_mouse" run="mouse emit accept event"/>
</widget>
<widget name="error/confirm_delete_gametype_modal_fullscreen" width="640" height="480" flags="pass_unhandled_to_focused_child">
<on event="b" run="cancel profile delete" close="current" sound="sound\sfx\ui\back"/>
<on event="back" run="cancel profile delete" close="current" sound="sound\sfx\ui\back"/>
<child widget="error/confirm_delete_gametype"/>
<child widget="error/confirm_delete_gametype_button_bar" x="194" y="309"/>
</widget>
<widget name="error/confirm_delete_gametype_text_box" type="text" controller="1" width="280" height="159" bitmap="bitmaps/alert_bkd" string_list="strings/displayed_error_messages" string_index="25" font="ui\large_ui" color="#FF2896FF" text_x="9" text_y="36">
</widget>
<widget name="error/confirm_delete_profile" width="640" height="480" bitmap="bitmaps/semi_transparent_grey">
<child widget="error/confirm_delete_profile_text_box" x="192" y="176"/>
<child widget="error/header_warning" x="201" y="180"/>
</widget>
<widget name="error/confirm_delete_profile_button_bar" type="column_list" width="256" height="20" flags="pass_unhandled_to_focused_child up_down_tabs_items left_right_tabs_items">
<child widget="error/confirm_delete_profile_button_cancel" x="128"/>
<child widget="error/confirm_delete_profile_button_ok"/>
</widget>
<widget name="error/confirm_delete_profile_button_cancel" type="text" width="128" height="24" bitmap="bitmaps/text_button_background" string_list="strings/common_button_captions" string_index="2" font="ui\small_ui" color="#FFFFFFFF" align="center" text_y="2">
<on event="left_mouse" run="mouse emit back event"/>
<on event="a" run="mouse emit back event"/>
<on event="start" run="mouse emit back event"/>
</widget>
<widget name="error/confirm_delete_profile_button_ok" type="text" width="128" height="24" bitmap="bitmaps/text_button_background" string_list="strings/common_button_captions" string_index="1" font="ui\small_ui" color="#FFFFFFFF" align="center" text_y="2">
<on event="a" run="final del player profile" close="current" sound="sound\sfx\ui\forward"/>
<on event="start" run="final del player profile" close="current" sound="sound\sfx\ui\forward"/>
<on event="left_mouse" run="mouse emit accept event"/>
</widget>
<widget name="error/confirm_delete_profile_modal_fullscreen" width="640" height="480" flags="pass_unhandled_to_focused_child">
<on event="b" run="cancel profile delete" close="current" sound="sound\sfx\ui\back"/>
<on event="back" run="cancel profile delete" close="current" sound="sound\sfx\ui\back"/>
<child widget="error/confirm_delete_profile"/>
<child widget="error/confirm_delete_profile_button_bar" x="194" y="309"/>
</widget>
<widget name="error/confirm_delete_profile_text_box" type="text" controller="1" width="280" height="159" bitmap="bitmaps/alert_bkd" string_list="strings/displayed_error_messages" string_index="24" font="ui\large_ui" color="#FF2896FF" text_x="9" text_y="36">
</widget>
<widget name="error/confirm_delete_savegame" width="640" height="480" bitmap="bitmaps/semi_transparent_grey">
<child widget="error/confirm_delete_savegame_text_box" x="192" y="176"/>
<child widget="error/header_warning" x="201" y="180"/>
</widget>
<widget name="error/confirm_delete_savegame_button_bar" type="column_list" width="256" height="20" flags="pass_unhandled_to_focused_child up_down_tabs_items left_right_tabs_items">
<child widget="error/confirm_delete_profile_button_cancel" x="128"/>
<child widget="error/confirm_delete_savegame_button_ok"/>
</widget>
<widget name="error/confirm_delete_savegame_button_ok" type="text" width="128" height="24" bitmap="bitmaps/text_button_background" string_list="strings/common_button_captions" string_index="1" font="ui\small_ui" color="#FFFFFFFF" align="center" text_y="2">
<on event="a" run="load game menu delete finish" close="current" sound="sound\sfx\ui\forward"/>
<on event="start" run="load game menu delete finish" close="current" sound="sound\sfx\ui\forward"/>
<on event="left_mouse" run="mouse emit accept event"/>
</widget>
<widget name="error/confirm_delete_savegame_modal_fullscreen" width="640" height="480" flags="pass_unhandled_to_focused_child">
<on event="b" run="cancel profile delete" close="current" sound="sound\sfx\ui\back"/>
<on event="back" run="cancel profile delete" close="current" sound="sound\sfx\ui\back"/>
<child widget="error/confirm_delete_savegame"/>
<child widget="error/confirm_delete_savegame_button_bar" x="194" y="309"/>
</widget>
<widget name="error/confirm_delete_savegame_text_box" type="text" controller="1" width="280" height="159" bitmap="bitmaps/alert_bkd" string_list="strings/displayed_error_messages" string_index="59" font="ui\large_ui" color="#FF2896FF" text_x="9" text_y="36">
</widget>
<widget name="error/confirm_empty_player_text_box" type="text" controller="1" width="280" height="159" bitmap="bitmaps/alert_bkd" string_list="main_menu/player_profiles_select/empty_profile_selected" font="ui\large_ui" color="#FF2896FF" text_x="9" text_y="36">
</widget>
<widget name="error/confirm_empty_profile" controller="1" width="640" height="480" bitmap="bitmaps/semi_transparent_grey">
<child widget="error/confirm_empty_player_text_box" x="192" y="176"/>
<child widget="error/header_attention" x="201" y="180"/>
</widget>
<widget name="error/error_modal" width="640" height="480" flags="pass_unhandled_to_focused_child">
<child widget="error/error_text_box" x="192" y="176"/>
<child widget="error/header_error" x="202" y="180"/>
</widget>
<widget name="error/error_modal_button_bar" type="column_list" width="256" height="20" flags="pass_unhandled_to_focused_child up_down_tabs_items left_right_tabs_items">
<child widget="error/error_modal_button_ok" x="64"/>
</widget>
<widget name="error/error_modal_button_ok" type="text" width="128" height="24" bitmap="bitmaps/text_button_background" string_list="strings/common_button_captions" string_index="1" font="ui\small_ui" color="#FFFFFFFF" align="center" text_y="2">
<on event="left_mouse" run="mouse emit accept event"/>
</widget>
<widget name="error/error_text_box" type="text" controller="1" width="280" height="159" bitmap="bitmaps/alert_bkd" string_list="strings/displayed_error_messages" font="ui\large_ui" color="#FF2896FF" text_x="9" text_y="35">
<replace search="%controller" function="controller"/>
</widget>
<widget name="error/header_are_you_sure" type="text" controller="1" width="170" height="20" string_list="error/error_headers" string_index="2" font="ui\large_ui" color="#FF2896FF">
</widget>
<widget name="error/header_attention" type="text" controller="1" width="150" height="20" string_list="error/error_headers" string_index="4" font="ui\large_ui" color="#FF2896FF">
</widget>
<widget name="error/header_error" type="text" controller="1" width="150" height="20" string_list="error/error_headers" font="ui\large_ui" color="#FF2896FF">
</widget>
<widget name="error/header_saving" type="text" controller="1" width="150" height="20" string_list="error/error_headers" string_index="3" font="ui\large_ui" color="#FF2896FF">
</widget>
<widget name="error/header_warning" type="text" controller="1" width="150" height="20" string_list="error/error_headers" string_index="1" font="ui\large_ui" color="#FF2896FF">
</widget>
<widget name="error/warning_creating_player_profile_screen" width="640" height="480" flags="pass_unhandled_to_focused_child" auto_close="1000" auto_close_fade="500" bitmap="bitmaps/semi_transparent_grey">
<on event="b" run="NULL"/>
<on event="back" run="NULL"/>
<child widget="error/warning_creating_player_profile_text" x="192" y="176"/>
<child widget="error/header_saving" x="201" y="180"/>
</widget>
<widget name="error/warning_creating_player_profile_text" type="text" controller="1" width="256" height="160" bitmap="bitmaps/alert_bkd" string_list="strings/displayed_error_messages" string_index="16" font="ui\large_ui" color="#FF2896FF" text_x="9" text_y="36">
</widget>
<widget name="error/warning_pre_testing_video_screen" width="640" height="480" bitmap="bitmaps/semi_transparent_grey">
<child widget="error/warning_pre_testing_video_text" x="192" y="176"/>
<child widget="error/header_warning" x="201" y="180"/>
</widget>
<widget name="error/warning_pre_testing_video_text" type="text" controller="1" width="280" height="160" bitmap="bitmaps/alert_bkd" string_list="strings/displayed_error_messages" string_index="51" font="ui\large_ui" color="#FF2896FF" text_x="9" text_y="36">
</widget>
<widget name="error/warning_saving_file_screen" width="640" height="480" flags="pass_unhandled_to_focused_child pause_game" auto_close="1000" auto_close_fade="500" bitmap="bitmaps/semi_transparent_grey">
<on event="b" run="NULL"/>
<on event="back" run="NULL"/>
<child widget="error/warning_saving_file_text" x="192" y="176"/>
<child widget="error/header_saving" x="201" y="180"/>
</widget>
<widget name="error/warning_saving_file_text" type="text" controller="1" width="256" height="160" bitmap="bitmaps/alert_bkd" string_list="strings/displayed_error_messages" string_index="15" font="ui\large_ui" color="#FF2896FF" text_x="9" text_y="36">
</widget>
<widget name="error/warning_testing_video_screen" width="640" height="480" bitmap="bitmaps/semi_transparent_grey">
<child widget="error/warning_testing_video_text" x="192" y="176"/>
<child widget="error/header_are_you_sure" x="201" y="180"/>
</widget>
<widget name="error/warning_testing_video_text" type="text" controller="1" width="280" height="160" bitmap="bitmaps/alert_bkd" string_list="strings/displayed_error_messages" string_index="41" font="ui\large_ui" color="#FF2896FF" text_x="9" text_y="36">
</widget>
</menus>
@@ -0,0 +1,91 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- The PC version's menus: ui\shell\main_menu\campaign_select (tools/ce_menus.py) -->
<menus>
<widget name="main_menu/campaign_select/campaign_menu" width="640" height="480" flags="pass_unhandled_to_focused_child">
<child widget="main_menu/halo_logo" y="28"/>
<child widget="main_menu/campaign_select/campaign_menu_select_list"/>
</widget>
<widget name="main_menu/campaign_select/campaign_menu_select_list" type="column_list" width="640" height="480" flags="pass_unhandled_to_focused_child up_down_tabs_items">
<on event="created" run="campaign menu init" branch="true"/>
<conditional widget="main_menu/difficulty_select/difficulty_select_list_screen" if_failed="true"/>
<child widget="main_menu/campaign_select/menu_item_continue" x="194" y="283"/>
<child widget="main_menu/campaign_select/menu_item_new_campaign" x="192" y="319"/>
<child widget="main_menu/campaign_select/menu_item_load_game" x="192" y="355"/>
<child widget="main_menu/campaign_select/menu_item_back" x="192" y="391"/>
</widget>
<widget name="main_menu/campaign_select/header_load_game" controller="1" left="35" top="11" width="605" height="59" bitmap="main_menu/campaign_select/header_load_game">
</widget>
<widget name="main_menu/campaign_select/load_level_extended_desc" width="640" height="480">
<child widget="main_menu/current_profile_name"/>
<child widget="main_menu/campaign_select/load_level_right_item" x="22" y="2"/>
</widget>
<widget name="main_menu/campaign_select/load_level_right_data" type="text" controller="1" left="417" top="258" width="146" height="136" font="ui\large_ui" color="#FF2896FF">
</widget>
<widget name="main_menu/campaign_select/load_level_right_item" controller="1" left="406" top="75" width="162" height="326" bitmap="bitmaps/spinner_list_3_wide_item_background">
<child widget="main_menu/campaign_select/load_level_right_name"/>
<child widget="main_menu/campaign_select/load_level_right_pic"/>
<child widget="main_menu/campaign_select/load_level_right_data"/>
<child widget="main_menu/solo_level_select/difficulty_indicator" x="416" y="343"/>
<child widget="main_menu/solo_level_select/difficulty_indicator" x="466" y="343"/>
<child widget="main_menu/solo_level_select/difficulty_indicator" x="516" y="343"/>
</widget>
<widget name="main_menu/campaign_select/load_level_right_name" type="text" controller="1" left="417" top="204" width="146" height="43" string_list="main_menu/map_list" string_index="2" font="ui\large_ui" color="#FF2896FF">
</widget>
<widget name="main_menu/campaign_select/load_level_right_pic" controller="1" left="419" top="87" width="140" height="114" bitmap="ui\shell\bitmaps\sp_levels">
</widget>
<widget name="main_menu/campaign_select/load_level_select_button_bar" type="column_list" width="640" height="28" flags="pass_unhandled_to_focused_child left_right_tabs_items">
<data input="common button bar update"/>
<child widget="main_menu/campaign_select/load_level_select_button_delete" y="1"/>
<child widget="main_menu/solo_level_select/solo_level_select_button_ok" x="380" y="1"/>
<child widget="common_button_back" x="510" y="1"/>
</widget>
<widget name="main_menu/campaign_select/load_level_select_button_delete" type="text" width="128" height="24" bitmap="bitmaps/text_button_background" string_list="strings/common_button_captions" string_index="5" font="ui\small_ui" color="#FFFFFFFF" align="center" text_y="2">
<on event="a" run="mouse emit x event"/>
<on event="start" run="mouse emit x event"/>
<on event="left_mouse" run="mouse emit x event"/>
</widget>
<widget name="main_menu/campaign_select/load_level_select_list" type="column_list" width="640" height="480" flags="pass_unhandled_to_focused_child up_down_tabs_children" description="main_menu/campaign_select/load_level_extended_desc">
<data input="load game list update"/>
<on event="created" run="load game menu init"/>
<on event="deleted" run="load game menu dispose"/>
<on event="custom_activation" run="load game menu activated"/>
<on event="x" run="load game menu delete request" open="error/confirm_delete_savegame_modal_fullscreen"/>
<child widget="main_menu/new_select/list_item_0" x="20" y="73"/>
<child widget="main_menu/new_select/list_item_1" x="20" y="103"/>
<child widget="main_menu/new_select/list_item_2" x="20" y="133"/>
<child widget="main_menu/new_select/list_item_3" x="20" y="163"/>
<child widget="main_menu/new_select/list_item_4" x="20" y="193"/>
<child widget="main_menu/new_select/list_item_5" x="20" y="223"/>
<child widget="main_menu/new_select/list_item_6" x="20" y="253"/>
<child widget="main_menu/new_select/list_item_7" x="20" y="283"/>
<child widget="main_menu/new_select/list_item_8" x="20" y="313"/>
<child widget="main_menu/new_select/list_item_9" x="20" y="343"/>
<child widget="main_menu/new_select/list_item_10" x="20" y="373"/>
<child widget="main_menu/campaign_select/load_level_select_button_bar" y="414"/>
</widget>
<widget name="main_menu/campaign_select/load_level_select_screen" width="640" height="480" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/gradient">
<child widget="main_menu/new_select/sel_list_desc_bkd"/>
<child widget="main_menu/campaign_select/load_level_select_list"/>
<child widget="main_menu/campaign_select/header_load_game"/>
</widget>
<widget name="main_menu/campaign_select/menu_item_back" type="text" width="256" height="33" bitmap="main_menu/campaign_select/item_back" string_list="main_menu/main_menu_options" font="ui\small_ui" color="#000080FF">
<on event="a" back="true"/>
<on event="start" back="true"/>
<on event="left_mouse" back="true"/>
</widget>
<widget name="main_menu/campaign_select/menu_item_continue" type="text" width="256" height="33" bitmap="main_menu/campaign_select/item_continue" string_list="main_menu/main_menu_options" font="ui\small_ui" color="#000080FF">
<on event="a" run="campaign menu continue"/>
<on event="start" run="campaign menu continue"/>
<on event="left_mouse" run="mouse emit accept event"/>
</widget>
<widget name="main_menu/campaign_select/menu_item_load_game" type="text" width="256" height="33" bitmap="main_menu/campaign_select/item_load_game" string_list="main_menu/main_menu_options" font="ui\small_ui" color="#000080FF">
<on event="a" open="main_menu/campaign_select/load_level_select_screen"/>
<on event="start" open="main_menu/campaign_select/load_level_select_screen"/>
<on event="left_mouse" run="mouse emit accept event"/>
</widget>
<widget name="main_menu/campaign_select/menu_item_new_campaign" type="text" width="256" height="33" bitmap="main_menu/campaign_select/item_new_campaign" string_list="main_menu/main_menu_options" string_index="1" font="ui\small_ui" color="#000080FF">
<on event="a" open="main_menu/solo_level_select/solo_level_select_screen"/>
<on event="start" open="main_menu/solo_level_select/solo_level_select_screen"/>
<on event="left_mouse" run="mouse emit accept event"/>
</widget>
</menus>
@@ -0,0 +1,65 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- The PC version's menus: ui\shell\main_menu\difficulty_select (tools/ce_menus.py) -->
<menus>
<widget name="main_menu/difficulty_select/difficulty_ext_desc" controller="1" left="275" top="78" width="320" height="322" bitmap="bitmaps/list_field" color="#FF0080FF">
<child widget="main_menu/difficulty_select/difficulty_options" x="333" y="88"/>
<child widget="main_menu/difficulty_select/difficulty_extended_description"/>
<child widget="main_menu/current_profile_name"/>
</widget>
<widget name="main_menu/difficulty_select/difficulty_extended_description" type="text" controller="1" left="275" top="78" width="305" height="322" string_list="main_menu/difficulty_select/difficulty_descriptions" font="ui\large_ui" color="#FF2896FF" text_x="12" text_y="220">
</widget>
<widget name="main_menu/difficulty_select/difficulty_options" controller="1" width="200" height="211" bitmap="ui\shell\main_menu\difficulty_select\difficulty_options">
</widget>
<widget name="main_menu/difficulty_select/difficulty_select_button_bar" type="column_list" width="640" height="28" flags="pass_unhandled_to_focused_child left_right_tabs_items">
<data input="common button bar update"/>
<child widget="main_menu/difficulty_select/difficulty_select_button_ok" x="380" y="1"/>
<child widget="common_button_back" x="510" y="1"/>
</widget>
<widget name="main_menu/difficulty_select/difficulty_select_button_ok" type="text" width="128" height="24" bitmap="bitmaps/text_button_background" string_list="strings/common_button_captions" string_index="1" font="ui\small_ui" color="#FFFFFFFF" align="center" text_y="2">
<on event="a" run="set difficulty"/>
<on event="start" run="set difficulty"/>
<on event="a" run="main menu switch to solo game" branch="true"/>
<on event="start" run="main menu switch to solo game" branch="true"/>
<on event="left_mouse" run="mouse emit accept event"/>
<conditional widget="main_menu/multiplayer_type_select/server_settings/server_settings_screen" if_failed="true"/>
</widget>
<widget name="main_menu/difficulty_select/difficulty_select_list" type="column_list" width="640" height="480" flags="pass_unhandled_to_focused_child up_down_tabs_items pass_handled_to_all_children" description="main_menu/difficulty_select/difficulty_ext_desc">
<data input="difficulty menu update desc"/>
<on event="created" run="difficulty menu init"/>
<child widget="main_menu/difficulty_select/kindergarten_difficulty_item"/>
<child widget="main_menu/difficulty_select/normal_difficulty_item"/>
<child widget="main_menu/difficulty_select/hard_difficulty_item"/>
<child widget="main_menu/difficulty_select/impossible_difficulty_item"/>
<child widget="main_menu/difficulty_select/difficulty_select_button_bar" y="414"/>
</widget>
<widget name="main_menu/difficulty_select/difficulty_select_list_screen" width="640" height="480" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/gradient">
<data input="warn if diff will nuke saved game"/>
<child widget="main_menu/difficulty_select/difficulty_select_list"/>
<child widget="main_menu/difficulty_select/warning_message" x="65" y="215"/>
<child widget="main_menu/difficulty_select/header_choose_difficulty"/>
</widget>
<widget name="main_menu/difficulty_select/hard_difficulty_item" type="text" controller="1" left="51" top="144" width="232" height="32" bitmap="bitmaps/list_item_bkd" string_list="main_menu/difficulty_select/difficulty_options" string_index="2" font="ui\large_ui" color="#FF0080FF" text_x="13" text_y="5">
<on event="left_mouse" run="mouse emit accept event"/>
<on event="a" run="difficulty item select"/>
<on event="start" run="difficulty item select"/>
</widget>
<widget name="main_menu/difficulty_select/header_choose_difficulty" controller="1" left="35" top="11" width="605" height="59" bitmap="main_menu/difficulty_select/header_choose_difficulty">
</widget>
<widget name="main_menu/difficulty_select/impossible_difficulty_item" type="text" controller="1" left="51" top="177" width="232" height="32" bitmap="bitmaps/list_item_bkd" string_list="main_menu/difficulty_select/difficulty_options" string_index="3" font="ui\large_ui" color="#FF0080FF" text_x="13" text_y="5">
<on event="left_mouse" run="mouse emit accept event"/>
<on event="a" run="difficulty item select"/>
<on event="start" run="difficulty item select"/>
</widget>
<widget name="main_menu/difficulty_select/kindergarten_difficulty_item" type="text" controller="1" left="51" top="78" width="232" height="32" bitmap="bitmaps/list_item_bkd_top" string_list="main_menu/difficulty_select/difficulty_options" font="ui\large_ui" color="#FF0080FF" text_x="13" text_y="5">
<on event="left_mouse" run="mouse emit accept event"/>
<on event="a" run="difficulty item select"/>
<on event="start" run="difficulty item select"/>
</widget>
<widget name="main_menu/difficulty_select/normal_difficulty_item" type="text" controller="1" left="51" top="111" width="232" height="32" bitmap="bitmaps/list_item_bkd" string_list="main_menu/difficulty_select/difficulty_options" string_index="1" font="ui\large_ui" color="#FF0080FF" text_x="13" text_y="5">
<on event="left_mouse" run="mouse emit accept event"/>
<on event="a" run="difficulty item select"/>
<on event="start" run="difficulty item select"/>
</widget>
<widget name="main_menu/difficulty_select/warning_message" type="text" width="210" height="185" string_list="main_menu/difficulty_select/warning_message" font="ui\small_ui" color="#FFFFFFFF">
</widget>
</menus>
@@ -0,0 +1,64 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- The PC version's menus: ui\shell\main_menu\gametype_select (tools/ce_menus.py) -->
<menus>
<widget name="main_menu/gametype_select/gametype_extended_desc" width="640" height="480">
<child widget="main_menu/current_profile_name"/>
<child widget="main_menu/gametype_select/gametype_right_item" x="22" y="2"/>
</widget>
<widget name="main_menu/gametype_select/gametype_right_data" type="text" controller="1" left="417" top="258" width="156" height="136" font="ui\small_ui" color="#FF2896FF">
</widget>
<widget name="main_menu/gametype_select/gametype_right_item" controller="1" left="406" top="75" width="162" height="326" bitmap="bitmaps/spinner_list_3_wide_item_background">
<child widget="main_menu/gametype_select/gametype_right_name"/>
<child widget="main_menu/gametype_select/gametype_right_pic"/>
<child widget="main_menu/gametype_select/gametype_right_data"/>
<child widget="main_menu/gametype_select/locked_gametype_icon" x="423" y="182"/>
</widget>
<widget name="main_menu/gametype_select/gametype_right_name" type="text" controller="1" left="417" top="204" width="146" height="43" font="ui\small_ui" color="#FF2896FF">
</widget>
<widget name="main_menu/gametype_select/gametype_right_pic" controller="1" left="419" top="87" width="140" height="114" bitmap="bitmaps/game_type_grafix">
</widget>
<widget name="main_menu/gametype_select/gametype_select_button_bar" type="column_list" width="640" height="28" flags="pass_unhandled_to_focused_child left_right_tabs_items">
<data input="common button bar update"/>
<child widget="main_menu/gametype_select/gametype_select_button_ok" x="380" y="1"/>
<child widget="common_button_back" x="510" y="1"/>
</widget>
<widget name="main_menu/gametype_select/gametype_select_button_ok" type="text" width="128" height="24" bitmap="bitmaps/text_button_background" string_list="strings/common_button_captions" string_index="1" font="ui\small_ui" color="#FFFFFFFF" align="center" text_y="2">
<on event="a" run="emit custom activation event"/>
<on event="start" run="emit custom activation event"/>
<on event="left_mouse" run="mouse emit accept event"/>
</widget>
<widget name="main_menu/gametype_select/gametype_select_list_2" type="column_list" width="640" height="480" flags="pass_unhandled_to_focused_child up_down_tabs_children" description="main_menu/gametype_select/gametype_extended_desc">
<data input="gt select list update"/>
<on event="created" run="mp profiles list initialize"/>
<on event="deleted" run="mp profiles list dispose"/>
<on event="custom_activation" run="mp profile set for game" open="main_menu/multiplayer_type_select/server_settings/server_settings_screen"/>
<child widget="main_menu/gametype_select/list_item_0_chooser" x="82" y="73"/>
<child widget="main_menu/new_select/list_item_1" x="20" y="103"/>
<child widget="main_menu/new_select/list_item_2" x="20" y="133"/>
<child widget="main_menu/new_select/list_item_3" x="20" y="163"/>
<child widget="main_menu/new_select/list_item_4" x="20" y="193"/>
<child widget="main_menu/new_select/list_item_5" x="20" y="223"/>
<child widget="main_menu/new_select/list_item_6" x="20" y="253"/>
<child widget="main_menu/new_select/list_item_7" x="20" y="283"/>
<child widget="main_menu/new_select/list_item_8" x="20" y="313"/>
<child widget="main_menu/new_select/list_item_9" x="20" y="343"/>
<child widget="main_menu/new_select/list_item_10" x="15" y="373"/>
<child widget="main_menu/gametype_select/gametype_select_button_bar" y="414"/>
</widget>
<widget name="main_menu/gametype_select/gametype_select_screen" width="640" height="480" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/gradient">
<on event="created" run="net server defer start"/>
<child widget="main_menu/new_select/sel_list_desc_bkd"/>
<child widget="main_menu/gametype_select/gametype_select_list_2"/>
<child widget="main_menu/gametype_select/header_select_gametype"/>
</widget>
<widget name="main_menu/gametype_select/header_select_gametype" controller="1" left="35" top="11" width="605" height="59" bitmap="main_menu/gametype_select/header_select_gametype">
</widget>
<widget name="main_menu/gametype_select/list_item_0_chooser" controller="1" width="256" height="28" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/option_bkds_sm" font="ui\large_ui" color="#FF2896FF" align="center" text_y="3">
<child widget="main_menu/gametype_select/list_item_0_chooser_spinner" x="15" y="2"/>
</widget>
<widget name="main_menu/gametype_select/list_item_0_chooser_spinner" type="spinner" controller="1" width="226" height="22" flags="left_right_tabs_items" string_list="main_menu/gametype_select/var_gametype_banks" font="ui\large_ui" color="#FF2896FF" align="center" text_y="1" list_flags="items_from_strings" header_bitmap="bitmaps/arrow_sm_left" footer_bitmap="bitmaps/arrow_sm_right" header_bounds="7 -6 19 0" footer_bounds="7 226 19 232">
<on event="left_mouse" run="mouse spinner 1wide click"/>
</widget>
<widget name="main_menu/gametype_select/locked_gametype_icon" controller="1" width="16" height="16" bitmap="bitmaps/locked_gametype">
</widget>
</menus>
@@ -0,0 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- The PC version's menus: ui\shell\main_menu\multiplayer_type_select\connected\4way_profile_select (tools/ce_menus.py) -->
<menus>
<widget name="main_menu/multiplayer_type_select/connected/4way_profile_select/qtr_screen_profile_color_pic" controller="1" left="18" top="22" width="112" height="136" bitmap="ui\shell\bitmaps\colors_sm">
</widget>
</menus>
@@ -0,0 +1,10 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- The PC version's menus: ui\shell\main_menu\multiplayer_type_select\connected (tools/ce_menus.py) -->
<menus>
<widget name="main_menu/multiplayer_type_select/connected/connected_map_select_wrapper" width="640" height="480" flags="pass_unhandled_to_focused_child pause_game tag_controller_index force_handle_mouse">
<child widget="main_menu/multiplayer_type_select/mp_map_select/mp_map_select_screen"/>
</widget>
<widget name="main_menu/multiplayer_type_select/connected/gametype_select_screen_wrapper" width="640" height="480" flags="pass_unhandled_to_focused_child pause_game">
<child widget="main_menu/gametype_select/gametype_select_screen"/>
</widget>
</menus>
@@ -0,0 +1,119 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- The port's multiplayer screens, in the PC version's style (tools/port_settings.py) -->
<menus>
<widget name="main_menu/multiplayer_type_select/multiplayer_type_coop_item" type="text" left="51" width="232" height="32" bitmap="bitmaps/list_item_bkd" string_list="main_menu/multiplayer_type_select/multiplayer_options" string_index="7" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="5">
<on event="a" run="port coop begin" open="main_menu/multiplayer_type_select/coop/player_2_profile_screen" branch="true"/>
<on event="start" run="port coop begin" open="main_menu/multiplayer_type_select/coop/player_2_profile_screen" branch="true"/>
<on event="left_mouse" run="mouse emit accept event"/>
</widget>
<widget name="main_menu/multiplayer_type_select/coop/player_2_profile_screen" width="640" height="480" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/gradient">
<child widget="main_menu/new_select/sel_list_desc_bkd"/>
<child widget="main_menu/multiplayer_type_select/coop/player_2_profile_list"/>
<child widget="main_menu/multiplayer_type_select/coop/header_player_2"/>
<child widget="main_menu/multiplayer_type_select/coop/player_2_help" x="20" y="416"/>
</widget>
<widget name="main_menu/multiplayer_type_select/coop/header_player_2" controller="1" left="35" top="11" width="363" height="59" bitmap="main_menu/multiplayer_type_select/coop/header_player_2">
</widget>
<widget name="main_menu/multiplayer_type_select/coop/player_2_profile_list" type="column_list" width="640" height="480" flags="pass_unhandled_to_focused_child up_down_tabs_children" description="main_menu/profile_manager/player_profile_extended_desc">
<data input="3wide player profile list update"/>
<on event="created" run="port coop player 2 list initialize"/>
<on event="deleted" run="player profile list dispose"/>
<on event="custom_activation" run="port coop player 2" open="main_menu/solo_level_select/solo_level_select_screen" branch="true"/>
<child widget="main_menu/multiplayer_type_select/coop/list_item_0" x="20" y="73"/>
<child widget="main_menu/multiplayer_type_select/coop/list_item_1" x="20" y="103"/>
<child widget="main_menu/multiplayer_type_select/coop/list_item_2" x="20" y="133"/>
<child widget="main_menu/multiplayer_type_select/coop/list_item_3" x="20" y="163"/>
<child widget="main_menu/multiplayer_type_select/coop/list_item_4" x="20" y="193"/>
<child widget="main_menu/multiplayer_type_select/coop/list_item_5" x="20" y="223"/>
<child widget="main_menu/multiplayer_type_select/coop/list_item_6" x="20" y="253"/>
<child widget="main_menu/multiplayer_type_select/coop/list_item_7" x="20" y="283"/>
<child widget="main_menu/multiplayer_type_select/coop/list_item_8" x="20" y="313"/>
<child widget="main_menu/multiplayer_type_select/coop/list_item_9" x="20" y="343"/>
<child widget="main_menu/multiplayer_type_select/coop/list_item_10" x="20" y="373"/>
<child widget="main_menu/multiplayer_type_select/coop/player_2_button_bar" y="414"/>
</widget>
<widget name="main_menu/multiplayer_type_select/coop/list_item_0" width="390" height="28" bitmap="bitmaps/sel_list_item_bkd_top" font="ui\large_ui" color="#FF2896FF" align="center" text_y="3">
<on event="a" run="single prev cl item activated"/>
<on event="start" run="single prev cl item activated"/>
<on event="left_mouse" run="mouse emit accept event"/>
<child widget="main_menu/new_select/list_item_text" x="25"/>
<child widget="main_menu/new_select/list_item_arrows"/>
</widget>
<widget name="main_menu/multiplayer_type_select/coop/list_item_1" width="390" height="28" bitmap="bitmaps/sel_list_item_bkd" font="ui\large_ui" color="#FF2896FF" align="center" text_y="3">
<on event="a" run="single prev cl item activated"/>
<on event="start" run="single prev cl item activated"/>
<on event="left_mouse" run="mouse emit accept event"/>
<child widget="main_menu/new_select/list_item_text" x="25"/>
<child widget="main_menu/new_select/list_item_arrows"/>
</widget>
<widget name="main_menu/multiplayer_type_select/coop/list_item_2" width="390" height="28" bitmap="bitmaps/sel_list_item_bkd" font="ui\large_ui" color="#FF2896FF" align="center" text_y="3">
<on event="a" run="single prev cl item activated"/>
<on event="start" run="single prev cl item activated"/>
<on event="left_mouse" run="mouse emit accept event"/>
<child widget="main_menu/new_select/list_item_text" x="25"/>
<child widget="main_menu/new_select/list_item_arrows"/>
</widget>
<widget name="main_menu/multiplayer_type_select/coop/list_item_3" width="390" height="28" bitmap="bitmaps/sel_list_item_bkd" font="ui\large_ui" color="#FF2896FF" align="center" text_y="3">
<on event="a" run="single prev cl item activated"/>
<on event="start" run="single prev cl item activated"/>
<on event="left_mouse" run="mouse emit accept event"/>
<child widget="main_menu/new_select/list_item_text" x="25"/>
<child widget="main_menu/new_select/list_item_arrows"/>
</widget>
<widget name="main_menu/multiplayer_type_select/coop/list_item_4" width="390" height="28" bitmap="bitmaps/sel_list_item_bkd" font="ui\large_ui" color="#FF2896FF" align="center" text_y="3">
<on event="a" run="single prev cl item activated"/>
<on event="start" run="single prev cl item activated"/>
<on event="left_mouse" run="mouse emit accept event"/>
<child widget="main_menu/new_select/list_item_text" x="25"/>
<child widget="main_menu/new_select/list_item_arrows"/>
</widget>
<widget name="main_menu/multiplayer_type_select/coop/list_item_5" width="390" height="28" bitmap="bitmaps/sel_list_item_bkd" font="ui\large_ui" color="#FF2896FF" align="center" text_y="3">
<on event="a" run="single prev cl item activated"/>
<on event="start" run="single prev cl item activated"/>
<on event="left_mouse" run="mouse emit accept event"/>
<child widget="main_menu/new_select/list_item_text" x="25"/>
<child widget="main_menu/new_select/list_item_arrows"/>
</widget>
<widget name="main_menu/multiplayer_type_select/coop/list_item_6" width="390" height="28" bitmap="bitmaps/sel_list_item_bkd" font="ui\large_ui" color="#FF2896FF" align="center" text_y="3">
<on event="a" run="single prev cl item activated"/>
<on event="start" run="single prev cl item activated"/>
<on event="left_mouse" run="mouse emit accept event"/>
<child widget="main_menu/new_select/list_item_text" x="25"/>
<child widget="main_menu/new_select/list_item_arrows"/>
</widget>
<widget name="main_menu/multiplayer_type_select/coop/list_item_7" width="390" height="28" bitmap="bitmaps/sel_list_item_bkd" font="ui\large_ui" color="#FF2896FF" align="center" text_y="3">
<on event="a" run="single prev cl item activated"/>
<on event="start" run="single prev cl item activated"/>
<on event="left_mouse" run="mouse emit accept event"/>
<child widget="main_menu/new_select/list_item_text" x="25"/>
<child widget="main_menu/new_select/list_item_arrows"/>
</widget>
<widget name="main_menu/multiplayer_type_select/coop/list_item_8" width="390" height="28" bitmap="bitmaps/sel_list_item_bkd" font="ui\large_ui" color="#FF2896FF" align="center" text_y="3">
<on event="a" run="single prev cl item activated"/>
<on event="start" run="single prev cl item activated"/>
<on event="left_mouse" run="mouse emit accept event"/>
<child widget="main_menu/new_select/list_item_text" x="25"/>
<child widget="main_menu/new_select/list_item_arrows"/>
</widget>
<widget name="main_menu/multiplayer_type_select/coop/list_item_9" width="390" height="28" bitmap="bitmaps/sel_list_item_bkd" font="ui\large_ui" color="#FF2896FF" align="center" text_y="3">
<on event="a" run="single prev cl item activated"/>
<on event="start" run="single prev cl item activated"/>
<on event="left_mouse" run="mouse emit accept event"/>
<child widget="main_menu/new_select/list_item_text" x="25"/>
<child widget="main_menu/new_select/list_item_arrows"/>
</widget>
<widget name="main_menu/multiplayer_type_select/coop/list_item_10" width="390" height="28" bitmap="bitmaps/sel_list_item_bkd" font="ui\large_ui" color="#FF2896FF" align="center" text_y="3">
<on event="a" run="single prev cl item activated"/>
<on event="start" run="single prev cl item activated"/>
<on event="left_mouse" run="mouse emit accept event"/>
<child widget="main_menu/new_select/list_item_text" x="25"/>
<child widget="main_menu/new_select/list_item_arrows"/>
</widget>
<widget name="main_menu/multiplayer_type_select/coop/player_2_help" type="text" width="350" height="24" text="Player 2: choose with your controller." font="ui\small_ui" color="#FF2896FF" text_y="5" text_flags="no_focus_test">
</widget>
<widget name="main_menu/multiplayer_type_select/coop/player_2_button_bar" type="column_list" width="640" height="28" flags="pass_unhandled_to_focused_child left_right_tabs_items">
<data input="common button bar update"/>
<child widget="main_menu/profile_manager/profile_manager_button_ok" x="380" y="1"/>
<child widget="common_button_back" x="510" y="1"/>
</widget>
</menus>
@@ -0,0 +1,55 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- The PC version's menus: ui\shell\main_menu\multiplayer_type_select\direct_ip (tools/ce_menus.py) -->
<menus>
<widget name="main_menu/multiplayer_type_select/direct_ip/direct_ip_button_bar" type="column_list" width="640" height="28" flags="pass_unhandled_to_focused_child left_right_tabs_items">
<data input="common button bar update"/>
<child widget="main_menu/multiplayer_type_select/direct_ip/direct_ip_button_join" x="380" y="1"/>
<child widget="common_button_cancel" x="510" y="1"/>
</widget>
<widget name="main_menu/multiplayer_type_select/direct_ip/direct_ip_button_join" type="text" width="128" height="24" bitmap="bitmaps/text_button_background" string_list="main_menu/multiplayer_type_select/server_settings/server_settings_options" string_index="4" font="ui\small_ui" color="#FFFFFFFF" align="center" text_y="2">
<on event="a" run="direct ip connect go"/>
<on event="start" run="direct ip connect go"/>
<on event="left_mouse" run="mouse emit accept event"/>
</widget>
<widget name="main_menu/multiplayer_type_select/direct_ip/direct_ip_help" controller="1" left="68" top="321" width="482" height="79" color="#FFFFFFFF">
<child widget="main_menu/multiplayer_type_select/direct_ip/direct_ip_help_text"/>
<child widget="main_menu/current_profile_name"/>
</widget>
<widget name="main_menu/multiplayer_type_select/direct_ip/direct_ip_help_text" type="text" controller="1" left="68" top="321" width="482" height="79" string_list="main_menu/multiplayer_type_select/direct_ip/cap_direct_ip_options" font="ui\large_ui" color="#FFFFFFFF">
</widget>
<widget name="main_menu/multiplayer_type_select/direct_ip/direct_ip_menu" type="column_list" width="640" height="480" flags="pass_unhandled_to_focused_child up_down_tabs_children" description="main_menu/multiplayer_type_select/direct_ip/direct_ip_help">
<data input="direct ip connect update"/>
<on event="created" run="direct ip connect init"/>
<child widget="main_menu/multiplayer_type_select/direct_ip/op_server_address" x="54" y="73"/>
<child widget="main_menu/multiplayer_type_select/direct_ip/op_server_password" x="54" y="103"/>
<child widget="main_menu/multiplayer_type_select/direct_ip/direct_ip_button_bar" y="414"/>
</widget>
<widget name="main_menu/multiplayer_type_select/direct_ip/direct_ip_screen" width="640" height="480" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/gradient">
<child widget="main_menu/multiplayer_type_select/direct_ip/header_direct_ip"/>
<child widget="main_menu/multiplayer_type_select/direct_ip/direct_ip_menu"/>
</widget>
<widget name="main_menu/multiplayer_type_select/direct_ip/header_direct_ip" controller="1" left="35" top="11" width="605" height="59" bitmap="main_menu/multiplayer_type_select/direct_ip/header_direct_ip">
</widget>
<widget name="main_menu/multiplayer_type_select/direct_ip/op_server_address" width="512" height="28" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/option_bkds" color="#FF2896FF">
<on event="left_mouse" run="mouse emit accept event"/>
<child widget="main_menu/multiplayer_type_select/direct_ip/server_address_label"/>
<child widget="main_menu/multiplayer_type_select/direct_ip/server_address_value_label" x="255" y="1"/>
</widget>
<widget name="main_menu/multiplayer_type_select/direct_ip/op_server_password" width="512" height="28" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/option_bkds" color="#FF2896FF">
<on event="left_mouse" run="mouse emit accept event"/>
<child widget="main_menu/multiplayer_type_select/direct_ip/server_password_label"/>
<child widget="main_menu/multiplayer_type_select/direct_ip/server_password_value_label" x="255" y="1"/>
</widget>
<widget name="main_menu/multiplayer_type_select/direct_ip/server_address_label" type="text" controller="1" width="300" height="22" string_list="main_menu/multiplayer_type_select/direct_ip/direct_ip_options" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="4">
</widget>
<widget name="main_menu/multiplayer_type_select/direct_ip/server_address_value_label" type="text" width="230" height="22" flags="pass_unhandled_to_focused_child" font="ui\small_ui" color="#FF2896FF" align="center" text_x="13" text_y="2" header_bounds="7 -6 19 0" footer_bounds="7 190 19 196">
<on event="a" run="direct ip edit field"/>
<on event="start" run="direct ip edit field"/>
</widget>
<widget name="main_menu/multiplayer_type_select/direct_ip/server_password_label" type="text" controller="1" width="300" height="22" string_list="main_menu/multiplayer_type_select/server_settings/server_settings_options" string_index="1" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="4">
</widget>
<widget name="main_menu/multiplayer_type_select/direct_ip/server_password_value_label" type="text" width="230" height="22" flags="pass_unhandled_to_focused_child" font="ui\large_ui" color="#FF2896FF" align="center" text_x="13" text_y="2" header_bounds="7 -6 19 0" footer_bounds="7 190 19 196">
<on event="a" run="direct ip edit field"/>
<on event="start" run="direct ip edit field"/>
</widget>
</menus>
@@ -0,0 +1,86 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- The PC version's menus: ui\shell\main_menu\multiplayer_type_select\join_game\filters (tools/ce_menus.py) -->
<menus>
<widget name="main_menu/multiplayer_type_select/join_game/filters/empty_servers_label" type="text" width="300" height="22" string_list="main_menu/multiplayer_type_select/join_game/filters/filter_options" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="4">
</widget>
<widget name="main_menu/multiplayer_type_select/join_game/filters/empty_servers_spinner" type="spinner" left="3" top="2" width="187" height="20" flags="pass_unhandled_to_focused_child left_right_tabs_items" string_list="strings/var_boolean" font="ui\large_ui" color="#FF2896FF" align="center" list_flags="items_from_strings" header_bitmap="bitmaps/arrow_sm_left" footer_bitmap="bitmaps/arrow_sm_right" header_bounds="7 -6 19 0" footer_bounds="7 190 19 196">
<on event="left_mouse" run="mouse spinner 1wide click"/>
</widget>
<widget name="main_menu/multiplayer_type_select/join_game/filters/filters_button_bar" type="column_list" width="640" height="28" flags="pass_unhandled_to_focused_child left_right_tabs_items">
<data input="common button bar update"/>
<child widget="main_menu/multiplayer_type_select/join_game/filters/filters_button_ok" x="380" y="1"/>
<child widget="common_button_cancel" x="510" y="1"/>
</widget>
<widget name="main_menu/multiplayer_type_select/join_game/filters/filters_button_ok" type="text" width="128" height="24" bitmap="bitmaps/text_button_background" string_list="strings/common_button_captions" string_index="1" font="ui\small_ui" color="#FFFFFFFF" align="center" text_y="2">
<on event="a" run="gamespy update filter settings"/>
<on event="start" run="gamespy update filter settings"/>
<on event="left_mouse" run="mouse emit accept event"/>
</widget>
<widget name="main_menu/multiplayer_type_select/join_game/filters/filters_help" type="text" controller="1" left="68" top="321" width="482" height="79" string_list="main_menu/multiplayer_type_select/join_game/filters/cap_filter_options" font="ui\large_ui" color="#FFFFFFFF">
</widget>
<widget name="main_menu/multiplayer_type_select/join_game/filters/filters_options_menu" type="column_list" width="640" height="480" flags="pass_unhandled_to_focused_child up_down_tabs_children" description="main_menu/multiplayer_type_select/join_game/filters/filters_help">
<data input="game settings lists text update"/>
<child widget="main_menu/multiplayer_type_select/join_game/filters/op_empty_servers" x="54" y="73"/>
<child widget="main_menu/multiplayer_type_select/join_game/filters/op_full_servers" x="54" y="103"/>
<child widget="main_menu/multiplayer_type_select/join_game/filters/op_ping" x="54" y="133"/>
<child widget="main_menu/multiplayer_type_select/join_game/filters/op_game_type" x="54" y="163"/>
<child widget="main_menu/multiplayer_type_select/join_game/filters/op_game_options" x="54" y="193"/>
<child widget="main_menu/multiplayer_type_select/join_game/filters/op_installed_maps" x="54" y="223"/>
<child widget="main_menu/multiplayer_type_select/join_game/filters/filters_button_bar" y="449"/>
</widget>
<widget name="main_menu/multiplayer_type_select/join_game/filters/filters_screen" width="640" height="480" flags="pass_unhandled_to_focused_child force_handle_mouse" bitmap="bitmaps/gradient_big">
<child widget="main_menu/multiplayer_type_select/join_game/filters/header_filters" y="-21"/>
<child widget="main_menu/multiplayer_type_select/join_game/filters/filters_options_menu"/>
</widget>
<widget name="main_menu/multiplayer_type_select/join_game/filters/full_servers_label" type="text" width="300" height="22" string_list="main_menu/multiplayer_type_select/join_game/filters/filter_options" string_index="1" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="4">
</widget>
<widget name="main_menu/multiplayer_type_select/join_game/filters/full_servers_spinner" type="spinner" left="3" top="2" width="187" height="20" flags="pass_unhandled_to_focused_child left_right_tabs_items" string_list="strings/var_boolean" font="ui\large_ui" color="#FF2896FF" align="center" list_flags="items_from_strings" header_bitmap="bitmaps/arrow_sm_left" footer_bitmap="bitmaps/arrow_sm_right" header_bounds="7 -6 19 0" footer_bounds="7 190 19 196">
<on event="left_mouse" run="mouse spinner 1wide click"/>
</widget>
<widget name="main_menu/multiplayer_type_select/join_game/filters/game_options_label" type="text" controller="1" width="300" height="22" string_list="main_menu/multiplayer_type_select/join_game/filters/filter_options" string_index="4" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="4">
</widget>
<widget name="main_menu/multiplayer_type_select/join_game/filters/game_options_spinner" type="spinner" left="3" top="2" width="187" height="20" flags="pass_unhandled_to_focused_child left_right_tabs_items" string_list="main_menu/multiplayer_type_select/join_game/filters/var_filter_game_options" font="ui\large_ui" color="#FF2896FF" align="center" list_flags="items_from_strings" header_bitmap="bitmaps/arrow_sm_left" footer_bitmap="bitmaps/arrow_sm_right" header_bounds="7 -6 19 0" footer_bounds="7 190 19 196">
<on event="left_mouse" run="mouse spinner 1wide click"/>
</widget>
<widget name="main_menu/multiplayer_type_select/join_game/filters/game_type_label" type="text" controller="1" width="300" height="22" string_list="main_menu/multiplayer_type_select/join_game/filters/filter_options" string_index="3" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="4">
</widget>
<widget name="main_menu/multiplayer_type_select/join_game/filters/game_type_spinner" type="spinner" left="3" top="2" width="187" height="20" flags="pass_unhandled_to_focused_child left_right_tabs_items" string_list="main_menu/multiplayer_type_select/join_game/filters/var_filter_gametype" font="ui\large_ui" color="#FF2896FF" align="center" list_flags="items_from_strings one_tooltip" header_bitmap="bitmaps/arrow_sm_left" footer_bitmap="bitmaps/arrow_sm_right" header_bounds="7 -6 19 0" footer_bounds="7 190 19 196">
<on event="left_mouse" run="mouse spinner 1wide click"/>
</widget>
<widget name="main_menu/multiplayer_type_select/join_game/filters/header_filters" controller="1" left="35" top="11" width="395" height="59" bitmap="main_menu/multiplayer_type_select/join_game/filters/header_filters">
</widget>
<widget name="main_menu/multiplayer_type_select/join_game/filters/installed_maps_label" type="text" width="300" height="22" string_list="main_menu/multiplayer_type_select/join_game/filters/filter_options" string_index="5" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="4">
</widget>
<widget name="main_menu/multiplayer_type_select/join_game/filters/installed_maps_spinner" type="spinner" left="3" top="2" width="187" height="20" flags="pass_unhandled_to_focused_child left_right_tabs_items" string_list="strings/var_boolean" font="ui\large_ui" color="#FF2896FF" align="center" list_flags="items_from_strings" header_bitmap="bitmaps/arrow_sm_left" footer_bitmap="bitmaps/arrow_sm_right" header_bounds="7 -6 19 0" footer_bounds="7 190 19 196">
<on event="left_mouse" run="mouse spinner 1wide click"/>
</widget>
<widget name="main_menu/multiplayer_type_select/join_game/filters/op_empty_servers" width="512" height="28" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/option_bkds" color="#FF2896FF">
<child widget="main_menu/multiplayer_type_select/join_game/filters/empty_servers_label"/>
<child widget="main_menu/multiplayer_type_select/join_game/filters/empty_servers_spinner" x="300" y="1"/>
</widget>
<widget name="main_menu/multiplayer_type_select/join_game/filters/op_full_servers" width="512" height="28" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/option_bkds" color="#FF2896FF">
<child widget="main_menu/multiplayer_type_select/join_game/filters/full_servers_label"/>
<child widget="main_menu/multiplayer_type_select/join_game/filters/full_servers_spinner" x="300" y="1"/>
</widget>
<widget name="main_menu/multiplayer_type_select/join_game/filters/op_game_options" width="512" height="28" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/option_bkds" color="#FF2896FF">
<child widget="main_menu/multiplayer_type_select/join_game/filters/game_options_label"/>
<child widget="main_menu/multiplayer_type_select/join_game/filters/game_options_spinner" x="300" y="1"/>
</widget>
<widget name="main_menu/multiplayer_type_select/join_game/filters/op_game_type" width="512" height="28" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/option_bkds" color="#FF2896FF">
<child widget="main_menu/multiplayer_type_select/join_game/filters/game_type_label"/>
<child widget="main_menu/multiplayer_type_select/join_game/filters/game_type_spinner" x="300" y="1"/>
</widget>
<widget name="main_menu/multiplayer_type_select/join_game/filters/op_installed_maps" width="512" height="28" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/option_bkds" color="#FF2896FF">
<child widget="main_menu/multiplayer_type_select/join_game/filters/installed_maps_label"/>
<child widget="main_menu/multiplayer_type_select/join_game/filters/installed_maps_spinner" x="300" y="1"/>
</widget>
<widget name="main_menu/multiplayer_type_select/join_game/filters/op_ping" width="512" height="28" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/option_bkds" color="#FF2896FF">
<child widget="main_menu/multiplayer_type_select/join_game/filters/ping_label"/>
<child widget="main_menu/multiplayer_type_select/join_game/filters/ping_spinner" x="300" y="1"/>
</widget>
<widget name="main_menu/multiplayer_type_select/join_game/filters/ping_label" type="text" controller="1" width="300" height="22" string_list="main_menu/multiplayer_type_select/join_game/filters/filter_options" string_index="2" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="4">
</widget>
<widget name="main_menu/multiplayer_type_select/join_game/filters/ping_spinner" type="spinner" left="3" top="2" width="187" height="20" flags="pass_unhandled_to_focused_child left_right_tabs_items" string_list="main_menu/multiplayer_type_select/join_game/filters/var_filter_ping" font="ui\large_ui" color="#FF2896FF" align="center" list_flags="items_from_strings one_tooltip" header_bitmap="bitmaps/arrow_sm_left" footer_bitmap="bitmaps/arrow_sm_right" header_bounds="7 -6 19 0" footer_bounds="7 190 19 196">
<on event="left_mouse" run="mouse spinner 1wide click"/>
</widget>
</menus>
@@ -0,0 +1,13 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- The port's multiplayer screens, in the PC version's style (tools/port_settings.py) -->
<menus>
<widget name="main_menu/multiplayer_type_select/join_game/header_server_browser" controller="1" left="35" top="11" width="363" height="59" bitmap="main_menu/multiplayer_type_select/join_game/header_server_browser">
</widget>
<widget name="main_menu/multiplayer_type_select/join_game/header_direct_link" controller="1" left="35" top="11" width="363" height="59" bitmap="main_menu/multiplayer_type_select/join_game/header_direct_link">
</widget>
<widget name="main_menu/multiplayer_type_select/join_game/button_clipboard" type="text" width="128" height="24" bitmap="bitmaps/text_button_background" text="PASTE LINK" font="ui\small_ui" color="#FFFFFFFF" align="center" text_y="2">
<on event="a" run="direct ip connect go"/>
<on event="start" run="direct ip connect go"/>
<on event="left_mouse" run="mouse emit accept event"/>
</widget>
</menus>
@@ -0,0 +1,458 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- The PC version's menus: ui\shell\main_menu\multiplayer_type_select\join_game (tools/ce_menus.py) -->
<menus>
<widget name="main_menu/multiplayer_type_select/join_game/browser_mode_spinner" type="spinner" left="3" top="2" width="97" height="20" flags="pass_unhandled_to_focused_child left_right_tabs_items" string_list="main_menu/multiplayer_type_select/join_game/join_game_mode" font="ui\large_ui" color="#FFCCCCCC" align="center" list_flags="items_from_strings" header_bitmap="bitmaps/arrow_sm_left" footer_bitmap="bitmaps/arrow_sm_right" header_bounds="7 -6 19 0" footer_bounds="7 100 19 106">
<on event="left_mouse" run="mouse spinner 1wide click"/>
</widget>
<widget name="main_menu/multiplayer_type_select/join_game/gamespy_error_fullscreen" width="640" height="480" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/black">
<on event="a" run="gamespy dismiss error"/>
<on event="start" run="gamespy dismiss error"/>
<on event="b" run="gamespy dismiss error"/>
<on event="back" run="gamespy dismiss error"/>
<child widget="error/error_modal"/>
<child widget="error/error_modal_button_bar" x="194" y="309"/>
</widget>
<widget name="main_menu/multiplayer_type_select/join_game/header_internet" controller="1" left="35" top="11" width="363" height="59" bitmap="main_menu/multiplayer_type_select/join_game/header_internet">
</widget>
<widget name="main_menu/multiplayer_type_select/join_game/header_join_game" controller="1" left="35" top="11" width="363" height="59">
<child widget="main_menu/multiplayer_type_select/join_game/header_internet"/>
<child widget="main_menu/multiplayer_type_select/join_game/header_lan"/>
<child widget="main_menu/multiplayer_type_select/join_game/header_server_browser"/>
<child widget="main_menu/multiplayer_type_select/join_game/header_direct_link"/>
</widget>
<widget name="main_menu/multiplayer_type_select/join_game/header_lan" controller="1" left="35" top="11" width="363" height="59" bitmap="main_menu/multiplayer_type_select/join_game/header_lan">
</widget>
<widget name="main_menu/multiplayer_type_select/join_game/header_sort_arrows" width="64" height="32">
<child widget="main_menu/multiplayer_type_select/join_game/header_sort_up_arrow"/>
<child widget="main_menu/multiplayer_type_select/join_game/header_sort_down_arrow"/>
</widget>
<widget name="main_menu/multiplayer_type_select/join_game/header_sort_down_arrow" width="64" height="32" bitmap="bitmaps/arrow_sm_down">
</widget>
<widget name="main_menu/multiplayer_type_select/join_game/header_sort_up_arrow" width="64" height="32" bitmap="bitmaps/arrow_sm_up">
</widget>
<widget name="main_menu/multiplayer_type_select/join_game/item_ticker_player_info" controller="1" width="600" height="18" bitmap="bitmaps/server_item_bkds" color="#0000E500">
<child widget="main_menu/multiplayer_type_select/join_game/ticker_player_info_label"/>
<child widget="main_menu/multiplayer_type_select/join_game/ticker_player_info" x="80"/>
</widget>
<widget name="main_menu/multiplayer_type_select/join_game/item_ticker_rules_info" controller="1" width="600" height="18" bitmap="bitmaps/server_item_bkds" font="ui\small_ui" color="#FFE5E500">
<child widget="main_menu/multiplayer_type_select/join_game/ticker_rules_info_label"/>
<child widget="main_menu/multiplayer_type_select/join_game/ticker_rules_info" x="80"/>
</widget>
<widget name="main_menu/multiplayer_type_select/join_game/join_game_button_bar" type="column_list" width="640" height="28" flags="pass_unhandled_to_focused_child left_right_tabs_items">
<child widget="main_menu/multiplayer_type_select/join_game/join_game_button_refresh" y="1"/>
<child widget="main_menu/multiplayer_type_select/join_game/button_clipboard" x="128" y="1"/>
<child widget="main_menu/multiplayer_type_select/join_game/join_game_button_filters" x="256" y="1"/>
<child widget="main_menu/multiplayer_type_select/join_game/join_game_button_join" x="384" y="1"/>
<child widget="common_button_back" x="512" y="1"/>
</widget>
<widget name="main_menu/multiplayer_type_select/join_game/join_game_button_filters" type="text" width="128" height="24" bitmap="bitmaps/text_button_background" string_list="main_menu/multiplayer_type_select/join_game/join_game_buttons" string_index="3" font="ui\small_ui" color="#FFFFFFFF" align="center" text_y="2">
<on event="a" run="gamespy select button"/>
<on event="start" run="gamespy select button"/>
<on event="left_mouse" run="mouse emit accept event"/>
</widget>
<widget name="main_menu/multiplayer_type_select/join_game/join_game_button_join" type="text" width="128" height="24" bitmap="bitmaps/text_button_background" string_list="main_menu/multiplayer_type_select/join_game/join_game_buttons" string_index="4" font="ui\small_ui" color="#FFFFFFFF" align="center" text_y="2">
<on event="a" run="gamespy select button"/>
<on event="start" run="gamespy select button"/>
<on event="left_mouse" run="mouse emit accept event"/>
</widget>
<widget name="main_menu/multiplayer_type_select/join_game/join_game_button_refresh" type="text" width="128" height="24" bitmap="bitmaps/text_button_background" string_list="main_menu/multiplayer_type_select/join_game/join_game_buttons" string_index="1" font="ui\small_ui" color="#FFFFFFFF" align="center" text_y="2">
<on event="a" run="gamespy select button"/>
<on event="start" run="gamespy select button"/>
<on event="left_mouse" run="mouse emit accept event"/>
</widget>
<widget name="main_menu/multiplayer_type_select/join_game/join_game_button_update" type="text" width="128" height="24" bitmap="bitmaps/text_button_background" string_list="main_menu/multiplayer_type_select/join_game/join_game_buttons" font="ui\small_ui" color="#FFFFFFFF" align="center" text_y="2">
<on event="a" run="gamespy select button"/>
<on event="start" run="gamespy select button"/>
<on event="left_mouse" run="mouse emit accept event"/>
</widget>
<widget name="main_menu/multiplayer_type_select/join_game/join_game_header" type="column_list" width="640" height="18" flags="pass_unhandled_to_focused_child left_right_tabs_items">
<child widget="main_menu/multiplayer_type_select/join_game/op_sort_header_locked" x="10"/>
<child widget="main_menu/multiplayer_type_select/join_game/op_sort_header_dedicated" x="30"/>
<child widget="main_menu/multiplayer_type_select/join_game/op_sort_header_server_name" x="50"/>
<child widget="main_menu/multiplayer_type_select/join_game/op_sort_header_map" x="300"/>
<child widget="main_menu/multiplayer_type_select/join_game/op_sort_header_classic" x="410"/>
<child widget="main_menu/multiplayer_type_select/join_game/op_sort_header_type" x="430"/>
<child widget="main_menu/multiplayer_type_select/join_game/op_sort_header_players" x="520"/>
<child widget="main_menu/multiplayer_type_select/join_game/op_sort_header_ping" x="580"/>
</widget>
<widget name="main_menu/multiplayer_type_select/join_game/join_game_items_list" type="column_list" width="640" height="480" flags="pass_unhandled_to_focused_child up_down_tabs_children" bitmap="bitmaps/join_game_border" description="main_menu/multiplayer_type_select/join_game/screen_stats_container">
<data input="gamespy screen update"/>
<child widget="main_menu/multiplayer_type_select/join_game/op_browser_mode" x="10" y="55"/>
<child widget="main_menu/multiplayer_type_select/join_game/join_game_header" y="83"/>
<child widget="main_menu/multiplayer_type_select/join_game/scroll_up_button" x="20" y="102"/>
<child widget="main_menu/multiplayer_type_select/join_game/server_item_1" x="10" y="102"/>
<child widget="main_menu/multiplayer_type_select/join_game/server_item_2" x="10" y="119"/>
<child widget="main_menu/multiplayer_type_select/join_game/server_item_3" x="10" y="136"/>
<child widget="main_menu/multiplayer_type_select/join_game/server_item_4" x="10" y="153"/>
<child widget="main_menu/multiplayer_type_select/join_game/server_item_5" x="10" y="170"/>
<child widget="main_menu/multiplayer_type_select/join_game/server_item_6" x="10" y="187"/>
<child widget="main_menu/multiplayer_type_select/join_game/server_item_7" x="10" y="204"/>
<child widget="main_menu/multiplayer_type_select/join_game/server_item_8" x="10" y="221"/>
<child widget="main_menu/multiplayer_type_select/join_game/server_item_9" x="10" y="238"/>
<child widget="main_menu/multiplayer_type_select/join_game/server_item_10" x="10" y="255"/>
<child widget="main_menu/multiplayer_type_select/join_game/server_item_11" x="10" y="272"/>
<child widget="main_menu/multiplayer_type_select/join_game/server_item_12" x="10" y="289"/>
<child widget="main_menu/multiplayer_type_select/join_game/server_item_13" x="10" y="306"/>
<child widget="main_menu/multiplayer_type_select/join_game/server_item_14" x="10" y="323"/>
<child widget="main_menu/multiplayer_type_select/join_game/server_item_15" x="10" y="340"/>
<child widget="main_menu/multiplayer_type_select/join_game/scroll_down_button" x="20" y="375"/>
<child widget="main_menu/multiplayer_type_select/join_game/item_ticker_player_info" x="20" y="402"/>
<child widget="main_menu/multiplayer_type_select/join_game/item_ticker_rules_info" x="20" y="420"/>
<child widget="main_menu/multiplayer_type_select/join_game/join_game_button_bar" y="449"/>
</widget>
<widget name="main_menu/multiplayer_type_select/join_game/join_game_screen" width="640" height="480" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/gradient_big">
<on event="created" run="gamespy screen init"/>
<on event="deleted" run="gamespy screen dispose"/>
<on event="b" run="gamespy back handler"/>
<on event="back" run="gamespy back handler"/>
<child widget="main_menu/multiplayer_type_select/join_game/header_join_game" y="-21"/>
<child widget="main_menu/multiplayer_type_select/join_game/join_game_items_list"/>
<child widget="main_menu/multiplayer_type_select/join_game/gamespy_error_fullscreen"/>
<child widget="main_menu/multiplayer_type_select/join_game/filters/filters_screen"/>
</widget>
<widget name="main_menu/multiplayer_type_select/join_game/op_browser_mode" width="150" height="28" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/option_bkds_sm2" color="#FF2896FF">
<child widget="main_menu/multiplayer_type_select/join_game/browser_mode_spinner" x="25" y="1"/>
</widget>
<widget name="main_menu/multiplayer_type_select/join_game/op_sort_header_classic" width="20" height="18" bitmap="bitmaps/server_header_background_0" string_list="main_menu/multiplayer_type_select/join_game/join_game_column_headers" string_index="1" font="ui\small_ui" color="#FFFFFFFF" text_y="1">
<on event="a" run="gamespy select header"/>
<on event="start" run="gamespy select header"/>
<on event="left_mouse" run="mouse emit accept event"/>
<child widget="main_menu/multiplayer_type_select/join_game/sort_header_classic"/>
</widget>
<widget name="main_menu/multiplayer_type_select/join_game/op_sort_header_dedicated" width="20" height="18" bitmap="bitmaps/server_header_background_0" string_list="main_menu/multiplayer_type_select/join_game/join_game_column_headers" string_index="1" font="ui\small_ui" color="#FFFFFFFF" text_y="1">
<on event="a" run="gamespy select header"/>
<on event="start" run="gamespy select header"/>
<on event="left_mouse" run="mouse emit accept event"/>
<child widget="main_menu/multiplayer_type_select/join_game/sort_header_dedicated"/>
</widget>
<widget name="main_menu/multiplayer_type_select/join_game/op_sort_header_locked" width="20" height="18" bitmap="bitmaps/server_header_background_0" string_list="main_menu/multiplayer_type_select/join_game/join_game_column_headers" string_index="1" font="ui\small_ui" color="#FF2896FF" text_y="1">
<on event="a" run="gamespy select header"/>
<on event="start" run="gamespy select header"/>
<on event="left_mouse" run="mouse emit accept event"/>
<child widget="main_menu/multiplayer_type_select/join_game/sort_header_locked"/>
</widget>
<widget name="main_menu/multiplayer_type_select/join_game/op_sort_header_map" type="column_list" width="110" height="18" bitmap="bitmaps/server_header_background_2" color="#FF2896FF">
<on event="a" run="gamespy select header"/>
<on event="start" run="gamespy select header"/>
<on event="left_mouse" run="mouse emit accept event"/>
<child widget="main_menu/multiplayer_type_select/join_game/header_sort_arrows" x="36" y="4"/>
<child widget="main_menu/multiplayer_type_select/join_game/sort_header_map"/>
</widget>
<widget name="main_menu/multiplayer_type_select/join_game/op_sort_header_ping" type="column_list" width="50" height="18" bitmap="bitmaps/server_header_background_1" color="#FF2896FF">
<on event="a" run="gamespy select header"/>
<on event="start" run="gamespy select header"/>
<on event="left_mouse" run="gamespy select header"/>
<child widget="main_menu/multiplayer_type_select/join_game/header_sort_arrows" x="4" y="4"/>
<child widget="main_menu/multiplayer_type_select/join_game/sort_header_ping"/>
</widget>
<widget name="main_menu/multiplayer_type_select/join_game/op_sort_header_players" type="column_list" width="60" height="18" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/server_header_background_1" color="#FF2896FF">
<on event="a" run="gamespy select header"/>
<on event="start" run="NULL"/>
<on event="left_mouse" run="mouse emit accept event"/>
<child widget="main_menu/multiplayer_type_select/join_game/header_sort_arrows" x="8" y="4"/>
<child widget="main_menu/multiplayer_type_select/join_game/sort_header_players"/>
</widget>
<widget name="main_menu/multiplayer_type_select/join_game/op_sort_header_server_name" type="column_list" width="250" height="18" bitmap="bitmaps/server_header_background_3" color="#FF2896FF">
<on event="a" run="gamespy select header"/>
<on event="start" run="gamespy select header"/>
<on event="left_mouse" run="mouse emit accept event"/>
<child widget="main_menu/multiplayer_type_select/join_game/header_sort_arrows" x="104" y="4"/>
<child widget="main_menu/multiplayer_type_select/join_game/sort_header_server_name"/>
</widget>
<widget name="main_menu/multiplayer_type_select/join_game/op_sort_header_type" type="column_list" width="90" height="18" bitmap="bitmaps/server_header_background_2" color="#FF2896FF" align="center">
<on event="a" run="gamespy select header"/>
<on event="start" run="gamespy select header"/>
<on event="left_mouse" run="mouse emit accept event"/>
<child widget="main_menu/multiplayer_type_select/join_game/header_sort_arrows" x="24" y="4"/>
<child widget="main_menu/multiplayer_type_select/join_game/sort_header_type"/>
</widget>
<widget name="main_menu/multiplayer_type_select/join_game/page_count_label" type="text" controller="1" width="170" height="30" font="ui\small_ui" color="#FFFFFFFF" text_flags="no_focus_test">
</widget>
<widget name="main_menu/multiplayer_type_select/join_game/player_count_label" type="text" controller="1" width="170" height="30" font="ui\small_ui" color="#FFFFFFFF" text_flags="no_focus_test">
</widget>
<widget name="main_menu/multiplayer_type_select/join_game/screen_stats_container" controller="1" width="640" height="480" color="#FFFFFFFF" align="right">
<child widget="main_menu/multiplayer_type_select/join_game/server_count_label" x="450" y="60"/>
<child widget="main_menu/multiplayer_type_select/join_game/player_count_label" x="15" y="60"/>
<child widget="main_menu/multiplayer_type_select/join_game/page_count_label" x="310" y="60"/>
</widget>
<widget name="main_menu/multiplayer_type_select/join_game/scroll_down_arrow" width="64" height="32" bitmap="bitmaps/arrow_sm_down">
</widget>
<widget name="main_menu/multiplayer_type_select/join_game/scroll_down_button" controller="1" width="600" height="18" bitmap="bitmaps/server_item_bkds">
<on event="a" run="gamespy select item"/>
<on event="start" run="gamespy select item"/>
<on event="left_mouse" run="mouse emit accept event"/>
<child widget="main_menu/multiplayer_type_select/join_game/scroll_down_arrow" x="268" y="3"/>
</widget>
<widget name="main_menu/multiplayer_type_select/join_game/scroll_up_arrow" width="64" height="32" bitmap="bitmaps/arrow_sm_up">
</widget>
<widget name="main_menu/multiplayer_type_select/join_game/scroll_up_button" controller="1" width="600" height="18" bitmap="bitmaps/server_item_bkds">
<on event="a" run="gamespy select item"/>
<on event="start" run="gamespy select item"/>
<on event="left_mouse" run="mouse emit accept event"/>
<child widget="main_menu/multiplayer_type_select/join_game/scroll_up_arrow" x="268" y="3"/>
</widget>
<widget name="main_menu/multiplayer_type_select/join_game/server_count_label" type="text" controller="1" width="170" height="30" font="ui\small_ui" color="#FFFFFFFF" align="right" text_flags="no_focus_test">
</widget>
<widget name="main_menu/multiplayer_type_select/join_game/server_item_1" width="620" height="18" bitmap="bitmaps/server_item_bkds">
<on event="a" run="gamespy select item"/>
<on event="start" run="gamespy select item"/>
<on event="left_mouse" run="mouse emit accept event"/>
<on event="double_click" run="gamespy select item"/>
<child widget="main_menu/multiplayer_type_select/join_game/server_item_locked" x="4"/>
<child widget="main_menu/multiplayer_type_select/join_game/server_item_dedicated" x="20"/>
<child widget="main_menu/multiplayer_type_select/join_game/server_item_server_name" x="40"/>
<child widget="main_menu/multiplayer_type_select/join_game/server_item_map" x="290"/>
<child widget="main_menu/multiplayer_type_select/join_game/server_item_classic" x="400"/>
<child widget="main_menu/multiplayer_type_select/join_game/server_item_type" x="420"/>
<child widget="main_menu/multiplayer_type_select/join_game/server_item_players" x="510"/>
<child widget="main_menu/multiplayer_type_select/join_game/server_item_ping" x="570"/>
</widget>
<widget name="main_menu/multiplayer_type_select/join_game/server_item_10" width="620" height="18" bitmap="bitmaps/server_item_bkds">
<on event="a" run="gamespy select item"/>
<on event="start" run="gamespy select item"/>
<on event="left_mouse" run="mouse emit accept event"/>
<on event="double_click" run="gamespy select item"/>
<child widget="main_menu/multiplayer_type_select/join_game/server_item_locked" x="4"/>
<child widget="main_menu/multiplayer_type_select/join_game/server_item_dedicated" x="20"/>
<child widget="main_menu/multiplayer_type_select/join_game/server_item_server_name" x="40"/>
<child widget="main_menu/multiplayer_type_select/join_game/server_item_map" x="290"/>
<child widget="main_menu/multiplayer_type_select/join_game/server_item_classic" x="400"/>
<child widget="main_menu/multiplayer_type_select/join_game/server_item_type" x="420"/>
<child widget="main_menu/multiplayer_type_select/join_game/server_item_players" x="510"/>
<child widget="main_menu/multiplayer_type_select/join_game/server_item_ping" x="570"/>
</widget>
<widget name="main_menu/multiplayer_type_select/join_game/server_item_11" width="620" height="18" bitmap="bitmaps/server_item_bkds">
<on event="a" run="gamespy select item"/>
<on event="start" run="gamespy select item"/>
<on event="left_mouse" run="mouse emit accept event"/>
<on event="double_click" run="gamespy select item"/>
<child widget="main_menu/multiplayer_type_select/join_game/server_item_locked" x="4"/>
<child widget="main_menu/multiplayer_type_select/join_game/server_item_dedicated" x="20"/>
<child widget="main_menu/multiplayer_type_select/join_game/server_item_server_name" x="40"/>
<child widget="main_menu/multiplayer_type_select/join_game/server_item_map" x="290"/>
<child widget="main_menu/multiplayer_type_select/join_game/server_item_classic" x="400"/>
<child widget="main_menu/multiplayer_type_select/join_game/server_item_type" x="420"/>
<child widget="main_menu/multiplayer_type_select/join_game/server_item_players" x="510"/>
<child widget="main_menu/multiplayer_type_select/join_game/server_item_ping" x="570"/>
</widget>
<widget name="main_menu/multiplayer_type_select/join_game/server_item_12" width="620" height="18" bitmap="bitmaps/server_item_bkds">
<on event="a" run="gamespy select item"/>
<on event="start" run="gamespy select item"/>
<on event="left_mouse" run="mouse emit accept event"/>
<on event="double_click" run="gamespy select item"/>
<child widget="main_menu/multiplayer_type_select/join_game/server_item_locked" x="4"/>
<child widget="main_menu/multiplayer_type_select/join_game/server_item_dedicated" x="20"/>
<child widget="main_menu/multiplayer_type_select/join_game/server_item_server_name" x="40"/>
<child widget="main_menu/multiplayer_type_select/join_game/server_item_map" x="290"/>
<child widget="main_menu/multiplayer_type_select/join_game/server_item_classic" x="400"/>
<child widget="main_menu/multiplayer_type_select/join_game/server_item_type" x="420"/>
<child widget="main_menu/multiplayer_type_select/join_game/server_item_players" x="510"/>
<child widget="main_menu/multiplayer_type_select/join_game/server_item_ping" x="570"/>
</widget>
<widget name="main_menu/multiplayer_type_select/join_game/server_item_13" width="620" height="18" bitmap="bitmaps/server_item_bkds">
<on event="a" run="gamespy select item"/>
<on event="start" run="gamespy select item"/>
<on event="left_mouse" run="mouse emit accept event"/>
<on event="double_click" run="gamespy select item"/>
<child widget="main_menu/multiplayer_type_select/join_game/server_item_locked" x="4"/>
<child widget="main_menu/multiplayer_type_select/join_game/server_item_dedicated" x="20"/>
<child widget="main_menu/multiplayer_type_select/join_game/server_item_server_name" x="40"/>
<child widget="main_menu/multiplayer_type_select/join_game/server_item_map" x="290"/>
<child widget="main_menu/multiplayer_type_select/join_game/server_item_classic" x="400"/>
<child widget="main_menu/multiplayer_type_select/join_game/server_item_type" x="420"/>
<child widget="main_menu/multiplayer_type_select/join_game/server_item_players" x="510"/>
<child widget="main_menu/multiplayer_type_select/join_game/server_item_ping" x="570"/>
</widget>
<widget name="main_menu/multiplayer_type_select/join_game/server_item_14" width="620" height="18" bitmap="bitmaps/server_item_bkds">
<on event="a" run="gamespy select item"/>
<on event="start" run="gamespy select item"/>
<on event="left_mouse" run="mouse emit accept event"/>
<on event="double_click" run="gamespy select item"/>
<child widget="main_menu/multiplayer_type_select/join_game/server_item_locked" x="4"/>
<child widget="main_menu/multiplayer_type_select/join_game/server_item_dedicated" x="20"/>
<child widget="main_menu/multiplayer_type_select/join_game/server_item_server_name" x="40"/>
<child widget="main_menu/multiplayer_type_select/join_game/server_item_map" x="290"/>
<child widget="main_menu/multiplayer_type_select/join_game/server_item_classic" x="400"/>
<child widget="main_menu/multiplayer_type_select/join_game/server_item_type" x="420"/>
<child widget="main_menu/multiplayer_type_select/join_game/server_item_players" x="510"/>
<child widget="main_menu/multiplayer_type_select/join_game/server_item_ping" x="570"/>
</widget>
<widget name="main_menu/multiplayer_type_select/join_game/server_item_15" width="620" height="18" bitmap="bitmaps/server_item_bkds">
<on event="a" run="gamespy select item"/>
<on event="start" run="gamespy select item"/>
<on event="left_mouse" run="mouse emit accept event"/>
<on event="double_click" run="gamespy select item"/>
<child widget="main_menu/multiplayer_type_select/join_game/server_item_locked" x="4"/>
<child widget="main_menu/multiplayer_type_select/join_game/server_item_dedicated" x="20"/>
<child widget="main_menu/multiplayer_type_select/join_game/server_item_server_name" x="40"/>
<child widget="main_menu/multiplayer_type_select/join_game/server_item_map" x="290"/>
<child widget="main_menu/multiplayer_type_select/join_game/server_item_classic" x="400"/>
<child widget="main_menu/multiplayer_type_select/join_game/server_item_type" x="420"/>
<child widget="main_menu/multiplayer_type_select/join_game/server_item_players" x="510"/>
<child widget="main_menu/multiplayer_type_select/join_game/server_item_ping" x="570"/>
</widget>
<widget name="main_menu/multiplayer_type_select/join_game/server_item_2" width="620" height="18" bitmap="bitmaps/server_item_bkds">
<on event="a" run="gamespy select item"/>
<on event="start" run="gamespy select item"/>
<on event="left_mouse" run="mouse emit accept event"/>
<on event="double_click" run="gamespy select item"/>
<child widget="main_menu/multiplayer_type_select/join_game/server_item_locked" x="4"/>
<child widget="main_menu/multiplayer_type_select/join_game/server_item_dedicated" x="20"/>
<child widget="main_menu/multiplayer_type_select/join_game/server_item_server_name" x="40"/>
<child widget="main_menu/multiplayer_type_select/join_game/server_item_map" x="290"/>
<child widget="main_menu/multiplayer_type_select/join_game/server_item_classic" x="400"/>
<child widget="main_menu/multiplayer_type_select/join_game/server_item_type" x="420"/>
<child widget="main_menu/multiplayer_type_select/join_game/server_item_players" x="510"/>
<child widget="main_menu/multiplayer_type_select/join_game/server_item_ping" x="570"/>
</widget>
<widget name="main_menu/multiplayer_type_select/join_game/server_item_3" width="620" height="18" bitmap="bitmaps/server_item_bkds">
<on event="a" run="gamespy select item"/>
<on event="start" run="gamespy select item"/>
<on event="left_mouse" run="mouse emit accept event"/>
<on event="double_click" run="gamespy select item"/>
<child widget="main_menu/multiplayer_type_select/join_game/server_item_locked" x="4"/>
<child widget="main_menu/multiplayer_type_select/join_game/server_item_dedicated" x="20"/>
<child widget="main_menu/multiplayer_type_select/join_game/server_item_server_name" x="40"/>
<child widget="main_menu/multiplayer_type_select/join_game/server_item_map" x="290"/>
<child widget="main_menu/multiplayer_type_select/join_game/server_item_classic" x="400"/>
<child widget="main_menu/multiplayer_type_select/join_game/server_item_type" x="420"/>
<child widget="main_menu/multiplayer_type_select/join_game/server_item_players" x="510"/>
<child widget="main_menu/multiplayer_type_select/join_game/server_item_ping" x="570"/>
</widget>
<widget name="main_menu/multiplayer_type_select/join_game/server_item_4" width="620" height="18" bitmap="bitmaps/server_item_bkds">
<on event="a" run="gamespy select item"/>
<on event="start" run="gamespy select item"/>
<on event="left_mouse" run="mouse emit accept event"/>
<on event="double_click" run="gamespy select item"/>
<child widget="main_menu/multiplayer_type_select/join_game/server_item_locked" x="4"/>
<child widget="main_menu/multiplayer_type_select/join_game/server_item_dedicated" x="20"/>
<child widget="main_menu/multiplayer_type_select/join_game/server_item_server_name" x="40"/>
<child widget="main_menu/multiplayer_type_select/join_game/server_item_map" x="290"/>
<child widget="main_menu/multiplayer_type_select/join_game/server_item_classic" x="400"/>
<child widget="main_menu/multiplayer_type_select/join_game/server_item_type" x="420"/>
<child widget="main_menu/multiplayer_type_select/join_game/server_item_players" x="510"/>
<child widget="main_menu/multiplayer_type_select/join_game/server_item_ping" x="570"/>
</widget>
<widget name="main_menu/multiplayer_type_select/join_game/server_item_5" width="620" height="18" bitmap="bitmaps/server_item_bkds">
<on event="a" run="gamespy select item"/>
<on event="start" run="gamespy select item"/>
<on event="left_mouse" run="mouse emit accept event"/>
<on event="double_click" run="gamespy select item"/>
<child widget="main_menu/multiplayer_type_select/join_game/server_item_locked" x="4"/>
<child widget="main_menu/multiplayer_type_select/join_game/server_item_dedicated" x="20"/>
<child widget="main_menu/multiplayer_type_select/join_game/server_item_server_name" x="40"/>
<child widget="main_menu/multiplayer_type_select/join_game/server_item_map" x="290"/>
<child widget="main_menu/multiplayer_type_select/join_game/server_item_classic" x="400"/>
<child widget="main_menu/multiplayer_type_select/join_game/server_item_type" x="420"/>
<child widget="main_menu/multiplayer_type_select/join_game/server_item_players" x="510"/>
<child widget="main_menu/multiplayer_type_select/join_game/server_item_ping" x="570"/>
</widget>
<widget name="main_menu/multiplayer_type_select/join_game/server_item_6" width="620" height="18" bitmap="bitmaps/server_item_bkds">
<on event="a" run="gamespy select item"/>
<on event="start" run="gamespy select item"/>
<on event="left_mouse" run="mouse emit accept event"/>
<on event="double_click" run="gamespy select item"/>
<child widget="main_menu/multiplayer_type_select/join_game/server_item_locked" x="4"/>
<child widget="main_menu/multiplayer_type_select/join_game/server_item_dedicated" x="20"/>
<child widget="main_menu/multiplayer_type_select/join_game/server_item_server_name" x="40"/>
<child widget="main_menu/multiplayer_type_select/join_game/server_item_map" x="290"/>
<child widget="main_menu/multiplayer_type_select/join_game/server_item_classic" x="400"/>
<child widget="main_menu/multiplayer_type_select/join_game/server_item_type" x="420"/>
<child widget="main_menu/multiplayer_type_select/join_game/server_item_players" x="510"/>
<child widget="main_menu/multiplayer_type_select/join_game/server_item_ping" x="570"/>
</widget>
<widget name="main_menu/multiplayer_type_select/join_game/server_item_7" width="620" height="18" bitmap="bitmaps/server_item_bkds">
<on event="a" run="gamespy select item"/>
<on event="start" run="gamespy select item"/>
<on event="left_mouse" run="mouse emit accept event"/>
<on event="double_click" run="gamespy select item"/>
<child widget="main_menu/multiplayer_type_select/join_game/server_item_locked" x="4"/>
<child widget="main_menu/multiplayer_type_select/join_game/server_item_dedicated" x="20"/>
<child widget="main_menu/multiplayer_type_select/join_game/server_item_server_name" x="40"/>
<child widget="main_menu/multiplayer_type_select/join_game/server_item_map" x="290"/>
<child widget="main_menu/multiplayer_type_select/join_game/server_item_classic" x="400"/>
<child widget="main_menu/multiplayer_type_select/join_game/server_item_type" x="420"/>
<child widget="main_menu/multiplayer_type_select/join_game/server_item_players" x="510"/>
<child widget="main_menu/multiplayer_type_select/join_game/server_item_ping" x="570"/>
</widget>
<widget name="main_menu/multiplayer_type_select/join_game/server_item_8" width="620" height="18" bitmap="bitmaps/server_item_bkds">
<on event="a" run="gamespy select item"/>
<on event="start" run="gamespy select item"/>
<on event="left_mouse" run="mouse emit accept event"/>
<on event="double_click" run="gamespy select item"/>
<child widget="main_menu/multiplayer_type_select/join_game/server_item_locked" x="4"/>
<child widget="main_menu/multiplayer_type_select/join_game/server_item_dedicated" x="20"/>
<child widget="main_menu/multiplayer_type_select/join_game/server_item_server_name" x="40"/>
<child widget="main_menu/multiplayer_type_select/join_game/server_item_map" x="290"/>
<child widget="main_menu/multiplayer_type_select/join_game/server_item_classic" x="400"/>
<child widget="main_menu/multiplayer_type_select/join_game/server_item_type" x="420"/>
<child widget="main_menu/multiplayer_type_select/join_game/server_item_players" x="510"/>
<child widget="main_menu/multiplayer_type_select/join_game/server_item_ping" x="570"/>
</widget>
<widget name="main_menu/multiplayer_type_select/join_game/server_item_9" width="620" height="18" bitmap="bitmaps/server_item_bkds">
<on event="a" run="gamespy select item"/>
<on event="start" run="gamespy select item"/>
<on event="left_mouse" run="mouse emit accept event"/>
<on event="double_click" run="gamespy select item"/>
<child widget="main_menu/multiplayer_type_select/join_game/server_item_locked" x="4"/>
<child widget="main_menu/multiplayer_type_select/join_game/server_item_dedicated" x="20"/>
<child widget="main_menu/multiplayer_type_select/join_game/server_item_server_name" x="40"/>
<child widget="main_menu/multiplayer_type_select/join_game/server_item_map" x="290"/>
<child widget="main_menu/multiplayer_type_select/join_game/server_item_classic" x="400"/>
<child widget="main_menu/multiplayer_type_select/join_game/server_item_type" x="420"/>
<child widget="main_menu/multiplayer_type_select/join_game/server_item_players" x="510"/>
<child widget="main_menu/multiplayer_type_select/join_game/server_item_ping" x="570"/>
</widget>
<widget name="main_menu/multiplayer_type_select/join_game/server_item_classic" width="16" height="18" bitmap="main_menu/multiplayer_type_select/join_game/classic_icon" font="ui\small_ui" color="#FFFFFFFF" text_y="1">
</widget>
<widget name="main_menu/multiplayer_type_select/join_game/server_item_dedicated" width="16" height="18" bitmap="main_menu/multiplayer_type_select/join_game/dedicated_icon" font="ui\small_ui" color="#FFFFFFFF" text_y="1">
</widget>
<widget name="main_menu/multiplayer_type_select/join_game/server_item_locked" width="16" height="18" bitmap="main_menu/multiplayer_type_select/join_game/locked_icon" font="ui\small_ui" color="#FFFFFFFF" text_y="1">
</widget>
<widget name="main_menu/multiplayer_type_select/join_game/server_item_map" type="text" width="107" height="18" font="ui\small_ui" color="#FFFFFFFF" text_y="1">
</widget>
<widget name="main_menu/multiplayer_type_select/join_game/server_item_ping" type="text" width="50" height="18" font="ui\small_ui" color="#FFFFFFFF" text_y="1">
</widget>
<widget name="main_menu/multiplayer_type_select/join_game/server_item_players" type="text" width="57" height="18" font="ui\small_ui" color="#FFFFFFFF" text_y="1">
</widget>
<widget name="main_menu/multiplayer_type_select/join_game/server_item_server_name" type="text" width="247" height="18" font="ui\small_ui" color="#FFFFFFFF" text_y="1">
</widget>
<widget name="main_menu/multiplayer_type_select/join_game/server_item_type" type="text" width="87" height="18" font="ui\small_ui" color="#FFFFFFFF" text_y="1">
</widget>
<widget name="main_menu/multiplayer_type_select/join_game/sort_header_classic" width="20" height="18" bitmap="main_menu/multiplayer_type_select/join_game/classic_icon" string_list="main_menu/multiplayer_type_select/join_game/join_game_column_headers" string_index="1" font="ui\small_ui" color="#FFFFFFFF" text_y="1">
</widget>
<widget name="main_menu/multiplayer_type_select/join_game/sort_header_dedicated" width="20" height="18" bitmap="main_menu/multiplayer_type_select/join_game/dedicated_icon" string_list="main_menu/multiplayer_type_select/join_game/join_game_column_headers" string_index="1" font="ui\small_ui" color="#FFFFFFFF" text_y="1">
</widget>
<widget name="main_menu/multiplayer_type_select/join_game/sort_header_locked" width="20" height="18" bitmap="main_menu/multiplayer_type_select/join_game/locked_icon" string_list="main_menu/multiplayer_type_select/join_game/join_game_column_headers" string_index="1" font="ui\small_ui" color="#FF2896FF" text_y="1">
</widget>
<widget name="main_menu/multiplayer_type_select/join_game/sort_header_map" type="text" width="110" height="18" string_list="main_menu/multiplayer_type_select/join_game/join_game_column_headers" string_index="1" font="ui\small_ui" color="#FF2896FF" align="center" text_x="2" text_y="1">
<on event="a"/>
<on event="start" run="gamespy select header"/>
<on event="left_mouse" run="mouse emit accept event"/>
</widget>
<widget name="main_menu/multiplayer_type_select/join_game/sort_header_ping" type="text" width="50" height="18" string_list="main_menu/multiplayer_type_select/join_game/join_game_column_headers" string_index="4" font="ui\small_ui" color="#FF2896FF" align="center" text_x="2" text_y="1">
<on event="a"/>
<on event="start" run="gamespy select header"/>
<on event="left_mouse" run="gamespy select header"/>
</widget>
<widget name="main_menu/multiplayer_type_select/join_game/sort_header_players" type="text" width="60" height="18" string_list="main_menu/multiplayer_type_select/join_game/join_game_column_headers" string_index="2" font="ui\small_ui" color="#FF2896FF" align="center" text_x="2" text_y="1">
</widget>
<widget name="main_menu/multiplayer_type_select/join_game/sort_header_server_name" type="text" width="250" height="18" string_list="main_menu/multiplayer_type_select/join_game/join_game_column_headers" font="ui\small_ui" color="#FF2896FF" align="center" text_x="2" text_y="1">
<on event="a"/>
<on event="start" run="gamespy select header"/>
<on event="left_mouse" run="mouse emit accept event"/>
</widget>
<widget name="main_menu/multiplayer_type_select/join_game/sort_header_type" type="text" width="90" height="18" string_list="main_menu/multiplayer_type_select/join_game/join_game_column_headers" string_index="3" font="ui\small_ui" color="#FF2896FF" align="center" text_x="2" text_y="1">
<on event="a" run="gamespy select header"/>
<on event="start" run="gamespy select header"/>
<on event="left_mouse" run="mouse emit accept event"/>
</widget>
<widget name="main_menu/multiplayer_type_select/join_game/ticker_player_info" type="text" controller="1" width="520" height="18" font="ui\small_ui" color="#FFE5E500" text_flags="no_focus_test" text_y="1">
</widget>
<widget name="main_menu/multiplayer_type_select/join_game/ticker_player_info_label" type="text" controller="1" width="80" height="18" string_list="main_menu/multiplayer_type_select/join_game/join_game_ticker_labels" font="ui\small_ui" color="#FF2896FF">
</widget>
<widget name="main_menu/multiplayer_type_select/join_game/ticker_rules_info" type="text" controller="1" width="520" height="18" font="ui\small_ui" color="#FFE5E500" text_flags="no_focus_test" text_y="1">
</widget>
<widget name="main_menu/multiplayer_type_select/join_game/ticker_rules_info_label" type="text" controller="1" width="80" height="18" string_list="main_menu/multiplayer_type_select/join_game/join_game_ticker_labels" string_index="1" font="ui\small_ui" color="#FF2896FF">
</widget>
</menus>
@@ -0,0 +1,95 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- The port's multiplayer screens, in the PC version's style (tools/port_settings.py) -->
<menus>
<widget name="main_menu/multiplayer_type_select/lobby/lobby_screen" width="640" height="480" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/gradient">
<on event="created" run="net server accept conx"/>
<on event="created" run="net server allow start"/>
<on event="b" run="net game unjoin player" back="true"/>
<on event="back" run="net game unjoin player" back="true"/>
<child widget="main_menu/new_select/sel_list_desc_bkd"/>
<child widget="main_menu/multiplayer_type_select/lobby/lobby_list"/>
<child widget="main_menu/multiplayer_type_select/lobby/header_lobby"/>
</widget>
<widget name="main_menu/multiplayer_type_select/lobby/header_lobby" controller="1" left="35" top="11" width="363" height="59" bitmap="main_menu/multiplayer_type_select/lobby/header_lobby">
</widget>
<widget name="main_menu/multiplayer_type_select/lobby/lobby_list" type="column_list" width="640" height="480" flags="pass_unhandled_to_focused_child up_down_tabs_children" description="main_menu/multiplayer_type_select/lobby/lobby_desc">
<data input="net splitscreen prejoin players"/>
<data input="port lobby update"/>
<on event="left right" run="swap player team"/>
<child widget="main_menu/new_select/list_item_0" x="20" y="73"/>
<child widget="main_menu/new_select/list_item_1" x="20" y="103"/>
<child widget="main_menu/new_select/list_item_2" x="20" y="133"/>
<child widget="main_menu/new_select/list_item_3" x="20" y="163"/>
<child widget="main_menu/new_select/list_item_4" x="20" y="193"/>
<child widget="main_menu/new_select/list_item_5" x="20" y="223"/>
<child widget="main_menu/new_select/list_item_6" x="20" y="253"/>
<child widget="main_menu/new_select/list_item_7" x="20" y="283"/>
<child widget="main_menu/new_select/list_item_8" x="20" y="313"/>
<child widget="main_menu/new_select/list_item_9" x="20" y="343"/>
<child widget="main_menu/new_select/list_item_10" x="20" y="373"/>
<child widget="main_menu/multiplayer_type_select/lobby/lobby_button_bar" y="414"/>
</widget>
<widget name="main_menu/multiplayer_type_select/lobby/lobby_desc" width="640" height="480">
<child widget="main_menu/current_profile_name"/>
<child widget="main_menu/multiplayer_type_select/lobby/lobby_right_item" x="22" y="2"/>
</widget>
<widget name="main_menu/multiplayer_type_select/lobby/lobby_right_item" controller="1" left="406" top="75" width="162" height="326" bitmap="bitmaps/spinner_list_3_wide_item_background">
<child widget="main_menu/multiplayer_type_select/lobby/lobby_map_pic"/>
<child widget="main_menu/multiplayer_type_select/lobby/lobby_map_name"/>
<child widget="main_menu/multiplayer_type_select/lobby/lobby_game_data"/>
</widget>
<widget name="main_menu/multiplayer_type_select/lobby/lobby_map_pic" controller="1" left="419" top="87" width="140" height="114" bitmap="ui\shell\bitmaps\mp_map_grafix">
</widget>
<widget name="main_menu/multiplayer_type_select/lobby/lobby_map_name" type="text" controller="1" left="417" top="204" width="146" height="43" string_list="main_menu/mp_map_list" font="ui\large_ui" color="#FF2896FF">
</widget>
<widget name="main_menu/multiplayer_type_select/lobby/lobby_game_data" type="text" controller="1" left="417" top="250" width="146" height="144" font="ui\small_ui" color="#FF2896FF">
</widget>
<widget name="main_menu/multiplayer_type_select/lobby/lobby_button_bar" type="column_list" width="640" height="28" flags="pass_unhandled_to_focused_child left_right_tabs_items">
<child widget="main_menu/multiplayer_type_select/lobby/lobby_button_team" x="250" y="1"/>
<child widget="main_menu/multiplayer_type_select/lobby/lobby_button_start" x="380" y="1"/>
<child widget="main_menu/multiplayer_type_select/lobby/lobby_button_leave" x="510" y="1"/>
</widget>
<widget name="main_menu/multiplayer_type_select/lobby/lobby_button_team" type="text" width="128" height="24" bitmap="bitmaps/text_button_background" text="SWITCH TEAM" font="ui\small_ui" color="#FFFFFFFF" align="center" text_y="2">
<on event="a" run="swap player team"/>
<on event="start" run="swap player team"/>
<on event="left_mouse" run="mouse emit accept event"/>
</widget>
<widget name="main_menu/multiplayer_type_select/lobby/lobby_button_start" type="text" width="128" height="24" bitmap="bitmaps/text_button_background" text="START NOW" font="ui\small_ui" color="#FFFFFFFF" align="center" text_y="2">
<on event="a" run="net game speed start"/>
<on event="start" run="net game speed start"/>
<on event="left_mouse" run="mouse emit accept event"/>
</widget>
<widget name="main_menu/multiplayer_type_select/lobby/lobby_button_leave" type="text" width="128" height="24" bitmap="bitmaps/text_button_background" text="LEAVE" font="ui\small_ui" color="#FFFFFFFF" align="center" text_y="2">
<on event="a" run="mouse emit back event"/>
<on event="start" run="mouse emit back event"/>
<on event="left_mouse" run="mouse emit accept event"/>
</widget>
<widget name="main_menu/multiplayer_type_select/lobby/preview_screen" width="640" height="480" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/gradient">
<on event="b" back="true"/>
<on event="back" back="true"/>
<child widget="main_menu/new_select/sel_list_desc_bkd"/>
<child widget="main_menu/multiplayer_type_select/lobby/preview_list"/>
<child widget="main_menu/multiplayer_type_select/lobby/header_lobby"/>
</widget>
<widget name="main_menu/multiplayer_type_select/lobby/preview_list" type="column_list" width="640" height="480" flags="pass_unhandled_to_focused_child left_right_tabs_items" description="main_menu/multiplayer_type_select/lobby/lobby_desc">
<data input="port lobby preview update"/>
<child widget="main_menu/multiplayer_type_select/lobby/preview_status" x="30" y="75"/>
<child widget="main_menu/multiplayer_type_select/lobby/preview_button_bar" y="414"/>
</widget>
<widget name="main_menu/multiplayer_type_select/lobby/preview_status" type="text" controller="1" width="360" height="300" font="ui\large_ui" color="#FF2896FF">
</widget>
<widget name="main_menu/multiplayer_type_select/lobby/preview_button_bar" type="column_list" width="640" height="28" flags="pass_unhandled_to_focused_child left_right_tabs_items">
<child widget="main_menu/multiplayer_type_select/lobby/preview_button_join" x="380" y="1"/>
<child widget="main_menu/multiplayer_type_select/lobby/preview_button_back" x="510" y="1"/>
</widget>
<widget name="main_menu/multiplayer_type_select/lobby/preview_button_join" type="text" width="128" height="24" bitmap="bitmaps/text_button_background" text="JOIN GAME" font="ui\small_ui" color="#FFFFFFFF" align="center" text_y="2">
<on event="a" run="port lobby preview join"/>
<on event="start" run="port lobby preview join"/>
<on event="left_mouse" run="mouse emit accept event"/>
</widget>
<widget name="main_menu/multiplayer_type_select/lobby/preview_button_back" type="text" width="128" height="24" bitmap="bitmaps/text_button_background" text="BACK" font="ui\small_ui" color="#FFFFFFFF" align="center" text_y="2">
<on event="a" run="mouse emit back event"/>
<on event="start" run="mouse emit back event"/>
<on event="left_mouse" run="mouse emit accept event"/>
</widget>
</menus>
@@ -0,0 +1,55 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- The PC version's menus: ui\shell\main_menu\multiplayer_type_select\mp_map_select (tools/ce_menus.py) -->
<menus>
<widget name="main_menu/multiplayer_type_select/mp_map_select/header_select_map" controller="1" left="35" top="11" width="605" height="59" bitmap="main_menu/multiplayer_type_select/mp_map_select/header_select_map">
</widget>
<widget name="main_menu/multiplayer_type_select/mp_map_select/mp_map_extended_desc" width="640" height="480">
<child widget="main_menu/current_profile_name"/>
<child widget="main_menu/multiplayer_type_select/mp_map_select/mp_map_right_item" x="22" y="2"/>
</widget>
<widget name="main_menu/multiplayer_type_select/mp_map_select/mp_map_right_data" type="text" controller="1" left="417" top="258" width="146" height="136" string_list="main_menu/multiplayer_type_select/mp_map_select/map_data" string_index="2" font="ui\small_ui" color="#FF2896FF">
</widget>
<widget name="main_menu/multiplayer_type_select/mp_map_select/mp_map_right_item" controller="1" left="406" top="75" width="162" height="326" bitmap="bitmaps/spinner_list_3_wide_item_background">
<child widget="main_menu/multiplayer_type_select/mp_map_select/mp_map_right_name"/>
<child widget="main_menu/multiplayer_type_select/mp_map_select/mp_map_right_pic"/>
<child widget="main_menu/multiplayer_type_select/mp_map_select/mp_map_right_data"/>
</widget>
<widget name="main_menu/multiplayer_type_select/mp_map_select/mp_map_right_name" type="text" controller="1" left="417" top="204" width="146" height="43" string_list="main_menu/mp_map_list" string_index="2" font="ui\large_ui" color="#FF2896FF">
</widget>
<widget name="main_menu/multiplayer_type_select/mp_map_select/mp_map_right_pic" controller="1" left="419" top="87" width="140" height="114" bitmap="ui\shell\bitmaps\mp_map_grafix">
</widget>
<widget name="main_menu/multiplayer_type_select/mp_map_select/mp_map_select_button_bar" type="column_list" width="640" height="28" flags="pass_unhandled_to_focused_child left_right_tabs_items">
<data input="common button bar update"/>
<child widget="main_menu/multiplayer_type_select/mp_map_select/mp_map_select_button_ok" x="380" y="1"/>
<child widget="common_button_back" x="510" y="1"/>
</widget>
<widget name="main_menu/multiplayer_type_select/mp_map_select/mp_map_select_button_ok" type="text" width="128" height="24" bitmap="bitmaps/text_button_background" string_list="strings/common_button_captions" string_index="1" font="ui\small_ui" color="#FFFFFFFF" align="center" text_y="2">
<on event="a" run="emit custom activation event"/>
<on event="start" run="emit custom activation event"/>
<on event="left_mouse" run="mouse emit accept event"/>
</widget>
<widget name="main_menu/multiplayer_type_select/mp_map_select/mp_map_select_list_2" type="column_list" width="640" height="480" flags="pass_unhandled_to_focused_child up_down_tabs_children" description="main_menu/multiplayer_type_select/mp_map_select/mp_map_extended_desc">
<data input="mp map list update"/>
<on event="created" run="mp level list initialize"/>
<on event="deleted" run="mp level list dispose"/>
<on event="custom_activation" run="mp level select" open="main_menu/multiplayer_type_select/connected/gametype_select_screen_wrapper"/>
<child widget="main_menu/new_select/list_item_0" x="20" y="73"/>
<child widget="main_menu/new_select/list_item_1" x="20" y="103"/>
<child widget="main_menu/new_select/list_item_2" x="20" y="133"/>
<child widget="main_menu/new_select/list_item_3" x="20" y="163"/>
<child widget="main_menu/new_select/list_item_4" x="20" y="193"/>
<child widget="main_menu/new_select/list_item_5" x="20" y="223"/>
<child widget="main_menu/new_select/list_item_6" x="20" y="253"/>
<child widget="main_menu/new_select/list_item_7" x="20" y="283"/>
<child widget="main_menu/new_select/list_item_8" x="20" y="313"/>
<child widget="main_menu/new_select/list_item_9" x="20" y="343"/>
<child widget="main_menu/new_select/list_item_10" x="20" y="373"/>
<child widget="main_menu/multiplayer_type_select/mp_map_select/mp_map_select_button_bar" y="414"/>
</widget>
<widget name="main_menu/multiplayer_type_select/mp_map_select/mp_map_select_screen" width="640" height="480" flags="pass_unhandled_to_focused_child pause_game" bitmap="bitmaps/gradient">
<on event="created" run="net server defer start"/>
<child widget="main_menu/new_select/sel_list_desc_bkd"/>
<child widget="main_menu/multiplayer_type_select/mp_map_select/mp_map_select_list_2"/>
<child widget="main_menu/multiplayer_type_select/mp_map_select/header_select_map"/>
</widget>
</menus>
@@ -0,0 +1,177 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- The port's multiplayer screens, in the PC version's style (tools/port_settings.py) -->
<menus>
<widget name="main_menu/multiplayer_type_select/server_settings/server_settings_screen" width="640" height="480" flags="pass_unhandled_to_focused_child pause_game" bitmap="bitmaps/gradient">
<on event="b" run="gamespy back handler"/>
<on event="back" run="gamespy back handler"/>
<child widget="main_menu/multiplayer_type_select/server_settings/header_server_settings"/>
<child widget="main_menu/multiplayer_type_select/server_settings/options_menu"/>
</widget>
<widget name="main_menu/multiplayer_type_select/server_settings/header_server_settings" controller="1" left="35" top="11" width="605" height="59" bitmap="main_menu/multiplayer_type_select/server_settings/header_server_settings">
</widget>
<widget name="main_menu/multiplayer_type_select/server_settings/help" type="text" controller="1" left="68" top="358" width="482" height="60" string_list="main_menu/multiplayer_type_select/server_settings/help_strings" font="ui\large_ui" color="#FFFFFFFF">
</widget>
<widget name="main_menu/multiplayer_type_select/server_settings/options_menu" type="column_list" width="640" height="480" flags="pass_unhandled_to_focused_child up_down_tabs_children" description="main_menu/multiplayer_type_select/server_settings/help">
<data input="server settings update"/>
<on event="created" run="server settings init"/>
<child widget="main_menu/multiplayer_type_select/server_settings/op_server_name" x="54" y="73"/>
<child widget="main_menu/multiplayer_type_select/server_settings/op_max_players" x="54" y="101"/>
<child widget="main_menu/multiplayer_type_select/server_settings/op_invite" x="54" y="129"/>
<child widget="main_menu/multiplayer_type_select/server_settings/op_listing" x="54" y="157"/>
<child widget="main_menu/multiplayer_type_select/server_settings/op_game_type" x="54" y="185"/>
<child widget="main_menu/multiplayer_type_select/server_settings/op_player_options" x="54" y="213"/>
<child widget="main_menu/multiplayer_type_select/server_settings/op_item_options" x="54" y="241"/>
<child widget="main_menu/multiplayer_type_select/server_settings/op_vehicle_options" x="54" y="269"/>
<child widget="main_menu/multiplayer_type_select/server_settings/op_indicator_options" x="54" y="297"/>
<child widget="main_menu/multiplayer_type_select/server_settings/op_team_options" x="54" y="325"/>
<child widget="main_menu/multiplayer_type_select/server_settings/button_bar" y="414"/>
</widget>
<widget name="main_menu/multiplayer_type_select/server_settings/button_bar" type="column_list" width="640" height="28" flags="pass_unhandled_to_focused_child left_right_tabs_items">
<child widget="main_menu/multiplayer_type_select/server_settings/button_ok" x="380" y="1"/>
<child widget="common_button_cancel" x="510" y="1"/>
</widget>
<widget name="main_menu/multiplayer_type_select/server_settings/op_server_name" width="512" height="28" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/option_bkds" color="#FF2896FF">
<on event="a" run="ss edit server name"/>
<on event="start" run="ss edit server name"/>
<on event="b"/>
<on event="back"/>
<on event="left_mouse" run="mouse emit accept event"/>
<child widget="main_menu/multiplayer_type_select/server_settings/server_name_label"/>
<child widget="main_menu/multiplayer_type_select/server_settings/server_name_value" x="230" y="1"/>
</widget>
<widget name="main_menu/multiplayer_type_select/server_settings/server_name_label" type="text" controller="1" width="230" height="22" string_list="main_menu/multiplayer_type_select/server_settings/labels" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="4">
</widget>
<widget name="main_menu/multiplayer_type_select/server_settings/server_name_value" type="text" controller="1" width="280" height="22" font="ui\small_ui" color="#FF2896FF" align="center" text_y="5" text_flags="no_focus_test">
</widget>
<widget name="main_menu/multiplayer_type_select/server_settings/op_max_players" width="512" height="28" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/option_bkds" color="#FF2896FF">
<child widget="main_menu/multiplayer_type_select/server_settings/max_players_label"/>
<child widget="main_menu/multiplayer_type_select/server_settings/max_players_spinner" x="320" y="1"/>
</widget>
<widget name="main_menu/multiplayer_type_select/server_settings/max_players_label" type="text" controller="1" width="300" height="22" string_list="main_menu/multiplayer_type_select/server_settings/labels" string_index="1" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="4">
</widget>
<widget name="main_menu/multiplayer_type_select/server_settings/max_players_spinner" type="spinner" left="3" top="2" width="147" height="20" flags="pass_unhandled_to_focused_child left_right_tabs_items" strings="2|4|8|12|16|24|32|48|64|96|128" font="ui\large_ui" color="#FF2896FF" align="center" text_y="1" header_bitmap="bitmaps/arrow_sm_left" footer_bitmap="bitmaps/arrow_sm_right" header_bounds="7 -6 19 0" footer_bounds="7 150 19 156">
</widget>
<widget name="main_menu/multiplayer_type_select/server_settings/op_invite" width="512" height="28" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/option_bkds" color="#FF2896FF">
<on event="a" run="ss copy invite"/>
<on event="start" run="ss copy invite"/>
<on event="b"/>
<on event="back"/>
<on event="left_mouse" run="mouse emit accept event"/>
<child widget="main_menu/multiplayer_type_select/server_settings/invite_label"/>
<child widget="main_menu/multiplayer_type_select/server_settings/invite_value" x="230" y="1"/>
</widget>
<widget name="main_menu/multiplayer_type_select/server_settings/invite_label" type="text" controller="1" width="230" height="22" string_list="main_menu/multiplayer_type_select/server_settings/labels" string_index="2" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="4">
</widget>
<widget name="main_menu/multiplayer_type_select/server_settings/invite_value" type="text" controller="1" width="280" height="22" font="ui\small_ui" color="#FF2896FF" align="center" text_y="5" text_flags="no_focus_test">
</widget>
<widget name="main_menu/multiplayer_type_select/server_settings/op_listing" width="512" height="28" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/option_bkds" color="#FF2896FF">
<child widget="main_menu/multiplayer_type_select/server_settings/listing_label"/>
<child widget="main_menu/multiplayer_type_select/server_settings/listing_spinner" x="320" y="1"/>
</widget>
<widget name="main_menu/multiplayer_type_select/server_settings/listing_label" type="text" controller="1" width="300" height="22" string_list="main_menu/multiplayer_type_select/server_settings/labels" string_index="9" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="4">
</widget>
<widget name="main_menu/multiplayer_type_select/server_settings/listing_spinner" type="spinner" left="3" top="2" width="147" height="20" flags="pass_unhandled_to_focused_child left_right_tabs_items" strings="PUBLIC|PRIVATE" font="ui\large_ui" color="#FF2896FF" align="center" text_y="1" header_bitmap="bitmaps/arrow_sm_left" footer_bitmap="bitmaps/arrow_sm_right" header_bounds="7 -6 19 0" footer_bounds="7 150 19 156">
<on event="left_mouse" run="mouse spinner 1wide click"/>
</widget>
<widget name="main_menu/multiplayer_type_select/server_settings/op_game_type" width="512" height="28" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/option_bkds" color="#FF2896FF">
<on event="a" run="port setup edit" open="main_menu/settings_select/multiplayer_setup/playlist_edit/game_type_select/gametype_select_screen"/>
<on event="start" run="port setup edit" open="main_menu/settings_select/multiplayer_setup/playlist_edit/game_type_select/gametype_select_screen"/>
<on event="left_mouse" run="mouse emit accept event"/>
<child widget="main_menu/multiplayer_type_select/server_settings/game_type_label"/>
<child widget="main_menu/multiplayer_type_select/server_settings/game_type_value" x="230" y="1"/>
</widget>
<widget name="main_menu/multiplayer_type_select/server_settings/game_type_label" type="text" controller="1" width="230" height="22" string_list="main_menu/multiplayer_type_select/server_settings/labels" string_index="3" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="4">
</widget>
<widget name="main_menu/multiplayer_type_select/server_settings/game_type_value" type="text" controller="1" width="280" height="22" font="ui\small_ui" color="#FF2896FF" align="center" text_y="5" text_flags="no_focus_test">
</widget>
<widget name="main_menu/multiplayer_type_select/server_settings/op_player_options" width="512" height="28" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/option_bkds" color="#FF2896FF">
<on event="a" run="port setup edit" open="main_menu/settings_select/multiplayer_setup/player_options_edit/player_options_screen"/>
<on event="start" run="port setup edit" open="main_menu/settings_select/multiplayer_setup/player_options_edit/player_options_screen"/>
<on event="left_mouse" run="mouse emit accept event"/>
<child widget="main_menu/multiplayer_type_select/server_settings/player_options_label"/>
<child widget="main_menu/multiplayer_type_select/server_settings/player_options_value" x="230" y="1"/>
</widget>
<widget name="main_menu/multiplayer_type_select/server_settings/player_options_label" type="text" controller="1" width="230" height="22" string_list="main_menu/multiplayer_type_select/server_settings/labels" string_index="4" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="4">
</widget>
<widget name="main_menu/multiplayer_type_select/server_settings/player_options_value" type="text" controller="1" width="280" height="22" font="ui\small_ui" color="#FF2896FF" align="center" text_y="5" text_flags="no_focus_test">
</widget>
<widget name="main_menu/multiplayer_type_select/server_settings/op_item_options" width="512" height="28" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/option_bkds" color="#FF2896FF">
<on event="a" run="port setup edit" open="main_menu/settings_select/multiplayer_setup/item_options_edit/item_options_screen"/>
<on event="start" run="port setup edit" open="main_menu/settings_select/multiplayer_setup/item_options_edit/item_options_screen"/>
<on event="left_mouse" run="mouse emit accept event"/>
<child widget="main_menu/multiplayer_type_select/server_settings/item_options_label"/>
<child widget="main_menu/multiplayer_type_select/server_settings/item_options_value" x="230" y="1"/>
</widget>
<widget name="main_menu/multiplayer_type_select/server_settings/item_options_label" type="text" controller="1" width="230" height="22" string_list="main_menu/multiplayer_type_select/server_settings/labels" string_index="5" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="4">
</widget>
<widget name="main_menu/multiplayer_type_select/server_settings/item_options_value" type="text" controller="1" width="280" height="22" font="ui\small_ui" color="#FF2896FF" align="center" text_y="5" text_flags="no_focus_test">
</widget>
<widget name="main_menu/multiplayer_type_select/server_settings/op_vehicle_options" width="512" height="28" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/option_bkds" color="#FF2896FF">
<on event="a" run="port setup edit" open="main_menu/settings_select/multiplayer_setup/vehicle_options_edit/vehicle_options_screen"/>
<on event="start" run="port setup edit" open="main_menu/settings_select/multiplayer_setup/vehicle_options_edit/vehicle_options_screen"/>
<on event="left_mouse" run="mouse emit accept event"/>
<child widget="main_menu/multiplayer_type_select/server_settings/vehicle_options_label"/>
<child widget="main_menu/multiplayer_type_select/server_settings/vehicle_options_value" x="230" y="1"/>
</widget>
<widget name="main_menu/multiplayer_type_select/server_settings/vehicle_options_label" type="text" controller="1" width="230" height="22" string_list="main_menu/multiplayer_type_select/server_settings/labels" string_index="6" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="4">
</widget>
<widget name="main_menu/multiplayer_type_select/server_settings/vehicle_options_value" type="text" controller="1" width="280" height="22" font="ui\small_ui" color="#FF2896FF" align="center" text_y="5" text_flags="no_focus_test">
</widget>
<widget name="main_menu/multiplayer_type_select/server_settings/op_indicator_options" width="512" height="28" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/option_bkds" color="#FF2896FF">
<on event="a" run="port setup edit" open="main_menu/settings_select/multiplayer_setup/indicator_options_edit/indicator_options_screen"/>
<on event="start" run="port setup edit" open="main_menu/settings_select/multiplayer_setup/indicator_options_edit/indicator_options_screen"/>
<on event="left_mouse" run="mouse emit accept event"/>
<child widget="main_menu/multiplayer_type_select/server_settings/indicator_options_label"/>
<child widget="main_menu/multiplayer_type_select/server_settings/indicator_options_value" x="230" y="1"/>
</widget>
<widget name="main_menu/multiplayer_type_select/server_settings/indicator_options_label" type="text" controller="1" width="230" height="22" string_list="main_menu/multiplayer_type_select/server_settings/labels" string_index="7" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="4">
</widget>
<widget name="main_menu/multiplayer_type_select/server_settings/indicator_options_value" type="text" controller="1" width="280" height="22" font="ui\small_ui" color="#FF2896FF" align="center" text_y="5" text_flags="no_focus_test">
</widget>
<widget name="main_menu/multiplayer_type_select/server_settings/op_team_options" width="512" height="28" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/option_bkds" color="#FF2896FF">
<on event="a" run="port setup edit" open="main_menu/settings_select/multiplayer_setup/teamplay_options_edit/teamplay_options_screen"/>
<on event="start" run="port setup edit" open="main_menu/settings_select/multiplayer_setup/teamplay_options_edit/teamplay_options_screen"/>
<on event="left_mouse" run="mouse emit accept event"/>
<child widget="main_menu/multiplayer_type_select/server_settings/team_options_label"/>
<child widget="main_menu/multiplayer_type_select/server_settings/team_options_value" x="230" y="1"/>
</widget>
<widget name="main_menu/multiplayer_type_select/server_settings/team_options_label" type="text" controller="1" width="230" height="22" string_list="main_menu/multiplayer_type_select/server_settings/labels" string_index="8" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="4">
</widget>
<widget name="main_menu/multiplayer_type_select/server_settings/team_options_value" type="text" controller="1" width="280" height="22" font="ui\small_ui" color="#FF2896FF" align="center" text_y="5" text_flags="no_focus_test">
</widget>
<widget name="main_menu/multiplayer_type_select/server_settings/button_defaults" type="text" width="128" height="24" bitmap="bitmaps/text_button_background" string_list="strings/common_button_captions" string_index="3" font="ui\small_ui" color="#FFFFFFFF" align="center" text_y="2">
<on event="left_mouse" run="mouse emit accept event"/>
</widget>
<widget name="main_menu/multiplayer_type_select/server_settings/button_ok" type="text" width="128" height="24" bitmap="bitmaps/text_button_background" text="START GAME" font="ui\small_ui" color="#FFFFFFFF" align="center" text_y="2">
<on event="a" run="ss start game" open="main_menu/multiplayer_type_select/lobby/lobby_screen"/>
<on event="start" run="ss start game" open="main_menu/multiplayer_type_select/lobby/lobby_screen"/>
<on event="left_mouse" run="mouse emit accept event"/>
</widget>
<strings name="main_menu/multiplayer_type_select/server_settings/labels">
<string text="GAME NAME:"/>
<string text="MAXIMUM PLAYERS:"/>
<string text="INVITE LINK:"/>
<string text="GAME TYPE:"/>
<string text="PLAYER OPTIONS:"/>
<string text="ITEM OPTIONS:"/>
<string text="VEHICLE OPTIONS:"/>
<string text="INDICATOR OPTIONS:"/>
<string text="TEAMPLAY OPTIONS:"/>
<string text="LISTING:"/>
</strings>
<strings name="main_menu/multiplayer_type_select/server_settings/help_strings">
<string text=""/>
<string text="The name the game shows in the lists of games.\nEnter changes it."/>
<string text="The most players the game takes (up to 128)."/>
<string text="Players join this game by its invite link, or your\nDiscord invite. Enter copies the link again."/>
<string text="The gametype and its rules, for this game."/>
<string text="Lives, health, shields and respawning, for this game."/>
<string text="Weapons, grenades and starting equipment, for\nthis game."/>
<string text="Each team's vehicles and their respawn time, for\nthis game."/>
<string text="The motion tracker and nav points, for this game."/>
<string text="Friendly fire and team balance, for this game."/>
<string text="Anyone can see and join your game: it is listed\nin everyone's Server Browser."/>
<string text="Only players with your invite link can join."/>
</strings>
</menus>
@@ -0,0 +1,72 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- The PC version's menus: ui\shell\main_menu\multiplayer_type_select (tools/ce_menus.py) -->
<menus>
<widget name="main_menu/multiplayer_type_select/header_multiplayer" controller="1" left="35" top="11" width="605" height="59" bitmap="main_menu/multiplayer_type_select/header_multiplayer">
</widget>
<widget name="main_menu/multiplayer_type_select/multiplayer_options_pic" controller="1" left="288" top="82" width="307" height="244" bitmap="main_menu/multiplayer_type_select/mp_options">
</widget>
<widget name="main_menu/multiplayer_type_select/multiplayer_options_txt" type="text" controller="1" left="290" top="285" width="290" height="105" string_list="main_menu/multiplayer_type_select/multiplayer_option_descriptions" font="ui\large_ui" color="#FF2896FF">
</widget>
<widget name="main_menu/multiplayer_type_select/multiplayer_type_button_bar" type="column_list" width="640" height="28" flags="pass_unhandled_to_focused_child left_right_tabs_items">
<data input="common button bar update"/>
<child widget="common_button_back" x="510" y="1"/>
</widget>
<widget name="main_menu/multiplayer_type_select/multiplayer_type_create_internet_item" type="text" left="51" width="232" height="32" bitmap="bitmaps/list_item_bkd" string_list="main_menu/multiplayer_type_select/multiplayer_options" string_index="2" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="5">
<on event="a" run="join controller to mp game"/>
<on event="a" run="mp type set mode" open="main_menu/multiplayer_type_select/connected/connected_map_select_wrapper"/>
<on event="left_mouse" run="mouse emit accept event"/>
</widget>
<widget name="main_menu/multiplayer_type_select/multiplayer_type_create_item" type="text" left="51" width="232" height="32" string_list="main_menu/multiplayer_type_select/multiplayer_options" string_index="1" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="5">
</widget>
<widget name="main_menu/multiplayer_type_select/multiplayer_type_create_lan_item" type="text" left="51" width="232" height="32" bitmap="bitmaps/list_item_bkd" string_list="main_menu/multiplayer_type_select/multiplayer_options" string_index="3" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="5">
<on event="a" run="join controller to mp game"/>
<on event="a" run="mp type set mode" open="main_menu/multiplayer_type_select/connected/connected_map_select_wrapper"/>
<on event="left_mouse" run="mouse emit accept event"/>
</widget>
<widget name="main_menu/multiplayer_type_select/multiplayer_type_gametypes_item" type="text" left="51" width="232" height="32" bitmap="bitmaps/list_item_bkd" string_list="main_menu/multiplayer_type_select/multiplayer_options" string_index="5" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="5">
<on event="a" open="main_menu/settings_select/multiplayer_setup/playlist_select/gametype_select_screen"/>
<on event="start" open="main_menu/settings_select/multiplayer_setup/playlist_select/gametype_select_screen"/>
<on event="left_mouse" run="mouse emit accept event"/>
</widget>
<widget name="main_menu/multiplayer_type_select/multiplayer_type_join_direct_item" type="text" left="51" width="232" height="32" bitmap="bitmaps/list_item_bkd" string_list="main_menu/multiplayer_type_select/multiplayer_options" string_index="4" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="5">
<on event="a" run="mp type set mode" open="main_menu/multiplayer_type_select/join_game/join_game_screen"/>
<on event="start" run="mp type set mode" open="main_menu/multiplayer_type_select/join_game/join_game_screen"/>
<on event="left_mouse" run="mouse emit accept event"/>
</widget>
<widget name="main_menu/multiplayer_type_select/multiplayer_type_join_internet_item" type="text" left="51" width="232" height="32" bitmap="bitmaps/list_item_bkd" string_list="main_menu/multiplayer_type_select/multiplayer_options" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="5" string_index="6">
<on event="a" run="mp type set mode" open="main_menu/multiplayer_type_select/join_game/join_game_screen"/>
<on event="start" run="mp type set mode" open="main_menu/multiplayer_type_select/join_game/join_game_screen"/>
<on event="left_mouse" run="mouse emit accept event"/>
</widget>
<widget name="main_menu/multiplayer_type_select/multiplayer_type_join_item" type="text" left="51" width="232" height="32" string_list="main_menu/multiplayer_type_select/multiplayer_options" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="5">
</widget>
<widget name="main_menu/multiplayer_type_select/multiplayer_type_join_lan_item" type="text" left="51" width="232" height="32" bitmap="bitmaps/list_item_bkd" string_list="main_menu/multiplayer_type_select/multiplayer_options" string_index="3" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="5">
<on event="a" run="mp type set mode" open="main_menu/multiplayer_type_select/join_game/join_game_screen"/>
<on event="start" run="mp type set mode" open="main_menu/multiplayer_type_select/join_game/join_game_screen"/>
<on event="left_mouse" run="mouse emit accept event"/>
</widget>
<widget name="main_menu/multiplayer_type_select/multiplayer_type_list_ext_desc" controller="1" left="275" top="78" width="320" height="322" bitmap="bitmaps/list_field" color="#FF0080FF">
<child widget="main_menu/multiplayer_type_select/multiplayer_options_pic"/>
<child widget="main_menu/multiplayer_type_select/multiplayer_options_txt" y="37"/>
<child widget="main_menu/current_profile_name"/>
</widget>
<widget name="main_menu/multiplayer_type_select/multiplayer_type_select_list" type="column_list" width="640" height="480" flags="pass_unhandled_to_focused_child up_down_tabs_items" description="main_menu/multiplayer_type_select/multiplayer_type_list_ext_desc">
<data input="multiplayer type menu update desc"/>
<child widget="main_menu/multiplayer_type_select/multiplayer_type_join_item" x="-32" y="78"/>
<child widget="main_menu/multiplayer_type_select/multiplayer_type_join_internet_item" y="111"/>
<child widget="main_menu/multiplayer_type_select/multiplayer_type_join_lan_item" y="144"/>
<child widget="main_menu/multiplayer_type_select/multiplayer_type_join_direct_item" y="177"/>
<child widget="main_menu/multiplayer_type_select/multiplayer_type_create_item" x="-32" y="210"/>
<child widget="main_menu/multiplayer_type_select/multiplayer_type_create_internet_item" y="243"/>
<child widget="main_menu/multiplayer_type_select/multiplayer_type_create_lan_item" y="276"/>
<child widget="main_menu/multiplayer_type_select/multiplayer_type_coop_item" y="309"/>
<child widget="main_menu/multiplayer_type_select/multiplayer_type_gametypes_item" y="375"/>
<child widget="main_menu/multiplayer_type_select/multiplayer_type_button_bar" y="414"/>
</widget>
<widget name="main_menu/multiplayer_type_select/multiplayer_type_select_screen" width="640" height="480" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/gradient">
<on event="created" run="mp type menu initialize"/>
<child widget="main_menu/multiplayer_type_select/header_multiplayer"/>
<child widget="main_menu/multiplayer_type_select/multiplayer_type_select_list"/>
<child widget="main_menu/blueline" x="64" y="358"/>
</widget>
</menus>
@@ -0,0 +1,129 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- The PC version's menus: ui\shell\main_menu\new_select (tools/ce_menus.py) -->
<menus>
<widget name="main_menu/new_select/list_item_0" controller="1" width="390" height="28" bitmap="bitmaps/sel_list_item_bkd_top" font="ui\large_ui" color="#FF2896FF" align="center" text_y="3">
<on event="a" run="single prev cl item activated"/>
<on event="start" run="single prev cl item activated"/>
<on event="left_mouse" run="mouse emit accept event"/>
<child widget="main_menu/new_select/list_item_text" x="25"/>
<child widget="main_menu/new_select/list_item_arrows"/>
<child widget="main_menu/new_select/scroll_up_button" x="40"/>
<child widget="main_menu/new_select/scroll_down_button" x="40"/>
</widget>
<widget name="main_menu/new_select/list_item_1" controller="1" width="390" height="28" bitmap="bitmaps/sel_list_item_bkd" font="ui\large_ui" color="#FF2896FF" align="center" text_y="3">
<on event="a" run="single prev cl item activated"/>
<on event="start" run="single prev cl item activated"/>
<on event="left_mouse" run="mouse emit accept event"/>
<child widget="main_menu/new_select/list_item_text" x="25"/>
<child widget="main_menu/new_select/list_item_arrows"/>
<child widget="main_menu/new_select/scroll_up_button" x="40"/>
<child widget="main_menu/new_select/scroll_down_button" x="40"/>
</widget>
<widget name="main_menu/new_select/list_item_10" controller="1" width="390" height="28" bitmap="bitmaps/sel_list_item_bkd" font="ui\large_ui" color="#FF2896FF" align="center" text_y="3">
<on event="a" run="single prev cl item activated"/>
<on event="start" run="single prev cl item activated"/>
<on event="left_mouse" run="mouse emit accept event"/>
<child widget="main_menu/new_select/list_item_text" x="25"/>
<child widget="main_menu/new_select/list_item_arrows"/>
<child widget="main_menu/new_select/scroll_up_button" x="40"/>
<child widget="main_menu/new_select/scroll_down_button" x="40"/>
</widget>
<widget name="main_menu/new_select/list_item_2" controller="1" width="390" height="28" bitmap="bitmaps/sel_list_item_bkd" font="ui\large_ui" color="#FF2896FF" align="center" text_y="3">
<on event="a" run="single prev cl item activated"/>
<on event="start" run="single prev cl item activated"/>
<on event="left_mouse" run="mouse emit accept event"/>
<child widget="main_menu/new_select/list_item_text" x="25"/>
<child widget="main_menu/new_select/list_item_arrows"/>
<child widget="main_menu/new_select/scroll_up_button" x="40"/>
<child widget="main_menu/new_select/scroll_down_button" x="40"/>
</widget>
<widget name="main_menu/new_select/list_item_3" controller="1" width="390" height="28" bitmap="bitmaps/sel_list_item_bkd" font="ui\large_ui" color="#FF2896FF" align="center" text_y="3">
<on event="a" run="single prev cl item activated"/>
<on event="start" run="single prev cl item activated"/>
<on event="left_mouse" run="mouse emit accept event"/>
<child widget="main_menu/new_select/list_item_text" x="25"/>
<child widget="main_menu/new_select/list_item_arrows"/>
<child widget="main_menu/new_select/scroll_up_button" x="40"/>
<child widget="main_menu/new_select/scroll_down_button" x="40"/>
</widget>
<widget name="main_menu/new_select/list_item_4" controller="1" width="390" height="28" bitmap="bitmaps/sel_list_item_bkd" font="ui\large_ui" color="#FF2896FF" align="center" text_y="3">
<on event="a" run="single prev cl item activated"/>
<on event="start" run="single prev cl item activated"/>
<on event="left_mouse" run="mouse emit accept event"/>
<child widget="main_menu/new_select/list_item_text" x="25"/>
<child widget="main_menu/new_select/list_item_arrows"/>
<child widget="main_menu/new_select/scroll_up_button" x="40"/>
<child widget="main_menu/new_select/scroll_down_button" x="40"/>
</widget>
<widget name="main_menu/new_select/list_item_5" controller="1" width="390" height="28" bitmap="bitmaps/sel_list_item_bkd" font="ui\large_ui" color="#FF2896FF" align="center" text_y="3">
<on event="a" run="single prev cl item activated"/>
<on event="start" run="single prev cl item activated"/>
<on event="left_mouse" run="mouse emit accept event"/>
<child widget="main_menu/new_select/list_item_text" x="25"/>
<child widget="main_menu/new_select/list_item_arrows"/>
<child widget="main_menu/new_select/scroll_up_button" x="40"/>
<child widget="main_menu/new_select/scroll_down_button" x="40"/>
</widget>
<widget name="main_menu/new_select/list_item_6" controller="1" width="390" height="28" bitmap="bitmaps/sel_list_item_bkd" font="ui\large_ui" color="#FF2896FF" align="center" text_y="3">
<on event="a" run="single prev cl item activated"/>
<on event="start" run="single prev cl item activated"/>
<on event="left_mouse" run="mouse emit accept event"/>
<child widget="main_menu/new_select/list_item_text" x="25"/>
<child widget="main_menu/new_select/list_item_arrows"/>
<child widget="main_menu/new_select/scroll_up_button" x="40"/>
<child widget="main_menu/new_select/scroll_down_button" x="40"/>
</widget>
<widget name="main_menu/new_select/list_item_7" controller="1" width="390" height="28" bitmap="bitmaps/sel_list_item_bkd" font="ui\large_ui" color="#FF2896FF" align="center" text_y="3">
<on event="a" run="single prev cl item activated"/>
<on event="start" run="single prev cl item activated"/>
<on event="left_mouse" run="mouse emit accept event"/>
<child widget="main_menu/new_select/list_item_text" x="25"/>
<child widget="main_menu/new_select/list_item_arrows"/>
<child widget="main_menu/new_select/scroll_up_button" x="40"/>
<child widget="main_menu/new_select/scroll_down_button" x="40"/>
</widget>
<widget name="main_menu/new_select/list_item_8" controller="1" width="390" height="28" bitmap="bitmaps/sel_list_item_bkd" font="ui\large_ui" color="#FF2896FF" align="center" text_y="3">
<on event="a" run="single prev cl item activated"/>
<on event="start" run="single prev cl item activated"/>
<on event="left_mouse" run="mouse emit accept event"/>
<child widget="main_menu/new_select/list_item_text" x="25"/>
<child widget="main_menu/new_select/list_item_arrows"/>
<child widget="main_menu/new_select/scroll_up_button" x="40"/>
<child widget="main_menu/new_select/scroll_down_button" x="40"/>
</widget>
<widget name="main_menu/new_select/list_item_9" controller="1" width="390" height="28" bitmap="bitmaps/sel_list_item_bkd" font="ui\large_ui" color="#FF2896FF" align="center" text_y="3">
<on event="a" run="single prev cl item activated"/>
<on event="start" run="single prev cl item activated"/>
<on event="left_mouse" run="mouse emit accept event"/>
<child widget="main_menu/new_select/list_item_text" x="25"/>
<child widget="main_menu/new_select/list_item_arrows"/>
<child widget="main_menu/new_select/scroll_up_button" x="40"/>
<child widget="main_menu/new_select/scroll_down_button" x="40"/>
</widget>
<widget name="main_menu/new_select/list_item_arrows" controller="1" width="385" height="28" color="#FF2896FF" align="center">
<child widget="main_menu/new_select/sel_arrow_right" x="8" y="4"/>
<child widget="main_menu/new_select/sel_arrow_right" x="14" y="4"/>
<child widget="main_menu/new_select/sel_arrow_right" x="20" y="4"/>
<child widget="main_menu/new_select/sel_arrow_left" x="355" y="4"/>
<child widget="main_menu/new_select/sel_arrow_left" x="361" y="4"/>
<child widget="main_menu/new_select/sel_arrow_left" x="367" y="4"/>
</widget>
<widget name="main_menu/new_select/list_item_text" type="text" controller="1" width="330" height="28" font="ui\large_ui" color="#FF2896FF" align="center" text_flags="no_focus_test" text_y="3">
</widget>
<widget name="main_menu/new_select/scroll_down_arrow" width="64" height="32" bitmap="bitmaps/arrow_sm_down">
</widget>
<widget name="main_menu/new_select/scroll_down_button" controller="1" width="300" height="28" bitmap="bitmaps/option_bkds_sm">
<child widget="main_menu/new_select/scroll_down_arrow" x="134" y="8"/>
</widget>
<widget name="main_menu/new_select/scroll_up_arrow" width="64" height="32" bitmap="bitmaps/arrow_sm_up">
</widget>
<widget name="main_menu/new_select/scroll_up_button" controller="1" width="300" height="28" bitmap="bitmaps/option_bkds_sm">
<child widget="main_menu/new_select/scroll_up_arrow" x="134" y="8"/>
</widget>
<widget name="main_menu/new_select/sel_arrow_left" width="6" height="28" bitmap="bitmaps/arrow_sm_left">
</widget>
<widget name="main_menu/new_select/sel_arrow_right" width="6" height="28" bitmap="bitmaps/arrow_sm_right">
</widget>
<widget name="main_menu/new_select/sel_list_desc_bkd" controller="1" left="400" top="73" width="240" height="405" bitmap="bitmaps/sel_list_desc_bkd">
</widget>
</menus>
@@ -0,0 +1,36 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- The PC version's menus: ui\shell\main_menu\player_profiles_select (tools/ce_menus.py) -->
<menus>
<widget name="main_menu/player_profiles_select/current_level" type="text" controller="1" width="150" height="50" string_list="main_menu/map_list" font="ui\small_ui" color="#FF2896FF">
</widget>
<widget name="main_menu/player_profiles_select/current_level_label" type="text" controller="1" width="150" height="25" string_list="main_menu/player_profiles_select/profile_description_labels" font="ui\large_ui" color="#FF2896FF">
</widget>
<widget name="main_menu/player_profiles_select/empty_profile_slot_text" type="text" controller="1" width="150" height="200" string_list="main_menu/player_profiles_select/profile_description_labels" string_index="4" font="ui\small_ui" color="#FF2896FF" align="center">
</widget>
<widget name="main_menu/player_profiles_select/header_select_profile" controller="1" left="35" top="11" width="605" height="59" bitmap="main_menu/player_profiles_select/header_select_profile">
</widget>
<widget name="main_menu/player_profiles_select/joystick_controls" type="text" controller="1" width="150" height="25" string_list="main_menu/player_profiles_select/joystick_set_defaults_descriptions" font="ui\small_ui" color="#FF2896FF">
</widget>
<widget name="main_menu/player_profiles_select/joystick_controls_label" type="text" controller="1" width="150" height="25" string_list="main_menu/player_profiles_select/profile_description_labels" string_index="2" font="ui\large_ui" color="#FF2896FF">
</widget>
<widget name="main_menu/player_profiles_select/player_profile_right_data" controller="1" width="150" height="155">
<child widget="main_menu/player_profiles_select/empty_profile_slot_text"/>
<child widget="main_menu/player_profiles_select/current_level_label" y="89"/>
<child widget="main_menu/player_profiles_select/current_level" x="6" y="111"/>
<child widget="main_menu/player_profiles_select/skill_level_label" y="44"/>
<child widget="main_menu/player_profiles_select/skill_level" x="6" y="65"/>
<child widget="main_menu/player_profiles_select/joystick_controls_label"/>
<child widget="main_menu/player_profiles_select/joystick_controls" x="6" y="21"/>
</widget>
<widget name="main_menu/player_profiles_select/player_profile_right_item" controller="1" left="406" top="75" width="162" height="326" bitmap="bitmaps/spinner_list_3_wide_item_background">
<child widget="main_menu/player_profiles_select/player_profile_right_name" x="415" y="83"/>
<child widget="main_menu/multiplayer_type_select/connected/4way_profile_select/qtr_screen_profile_color_pic" x="438" y="82"/>
<child widget="main_menu/player_profiles_select/player_profile_right_data" x="416" y="242"/>
</widget>
<widget name="main_menu/player_profiles_select/player_profile_right_name" type="text" controller="1" width="147" height="22" font="ui\large_ui" color="#FF2896FF" align="center">
</widget>
<widget name="main_menu/player_profiles_select/skill_level" type="text" controller="1" width="150" height="25" string_list="main_menu/player_profiles_select/difficulty_names" font="ui\small_ui" color="#FF2896FF">
</widget>
<widget name="main_menu/player_profiles_select/skill_level_label" type="text" controller="1" width="150" height="25" string_list="main_menu/player_profiles_select/profile_description_labels" string_index="1" font="ui\large_ui" color="#FF2896FF">
</widget>
</menus>
@@ -0,0 +1,108 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- The PC version's menus: ui\shell\main_menu\profile_manager (tools/ce_menus.py) -->
<menus>
<widget name="main_menu/profile_manager/multiplayer_creating_profile" width="640" height="480" flags="pass_unhandled_to_focused_child no_history" auto_close="1">
<on event="deleted" run="new campaign decision" open="main_menu/profile_manager/multiplayer_saving_profile"/>
</widget>
<widget name="main_menu/profile_manager/multiplayer_saving_profile" width="640" height="480" flags="pass_unhandled_to_focused_child no_history" auto_close="3000" auto_close_fade="1000">
<on event="b" run="NULL"/>
<on event="back" run="NULL"/>
<on event="deleted" run="NULL" open="main_menu/multiplayer_type_select/multiplayer_type_select_screen"/>
<child widget="error/warning_creating_player_profile_screen"/>
</widget>
<widget name="main_menu/profile_manager/player_profile_extended_desc" width="640" height="480">
<child widget="main_menu/current_profile_name"/>
<child widget="main_menu/player_profiles_select/player_profile_right_item" x="22" y="2"/>
</widget>
<widget name="main_menu/profile_manager/player_profile_manager" width="640" height="480" flags="pass_unhandled_to_focused_child">
<child widget="main_menu/profile_manager/player_profile_manager_screen"/>
</widget>
<widget name="main_menu/profile_manager/player_profile_manager_screen" width="640" height="480" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/gradient">
<on event="x" run="request del player profile" open="error/confirm_delete_profile_modal_fullscreen"/>
<on event="y" run="new campaign chosen" open="main_menu/profile_manager/pm_empty_creating_profile"/>
<child widget="main_menu/new_select/sel_list_desc_bkd"/>
<child widget="main_menu/profile_manager/profile_manager_select_list_2"/>
<child widget="main_menu/player_profiles_select/header_select_profile"/>
</widget>
<widget name="main_menu/profile_manager/pm_empty_creating_profile" width="640" height="480" flags="pass_unhandled_to_focused_child no_history" auto_close="1">
<on event="deleted" run="new campaign decision" open="main_menu/profile_manager/pm_empty_saving_profile"/>
</widget>
<widget name="main_menu/profile_manager/pm_empty_saving_profile" width="640" height="480" flags="pass_unhandled_to_focused_child no_history" auto_close="1000" auto_close_fade="500">
<on event="b" run="NULL"/>
<on event="back" run="NULL"/>
<on event="deleted" run="NULL"/>
<child widget="error/warning_creating_player_profile_screen"/>
</widget>
<widget name="main_menu/profile_manager/pm_empty_selected" width="640" height="480" flags="pass_unhandled_to_focused_child no_history">
<on event="a" run="new campaign chosen" open="main_menu/profile_manager/pm_empty_creating_profile"/>
<on event="start" run="new campaign chosen" open="main_menu/profile_manager/pm_empty_creating_profile"/>
<child widget="error/confirm_empty_profile"/>
<child widget="main_menu/profile_manager/pm_empty_selected_button_bar" x="194" y="309"/>
</widget>
<widget name="main_menu/profile_manager/pm_empty_selected_button_bar" type="column_list" width="256" height="20" flags="pass_unhandled_to_focused_child up_down_tabs_items left_right_tabs_items">
<child widget="main_menu/profile_manager/pm_empty_selected_button_ok"/>
<child widget="common_button_cancel" x="128"/>
</widget>
<widget name="main_menu/profile_manager/pm_empty_selected_button_ok" type="text" width="128" height="24" bitmap="bitmaps/text_button_background" string_list="strings/common_button_captions" string_index="1" font="ui\small_ui" color="#FFFFFFFF" align="center" text_y="2">
<on event="left_mouse" run="mouse emit accept event"/>
</widget>
<widget name="main_menu/profile_manager/pm_entry_creating_profile" width="640" height="480" flags="pass_unhandled_to_focused_child no_history" auto_close="1">
<on event="deleted" run="new campaign decision" open="main_menu/profile_manager/pm_entry_saving_profile"/>
</widget>
<widget name="main_menu/profile_manager/pm_entry_saving_profile" width="640" height="480" flags="pass_unhandled_to_focused_child no_history" auto_close="1000" auto_close_fade="500">
<on event="b" run="NULL"/>
<on event="back" run="NULL"/>
<on event="deleted" run="NULL" open="main_menu/profile_manager/player_profile_manager_screen"/>
<child widget="error/warning_creating_player_profile_screen"/>
</widget>
<widget name="main_menu/profile_manager/profile_manager_button_bar" type="column_list" width="640" height="28" flags="pass_unhandled_to_focused_child left_right_tabs_items">
<data input="common button bar update"/>
<child widget="main_menu/profile_manager/profile_manager_button_new" y="1"/>
<child widget="main_menu/profile_manager/profile_manager_button_delete" x="130" y="1"/>
<child widget="main_menu/profile_manager/profile_manager_button_ok" x="380" y="1"/>
<child widget="common_button_back" x="510" y="1"/>
</widget>
<widget name="main_menu/profile_manager/profile_manager_button_delete" type="text" width="128" height="24" bitmap="bitmaps/text_button_background" string_list="strings/common_button_captions" string_index="5" font="ui\small_ui" color="#FFFFFFFF" align="center" text_y="2">
<on event="a" run="mouse emit x event"/>
<on event="start" run="mouse emit x event"/>
<on event="left_mouse" run="mouse emit x event"/>
</widget>
<widget name="main_menu/profile_manager/profile_manager_button_new" type="text" width="128" height="24" bitmap="bitmaps/text_button_background" string_list="strings/common_button_captions" string_index="4" font="ui\small_ui" color="#FFFFFFFF" align="center" text_y="2">
<on event="a" run="new campaign chosen" open="main_menu/profile_manager/pm_empty_creating_profile"/>
<on event="start" run="new campaign chosen" open="main_menu/profile_manager/pm_empty_creating_profile"/>
<on event="left_mouse" run="new campaign chosen" open="main_menu/profile_manager/pm_empty_creating_profile"/>
</widget>
<widget name="main_menu/profile_manager/profile_manager_button_ok" type="text" width="128" height="24" bitmap="bitmaps/text_button_background" string_list="strings/common_button_captions" string_index="1" font="ui\small_ui" color="#FFFFFFFF" align="center" text_y="2">
<on event="a" run="emit custom activation event"/>
<on event="start" run="emit custom activation event"/>
<on event="left_mouse" run="mouse emit accept event"/>
</widget>
<widget name="main_menu/profile_manager/profile_manager_select_list_2" type="column_list" width="640" height="480" flags="pass_unhandled_to_focused_child up_down_tabs_children" description="main_menu/profile_manager/player_profile_extended_desc">
<data input="3wide player profile list update"/>
<on event="created" run="player profile list initialize"/>
<on event="deleted" run="player profile list dispose"/>
<on event="custom_activation" run="profile manager select" back="true" branch="true"/>
<conditional widget="main_menu/profile_manager/pm_empty_selected" if_failed="true"/>
<child widget="main_menu/new_select/list_item_0" x="20" y="73"/>
<child widget="main_menu/new_select/list_item_1" x="20" y="103"/>
<child widget="main_menu/new_select/list_item_2" x="20" y="133"/>
<child widget="main_menu/new_select/list_item_3" x="20" y="163"/>
<child widget="main_menu/new_select/list_item_4" x="20" y="193"/>
<child widget="main_menu/new_select/list_item_5" x="20" y="223"/>
<child widget="main_menu/new_select/list_item_6" x="20" y="253"/>
<child widget="main_menu/new_select/list_item_7" x="20" y="283"/>
<child widget="main_menu/new_select/list_item_8" x="20" y="313"/>
<child widget="main_menu/new_select/list_item_9" x="20" y="343"/>
<child widget="main_menu/new_select/list_item_10" x="20" y="373"/>
<child widget="main_menu/profile_manager/profile_manager_button_bar" y="414"/>
</widget>
<widget name="main_menu/profile_manager/settings_creating_profile" width="640" height="480" flags="pass_unhandled_to_focused_child no_history" auto_close="1">
<on event="deleted" run="new campaign decision" open="main_menu/profile_manager/settings_saving_profile"/>
</widget>
<widget name="main_menu/profile_manager/settings_saving_profile" width="640" height="480" flags="pass_unhandled_to_focused_child no_history" auto_close="1000" auto_close_fade="500">
<on event="b" run="NULL"/>
<on event="back" run="NULL"/>
<on event="deleted" run="NULL" open="main_menu/settings_select/player_setup/player_profile_edit/player_profile_edit_screen"/>
<child widget="error/warning_creating_player_profile_screen"/>
</widget>
</menus>
@@ -0,0 +1,17 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- The PC version's menus: ui\shell\main_menu\quit_select (tools/ce_menus.py) -->
<menus>
<widget name="main_menu/quit_select/quit_button_bar" type="column_list" width="256" height="20" flags="pass_unhandled_to_focused_child up_down_tabs_items left_right_tabs_items">
<child widget="common_button_back" x="128"/>
<child widget="main_menu/quit_select/quit_button_ok"/>
</widget>
<widget name="main_menu/quit_select/quit_button_ok" type="text" width="128" height="24" bitmap="bitmaps/text_button_background" string_list="strings/common_button_captions" string_index="1" font="ui\small_ui" color="#FFFFFFFF" align="center" text_y="2">
<on event="a" run="main menu quit game"/>
<on event="start" run="main menu quit game"/>
<on event="left_mouse" run="mouse emit accept event"/>
</widget>
<widget name="main_menu/quit_select/quit_screen" type="text" controller="1" left="180" top="160" width="280" height="160" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/alert_bkd" string_list="main_menu/quit_select/header_quit_game_prompt" font="ui\large_ui" color="#FF2896FF" align="center" text_x="-10" text_y="35">
<child widget="main_menu/quit_select/quit_button_bar" x="182" y="293"/>
<child widget="error/header_are_you_sure" x="182" y="164"/>
</widget>
</menus>
@@ -0,0 +1,57 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- The PC version's menus: ui\shell\main_menu\settings_select\multiplayer_setup\indicator_options_edit (tools/ce_menus.py) -->
<menus>
<widget name="main_menu/settings_select/multiplayer_setup/indicator_options_edit/header_indicator_options" controller="1" left="35" top="11" width="605" height="59" bitmap="main_menu/settings_select/multiplayer_setup/indicator_options_edit/header_indicator_options">
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/indicator_options_edit/indicator_button_bar" type="column_list" width="640" height="28" flags="pass_unhandled_to_focused_child left_right_tabs_items">
<data input="common button bar update"/>
<child widget="main_menu/settings_select/multiplayer_setup/indicator_options_edit/indicator_button_ok" x="380" y="1"/>
<child widget="common_button_cancel" x="510" y="1"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/indicator_options_edit/indicator_button_ok" type="text" width="128" height="24" bitmap="bitmaps/text_button_background" string_list="strings/common_button_captions" string_index="1" font="ui\small_ui" color="#FFFFFFFF" align="center" text_y="2">
<on event="a" run="mp profile set indicator opts" back="true"/>
<on event="start" run="mp profile set indicator opts" back="true"/>
<on event="left_mouse" run="mouse emit accept event"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/indicator_options_edit/indicator_options_friends_on_screen_label" type="text" controller="1" width="320" height="22" string_list="main_menu/settings_select/multiplayer_setup/indicator_options_edit/indicator_options_labels" string_index="3" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="4">
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/indicator_options_edit/indicator_options_friends_on_screen_spinner" type="spinner" left="2" top="2" width="46" height="20" flags="pass_unhandled_to_focused_child left_right_tabs_items" string_list="main_menu/settings_select/multiplayer_setup/indicator_options_edit/var_friends_on_screen" font="ui\large_ui" color="#FF2896FF" align="center" text_y="4" list_flags="items_from_strings" header_bitmap="bitmaps/arrow_sm_left" footer_bitmap="bitmaps/arrow_sm_right" header_bounds="7 -6 19 0" footer_bounds="7 48 19 54">
<on event="left_mouse" run="mouse spinner 1wide click"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/indicator_options_edit/indicator_options_help" type="text" controller="1" left="68" top="321" width="482" height="79" string_list="main_menu/settings_select/multiplayer_setup/indicator_options_edit/cap_indicator_options" font="ui\large_ui" color="#FFFFFFFF">
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/indicator_options_edit/indicator_options_menu" type="column_list" width="640" height="480" flags="pass_unhandled_to_focused_child up_down_tabs_children" description="main_menu/settings_select/multiplayer_setup/indicator_options_edit/indicator_options_help">
<data input="game settings lists text update"/>
<on event="created" run="mp profile init indicator opts"/>
<child widget="main_menu/settings_select/multiplayer_setup/indicator_options_edit/op_radar display" x="54" y="73"/>
<child widget="main_menu/settings_select/multiplayer_setup/indicator_options_edit/op_players_on_radar" x="54" y="103"/>
<child widget="main_menu/settings_select/multiplayer_setup/indicator_options_edit/op_friends_on_screen" x="54" y="133"/>
<child widget="main_menu/settings_select/multiplayer_setup/indicator_options_edit/indicator_button_bar" y="414"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/indicator_options_edit/indicator_options_players_on_radar_label" type="text" controller="1" width="300" height="22" string_list="main_menu/settings_select/multiplayer_setup/indicator_options_edit/indicator_options_labels" string_index="2" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="4">
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/indicator_options_edit/indicator_options_players_on_radar_spinner" type="spinner" left="2" top="2" width="106" height="20" flags="pass_unhandled_to_focused_child left_right_tabs_items" string_list="main_menu/settings_select/multiplayer_setup/indicator_options_edit/var_others_on_radar" font="ui\large_ui" color="#FF2896FF" align="center" text_y="4" list_flags="items_from_strings" header_bitmap="bitmaps/arrow_sm_left" footer_bitmap="bitmaps/arrow_sm_right" header_bounds="7 -6 19 0" footer_bounds="7 108 19 114">
<on event="left_mouse" run="mouse spinner 1wide click"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/indicator_options_edit/indicator_options_radar display_label" type="text" controller="1" width="300" height="22" string_list="main_menu/settings_select/multiplayer_setup/indicator_options_edit/indicator_options_labels" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="4">
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/indicator_options_edit/indicator_options_radar display_spinner" type="spinner" left="3" top="2" width="183" height="20" flags="pass_unhandled_to_focused_child left_right_tabs_items" string_list="main_menu/settings_select/multiplayer_setup/indicator_options_edit/var_radar display" font="ui\large_ui" color="#FF2896FF" align="center" list_flags="items_from_strings" header_bitmap="bitmaps/arrow_sm_left" footer_bitmap="bitmaps/arrow_sm_right" header_bounds="7 -6 19 0" footer_bounds="7 186 19 192">
<on event="left_mouse" run="mouse spinner 1wide click"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/indicator_options_edit/indicator_options_screen" width="640" height="480" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/gradient">
<child widget="main_menu/settings_select/multiplayer_setup/indicator_options_edit/header_indicator_options"/>
<child widget="main_menu/settings_select/multiplayer_setup/indicator_options_edit/indicator_options_menu"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/indicator_options_edit/op_friends_on_screen" width="512" height="28" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/option_bkds" color="#FF2896FF">
<child widget="main_menu/settings_select/multiplayer_setup/indicator_options_edit/indicator_options_friends_on_screen_label"/>
<child widget="main_menu/settings_select/multiplayer_setup/indicator_options_edit/indicator_options_friends_on_screen_spinner" x="366" y="1"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/indicator_options_edit/op_players_on_radar" width="512" height="28" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/option_bkds" color="#FF2896FF">
<child widget="main_menu/settings_select/multiplayer_setup/indicator_options_edit/indicator_options_players_on_radar_label"/>
<child widget="main_menu/settings_select/multiplayer_setup/indicator_options_edit/indicator_options_players_on_radar_spinner" x="336" y="1"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/indicator_options_edit/op_radar display" width="512" height="28" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/option_bkds" color="#FF2896FF">
<child widget="main_menu/settings_select/multiplayer_setup/indicator_options_edit/indicator_options_radar display_label"/>
<child widget="main_menu/settings_select/multiplayer_setup/indicator_options_edit/indicator_options_radar display_spinner" x="297" y="1"/>
</widget>
</menus>
@@ -0,0 +1,60 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- The port's multiplayer screens, in the PC version's style (tools/port_settings.py) -->
<menus>
<widget name="main_menu/settings_select/multiplayer_setup/item_options_edit/op_map_weapons" width="512" height="28" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/option_bkds" color="#FF2896FF">
<child widget="main_menu/settings_select/multiplayer_setup/item_options_edit/map_weapons_label"/>
<child widget="main_menu/settings_select/multiplayer_setup/item_options_edit/map_weapons_spinner" x="286" y="1"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/item_options_edit/map_weapons_label" type="text" controller="1" width="300" height="22" string_list="main_menu/settings_select/multiplayer_setup/item_options_edit/item_options_labels" string_index="8" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="4">
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/item_options_edit/map_weapons_spinner" type="spinner" top="2" width="206" height="20" flags="pass_unhandled_to_focused_child left_right_tabs_items" string_list="main_menu/settings_select/multiplayer_setup/item_options_edit/var_map_weapons" font="ui\large_ui" color="#FF2896FF" align="center" text_y="4" list_flags="items_from_strings" header_bitmap="bitmaps/arrow_sm_left" footer_bitmap="bitmaps/arrow_sm_right" header_bounds="7 -13 19 -7" footer_bounds="7 208 19 214">
<on event="left_mouse" run="mouse spinner 1wide click"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/item_options_edit/op_loadout" width="512" height="28" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/option_bkds" color="#FF2896FF">
<child widget="main_menu/settings_select/multiplayer_setup/item_options_edit/loadout_label"/>
<child widget="main_menu/settings_select/multiplayer_setup/item_options_edit/loadout_spinner" x="286" y="1"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/item_options_edit/loadout_label" type="text" controller="1" width="300" height="22" string_list="main_menu/settings_select/multiplayer_setup/item_options_edit/item_options_labels" string_index="5" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="4">
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/item_options_edit/loadout_spinner" type="spinner" top="2" width="206" height="20" flags="pass_unhandled_to_focused_child left_right_tabs_items" string_list="main_menu/settings_select/multiplayer_setup/item_options_edit/var_loadout" font="ui\large_ui" color="#FF2896FF" align="center" text_y="4" list_flags="items_from_strings" header_bitmap="bitmaps/arrow_sm_left" footer_bitmap="bitmaps/arrow_sm_right" header_bounds="7 -13 19 -7" footer_bounds="7 208 19 214">
<on event="left_mouse" run="mouse spinner 1wide click"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/item_options_edit/op_primary_weapon" width="512" height="28" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/option_bkds" color="#FF2896FF">
<child widget="main_menu/settings_select/multiplayer_setup/item_options_edit/primary_weapon_label"/>
<child widget="main_menu/settings_select/multiplayer_setup/item_options_edit/primary_weapon_spinner" x="286" y="1"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/item_options_edit/primary_weapon_label" type="text" controller="1" width="300" height="22" string_list="main_menu/settings_select/multiplayer_setup/item_options_edit/item_options_labels" string_index="6" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="4">
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/item_options_edit/primary_weapon_spinner" type="spinner" top="2" width="206" height="20" flags="pass_unhandled_to_focused_child left_right_tabs_items" string_list="main_menu/settings_select/multiplayer_setup/item_options_edit/var_loadout_weapon" font="ui\large_ui" color="#FF2896FF" align="center" text_y="4" list_flags="items_from_strings" header_bitmap="bitmaps/arrow_sm_left" footer_bitmap="bitmaps/arrow_sm_right" header_bounds="7 -13 19 -7" footer_bounds="7 208 19 214">
<on event="left_mouse" run="mouse spinner 1wide click"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/item_options_edit/op_secondary_weapon" width="512" height="28" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/option_bkds" color="#FF2896FF">
<child widget="main_menu/settings_select/multiplayer_setup/item_options_edit/secondary_weapon_label"/>
<child widget="main_menu/settings_select/multiplayer_setup/item_options_edit/secondary_weapon_spinner" x="286" y="1"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/item_options_edit/secondary_weapon_label" type="text" controller="1" width="300" height="22" string_list="main_menu/settings_select/multiplayer_setup/item_options_edit/item_options_labels" string_index="7" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="4">
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/item_options_edit/secondary_weapon_spinner" type="spinner" top="2" width="206" height="20" flags="pass_unhandled_to_focused_child left_right_tabs_items" string_list="main_menu/settings_select/multiplayer_setup/item_options_edit/var_loadout_weapon" font="ui\large_ui" color="#FF2896FF" align="center" text_y="4" list_flags="items_from_strings" header_bitmap="bitmaps/arrow_sm_left" footer_bitmap="bitmaps/arrow_sm_right" header_bounds="7 -13 19 -7" footer_bounds="7 208 19 214">
<on event="left_mouse" run="mouse spinner 1wide click"/>
</widget>
<strings name="main_menu/settings_select/multiplayer_setup/item_options_edit/var_map_weapons">
<string text="YES"/>
<string text="NO"/>
</strings>
<strings name="main_menu/settings_select/multiplayer_setup/item_options_edit/var_loadout">
<string text="CATEGORY"/>
<string text="CUSTOM"/>
</strings>
<strings name="main_menu/settings_select/multiplayer_setup/item_options_edit/var_loadout_weapon">
<string text="NONE"/>
<string text="RANDOM"/>
<string text="ASSAULT RIFLE"/>
<string text="PISTOL"/>
<string text="SHOTGUN"/>
<string text="SNIPER RIFLE"/>
<string text="ROCKET LAUNCHER"/>
<string text="PLASMA PISTOL"/>
<string text="PLASMA RIFLE"/>
<string text="NEEDLER"/>
</strings>
</menus>
@@ -0,0 +1,61 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- The PC version's menus: ui\shell\main_menu\settings_select\multiplayer_setup\item_options_edit (tools/ce_menus.py) -->
<menus>
<widget name="main_menu/settings_select/multiplayer_setup/item_options_edit/header_item_options" controller="1" left="35" top="11" width="605" height="59" bitmap="main_menu/settings_select/multiplayer_setup/item_options_edit/header_item_options">
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/item_options_edit/item_button_bar" type="column_list" width="640" height="28" flags="pass_unhandled_to_focused_child left_right_tabs_items">
<data input="common button bar update"/>
<child widget="main_menu/settings_select/multiplayer_setup/item_options_edit/item_button_ok" x="380" y="1"/>
<child widget="common_button_cancel" x="510" y="1"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/item_options_edit/item_button_ok" type="text" width="128" height="24" bitmap="bitmaps/text_button_background" string_list="strings/common_button_captions" string_index="1" font="ui\small_ui" color="#FFFFFFFF" align="center" text_y="2">
<on event="a" run="mp profile set item options" back="true"/>
<on event="start" run="mp profile set item options" back="true"/>
<on event="left_mouse" run="mouse emit accept event"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/item_options_edit/item_options_help" type="text" controller="1" left="68" top="321" width="482" height="79" string_list="main_menu/settings_select/multiplayer_setup/item_options_edit/cap_item_options" font="ui\large_ui" color="#FFFFFFFF">
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/item_options_edit/item_options_infinite_grenades_label" type="text" controller="1" width="300" height="22" string_list="main_menu/settings_select/multiplayer_setup/item_options_edit/item_options_labels" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="4">
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/item_options_edit/item_options_infinite_grenades_spinner" type="spinner" left="2" top="2" width="104" height="20" flags="pass_unhandled_to_focused_child left_right_tabs_items" string_list="main_menu/settings_select/multiplayer_setup/item_options_edit/var_infinite_grenades" font="ui\large_ui" color="#FF2896FF" align="center" list_flags="items_from_strings" header_bitmap="bitmaps/arrow_sm_left" footer_bitmap="bitmaps/arrow_sm_right" header_bounds="7 -13 19 -7" footer_bounds="7 108 19 114">
<on event="left_mouse" run="mouse spinner 1wide click"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/item_options_edit/item_options_menu" type="column_list" width="640" height="480" flags="pass_unhandled_to_focused_child up_down_tabs_children" description="main_menu/settings_select/multiplayer_setup/item_options_edit/item_options_help">
<data input="game settings lists text update"/>
<on event="created" run="mp profile init item options"/>
<child widget="main_menu/settings_select/multiplayer_setup/item_options_edit/op_infinite_grenades" x="54" y="73"/>
<child widget="main_menu/settings_select/multiplayer_setup/item_options_edit/op_weapon_set" x="54" y="103"/>
<child widget="main_menu/settings_select/multiplayer_setup/item_options_edit/op_starting_equipment" x="54" y="133"/>
<child widget="main_menu/settings_select/multiplayer_setup/item_options_edit/op_map_weapons" x="54" y="163"/>
<child widget="main_menu/settings_select/multiplayer_setup/item_options_edit/op_loadout" x="54" y="193"/>
<child widget="main_menu/settings_select/multiplayer_setup/item_options_edit/op_primary_weapon" x="54" y="223"/>
<child widget="main_menu/settings_select/multiplayer_setup/item_options_edit/op_secondary_weapon" x="54" y="253"/>
<child widget="main_menu/settings_select/multiplayer_setup/item_options_edit/item_button_bar" y="414"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/item_options_edit/item_options_screen" width="640" height="480" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/gradient">
<child widget="main_menu/settings_select/multiplayer_setup/item_options_edit/header_item_options"/>
<child widget="main_menu/settings_select/multiplayer_setup/item_options_edit/item_options_menu"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/item_options_edit/item_options_starting_equipment_label" type="text" controller="1" width="300" height="22" string_list="main_menu/settings_select/multiplayer_setup/item_options_edit/item_options_labels" string_index="3" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="4">
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/item_options_edit/item_options_starting_equipment_spinner" type="spinner" top="2" width="206" height="20" flags="pass_unhandled_to_focused_child left_right_tabs_items" string_list="main_menu/settings_select/multiplayer_setup/item_options_edit/var_starting_equipment" font="ui\large_ui" color="#FF2896FF" align="center" text_y="4" list_flags="items_from_strings" header_bitmap="bitmaps/arrow_sm_left" footer_bitmap="bitmaps/arrow_sm_right" header_bounds="7 -13 19 -7" footer_bounds="7 208 19 214">
<on event="left_mouse" run="mouse spinner 1wide click"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/item_options_edit/item_options_weapon_set_label" type="text" controller="1" width="300" height="22" string_list="main_menu/settings_select/multiplayer_setup/item_options_edit/item_options_labels" string_index="1" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="4">
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/item_options_edit/item_options_weapon_set_spinner" type="spinner" top="2" width="206" height="20" flags="pass_unhandled_to_focused_child left_right_tabs_items" string_list="main_menu/settings_select/multiplayer_setup/item_options_edit/var_weapon_set" font="ui\large_ui" color="#FF2896FF" align="center" text_y="4" list_flags="items_from_strings" header_bitmap="bitmaps/arrow_sm_left" footer_bitmap="bitmaps/arrow_sm_right" header_bounds="7 -13 19 -7" footer_bounds="7 208 19 214">
<on event="left_mouse" run="mouse spinner 1wide click"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/item_options_edit/op_infinite_grenades" width="512" height="28" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/option_bkds" color="#FF2896FF">
<child widget="main_menu/settings_select/multiplayer_setup/item_options_edit/item_options_infinite_grenades_label"/>
<child widget="main_menu/settings_select/multiplayer_setup/item_options_edit/item_options_infinite_grenades_spinner" x="337" y="1"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/item_options_edit/op_starting_equipment" width="512" height="28" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/option_bkds" color="#FF2896FF">
<child widget="main_menu/settings_select/multiplayer_setup/item_options_edit/item_options_starting_equipment_label"/>
<child widget="main_menu/settings_select/multiplayer_setup/item_options_edit/item_options_starting_equipment_spinner" x="286" y="1"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/item_options_edit/op_weapon_set" width="512" height="28" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/option_bkds" color="#FF2896FF">
<child widget="main_menu/settings_select/multiplayer_setup/item_options_edit/item_options_weapon_set_label"/>
<child widget="main_menu/settings_select/multiplayer_setup/item_options_edit/item_options_weapon_set_spinner" x="286" y="1"/>
</widget>
</menus>
@@ -0,0 +1,10 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- The PC version's menus: ui\shell\main_menu\settings_select\multiplayer_setup\name_edit (tools/ce_menus.py) -->
<menus>
<widget name="main_menu/settings_select/multiplayer_setup/name_edit/gametype_name_screen" width="640" height="480" flags="pass_unhandled_to_focused_child" auto_close="1" bitmap="bitmaps/gradient">
<on event="created" run="NULL"/>
<child widget="main_menu/settings_select/multiplayer_setup/name_edit/header_gametype_name"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/name_edit/header_gametype_name" controller="1" left="35" top="11" width="346" height="59" bitmap="main_menu/settings_select/multiplayer_setup/name_edit/header_gametype_name">
</widget>
</menus>
@@ -0,0 +1,107 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- The PC version's menus: ui\shell\main_menu\settings_select\multiplayer_setup\player_options_edit (tools/ce_menus.py) -->
<menus>
<widget name="main_menu/settings_select/multiplayer_setup/player_options_edit/header_player_options" controller="1" left="35" top="11" width="605" height="59" bitmap="main_menu/settings_select/multiplayer_setup/player_options_edit/header_player_options">
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/player_options_edit/invisible_players_label" type="text" controller="1" width="320" height="22" string_list="main_menu/settings_select/multiplayer_setup/player_options_edit/player_options_labels" string_index="6" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="4">
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/player_options_edit/invisible_players_spinner" type="spinner" left="2" top="2" width="148" height="20" flags="pass_unhandled_to_focused_child left_right_tabs_items" string_list="main_menu/settings_select/multiplayer_setup/player_options_edit/var_invisible_players" font="ui\large_ui" color="#FF2896FF" align="center" text_y="4" list_flags="items_from_strings" header_bitmap="bitmaps/arrow_sm_left" footer_bitmap="bitmaps/arrow_sm_right" header_bounds="7 -6 19 0" footer_bounds="7 150 19 156">
<on event="left_mouse" run="mouse spinner 1wide click"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/player_options_edit/maximum_health_label" type="text" controller="1" width="300" height="22" string_list="main_menu/settings_select/multiplayer_setup/player_options_edit/player_options_labels" string_index="1" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="4">
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/player_options_edit/maximum_health_spinner" type="spinner" left="2" top="2" width="148" height="20" flags="pass_unhandled_to_focused_child left_right_tabs_items" string_list="main_menu/settings_select/multiplayer_setup/player_options_edit/var_maximum_health" font="ui\large_ui" color="#FF2896FF" align="center" list_flags="items_from_strings" header_bitmap="bitmaps/arrow_sm_left" footer_bitmap="bitmaps/arrow_sm_right" header_bounds="7 -6 19 0" footer_bounds="7 150 19 156">
<on event="left_mouse" run="mouse spinner 1wide click"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/player_options_edit/number_of_lives_label" type="text" controller="1" width="300" height="22" string_list="main_menu/settings_select/multiplayer_setup/player_options_edit/player_options_labels" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="4">
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/player_options_edit/number_of_lives_spinner" type="spinner" left="3" top="2" width="147" height="20" flags="pass_unhandled_to_focused_child left_right_tabs_items" string_list="main_menu/settings_select/multiplayer_setup/player_options_edit/var_number_of_lives" font="ui\large_ui" color="#FF2896FF" align="center" list_flags="items_from_strings" header_bitmap="bitmaps/arrow_sm_left" footer_bitmap="bitmaps/arrow_sm_right" header_bounds="7 -6 19 0" footer_bounds="7 150 19 156">
<on event="left_mouse" run="mouse spinner 1wide click"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/player_options_edit/odd_man_out_label" type="text" controller="1" width="320" height="22" string_list="main_menu/settings_select/multiplayer_setup/player_options_edit/player_options_labels" string_index="5" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="4">
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/player_options_edit/odd_man_out_spinner" type="spinner" left="2" top="2" width="148" height="20" flags="pass_unhandled_to_focused_child left_right_tabs_items" string_list="main_menu/settings_select/multiplayer_setup/player_options_edit/var_odd_man_out" font="ui\large_ui" color="#FF2896FF" align="center" text_y="4" list_flags="items_from_strings" header_bitmap="bitmaps/arrow_sm_left" footer_bitmap="bitmaps/arrow_sm_right" header_bounds="7 -6 19 0" footer_bounds="7 150 19 156">
<on event="left_mouse" run="mouse spinner 1wide click"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/player_options_edit/op_invisible_players" width="512" height="28" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/option_bkds" color="#FF2896FF">
<child widget="main_menu/settings_select/multiplayer_setup/player_options_edit/invisible_players_label"/>
<child widget="main_menu/settings_select/multiplayer_setup/player_options_edit/invisible_players_spinner" x="320" y="1"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/player_options_edit/op_maximum_health" width="512" height="28" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/option_bkds" color="#FF2896FF">
<child widget="main_menu/settings_select/multiplayer_setup/player_options_edit/maximum_health_label"/>
<child widget="main_menu/settings_select/multiplayer_setup/player_options_edit/maximum_health_spinner" x="320" y="1"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/player_options_edit/op_number_of_lives" width="512" height="28" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/option_bkds" color="#FF2896FF">
<child widget="main_menu/settings_select/multiplayer_setup/player_options_edit/number_of_lives_label"/>
<child widget="main_menu/settings_select/multiplayer_setup/player_options_edit/number_of_lives_spinner" x="320" y="1"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/player_options_edit/op_odd_man_out" width="512" height="28" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/option_bkds" color="#FF2896FF">
<child widget="main_menu/settings_select/multiplayer_setup/player_options_edit/odd_man_out_label"/>
<child widget="main_menu/settings_select/multiplayer_setup/player_options_edit/odd_man_out_spinner" x="320" y="1"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/player_options_edit/op_respawn_time" width="512" height="28" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/option_bkds" color="#FF2896FF">
<child widget="main_menu/settings_select/multiplayer_setup/player_options_edit/respawn_time_label"/>
<child widget="main_menu/settings_select/multiplayer_setup/player_options_edit/respawn_time_spinner" x="320" y="1"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/player_options_edit/op_respawn_time_growth" width="512" height="28" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/option_bkds" color="#FF2896FF">
<child widget="main_menu/settings_select/multiplayer_setup/player_options_edit/respawn_time_growth_label"/>
<child widget="main_menu/settings_select/multiplayer_setup/player_options_edit/respawn_time_growth_spinner" x="320" y="1"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/player_options_edit/op_shields" width="512" height="28" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/option_bkds" color="#FF2896FF">
<child widget="main_menu/settings_select/multiplayer_setup/player_options_edit/shields_label"/>
<child widget="main_menu/settings_select/multiplayer_setup/player_options_edit/shields_spinner" x="320" y="1"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/player_options_edit/op_suicide_penalty" width="512" height="28" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/option_bkds" color="#FF2896FF">
<child widget="main_menu/settings_select/multiplayer_setup/player_options_edit/suicide_penalty_label"/>
<child widget="main_menu/settings_select/multiplayer_setup/player_options_edit/suicide_penalty_spinner" x="320" y="1"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/player_options_edit/player_button_bar" type="column_list" width="640" height="28" flags="pass_unhandled_to_focused_child left_right_tabs_items">
<data input="common button bar update"/>
<child widget="main_menu/settings_select/multiplayer_setup/player_options_edit/player_button_ok" x="380" y="1"/>
<child widget="common_button_cancel" x="510" y="1"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/player_options_edit/player_button_ok" type="text" width="128" height="24" bitmap="bitmaps/text_button_background" string_list="strings/common_button_captions" string_index="1" font="ui\small_ui" color="#FFFFFFFF" align="center" text_y="2">
<on event="a" run="mp profile set player options" back="true"/>
<on event="start" run="mp profile set player options" back="true"/>
<on event="left_mouse" run="mouse emit accept event"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/player_options_edit/player_options_help" type="text" controller="1" left="68" top="321" width="482" height="79" string_list="main_menu/settings_select/multiplayer_setup/player_options_edit/cap_player_options" font="ui\large_ui" color="#FFFFFFFF">
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/player_options_edit/player_options_menu" type="column_list" width="640" height="480" flags="pass_unhandled_to_focused_child up_down_tabs_children" description="main_menu/settings_select/multiplayer_setup/player_options_edit/player_options_help">
<data input="game settings lists text update"/>
<on event="created" run="mp profile init player opts"/>
<child widget="main_menu/settings_select/multiplayer_setup/player_options_edit/op_number_of_lives" x="54" y="73"/>
<child widget="main_menu/settings_select/multiplayer_setup/player_options_edit/op_maximum_health" x="54" y="103"/>
<child widget="main_menu/settings_select/multiplayer_setup/player_options_edit/op_shields" x="54" y="133"/>
<child widget="main_menu/settings_select/multiplayer_setup/player_options_edit/op_respawn_time" x="54" y="163"/>
<child widget="main_menu/settings_select/multiplayer_setup/player_options_edit/op_respawn_time_growth" x="54" y="193"/>
<child widget="main_menu/settings_select/multiplayer_setup/player_options_edit/op_odd_man_out" x="54" y="223"/>
<child widget="main_menu/settings_select/multiplayer_setup/player_options_edit/op_invisible_players" x="54" y="253"/>
<child widget="main_menu/settings_select/multiplayer_setup/player_options_edit/op_suicide_penalty" x="54" y="283"/>
<child widget="main_menu/settings_select/multiplayer_setup/player_options_edit/player_button_bar" y="414"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/player_options_edit/player_options_screen" width="640" height="480" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/gradient">
<child widget="main_menu/settings_select/multiplayer_setup/player_options_edit/header_player_options"/>
<child widget="main_menu/settings_select/multiplayer_setup/player_options_edit/player_options_menu"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/player_options_edit/respawn_time_growth_label" type="text" controller="1" width="320" height="22" string_list="main_menu/settings_select/multiplayer_setup/player_options_edit/player_options_labels" string_index="4" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="4">
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/player_options_edit/respawn_time_growth_spinner" type="spinner" left="3" top="2" width="147" height="20" flags="pass_unhandled_to_focused_child left_right_tabs_items" string_list="main_menu/settings_select/multiplayer_setup/player_options_edit/var_respawn_time_growh" font="ui\large_ui" color="#FF2896FF" align="center" text_y="4" list_flags="items_from_strings" header_bitmap="bitmaps/arrow_sm_left" footer_bitmap="bitmaps/arrow_sm_right" header_bounds="7 -6 19 0" footer_bounds="7 150 19 156">
<on event="left_mouse" run="mouse spinner 1wide click"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/player_options_edit/respawn_time_label" type="text" controller="1" width="320" height="22" string_list="main_menu/settings_select/multiplayer_setup/player_options_edit/player_options_labels" string_index="3" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="4">
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/player_options_edit/respawn_time_spinner" type="spinner" left="3" top="2" width="147" height="20" flags="pass_unhandled_to_focused_child left_right_tabs_items" string_list="main_menu/settings_select/multiplayer_setup/player_options_edit/var_respawn_time" font="ui\large_ui" color="#FF2896FF" align="center" text_y="4" list_flags="items_from_strings" header_bitmap="bitmaps/arrow_sm_left" footer_bitmap="bitmaps/arrow_sm_right" header_bounds="7 -6 19 0" footer_bounds="7 150 19 156">
<on event="left_mouse" run="mouse spinner 1wide click"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/player_options_edit/shields_label" type="text" controller="1" width="300" height="22" string_list="main_menu/settings_select/multiplayer_setup/player_options_edit/player_options_labels" string_index="2" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="4">
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/player_options_edit/shields_spinner" type="spinner" left="2" top="2" width="148" height="20" flags="pass_unhandled_to_focused_child left_right_tabs_items" string_list="main_menu/settings_select/multiplayer_setup/player_options_edit/var_shields" font="ui\large_ui" color="#FF2896FF" align="center" text_y="4" list_flags="items_from_strings" header_bitmap="bitmaps/arrow_sm_left" footer_bitmap="bitmaps/arrow_sm_right" header_bounds="7 -6 19 0" footer_bounds="7 150 19 156">
<on event="left_mouse" run="mouse spinner 1wide click"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/player_options_edit/suicide_penalty_label" type="text" controller="1" width="320" height="22" string_list="main_menu/settings_select/multiplayer_setup/player_options_edit/player_options_labels" string_index="7" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="4">
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/player_options_edit/suicide_penalty_spinner" type="spinner" left="3" top="2" width="147" height="20" flags="pass_unhandled_to_focused_child left_right_tabs_items" string_list="main_menu/settings_select/multiplayer_setup/player_options_edit/var_suicide_penalty" font="ui\large_ui" color="#FF2896FF" align="center" text_y="4" list_flags="items_from_strings" header_bitmap="bitmaps/arrow_sm_left" footer_bitmap="bitmaps/arrow_sm_right" header_bounds="7 -6 19 0" footer_bounds="7 150 19 156">
<on event="left_mouse" run="mouse spinner 1wide click"/>
</widget>
</menus>
@@ -0,0 +1,86 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- The PC version's menus: ui\shell\main_menu\settings_select\multiplayer_setup\playlist_edit\ctf_edit (tools/ce_menus.py) -->
<menus>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_edit/ctf_edit/assault_label" type="text" controller="1" width="300" height="22" string_list="main_menu/settings_select/multiplayer_setup/playlist_edit/ctf_edit/ctf_labels" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="4">
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_edit/ctf_edit/assault_spinner" type="spinner" left="2" top="2" width="148" height="20" flags="pass_unhandled_to_focused_child left_right_tabs_items" string_list="main_menu/settings_select/multiplayer_setup/playlist_edit/ctf_edit/var_assault" font="ui\large_ui" color="#FF2896FF" align="center" list_flags="items_from_strings" header_bitmap="bitmaps/arrow_sm_left" footer_bitmap="bitmaps/arrow_sm_right" header_bounds="7 -6 19 0" footer_bounds="7 150 19 156">
<on event="left_mouse" run="mouse spinner 1wide click"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_edit/ctf_edit/captures_to_win_label" type="text" controller="1" width="320" height="22" string_list="main_menu/settings_select/multiplayer_setup/playlist_edit/ctf_edit/ctf_labels" string_index="4" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="4">
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_edit/ctf_edit/captures_to_win_spinner" type="spinner" left="2" top="2" width="148" height="20" flags="pass_unhandled_to_focused_child left_right_tabs_items" string_list="main_menu/settings_select/multiplayer_setup/playlist_edit/ctf_edit/var_captures_to_win" font="ui\large_ui" color="#FF2896FF" align="center" text_y="4" list_flags="items_from_strings" header_bitmap="bitmaps/arrow_sm_left" footer_bitmap="bitmaps/arrow_sm_right" header_bounds="7 -6 19 0" footer_bounds="7 150 19 156">
<on event="left_mouse" run="mouse spinner 1wide click"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_edit/ctf_edit/ctf_button_bar" type="column_list" width="640" height="28" flags="pass_unhandled_to_focused_child left_right_tabs_items">
<data input="common button bar update"/>
<child widget="main_menu/settings_select/multiplayer_setup/playlist_edit/ctf_edit/ctf_button_ok" x="380" y="1"/>
<child widget="common_button_cancel" x="510" y="1"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_edit/ctf_edit/ctf_button_ok" type="text" width="128" height="24" bitmap="bitmaps/text_button_background" string_list="strings/common_button_captions" string_index="1" font="ui\small_ui" color="#FFFFFFFF" align="center" text_y="2">
<on event="a" run="mp profile set ctf rules" back="true"/>
<on event="start" run="mp profile set ctf rules" back="true"/>
<on event="left_mouse" run="mouse emit accept event"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_edit/ctf_edit/ctf_options_help" type="text" controller="1" left="68" top="311" width="482" height="99" string_list="main_menu/settings_select/multiplayer_setup/playlist_edit/ctf_edit/cap_ctf" font="ui\large_ui" color="#FFFFFFFF">
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_edit/ctf_edit/ctf_options_menu" type="column_list" width="640" height="480" flags="pass_unhandled_to_focused_child up_down_tabs_children" description="main_menu/settings_select/multiplayer_setup/playlist_edit/ctf_edit/ctf_options_help">
<data input="game settings lists text update"/>
<on event="created" run="mp profile init ctf rules"/>
<child widget="main_menu/settings_select/multiplayer_setup/playlist_edit/ctf_edit/op_assault" x="54" y="73"/>
<child widget="main_menu/settings_select/multiplayer_setup/playlist_edit/ctf_edit/op_single_flag" x="54" y="103"/>
<child widget="main_menu/settings_select/multiplayer_setup/playlist_edit/ctf_edit/op_flag_must_reset" x="54" y="133"/>
<child widget="main_menu/settings_select/multiplayer_setup/playlist_edit/ctf_edit/op_flag_at_home" x="54" y="163"/>
<child widget="main_menu/settings_select/multiplayer_setup/playlist_edit/ctf_edit/op_captures_to_win" x="54" y="193"/>
<child widget="main_menu/settings_select/multiplayer_setup/playlist_edit/ctf_edit/op_time_limit" x="54" y="223"/>
<child widget="main_menu/settings_select/multiplayer_setup/playlist_edit/ctf_edit/ctf_button_bar" y="414"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_edit/ctf_edit/ctf_options_screen" width="640" height="480" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/gradient">
<on event="created" run="NULL"/>
<child widget="main_menu/settings_select/multiplayer_setup/playlist_edit/game_type_select/header_rules"/>
<child widget="main_menu/settings_select/multiplayer_setup/playlist_edit/ctf_edit/ctf_options_menu"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_edit/ctf_edit/flag_at_home_label" type="text" controller="1" width="320" height="22" string_list="main_menu/settings_select/multiplayer_setup/playlist_edit/ctf_edit/ctf_labels" string_index="3" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="4">
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_edit/ctf_edit/flag_at_home_spinner" type="spinner" left="2" top="2" width="148" height="20" flags="pass_unhandled_to_focused_child left_right_tabs_items" string_list="main_menu/settings_select/multiplayer_setup/playlist_edit/ctf_edit/var_flag_at_home" font="ui\large_ui" color="#FF2896FF" align="center" text_y="4" list_flags="items_from_strings" header_bitmap="bitmaps/arrow_sm_left" footer_bitmap="bitmaps/arrow_sm_right" header_bounds="7 -6 19 0" footer_bounds="7 150 19 156">
<on event="left_mouse" run="mouse spinner 1wide click"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_edit/ctf_edit/flag_must_reset_label" type="text" controller="1" width="300" height="22" string_list="main_menu/settings_select/multiplayer_setup/playlist_edit/ctf_edit/ctf_labels" string_index="2" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="4">
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_edit/ctf_edit/flag_must_reset_spinner" type="spinner" left="2" top="2" width="148" height="20" flags="pass_unhandled_to_focused_child left_right_tabs_items" string_list="main_menu/settings_select/multiplayer_setup/playlist_edit/ctf_edit/var_flag_must_reset" font="ui\large_ui" color="#FF2896FF" align="center" text_y="4" list_flags="items_from_strings" header_bitmap="bitmaps/arrow_sm_left" footer_bitmap="bitmaps/arrow_sm_right" header_bounds="7 -6 19 0" footer_bounds="7 150 19 156">
<on event="left_mouse" run="mouse spinner 1wide click"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_edit/ctf_edit/op_assault" width="512" height="28" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/option_bkds" color="#FF2896FF">
<child widget="main_menu/settings_select/multiplayer_setup/playlist_edit/ctf_edit/assault_label"/>
<child widget="main_menu/settings_select/multiplayer_setup/playlist_edit/ctf_edit/assault_spinner" x="320" y="1"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_edit/ctf_edit/op_captures_to_win" width="512" height="28" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/option_bkds" color="#FF2896FF">
<child widget="main_menu/settings_select/multiplayer_setup/playlist_edit/ctf_edit/captures_to_win_label"/>
<child widget="main_menu/settings_select/multiplayer_setup/playlist_edit/ctf_edit/captures_to_win_spinner" x="320" y="1"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_edit/ctf_edit/op_flag_at_home" width="512" height="28" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/option_bkds" color="#FF2896FF">
<child widget="main_menu/settings_select/multiplayer_setup/playlist_edit/ctf_edit/flag_at_home_label"/>
<child widget="main_menu/settings_select/multiplayer_setup/playlist_edit/ctf_edit/flag_at_home_spinner" x="320" y="1"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_edit/ctf_edit/op_flag_must_reset" width="512" height="28" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/option_bkds" color="#FF2896FF">
<child widget="main_menu/settings_select/multiplayer_setup/playlist_edit/ctf_edit/flag_must_reset_label"/>
<child widget="main_menu/settings_select/multiplayer_setup/playlist_edit/ctf_edit/flag_must_reset_spinner" x="320" y="1"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_edit/ctf_edit/op_single_flag" width="512" height="28" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/option_bkds" color="#FF2896FF">
<child widget="main_menu/settings_select/multiplayer_setup/playlist_edit/ctf_edit/single_flag_label"/>
<child widget="main_menu/settings_select/multiplayer_setup/playlist_edit/ctf_edit/single_flag_spinner" x="320" y="1"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_edit/ctf_edit/op_time_limit" width="512" height="28" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/option_bkds" color="#FF2896FF">
<child widget="main_menu/settings_select/multiplayer_setup/playlist_edit/ctf_edit/time_limit_label"/>
<child widget="main_menu/settings_select/multiplayer_setup/playlist_edit/ctf_edit/time_limit_spinner" x="320" y="1"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_edit/ctf_edit/single_flag_label" type="text" controller="1" width="300" height="22" string_list="main_menu/settings_select/multiplayer_setup/playlist_edit/ctf_edit/ctf_labels" string_index="1" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="4">
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_edit/ctf_edit/single_flag_spinner" type="spinner" left="3" top="2" width="147" height="20" flags="pass_unhandled_to_focused_child left_right_tabs_items" string_list="main_menu/settings_select/multiplayer_setup/playlist_edit/ctf_edit/var_single_flag" font="ui\large_ui" color="#FF2896FF" align="center" list_flags="items_from_strings" header_bitmap="bitmaps/arrow_sm_left" footer_bitmap="bitmaps/arrow_sm_right" header_bounds="7 -6 19 0" footer_bounds="7 150 19 156">
<on event="left_mouse" run="mouse spinner 1wide click"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_edit/ctf_edit/time_limit_label" type="text" controller="1" width="320" height="22" string_list="main_menu/settings_select/multiplayer_setup/playlist_edit/ctf_edit/ctf_labels" string_index="5" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="4">
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_edit/ctf_edit/time_limit_spinner" type="spinner" left="2" top="2" width="148" height="20" flags="pass_unhandled_to_focused_child left_right_tabs_items" string_list="main_menu/settings_select/multiplayer_setup/playlist_edit/ctf_edit/var_time_limit" font="ui\large_ui" color="#FF2896FF" align="center" text_y="4" list_flags="items_from_strings" header_bitmap="bitmaps/arrow_sm_left" footer_bitmap="bitmaps/arrow_sm_right" header_bounds="7 -6 19 0" footer_bounds="7 150 19 156">
<on event="left_mouse" run="mouse spinner 1wide click"/>
</widget>
</menus>
@@ -0,0 +1,62 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- The PC version's menus: ui\shell\main_menu\settings_select\multiplayer_setup\playlist_edit\game_type_select (tools/ce_menus.py) -->
<menus>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_edit/game_type_select/gametype_select_button_bar" type="column_list" width="640" height="28" flags="pass_unhandled_to_focused_child left_right_tabs_items">
<data input="common button bar update"/>
<child widget="common_button_back" x="510" y="1"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_edit/game_type_select/gametype_select_ctf_item" type="text" left="51" top="78" width="232" height="32" bitmap="bitmaps/list_item_bkd_top" string_list="main_menu/settings_select/multiplayer_setup/playlist_edit/game_type_select/gametype_select_list_options" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="5">
<on event="a" run="mp profile set game engine" open="main_menu/settings_select/multiplayer_setup/playlist_edit/ctf_edit/ctf_options_screen"/>
<on event="start" run="mp profile set game engine" open="main_menu/settings_select/multiplayer_setup/playlist_edit/ctf_edit/ctf_options_screen"/>
<on event="left_mouse" run="mouse emit accept event"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_edit/game_type_select/gametype_select_koth_item" type="text" left="51" top="111" width="232" height="32" bitmap="bitmaps/list_item_bkd" string_list="main_menu/settings_select/multiplayer_setup/playlist_edit/game_type_select/gametype_select_list_options" string_index="1" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="5">
<on event="a" run="mp profile set game engine" open="main_menu/settings_select/multiplayer_setup/playlist_edit/koth_edit/koth_options_screen"/>
<on event="start" run="mp profile set game engine" open="main_menu/settings_select/multiplayer_setup/playlist_edit/koth_edit/koth_options_screen"/>
<on event="left_mouse" run="mouse emit accept event"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_edit/game_type_select/gametype_select_list" type="column_list" width="640" height="480" flags="pass_unhandled_to_focused_child up_down_tabs_items" description="main_menu/settings_select/multiplayer_setup/playlist_edit/game_type_select/gametype_select_list_ext_desc">
<data input="gametype select menu update desc"/>
<on event="created" run="mp profile init game engine"/>
<child widget="main_menu/settings_select/multiplayer_setup/playlist_edit/game_type_select/gametype_select_ctf_item"/>
<child widget="main_menu/settings_select/multiplayer_setup/playlist_edit/game_type_select/gametype_select_koth_item"/>
<child widget="main_menu/settings_select/multiplayer_setup/playlist_edit/game_type_select/gametype_select_slayer_item"/>
<child widget="main_menu/settings_select/multiplayer_setup/playlist_edit/game_type_select/gametype_select_oddball_item"/>
<child widget="main_menu/settings_select/multiplayer_setup/playlist_edit/game_type_select/gametype_select_race_item"/>
<child widget="main_menu/settings_select/multiplayer_setup/playlist_edit/game_type_select/gametype_select_button_bar" y="414"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_edit/game_type_select/gametype_select_list_ext_desc" controller="1" left="275" top="78" width="320" height="322" bitmap="bitmaps/list_field">
<child widget="main_menu/settings_select/multiplayer_setup/playlist_edit/game_type_select/rules_list_ext_desc_text" y="-22"/>
<child widget="main_menu/settings_select/multiplayer_setup/playlist_edit/game_type_select/rules_list_ext_desc_pic" x="20"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_edit/game_type_select/gametype_select_oddball_item" type="text" left="51" top="177" width="232" height="32" bitmap="bitmaps/list_item_bkd" string_list="main_menu/settings_select/multiplayer_setup/playlist_edit/game_type_select/gametype_select_list_options" string_index="3" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="5">
<on event="a" run="mp profile set game engine" open="main_menu/settings_select/multiplayer_setup/playlist_edit/oddball_edit/oddball_options_screen"/>
<on event="start" run="mp profile set game engine" open="main_menu/settings_select/multiplayer_setup/playlist_edit/oddball_edit/oddball_options_screen"/>
<on event="left_mouse" run="mouse emit accept event"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_edit/game_type_select/gametype_select_race_item" type="text" left="51" top="210" width="232" height="32" bitmap="bitmaps/list_item_bkd" string_list="main_menu/settings_select/multiplayer_setup/playlist_edit/game_type_select/gametype_select_list_options" string_index="4" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="5">
<on event="a" run="mp profile set game engine" open="main_menu/settings_select/multiplayer_setup/playlist_edit/race_edit/race_options_screen"/>
<on event="start" run="mp profile set game engine" open="main_menu/settings_select/multiplayer_setup/playlist_edit/race_edit/race_options_screen"/>
<on event="left_mouse" run="mouse emit accept event"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_edit/game_type_select/gametype_select_screen" width="640" height="480" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/gradient">
<on event="created" run="mp type menu initialize"/>
<child widget="main_menu/settings_select/multiplayer_setup/playlist_edit/header_set_options"/>
<child widget="main_menu/settings_select/multiplayer_setup/playlist_edit/game_type_select/gametype_select_list"/>
<child widget="main_menu/settings_select/multiplayer_setup/playlist_edit/game_type_select/rules_label" x="296" y="362"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_edit/game_type_select/gametype_select_slayer_item" type="text" left="51" top="144" width="232" height="32" bitmap="bitmaps/list_item_bkd" string_list="main_menu/settings_select/multiplayer_setup/playlist_edit/game_type_select/gametype_select_list_options" string_index="2" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="5">
<on event="a" run="mp profile set game engine" open="main_menu/settings_select/multiplayer_setup/playlist_edit/slayer_edit/slayer_options_screen"/>
<on event="start" run="mp profile set game engine" open="main_menu/settings_select/multiplayer_setup/playlist_edit/slayer_edit/slayer_options_screen"/>
<on event="left_mouse" run="mouse emit accept event"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_edit/game_type_select/header_rules" controller="1" left="35" top="11" width="605" height="59" bitmap="main_menu/settings_select/multiplayer_setup/playlist_edit/header_set_options">
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_edit/game_type_select/rules_label" type="text" controller="1" width="275" height="22" string_list="multiplayer_game_text" font="ui\large_ui" color="#FFFFFFFF">
<data input="mp edit profile set rule text"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_edit/game_type_select/rules_list_ext_desc_pic" controller="1" left="285" top="95" width="256" height="250" bitmap="main_menu/settings_select/multiplayer_setup/playlist_edit/game_type_select/rules_options">
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_edit/game_type_select/rules_list_ext_desc_text" type="text" controller="1" left="295" top="298" width="300" height="102" string_list="main_menu/settings_select/multiplayer_setup/playlist_edit/game_type_select/gametype_select_list_extended_dsc_text" font="ui\large_ui" color="#FF2896FF">
</widget>
</menus>
@@ -0,0 +1,57 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- The PC version's menus: ui\shell\main_menu\settings_select\multiplayer_setup\playlist_edit\koth_edit (tools/ce_menus.py) -->
<menus>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_edit/koth_edit/koth_button_bar" type="column_list" width="640" height="28" flags="pass_unhandled_to_focused_child left_right_tabs_items">
<data input="common button bar update"/>
<child widget="main_menu/settings_select/multiplayer_setup/playlist_edit/koth_edit/koth_button_ok" x="380" y="1"/>
<child widget="common_button_cancel" x="510" y="1"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_edit/koth_edit/koth_button_ok" type="text" width="128" height="24" bitmap="bitmaps/text_button_background" string_list="strings/common_button_captions" string_index="1" font="ui\small_ui" color="#FFFFFFFF" align="center" text_y="2">
<on event="a" run="mp profile set koth rules" back="true"/>
<on event="start" run="mp profile set koth rules" back="true"/>
<on event="left_mouse" run="mouse emit accept event"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_edit/koth_edit/koth_help" type="text" controller="1" left="68" top="321" width="482" height="79" string_list="main_menu/settings_select/multiplayer_setup/playlist_edit/koth_edit/cap_koth" font="ui\large_ui" color="#FFFFFFFF">
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_edit/koth_edit/koth_moving_hill_label" type="text" controller="1" width="300" height="22" string_list="main_menu/settings_select/multiplayer_setup/playlist_edit/koth_edit/koth_labels" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="4">
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_edit/koth_edit/koth_moving_hill_spinner" type="spinner" left="2" top="2" width="148" height="20" flags="pass_unhandled_to_focused_child left_right_tabs_items" string_list="main_menu/settings_select/multiplayer_setup/playlist_edit/koth_edit/var_moving_hill" font="ui\large_ui" color="#FF2896FF" align="center" list_flags="items_from_strings" header_bitmap="bitmaps/arrow_sm_left" footer_bitmap="bitmaps/arrow_sm_right" header_bounds="7 -6 19 0" footer_bounds="7 150 19 156">
<on event="left_mouse" run="mouse spinner 1wide click"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_edit/koth_edit/koth_options_menu" type="column_list" width="640" height="480" flags="pass_unhandled_to_focused_child up_down_tabs_children" description="main_menu/settings_select/multiplayer_setup/playlist_edit/koth_edit/koth_help">
<data input="game settings lists text update"/>
<on event="created" run="mp profile init koth rules"/>
<child widget="main_menu/settings_select/multiplayer_setup/playlist_edit/koth_edit/op_moving_hill" x="54" y="73"/>
<child widget="main_menu/settings_select/multiplayer_setup/playlist_edit/koth_edit/op_score_to_win" x="54" y="103"/>
<child widget="main_menu/settings_select/multiplayer_setup/playlist_edit/koth_edit/op_team_play" x="54" y="133"/>
<child widget="main_menu/settings_select/multiplayer_setup/playlist_edit/ctf_edit/op_time_limit" x="54" y="163"/>
<child widget="main_menu/settings_select/multiplayer_setup/playlist_edit/koth_edit/koth_button_bar" y="414"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_edit/koth_edit/koth_options_screen" width="640" height="480" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/gradient">
<on event="created" run="NULL"/>
<child widget="main_menu/settings_select/multiplayer_setup/playlist_edit/game_type_select/header_rules"/>
<child widget="main_menu/settings_select/multiplayer_setup/playlist_edit/koth_edit/koth_options_menu"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_edit/koth_edit/koth_score_to_win_label" type="text" controller="1" width="300" height="22" string_list="main_menu/settings_select/multiplayer_setup/playlist_edit/koth_edit/koth_labels" string_index="1" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="4">
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_edit/koth_edit/koth_score_to_win_spinner" type="spinner" left="4" top="2" width="146" height="20" flags="pass_unhandled_to_focused_child left_right_tabs_items" string_list="main_menu/settings_select/multiplayer_setup/playlist_edit/koth_edit/var_score_to_win" font="ui\large_ui" color="#FF2896FF" align="center" list_flags="items_from_strings" header_bitmap="bitmaps/arrow_sm_left" footer_bitmap="bitmaps/arrow_sm_right" header_bounds="7 -6 19 0" footer_bounds="7 150 19 156">
<on event="left_mouse" run="mouse spinner 1wide click"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_edit/koth_edit/koth_team_play_spinner" type="spinner" left="2" top="2" width="148" height="20" flags="pass_unhandled_to_focused_child left_right_tabs_items" string_list="main_menu/settings_select/multiplayer_setup/playlist_edit/koth_edit/var_team_play" font="ui\large_ui" color="#FF2896FF" align="center" list_flags="items_from_strings" header_bitmap="bitmaps/arrow_sm_left" footer_bitmap="bitmaps/arrow_sm_right" header_bounds="7 -6 19 0" footer_bounds="7 150 19 156">
<on event="left_mouse" run="mouse spinner 1wide click"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_edit/koth_edit/koth_teams_label" type="text" controller="1" width="300" height="22" string_list="main_menu/settings_select/multiplayer_setup/playlist_edit/koth_edit/koth_labels" string_index="2" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="4">
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_edit/koth_edit/op_moving_hill" width="512" height="28" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/option_bkds" color="#FF2896FF">
<child widget="main_menu/settings_select/multiplayer_setup/playlist_edit/koth_edit/koth_moving_hill_label"/>
<child widget="main_menu/settings_select/multiplayer_setup/playlist_edit/koth_edit/koth_moving_hill_spinner" x="320" y="1"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_edit/koth_edit/op_score_to_win" width="512" height="28" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/option_bkds" color="#FF2896FF">
<child widget="main_menu/settings_select/multiplayer_setup/playlist_edit/koth_edit/koth_score_to_win_label"/>
<child widget="main_menu/settings_select/multiplayer_setup/playlist_edit/koth_edit/koth_score_to_win_spinner" x="320" y="1"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_edit/koth_edit/op_team_play" width="512" height="28" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/option_bkds" color="#FF2896FF">
<child widget="main_menu/settings_select/multiplayer_setup/playlist_edit/koth_edit/koth_teams_label"/>
<child widget="main_menu/settings_select/multiplayer_setup/playlist_edit/koth_edit/koth_team_play_spinner" x="320" y="1"/>
</widget>
</menus>
@@ -0,0 +1,115 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- The PC version's menus: ui\shell\main_menu\settings_select\multiplayer_setup\playlist_edit\oddball_edit (tools/ce_menus.py) -->
<menus>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_edit/oddball_edit/ball_spawn_count_label" type="text" controller="1" width="320" height="22" string_list="main_menu/settings_select/multiplayer_setup/playlist_edit/oddball_edit/oddball_labels" string_index="5" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="4">
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_edit/oddball_edit/ball_spawn_count_spinner" type="spinner" left="3" top="2" width="201" height="20" flags="pass_unhandled_to_focused_child left_right_tabs_items" string_list="main_menu/settings_select/multiplayer_setup/playlist_edit/oddball_edit/var_ball_spawn_count" font="ui\large_ui" color="#FF2896FF" align="center" text_y="4" list_flags="items_from_strings" header_bitmap="bitmaps/arrow_sm_left" footer_bitmap="bitmaps/arrow_sm_right" header_bounds="7 -6 19 0" footer_bounds="7 204 19 210">
<on event="left_mouse" run="mouse spinner 1wide click"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_edit/oddball_edit/ball_type_label" type="text" controller="1" width="320" height="22" string_list="main_menu/settings_select/multiplayer_setup/playlist_edit/oddball_edit/oddball_labels" string_index="3" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="4">
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_edit/oddball_edit/ball_type_spinner" type="spinner" left="2" top="2" width="202" height="20" flags="pass_unhandled_to_focused_child left_right_tabs_items" string_list="main_menu/settings_select/multiplayer_setup/playlist_edit/oddball_edit/var_ball_type" font="ui\large_ui" color="#FF2896FF" align="center" text_y="4" list_flags="items_from_strings" header_bitmap="bitmaps/arrow_sm_left" footer_bitmap="bitmaps/arrow_sm_right" header_bounds="7 -6 19 0" footer_bounds="7 204 19 210">
<on event="left_mouse" run="mouse spinner 1wide click"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_edit/oddball_edit/oddball_button_bar" type="column_list" width="640" height="28" flags="pass_unhandled_to_focused_child left_right_tabs_items">
<data input="common button bar update"/>
<child widget="main_menu/settings_select/multiplayer_setup/playlist_edit/oddball_edit/oddball_button_ok" x="380" y="1"/>
<child widget="common_button_cancel" x="510" y="1"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_edit/oddball_edit/oddball_button_ok" type="text" width="128" height="24" bitmap="bitmaps/text_button_background" string_list="strings/common_button_captions" string_index="1" font="ui\small_ui" color="#FFFFFFFF" align="center" text_y="2">
<on event="a" run="mp profile set oddball rules" back="true"/>
<on event="start" run="mp profile set oddball rules" back="true"/>
<on event="left_mouse" run="mouse emit accept event"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_edit/oddball_edit/oddball_options_help" type="text" controller="1" left="68" top="341" width="482" height="79" string_list="main_menu/settings_select/multiplayer_setup/playlist_edit/oddball_edit/cap_oddball" font="ui\large_ui" color="#FFFFFFFF">
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_edit/oddball_edit/oddball_options_menu" type="column_list" width="640" height="480" flags="pass_unhandled_to_focused_child up_down_tabs_children" description="main_menu/settings_select/multiplayer_setup/playlist_edit/oddball_edit/oddball_options_help">
<data input="game settings lists text update"/>
<on event="created" run="mp profile init oddball rules"/>
<child widget="main_menu/settings_select/multiplayer_setup/playlist_edit/oddball_edit/op_trait_with_ball" x="54" y="73"/>
<child widget="main_menu/settings_select/multiplayer_setup/playlist_edit/oddball_edit/op_trait_without_ball" x="54" y="103"/>
<child widget="main_menu/settings_select/multiplayer_setup/playlist_edit/oddball_edit/op_speed_with_ball" x="54" y="133"/>
<child widget="main_menu/settings_select/multiplayer_setup/playlist_edit/oddball_edit/op_ball_type" x="54" y="163"/>
<child widget="main_menu/settings_select/multiplayer_setup/playlist_edit/oddball_edit/op_random_start" x="54" y="193"/>
<child widget="main_menu/settings_select/multiplayer_setup/playlist_edit/oddball_edit/op_ball_spawn_count" x="54" y="223"/>
<child widget="main_menu/settings_select/multiplayer_setup/playlist_edit/oddball_edit/op_score_to_win" x="54" y="253"/>
<child widget="main_menu/settings_select/multiplayer_setup/playlist_edit/oddball_edit/op_team_play" x="54" y="283"/>
<child widget="main_menu/settings_select/multiplayer_setup/playlist_edit/oddball_edit/op_time_limit" x="54" y="313"/>
<child widget="main_menu/settings_select/multiplayer_setup/playlist_edit/oddball_edit/oddball_button_bar" y="414"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_edit/oddball_edit/oddball_options_screen" width="640" height="480" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/gradient">
<child widget="main_menu/settings_select/multiplayer_setup/playlist_edit/game_type_select/header_rules"/>
<child widget="main_menu/settings_select/multiplayer_setup/playlist_edit/oddball_edit/oddball_options_menu"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_edit/oddball_edit/op_ball_spawn_count" width="512" height="28" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/option_bkds" color="#FF2896FF">
<child widget="main_menu/settings_select/multiplayer_setup/playlist_edit/oddball_edit/ball_spawn_count_label"/>
<child widget="main_menu/settings_select/multiplayer_setup/playlist_edit/oddball_edit/ball_spawn_count_spinner" x="288" y="1"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_edit/oddball_edit/op_ball_type" width="512" height="28" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/option_bkds" color="#FF2896FF">
<child widget="main_menu/settings_select/multiplayer_setup/playlist_edit/oddball_edit/ball_type_label"/>
<child widget="main_menu/settings_select/multiplayer_setup/playlist_edit/oddball_edit/ball_type_spinner" x="288" y="1"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_edit/oddball_edit/op_random_start" width="512" height="28" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/option_bkds" color="#FF2896FF">
<child widget="main_menu/settings_select/multiplayer_setup/playlist_edit/oddball_edit/random_start_label"/>
<child widget="main_menu/settings_select/multiplayer_setup/playlist_edit/oddball_edit/random_start_spinner" x="288" y="1"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_edit/oddball_edit/op_score_to_win" width="512" height="28" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/option_bkds" color="#FF2896FF">
<child widget="main_menu/settings_select/multiplayer_setup/playlist_edit/oddball_edit/score_to_win_label"/>
<child widget="main_menu/settings_select/multiplayer_setup/playlist_edit/oddball_edit/score_to_win_spinner" x="288" y="1"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_edit/oddball_edit/op_speed_with_ball" width="512" height="28" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/option_bkds" color="#FF2896FF">
<child widget="main_menu/settings_select/multiplayer_setup/playlist_edit/oddball_edit/speed_with_ball_label"/>
<child widget="main_menu/settings_select/multiplayer_setup/playlist_edit/oddball_edit/speed_with_ball_spinner" x="288" y="1"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_edit/oddball_edit/op_team_play" width="512" height="28" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/option_bkds" color="#FF2896FF">
<child widget="main_menu/settings_select/multiplayer_setup/playlist_edit/oddball_edit/team_play_label"/>
<child widget="main_menu/settings_select/multiplayer_setup/playlist_edit/oddball_edit/team_play_spinner" x="288" y="1"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_edit/oddball_edit/op_time_limit" width="512" height="28" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/option_bkds" color="#FF2896FF">
<child widget="main_menu/settings_select/multiplayer_setup/playlist_edit/oddball_edit/time_limit_label"/>
<child widget="main_menu/settings_select/multiplayer_setup/playlist_edit/oddball_edit/time_limit_spinner" x="288" y="1"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_edit/oddball_edit/op_trait_with_ball" width="512" height="28" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/option_bkds" color="#FF2896FF">
<child widget="main_menu/settings_select/multiplayer_setup/playlist_edit/oddball_edit/trait_with_ball_label"/>
<child widget="main_menu/settings_select/multiplayer_setup/playlist_edit/oddball_edit/trait_with_ball_spinner" x="288" y="1"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_edit/oddball_edit/op_trait_without_ball" width="512" height="28" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/option_bkds" color="#FF2896FF">
<child widget="main_menu/settings_select/multiplayer_setup/playlist_edit/oddball_edit/trait_without_ball_label"/>
<child widget="main_menu/settings_select/multiplayer_setup/playlist_edit/oddball_edit/trait_without_ball_spinner" x="288" y="1"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_edit/oddball_edit/random_start_label" type="text" controller="1" width="320" height="22" string_list="main_menu/settings_select/multiplayer_setup/playlist_edit/oddball_edit/oddball_labels" string_index="4" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="4">
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_edit/oddball_edit/random_start_spinner" type="spinner" left="2" top="2" width="202" height="20" flags="pass_unhandled_to_focused_child left_right_tabs_items" string_list="main_menu/settings_select/multiplayer_setup/playlist_edit/oddball_edit/var_random_start" font="ui\large_ui" color="#FF2896FF" align="center" text_y="4" list_flags="items_from_strings" header_bitmap="bitmaps/arrow_sm_left" footer_bitmap="bitmaps/arrow_sm_right" header_bounds="7 -6 19 0" footer_bounds="7 204 19 210">
<on event="left_mouse" run="mouse spinner 1wide click"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_edit/oddball_edit/score_to_win_label" type="text" controller="1" width="320" height="22" string_list="main_menu/settings_select/multiplayer_setup/playlist_edit/oddball_edit/oddball_labels" string_index="6" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="4">
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_edit/oddball_edit/score_to_win_spinner" type="spinner" left="2" top="2" width="202" height="20" flags="pass_unhandled_to_focused_child left_right_tabs_items" string_list="main_menu/settings_select/multiplayer_setup/playlist_edit/oddball_edit/var_score_to_win" font="ui\large_ui" color="#FF2896FF" align="center" text_y="4" list_flags="items_from_strings" header_bitmap="bitmaps/arrow_sm_left" footer_bitmap="bitmaps/arrow_sm_right" header_bounds="7 -6 19 0" footer_bounds="7 204 19 210">
<on event="left_mouse" run="mouse spinner 1wide click"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_edit/oddball_edit/speed_with_ball_label" type="text" controller="1" width="300" height="22" string_list="main_menu/settings_select/multiplayer_setup/playlist_edit/oddball_edit/oddball_labels" string_index="2" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="4">
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_edit/oddball_edit/speed_with_ball_spinner" type="spinner" left="3" top="2" width="201" height="20" flags="pass_unhandled_to_focused_child left_right_tabs_items" string_list="main_menu/settings_select/multiplayer_setup/playlist_edit/oddball_edit/var_speed_with_ball" font="ui\large_ui" color="#FF2896FF" align="center" text_y="4" list_flags="items_from_strings" header_bitmap="bitmaps/arrow_sm_left" footer_bitmap="bitmaps/arrow_sm_right" header_bounds="7 -6 19 0" footer_bounds="7 204 19 210">
<on event="left_mouse" run="mouse spinner 1wide click"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_edit/oddball_edit/team_play_label" type="text" controller="1" width="320" height="22" string_list="main_menu/settings_select/multiplayer_setup/playlist_edit/oddball_edit/oddball_labels" string_index="7" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="4">
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_edit/oddball_edit/team_play_spinner" type="spinner" left="2" top="2" width="202" height="20" flags="pass_unhandled_to_focused_child left_right_tabs_items" string_list="main_menu/settings_select/multiplayer_setup/playlist_edit/oddball_edit/var_team_play" font="ui\large_ui" color="#FF2896FF" align="center" text_y="4" list_flags="items_from_strings" header_bitmap="bitmaps/arrow_sm_left" footer_bitmap="bitmaps/arrow_sm_right" header_bounds="7 -6 19 0" footer_bounds="7 204 19 210">
<on event="left_mouse" run="mouse spinner 1wide click"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_edit/oddball_edit/time_limit_label" type="text" controller="1" width="320" height="22" string_list="main_menu/settings_select/multiplayer_setup/playlist_edit/ctf_edit/ctf_labels" string_index="5" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="4">
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_edit/oddball_edit/time_limit_spinner" type="spinner" left="2" top="2" width="202" height="20" flags="pass_unhandled_to_focused_child left_right_tabs_items" string_list="main_menu/settings_select/multiplayer_setup/playlist_edit/ctf_edit/var_time_limit" font="ui\large_ui" color="#FF2896FF" align="center" text_y="4" list_flags="items_from_strings" header_bitmap="bitmaps/arrow_sm_left" footer_bitmap="bitmaps/arrow_sm_right" header_bounds="7 -6 19 0" footer_bounds="7 204 19 210">
<on event="left_mouse" run="mouse spinner 1wide click"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_edit/oddball_edit/trait_with_ball_label" type="text" controller="1" width="300" height="22" string_list="main_menu/settings_select/multiplayer_setup/playlist_edit/oddball_edit/oddball_labels" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="4">
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_edit/oddball_edit/trait_with_ball_spinner" type="spinner" left="4" top="2" width="200" height="20" flags="pass_unhandled_to_focused_child left_right_tabs_items" string_list="main_menu/settings_select/multiplayer_setup/playlist_edit/oddball_edit/var_trait_with_ball" font="ui\large_ui" color="#FF2896FF" align="center" list_flags="items_from_strings" header_bitmap="bitmaps/arrow_sm_left" footer_bitmap="bitmaps/arrow_sm_right" header_bounds="7 -6 19 0" footer_bounds="7 204 19 210">
<on event="left_mouse" run="mouse spinner 1wide click"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_edit/oddball_edit/trait_without_ball_label" type="text" controller="1" width="300" height="22" string_list="main_menu/settings_select/multiplayer_setup/playlist_edit/oddball_edit/oddball_labels" string_index="1" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="4">
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_edit/oddball_edit/trait_without_ball_spinner" type="spinner" left="4" top="2" width="200" height="20" flags="pass_unhandled_to_focused_child left_right_tabs_items" string_list="main_menu/settings_select/multiplayer_setup/playlist_edit/oddball_edit/var_trait_without_ball" font="ui\large_ui" color="#FF2896FF" align="center" list_flags="items_from_strings" header_bitmap="bitmaps/arrow_sm_left" footer_bitmap="bitmaps/arrow_sm_right" header_bounds="7 -6 19 0" footer_bounds="7 204 19 210">
<on event="left_mouse" run="mouse spinner 1wide click"/>
</widget>
</menus>
@@ -0,0 +1,66 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- The PC version's menus: ui\shell\main_menu\settings_select\multiplayer_setup\playlist_edit\race_edit (tools/ce_menus.py) -->
<menus>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_edit/race_edit/laps_to_win_label" type="text" controller="1" width="300" height="22" string_list="main_menu/settings_select/multiplayer_setup/playlist_edit/race_edit/race_labels" string_index="2" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="4">
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_edit/race_edit/laps_to_win_spinner" type="spinner" left="2" top="2" width="148" height="20" flags="pass_unhandled_to_focused_child left_right_tabs_items" string_list="main_menu/settings_select/multiplayer_setup/playlist_edit/race_edit/var_laps_to_win" font="ui\large_ui" color="#FF2896FF" align="center" list_flags="items_from_strings" header_bitmap="bitmaps/arrow_sm_left" footer_bitmap="bitmaps/arrow_sm_right" header_bounds="7 -6 19 0" footer_bounds="7 150 19 156">
<on event="left_mouse" run="mouse spinner 1wide click"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_edit/race_edit/op_laps_to_win" width="512" height="28" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/option_bkds" color="#FF2896FF">
<child widget="main_menu/settings_select/multiplayer_setup/playlist_edit/race_edit/laps_to_win_label"/>
<child widget="main_menu/settings_select/multiplayer_setup/playlist_edit/race_edit/laps_to_win_spinner" x="320" y="1"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_edit/race_edit/op_race_type" width="512" height="28" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/option_bkds" color="#FF2896FF">
<child widget="main_menu/settings_select/multiplayer_setup/playlist_edit/race_edit/race_type_label"/>
<child widget="main_menu/settings_select/multiplayer_setup/playlist_edit/race_edit/race_type_spinner" x="320" y="1"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_edit/race_edit/op_team_play" width="512" height="28" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/option_bkds" color="#FF2896FF">
<child widget="main_menu/settings_select/multiplayer_setup/playlist_edit/race_edit/team_play_label"/>
<child widget="main_menu/settings_select/multiplayer_setup/playlist_edit/race_edit/team_play_spinner" x="320" y="1"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_edit/race_edit/op_team_scoring" width="512" height="28" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/option_bkds" color="#FF2896FF">
<child widget="main_menu/settings_select/multiplayer_setup/playlist_edit/race_edit/team_scoring_label"/>
<child widget="main_menu/settings_select/multiplayer_setup/playlist_edit/race_edit/team_scoring_spinner" x="320" y="1"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_edit/race_edit/race_button_bar" type="column_list" width="640" height="28" flags="pass_unhandled_to_focused_child left_right_tabs_items">
<data input="common button bar update"/>
<child widget="main_menu/settings_select/multiplayer_setup/playlist_edit/race_edit/race_button_ok" x="380" y="1"/>
<child widget="common_button_cancel" x="510" y="1"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_edit/race_edit/race_button_ok" type="text" width="128" height="24" bitmap="bitmaps/text_button_background" string_list="strings/common_button_captions" string_index="1" font="ui\small_ui" color="#FFFFFFFF" align="center" text_y="2">
<on event="a" run="mp profile set racing rules" back="true"/>
<on event="start" run="mp profile set racing rules" back="true"/>
<on event="left_mouse" run="mouse emit accept event"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_edit/race_edit/race_options_help" type="text" controller="1" left="68" top="321" width="482" height="79" string_list="main_menu/settings_select/multiplayer_setup/playlist_edit/race_edit/cap_race" font="ui\large_ui" color="#FFFFFFFF">
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_edit/race_edit/race_options_menu" type="column_list" width="640" height="480" flags="pass_unhandled_to_focused_child up_down_tabs_children" description="main_menu/settings_select/multiplayer_setup/playlist_edit/race_edit/race_options_help">
<data input="game settings lists text update"/>
<on event="created" run="mp profile init racing rules"/>
<child widget="main_menu/settings_select/multiplayer_setup/playlist_edit/race_edit/op_team_scoring" x="54" y="73"/>
<child widget="main_menu/settings_select/multiplayer_setup/playlist_edit/race_edit/op_race_type" x="54" y="103"/>
<child widget="main_menu/settings_select/multiplayer_setup/playlist_edit/race_edit/op_laps_to_win" x="54" y="133"/>
<child widget="main_menu/settings_select/multiplayer_setup/playlist_edit/race_edit/op_team_play" x="54" y="163"/>
<child widget="main_menu/settings_select/multiplayer_setup/playlist_edit/ctf_edit/op_time_limit" x="54" y="193"/>
<child widget="main_menu/settings_select/multiplayer_setup/playlist_edit/race_edit/race_button_bar" y="414"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_edit/race_edit/race_options_screen" width="640" height="480" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/gradient">
<child widget="main_menu/settings_select/multiplayer_setup/playlist_edit/game_type_select/header_rules"/>
<child widget="main_menu/settings_select/multiplayer_setup/playlist_edit/race_edit/race_options_menu"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_edit/race_edit/race_type_label" type="text" controller="1" width="300" height="22" string_list="main_menu/settings_select/multiplayer_setup/playlist_edit/race_edit/race_labels" string_index="1" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="4">
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_edit/race_edit/race_type_spinner" type="spinner" left="3" top="2" width="147" height="20" flags="pass_unhandled_to_focused_child left_right_tabs_items" string_list="main_menu/settings_select/multiplayer_setup/playlist_edit/race_edit/var_race_type" font="ui\large_ui" color="#FF2896FF" align="center" text_y="4" list_flags="items_from_strings" header_bitmap="bitmaps/arrow_sm_left" footer_bitmap="bitmaps/arrow_sm_right" header_bounds="7 -6 19 0" footer_bounds="7 150 19 156">
<on event="left_mouse" run="mouse spinner 1wide click"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_edit/race_edit/team_play_label" type="text" controller="1" width="320" height="22" string_list="main_menu/settings_select/multiplayer_setup/playlist_edit/race_edit/race_labels" string_index="3" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="4">
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_edit/race_edit/team_play_spinner" type="spinner" left="2" top="2" width="148" height="20" flags="pass_unhandled_to_focused_child left_right_tabs_items" string_list="main_menu/settings_select/multiplayer_setup/playlist_edit/race_edit/var_team_play" font="ui\large_ui" color="#FF2896FF" align="center" text_y="4" list_flags="items_from_strings" header_bitmap="bitmaps/arrow_sm_left" footer_bitmap="bitmaps/arrow_sm_right" header_bounds="7 -6 19 0" footer_bounds="7 150 19 156">
<on event="left_mouse" run="mouse spinner 1wide click"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_edit/race_edit/team_scoring_label" type="text" controller="1" width="300" height="22" string_list="main_menu/settings_select/multiplayer_setup/playlist_edit/race_edit/race_labels" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="4">
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_edit/race_edit/team_scoring_spinner" type="spinner" left="3" top="2" width="147" height="20" flags="pass_unhandled_to_focused_child left_right_tabs_items" string_list="main_menu/settings_select/multiplayer_setup/playlist_edit/race_edit/var_team_scoring" font="ui\large_ui" color="#FF2896FF" align="center" list_flags="items_from_strings" header_bitmap="bitmaps/arrow_sm_left" footer_bitmap="bitmaps/arrow_sm_right" header_bounds="7 -6 19 0" footer_bounds="7 150 19 156">
<on event="left_mouse" run="mouse spinner 1wide click"/>
</widget>
</menus>
@@ -0,0 +1,77 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- The PC version's menus: ui\shell\main_menu\settings_select\multiplayer_setup\playlist_edit\slayer_edit (tools/ce_menus.py) -->
<menus>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_edit/slayer_edit/death_bonus_label" type="text" controller="1" width="300" height="22" string_list="main_menu/settings_select/multiplayer_setup/playlist_edit/slayer_edit/slayer_labels" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="4">
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_edit/slayer_edit/death_bonus_spinner" type="spinner" left="2" top="2" width="148" height="20" flags="pass_unhandled_to_focused_child left_right_tabs_items" string_list="main_menu/settings_select/multiplayer_setup/playlist_edit/slayer_edit/var_death_bonus" font="ui\large_ui" color="#FF2896FF" align="center" list_flags="items_from_strings" header_bitmap="bitmaps/arrow_sm_left" footer_bitmap="bitmaps/arrow_sm_right" header_bounds="7 -6 19 0" footer_bounds="7 150 19 156">
<on event="left_mouse" run="mouse spinner 1wide click"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_edit/slayer_edit/kill_in_order_label" type="text" controller="1" width="300" height="22" string_list="main_menu/settings_select/multiplayer_setup/playlist_edit/slayer_edit/slayer_labels" string_index="1" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="4">
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_edit/slayer_edit/kill_in_order_spinner" type="spinner" left="2" top="2" width="148" height="20" flags="pass_unhandled_to_focused_child left_right_tabs_items" string_list="main_menu/settings_select/multiplayer_setup/playlist_edit/slayer_edit/var_kill_in_order" font="ui\large_ui" color="#FF2896FF" align="center" text_y="4" list_flags="items_from_strings" header_bitmap="bitmaps/arrow_sm_left" footer_bitmap="bitmaps/arrow_sm_right" header_bounds="7 -6 19 0" footer_bounds="7 150 19 156">
<on event="left_mouse" run="mouse spinner 1wide click"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_edit/slayer_edit/kill_penalty_label" type="text" controller="1" width="300" height="22" string_list="main_menu/settings_select/multiplayer_setup/playlist_edit/slayer_edit/slayer_labels" string_index="2" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="4">
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_edit/slayer_edit/kill_penalty_spinner" type="spinner" left="2" top="2" width="148" height="20" flags="pass_unhandled_to_focused_child left_right_tabs_items" string_list="main_menu/settings_select/multiplayer_setup/indicator_options_edit/var_objectives_on_screen" font="ui\large_ui" color="#FF2896FF" align="center" list_flags="items_from_strings" header_bitmap="bitmaps/arrow_sm_left" footer_bitmap="bitmaps/arrow_sm_right" header_bounds="7 -6 19 0" footer_bounds="7 150 19 156">
<on event="left_mouse" run="mouse spinner 1wide click"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_edit/slayer_edit/kills_to_win_label" type="text" controller="1" width="320" height="22" string_list="main_menu/settings_select/multiplayer_setup/playlist_edit/slayer_edit/slayer_labels" string_index="3" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="4">
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_edit/slayer_edit/kills_to_win_spinner" type="spinner" left="3" top="2" width="147" height="20" flags="pass_unhandled_to_focused_child left_right_tabs_items" string_list="main_menu/settings_select/multiplayer_setup/playlist_edit/slayer_edit/var_kills_to_win" font="ui\large_ui" color="#FF2896FF" align="center" text_y="4" list_flags="items_from_strings" header_bitmap="bitmaps/arrow_sm_left" footer_bitmap="bitmaps/arrow_sm_right" header_bounds="7 -6 19 0" footer_bounds="7 150 19 156">
<on event="left_mouse" run="mouse spinner 1wide click"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_edit/slayer_edit/op_death_bonus" width="512" height="28" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/option_bkds" color="#FF2896FF">
<child widget="main_menu/settings_select/multiplayer_setup/playlist_edit/slayer_edit/death_bonus_label"/>
<child widget="main_menu/settings_select/multiplayer_setup/playlist_edit/slayer_edit/death_bonus_spinner" x="320" y="1"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_edit/slayer_edit/op_kill_in_order" width="512" height="28" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/option_bkds" color="#FF2896FF">
<child widget="main_menu/settings_select/multiplayer_setup/playlist_edit/slayer_edit/kill_in_order_label"/>
<child widget="main_menu/settings_select/multiplayer_setup/playlist_edit/slayer_edit/kill_in_order_spinner" x="320" y="1"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_edit/slayer_edit/op_kill_penalty" width="512" height="28" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/option_bkds" color="#FF2896FF">
<child widget="main_menu/settings_select/multiplayer_setup/playlist_edit/slayer_edit/kill_penalty_label"/>
<child widget="main_menu/settings_select/multiplayer_setup/playlist_edit/slayer_edit/kill_penalty_spinner" x="320" y="1"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_edit/slayer_edit/op_kills_to_win" width="512" height="28" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/option_bkds" color="#FF2896FF">
<child widget="main_menu/settings_select/multiplayer_setup/playlist_edit/slayer_edit/kills_to_win_label"/>
<child widget="main_menu/settings_select/multiplayer_setup/playlist_edit/slayer_edit/kills_to_win_spinner" x="320" y="1"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_edit/slayer_edit/op_team_play" width="512" height="28" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/option_bkds" color="#FF2896FF">
<child widget="main_menu/settings_select/multiplayer_setup/playlist_edit/slayer_edit/team_play_label"/>
<child widget="main_menu/settings_select/multiplayer_setup/playlist_edit/slayer_edit/team_play_spinner" x="320" y="1"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_edit/slayer_edit/slayer_button_bar" type="column_list" width="640" height="28" flags="pass_unhandled_to_focused_child left_right_tabs_items">
<data input="common button bar update"/>
<child widget="main_menu/settings_select/multiplayer_setup/playlist_edit/slayer_edit/slayer_button_ok" x="380" y="1"/>
<child widget="common_button_cancel" x="510" y="1"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_edit/slayer_edit/slayer_button_ok" type="text" width="128" height="24" bitmap="bitmaps/text_button_background" string_list="strings/common_button_captions" string_index="1" font="ui\small_ui" color="#FFFFFFFF" align="center" text_y="2">
<on event="a" run="mp profile set slayer rules" back="true"/>
<on event="start" run="mp profile set slayer rules" back="true"/>
<on event="left_mouse" run="mouse emit accept event"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_edit/slayer_edit/slayer_options_help" type="text" controller="1" left="68" top="321" width="482" height="79" string_list="main_menu/settings_select/multiplayer_setup/playlist_edit/slayer_edit/cap_slayer" font="ui\large_ui" color="#FFFFFFFF">
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_edit/slayer_edit/slayer_options_menu" type="column_list" width="640" height="480" flags="pass_unhandled_to_focused_child up_down_tabs_children" description="main_menu/settings_select/multiplayer_setup/playlist_edit/slayer_edit/slayer_options_help">
<data input="game settings lists text update"/>
<on event="created" run="mp profile init slayer rules"/>
<child widget="main_menu/settings_select/multiplayer_setup/playlist_edit/slayer_edit/op_death_bonus" x="54" y="73"/>
<child widget="main_menu/settings_select/multiplayer_setup/playlist_edit/slayer_edit/op_kill_penalty" x="54" y="103"/>
<child widget="main_menu/settings_select/multiplayer_setup/playlist_edit/slayer_edit/op_kill_in_order" x="54" y="133"/>
<child widget="main_menu/settings_select/multiplayer_setup/playlist_edit/slayer_edit/op_kills_to_win" x="54" y="163"/>
<child widget="main_menu/settings_select/multiplayer_setup/playlist_edit/slayer_edit/op_team_play" x="54" y="193"/>
<child widget="main_menu/settings_select/multiplayer_setup/playlist_edit/ctf_edit/op_time_limit" x="54" y="223"/>
<child widget="main_menu/settings_select/multiplayer_setup/playlist_edit/slayer_edit/slayer_button_bar" y="414"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_edit/slayer_edit/slayer_options_screen" width="640" height="480" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/gradient">
<on event="created" run="NULL"/>
<child widget="main_menu/settings_select/multiplayer_setup/playlist_edit/game_type_select/header_rules"/>
<child widget="main_menu/settings_select/multiplayer_setup/playlist_edit/slayer_edit/slayer_options_menu"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_edit/slayer_edit/team_play_label" type="text" controller="1" width="320" height="22" string_list="main_menu/settings_select/multiplayer_setup/playlist_edit/slayer_edit/slayer_labels" string_index="4" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="4">
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_edit/slayer_edit/team_play_spinner" type="spinner" left="2" top="2" width="148" height="20" flags="pass_unhandled_to_focused_child left_right_tabs_items" string_list="main_menu/settings_select/multiplayer_setup/playlist_edit/slayer_edit/var_team_play" font="ui\large_ui" color="#FF2896FF" align="center" text_y="4" list_flags="items_from_strings" header_bitmap="bitmaps/arrow_sm_left" footer_bitmap="bitmaps/arrow_sm_right" header_bounds="7 -6 19 0" footer_bounds="7 150 19 156">
<on event="left_mouse" run="mouse spinner 1wide click"/>
</widget>
</menus>
@@ -0,0 +1,81 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- The PC version's menus: ui\shell\main_menu\settings_select\multiplayer_setup\playlist_edit (tools/ce_menus.py) -->
<menus>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_edit/edit_playlist_select_list" type="column_list" width="640" height="480" flags="pass_unhandled_to_focused_child up_down_tabs_children" description="main_menu/settings_select/multiplayer_setup/playlist_edit/playlist_edit_list_extended_desc">
<data input="playlist settings menu update desc"/>
<child widget="main_menu/settings_select/multiplayer_setup/playlist_edit/playlist_edit_name_list_item"/>
<child widget="main_menu/settings_select/multiplayer_setup/playlist_edit/playlist_edit_game_type_item"/>
<child widget="main_menu/settings_select/multiplayer_setup/playlist_edit/playlist_edit_player_opts_item"/>
<child widget="main_menu/settings_select/multiplayer_setup/playlist_edit/playlist_edit_items_list_item"/>
<child widget="main_menu/settings_select/multiplayer_setup/playlist_edit/playlist_edit_vehicles_list_item"/>
<child widget="main_menu/settings_select/multiplayer_setup/playlist_edit/playlist_edit_indicators_item"/>
<child widget="main_menu/settings_select/multiplayer_setup/playlist_edit/playlist_edit_team_item"/>
<child widget="main_menu/settings_select/multiplayer_setup/playlist_edit/playlist_edit_button_bar" y="414"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_edit/gametype_edit_screen" width="640" height="480" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/gradient">
<on event="created" run="close if not editing profile"/>
<child widget="main_menu/settings_select/multiplayer_setup/playlist_edit/header_edit_multiplayer_gametype"/>
<child widget="main_menu/settings_select/multiplayer_setup/playlist_edit/edit_playlist_select_list"/>
<child widget="main_menu/settings_select/multiplayer_setup/playlist_edit/gametype_label" x="294" y="360"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_edit/gametype_label" type="text" controller="1" width="235" height="22" font="ui\large_ui" color="#FFFFFFFF">
<data input="get edit game settings name"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_edit/header_edit_multiplayer_gametype" controller="1" left="35" top="11" width="605" height="59" bitmap="main_menu/settings_select/multiplayer_setup/playlist_edit/header_edit_multiplayer_gametype">
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_edit/header_set_options" controller="1" left="35" top="11" width="605" height="59" bitmap="main_menu/settings_select/multiplayer_setup/playlist_edit/game_type_select/header_rules">
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_edit/playlist_edit_button_bar" type="column_list" width="640" height="28" flags="pass_unhandled_to_focused_child left_right_tabs_items">
<data input="common button bar update"/>
<child widget="main_menu/settings_select/multiplayer_setup/playlist_edit/playlist_edit_button_ok" x="380" y="1"/>
<child widget="common_button_cancel" x="510" y="1"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_edit/playlist_edit_button_ok" type="text" width="128" height="24" bitmap="bitmaps/text_button_background" string_list="strings/common_button_captions" string_index="1" font="ui\small_ui" color="#FFFFFFFF" align="center" text_y="2">
<on event="a" run="mp profile save changes" open="error/warning_saving_file_screen"/>
<on event="start" run="mp profile save changes" open="error/warning_saving_file_screen"/>
<on event="left_mouse" run="mouse emit accept event"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_edit/playlist_edit_ext_desc_pic" controller="1" left="290" top="80" width="284" height="208" bitmap="main_menu/settings_select/multiplayer_setup/playlist_edit/gametype_options">
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_edit/playlist_edit_ext_desc_text" type="text" controller="1" left="294" top="276" width="321" height="124" string_list="main_menu/settings_select/multiplayer_setup/playlist_edit/playlist_edit_list_extended_dsc_text" font="ui\large_ui" color="#FF2896FF">
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_edit/playlist_edit_game_type_item" type="text" left="51" top="111" width="232" height="32" bitmap="bitmaps/list_item_bkd" string_list="main_menu/settings_select/multiplayer_setup/playlist_edit/playlist_edit_options" string_index="1" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="5">
<on event="a" open="main_menu/settings_select/multiplayer_setup/playlist_edit/game_type_select/gametype_select_screen"/>
<on event="start" open="main_menu/settings_select/multiplayer_setup/playlist_edit/game_type_select/gametype_select_screen"/>
<on event="left_mouse" run="mouse emit accept event"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_edit/playlist_edit_indicators_item" type="text" left="51" top="243" width="232" height="32" bitmap="bitmaps/list_item_bkd" string_list="main_menu/settings_select/multiplayer_setup/playlist_edit/playlist_edit_options" string_index="4" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="5">
<on event="a" open="main_menu/settings_select/multiplayer_setup/indicator_options_edit/indicator_options_screen"/>
<on event="start" open="main_menu/settings_select/multiplayer_setup/indicator_options_edit/indicator_options_screen"/>
<on event="left_mouse" run="mouse emit accept event"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_edit/playlist_edit_items_list_item" type="text" left="51" top="177" width="232" height="32" bitmap="bitmaps/list_item_bkd" string_list="main_menu/settings_select/multiplayer_setup/playlist_edit/playlist_edit_options" string_index="3" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="5">
<on event="a" open="main_menu/settings_select/multiplayer_setup/item_options_edit/item_options_screen"/>
<on event="start" open="main_menu/settings_select/multiplayer_setup/item_options_edit/item_options_screen"/>
<on event="left_mouse" run="mouse emit accept event"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_edit/playlist_edit_list_extended_desc" controller="1" left="275" top="78" width="320" height="322" bitmap="bitmaps/list_field" text_x="20" text_y="240">
<child widget="main_menu/settings_select/multiplayer_setup/playlist_edit/playlist_edit_ext_desc_text"/>
<child widget="main_menu/settings_select/multiplayer_setup/playlist_edit/playlist_edit_ext_desc_pic"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_edit/playlist_edit_name_list_item" type="text" left="51" top="78" width="232" height="32" bitmap="bitmaps/list_item_bkd_top" string_list="main_menu/settings_select/multiplayer_setup/playlist_edit/playlist_edit_options" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="5">
<on event="a" run="mp profile change name" open="main_menu/settings_select/multiplayer_setup/name_edit/gametype_name_screen"/>
<on event="start" run="mp profile change name" open="main_menu/settings_select/multiplayer_setup/name_edit/gametype_name_screen"/>
<on event="left_mouse" run="mouse emit accept event"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_edit/playlist_edit_player_opts_item" type="text" left="51" top="144" width="232" height="32" bitmap="bitmaps/list_item_bkd" string_list="main_menu/settings_select/multiplayer_setup/playlist_edit/playlist_edit_options" string_index="2" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="5">
<on event="a" open="main_menu/settings_select/multiplayer_setup/player_options_edit/player_options_screen"/>
<on event="start" open="main_menu/settings_select/multiplayer_setup/player_options_edit/player_options_screen"/>
<on event="left_mouse" run="mouse emit accept event"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_edit/playlist_edit_team_item" type="text" left="51" top="276" width="232" height="32" bitmap="bitmaps/list_item_bkd" string_list="main_menu/settings_select/multiplayer_setup/playlist_edit/playlist_edit_options" string_index="7" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="5">
<on event="a" open="main_menu/settings_select/multiplayer_setup/teamplay_options_edit/teamplay_options_screen"/>
<on event="start" open="main_menu/settings_select/multiplayer_setup/teamplay_options_edit/teamplay_options_screen"/>
<on event="left_mouse" run="mouse emit accept event"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_edit/playlist_edit_vehicles_list_item" type="text" left="51" top="210" width="232" height="32" bitmap="bitmaps/list_item_bkd" string_list="main_menu/settings_select/multiplayer_setup/playlist_edit/playlist_edit_options" string_index="6" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="5">
<on event="a" open="main_menu/settings_select/multiplayer_setup/vehicle_options_edit/vehicle_options_screen"/>
<on event="start" open="main_menu/settings_select/multiplayer_setup/vehicle_options_edit/vehicle_options_screen"/>
<on event="left_mouse" run="mouse emit accept event"/>
</widget>
</menus>
@@ -0,0 +1,55 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- The PC version's menus: ui\shell\main_menu\settings_select\multiplayer_setup\playlist_select (tools/ce_menus.py) -->
<menus>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_select/gametype_extended_desc" width="640" height="480">
<child widget="main_menu/gametype_select/gametype_right_item" x="22" y="2"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_select/gametype_select_screen" width="640" height="480" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/gradient">
<child widget="main_menu/new_select/sel_list_desc_bkd"/>
<child widget="main_menu/settings_select/multiplayer_setup/playlist_select/playlist_select_list"/>
<child widget="main_menu/settings_select/multiplayer_setup/playlist_select/header_select_gametype_to_edit"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_select/header_select_gametype_to_edit" controller="1" left="35" top="11" width="605" height="59" bitmap="main_menu/settings_select/multiplayer_setup/playlist_select/header_select_gametype_to_edit">
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_select/playlist_button_bar" type="column_list" width="640" height="28" flags="pass_unhandled_to_focused_child left_right_tabs_items">
<data input="common button bar update"/>
<child widget="main_menu/settings_select/multiplayer_setup/playlist_select/playlist_button_new" y="1"/>
<child widget="main_menu/settings_select/multiplayer_setup/playlist_select/playlist_button_delete" x="130" y="1"/>
<child widget="main_menu/settings_select/multiplayer_setup/playlist_select/playlist_button_ok" x="380" y="1"/>
<child widget="common_button_back" x="510" y="1"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_select/playlist_button_delete" type="text" width="128" height="24" bitmap="bitmaps/text_button_background" string_list="strings/common_button_captions" string_index="5" font="ui\small_ui" color="#FFFFFFFF" align="center" text_y="2">
<on event="a" run="mouse emit x event"/>
<on event="start" run="mouse emit x event"/>
<on event="left_mouse" run="mouse emit x event"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_select/playlist_button_new" type="text" width="128" height="24" bitmap="bitmaps/text_button_background" string_list="strings/common_button_captions" string_index="4" font="ui\small_ui" color="#FFFFFFFF" align="center" text_y="2">
<on event="a" run="create&amp;edit playlist profile" open="main_menu/settings_select/multiplayer_setup/create_and_edit_new_gametype_screen"/>
<on event="start" run="create&amp;edit playlist profile" open="main_menu/settings_select/multiplayer_setup/create_and_edit_new_gametype_screen"/>
<on event="left_mouse" run="mouse emit accept event"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_select/playlist_button_ok" type="text" width="128" height="24" bitmap="bitmaps/text_button_background" string_list="strings/common_button_captions" string_index="1" font="ui\small_ui" color="#FFFFFFFF" align="center" text_y="2">
<on event="a" run="emit custom activation event"/>
<on event="start" run="emit custom activation event"/>
<on event="left_mouse" run="mouse emit accept event"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/playlist_select/playlist_select_list" type="column_list" width="640" height="480" flags="pass_unhandled_to_focused_child up_down_tabs_children" description="main_menu/settings_select/multiplayer_setup/playlist_select/gametype_extended_desc">
<data input="gt edit list update"/>
<on event="created" run="mp profiles list initialize"/>
<on event="deleted" run="mp profiles list dispose"/>
<on event="custom_activation" run="mp profile begin editing" open="main_menu/settings_select/multiplayer_setup/playlist_edit/gametype_edit_screen"/>
<on event="x" run="request del playlist profile" open="error/confirm_delete_gametype_modal_fullscreen"/>
<child widget="main_menu/new_select/list_item_0" x="20" y="73"/>
<child widget="main_menu/new_select/list_item_1" x="20" y="103"/>
<child widget="main_menu/new_select/list_item_2" x="20" y="133"/>
<child widget="main_menu/new_select/list_item_3" x="20" y="163"/>
<child widget="main_menu/new_select/list_item_4" x="20" y="193"/>
<child widget="main_menu/new_select/list_item_5" x="20" y="223"/>
<child widget="main_menu/new_select/list_item_6" x="20" y="253"/>
<child widget="main_menu/new_select/list_item_7" x="20" y="283"/>
<child widget="main_menu/new_select/list_item_8" x="20" y="313"/>
<child widget="main_menu/new_select/list_item_9" x="20" y="343"/>
<child widget="main_menu/new_select/list_item_10" x="20" y="373"/>
<child widget="main_menu/settings_select/multiplayer_setup/playlist_select/playlist_button_bar" y="414"/>
</widget>
</menus>
@@ -0,0 +1,57 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- The PC version's menus: ui\shell\main_menu\settings_select\multiplayer_setup\teamplay_options_edit (tools/ce_menus.py) -->
<menus>
<widget name="main_menu/settings_select/multiplayer_setup/teamplay_options_edit/autobalance_label" type="text" controller="1" width="300" height="22" string_list="main_menu/settings_select/multiplayer_setup/teamplay_options_edit/teamplay_options_labels" string_index="2" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="4">
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/teamplay_options_edit/autobalance_spinner" type="spinner" left="2" top="2" width="148" height="20" flags="pass_unhandled_to_focused_child left_right_tabs_items" string_list="strings/var_boolean" font="ui\large_ui" color="#FF2896FF" align="center" text_y="4" list_flags="items_from_strings" header_bitmap="bitmaps/arrow_sm_left" footer_bitmap="bitmaps/arrow_sm_right" header_bounds="7 -6 19 0" footer_bounds="7 150 19 156">
<on event="left_mouse" run="mouse spinner 1wide click"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/teamplay_options_edit/friendly_fire_label" type="text" controller="1" width="300" height="22" string_list="main_menu/settings_select/multiplayer_setup/teamplay_options_edit/teamplay_options_labels" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="4">
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/teamplay_options_edit/friendly_fire_penalty_label" type="text" controller="1" width="320" height="22" string_list="main_menu/settings_select/multiplayer_setup/teamplay_options_edit/teamplay_options_labels" string_index="1" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="4">
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/teamplay_options_edit/friendly_fire_penalty_spinner" type="spinner" left="3" top="2" width="147" height="20" flags="pass_unhandled_to_focused_child left_right_tabs_items" string_list="main_menu/settings_select/multiplayer_setup/teamplay_options_edit/var_friendly_fire_penalty" font="ui\large_ui" color="#FF2896FF" align="center" text_y="4" list_flags="items_from_strings" header_bitmap="bitmaps/arrow_sm_left" footer_bitmap="bitmaps/arrow_sm_right" header_bounds="7 -6 19 0" footer_bounds="7 150 19 156">
<on event="left_mouse" run="mouse spinner 1wide click"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/teamplay_options_edit/friendly_fire_spinner" type="spinner" top="2" width="206" height="20" flags="pass_unhandled_to_focused_child left_right_tabs_items" string_list="main_menu/settings_select/multiplayer_setup/teamplay_options_edit/var_friendly_fire" font="ui\large_ui" color="#FF2896FF" align="center" text_y="4" list_flags="items_from_strings" header_bitmap="bitmaps/arrow_sm_left" footer_bitmap="bitmaps/arrow_sm_right" header_bounds="7 -13 19 -7" footer_bounds="7 208 19 214">
<on event="left_mouse" run="mouse spinner 1wide click"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/teamplay_options_edit/header_teamplay_options" controller="1" left="35" top="11" width="605" height="59" bitmap="main_menu/settings_select/multiplayer_setup/teamplay_options_edit/header_teamplay_options">
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/teamplay_options_edit/op_autobalance" width="512" height="28" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/option_bkds" color="#FF2896FF">
<child widget="main_menu/settings_select/multiplayer_setup/teamplay_options_edit/autobalance_label"/>
<child widget="main_menu/settings_select/multiplayer_setup/teamplay_options_edit/autobalance_spinner" x="320" y="1"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/teamplay_options_edit/op_friendly_fire" width="512" height="28" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/option_bkds" color="#FF2896FF">
<child widget="main_menu/settings_select/multiplayer_setup/teamplay_options_edit/friendly_fire_label"/>
<child widget="main_menu/settings_select/multiplayer_setup/teamplay_options_edit/friendly_fire_spinner" x="286" y="1"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/teamplay_options_edit/op_friendly_fire_penalty" width="512" height="28" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/option_bkds" color="#FF2896FF">
<child widget="main_menu/settings_select/multiplayer_setup/teamplay_options_edit/friendly_fire_penalty_label"/>
<child widget="main_menu/settings_select/multiplayer_setup/teamplay_options_edit/friendly_fire_penalty_spinner" x="320" y="1"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/teamplay_options_edit/teamplay_button_bar" type="column_list" width="640" height="28" flags="pass_unhandled_to_focused_child left_right_tabs_items">
<data input="common button bar update"/>
<child widget="main_menu/settings_select/multiplayer_setup/teamplay_options_edit/teamplay_button_ok" x="380" y="1"/>
<child widget="common_button_cancel" x="510" y="1"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/teamplay_options_edit/teamplay_button_ok" type="text" width="128" height="24" bitmap="bitmaps/text_button_background" string_list="strings/common_button_captions" string_index="1" font="ui\small_ui" color="#FFFFFFFF" align="center" text_y="2">
<on event="a" run="mp prof save teamplay options" back="true"/>
<on event="start" back="true"/>
<on event="left_mouse" run="mouse emit accept event"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/teamplay_options_edit/teamplay_options_help" type="text" controller="1" left="68" top="341" width="482" height="79" string_list="main_menu/settings_select/multiplayer_setup/teamplay_options_edit/cap_teamplay_options" font="ui\large_ui" color="#FFFFFFFF">
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/teamplay_options_edit/teamplay_options_menu" type="column_list" width="640" height="480" flags="pass_unhandled_to_focused_child up_down_tabs_children" description="main_menu/settings_select/multiplayer_setup/teamplay_options_edit/teamplay_options_help">
<data input="game settings lists text update"/>
<on event="created" run="mp prof init teamplay options"/>
<child widget="main_menu/settings_select/multiplayer_setup/teamplay_options_edit/op_friendly_fire" x="54" y="73"/>
<child widget="main_menu/settings_select/multiplayer_setup/teamplay_options_edit/op_friendly_fire_penalty" x="54" y="103"/>
<child widget="main_menu/settings_select/multiplayer_setup/teamplay_options_edit/op_autobalance" x="54" y="133"/>
<child widget="main_menu/settings_select/multiplayer_setup/teamplay_options_edit/teamplay_button_bar" y="414"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/teamplay_options_edit/teamplay_options_screen" width="640" height="480" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/gradient">
<child widget="main_menu/settings_select/multiplayer_setup/teamplay_options_edit/header_teamplay_options"/>
<child widget="main_menu/settings_select/multiplayer_setup/teamplay_options_edit/teamplay_options_menu"/>
</widget>
</menus>
@@ -0,0 +1,117 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- The PC version's menus: ui\shell\main_menu\settings_select\multiplayer_setup\vehicle_options_edit (tools/ce_menus.py) -->
<menus>
<widget name="main_menu/settings_select/multiplayer_setup/vehicle_options_edit/banshee_label" type="text" controller="1" width="300" height="22" string_list="main_menu/settings_select/multiplayer_setup/vehicle_options_edit/vehicle_options_labels" string_index="5" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="4">
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/vehicle_options_edit/banshee_spinner" type="spinner" top="2" width="206" height="20" flags="pass_unhandled_to_focused_child left_right_tabs_items" string_list="main_menu/settings_select/multiplayer_setup/vehicle_options_edit/var_vehicle_options" font="ui\large_ui" color="#FF2896FF" align="center" text_y="4" list_flags="items_from_strings" header_bitmap="bitmaps/arrow_sm_left" footer_bitmap="bitmaps/arrow_sm_right" header_bounds="7 -13 19 -7" footer_bounds="7 208 19 214">
<on event="left_mouse" run="mouse spinner 1wide click"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/vehicle_options_edit/cgturret_label" type="text" controller="1" width="300" height="22" string_list="main_menu/settings_select/multiplayer_setup/vehicle_options_edit/vehicle_options_labels" string_index="6" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="4">
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/vehicle_options_edit/cgturret_spinner" type="spinner" top="2" width="206" height="20" flags="pass_unhandled_to_focused_child left_right_tabs_items" string_list="main_menu/settings_select/multiplayer_setup/vehicle_options_edit/var_vehicle_options" font="ui\large_ui" color="#FF2896FF" align="center" text_y="4" list_flags="items_from_strings" header_bitmap="bitmaps/arrow_sm_left" footer_bitmap="bitmaps/arrow_sm_right" header_bounds="7 -13 19 -7" footer_bounds="7 208 19 214">
<on event="left_mouse" run="mouse spinner 1wide click"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/vehicle_options_edit/ghost_label" type="text" controller="1" width="300" height="22" string_list="main_menu/settings_select/multiplayer_setup/vehicle_options_edit/vehicle_options_labels" string_index="2" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="4">
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/vehicle_options_edit/ghost_spinner" type="spinner" top="2" width="206" height="20" flags="pass_unhandled_to_focused_child left_right_tabs_items" string_list="main_menu/settings_select/multiplayer_setup/vehicle_options_edit/var_vehicle_options" font="ui\large_ui" color="#FF2896FF" align="center" text_y="4" list_flags="items_from_strings" header_bitmap="bitmaps/arrow_sm_left" footer_bitmap="bitmaps/arrow_sm_right" header_bounds="7 -13 19 -7" footer_bounds="7 208 19 214">
<on event="left_mouse" run="mouse spinner 1wide click"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/vehicle_options_edit/header_vehicle_options" controller="1" left="35" top="11" width="605" height="59" bitmap="main_menu/settings_select/multiplayer_setup/vehicle_options_edit/header_vehicle_options">
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/vehicle_options_edit/op_banshee" width="512" height="28" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/option_bkds" color="#FF2896FF">
<child widget="main_menu/settings_select/multiplayer_setup/vehicle_options_edit/banshee_label"/>
<child widget="main_menu/settings_select/multiplayer_setup/vehicle_options_edit/banshee_spinner" x="286" y="1"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/vehicle_options_edit/op_cgturret" width="512" height="28" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/option_bkds" color="#FF2896FF">
<child widget="main_menu/settings_select/multiplayer_setup/vehicle_options_edit/cgturret_label"/>
<child widget="main_menu/settings_select/multiplayer_setup/vehicle_options_edit/cgturret_spinner" x="286" y="1"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/vehicle_options_edit/op_ghost" width="512" height="28" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/option_bkds" color="#FF2896FF">
<child widget="main_menu/settings_select/multiplayer_setup/vehicle_options_edit/ghost_label"/>
<child widget="main_menu/settings_select/multiplayer_setup/vehicle_options_edit/ghost_spinner" x="286" y="1"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/vehicle_options_edit/op_rwarthog" width="512" height="28" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/option_bkds" color="#FF2896FF">
<child widget="main_menu/settings_select/multiplayer_setup/vehicle_options_edit/rwarthog_label"/>
<child widget="main_menu/settings_select/multiplayer_setup/vehicle_options_edit/rwarthog_spinner" x="286" y="1"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/vehicle_options_edit/op_scorpion" width="512" height="28" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/option_bkds" color="#FF2896FF">
<child widget="main_menu/settings_select/multiplayer_setup/vehicle_options_edit/scorpion_label"/>
<child widget="main_menu/settings_select/multiplayer_setup/vehicle_options_edit/scorpion_spinner" x="286" y="1"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/vehicle_options_edit/op_team" width="512" height="28" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/option_bkds" color="#FF2896FF">
<child widget="main_menu/settings_select/multiplayer_setup/vehicle_options_edit/team_label"/>
<child widget="main_menu/settings_select/multiplayer_setup/vehicle_options_edit/team_spinner" x="286" y="1"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/vehicle_options_edit/op_vehicle_presets" width="512" height="28" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/option_bkds" color="#FF2896FF">
<child widget="main_menu/settings_select/multiplayer_setup/vehicle_options_edit/vehicle_presets_label"/>
<child widget="main_menu/settings_select/multiplayer_setup/vehicle_options_edit/vehicle_presets_spinner" x="286" y="1"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/vehicle_options_edit/op_vehicles_respawn" width="512" height="28" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/option_bkds" color="#FF2896FF">
<child widget="main_menu/settings_select/multiplayer_setup/vehicle_options_edit/vehicles_respawn_label"/>
<child widget="main_menu/settings_select/multiplayer_setup/vehicle_options_edit/vehicles_respawn_spinner" x="286" y="1"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/vehicle_options_edit/op_warthog" width="512" height="28" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/option_bkds" color="#FF2896FF">
<child widget="main_menu/settings_select/multiplayer_setup/vehicle_options_edit/warthog_label"/>
<child widget="main_menu/settings_select/multiplayer_setup/vehicle_options_edit/warthog_spinner" x="286" y="1"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/vehicle_options_edit/rwarthog_label" type="text" controller="1" width="300" height="22" string_list="main_menu/settings_select/multiplayer_setup/vehicle_options_edit/vehicle_options_labels" string_index="4" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="4">
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/vehicle_options_edit/rwarthog_spinner" type="spinner" top="2" width="206" height="20" flags="pass_unhandled_to_focused_child left_right_tabs_items" string_list="main_menu/settings_select/multiplayer_setup/vehicle_options_edit/var_vehicle_options" font="ui\large_ui" color="#FF2896FF" align="center" text_y="4" list_flags="items_from_strings" header_bitmap="bitmaps/arrow_sm_left" footer_bitmap="bitmaps/arrow_sm_right" header_bounds="7 -13 19 -7" footer_bounds="7 208 19 214">
<on event="left_mouse" run="mouse spinner 1wide click"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/vehicle_options_edit/scorpion_label" type="text" controller="1" width="300" height="22" string_list="main_menu/settings_select/multiplayer_setup/vehicle_options_edit/vehicle_options_labels" string_index="3" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="4">
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/vehicle_options_edit/scorpion_spinner" type="spinner" top="2" width="206" height="20" flags="pass_unhandled_to_focused_child left_right_tabs_items" string_list="main_menu/settings_select/multiplayer_setup/vehicle_options_edit/var_vehicle_options" font="ui\large_ui" color="#FF2896FF" align="center" text_y="4" list_flags="items_from_strings" header_bitmap="bitmaps/arrow_sm_left" footer_bitmap="bitmaps/arrow_sm_right" header_bounds="7 -13 19 -7" footer_bounds="7 208 19 214">
<on event="left_mouse" run="mouse spinner 1wide click"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/vehicle_options_edit/team_label" type="text" controller="1" width="300" height="22" string_list="main_menu/settings_select/multiplayer_setup/vehicle_options_edit/vehicle_options_labels" string_index="8" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="4">
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/vehicle_options_edit/team_spinner" type="spinner" top="2" width="206" height="20" flags="pass_unhandled_to_focused_child left_right_tabs_items" string_list="main_menu/settings_select/multiplayer_setup/vehicle_options_edit/var_team" font="ui\large_ui" color="#FF2896FF" align="center" text_y="4" list_flags="items_from_strings" header_bitmap="bitmaps/arrow_sm_left" footer_bitmap="bitmaps/arrow_sm_right" header_bounds="7 -13 19 -7" footer_bounds="7 208 19 214">
<on event="left_mouse" run="mouse spinner 1wide click"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/vehicle_options_edit/vehicle_button_bar" type="column_list" width="640" height="28" flags="pass_unhandled_to_focused_child left_right_tabs_items">
<data input="common button bar update"/>
<child widget="main_menu/settings_select/multiplayer_setup/vehicle_options_edit/vehicle_button_ok" x="380" y="1"/>
<child widget="common_button_cancel" x="510" y="1"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/vehicle_options_edit/vehicle_button_ok" type="text" width="128" height="24" bitmap="bitmaps/text_button_background" string_list="strings/common_button_captions" string_index="1" font="ui\small_ui" color="#FFFFFFFF" align="center" text_y="2">
<on event="a" run="mp prof save vehicle options" back="true"/>
<on event="start" run="mp profile set item options" back="true"/>
<on event="left_mouse" run="mouse emit accept event"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/vehicle_options_edit/vehicle_options_help" type="text" controller="1" left="68" top="341" width="482" height="79" string_list="main_menu/settings_select/multiplayer_setup/vehicle_options_edit/cap_vehicle_options" font="ui\large_ui" color="#FFFFFFFF">
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/vehicle_options_edit/vehicle_options_menu" type="column_list" width="640" height="480" flags="pass_unhandled_to_focused_child up_down_tabs_children" description="main_menu/settings_select/multiplayer_setup/vehicle_options_edit/vehicle_options_help">
<data input="mp prof vehicles update"/>
<on event="created" run="mp prof init vehicle options"/>
<child widget="main_menu/settings_select/multiplayer_setup/vehicle_options_edit/op_vehicles_respawn" x="54" y="73"/>
<child widget="main_menu/settings_select/multiplayer_setup/vehicle_options_edit/op_team" x="54" y="126"/>
<child widget="main_menu/settings_select/multiplayer_setup/vehicle_options_edit/op_vehicle_presets" x="54" y="152"/>
<child widget="main_menu/settings_select/multiplayer_setup/vehicle_options_edit/op_warthog" x="54" y="178"/>
<child widget="main_menu/settings_select/multiplayer_setup/vehicle_options_edit/op_ghost" x="54" y="204"/>
<child widget="main_menu/settings_select/multiplayer_setup/vehicle_options_edit/op_scorpion" x="54" y="229"/>
<child widget="main_menu/settings_select/multiplayer_setup/vehicle_options_edit/op_rwarthog" x="54" y="255"/>
<child widget="main_menu/settings_select/multiplayer_setup/vehicle_options_edit/op_banshee" x="54" y="281"/>
<child widget="main_menu/settings_select/multiplayer_setup/vehicle_options_edit/op_cgturret" x="54" y="307"/>
<child widget="main_menu/settings_select/multiplayer_setup/vehicle_options_edit/vehicle_button_bar" y="414"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/vehicle_options_edit/vehicle_options_screen" width="640" height="480" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/gradient">
<child widget="main_menu/settings_select/multiplayer_setup/vehicle_options_edit/header_vehicle_options"/>
<child widget="main_menu/settings_select/multiplayer_setup/vehicle_options_edit/vehicle_options_menu"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/vehicle_options_edit/vehicle_presets_label" type="text" controller="1" width="300" height="22" string_list="main_menu/settings_select/multiplayer_setup/vehicle_options_edit/vehicle_options_labels" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="4">
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/vehicle_options_edit/vehicle_presets_spinner" type="spinner" top="2" width="206" height="20" flags="pass_unhandled_to_focused_child left_right_tabs_items" string_list="main_menu/settings_select/multiplayer_setup/vehicle_options_edit/var_vehicle_set" font="ui\large_ui" color="#FF2896FF" align="center" text_y="4" list_flags="items_from_strings" header_bitmap="bitmaps/arrow_sm_left" footer_bitmap="bitmaps/arrow_sm_right" header_bounds="7 -13 19 -7" footer_bounds="7 208 19 214">
<on event="left_mouse" run="mouse spinner 1wide click"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/vehicle_options_edit/vehicles_respawn_label" type="text" controller="1" width="300" height="22" string_list="main_menu/settings_select/multiplayer_setup/vehicle_options_edit/vehicle_options_labels" string_index="7" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="4">
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/vehicle_options_edit/vehicles_respawn_spinner" type="spinner" top="2" width="206" height="20" flags="pass_unhandled_to_focused_child left_right_tabs_items" string_list="main_menu/settings_select/multiplayer_setup/vehicle_options_edit/var_vehicles_respawn" font="ui\large_ui" color="#FF2896FF" align="center" text_y="4" list_flags="items_from_strings" header_bitmap="bitmaps/arrow_sm_left" footer_bitmap="bitmaps/arrow_sm_right" header_bounds="7 -13 19 -7" footer_bounds="7 208 19 214">
<on event="left_mouse" run="mouse spinner 1wide click"/>
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/vehicle_options_edit/warthog_label" type="text" controller="1" width="300" height="22" string_list="main_menu/settings_select/multiplayer_setup/vehicle_options_edit/vehicle_options_labels" string_index="1" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="4">
</widget>
<widget name="main_menu/settings_select/multiplayer_setup/vehicle_options_edit/warthog_spinner" type="spinner" top="2" width="206" height="20" flags="pass_unhandled_to_focused_child left_right_tabs_items" string_list="main_menu/settings_select/multiplayer_setup/vehicle_options_edit/var_vehicle_options" font="ui\large_ui" color="#FF2896FF" align="center" text_y="4" list_flags="items_from_strings" header_bitmap="bitmaps/arrow_sm_left" footer_bitmap="bitmaps/arrow_sm_right" header_bounds="7 -13 19 -7" footer_bounds="7 208 19 214">
<on event="left_mouse" run="mouse spinner 1wide click"/>
</widget>
</menus>
@@ -0,0 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- The PC version's menus: ui\shell\main_menu\settings_select\multiplayer_setup (tools/ce_menus.py) -->
<menus>
<widget name="main_menu/settings_select/multiplayer_setup/create_and_edit_new_gametype_screen" width="640" height="480" flags="pass_unhandled_to_focused_child">
<child widget="main_menu/settings_select/multiplayer_setup/playlist_edit/gametype_edit_screen"/>
</widget>
</menus>
@@ -0,0 +1,86 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- The port's settings screen, in the PC version's style (tools/port_settings.py) -->
<menus>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/audio_settings/audio_settings_screen" width="640" height="480" flags="pass_unhandled_to_focused_child pause_game" bitmap="bitmaps/gradient">
<on event="b" back="true"/>
<on event="back" back="true"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/audio_settings/header_profile_audio_settings"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/audio_settings/options_menu"/>
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/audio_settings/header_profile_audio_settings" controller="1" left="35" top="11" width="605" height="59" bitmap="main_menu/settings_select/player_setup/player_profile_edit/audio_settings/header_profile_audio_settings">
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/audio_settings/help" type="text" controller="1" left="68" top="350" width="482" height="60" string_list="main_menu/settings_select/player_setup/player_profile_edit/audio_settings/help_strings" font="ui\large_ui" color="#FFFFFFFF">
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/audio_settings/options_menu" type="column_list" width="640" height="480" flags="pass_unhandled_to_focused_child up_down_tabs_children" description="main_menu/settings_select/player_setup/player_profile_edit/audio_settings/help">
<data input="port settings help"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/audio_settings/op_volume" x="54" y="73"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/audio_settings/op_music_volume" x="54" y="103"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/audio_settings/op_effects_volume" x="54" y="133"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/audio_settings/op_enabled" x="54" y="163"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/audio_settings/button_bar" y="414"/>
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/audio_settings/button_bar" type="column_list" width="640" height="28" flags="pass_unhandled_to_focused_child left_right_tabs_items">
<child widget="main_menu/settings_select/player_setup/player_profile_edit/audio_settings/button_defaults" y="1"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/audio_settings/button_ok" x="380" y="1"/>
<child widget="common_button_cancel" x="510" y="1"/>
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/audio_settings/op_volume" width="512" height="28" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/option_bkds" color="#FF2896FF">
<child widget="main_menu/settings_select/player_setup/player_profile_edit/audio_settings/volume_label"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/audio_settings/volume_spinner" x="320" y="1"/>
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/audio_settings/volume_label" type="text" controller="1" width="300" height="22" string_list="main_menu/settings_select/player_setup/player_profile_edit/audio_settings/labels" string_index="0" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="4">
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/audio_settings/volume_spinner" type="spinner" left="3" top="2" width="147" height="20" flags="pass_unhandled_to_focused_child left_right_tabs_items" strings="0|1|2|3|4|5|6|7|8|9|10" setting="audio.volume" values="0|0.1|0.2|0.3|0.4|0.5|0.6|0.7|0.8|0.9|1" font="ui\large_ui" color="#FF2896FF" align="center" text_y="1" header_bitmap="bitmaps/arrow_sm_left" footer_bitmap="bitmaps/arrow_sm_right" header_bounds="7 -6 19 0" footer_bounds="7 150 19 156">
<on event="created" run="port setting load"/>
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/audio_settings/op_music_volume" width="512" height="28" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/option_bkds" color="#FF2896FF">
<child widget="main_menu/settings_select/player_setup/player_profile_edit/audio_settings/music_volume_label"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/audio_settings/music_volume_spinner" x="320" y="1"/>
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/audio_settings/music_volume_label" type="text" controller="1" width="300" height="22" string_list="main_menu/settings_select/player_setup/player_profile_edit/audio_settings/labels" string_index="1" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="4">
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/audio_settings/music_volume_spinner" type="spinner" left="3" top="2" width="147" height="20" flags="pass_unhandled_to_focused_child left_right_tabs_items" strings="0|1|2|3|4|5|6|7|8|9|10" setting="audio.music_volume" values="0|0.1|0.2|0.3|0.4|0.5|0.6|0.7|0.8|0.9|1" font="ui\large_ui" color="#FF2896FF" align="center" text_y="1" header_bitmap="bitmaps/arrow_sm_left" footer_bitmap="bitmaps/arrow_sm_right" header_bounds="7 -6 19 0" footer_bounds="7 150 19 156">
<on event="created" run="port setting load"/>
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/audio_settings/op_effects_volume" width="512" height="28" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/option_bkds" color="#FF2896FF">
<child widget="main_menu/settings_select/player_setup/player_profile_edit/audio_settings/effects_volume_label"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/audio_settings/effects_volume_spinner" x="320" y="1"/>
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/audio_settings/effects_volume_label" type="text" controller="1" width="300" height="22" string_list="main_menu/settings_select/player_setup/player_profile_edit/audio_settings/labels" string_index="2" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="4">
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/audio_settings/effects_volume_spinner" type="spinner" left="3" top="2" width="147" height="20" flags="pass_unhandled_to_focused_child left_right_tabs_items" strings="0|1|2|3|4|5|6|7|8|9|10" setting="audio.effects_volume" values="0|0.1|0.2|0.3|0.4|0.5|0.6|0.7|0.8|0.9|1" font="ui\large_ui" color="#FF2896FF" align="center" text_y="1" header_bitmap="bitmaps/arrow_sm_left" footer_bitmap="bitmaps/arrow_sm_right" header_bounds="7 -6 19 0" footer_bounds="7 150 19 156">
<on event="created" run="port setting load"/>
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/audio_settings/op_enabled" width="512" height="28" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/option_bkds" color="#FF2896FF">
<child widget="main_menu/settings_select/player_setup/player_profile_edit/audio_settings/enabled_label"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/audio_settings/enabled_spinner" x="320" y="1"/>
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/audio_settings/enabled_label" type="text" controller="1" width="300" height="22" string_list="main_menu/settings_select/player_setup/player_profile_edit/audio_settings/labels" string_index="3" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="4">
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/audio_settings/enabled_spinner" type="spinner" left="3" top="2" width="147" height="20" flags="pass_unhandled_to_focused_child left_right_tabs_items" strings="ON|OFF" setting="audio.enabled" values="true|false" font="ui\large_ui" color="#FF2896FF" align="center" text_y="1" header_bitmap="bitmaps/arrow_sm_left" footer_bitmap="bitmaps/arrow_sm_right" header_bounds="7 -6 19 0" footer_bounds="7 150 19 156">
<on event="created" run="port setting load"/>
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/audio_settings/button_defaults" type="text" width="128" height="24" bitmap="bitmaps/text_button_background" string_list="strings/common_button_captions" string_index="3" font="ui\small_ui" color="#FFFFFFFF" align="center" text_y="2">
<on event="a" run="port settings defaults"/>
<on event="start" run="port settings defaults"/>
<on event="left_mouse" run="mouse emit accept event"/>
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/audio_settings/button_ok" type="text" width="128" height="24" bitmap="bitmaps/text_button_background" string_list="strings/common_button_captions" string_index="1" font="ui\small_ui" color="#FFFFFFFF" align="center" text_y="2">
<on event="a" run="port settings save" back="true"/>
<on event="start" run="port settings save" back="true"/>
<on event="left_mouse" run="mouse emit accept event"/>
</widget>
<strings name="main_menu/settings_select/player_setup/player_profile_edit/audio_settings/labels">
<string text="MASTER VOLUME:"/>
<string text="MUSIC VOLUME:"/>
<string text="EFFECTS VOLUME:"/>
<string text="SOUND:"/>
</strings>
<strings name="main_menu/settings_select/player_setup/player_profile_edit/audio_settings/help_strings">
<string text=""/>
<string text="The volume of everything."/>
<string text="The music's volume."/>
<string text="The volume of every other sound: effects and\nspeech."/>
<string text="Play sound at all; from the next time the game\nstarts."/>
</strings>
</menus>
@@ -0,0 +1,51 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- The PC version's menus: ui\shell\main_menu\settings_select\player_setup\player_profile_edit\color_edit (tools/ce_menus.py) -->
<menus>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/color_edit/color_right_item" controller="1" left="406" top="75" width="162" height="326" bitmap="bitmaps/spinner_list_3_wide_item_background">
<child widget="main_menu/settings_select/player_setup/player_profile_edit/color_edit/color_right_name" x="415" y="85"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/color_edit/color_right_pic" x="421" y="106"/>
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/color_edit/color_right_name" type="text" controller="1" width="147" height="22" string_list="main_menu/settings_select/player_setup/player_profile_edit/color_edit/colors_list" string_index="2" font="ui\large_ui" color="#FF2896FF" align="center">
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/color_edit/color_right_pic" controller="1" width="143" height="294" bitmap="ui\shell\main_menu\settings_select\player_setup\player_profile_edit\color_edit\player_color_marine_large">
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/color_edit/color_select_button_bar" type="column_list" width="640" height="28" flags="pass_unhandled_to_focused_child left_right_tabs_items">
<data input="common button bar update"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/color_edit/color_select_button_ok" x="380" y="1"/>
<child widget="common_button_back" x="510" y="1"/>
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/color_edit/color_select_button_ok" type="text" width="128" height="24" bitmap="bitmaps/text_button_background" string_list="strings/common_button_captions" string_index="1" font="ui\small_ui" color="#FFFFFFFF" align="center" text_y="2">
<on event="a" run="emit custom activation event"/>
<on event="start" run="emit custom activation event"/>
<on event="left_mouse" run="mouse emit accept event"/>
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/color_edit/color_select_extended_desc" width="640" height="480">
<child widget="main_menu/current_profile_name"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/color_edit/color_right_item" x="22" y="2"/>
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/color_edit/color_select_list_2" type="column_list" width="640" height="480" flags="pass_unhandled_to_focused_child up_down_tabs_children" description="main_menu/settings_select/player_setup/player_profile_edit/color_edit/color_select_extended_desc">
<data input="color picker update"/>
<on event="created" run="color picker menu initialize"/>
<on event="deleted" run="color picker menu dispose"/>
<on event="custom_activation" run="color picker select color" back="true"/>
<child widget="main_menu/new_select/list_item_0" x="20" y="73"/>
<child widget="main_menu/new_select/list_item_1" x="20" y="103"/>
<child widget="main_menu/new_select/list_item_2" x="20" y="133"/>
<child widget="main_menu/new_select/list_item_3" x="20" y="163"/>
<child widget="main_menu/new_select/list_item_4" x="20" y="193"/>
<child widget="main_menu/new_select/list_item_5" x="20" y="223"/>
<child widget="main_menu/new_select/list_item_6" x="20" y="253"/>
<child widget="main_menu/new_select/list_item_7" x="20" y="283"/>
<child widget="main_menu/new_select/list_item_8" x="20" y="313"/>
<child widget="main_menu/new_select/list_item_9" x="20" y="343"/>
<child widget="main_menu/new_select/list_item_10" x="20" y="373"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/color_edit/color_select_button_bar" y="414"/>
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/color_edit/color_select_screen" width="640" height="480" flags="pass_unhandled_to_focused_child pause_game" bitmap="bitmaps/gradient">
<child widget="main_menu/new_select/sel_list_desc_bkd"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/color_edit/color_select_list_2"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/color_edit/header_profile_color"/>
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/color_edit/header_profile_color" controller="1" left="35" top="11" width="605" height="59" bitmap="main_menu/settings_select/player_setup/player_profile_edit/color_edit/header_profile_color">
</widget>
</menus>
@@ -0,0 +1,115 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- The port's settings screen, in the PC version's style (tools/port_settings.py) -->
<menus>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/controls_setup/controls_settings_screen" width="640" height="480" flags="pass_unhandled_to_focused_child pause_game" bitmap="bitmaps/gradient">
<on event="b" back="true"/>
<on event="back" back="true"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/controls_setup/header_profile_controls_settings"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/controls_setup/options_menu"/>
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/controls_setup/header_profile_controls_settings" controller="1" left="35" top="11" width="605" height="59" bitmap="main_menu/settings_select/player_setup/player_profile_edit/controls_setup/header_profile_controls_settings">
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/controls_setup/help" type="text" controller="1" left="68" top="350" width="482" height="60" string_list="main_menu/settings_select/player_setup/player_profile_edit/controls_setup/help_strings" font="ui\large_ui" color="#FFFFFFFF">
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/controls_setup/options_menu" type="column_list" width="640" height="480" flags="pass_unhandled_to_focused_child up_down_tabs_children" description="main_menu/settings_select/player_setup/player_profile_edit/controls_setup/help">
<data input="controls update menu"/>
<on event="created" run="controls screen init"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/controls_setup/op_group" x="54" y="73"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/controls_setup/op_command_1" x="54" y="103"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/controls_setup/op_command_2" x="54" y="133"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/controls_setup/op_command_3" x="54" y="163"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/controls_setup/op_command_4" x="54" y="193"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/controls_setup/op_command_5" x="54" y="223"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/controls_setup/op_command_6" x="54" y="253"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/controls_setup/op_command_7" x="54" y="283"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/controls_setup/button_bar" y="414"/>
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/controls_setup/button_bar" type="column_list" width="640" height="28" flags="pass_unhandled_to_focused_child left_right_tabs_items">
<child widget="main_menu/settings_select/player_setup/player_profile_edit/controls_setup/button_defaults" y="1"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/controls_setup/button_ok" x="380" y="1"/>
<child widget="common_button_cancel" x="510" y="1"/>
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/controls_setup/op_group" width="512" height="28" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/option_bkds" color="#FF2896FF">
<child widget="main_menu/settings_select/player_setup/player_profile_edit/controls_setup/group_label"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/controls_setup/group_spinner" x="200" y="1"/>
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/controls_setup/group_label" type="text" controller="1" width="200" height="22" text="SHOW:" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="4">
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/controls_setup/group_spinner" type="spinner" left="3" top="2" width="297" height="20" flags="pass_unhandled_to_focused_child left_right_tabs_items" strings="MOVEMENT|WEAPONS|ACTIONS" font="ui\large_ui" color="#FF2896FF" align="center" text_y="1" header_bitmap="bitmaps/arrow_sm_left" footer_bitmap="bitmaps/arrow_sm_right" header_bounds="7 -6 19 0" footer_bounds="7 300 19 306">
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/controls_setup/op_command_1" width="512" height="28" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/option_bkds" color="#FF2896FF">
<on event="a" run="controls begin binding"/>
<on event="start" run="controls begin binding"/>
<on event="left right" run="controls binding slot"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/controls_setup/command_label"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/controls_setup/command_binding" x="200"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/controls_setup/command_binding" x="356"/>
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/controls_setup/op_command_2" width="512" height="28" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/option_bkds" color="#FF2896FF">
<on event="a" run="controls begin binding"/>
<on event="start" run="controls begin binding"/>
<on event="left right" run="controls binding slot"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/controls_setup/command_label"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/controls_setup/command_binding" x="200"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/controls_setup/command_binding" x="356"/>
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/controls_setup/op_command_3" width="512" height="28" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/option_bkds" color="#FF2896FF">
<on event="a" run="controls begin binding"/>
<on event="start" run="controls begin binding"/>
<on event="left right" run="controls binding slot"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/controls_setup/command_label"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/controls_setup/command_binding" x="200"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/controls_setup/command_binding" x="356"/>
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/controls_setup/op_command_4" width="512" height="28" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/option_bkds" color="#FF2896FF">
<on event="a" run="controls begin binding"/>
<on event="start" run="controls begin binding"/>
<on event="left right" run="controls binding slot"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/controls_setup/command_label"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/controls_setup/command_binding" x="200"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/controls_setup/command_binding" x="356"/>
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/controls_setup/op_command_5" width="512" height="28" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/option_bkds" color="#FF2896FF">
<on event="a" run="controls begin binding"/>
<on event="start" run="controls begin binding"/>
<on event="left right" run="controls binding slot"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/controls_setup/command_label"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/controls_setup/command_binding" x="200"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/controls_setup/command_binding" x="356"/>
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/controls_setup/op_command_6" width="512" height="28" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/option_bkds" color="#FF2896FF">
<on event="a" run="controls begin binding"/>
<on event="start" run="controls begin binding"/>
<on event="left right" run="controls binding slot"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/controls_setup/command_label"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/controls_setup/command_binding" x="200"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/controls_setup/command_binding" x="356"/>
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/controls_setup/op_command_7" width="512" height="28" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/option_bkds" color="#FF2896FF">
<on event="a" run="controls begin binding"/>
<on event="start" run="controls begin binding"/>
<on event="left right" run="controls binding slot"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/controls_setup/command_label"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/controls_setup/command_binding" x="200"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/controls_setup/command_binding" x="356"/>
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/controls_setup/command_label" type="text" controller="1" width="200" height="22" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="4">
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/controls_setup/command_binding" type="text" controller="1" width="152" height="22" font="ui\small_ui" color="#FF2896FF" align="center" text_y="5" text_flags="no_focus_test">
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/controls_setup/button_defaults" type="text" width="128" height="24" bitmap="bitmaps/text_button_background" string_list="strings/common_button_captions" string_index="3" font="ui\small_ui" color="#FFFFFFFF" align="center" text_y="2">
<on event="a" run="controls screen defaults"/>
<on event="start" run="controls screen defaults"/>
<on event="left_mouse" run="mouse emit accept event"/>
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/controls_setup/button_ok" type="text" width="128" height="24" bitmap="bitmaps/text_button_background" string_list="strings/common_button_captions" string_index="1" font="ui\small_ui" color="#FFFFFFFF" align="center" text_y="2">
<on event="a" run="controls screen change set" back="true"/>
<on event="start" run="controls screen change set" back="true"/>
<on event="left_mouse" run="mouse emit accept event"/>
</widget>
<strings name="main_menu/settings_select/player_setup/player_profile_edit/controls_setup/help_strings">
<string text="Choose what to show, with left and right."/>
<string text="Enter sets the key chosen; left and right choose\nwhich of two. Then press the new key or button."/>
<string text="Press a key, a mouse button or turn the wheel...\nEscape cancels, Delete clears it."/>
</strings>
</menus>
@@ -0,0 +1,134 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- The port's settings screen, in the PC version's style (tools/port_settings.py) -->
<menus>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/gamepad_setup/gamepad_setup_screen" width="640" height="480" flags="pass_unhandled_to_focused_child pause_game" bitmap="bitmaps/gradient">
<on event="b" back="true"/>
<on event="back" back="true"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/gamepad_setup/header_profile_controller_setting"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/gamepad_setup/options_menu"/>
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/gamepad_setup/header_profile_controller_setting" controller="1" left="35" top="11" width="605" height="59" bitmap="main_menu/settings_select/player_setup/player_profile_edit/controller_edit/header_profile_controller_setting">
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/gamepad_setup/help" type="text" controller="1" left="68" top="350" width="482" height="60" string_list="main_menu/settings_select/player_setup/player_profile_edit/gamepad_setup/help_strings" font="ui\large_ui" color="#FFFFFFFF">
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/gamepad_setup/options_menu" type="column_list" width="640" height="480" flags="pass_unhandled_to_focused_child up_down_tabs_children" description="main_menu/settings_select/player_setup/player_profile_edit/gamepad_setup/help">
<data input="port settings help"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/gamepad_setup/op_look_sensitivity" x="54" y="73"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/gamepad_setup/op_invert_look" x="54" y="103"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/gamepad_setup/op_flight_inversion" x="54" y="133"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/gamepad_setup/op_autocenter" x="54" y="163"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/gamepad_setup/op_button_preset" x="54" y="193"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/gamepad_setup/op_joystick_preset" x="54" y="223"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/gamepad_setup/op_vibration" x="54" y="253"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/gamepad_setup/op_ingame_help" x="54" y="283"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/gamepad_setup/button_bar" y="414"/>
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/gamepad_setup/button_bar" type="column_list" width="640" height="28" flags="pass_unhandled_to_focused_child left_right_tabs_items">
<child widget="main_menu/settings_select/player_setup/player_profile_edit/gamepad_setup/button_defaults" y="1"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/gamepad_setup/button_ok" x="380" y="1"/>
<child widget="common_button_cancel" x="510" y="1"/>
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/gamepad_setup/op_look_sensitivity" width="512" height="28" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/option_bkds" color="#FF2896FF">
<child widget="main_menu/settings_select/player_setup/player_profile_edit/gamepad_setup/look_sensitivity_label"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/gamepad_setup/look_sensitivity_spinner" x="320" y="1"/>
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/gamepad_setup/look_sensitivity_label" type="text" controller="1" width="300" height="22" string_list="main_menu/settings_select/player_setup/player_profile_edit/gamepad_setup/labels" string_index="0" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="4">
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/gamepad_setup/look_sensitivity_spinner" type="spinner" left="3" top="2" width="147" height="20" flags="pass_unhandled_to_focused_child left_right_tabs_items" strings="1|2|3|4|5|6|7|8|9|10" setting="profile.look_sensitivity" values="1|2|3|4|5|6|7|8|9|10" font="ui\large_ui" color="#FF2896FF" align="center" text_y="1" header_bitmap="bitmaps/arrow_sm_left" footer_bitmap="bitmaps/arrow_sm_right" header_bounds="7 -6 19 0" footer_bounds="7 150 19 156">
<on event="created" run="port setting load"/>
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/gamepad_setup/op_invert_look" width="512" height="28" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/option_bkds" color="#FF2896FF">
<child widget="main_menu/settings_select/player_setup/player_profile_edit/gamepad_setup/invert_look_label"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/gamepad_setup/invert_look_spinner" x="320" y="1"/>
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/gamepad_setup/invert_look_label" type="text" controller="1" width="300" height="22" string_list="main_menu/settings_select/player_setup/player_profile_edit/gamepad_setup/labels" string_index="1" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="4">
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/gamepad_setup/invert_look_spinner" type="spinner" left="3" top="2" width="147" height="20" flags="pass_unhandled_to_focused_child left_right_tabs_items" strings="YES|NO" setting="profile.invert_look" values="true|false" font="ui\large_ui" color="#FF2896FF" align="center" text_y="1" header_bitmap="bitmaps/arrow_sm_left" footer_bitmap="bitmaps/arrow_sm_right" header_bounds="7 -6 19 0" footer_bounds="7 150 19 156">
<on event="created" run="port setting load"/>
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/gamepad_setup/op_flight_inversion" width="512" height="28" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/option_bkds" color="#FF2896FF">
<child widget="main_menu/settings_select/player_setup/player_profile_edit/gamepad_setup/flight_inversion_label"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/gamepad_setup/flight_inversion_spinner" x="320" y="1"/>
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/gamepad_setup/flight_inversion_label" type="text" controller="1" width="300" height="22" string_list="main_menu/settings_select/player_setup/player_profile_edit/gamepad_setup/labels" string_index="2" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="4">
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/gamepad_setup/flight_inversion_spinner" type="spinner" left="3" top="2" width="147" height="20" flags="pass_unhandled_to_focused_child left_right_tabs_items" strings="YES|NO" setting="profile.flight_inversion" values="true|false" font="ui\large_ui" color="#FF2896FF" align="center" text_y="1" header_bitmap="bitmaps/arrow_sm_left" footer_bitmap="bitmaps/arrow_sm_right" header_bounds="7 -6 19 0" footer_bounds="7 150 19 156">
<on event="created" run="port setting load"/>
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/gamepad_setup/op_autocenter" width="512" height="28" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/option_bkds" color="#FF2896FF">
<child widget="main_menu/settings_select/player_setup/player_profile_edit/gamepad_setup/autocenter_label"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/gamepad_setup/autocenter_spinner" x="320" y="1"/>
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/gamepad_setup/autocenter_label" type="text" controller="1" width="300" height="22" string_list="main_menu/settings_select/player_setup/player_profile_edit/gamepad_setup/labels" string_index="3" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="4">
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/gamepad_setup/autocenter_spinner" type="spinner" left="3" top="2" width="147" height="20" flags="pass_unhandled_to_focused_child left_right_tabs_items" strings="YES|NO" setting="profile.autocenter" values="true|false" font="ui\large_ui" color="#FF2896FF" align="center" text_y="1" header_bitmap="bitmaps/arrow_sm_left" footer_bitmap="bitmaps/arrow_sm_right" header_bounds="7 -6 19 0" footer_bounds="7 150 19 156">
<on event="created" run="port setting load"/>
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/gamepad_setup/op_button_preset" width="512" height="28" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/option_bkds" color="#FF2896FF">
<child widget="main_menu/settings_select/player_setup/player_profile_edit/gamepad_setup/button_preset_label"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/gamepad_setup/button_preset_spinner" x="320" y="1"/>
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/gamepad_setup/button_preset_label" type="text" controller="1" width="300" height="22" string_list="main_menu/settings_select/player_setup/player_profile_edit/gamepad_setup/labels" string_index="4" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="4">
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/gamepad_setup/button_preset_spinner" type="spinner" left="3" top="2" width="147" height="20" flags="pass_unhandled_to_focused_child left_right_tabs_items" strings="DEFAULT|SWAP TRIGGERS|SWAP A, L TRIGGER|SWAP B, L TRIGGER|SWAP B, R STICK" setting="profile.button_preset" values="0|1|2|3|4" font="ui\large_ui" color="#FF2896FF" align="center" text_y="1" header_bitmap="bitmaps/arrow_sm_left" footer_bitmap="bitmaps/arrow_sm_right" header_bounds="7 -6 19 0" footer_bounds="7 150 19 156">
<on event="created" run="port setting load"/>
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/gamepad_setup/op_joystick_preset" width="512" height="28" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/option_bkds" color="#FF2896FF">
<child widget="main_menu/settings_select/player_setup/player_profile_edit/gamepad_setup/joystick_preset_label"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/gamepad_setup/joystick_preset_spinner" x="320" y="1"/>
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/gamepad_setup/joystick_preset_label" type="text" controller="1" width="300" height="22" string_list="main_menu/settings_select/player_setup/player_profile_edit/gamepad_setup/labels" string_index="5" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="4">
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/gamepad_setup/joystick_preset_spinner" type="spinner" left="3" top="2" width="147" height="20" flags="pass_unhandled_to_focused_child left_right_tabs_items" strings="DEFAULT|SOUTHPAW|LEGACY|LEGACY SOUTHPAW" setting="profile.joystick_preset" values="0|1|2|3" font="ui\large_ui" color="#FF2896FF" align="center" text_y="1" header_bitmap="bitmaps/arrow_sm_left" footer_bitmap="bitmaps/arrow_sm_right" header_bounds="7 -6 19 0" footer_bounds="7 150 19 156">
<on event="created" run="port setting load"/>
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/gamepad_setup/op_vibration" width="512" height="28" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/option_bkds" color="#FF2896FF">
<child widget="main_menu/settings_select/player_setup/player_profile_edit/gamepad_setup/vibration_label"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/gamepad_setup/vibration_spinner" x="320" y="1"/>
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/gamepad_setup/vibration_label" type="text" controller="1" width="300" height="22" string_list="main_menu/settings_select/player_setup/player_profile_edit/gamepad_setup/labels" string_index="6" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="4">
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/gamepad_setup/vibration_spinner" type="spinner" left="3" top="2" width="147" height="20" flags="pass_unhandled_to_focused_child left_right_tabs_items" strings="ON|OFF" setting="profile.vibration" values="true|false" font="ui\large_ui" color="#FF2896FF" align="center" text_y="1" header_bitmap="bitmaps/arrow_sm_left" footer_bitmap="bitmaps/arrow_sm_right" header_bounds="7 -6 19 0" footer_bounds="7 150 19 156">
<on event="created" run="port setting load"/>
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/gamepad_setup/op_ingame_help" width="512" height="28" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/option_bkds" color="#FF2896FF">
<child widget="main_menu/settings_select/player_setup/player_profile_edit/gamepad_setup/ingame_help_label"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/gamepad_setup/ingame_help_spinner" x="320" y="1"/>
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/gamepad_setup/ingame_help_label" type="text" controller="1" width="300" height="22" string_list="main_menu/settings_select/player_setup/player_profile_edit/gamepad_setup/labels" string_index="7" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="4">
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/gamepad_setup/ingame_help_spinner" type="spinner" left="3" top="2" width="147" height="20" flags="pass_unhandled_to_focused_child left_right_tabs_items" strings="ON|OFF" setting="profile.ingame_help" values="true|false" font="ui\large_ui" color="#FF2896FF" align="center" text_y="1" header_bitmap="bitmaps/arrow_sm_left" footer_bitmap="bitmaps/arrow_sm_right" header_bounds="7 -6 19 0" footer_bounds="7 150 19 156">
<on event="created" run="port setting load"/>
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/gamepad_setup/button_defaults" type="text" width="128" height="24" bitmap="bitmaps/text_button_background" string_list="strings/common_button_captions" string_index="3" font="ui\small_ui" color="#FFFFFFFF" align="center" text_y="2">
<on event="a" run="port settings defaults"/>
<on event="start" run="port settings defaults"/>
<on event="left_mouse" run="mouse emit accept event"/>
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/gamepad_setup/button_ok" type="text" width="128" height="24" bitmap="bitmaps/text_button_background" string_list="strings/common_button_captions" string_index="1" font="ui\small_ui" color="#FFFFFFFF" align="center" text_y="2">
<on event="a" run="port settings save" back="true"/>
<on event="start" run="port settings save" back="true"/>
<on event="left_mouse" run="mouse emit accept event"/>
</widget>
<strings name="main_menu/settings_select/player_setup/player_profile_edit/gamepad_setup/labels">
<string text="LOOK SENSITIVITY:"/>
<string text="INVERT LOOK:"/>
<string text="INVERT FLIGHT:"/>
<string text="AUTO-CENTER LOOK:"/>
<string text="BUTTON LAYOUT:"/>
<string text="STICK LAYOUT:"/>
<string text="VIBRATION:"/>
<string text="IN-GAME HELP:"/>
</strings>
<strings name="main_menu/settings_select/player_setup/player_profile_edit/gamepad_setup/help_strings">
<string text=""/>
<string text="How fast the right stick turns the view."/>
<string text="Pushing the right stick up looks down."/>
<string text="Flying vehicles pitch as aircraft do: pushing up\nflies down."/>
<string text="Level the view while walking."/>
<string text="Which of the controller's buttons does what (not\nthe keyboard's: Controls Setup sets those)."/>
<string text="Which stick moves and which looks."/>
<string text="Rumble the controller."/>
<string text="Show the game's hints about its controls."/>
</strings>
</menus>
@@ -0,0 +1,86 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- The port's settings screen, in the PC version's style (tools/port_settings.py) -->
<menus>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/mouse_settings/mouse_settings_screen" width="640" height="480" flags="pass_unhandled_to_focused_child pause_game" bitmap="bitmaps/gradient">
<on event="b" back="true"/>
<on event="back" back="true"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/mouse_settings/header_profile_mouse_settings"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/mouse_settings/options_menu"/>
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/mouse_settings/header_profile_mouse_settings" controller="1" left="35" top="11" width="605" height="59" bitmap="main_menu/settings_select/player_setup/player_profile_edit/mouse_settings/header_profile_mouse_settings">
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/mouse_settings/help" type="text" controller="1" left="68" top="350" width="482" height="60" string_list="main_menu/settings_select/player_setup/player_profile_edit/mouse_settings/help_strings" font="ui\large_ui" color="#FFFFFFFF">
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/mouse_settings/options_menu" type="column_list" width="640" height="480" flags="pass_unhandled_to_focused_child up_down_tabs_children" description="main_menu/settings_select/player_setup/player_profile_edit/mouse_settings/help">
<data input="port settings help"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/mouse_settings/op_mouse_sensitivity" x="54" y="73"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/mouse_settings/op_mouse_vertical_sensitivity" x="54" y="103"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/mouse_settings/op_invert_mouse" x="54" y="133"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/mouse_settings/op_mouse_aim_assist" x="54" y="163"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/mouse_settings/button_bar" y="414"/>
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/mouse_settings/button_bar" type="column_list" width="640" height="28" flags="pass_unhandled_to_focused_child left_right_tabs_items">
<child widget="main_menu/settings_select/player_setup/player_profile_edit/mouse_settings/button_defaults" y="1"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/mouse_settings/button_ok" x="380" y="1"/>
<child widget="common_button_cancel" x="510" y="1"/>
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/mouse_settings/op_mouse_sensitivity" width="512" height="28" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/option_bkds" color="#FF2896FF">
<child widget="main_menu/settings_select/player_setup/player_profile_edit/mouse_settings/mouse_sensitivity_label"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/mouse_settings/mouse_sensitivity_spinner" x="320" y="1"/>
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/mouse_settings/mouse_sensitivity_label" type="text" controller="1" width="300" height="22" string_list="main_menu/settings_select/player_setup/player_profile_edit/mouse_settings/labels" string_index="0" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="4">
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/mouse_settings/mouse_sensitivity_spinner" type="spinner" left="3" top="2" width="147" height="20" flags="pass_unhandled_to_focused_child left_right_tabs_items" strings="0.25|0.5|0.75|1|1.25|1.5|1.75|2|2.5|3|4" setting="input.mouse_sensitivity" values="0.25|0.5|0.75|1|1.25|1.5|1.75|2|2.5|3|4" font="ui\large_ui" color="#FF2896FF" align="center" text_y="1" header_bitmap="bitmaps/arrow_sm_left" footer_bitmap="bitmaps/arrow_sm_right" header_bounds="7 -6 19 0" footer_bounds="7 150 19 156">
<on event="created" run="port setting load"/>
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/mouse_settings/op_mouse_vertical_sensitivity" width="512" height="28" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/option_bkds" color="#FF2896FF">
<child widget="main_menu/settings_select/player_setup/player_profile_edit/mouse_settings/mouse_vertical_sensitivity_label"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/mouse_settings/mouse_vertical_sensitivity_spinner" x="320" y="1"/>
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/mouse_settings/mouse_vertical_sensitivity_label" type="text" controller="1" width="300" height="22" string_list="main_menu/settings_select/player_setup/player_profile_edit/mouse_settings/labels" string_index="1" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="4">
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/mouse_settings/mouse_vertical_sensitivity_spinner" type="spinner" left="3" top="2" width="147" height="20" flags="pass_unhandled_to_focused_child left_right_tabs_items" strings="SAME|0.25|0.5|0.75|1|1.25|1.5|1.75|2|2.5|3|4" setting="input.mouse_vertical_sensitivity" values="0|0.25|0.5|0.75|1|1.25|1.5|1.75|2|2.5|3|4" font="ui\large_ui" color="#FF2896FF" align="center" text_y="1" header_bitmap="bitmaps/arrow_sm_left" footer_bitmap="bitmaps/arrow_sm_right" header_bounds="7 -6 19 0" footer_bounds="7 150 19 156">
<on event="created" run="port setting load"/>
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/mouse_settings/op_invert_mouse" width="512" height="28" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/option_bkds" color="#FF2896FF">
<child widget="main_menu/settings_select/player_setup/player_profile_edit/mouse_settings/invert_mouse_label"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/mouse_settings/invert_mouse_spinner" x="320" y="1"/>
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/mouse_settings/invert_mouse_label" type="text" controller="1" width="300" height="22" string_list="main_menu/settings_select/player_setup/player_profile_edit/mouse_settings/labels" string_index="2" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="4">
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/mouse_settings/invert_mouse_spinner" type="spinner" left="3" top="2" width="147" height="20" flags="pass_unhandled_to_focused_child left_right_tabs_items" strings="YES|NO" setting="input.invert_mouse" values="true|false" font="ui\large_ui" color="#FF2896FF" align="center" text_y="1" header_bitmap="bitmaps/arrow_sm_left" footer_bitmap="bitmaps/arrow_sm_right" header_bounds="7 -6 19 0" footer_bounds="7 150 19 156">
<on event="created" run="port setting load"/>
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/mouse_settings/op_mouse_aim_assist" width="512" height="28" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/option_bkds" color="#FF2896FF">
<child widget="main_menu/settings_select/player_setup/player_profile_edit/mouse_settings/mouse_aim_assist_label"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/mouse_settings/mouse_aim_assist_spinner" x="320" y="1"/>
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/mouse_settings/mouse_aim_assist_label" type="text" controller="1" width="300" height="22" string_list="main_menu/settings_select/player_setup/player_profile_edit/mouse_settings/labels" string_index="3" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="4">
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/mouse_settings/mouse_aim_assist_spinner" type="spinner" left="3" top="2" width="147" height="20" flags="pass_unhandled_to_focused_child left_right_tabs_items" strings="ON|OFF" setting="input.mouse_aim_assist" values="true|false" font="ui\large_ui" color="#FF2896FF" align="center" text_y="1" header_bitmap="bitmaps/arrow_sm_left" footer_bitmap="bitmaps/arrow_sm_right" header_bounds="7 -6 19 0" footer_bounds="7 150 19 156">
<on event="created" run="port setting load"/>
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/mouse_settings/button_defaults" type="text" width="128" height="24" bitmap="bitmaps/text_button_background" string_list="strings/common_button_captions" string_index="3" font="ui\small_ui" color="#FFFFFFFF" align="center" text_y="2">
<on event="a" run="port settings defaults"/>
<on event="start" run="port settings defaults"/>
<on event="left_mouse" run="mouse emit accept event"/>
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/mouse_settings/button_ok" type="text" width="128" height="24" bitmap="bitmaps/text_button_background" string_list="strings/common_button_captions" string_index="1" font="ui\small_ui" color="#FFFFFFFF" align="center" text_y="2">
<on event="a" run="port settings save" back="true"/>
<on event="start" run="port settings save" back="true"/>
<on event="left_mouse" run="mouse emit accept event"/>
</widget>
<strings name="main_menu/settings_select/player_setup/player_profile_edit/mouse_settings/labels">
<string text="HORIZONTAL SENSITIVITY:"/>
<string text="VERTICAL SENSITIVITY:"/>
<string text="INVERT VERTICAL AXIS:"/>
<string text="AIM ASSIST:"/>
</strings>
<strings name="main_menu/settings_select/player_setup/player_profile_edit/mouse_settings/help_strings">
<string text=""/>
<string text="How fast the view turns side to side for the\nmouse's movement."/>
<string text="How fast the view turns up and down; Same\nturns it as fast as side to side."/>
<string text="Moving the mouse forward looks down."/>
<string text="Slow and drag the view along with a target while\naiming with the mouse, as with a controller."/>
</strings>
</menus>
@@ -0,0 +1,10 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- The PC version's menus: ui\shell\main_menu\settings_select\player_setup\player_profile_edit\name_edit (tools/ce_menus.py) -->
<menus>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/name_edit/header_profile_name" controller="1" left="35" top="11" width="346" height="59" bitmap="main_menu/settings_select/player_setup/player_profile_edit/name_edit/header_profile_name">
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/name_edit/profile_name_screen" width="640" height="480" flags="pass_unhandled_to_focused_child pause_game" auto_close="1" bitmap="bitmaps/gradient">
<on event="created" run="NULL"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/name_edit/header_profile_name"/>
</widget>
</menus>
@@ -0,0 +1,134 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- The port's settings screen, in the PC version's style (tools/port_settings.py) -->
<menus>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/network_setup/network_settings_screen" width="640" height="480" flags="pass_unhandled_to_focused_child pause_game" bitmap="bitmaps/gradient">
<on event="b" back="true"/>
<on event="back" back="true"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/network_setup/header_profile_network_settings"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/network_setup/options_menu"/>
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/network_setup/header_profile_network_settings" controller="1" left="35" top="11" width="605" height="59" bitmap="main_menu/settings_select/player_setup/player_profile_edit/network_setup/header_profile_network_settings">
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/network_setup/help" type="text" controller="1" left="68" top="350" width="482" height="60" string_list="main_menu/settings_select/player_setup/player_profile_edit/network_setup/help_strings" font="ui\large_ui" color="#FFFFFFFF">
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/network_setup/options_menu" type="column_list" width="640" height="480" flags="pass_unhandled_to_focused_child up_down_tabs_children" description="main_menu/settings_select/player_setup/player_profile_edit/network_setup/help">
<data input="port settings help"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/network_setup/op_online" x="54" y="73"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/network_setup/op_allow_upnp" x="54" y="103"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/network_setup/op_join_from_clipboard" x="54" y="133"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/network_setup/op_auto" x="54" y="163"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/network_setup/op_player_names" x="54" y="193"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/network_setup/op_player_name_scale" x="54" y="223"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/network_setup/op_scoreboard_team_layout" x="54" y="253"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/network_setup/op_scoreboard_background" x="54" y="283"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/network_setup/button_bar" y="414"/>
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/network_setup/button_bar" type="column_list" width="640" height="28" flags="pass_unhandled_to_focused_child left_right_tabs_items">
<child widget="main_menu/settings_select/player_setup/player_profile_edit/network_setup/button_defaults" y="1"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/network_setup/button_ok" x="380" y="1"/>
<child widget="common_button_cancel" x="510" y="1"/>
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/network_setup/op_online" width="512" height="28" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/option_bkds" color="#FF2896FF">
<child widget="main_menu/settings_select/player_setup/player_profile_edit/network_setup/online_label"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/network_setup/online_spinner" x="320" y="1"/>
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/network_setup/online_label" type="text" controller="1" width="300" height="22" string_list="main_menu/settings_select/player_setup/player_profile_edit/network_setup/labels" string_index="0" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="4">
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/network_setup/online_spinner" type="spinner" left="3" top="2" width="147" height="20" flags="pass_unhandled_to_focused_child left_right_tabs_items" strings="ON|OFF" setting="network.online" values="true|false" font="ui\large_ui" color="#FF2896FF" align="center" text_y="1" header_bitmap="bitmaps/arrow_sm_left" footer_bitmap="bitmaps/arrow_sm_right" header_bounds="7 -6 19 0" footer_bounds="7 150 19 156">
<on event="created" run="port setting load"/>
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/network_setup/op_allow_upnp" width="512" height="28" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/option_bkds" color="#FF2896FF">
<child widget="main_menu/settings_select/player_setup/player_profile_edit/network_setup/allow_upnp_label"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/network_setup/allow_upnp_spinner" x="320" y="1"/>
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/network_setup/allow_upnp_label" type="text" controller="1" width="300" height="22" string_list="main_menu/settings_select/player_setup/player_profile_edit/network_setup/labels" string_index="1" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="4">
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/network_setup/allow_upnp_spinner" type="spinner" left="3" top="2" width="147" height="20" flags="pass_unhandled_to_focused_child left_right_tabs_items" strings="ON|OFF" setting="network.allow_upnp" values="true|false" font="ui\large_ui" color="#FF2896FF" align="center" text_y="1" header_bitmap="bitmaps/arrow_sm_left" footer_bitmap="bitmaps/arrow_sm_right" header_bounds="7 -6 19 0" footer_bounds="7 150 19 156">
<on event="created" run="port setting load"/>
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/network_setup/op_join_from_clipboard" width="512" height="28" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/option_bkds" color="#FF2896FF">
<child widget="main_menu/settings_select/player_setup/player_profile_edit/network_setup/join_from_clipboard_label"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/network_setup/join_from_clipboard_spinner" x="320" y="1"/>
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/network_setup/join_from_clipboard_label" type="text" controller="1" width="300" height="22" string_list="main_menu/settings_select/player_setup/player_profile_edit/network_setup/labels" string_index="2" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="4">
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/network_setup/join_from_clipboard_spinner" type="spinner" left="3" top="2" width="147" height="20" flags="pass_unhandled_to_focused_child left_right_tabs_items" strings="ON|OFF" setting="network.join_from_clipboard" values="true|false" font="ui\large_ui" color="#FF2896FF" align="center" text_y="1" header_bitmap="bitmaps/arrow_sm_left" footer_bitmap="bitmaps/arrow_sm_right" header_bounds="7 -6 19 0" footer_bounds="7 150 19 156">
<on event="created" run="port setting load"/>
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/network_setup/op_auto" width="512" height="28" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/option_bkds" color="#FF2896FF">
<child widget="main_menu/settings_select/player_setup/player_profile_edit/network_setup/auto_label"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/network_setup/auto_spinner" x="320" y="1"/>
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/network_setup/auto_label" type="text" controller="1" width="300" height="22" string_list="main_menu/settings_select/player_setup/player_profile_edit/network_setup/labels" string_index="3" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="4">
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/network_setup/auto_spinner" type="spinner" left="3" top="2" width="147" height="20" flags="pass_unhandled_to_focused_child left_right_tabs_items" strings="ON|OFF" setting="update.auto" values="true|false" font="ui\large_ui" color="#FF2896FF" align="center" text_y="1" header_bitmap="bitmaps/arrow_sm_left" footer_bitmap="bitmaps/arrow_sm_right" header_bounds="7 -6 19 0" footer_bounds="7 150 19 156">
<on event="created" run="port setting load"/>
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/network_setup/op_player_names" width="512" height="28" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/option_bkds" color="#FF2896FF">
<child widget="main_menu/settings_select/player_setup/player_profile_edit/network_setup/player_names_label"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/network_setup/player_names_spinner" x="320" y="1"/>
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/network_setup/player_names_label" type="text" controller="1" width="300" height="22" string_list="main_menu/settings_select/player_setup/player_profile_edit/network_setup/labels" string_index="4" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="4">
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/network_setup/player_names_spinner" type="spinner" left="3" top="2" width="147" height="20" flags="pass_unhandled_to_focused_child left_right_tabs_items" strings="ALL|ALLIES|ENEMIES|NONE" setting="display.player_names" values="all|allies|enemies|none" font="ui\large_ui" color="#FF2896FF" align="center" text_y="1" header_bitmap="bitmaps/arrow_sm_left" footer_bitmap="bitmaps/arrow_sm_right" header_bounds="7 -6 19 0" footer_bounds="7 150 19 156">
<on event="created" run="port setting load"/>
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/network_setup/op_player_name_scale" width="512" height="28" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/option_bkds" color="#FF2896FF">
<child widget="main_menu/settings_select/player_setup/player_profile_edit/network_setup/player_name_scale_label"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/network_setup/player_name_scale_spinner" x="320" y="1"/>
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/network_setup/player_name_scale_label" type="text" controller="1" width="300" height="22" string_list="main_menu/settings_select/player_setup/player_profile_edit/network_setup/labels" string_index="5" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="4">
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/network_setup/player_name_scale_spinner" type="spinner" left="3" top="2" width="147" height="20" flags="pass_unhandled_to_focused_child left_right_tabs_items" strings="0.5x|0.75x|1x|1.25x|1.5x|2x" setting="display.player_name_scale" values="0.5|0.75|1|1.25|1.5|2" font="ui\large_ui" color="#FF2896FF" align="center" text_y="1" header_bitmap="bitmaps/arrow_sm_left" footer_bitmap="bitmaps/arrow_sm_right" header_bounds="7 -6 19 0" footer_bounds="7 150 19 156">
<on event="created" run="port setting load"/>
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/network_setup/op_scoreboard_team_layout" width="512" height="28" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/option_bkds" color="#FF2896FF">
<child widget="main_menu/settings_select/player_setup/player_profile_edit/network_setup/scoreboard_team_layout_label"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/network_setup/scoreboard_team_layout_spinner" x="320" y="1"/>
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/network_setup/scoreboard_team_layout_label" type="text" controller="1" width="300" height="22" string_list="main_menu/settings_select/player_setup/player_profile_edit/network_setup/labels" string_index="6" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="4">
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/network_setup/scoreboard_team_layout_spinner" type="spinner" left="3" top="2" width="147" height="20" flags="pass_unhandled_to_focused_child left_right_tabs_items" strings="TEAMS|BY SCORE" setting="display.scoreboard_team_layout" values="teams|score" font="ui\large_ui" color="#FF2896FF" align="center" text_y="1" header_bitmap="bitmaps/arrow_sm_left" footer_bitmap="bitmaps/arrow_sm_right" header_bounds="7 -6 19 0" footer_bounds="7 150 19 156">
<on event="created" run="port setting load"/>
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/network_setup/op_scoreboard_background" width="512" height="28" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/option_bkds" color="#FF2896FF">
<child widget="main_menu/settings_select/player_setup/player_profile_edit/network_setup/scoreboard_background_label"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/network_setup/scoreboard_background_spinner" x="320" y="1"/>
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/network_setup/scoreboard_background_label" type="text" controller="1" width="300" height="22" string_list="main_menu/settings_select/player_setup/player_profile_edit/network_setup/labels" string_index="7" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="4">
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/network_setup/scoreboard_background_spinner" type="spinner" left="3" top="2" width="147" height="20" flags="pass_unhandled_to_focused_child left_right_tabs_items" strings="ON|OFF" setting="display.scoreboard_background" values="true|false" font="ui\large_ui" color="#FF2896FF" align="center" text_y="1" header_bitmap="bitmaps/arrow_sm_left" footer_bitmap="bitmaps/arrow_sm_right" header_bounds="7 -6 19 0" footer_bounds="7 150 19 156">
<on event="created" run="port setting load"/>
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/network_setup/button_defaults" type="text" width="128" height="24" bitmap="bitmaps/text_button_background" string_list="strings/common_button_captions" string_index="3" font="ui\small_ui" color="#FFFFFFFF" align="center" text_y="2">
<on event="a" run="port settings defaults"/>
<on event="start" run="port settings defaults"/>
<on event="left_mouse" run="mouse emit accept event"/>
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/network_setup/button_ok" type="text" width="128" height="24" bitmap="bitmaps/text_button_background" string_list="strings/common_button_captions" string_index="1" font="ui\small_ui" color="#FFFFFFFF" align="center" text_y="2">
<on event="a" run="port settings save" back="true"/>
<on event="start" run="port settings save" back="true"/>
<on event="left_mouse" run="mouse emit accept event"/>
</widget>
<strings name="main_menu/settings_select/player_setup/player_profile_edit/network_setup/labels">
<string text="INTERNET PLAY:"/>
<string text="UPNP PORT FORWARDING:"/>
<string text="JOIN FROM CLIPBOARD:"/>
<string text="CHECK FOR UPDATES:"/>
<string text="PLAYER NAMES:"/>
<string text="PLAYER NAME SIZE:"/>
<string text="SCOREBOARD LAYOUT:"/>
<string text="SCOREBOARD PANEL:"/>
</strings>
<strings name="main_menu/settings_select/player_setup/player_profile_edit/network_setup/help_strings">
<string text=""/>
<string text="Host and join games over the internet by invite\nlinks; off keeps to the local network."/>
<string text="Let internet play ask the router to forward its\nport, for networks that stop connections."/>
<string text="Join the game of an invite link copied before\nswitching to the game."/>
<string text="Look for a new version when the game starts."/>
<string text="In multiplayer, whose names are drawn above their\nheads."/>
<string text="How large the players' names are drawn."/>
<string text="A team game's scoreboard: a column for each team,\nor every player in order of score."/>
<string text="Draw a panel behind the scoreboard, for clearer\ntext."/>
</strings>
</menus>
@@ -0,0 +1,134 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- The port's settings screen, in the PC version's style (tools/port_settings.py) -->
<menus>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/video_settings/video_settings_screen" width="640" height="480" flags="pass_unhandled_to_focused_child pause_game" bitmap="bitmaps/gradient">
<on event="b" back="true"/>
<on event="back" back="true"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/video_settings/header_profile_video_settings"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/video_settings/options_menu"/>
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/video_settings/header_profile_video_settings" controller="1" left="35" top="11" width="605" height="59" bitmap="main_menu/settings_select/player_setup/player_profile_edit/video_settings/header_profile_video_settings">
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/video_settings/help" type="text" controller="1" left="68" top="350" width="482" height="60" string_list="main_menu/settings_select/player_setup/player_profile_edit/video_settings/help_strings" font="ui\large_ui" color="#FFFFFFFF">
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/video_settings/options_menu" type="column_list" width="640" height="480" flags="pass_unhandled_to_focused_child up_down_tabs_children" description="main_menu/settings_select/player_setup/player_profile_edit/video_settings/help">
<data input="port settings help"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/video_settings/op_mode" x="54" y="73" platform="desktop"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/video_settings/op_window_scale" x="54" y="99" platform="desktop"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/video_settings/op_vsync" x="54" y="125"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/video_settings/op_max_fps" x="54" y="151" platform="desktop"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/video_settings/op_interpolation" x="54" y="177"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/video_settings/op_direct_camera" x="54" y="203" platform="desktop"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/video_settings/op_high_res_hud" x="54" y="229"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/video_settings/op_high_res_text" x="54" y="255"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/video_settings/button_bar" y="414"/>
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/video_settings/button_bar" type="column_list" width="640" height="28" flags="pass_unhandled_to_focused_child left_right_tabs_items">
<child widget="main_menu/settings_select/player_setup/player_profile_edit/video_settings/button_defaults" y="1"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/video_settings/button_ok" x="380" y="1"/>
<child widget="common_button_cancel" x="510" y="1"/>
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/video_settings/op_mode" width="512" height="28" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/option_bkds" color="#FF2896FF" platform="desktop">
<child widget="main_menu/settings_select/player_setup/player_profile_edit/video_settings/mode_label"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/video_settings/mode_spinner" x="320" y="1"/>
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/video_settings/mode_label" type="text" controller="1" width="300" height="22" string_list="main_menu/settings_select/player_setup/player_profile_edit/video_settings/labels" string_index="0" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="4">
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/video_settings/mode_spinner" type="spinner" left="3" top="2" width="147" height="20" flags="pass_unhandled_to_focused_child left_right_tabs_items" strings="FULLSCREEN|BORDERLESS|WINDOWED" setting="display.mode" values="fullscreen|borderless|windowed" font="ui\large_ui" color="#FF2896FF" align="center" text_y="1" header_bitmap="bitmaps/arrow_sm_left" footer_bitmap="bitmaps/arrow_sm_right" header_bounds="7 -6 19 0" footer_bounds="7 150 19 156">
<on event="created" run="port setting load"/>
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/video_settings/op_window_scale" width="512" height="28" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/option_bkds" color="#FF2896FF" platform="desktop">
<child widget="main_menu/settings_select/player_setup/player_profile_edit/video_settings/window_scale_label"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/video_settings/window_scale_spinner" x="320" y="1"/>
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/video_settings/window_scale_label" type="text" controller="1" width="300" height="22" string_list="main_menu/settings_select/player_setup/player_profile_edit/video_settings/labels" string_index="1" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="4">
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/video_settings/window_scale_spinner" type="spinner" left="3" top="2" width="147" height="20" flags="pass_unhandled_to_focused_child left_right_tabs_items" strings="640 x 480|1280 x 960|1920 x 1440|2560 x 1920" setting="display.window_scale" values="1|2|3|4" font="ui\large_ui" color="#FF2896FF" align="center" text_y="1" header_bitmap="bitmaps/arrow_sm_left" footer_bitmap="bitmaps/arrow_sm_right" header_bounds="7 -6 19 0" footer_bounds="7 150 19 156">
<on event="created" run="port setting load"/>
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/video_settings/op_vsync" width="512" height="28" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/option_bkds" color="#FF2896FF">
<child widget="main_menu/settings_select/player_setup/player_profile_edit/video_settings/vsync_label"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/video_settings/vsync_spinner" x="320" y="1"/>
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/video_settings/vsync_label" type="text" controller="1" width="300" height="22" string_list="main_menu/settings_select/player_setup/player_profile_edit/video_settings/labels" string_index="2" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="4">
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/video_settings/vsync_spinner" type="spinner" left="3" top="2" width="147" height="20" flags="pass_unhandled_to_focused_child left_right_tabs_items" strings="ON|OFF" setting="display.vsync" values="true|false" font="ui\large_ui" color="#FF2896FF" align="center" text_y="1" header_bitmap="bitmaps/arrow_sm_left" footer_bitmap="bitmaps/arrow_sm_right" header_bounds="7 -6 19 0" footer_bounds="7 150 19 156">
<on event="created" run="port setting load"/>
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/video_settings/op_max_fps" width="512" height="28" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/option_bkds" color="#FF2896FF" platform="desktop">
<child widget="main_menu/settings_select/player_setup/player_profile_edit/video_settings/max_fps_label"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/video_settings/max_fps_spinner" x="320" y="1"/>
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/video_settings/max_fps_label" type="text" controller="1" width="300" height="22" string_list="main_menu/settings_select/player_setup/player_profile_edit/video_settings/labels" string_index="3" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="4">
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/video_settings/max_fps_spinner" type="spinner" left="3" top="2" width="147" height="20" flags="pass_unhandled_to_focused_child left_right_tabs_items" strings="AUTO|30|60|120|144|165|240|NONE" setting="display.max_fps" values="0|30|60|120|144|165|240|-1" font="ui\large_ui" color="#FF2896FF" align="center" text_y="1" header_bitmap="bitmaps/arrow_sm_left" footer_bitmap="bitmaps/arrow_sm_right" header_bounds="7 -6 19 0" footer_bounds="7 150 19 156">
<on event="created" run="port setting load"/>
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/video_settings/op_interpolation" width="512" height="28" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/option_bkds" color="#FF2896FF">
<child widget="main_menu/settings_select/player_setup/player_profile_edit/video_settings/interpolation_label"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/video_settings/interpolation_spinner" x="320" y="1"/>
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/video_settings/interpolation_label" type="text" controller="1" width="300" height="22" string_list="main_menu/settings_select/player_setup/player_profile_edit/video_settings/labels" string_index="4" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="4">
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/video_settings/interpolation_spinner" type="spinner" left="3" top="2" width="147" height="20" flags="pass_unhandled_to_focused_child left_right_tabs_items" strings="ON|OFF" setting="display.interpolation" values="true|false" font="ui\large_ui" color="#FF2896FF" align="center" text_y="1" header_bitmap="bitmaps/arrow_sm_left" footer_bitmap="bitmaps/arrow_sm_right" header_bounds="7 -6 19 0" footer_bounds="7 150 19 156">
<on event="created" run="port setting load"/>
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/video_settings/op_direct_camera" width="512" height="28" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/option_bkds" color="#FF2896FF" platform="desktop">
<child widget="main_menu/settings_select/player_setup/player_profile_edit/video_settings/direct_camera_label"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/video_settings/direct_camera_spinner" x="320" y="1"/>
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/video_settings/direct_camera_label" type="text" controller="1" width="300" height="22" string_list="main_menu/settings_select/player_setup/player_profile_edit/video_settings/labels" string_index="5" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="4">
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/video_settings/direct_camera_spinner" type="spinner" left="3" top="2" width="147" height="20" flags="pass_unhandled_to_focused_child left_right_tabs_items" strings="ON|OFF" setting="display.direct_camera" values="true|false" font="ui\large_ui" color="#FF2896FF" align="center" text_y="1" header_bitmap="bitmaps/arrow_sm_left" footer_bitmap="bitmaps/arrow_sm_right" header_bounds="7 -6 19 0" footer_bounds="7 150 19 156">
<on event="created" run="port setting load"/>
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/video_settings/op_high_res_hud" width="512" height="28" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/option_bkds" color="#FF2896FF">
<child widget="main_menu/settings_select/player_setup/player_profile_edit/video_settings/high_res_hud_label"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/video_settings/high_res_hud_spinner" x="320" y="1"/>
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/video_settings/high_res_hud_label" type="text" controller="1" width="300" height="22" string_list="main_menu/settings_select/player_setup/player_profile_edit/video_settings/labels" string_index="6" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="4">
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/video_settings/high_res_hud_spinner" type="spinner" left="3" top="2" width="147" height="20" flags="pass_unhandled_to_focused_child left_right_tabs_items" strings="ON|OFF" setting="display.high_res_hud" values="true|false" font="ui\large_ui" color="#FF2896FF" align="center" text_y="1" header_bitmap="bitmaps/arrow_sm_left" footer_bitmap="bitmaps/arrow_sm_right" header_bounds="7 -6 19 0" footer_bounds="7 150 19 156">
<on event="created" run="port setting load"/>
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/video_settings/op_high_res_text" width="512" height="28" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/option_bkds" color="#FF2896FF">
<child widget="main_menu/settings_select/player_setup/player_profile_edit/video_settings/high_res_text_label"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/video_settings/high_res_text_spinner" x="320" y="1"/>
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/video_settings/high_res_text_label" type="text" controller="1" width="300" height="22" string_list="main_menu/settings_select/player_setup/player_profile_edit/video_settings/labels" string_index="7" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="4">
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/video_settings/high_res_text_spinner" type="spinner" left="3" top="2" width="147" height="20" flags="pass_unhandled_to_focused_child left_right_tabs_items" strings="ON|OFF" setting="display.high_res_text" values="true|false" font="ui\large_ui" color="#FF2896FF" align="center" text_y="1" header_bitmap="bitmaps/arrow_sm_left" footer_bitmap="bitmaps/arrow_sm_right" header_bounds="7 -6 19 0" footer_bounds="7 150 19 156">
<on event="created" run="port setting load"/>
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/video_settings/button_defaults" type="text" width="128" height="24" bitmap="bitmaps/text_button_background" string_list="strings/common_button_captions" string_index="3" font="ui\small_ui" color="#FFFFFFFF" align="center" text_y="2">
<on event="a" run="port settings defaults"/>
<on event="start" run="port settings defaults"/>
<on event="left_mouse" run="mouse emit accept event"/>
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/video_settings/button_ok" type="text" width="128" height="24" bitmap="bitmaps/text_button_background" string_list="strings/common_button_captions" string_index="1" font="ui\small_ui" color="#FFFFFFFF" align="center" text_y="2">
<on event="a" run="port settings save" back="true"/>
<on event="start" run="port settings save" back="true"/>
<on event="left_mouse" run="mouse emit accept event"/>
</widget>
<strings name="main_menu/settings_select/player_setup/player_profile_edit/video_settings/labels">
<string text="DISPLAY MODE:"/>
<string text="WINDOW SIZE:"/>
<string text="V-SYNC:"/>
<string text="FRAME RATE LIMIT:"/>
<string text="SMOOTH MOTION:"/>
<string text="INSTANT AIM:"/>
<string text="HIGH-RES HUD:"/>
<string text="HIGH-RES TEXT:"/>
</strings>
<strings name="main_menu/settings_select/player_setup/player_profile_edit/video_settings/help_strings">
<string text=""/>
<string text="Fullscreen and borderless draw at the display's\nresolution; windowed, 640x480 scaled. F11: window."/>
<string text="The window's size when windowed (its edges can\nalso be dragged)."/>
<string text="Wait for the display between frames, so that the\npicture never tears."/>
<string text="With V-Sync off, the most frames a second. Auto:\ntwice the display's refresh rate."/>
<string text="Draw a frame for every display refresh, blending\nbetween the game's 30 ticks a second."/>
<string text="In first person, turn the view the moment the\nmouse moves, not up to two ticks later."/>
<string text="Draw the HUD from the high-res redraws; off\ndraws the game's own pictures."/>
<string text="Draw text and titles with high-res fonts; off\ndraws the game's own."/>
</strings>
</menus>
@@ -0,0 +1,93 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- The PC version's menus: ui\shell\main_menu\settings_select\player_setup\player_profile_edit (tools/ce_menus.py) -->
<menus>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/about_item" type="text" left="51" top="310" width="232" height="32" bitmap="bitmaps/list_item_bkd" string_list="main_menu/settings_select/player_setup/player_profile_edit/profile_edit_options" string_index="9" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="5">
<on event="left_mouse" run="NULL"/>
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/audio_settings_profile_item" type="text" left="51" top="210" width="232" height="32" bitmap="bitmaps/list_item_bkd" string_list="main_menu/settings_select/player_setup/player_profile_edit/profile_edit_options" string_index="4" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="5">
<on event="a" open="main_menu/settings_select/player_setup/player_profile_edit/audio_settings/audio_settings_screen"/>
<on event="start" open="main_menu/settings_select/player_setup/player_profile_edit/audio_settings/audio_settings_screen"/>
<on event="left_mouse" run="mouse emit accept event"/>
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/color_profile_item" type="text" left="51" top="277" width="232" height="32" bitmap="bitmaps/list_item_bkd" string_list="main_menu/settings_select/player_setup/player_profile_edit/profile_edit_options" string_index="6" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="5">
<on event="a" open="main_menu/settings_select/player_setup/player_profile_edit/color_edit/color_select_screen"/>
<on event="start" open="main_menu/settings_select/player_setup/player_profile_edit/color_edit/color_select_screen"/>
<on event="left_mouse" run="mouse emit accept event"/>
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/controller_setup_profile_item" type="text" left="51" top="111" width="232" height="32" bitmap="bitmaps/list_item_bkd" string_list="main_menu/settings_select/player_setup/player_profile_edit/profile_edit_options" string_index="1" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="5">
<on event="a" open="main_menu/settings_select/player_setup/player_profile_edit/controls_setup/controls_settings_screen"/>
<on event="start" open="main_menu/settings_select/player_setup/player_profile_edit/controls_setup/controls_settings_screen"/>
<on event="left_mouse" run="mouse emit accept event"/>
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/gamepads_profile_item" type="text" left="51" top="144" width="232" height="32" bitmap="bitmaps/list_item_bkd" string_list="main_menu/settings_select/player_setup/player_profile_edit/profile_edit_options" string_index="2" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="5">
<on event="a" open="main_menu/settings_select/player_setup/player_profile_edit/gamepad_setup/gamepad_setup_screen"/>
<on event="start" open="main_menu/settings_select/player_setup/player_profile_edit/gamepad_setup/gamepad_setup_screen"/>
<on event="left_mouse" run="mouse emit accept event"/>
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/header_profile_settings" controller="1" left="35" top="11" width="605" height="59" bitmap="main_menu/settings_select/player_setup/player_profile_edit/header_edit_profile_settings">
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/mouse_settings_profile_item" type="text" left="51" top="177" width="232" height="32" bitmap="bitmaps/list_item_bkd" string_list="main_menu/settings_select/player_setup/player_profile_edit/profile_edit_options" string_index="3" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="5">
<on event="a" open="main_menu/settings_select/player_setup/player_profile_edit/mouse_settings/mouse_settings_screen"/>
<on event="start" open="main_menu/settings_select/player_setup/player_profile_edit/mouse_settings/mouse_settings_screen"/>
<on event="left_mouse" run="mouse emit accept event"/>
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/name_profile_item" type="text" left="51" top="78" width="232" height="32" bitmap="bitmaps/list_item_bkd_top" string_list="main_menu/settings_select/player_setup/player_profile_edit/profile_edit_options" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="5">
<on event="a" run="player profile change name" open="main_menu/settings_select/player_setup/player_profile_edit/name_edit/profile_name_screen"/>
<on event="start" run="player profile change name" open="main_menu/settings_select/player_setup/player_profile_edit/name_edit/profile_name_screen"/>
<on event="left_mouse" run="mouse emit accept event"/>
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/network_settings_profile_item" type="text" left="51" top="277" width="232" height="32" bitmap="bitmaps/list_item_bkd" string_list="main_menu/settings_select/player_setup/player_profile_edit/profile_edit_options" string_index="8" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="5">
<on event="a" open="main_menu/settings_select/player_setup/player_profile_edit/network_setup/network_settings_screen"/>
<on event="start" open="main_menu/settings_select/player_setup/player_profile_edit/network_setup/network_settings_screen"/>
<on event="left_mouse" run="mouse emit accept event"/>
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/player_profile_edit_screen" width="640" height="480" flags="pass_unhandled_to_focused_child pause_game" bitmap="bitmaps/gradient">
<on event="created" run="close if not editing profile"/>
<on event="b" run="player profile end editing" back="true"/>
<on event="back" run="player profile end editing" back="true"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/header_profile_settings"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/profile_edit_select_list"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/profile_label" x="293" y="375"/>
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/profile_edit_button_bar" type="column_list" width="640" height="28" flags="pass_unhandled_to_focused_child left_right_tabs_items">
<data input="common button bar update"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/profile_edit_button_ok" x="380" y="1"/>
<child widget="common_button_cancel" x="510" y="1"/>
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/profile_edit_button_ok" type="text" width="128" height="24" bitmap="bitmaps/text_button_background" string_list="strings/common_button_captions" string_index="1" font="ui\small_ui" color="#FFFFFFFF" align="center" text_y="2">
<on event="a" run="player profile save changes" open="error/warning_saving_file_screen"/>
<on event="start" run="player profile save changes" open="error/warning_saving_file_screen"/>
<on event="left_mouse" run="mouse emit accept event"/>
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/profile_edit_extended_desc_pic" controller="1" left="288" top="85" width="279" height="202" bitmap="main_menu/settings_select/player_setup/player_profile_edit/profile_options">
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/profile_edit_extended_desc_text" type="text" controller="1" left="294" top="290" width="296" height="110" string_list="main_menu/settings_select/player_setup/player_profile_edit/profile_edit_descriptions" font="ui\large_ui" color="#FF2896FF">
<replace search="__BUILD__" function="build_number"/>
<replace search="__PID__" function="pid"/>
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/profile_edit_extended_description" controller="1" left="275" top="78" width="320" height="362" bitmap="bitmaps/list_field">
<child widget="main_menu/settings_select/player_setup/player_profile_edit/profile_edit_extended_desc_text"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/profile_edit_extended_desc_pic" x="4"/>
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/profile_edit_select_list" type="column_list" width="640" height="480" flags="pass_unhandled_to_focused_child up_down_tabs_items" description="main_menu/settings_select/player_setup/player_profile_edit/profile_edit_extended_description">
<data input="plyr prof edit select menu upd8"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/name_profile_item"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/controller_setup_profile_item"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/gamepads_profile_item"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/mouse_settings_profile_item"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/audio_settings_profile_item"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/video_settings_profile_item"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/network_settings_profile_item"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/color_profile_item" y="32"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/about_item" y="32"/>
<child widget="main_menu/settings_select/player_setup/player_profile_edit/profile_edit_button_bar" y="414"/>
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/profile_label" type="text" controller="1" width="400" height="22" font="ui\large_ui" color="#FFFFFFFF">
<data input="get edit plyr profile name"/>
</widget>
<widget name="main_menu/settings_select/player_setup/player_profile_edit/video_settings_profile_item" type="text" left="51" top="243" width="232" height="32" bitmap="bitmaps/list_item_bkd" string_list="main_menu/settings_select/player_setup/player_profile_edit/profile_edit_options" string_index="5" font="ui\large_ui" color="#FF2896FF" text_x="13" text_y="5">
<on event="a" open="main_menu/settings_select/player_setup/player_profile_edit/video_settings/video_settings_screen"/>
<on event="start" open="main_menu/settings_select/player_setup/player_profile_edit/video_settings/video_settings_screen"/>
<on event="left_mouse" run="mouse emit accept event"/>
</widget>
</menus>
@@ -0,0 +1,59 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- The PC version's menus: ui\shell\main_menu\solo_level_select (tools/ce_menus.py) -->
<menus>
<widget name="main_menu/solo_level_select/difficulty_indicator" controller="1" width="44" height="48" bitmap="ui\shell\main_menu\difficulty_select\difficulty_options_small">
</widget>
<widget name="main_menu/solo_level_select/header_replay_level" controller="1" left="35" top="11" width="605" height="59" bitmap="main_menu/solo_level_select/header_load_level">
</widget>
<widget name="main_menu/solo_level_select/replay_level_right_data" type="text" controller="1" left="417" top="258" width="146" height="136" string_list="main_menu/solo_level_select/map_data" string_index="2" font="ui\small_ui" color="#FF2896FF">
</widget>
<widget name="main_menu/solo_level_select/replay_level_right_item" controller="1" left="406" top="75" width="162" height="326" bitmap="bitmaps/spinner_list_3_wide_item_background">
<child widget="main_menu/solo_level_select/replay_level_right_name"/>
<child widget="main_menu/solo_level_select/replay_level_right_pic"/>
<child widget="main_menu/solo_level_select/replay_level_right_data"/>
<child widget="main_menu/solo_level_select/difficulty_indicator" x="416" y="343"/>
<child widget="main_menu/solo_level_select/difficulty_indicator" x="466" y="343"/>
<child widget="main_menu/solo_level_select/difficulty_indicator" x="516" y="343"/>
</widget>
<widget name="main_menu/solo_level_select/replay_level_right_name" type="text" controller="1" left="417" top="204" width="146" height="43" string_list="main_menu/map_list" string_index="2" font="ui\large_ui" color="#FF2896FF">
</widget>
<widget name="main_menu/solo_level_select/replay_level_right_pic" controller="1" left="419" top="87" width="140" height="114" bitmap="ui\shell\bitmaps\sp_levels">
</widget>
<widget name="main_menu/solo_level_select/solo_level_extended_desc" width="640" height="480">
<child widget="main_menu/current_profile_name"/>
<child widget="main_menu/solo_level_select/replay_level_right_item" x="22" y="2"/>
</widget>
<widget name="main_menu/solo_level_select/solo_level_select_button_bar" type="column_list" width="640" height="28" flags="pass_unhandled_to_focused_child left_right_tabs_items">
<data input="common button bar update"/>
<child widget="main_menu/solo_level_select/solo_level_select_button_ok" x="380" y="1"/>
<child widget="common_button_back" x="510" y="1"/>
</widget>
<widget name="main_menu/solo_level_select/solo_level_select_button_ok" type="text" width="128" height="24" bitmap="bitmaps/text_button_background" string_list="strings/common_button_captions" string_index="1" font="ui\small_ui" color="#FFFFFFFF" align="center" text_y="2">
<on event="a" run="emit custom activation event"/>
<on event="start" run="emit custom activation event"/>
<on event="left_mouse" run="mouse emit accept event"/>
</widget>
<widget name="main_menu/solo_level_select/solo_level_select_list" type="column_list" width="640" height="480" flags="pass_unhandled_to_focused_child up_down_tabs_children" description="main_menu/solo_level_select/solo_level_extended_desc">
<data input="solo map list update"/>
<on event="created" run="initialize sp level list solo"/>
<on event="deleted" run="dispose sp level list"/>
<on event="custom_activation" run="solo level set map" open="main_menu/difficulty_select/difficulty_select_list_screen"/>
<child widget="main_menu/new_select/list_item_0" x="20" y="73"/>
<child widget="main_menu/new_select/list_item_1" x="20" y="103"/>
<child widget="main_menu/new_select/list_item_2" x="20" y="133"/>
<child widget="main_menu/new_select/list_item_3" x="20" y="163"/>
<child widget="main_menu/new_select/list_item_4" x="20" y="193"/>
<child widget="main_menu/new_select/list_item_5" x="20" y="223"/>
<child widget="main_menu/new_select/list_item_6" x="20" y="253"/>
<child widget="main_menu/new_select/list_item_7" x="20" y="283"/>
<child widget="main_menu/new_select/list_item_8" x="20" y="313"/>
<child widget="main_menu/new_select/list_item_9" x="20" y="343"/>
<child widget="main_menu/new_select/list_item_10" x="20" y="373"/>
<child widget="main_menu/solo_level_select/solo_level_select_button_bar" y="414"/>
</widget>
<widget name="main_menu/solo_level_select/solo_level_select_screen" width="640" height="480" flags="pass_unhandled_to_focused_child" bitmap="bitmaps/gradient">
<child widget="main_menu/new_select/sel_list_desc_bkd"/>
<child widget="main_menu/solo_level_select/solo_level_select_list"/>
<child widget="main_menu/solo_level_select/header_replay_level"/>
</widget>
</menus>
+70
View File
@@ -0,0 +1,70 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- The PC version's menus: ui\shell\main_menu (tools/ce_menus.py) -->
<menus root="main_menu/main_menu">
<widget name="main_menu/blueline" controller="1" width="192" height="2" bitmap="bitmaps/blue">
</widget>
<widget name="main_menu/build_number" type="text" controller="1" width="150" height="20" font="ui\small_ui" color="#FFFF8000">
<data input="build number textbox only"/>
</widget>
<widget name="main_menu/current_profile_name" type="text" controller="1" left="10" top="446" width="340" height="34" font="ui\large_ui" color="#FFCCCCCC">
</widget>
<widget name="main_menu/halo_logo" controller="1" width="640" height="256" bitmap="ui\shell\main_menu\halo_logo">
</widget>
<widget name="main_menu/main_menu" width="640" height="480" flags="pass_unhandled_to_focused_child">
<on event="created" run="main menu intialize" label="ring_loop"/>
<on event="back" open="main_menu/quit_select/quit_screen"/>
<on event="b" open="main_menu/quit_select/quit_screen"/>
<child widget="main_menu/halo_logo" y="28"/>
<child widget="main_menu/main_menu_select_list"/>
<child widget="main_menu/build_number" x="450" y="400"/>
</widget>
<widget name="main_menu/main_menu_item_load_camp" type="text" width="256" height="33" bitmap="main_menu/menu_load_campaign" string_list="main_menu/main_menu_options" string_index="1" font="ui\small_ui" color="#000080FF">
<on event="a" run="new game if no plyr profiles" label="load_campaign" open="main_menu/campaign_select/campaign_menu" branch="true"/>
<on event="start" run="new game if no plyr profiles" label="load_campaign" open="main_menu/campaign_select/campaign_menu" branch="true"/>
<on event="left_mouse" run="mouse emit accept event"/>
<conditional widget="main_menu/new_campaign_creating_profile" if_failed="true"/>
</widget>
<widget name="main_menu/main_menu_item_multiplayer" type="text" width="256" height="33" bitmap="main_menu/menu_multiplayer" string_list="main_menu/main_menu_options" string_index="2" font="ui\small_ui" color="#000080FF">
<on event="a" run="new game if no plyr profiles" open="main_menu/multiplayer_type_select/multiplayer_type_select_screen" branch="true"/>
<on event="start" run="new game if no plyr profiles" open="main_menu/multiplayer_type_select/multiplayer_type_select_screen" branch="true"/>
<on event="left_mouse" run="mouse emit accept event"/>
<conditional widget="main_menu/profile_manager/multiplayer_creating_profile" if_failed="true"/>
</widget>
<widget name="main_menu/main_menu_item_profile" type="text" width="256" height="33" bitmap="main_menu/menu_profile" string_list="main_menu/main_menu_options" string_index="2" font="ui\small_ui" color="#000080FF">
<on event="a" run="new game if no plyr profiles" open="main_menu/profile_manager/player_profile_manager" branch="true"/>
<on event="start" run="new game if no plyr profiles" open="main_menu/multiplayer_type_select/multiplayer_type_select_screen" branch="true"/>
<on event="left_mouse" run="mouse emit accept event"/>
<conditional widget="main_menu/profile_manager/pm_entry_creating_profile" if_failed="true"/>
</widget>
<widget name="main_menu/main_menu_item_quit_game" type="text" width="256" height="33" bitmap="main_menu/menu_quit">
<on event="start" open="main_menu/quit_select/quit_screen"/>
<on event="a" open="main_menu/quit_select/quit_screen"/>
<on event="left_mouse" run="mouse emit accept event"/>
</widget>
<widget name="main_menu/main_menu_item_settings" type="text" width="256" height="33" bitmap="main_menu/menu_settings" string_list="main_menu/main_menu_options" string_index="3" font="ui\small_ui" color="#000080FF">
<on event="a" run="profile set edit begin" label="settings" open="main_menu/settings_select/player_setup/player_profile_edit/player_profile_edit_screen" branch="true"/>
<on event="start" run="profile set edit begin" label="settings" open="main_menu/settings_select/player_setup/player_profile_edit/player_profile_edit_screen" branch="true"/>
<on event="left_mouse" run="mouse emit accept event"/>
<conditional widget="main_menu/profile_manager/settings_creating_profile" if_failed="true"/>
</widget>
<widget name="main_menu/main_menu_list_ext_desc" controller="1" left="-1" top="-1" width="1" height="1" bitmap="bitmaps/white" color="#FF0080FF">
</widget>
<widget name="main_menu/main_menu_select_list" type="column_list" width="640" height="480" flags="pass_unhandled_to_focused_child up_down_tabs_items" description="main_menu/main_menu_list_ext_desc">
<data input="main menu fake animate"/>
<on event="down"/>
<child widget="main_menu/main_menu_item_load_camp" x="194" y="247"/>
<child widget="main_menu/main_menu_item_multiplayer" x="192" y="283"/>
<child widget="main_menu/main_menu_item_profile" x="192" y="319"/>
<child widget="main_menu/main_menu_item_settings" x="192" y="355"/>
<child widget="main_menu/main_menu_item_quit_game" x="192" y="391"/>
</widget>
<widget name="main_menu/new_campaign_creating_profile" width="640" height="480" flags="pass_unhandled_to_focused_child no_history" auto_close="1">
<on event="deleted" run="new campaign decision" open="main_menu/new_campaign_saving_profile"/>
</widget>
<widget name="main_menu/new_campaign_saving_profile" width="640" height="480" flags="pass_unhandled_to_focused_child no_history" auto_close="3000" auto_close_fade="1000">
<on event="b" run="NULL"/>
<on event="back" run="NULL"/>
<on event="deleted" run="NULL" open="main_menu/difficulty_select/difficulty_select_list_screen"/>
<child widget="error/warning_creating_player_profile_screen"/>
</widget>
</menus>
Binary file not shown.

After

Width:  |  Height:  |  Size: 75 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 68 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 60 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 70 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 65 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 305 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 323 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.6 KiB

+14
View File
@@ -0,0 +1,14 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- The PC version's menus: ui\shell\shell (tools/ce_menus.py) -->
<menus>
<widget name="common_button_back" type="text" width="128" height="24" bitmap="bitmaps/text_button_background" string_list="strings/common_button_captions" font="ui\small_ui" color="#FFFFFFFF" align="center" text_y="2">
<on event="a" run="mouse emit back event"/>
<on event="start" run="mouse emit back event"/>
<on event="left_mouse" run="mouse emit back event"/>
</widget>
<widget name="common_button_cancel" type="text" width="128" height="24" bitmap="bitmaps/text_button_background" string_list="strings/common_button_captions" string_index="2" font="ui\small_ui" color="#FFFFFFFF" align="center" text_y="2">
<on event="a" run="mouse emit back event"/>
<on event="start" run="mouse emit back event"/>
<on event="left_mouse" run="mouse emit back event"/>
</widget>
</menus>
Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 702 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 505 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 552 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 490 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 492 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 492 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 593 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 493 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 487 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 493 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 534 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 465 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 86 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 86 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 22 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 32 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 35 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 31 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 31 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 30 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 29 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 16 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 780 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 803 B

Loaded 100 of 483 files, more files were not shown because too many files have changed in this diff. Show more