protected override void Execute(IOnlineConnection Host) { OnlineGameClient.RoomID = RoomID; RoomInformations NewRoom; Dictionary <string, OnlineScript> DicNewGameServerScript = new Dictionary <string, OnlineScript>(); IMissionSelect NewMissionSelectScreen; if (RoomType == RoomInformations.RoomTypeMission) { MissionRoomInformations MissionRoom = new MissionRoomInformations(RoomID, RoomName, RoomType, RoomSubtype, MinNumberOfPlayer, MaxNumberOfPlayer); NewRoom = MissionRoom; MissionSelect NewMissionSelect = new MissionSelect(OnlineGameClient, OnlineCommunicationClient, MissionRoom); NewScreen = NewMissionSelect; NewMissionSelectScreen = NewMissionSelect; DicNewGameServerScript.Add(CreateGameMissionScriptClient.ScriptName, new CreateGameMissionScriptClient(OnlineGameClient, ScreenOwner.ListGameScreen, MissionRoom)); DicNewGameServerScript.Add(ChangeRoomExtrasMissionScriptClient.ScriptName, new ChangeRoomExtrasMissionScriptClient(MissionRoom, NewMissionSelectScreen)); } else { BattleRoomInformations BattleRoom = new BattleRoomInformations(RoomID, RoomName, RoomType, RoomSubtype, MinNumberOfPlayer, MaxNumberOfPlayer); NewRoom = BattleRoom; BattleSelect NewBattleSelect = new BattleSelect(OnlineGameClient, OnlineCommunicationClient, BattleRoom); NewScreen = NewBattleSelect; NewMissionSelectScreen = NewBattleSelect; DicNewGameServerScript.Add(CreateGameMissionScriptClient.ScriptName, new CreateGameBattleScriptClient(OnlineGameClient, ScreenOwner.ListGameScreen, BattleRoom)); DicNewGameServerScript.Add(ChangeRoomExtrasBattleScriptClient.ScriptName, new ChangeRoomExtrasBattleScriptClient(BattleRoom, NewMissionSelectScreen)); } DicNewGameServerScript.Add(PlayerJoinedScriptClient.ScriptName, new PlayerJoinedScriptClient(NewMissionSelectScreen)); DicNewGameServerScript.Add(PlayerLeftScriptClient.ScriptName, new PlayerLeftScriptClient(NewRoom, OnlineGameClient, NewMissionSelectScreen)); DicNewGameServerScript.Add(ChangeCharacterScriptClient.ScriptName, new ChangeCharacterScriptClient(NewRoom, NewMissionSelectScreen)); DicNewGameServerScript.Add(ChangePlayerTypeScriptClient.ScriptName, new ChangePlayerTypeScriptClient(NewRoom, NewMissionSelectScreen)); DicNewGameServerScript.Add(ChangeTeamScriptClient.ScriptName, new ChangeTeamScriptClient(NewRoom)); DicNewGameServerScript.Add(ChangeMapScriptClient.ScriptName, new ChangeMapScriptClient(NewRoom, NewMissionSelectScreen)); DicNewGameServerScript.Add(ChangeRoomSubtypeScriptClient.ScriptName, new ChangeRoomSubtypeScriptClient(NewMissionSelectScreen)); Host.AddOrReplaceScripts(DicNewGameServerScript); if (OnlineCommunicationClient.Host != null) { Dictionary <string, OnlineScript> DicNewCommunicationServerScript = new Dictionary <string, OnlineScript>(); DicNewCommunicationServerScript.Add(ReceiveGroupMessageScriptClient.ScriptName, new ReceiveGroupMessageScriptClient(OnlineCommunicationClient)); OnlineCommunicationClient.Host.AddOrReplaceScripts(DicNewCommunicationServerScript); OnlineCommunicationClient.Chat.InsertTab(RoomID, "Chat"); OnlineCommunicationClient.Chat.CloseTab("Global"); OnlineCommunicationClient.Host.Send(new CreateOrJoinCommunicationGroupScriptClient(RoomID, false)); OnlineCommunicationClient.Host.Send(new LeaveCommunicationGroupScriptClient("Global")); } ScreenOwner.RemoveScreen(ScreenOwner); OnlineGameClient.DelayOnlineScript(this); }
protected override void Execute(IOnlineConnection Host) { Owner.RoomID = RoomID; RoomInformations NewRoom; Dictionary <string, OnlineScript> DicNewScript = new Dictionary <string, OnlineScript>(); IMissionSelect NewMissionSelectScreen; if (RoomType == RoomInformations.RoomTypeMission) { MissionRoomInformations MissionRoom = new MissionRoomInformations(RoomID, RoomName, RoomType, RoomSubtype, MaxNumberOfPlayer); NewRoom = MissionRoom; MissionSelect NewScreen = new MissionSelect(Owner, MissionRoom); NewMissionSelectScreen = NewScreen; DicNewScript.Add(CreateGameMissionScriptClient.ScriptName, new CreateGameMissionScriptClient(Owner, ScreenOwner.ListGameScreen, MissionRoom)); DicNewScript.Add(ChangeRoomExtrasMissionScriptClient.ScriptName, new ChangeRoomExtrasMissionScriptClient(MissionRoom, NewMissionSelectScreen)); ScreenOwner.PushScreen(NewScreen); } else { BattleRoomInformations BattleRoom = new BattleRoomInformations(RoomID, RoomName, RoomType, RoomSubtype, MaxNumberOfPlayer); NewRoom = BattleRoom; BattleSelect NewScreen = new BattleSelect(Owner, BattleRoom); NewMissionSelectScreen = NewScreen; DicNewScript.Add(CreateGameMissionScriptClient.ScriptName, new CreateGameBattleScriptClient(Owner, ScreenOwner.ListGameScreen, BattleRoom)); DicNewScript.Add(ChangeRoomExtrasBattleScriptClient.ScriptName, new ChangeRoomExtrasBattleScriptClient(BattleRoom, NewMissionSelectScreen)); ScreenOwner.PushScreen(NewScreen); } DicNewScript.Add(PlayerJoinedScriptClient.ScriptName, new PlayerJoinedScriptClient(NewMissionSelectScreen)); DicNewScript.Add(PlayerLeftScriptClient.ScriptName, new PlayerLeftScriptClient(NewRoom, Owner, NewMissionSelectScreen)); DicNewScript.Add(ChangeCharacterScriptClient.ScriptName, new ChangeCharacterScriptClient(NewRoom, NewMissionSelectScreen)); DicNewScript.Add(ChangePlayerTypeScriptClient.ScriptName, new ChangePlayerTypeScriptClient(NewRoom, NewMissionSelectScreen)); DicNewScript.Add(ChangeTeamScriptClient.ScriptName, new ChangeTeamScriptClient(NewRoom)); DicNewScript.Add(ChangeMapScriptClient.ScriptName, new ChangeMapScriptClient(NewRoom, NewMissionSelectScreen)); DicNewScript.Add(ChangeRoomSubtypeScriptClient.ScriptName, new ChangeRoomSubtypeScriptClient(NewMissionSelectScreen)); Host.AddOrReplaceScripts(DicNewScript); ScreenOwner.RemoveScreen(ScreenOwner); }
protected override void Execute(IOnlineConnection Host) { OnlineGameClient.RoomID = RoomID; Dictionary <string, OnlineScript> DicNewGameServerScript = new Dictionary <string, OnlineScript>(); IMissionSelect NewMissionSelectScreen; RoomInformations NewRoom; FightingZone NewFightingZone = null; if (HasGame) { NewFightingZone = new FightingZone(OnlineGameClient); NewFightingZone.ListGameScreen = ScreenOwner.ListGameScreen; DicNewGameServerScript = OnlineHelper.GetTripleThunderScriptsClient(OnlineGameClient); Host.IsGameReady = true; } if (RoomType == RoomInformations.RoomTypeMission) { MissionRoomInformations MissionRoom = new MissionRoomInformations(RoomID, RoomName, RoomType, RoomSubtype, CurrentDifficulty, MapPath, ListJoiningPlayerID, RoomData); if (HasGame) { NewFightingZone.Rules = new MissionGameRules(MissionRoom, NewFightingZone); } NewRoom = MissionRoom; MissionSelect NewMissionSelect = new MissionSelect(OnlineGameClient, OnlineCommunicationClient, MissionRoom); NewScreen = NewMissionSelect; NewMissionSelectScreen = NewMissionSelect; DicNewGameServerScript.Add(CreateGameMissionScriptClient.ScriptName, new CreateGameMissionScriptClient(OnlineGameClient, ScreenOwner.ListGameScreen, MissionRoom)); DicNewGameServerScript.Add(ChangeRoomExtrasBattleScriptClient.ScriptName, new ChangeRoomExtrasMissionScriptClient(MissionRoom, NewMissionSelect)); } else { BattleRoomInformations BattleRoom = new BattleRoomInformations(RoomID, RoomName, RoomType, RoomSubtype, CurrentDifficulty, MapPath, ListJoiningPlayerID, RoomData); if (HasGame) { NewFightingZone.Rules = new BattleGameRules(BattleRoom, NewFightingZone); } NewRoom = BattleRoom; BattleSelect NewBattleSelect = new BattleSelect(OnlineGameClient, OnlineCommunicationClient, BattleRoom); NewScreen = NewBattleSelect; NewMissionSelectScreen = NewBattleSelect; DicNewGameServerScript.Add(CreateGameMissionScriptClient.ScriptName, new CreateGameBattleScriptClient(OnlineGameClient, ScreenOwner.ListGameScreen, BattleRoom)); DicNewGameServerScript.Add(ChangeRoomExtrasBattleScriptClient.ScriptName, new ChangeRoomExtrasBattleScriptClient(BattleRoom, NewBattleSelect)); } if (HasGame) { ScreenOwner.PushScreen(new LoadingScreen(NewFightingZone, OnlineGameClient)); } DicNewGameServerScript.Add(PlayerJoinedScriptClient.ScriptName, new PlayerJoinedScriptClient(NewMissionSelectScreen)); DicNewGameServerScript.Add(PlayerLeftScriptClient.ScriptName, new PlayerLeftScriptClient(NewRoom, OnlineGameClient, NewMissionSelectScreen)); DicNewGameServerScript.Add(ChangeCharacterScriptClient.ScriptName, new ChangeCharacterScriptClient(NewRoom, NewMissionSelectScreen)); DicNewGameServerScript.Add(ChangePlayerTypeScriptClient.ScriptName, new ChangePlayerTypeScriptClient(NewRoom, NewMissionSelectScreen)); DicNewGameServerScript.Add(ChangeTeamScriptClient.ScriptName, new ChangeTeamScriptClient(NewRoom)); DicNewGameServerScript.Add(ChangeMapScriptClient.ScriptName, new ChangeMapScriptClient(NewRoom, NewMissionSelectScreen)); DicNewGameServerScript.Add(ChangeRoomSubtypeScriptClient.ScriptName, new ChangeRoomSubtypeScriptClient(NewMissionSelectScreen)); Host.AddOrReplaceScripts(DicNewGameServerScript); if (OnlineCommunicationClient.Host != null) { OnlineCommunicationClient.Chat.InsertTab(RoomID, "Chat"); OnlineCommunicationClient.Chat.CloseTab("Global"); OnlineCommunicationClient.Host.Send(new CreateOrJoinCommunicationGroupScriptClient(RoomID, false)); OnlineCommunicationClient.Host.Send(new LeaveCommunicationGroupScriptClient("Global")); } OnlineGameClient.DelayOnlineScript(this); }
protected override void Execute(IOnlineConnection Host) { Owner.RoomID = RoomID; Dictionary <string, OnlineScript> DicNewScript = new Dictionary <string, OnlineScript>(); IMissionSelect NewMissionSelectScreen; RoomInformations NewRoom; FightingZone NewFightingZone = null; if (HasGame) { NewFightingZone = new FightingZone(Owner); NewFightingZone.ListGameScreen = ScreenOwner.ListGameScreen; DicNewScript.Add(SendPlayerUpdateScriptClient.ScriptName, new SendPlayerUpdateScriptClient(Owner)); DicNewScript.Add(SendPlayerRespawnScriptClient.ScriptName, new SendPlayerRespawnScriptClient(Owner)); DicNewScript.Add(SendPlayerDamageScriptClient.ScriptName, new SendPlayerDamageScriptClient(Owner)); DicNewScript.Add(ShootBulletScriptClient.ScriptName, new ShootBulletScriptClient(Owner)); DicNewScript.Add(ReceiveGameDataScriptClient.ScriptName, new ReceiveGameDataScriptClient(Owner)); DicNewScript.Add(GoToNextMapScriptClient.ScriptName, new GoToNextMapScriptClient(Owner)); DicNewScript.Add(GameEndedScriptClient.ScriptName, new GameEndedScriptClient(Owner)); Host.IsGameReady = true; } if (RoomType == RoomInformations.RoomTypeMission) { MissionRoomInformations MissionRoom = new MissionRoomInformations(RoomID, RoomName, RoomType, RoomSubtype, CurrentDifficulty, MapPath, ListJoiningPlayerID, RoomData); if (HasGame) { NewFightingZone.Rules = new MissionGameRules(MissionRoom, NewFightingZone); } NewRoom = MissionRoom; MissionSelect NewScreen = new MissionSelect(Owner, MissionRoom); DicNewScript.Add(CreateGameMissionScriptClient.ScriptName, new CreateGameMissionScriptClient(Owner, ScreenOwner.ListGameScreen, MissionRoom)); DicNewScript.Add(ChangeRoomExtrasBattleScriptClient.ScriptName, new ChangeRoomExtrasMissionScriptClient(MissionRoom, NewScreen)); NewMissionSelectScreen = NewScreen; ScreenOwner.PushScreen(NewScreen); } else { BattleRoomInformations BattleRoom = new BattleRoomInformations(RoomID, RoomName, RoomType, RoomSubtype, CurrentDifficulty, MapPath, ListJoiningPlayerID, RoomData); if (HasGame) { NewFightingZone.Rules = new BattleGameRules(BattleRoom, NewFightingZone); } NewRoom = BattleRoom; BattleSelect NewScreen = new BattleSelect(Owner, BattleRoom); DicNewScript.Add(CreateGameMissionScriptClient.ScriptName, new CreateGameBattleScriptClient(Owner, ScreenOwner.ListGameScreen, BattleRoom)); DicNewScript.Add(ChangeRoomExtrasBattleScriptClient.ScriptName, new ChangeRoomExtrasBattleScriptClient(BattleRoom, NewScreen)); NewMissionSelectScreen = NewScreen; ScreenOwner.PushScreen(NewScreen); } if (HasGame) { ScreenOwner.PushScreen(new LoadingScreen(NewFightingZone, Owner)); } DicNewScript.Add(PlayerJoinedScriptClient.ScriptName, new PlayerJoinedScriptClient(NewMissionSelectScreen)); DicNewScript.Add(PlayerLeftScriptClient.ScriptName, new PlayerLeftScriptClient(NewRoom, Owner, NewMissionSelectScreen)); DicNewScript.Add(ChangeCharacterScriptClient.ScriptName, new ChangeCharacterScriptClient(NewRoom, NewMissionSelectScreen)); DicNewScript.Add(ChangePlayerTypeScriptClient.ScriptName, new ChangePlayerTypeScriptClient(NewRoom, NewMissionSelectScreen)); DicNewScript.Add(ChangeTeamScriptClient.ScriptName, new ChangeTeamScriptClient(NewRoom)); DicNewScript.Add(ChangeMapScriptClient.ScriptName, new ChangeMapScriptClient(NewRoom, NewMissionSelectScreen)); DicNewScript.Add(ChangeRoomSubtypeScriptClient.ScriptName, new ChangeRoomSubtypeScriptClient(NewMissionSelectScreen)); Host.AddOrReplaceScripts(DicNewScript); }