Exemple #1
0
        //Move a unit from the field to the bench,
        //adding it to the appropriate data structure
        //and updating the synergies
        //ENSURE THAT YOU UPDATE THE GRID POSITION THIS CHARACTER IS CURRENTLY ON
        protected virtual void FieldToBench(int u_Index)
        {
            Character unit = field_Units[u_Index];

            field_Units.Remove(unit);
            bench_Units.Add(unit);

            foreach (Character c in field_Units)
            {
                if (unit.name == c.name && unit != c)
                {
                    return;
                }
            }
            foreach (ATTRIBUTES o in unit.attributes)
            {
                if (p_Attributes.ContainsKey(o))
                {
                    p_Attributes[o]--;
                }
                CheckAttributes(o);
                if (p_Attributes[o] == 0)
                {
                    p_Attributes.Remove(o);
                }
            }
            SetText();
        }
Exemple #2
0
 protected void CmdRemoveCharacter(Character character)
 {
     if (character.grid_Position.y < 4)
     {
         grid[(int)character.grid_Position.x, (int)character.grid_Position.y].RemoveCharacter();
         FieldToBench(field_Units.IndexOf(character));
     }
     else
     {
         bench[(int)character.grid_Position.x].RemoveCharacter();
     }
     bench_Units.Remove(character);
     characterLevels[character.ID, character.level - 1]--;
     Destroy(character.gameObject);
     NetworkServer.Destroy(character.gameObject);
 }