Question by
Nu2Unity08 · Sep 22, 2017 at 09:38 PM ·
enemyplatformersidescrollerpush
How do I prevent my player from pushing a jumping enemy off screen?
My code and two pictures are below any help will be greatly appreciated. The enemy in the pictures is the fish.
1 using UnityEngine;
2 using System.Collections;
3 public class EnemyJumper : MonoBehaviour {
4
5
6
7 public float forceY = 300f;
8 private Rigidbody2D myRigidbody;
9 private Animator myAnimator;
10
11
12 void Awake() {
13 myRigidbody = GetComponent<Rigidbody2D> ();
14 myAnimator = GetComponent<Animator> ();
15 }
16 // Use this for initialization
17 void Start () {
18 StartCoroutine (Attack ());
19 }
20
21 IEnumerator Attack(){
22 yield return new WaitForSeconds (Random.Range (2, 4));
23 forceY = Random.Range (250, 550);
24 myRigidbody.AddForce (new Vector2 (0, forceY));
25 myAnimator.SetBool ("attack", true);
26 yield return new WaitForSeconds (1.5f);
27 myAnimator.SetBool ("attack", false);
28 StartCoroutine (Attack ());
29 }
30
31
32 void OnTriggerEnter2D(Collider2D target) {
33
34 if (target.tag == "bullet") {
35 Destroy (gameObject);
36 Destroy (target.gameObject);
37 }
38 }
39
40 }
41
42
[1]: /storage/temp/102400-enemy-pushed-2.jpg
enemy-pushed-2.jpg
(451.7 kB)
enemy-pushed-1.jpg
(414.4 kB)
Comment
Your answer
Follow this Question
Related Questions
2D Enemy Ai 0 Answers
Make circular moving object stay within a specific area 1 Answer
Push an object behind itself with No RigidBody 0 Answers
Help with a health bar 0 Answers