public static int ConvertUnitTypeToInt(TroopCore.Type type) { switch (type) { case TroopCore.Type.Ambush: return 0; case TroopCore.Type.Assault: return 1; case TroopCore.Type.Defender: return 2; case TroopCore.Type.BarracksBuilder: return 3; case TroopCore.Type.GranaryBuilder: return 4; case TroopCore.Type.WorkshopBuilder: return 5; case TroopCore.Type.SiegeCatapult: return 6; case TroopCore.Type.SiegeRam: return 7; case TroopCore.Type.None: return -1; default: return -1; } }
public void QueueNewUnit(TroopCore.Type type) { if (ownedUnit.reference) { ownedUnit.queued = type; } else { if (ownedUnit.generationTime == 0) { ownedUnit.generationTime = 15; } ownedUnit.queued = type; } }
public void Centre_DrawBuildingDefaultPath(BuildingCore target) { List <int> path = target.defaultRoute; for (int instruction = 0; instruction < path.Count - 1; instruction++) { int action = path[instruction + 1] - path[instruction]; int dir = 0; switch (action) { //UP case -3: dir = 0; break; //DOWN case 3: dir = 1; break; //LEFT case -1: dir = 2; break; //RIGHT case 1: dir = 3; break; } TroopCore.Type tester = TroopCore.Type.None; if (target.type == BuildingCore.Type.Barracks) { tester = target.barracks.ownedUnit.queued; } else if (target.type == BuildingCore.Type.Workshop) { tester = target.workshop.ownedUnit.queued; } Color to = Color.white; switch (tester) { case TroopCore.Type.Ambush: to = Color.green; break; case TroopCore.Type.Assault: to = Color.red; break; case TroopCore.Type.Defender: to = Color.blue; break; case TroopCore.Type.BarracksBuilder: to = Color.yellow; break; case TroopCore.Type.GranaryBuilder: to = Color.yellow; break; case TroopCore.Type.WorkshopBuilder: to = Color.yellow; break; case TroopCore.Type.SiegeCatapult: to = Color.gray; break; case TroopCore.Type.SiegeRam: to = Color.gray; break; } centre_NavT.GetChild(path[instruction]).GetChild(dir).GetChild(0).GetComponent <Image>().color = to; } }