- Home /
Question by
unity_pxiHYpjQizSKVQ · Jun 09, 2020 at 08:56 PM ·
spawnspeedenemy spawnspeed up
Unity2D: How to make spawn object gradually go faster after the player has 10 Score?,Unity2D: How to make spawn object gradually go faster after the player collects 20 Coins?
-PLAYER SCRIPT-
public class Player1 : MonoBehaviour {
public float speed;
public float maxY;
public float minY;
public float Yincrement;
private Vector2 targetPos;
public int health = 3;
public GameObject effect;
private Shake shake;
public Text healthDisplay;
public GameObject gameOver;
void Start()
{
shake = GameObject.FindGameObjectWithTag("ScreenShake").GetComponent<Shake>();
}
// Update is called once per frame
void Update()
{
healthDisplay.text = health.ToString();
if (health <= 0)
{
gameOver.SetActive(true);
Destroy(gameObject);
}
transform.position = Vector2.MoveTowards(transform.position, targetPos, speed * Time.deltaTime);
if (Input.GetKeyDown(KeyCode.UpArrow)&& transform.position.y < maxY)
{
shake.CamShake();
Instantiate(effect, transform.position, Quaternion.identity);
targetPos = new Vector2(transform.position.x, transform.position.y + Yincrement);
transform.position = targetPos;
}
else if (Input.GetKeyDown(KeyCode.DownArrow) && transform.position.y > minY)
{
shake.CamShake();
Instantiate(effect, transform.position, Quaternion.identity);
targetPos = new Vector2(transform.position.x, transform.position.y - Yincrement);
transform.position = targetPos;
}
}
}
-SCORE MANAGER SCRIPT-
public class ScoreManager : MonoBehaviour { public int score; public Text scoreDisplay;
private void Update()
{
scoreDisplay.text = score.ToString();
}
private void OnTriggerEnter2D(Collider2D other)
{
if (other.CompareTag("Enemy"))
{
score++;
Debug.Log(score);
}
}
}
-ENEMY SCRIPT-
public class Obstacle : MonoBehaviour { public int damage = 1; public float speed; public GameObject effect; private void Update() { transform.Translate(Vector2.left speed Time.deltaTime); }
private void OnTriggerEnter2D(Collider2D other)
{
if (other.CompareTag("Player"))
{
Instantiate(effect, transform.position, Quaternion.identity);
other.GetComponent<Player1>().health -= damage;
Debug.Log(other.GetComponent<Player1>().health);
Destroy(gameObject);
}
}
},-Player Script-
public class Player1 : MonoBehaviour {
public float speed;
public float maxY;
public float minY;
public float Yincrement;
private Vector2 targetPos;
public int health = 3;
public GameObject effect;
private Shake shake;
public Text healthDisplay;
public GameObject gameOver;
void Start()
{
shake = GameObject.FindGameObjectWithTag("ScreenShake").GetComponent<Shake>();
}
// Update is called once per frame
void Update()
{
healthDisplay.text = health.ToString();
if (health <= 0)
{
gameOver.SetActive(true);
Destroy(gameObject);
}
transform.position = Vector2.MoveTowards(transform.position, targetPos, speed * Time.deltaTime);
if (Input.GetKeyDown(KeyCode.UpArrow)&& transform.position.y < maxY)
{
shake.CamShake();
Instantiate(effect, transform.position, Quaternion.identity);
targetPos = new Vector2(transform.position.x, transform.position.y + Yincrement);
transform.position = targetPos;
}
else if (Input.GetKeyDown(KeyCode.DownArrow) && transform.position.y > minY)
{
shake.CamShake();
Instantiate(effect, transform.position, Quaternion.identity);
targetPos = new Vector2(transform.position.x, transform.position.y - Yincrement);
transform.position = targetPos;
}
}
}
-Score manager Script-
public class ScoreManager : MonoBehaviour { public int score; public Text scoreDisplay;
private void Update()
{
scoreDisplay.text = score.ToString();
}
private void OnTriggerEnter2D(Collider2D other)
{
if (other.CompareTag("Enemy"))
{
score++;
Debug.Log(score);
}
}
}
Enemy Script
public class Obstacle : MonoBehaviour { public int damage = 1; public float speed; public GameObject effect; private void Update() { transform.Translate(Vector2.left speed Time.deltaTime); }
private void OnTriggerEnter2D(Collider2D other)
{
if (other.CompareTag("Player"))
{
Instantiate(effect, transform.position, Quaternion.identity);
other.GetComponent<Player1>().health -= damage;
Debug.Log(other.GetComponent<Player1>().health);
Destroy(gameObject);
}
}
}
Comment