コード例 #1
0
ファイル: PlayerObject.cs プロジェクト: kroecks/hot_zombies
 public void OnStart( int playerId )
 {
     mObjectId = playerId;
     moveController = GetComponent<PlayerMoveController>();
     fireController = GetComponent<PlayerFireController>();
     chargeController = GetComponent<PlayerChargeTracker>();
 }
コード例 #2
0
    public void UpdateAttack()
    {
        float      distanceTo = 0f;
        GameObject attackObj  = GameController.GetClosestAttackableObject(transform.position, ref distanceTo);

        if (!attackObj)
        {
            SetAttackingState(false);

            return;
        }
        else if (distanceTo <= m_MonsterAttackDistance)
        {
            SetAttackingState(true);

            PlayerTeamObjectiveObject objective    = attackObj.GetComponent <PlayerTeamObjectiveObject>();
            PlayerChargeTracker       playerCharge = attackObj.GetComponent <PlayerChargeTracker>();
            if (objective)
            {
                objective.TakeDamage(Vector3.Normalize(objective.transform.position - transform.position), m_MonsterAttackDamagePerSec * Time.deltaTime);
            }
            else if (playerCharge)
            {
                playerCharge.TakeDamage(Vector3.Normalize(playerCharge.transform.position - transform.position), m_MonsterAttackDamagePerSec * Time.deltaTime);
            }
        }
    }
コード例 #3
0
ファイル: EnergyNode.cs プロジェクト: dlahm17/Core-Rescue
    public void OnTriggerStay(Collider other)
    {
        if (!m_IsCharged)
        {
            return;
        }

        PlayerChargeTracker charger = other.GetComponent <PlayerChargeTracker>();

        if (charger && !charger.IsMaxed())
        {
            charger.RefillCharge();
            AbsorbCharge();
        }
    }