public void IncrementDestroyedBuildingCount(LogicBuildingData data) { LogicBuildingClassData buildingClass = data.GetBuildingClass(); if (buildingClass.IsTownHall() || buildingClass.IsTownHall2()) { this.m_townhallDestroyed = true; } if (this.m_level != null) { LogicAvatar homeOwnerAvatar = this.m_level.GetHomeOwnerAvatar(); if (homeOwnerAvatar != null && homeOwnerAvatar.IsClientAvatar()) { if (this.m_level.GetState() == 2) { int matchType = this.m_level.GetMatchType(); if (matchType != 2 && matchType != 5) { this.m_level.GetAchievementManager().BuildingDestroyedInPvP(data); } } } } }
public static void Init() { GameBaseGenerator.HomeOwnerAvatar = new LogicClientAvatar(); GameBaseGenerator.HomeOwnerAvatar.SetName("Supercell - Private CoC Server"); GameBaseGenerator.HomeOwnerAvatar.SetExpLevel(500); GameBaseGenerator.HomeOwnerAvatar.SetScore(5000); GameBaseGenerator.HomeOwnerAvatar.SetLeagueType(LogicDataTables.GetTable(LogicDataType.LEAGUE).GetItemCount() - 1); GameBaseGenerator.m_random = new LogicRandom(Environment.TickCount); GameBaseGenerator.m_defenseBuildingArray = new LogicArrayList <LogicBuildingData>(); GameBaseGenerator.m_otherBuildingArray = new LogicArrayList <LogicBuildingData>(); GameBaseGenerator.m_trapArray = new LogicArrayList <LogicTrapData>(); LogicDataTable buildingTable = LogicDataTables.GetTable(LogicDataType.BUILDING); LogicDataTable trapTable = LogicDataTables.GetTable(LogicDataType.TRAP); for (int i = 0; i < buildingTable.GetItemCount(); i++) { LogicBuildingData buildingData = (LogicBuildingData)buildingTable.GetItemAt(i); if (buildingData.IsEnabledInVillageType(0)) { if (buildingData.GetBuildingClass().GetName() == "Defense") { GameBaseGenerator.m_defenseBuildingArray.Add(buildingData); } else { GameBaseGenerator.m_otherBuildingArray.Add(buildingData); } } } for (int i = 0; i < trapTable.GetItemCount(); i++) { LogicTrapData trapData = (LogicTrapData)trapTable.GetItemAt(i); if (trapData.IsEnabledInVillageType(0)) { GameBaseGenerator.m_trapArray.Add(trapData); } } }