public static void StartGame(CTFGameStone stone) { Running = true; Open = true; Stone = stone; Price = stone.Price; RewardItemChance = stone.RewardItemChance; GiveRobe = stone.GiveRobe; MsgStaff = stone.MessageStaff; GiveRewards = stone.GiveRewards; Teams = stone.Teams; DrawLength = stone.DrawLength; GameLength = stone.GameLength; GameArea = stone.GameArea; Spawn = stone.Spawn; FlagArray = stone.FlagArray; GameData = new CTFGameData(); if (Region != null) Region.Unregister(); Region = new CTFGameRegion(); Region.Register(); EventSystem.Start(stone.MinutesOpen,"Capture The Flag Game", new EDC.StartMethod(StartGame), new EDC.StopMethod(EndGame), new EDC.JoinMethod(JoinMethod)); }
public override void Deserialize( GenericReader reader ) { base.Deserialize( reader ); int version = reader.ReadInt(); switch ( version ) { case 1: { m_PlayerSpawn = reader.ReadPoint3D(); goto case 0; } case 0: { m_Stone = (CTFGameStone)reader.ReadItem(); ; m_Team = CTFGame.TeamArray[reader.ReadInt()]; m_FlagHome = reader.ReadPoint3D(); m_FlagHomeMap = reader.ReadMap(); if (version == 0) m_PlayerSpawn = m_FlagHome; break; } } Timer.DelayCall( TimeSpan.Zero, new TimerCallback( ReturnToHome ) ); }