Ejemplo n.º 1
0
    // save and load functions

    public virtual ChessPieceData saveData(string name)
    {
        ChessPieceData data = new ChessPieceData();

        data.typeName     = _name;
        data.listName     = name;
        data.lastPosition = new ChessPieceData.lastPositionVector(gameObject.transform.position);
        data.lastRotation = new ChessPieceData.lastQuaternion(gameObject.transform.rotation);
        data.currentHP    = _currentHP;
        data.homeHexRow   = _homeHex.GetComponent <HexScript> ()._row;
        data.homeHexCol   = _homeHex.GetComponent <HexScript> ()._column;
        data.held         = _held;
        data.effectType   = _effectType;
        data.debuffData   = _debuffs;

        return(data);
    }
Ejemplo n.º 2
0
    public virtual void initializeFromData(ChessPieceData data, Player player)
    {
        _pieceId    = data.listName;
        _owner      = player;
        _currentHP  = data.currentHP;
        _held       = data.held;
        _debuffs    = data.debuffData;
        _effectType = data.effectType;
        _teamcolor  = player.getColor();
        _homeHex    = GameState.Instance.Board[data.homeHexRow, data.homeHexCol];
        _homeHex.GetComponent <HexScript> ().setOccupant(gameObject);

        if (containsModifier(Modifier.ModifierType.PETRIFIED))
        {
            MaterialChanger[] mats = transform.GetComponentsInChildren <MaterialChanger>();
            foreach (MaterialChanger changer in mats)
            {
                changer.replaceMaterials(GameState.Instance._petrificationMat);
            }
        }
    }
Ejemplo n.º 3
0
 public void Initialize(ChessPieceData _chessPieceData, ChessPieceManager _chessPieceManager)
 {
     ChessPieceData       = _chessPieceData;
     ChessPieceManagerRef = _chessPieceManager;
     SetSprite();
 }