public CreateGameBattleScriptClient(TripleThunderOnlineClient Owner, List <GameScreen> ListGameScreen, BattleRoomInformations Room) : base(ScriptName) { this.Owner = Owner; this.ListGameScreen = ListGameScreen; this.Room = Room; }
public AskStartGameBattleScriptServer(BattleRoomInformations Owner, TripleThunderClientGroup CreatedGroup, GameServer OnlineServer) : base(ScriptName) { this.Owner = Owner; this.CreatedGroup = CreatedGroup; this.OnlineServer = OnlineServer; }
protected override void Execute(IOnlineConnection Sender) { base.Execute(Sender); RoomInformations NewRoom = (RoomInformations)CreatedGroup.Room; foreach (IOnlineConnection ActivePlayer in CreatedGroup.Room.ListOnlinePlayer) { //Add Game Specific scripts Dictionary <string, OnlineScript> DicNewScript = new Dictionary <string, OnlineScript>(); if (NewRoom.RoomType == RoomInformations.RoomTypeMission) { MissionRoomInformations MissionRoom = (MissionRoomInformations)NewRoom; DicNewScript.Add(AskStartGameMissionScriptServer.ScriptName, new AskStartGameMissionScriptServer(MissionRoom, (TripleThunderClientGroup)CreatedGroup, Owner)); DicNewScript.Add(AskChangeRoomExtrasMissionScriptServer.ScriptName, new AskChangeRoomExtrasMissionScriptServer(MissionRoom)); } else if (NewRoom.RoomType == RoomInformations.RoomTypeBattle) { BattleRoomInformations BattleRoom = (BattleRoomInformations)NewRoom; DicNewScript.Add(AskStartGameMissionScriptServer.ScriptName, new AskStartGameBattleScriptServer(BattleRoom, (TripleThunderClientGroup)CreatedGroup, Owner)); DicNewScript.Add(AskChangeRoomExtrasBattleScriptServer.ScriptName, new AskChangeRoomExtrasBattleScriptServer(BattleRoom)); } DicNewScript.Add(AskChangeCharacterScriptServer.ScriptName, new AskChangeCharacterScriptServer(NewRoom)); DicNewScript.Add(AskChangePlayerTypeScriptServer.ScriptName, new AskChangePlayerTypeScriptServer(NewRoom)); DicNewScript.Add(AskChangeTeamScriptServer.ScriptName, new AskChangeTeamScriptServer(NewRoom)); DicNewScript.Add(AskChangeMapScriptServer.ScriptName, new AskChangeMapScriptServer(NewRoom, Owner)); DicNewScript.Add(AskChangeRoomSubtypeScriptServer.ScriptName, new AskChangeRoomSubtypeScriptServer(NewRoom)); DicNewScript.Add(LeaveRoomScriptServer.ScriptName, new LeaveRoomScriptServer(NewRoom, Owner)); ActivePlayer.AddOrReplaceScripts(DicNewScript); } }
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 OnJoinRoomLocal(IOnlineConnection Sender, string RoomID, GameClientGroup ActiveGroup) { RoomInformations JoinedRoom = (RoomInformations)ActiveGroup.Room; List <Player> ListJoiningPlayerInfo = JoinedRoom.GetOnlinePlayer(Sender); foreach (IOnlineConnection ActivePlayer in ActiveGroup.Room.ListOnlinePlayer) { if (ActivePlayer == Sender) { continue; } ActivePlayer.Send(new PlayerJoinedScriptServer(ListJoiningPlayerInfo)); } Dictionary <string, OnlineScript> DicNewScript = OnlineHelper.GetRoomScriptsServer(JoinedRoom, Owner); if (JoinedRoom.RoomType == RoomInformations.RoomTypeMission) { MissionRoomInformations MissionRoom = (MissionRoomInformations)JoinedRoom; DicNewScript.Add(AskStartGameMissionScriptServer.ScriptName, new AskStartGameMissionScriptServer(MissionRoom, (TripleThunderClientGroup)ActiveGroup, Owner)); DicNewScript.Add(AskChangeRoomExtrasMissionScriptServer.ScriptName, new AskChangeRoomExtrasMissionScriptServer(MissionRoom)); } else if (JoinedRoom.RoomType == RoomInformations.RoomTypeBattle) { BattleRoomInformations BattleRoom = (BattleRoomInformations)JoinedRoom; DicNewScript.Add(AskStartGameMissionScriptServer.ScriptName, new AskStartGameBattleScriptServer(BattleRoom, (TripleThunderClientGroup)ActiveGroup, Owner)); DicNewScript.Add(AskChangeRoomExtrasBattleScriptServer.ScriptName, new AskChangeRoomExtrasBattleScriptServer(BattleRoom)); } Sender.AddOrReplaceScripts(DicNewScript); if (ActiveGroup.CurrentGame != null) { FightingZone CurrentGame = (FightingZone)ActiveGroup.CurrentGame; foreach (Player ActivePlayer in ListJoiningPlayerInfo) { CurrentGame.AddLocalCharacter(ActivePlayer); ActivePlayer.OnlineClient = Sender; int LayerIndex; CurrentGame.AddPlayerFromSpawn(ActivePlayer, CurrentGame.NextRobotID + (uint.MaxValue - 100), true, out LayerIndex); //Add Game Specific scripts DicNewScript = OnlineHelper.GetTripleThunderScriptsServer((TripleThunderClientGroup)ActiveGroup, ActivePlayer); Sender.AddOrReplaceScripts(DicNewScript); foreach (IOnlineConnection OtherPlayer in ActiveGroup.Room.ListOnlinePlayer) { if (OtherPlayer == Sender) { continue; } OtherPlayer.Send(new CreatePlayerScriptServer(ActivePlayer, LayerIndex, false)); } } } Sender.Send(new JoinRoomLocalScriptServer(RoomID, JoinedRoom.CurrentDifficulty, ListJoiningPlayerInfo, ActiveGroup)); }
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); }
public AskChangeRoomExtrasBattleScriptServer(BattleRoomInformations Owner) : base(ScriptName) { this.Owner = Owner; }
public ChangeRoomExtrasBattleScriptClient(BattleRoomInformations Owner, IMissionSelect MissionSelectScreen) : base(ScriptName) { this.Owner = Owner; this.MissionSelectScreen = MissionSelectScreen; }