Commit Graph

239 Commits

Author SHA1 Message Date
Paul Chote
4f172d7ed8 Make bots first-class players.
- Bots have their own Clients, with unique ClientIDs
 - Hosts can set bot team/color in the lobby
 - Bots are kicked when switching to a smaller map without enough slots
 - Order validator assumes that only client 0 has permission to issue bot orders
2011-06-20 22:50:29 +12:00
Paul Chote
19d74fef52 Server support for host changing other client's race/color/team/spawn 2011-06-20 22:50:28 +12:00
Paul Chote
d2df5722b5 Fix the lobby slots.
- lobbyInfo.Slots is now a dictionary, keyed by the name of the PlayerReference that the slot is tied to.
 - LockRace/Color/Team is now specified on the slot, avoiding map lookups in the lobby
 - Observers are no longer tied to slots -> players will join as observers instead of crashing the game if there are no available slots
 - Observers are able to change their name and color
2011-06-20 22:50:27 +12:00
Paul Chote
532bd42aed Remove obsolete Player index cruft 2011-06-20 22:50:26 +12:00
Paul Chote
b487476ea9 Remove Game.AfterGameStart 2011-06-01 19:18:21 +12:00
Paul Chote
2ebb2ae921 Remove static handler crap from widget delegates - Register/unregister events manually (ra & cnc). 2011-06-01 19:15:55 +12:00
Paul Chote
ad3f378545 Add a hook for widgets being removed, and ensure widgets are removed consistently. 2011-06-01 18:50:59 +12:00
Paul Chote
bbce4368d9 Remove some crap from ra ServerBrowserLogic 2011-05-31 21:22:29 +12:00
Paul Chote
c07abc48b2 Remove some nonfunctional code in BuildPaletteWidget 2011-05-30 22:15:15 +12:00
Chris Forbes
05bb335ce2 fix missing center panel part on fancy tooltips 2011-05-30 20:52:16 +12:00
Chris Forbes
ef03d46f13 eradicate 'delegate' misuse 2011-05-22 22:02:09 +12:00
Chris Forbes
fdfa3fc1d3 start cleaning GameInitDelegate 2011-05-22 21:33:48 +12:00
Chris Forbes
cd756885a6 remove MasterServerQuery in favour of ServerList 2011-05-22 18:41:33 +12:00
Paul Chote
d029b1ff6f Use new mechanism for stances / color picker 2011-05-22 18:41:32 +12:00
Paul Chote
0c9692c0b1 Use new mechanism for mod list 2011-05-22 18:41:32 +12:00
Paul Chote
078972e3be Use new mechanism for ra dropdowns 2011-05-22 18:41:32 +12:00
Paul Chote
7a21309d67 Use ScrollItem for ra music list 2011-05-22 18:41:32 +12:00
Paul Chote
46c870b967 Use ScrollItem for ra map browser 2011-05-22 18:41:32 +12:00
Paul Chote
db417545e6 Use ScrollItem for ra replay browser 2011-05-22 18:41:32 +12:00
Paul Chote
1d24c5f49c Use ScrollItem in ra server browser 2011-05-22 18:41:32 +12:00
Paul Chote
dc6bd60fcc Kill CheckboxWidget.Bind and related 2011-05-22 18:41:32 +12:00
Paul Chote
b1cc004194 Remove obsolete calls from ra SettingsMenuDelegate 2011-05-22 18:41:31 +12:00
Paul Chote
dbd16076a5 Remove unused video player from ra 2011-05-22 18:41:31 +12:00
Paul Chote
5cb0be6c4b Remove obsolete calls from ra DeveloperModeDelegate 2011-05-22 18:41:31 +12:00
Paul Chote
35673a058a Remove obsolete Bold field from widgets 2011-05-22 18:41:31 +12:00
Paul Chote
8eb4e663d2 Fix obsolete Game.Disconnect() 2011-05-22 18:41:31 +12:00
Paul Chote
91a3aafa67 Split the download/install logic into multiple files. 2011-05-21 17:26:20 +12:00
Paul Chote
c76d2e37dc Make the sound engine less dumb about music. Fix the music player not knowing about already playing tracks. 2011-05-21 17:26:20 +12:00
Paul Chote
5bc0ef69ad Pass WidgetArgs to Widget.Initialize. Use this to allow for custom substitutions. 2011-05-21 17:26:20 +12:00
Paul Chote
d7f009b218 Use the font dictionary everywhere 2011-05-21 17:26:18 +12:00
Paul Chote
cb565e5d3c Wire up the settings panel 2011-05-21 17:26:17 +12:00
Paul Chote
1526b6ff37 Make Game.LoadWidget / Widget.LoadWidget consistent. 2011-05-21 17:26:16 +12:00
Paul Chote
529ed51034 Nit: use ServerSettings to pass info to the server 2011-05-21 17:26:16 +12:00
Paul Chote
f4ea4c5daa Add a WidgetArgs type to work around gmcs not understanding lambda -> Action -> object. 2011-05-21 17:26:16 +12:00
Paul Chote
5fffc9d816 Don't tell the master server about local servers 2011-05-21 17:26:16 +12:00
Paul Chote
ab28f5867f Disallow watching replays with zero duration. 2011-05-21 17:26:14 +12:00
Paul Chote
33a4f5e29e Support loopback servers for solo play 2011-05-21 17:26:14 +12:00
Paul Chote
3d493d3ace Package download works. Download error messages need polish. 2011-05-21 17:26:14 +12:00
Paul Chote
6a1f3cfc18 Installing from CD reimplemented 2011-05-21 17:26:13 +12:00
Paul Chote
372d2f5426 Saner load code for cnc. Installing not yet implemented. 2011-05-21 17:26:10 +12:00
Paul Chote
d95138b600 Use the same mechanism for loading ingame and shellmap ui. 2011-05-21 17:25:45 +12:00
Paul Chote
8957caeaca Basic ingame menu reimplemented. 2011-05-21 17:25:44 +12:00
Paul Chote
5c59f7703d Reimplement connecting / connection failed dialogs. 2011-05-21 17:25:43 +12:00
Paul Chote
c9dd1aa4bd Improved replay browser 2011-05-21 17:13:20 +12:00
Paul Chote
14a904ab7a Start reimplementing replay browser 2011-05-21 17:13:18 +12:00
Paul Chote
6cb0cb7d0e Can now start a game and disconnect from lobby without triggering a reload.
It is now possible to crash the game by starting a new server before the previous one has had time to timeout and release the port binding (the previous loadscreen pause meant this was always hidden).
2011-05-21 16:27:37 +12:00
Paul Chote
845b32281d Reimplement server browser 2011-05-21 16:27:37 +12:00
Paul Chote
a3b430c24a Remove engine references to MAINMENU_BG. Don't push the menu background onto the window list. Crashes whenever a delegate tries to open MAINMENU_BG. 2011-05-21 16:27:37 +12:00
Matthew Bowra-Dean
20458fc552 Move Platform.cs to OpenRA.FileFormats, fix #765. 2011-05-21 11:35:04 +12:00
Paul Chote
221d6ebd4f Make it actually work 2011-05-04 20:24:04 +12:00