public virtual void onHit(HeavyCollider proj, float damage)
 {
     if (this.tag != Constants.PLAYER_STRING)
     {
         m_Health -= damage;
     }
 }
示例#2
0
 public override void onHit(HeavyCollider proj, float damage)
 {
     if (this.tag != Constants.PLAYER_STRING)
     {
         m_Health -= damage;
         if (!m_HasAlreadyDead)
             m_Animator.playAnimation(AnimatorMusicalMortar.Animations.Hit);
     }
 }
示例#3
0
    public override void onHit(HeavyCollider proj, float damage)
    {
        m_Health -= 1;

        if(m_Health >= 0)
            DestroyGroup (m_Groups [(int)m_Health]);

        if (m_Health <= 0)
            onDeath ();
    }
示例#4
0
 public override void onHit(HeavyCollider proj, float damage)
 {
     if (this.tag != Constants.PLAYER_STRING)
     {
         m_Health -= damage;
         if (!m_HasAlreadyDead)
         {
             m_Animator.playAnimation(AnimatorMusicalMortar.Animations.Hit);
         }
     }
 }
示例#5
0
 //Override the onHits
 public override void onHit(HeavyCollider proj, float damage)
 {
     if (!m_Hit)
     {
         if (proj.gameObject.tag == Constants.PLAYER_PROJECTILE_STRING)            //If the object is a playerProjectile, call setDestination and pass in the gameobject
         {
             m_SFX.playSound(transform, Sounds.LeverHit);
             setDestination(proj.gameObject);
         }
     }
     return;
 }
示例#6
0
    public override void onHit(HeavyCollider proj, float damage)
    {
        m_Health -= 1;

        if (m_Health >= 0)
        {
            DestroyGroup(m_Groups [(int)m_Health]);
        }

        if (m_Health <= 0)
        {
            onDeath();
        }
    }
示例#7
0
    //Overridden OnHit function for the player's heavy projectile attack
    public override void onHit(HeavyCollider proj, float damage)
    {
        if (m_perception != null)
        {
            m_perception.attackedUs(proj.GetPlayerInfo());
        }

        //Call the notifyHit function to let the enemy's know when it gets hit
        NotifyHit();

        //Check if the enemy is invincible
        if (!m_IsInvincible)
        {
            m_KnockBackBehaviour.SetKnockBack(proj.KNOCKBACK, proj.transform.forward);
            base.onHit(proj, damage);
        }
    }
示例#8
0
    //If the player hits the switch, set activated to true
    public void onHit(HeavyCollider proj, float damage)
    {
        //TO make sure we only play sounds once
        if(m_PlayingSound == false)
        {
            m_SFX.playSound(transform, Sounds.LeverHit);
            m_PlayingSound = true;
        }

        if (!m_WillPauseForCamera)
        {
            m_Activated = true;
        }
        else
        {
            m_BeenHit = true;
        }
    }
示例#9
0
    public void onHit(HeavyCollider proj, float damage) //If the player hits the switch, set activated to true
    {
        //TO make sure we only play sounds once
        if (m_PlayingSound == false)
        {
            m_SFX.playSound(transform, Sounds.LeverHit);
            m_PlayingSound = true;
        }

        if (!m_WillPauseForCamera)
        {
            m_Activated = true;
        }
        else
        {
            m_BeenHit = true;
        }
    }
示例#10
0
    public virtual void AttackBegin()
    {
        m_InitialProjectilePosition    = transform.position;
        m_InitialProjectileRotation    = transform.rotation.eulerAngles;
        m_InitialProjectileRotation.y -= m_AttackStartingRot;

        for (int i = 0; i < m_AttackProjectileNumb; i++)
        {
            m_ProjectileRotation = Quaternion.Euler(m_InitialProjectileRotation.x, m_InitialProjectileRotation.y + (i * m_AttackSpread), m_InitialProjectileRotation.z);
            GameObject proj = (GameObject)GameObject.Instantiate(m_HeavyColliderPrefab,
                                                                 new Vector3(m_InitialProjectilePosition.x,
                                                                             m_InitialProjectilePosition.y + m_FirePointOffset,
                                                                             m_InitialProjectilePosition.z), m_ProjectileRotation);

            HeavyCollider collider = proj.GetComponent <HeavyCollider>();
            collider.LaunchProjectile(7, 1);
            collider.SetCharacter(m_ReadInput.ReadInputFrom);
        }
    }
示例#11
0
    //used for Combo_Y attack
    public virtual void HeavyAOEAttack()
    {
        m_InitialProjectilePosition = transform.position;
        m_InitialProjectileRotation = transform.rotation.eulerAngles;

        for (int i = 0; i < m_NumberOfAOEProjectiles; i++)
        {
            m_ProjectileRotation = Quaternion.Euler(m_InitialProjectileRotation.x, m_InitialProjectileRotation.y + (i * m_AOEProjectileAngle), m_InitialProjectileRotation.z);
            GameObject proj = (GameObject)GameObject.Instantiate(m_HeavyColliderPrefab,
                                                                 new Vector3(m_InitialProjectilePosition.x,
                                                                             m_InitialProjectilePosition.y + m_FirePointOffset,
                                                                             m_InitialProjectilePosition.z), m_ProjectileRotation);

            HeavyCollider collider = proj.GetComponent <HeavyCollider>();
            collider.LaunchProjectile(m_AOESpeed, m_AOERange);
            collider.SetCharacter(m_ReadInput.ReadInputFrom);
        }
        AOEEffect();
        RemoveChargingEffects();
    }
示例#12
0
 //Override the onHits
 public override void onHit(HeavyCollider proj, float damage)
 {
     if(!m_Hit)
     {
         if(proj.gameObject.tag == Constants.PLAYER_PROJECTILE_STRING) //If the object is a playerProjectile, call setDestination and pass in the gameobject
         {
             m_SFX.playSound(transform, Sounds.LeverHit);
             setDestination (proj.gameObject);
         }
     }
     return;
 }
 public override void onHit(HeavyCollider proj, float damage)
 {
     //Knockback
     KnockBackPlayer(proj.gameObject.transform.forward);
 }
示例#14
0
 public override void onHit(HeavyCollider proj, float damage)
 {
     //Knockback
     KnockBackPlayer(proj.gameObject.transform.forward);
 }
示例#15
0
 public virtual void onHit(HeavyCollider proj, float damage)
 {
     if (this.tag != Constants.PLAYER_STRING)
         m_Health -= damage;
 }