public void InitSoldiers()
    {
        soldier       = new Soldier[16];
        soldierPlace  = new Soldier[32];
        count         = 16;
        SoldierAmount = 16;
        for (int i = 0; i < 16; i++)
        {
            SOLDIER _type = (SOLDIER)Random.Range(1, 5);
            if (scrTroopsScene.pickedTypes[i] != SOLDIER.NONE)
            {
                _type = scrTroopsScene.pickedTypes[i];
            }
            soldier[i] = new Soldier(i, RandomName(), null, 600f, _type);
            soldier[i].InitHealingHandler();
            soldierPlace[i] = soldier[i];
            if (soldier[i].type == SOLDIER.SHIELDMAN)
            {
                tank[tanksAmount++] = soldier[i];
            }
        }

        for (int i = 0; i < 32; i++)
        {
            int   j         = i / 8;
            float basex     = -4.75f;
            float x_spacing = 1.35f;
            float basey     = 2.05f;
            float y_spacing = 1.35f;
            basePosition[i] = new Vector3(basex + ((i * x_spacing) - j * (8 * x_spacing)), basey - j * y_spacing);
        }
    }
 public Soldier(int _myid, string _name, GameObject _frame, float _maxHealth, SOLDIER _type)
 {
     myID      = _myid;
     core      = GameCore.Core;
     frame     = _frame;
     myName    = _name;
     maxHealth = _maxHealth;
     type      = _type;
     health    = maxHealth;
     ApplySoldierType();
     effectSystem = new SoldierEffectSystem(this);
 }