void Start() { stun = new Stunable(); rigidbody2d = transform.parent.GetComponentInParent <Rigidbody2D>(); knockable = new Knockable(rigidbody2d); canMove = false; enemy = transform.parent.parent; target = GameObject.FindWithTag("Player").transform; //target the player range = GetComponent <CircleCollider2D>(); range.isTrigger = true; }
// Use this for initialization void Start() { player = GetComponent <Player>(); moveSpeedX = 1.75f; moveSpeedY = 1.3f; stun = new Stunable(); rbody = GetComponent <Rigidbody2D>(); knockable = new Knockable(rbody); anim = GetComponent <Animator>(); anim.SetFloat("input_x", 1); knockable.Multiplier = moveSpeedX; IsRunning = false; StartCoroutine(RunningLoseMana()); //spriteRenderer = GetComponent<SpriteRenderer>(); }
// On collision, knock Knockable objects over void OnControllerColliderHit(ControllerColliderHit hit) { Rigidbody body = hit.collider.attachedRigidbody; if (body == null || body.isKinematic) { return; } // Knock over a knock-over-able objects Knockable knockable = hit.gameObject.GetComponent("Knockable") as Knockable; if (knockable != null) { Vector3 pushDir = new Vector3(hit.moveDirection.x, 0, hit.moveDirection.z); Vector3 pushForce = pushDir * thrust; knockable.trigger(pushForce); } }