예제 #1
0
    void TryAttack()
    {
        bool isLightAttack = RBInput.GetButtonDownForPlayer(InputStrings.FIRE, PlayerIndex);

        if (isLightAttack)
        {
            fighter.AttackWithWeapon(Fighter.AttackType.Weak);
        }
        bool isLightReleased = RBInput.GetButtonUpForPlayer(InputStrings.FIRE, PlayerIndex);

        if (isLightReleased)
        {
            fighter.ReleaseWeapon();
        }
        bool isHeavyAttack = RBInput.GetButtonDownForPlayer(InputStrings.FIRE2, PlayerIndex);

        if (isHeavyAttack)
        {
            fighter.AttackWithWeapon(Fighter.AttackType.Strong);
        }
        bool isHeavyReleased = RBInput.GetButtonUpForPlayer(InputStrings.FIRE2, PlayerIndex);

        if (isHeavyReleased)
        {
            fighter.ReleaseWeapon();
        }
    }
예제 #2
0
파일: FighterAI.cs 프로젝트: nasa03/ness
    /*
     * Decide what the character should do.
     */
    public override void Think()
    {
        FindTarget();
        GameObject fighterTarget = fighter.target;

        // Fall back to patrol if we have no target.
        if (fighterTarget == null)
        {
            return;
        }

        if (fighter.isAttacking)
        {
            return;
        }

        // TODO I've officially mucked this up and don't care cause we're redoing the AI very soon
        // Use the attack, or else walk up to the target if not in range.
        if (IsTargetInRange(AttackManager.Instance.GetAttack(GoogleFu.Attacks.rowIds.ENEMY_WEAK)))
        {
            fighter.AttackWithWeapon(Fighter.AttackType.Weak);
        }
        else
        {
            Vector3 moveDirection = fighterTarget.transform.position - transform.position;
            fighter.Run(moveDirection);
        }
    }