示例#1
0
 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;
     }
 }
示例#2
0
 public void QueueNewUnit(TroopCore.Type type)
 {
     if (ownedUnit.reference)
     {
         ownedUnit.queued = type;
     }
     else
     {
         if (ownedUnit.generationTime == 0)
         {
             ownedUnit.generationTime = 15;
         }
         ownedUnit.queued = type;
     }
 }
示例#3
0
    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;
        }
    }