示例#1
0
    //bool firstKnockDown;



    void Awake()
    {
        myETD  = gameObject.GetComponent <EnemyTakeDamage>();
        fp     = gameObject.GetComponent <FollowPlayer>();
        myAnim = gameObject.GetComponent <tk2dSpriteAnimator>();
        myAnim.AnimationEventTriggered = AnimationEventCallback;
    }
示例#2
0
    int finalLayer;                             //layer mask for raycast;

    // Use this for initialization
    void Start()
    {
        playerColli = GameObject.FindGameObjectWithTag("Player").GetComponent <CircleCollider2D>();

        finalLayer = (1 << 8) | (1 << 11);                    // layer mask for enemy and wall only

        lineRenderer                  = gameObject.GetComponent <LineRenderer>();
        lineRenderer.enabled          = true;
        lineRenderer.useWorldSpace    = true;
        lineRenderer.sortingLayerName = "Bullet";
        lineRenderer.material.color   = Color.green;
        Ray2D ray = new Ray2D(transform.position, transform.up);

        lineRenderer.SetPosition(0, transform.position);

        playerColli.enabled = false;
        hit = Physics2D.Raycast(transform.position, Input.mousePosition - Camera.main.WorldToScreenPoint(GameObject.FindGameObjectWithTag("Player").transform.position), distance, finalLayer);
        playerColli.enabled = true;

        if (hit.collider)
        {
            lineRenderer.SetPosition(1, hit.point);
            if (hit.collider.tag == "Enemy")
            {
                EnemyTakeDamage EnemyDamageScript = hit.collider.gameObject.GetComponent <EnemyTakeDamage>();
                EnemyDamageScript.takeDamage(damage);
            }
        }
        else
        {
            lineRenderer.SetPosition(1, ray.GetPoint(distance));
        }
    }
示例#3
0
 void OnTriggerEnter2D(Collider2D hit)
 {
     if (hit.gameObject.tag == "Enemy")
     {
         EnemyTakeDamage EnemyDamageScript = hit.gameObject.GetComponent <EnemyTakeDamage>();
         EnemyDamageScript.takeDamage(damage);
     }
 }
示例#4
0
    private GameObject hpBar;                //Actual whole reload Bar

    void Start()
    {
        EnemyDirection = Vector3.right;

        dmgScript = GetComponent <EnemyTakeDamage>();

        hpBar.SetActive(true);
    }
示例#5
0
 public DemoManController(DemomanView _View, EnemyPool _Pool)
 {
     Health           = 200;
     speed            = 5;
     DamageCounter    = new EnemyTakeDamage(this);
     Pool             = _Pool;
     _View.WasHitted += DamageCounter.TakeDamage;
     View             = _View;
 }
示例#6
0
    void Shoot()
    {
        RaycastHit hitInfo;

        if (Physics.Raycast(FPSCam.transform.position, FPSCam.transform.forward, out hitInfo, range))
        {
            Debug.Log(hitInfo.transform.name);
            EnemyTakeDamage target = hitInfo.transform.GetComponent <EnemyTakeDamage>();
            if (target != null)
            {
                target.TakeDamage(damage);
                onCooldown = true;
            }
        }
    }
示例#7
0
    void OnCollisionEnter2D(Collision2D hit)
    {
        if (hit.gameObject.tag == "Enemy")
        {
            EnemyTakeDamage EnemyDamageScript = hit.gameObject.GetComponent <EnemyTakeDamage>();
            EnemyDamageScript.takeDamage(damage);

            Destroy(this.gameObject);
        }
        else
        {
            Vector3 rot = transform.rotation.eulerAngles;
            rot = new Vector3(rot.x, rot.y, rot.z + 180);
            Instantiate(bulletPrefab, transform.position - (transform.position - initial.position).normalized, Quaternion.Euler(rot));
            Destroy(this.gameObject);
        }
    }
示例#8
0
    void Shoot()
    {
        ammo -= 1;
        gunSound.Play();
        RaycastHit hitInfo;

        if (Physics.Raycast(FPSCam.transform.position, FPSCam.transform.forward, out hitInfo, range))
        {
            Debug.Log(hitInfo.transform.name);
            EnemyTakeDamage target = hitInfo.transform.GetComponent <EnemyTakeDamage>();
            if (target != null)
            {
                target.TakeDamage(damage);
            }
            if (hitInfo.transform.name == "WeakPoint")
            {
                hitInfo.transform.GetComponent <DragonWeakPoint>().TakeDamage(damage);
            }
            if (hitInfo.transform.tag == "Bird")
            {
                hitInfo.transform.GetComponent <Bird>().TakeDamage(damage);
            }
        }
    }
示例#9
0
 void OnEnable()
 {
     myETD     = gameObject.GetComponent <EnemyTakeDamage>();
     ex        = FriendManager.Instance.GetFriend("Ex") as BossFriendEx;
     ex.stuart = this;
 }