Beispiel #1
0
    // Use this for initialization
    void Start()
    {
        ac = GetComponent <ArcherControl> ();

        hb = Instantiate(healthBar, transform.position, transform.rotation) as GameObject;
        //initialGreenLength = hb.transform.localScale.x;
    }
 // Use this for initialization
 void Start()
 {
     if (Owner == OwnerType.Player)
     {
         ArcherControl archer = GameObject.FindGameObjectWithTag("Player").GetComponentInChildren <ArcherControl>();
         InitVelocity    = archer.Velocity;
         archer.Velocity = archer.velDiap.x;
     }
     if (Owner == OwnerType.Enemy)
     {
         EnemyBehaivor enemy = GameObject.FindGameObjectWithTag("Enemy").GetComponentInChildren <EnemyBehaivor>();
         InitVelocity = enemy.ArrowVel;
     }
     startAngle = Mathf.Deg2Rad * transform.eulerAngles.z;
     if (transform.eulerAngles.z > 90)
     {
         changAngle = 90 - (transform.eulerAngles.z - 270);
     }
     else
     {
         changAngle = transform.eulerAngles.z;
     }
     positionsMassive      = new Vector2[2];
     isCollision           = false;
     OurCollider           = gameObject.GetComponentInChildren <Collider2D>();
     OurCollider.isTrigger = true;
 }
Beispiel #3
0
    private ArcherControl archer;                          // Скрипт на владение луком

    private void Start()
    {
        anim          = GetComponent <Animator>();
        rb2d          = GetComponent <Rigidbody2D>();
        sprite        = GetComponentInChildren <SpriteRenderer>();
        shootCooldown = 0f;
        dieCooldown   = 0f;
        SetCountText();
        HealthEnergyBar.use.AdjustCurrentEnergy(-150);
        LivesText.text = "Lives: " + Lives.ToString();
        attack         = gameObject.GetComponent <PlayerAttack>();
        archer         = gameObject.GetComponent <ArcherControl>();
        ChangeWeapon(АктивноeOружие);
    }
Beispiel #4
0
    //피격당할 경우 데미지 처리와 애니메이션 처리
    public void Hit(Vector3 hitPos)
    {
        GameObject    archer        = GameObject.Find("Archer");
        ArcherControl archercontrol = archer.GetComponent <ArcherControl>();

        int damage;

        archercontrol.isCritical();
        if (archercontrol.IsCritical)
        {
            damage = archercontrol.GetRandomDamage() * 2;
        }
        else
        {
            damage = archercontrol.GetRandomDamage();
        }
        mHp -= damage;
        mHpControl.Hit(damage);

        MakeEffect("Eff_Hit", hitPos + new Vector3(0.4f, 0.2f, 0), transform);
        MakeEffect("Sound_Hit", Vector3.zero, transform);

        HudText(damage, transform.position + new Vector3(0, .7f, 0), archercontrol.IsCritical);

        mAnimator.SetTrigger("Damage");

        //사망처리
        if (mHp <= 0)
        {
            mStatus           = Status.Dead;
            mHp               = 0;
            mCollider.enabled = false;
            mAnimator.SetTrigger("Die");
            mGameManager.SetEXP();
            mGameManager.ReAutoTarget();
            MakeEffect("Eff_Blood", transform.position + new Vector3(0, -1.5f, 0), GameObject.Find("FG_Depth0").transform);
            Destroy(gameObject, 1f);
        }
    }
Beispiel #5
0
 private void Awake()
 {
     player = FindObjectOfType <ArcherControl>();
 }