public void CreateNewFarmGame(int mapNumber, int mod) { GameType = EGameType.FurmGame; _mapNumberFarmGame = mapNumber; _modFarmGame = mod; foreach (var item in Players) { item.DeadEvent += item_DeadEvent; } StepMobs = 8; if (_mapNumberFarmGame == 0) { CreateBlock(); CreateMobs(); } else if (_mapNumberFarmGame > 0) { MapGenerator.FarmGameMap(this, _mapNumberFarmGame, _modFarmGame); } else { MapGenerator.SpecialGameMap(this, Math.Abs(_mapNumberFarmGame), _modFarmGame); } CreateDroppedItems(); _farmGameDispatcherTimer = new DispatcherTimer() { Interval = TimeSpan.FromSeconds(1) }; _farmGameDispatcherTimer.Tick += farmGameDispatcherTimer_Tick; _farmGameDispatcherTimer.Start(); }
void farmGameDispatcherTimer_Tick(object sender, object e) { if (GameType == EGameType.FurmGame) { if (GameObjectInCall.Count(p => p.EnumCallType == EnumCallType.UnitBlock) == 0 && GameObjectInCall.Count(p => p.EnumCallType == EnumCallType.Unit) == 0) { StepMobs = 8; if (_mapNumberFarmGame == 0) { CreateBlock(); CreateMobs(); } else if (_mapNumberFarmGame > 0) { MapGenerator.FarmGameMap(this, _mapNumberFarmGame, _modFarmGame); } else { MapGenerator.SpecialGameMap(this, Math.Abs(_mapNumberFarmGame), _modFarmGame); } CreateDroppedItems(); } } else if (GameType == EGameType.Coop) { if (GameObjectInCall.Count(p => p.EnumCallType == EnumCallType.UnitBlock) == 0 && GameObjectInCall.Count(p => p.EnumCallType == EnumCallType.Unit) == 0) { CreateBlock(); CoopTimer += 1; if (CoopTimer == 2) { MapGenerator.CreateMobsCoopEasyMob(this, 5, EMobType.RangeBall); MapGenerator.CreateMobsCoopEasyMob(this, 1, EMobType.BlueBall); MapGenerator.CreateMobsCoopEasyMob(this, 5, EMobType.Ball); } else if (CoopTimer == 3) { MapGenerator.CreateMobsCoopEasyMob(this, 3, EMobType.RangeBall); MapGenerator.CreateMobsCoopEasyMob(this, 3, EMobType.Ball); MapGenerator.CreateMobsCoopEasyMob(this, 2, EMobType.BlueBall); MapGenerator.CreateMobsCoopEasyMob(this, 1, EMobType.RedBall); } else if (CoopTimer == 4) { MapGenerator.CreateMobsCoopEasyMob(this, 1, EMobType.RangeBall); MapGenerator.CreateMobsCoopEasyMob(this, 3, EMobType.BlackHunter); MapGenerator.CreateMobsCoopEasyMob(this, 3, EMobType.BlueBall); MapGenerator.CreateMobsCoopEasyMob(this, 1, EMobType.RedBall); } else if (CoopTimer == 5) { MapGenerator.CreateMobsCoopEasyMob(this, 3, EMobType.BlackHunter); MapGenerator.CreateMobsCoopEasyMob(this, 3, EMobType.BlueBall); MapGenerator.CreateMobsCoopEasyMob(this, 1, EMobType.RedBall); } else if (CoopTimer == 6) { MapGenerator.CreateMobsCoopEasyMob(this, 5, EMobType.BlackHunter); MapGenerator.CreateMobsCoopEasyMob(this, 2, EMobType.BlueBall); MapGenerator.CreateMobsCoopEasyMob(this, 2, EMobType.RedBall); } else if (CoopTimer == 7) { MapGenerator.CreateMobsCoopEasyMob(this, 2, EMobType.BlueBall); MapGenerator.CreateMobsCoopEasyMob(this, 5, EMobType.BlackHunter); MapGenerator.CreateMobsCoopEasyMob(this, 1, EMobType.BlackHunterBoss); } else { MapGenerator.CreateMobsCoopEasyMob(this, 3, EMobType.RangeBall); MapGenerator.CreateMobsCoopEasyMob(this, 3, EMobType.BlackHunter); MapGenerator.CreateMobsCoopEasyMob(this, 3, EMobType.BlueBall); MapGenerator.CreateMobsCoopEasyMob(this, 1, EMobType.RedBall); } CreateCoopDroppedItems(); } } }