Esempio n. 1
0
    private void Start()
    {
        //// health bar
        //if (healthBar) healthBar.gameObject.SetActive(true);
        //else
        //{
        //    healthBar = transform.Find("PieceCanvas").Find("HealthBar").GetComponent<Image>();
        //    if(healthBar) healthBar.gameObject.SetActive(true);
        //}

        animState = GetComponent <AnimState>();

        int pieceIdx = GenericDataMgr.genericData_SO.GetPieceIdxByCode(code);

        piece = GenericDataMgr.genericData_SO.ChessPieces[pieceIdx];
        int upgrade = PlayerDataMgr.playerData_SO.ChessPieces[pieceIdx].upgrade;


        // Health
        int basic_health = piece.health;
        int up_health    = piece.upgrades[upgrade].health;

        maxHealth = basic_health + up_health;

        currHealth = maxHealth;
        status     = STATUS.GOOD;

        if (doesHealthStateChangeSprite)
        {
            SetColor(false);
        }
    }
Esempio n. 2
0
    // GenericData에서 damage와 range를 받아옵니다.
    protected void SetProperties()
    {
        int pieceIdx = GenericDataMgr.genericData_SO.GetPieceIdxByCode(code);

        if (pieceIdx < 0)
        {
            Debug.Log(gameObject.name + " Attacker SetProperties Method Failed");
            return;
        }
        piece_gen = GenericDataMgr.genericData_SO.ChessPieces[pieceIdx];
        ChessPiece_Player piece_Player = PlayerDataMgr.playerData_SO.ChessPieces[pieceIdx];

        int upgrade;

        if (piece_Player != null)
        {
            upgrade = piece_Player.upgrade;
        }
        else
        {
            upgrade = 0;
        }

        // Damage
        int basic_damage = piece_gen.damage;
        int up_damage    = piece_gen.upgrades[upgrade].damage;

        damage = basic_damage + up_damage;

        // Skill Effectiveness
        float basic_effectiveness = piece_gen.skillEffectiveness;
        float up_effectiveness    = piece_gen.upgrades[upgrade].skillEffectiveness;

        skillEffectiveness = basic_effectiveness + up_effectiveness;

        // Range
        range = piece_gen.range;

        // AttackCoolTime
        attackCoolTime = piece_gen.attackCoolTime;
    }