Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using System.Collections;
- using System.Collections.Generic;
- using UnityEngine;
- public class WorldMoveController : MonoBehaviour
- {
- [SerializeField] private GameObject[] objectToMove;
- private GameObject currentStage;
- private GameObject nextStage;
- private Vector2 startPosition;
- void Start()
- {
- startPosition = Vector3.zero;
- currentStage = Instantiate(objectToMove[0], startPosition, Quaternion.identity, transform);
- int nextStageIndex = Random.Range(0, objectToMove.Length);
- nextStage =
- Instantiate(objectToMove[nextStageIndex], new Vector2(startPosition.x + 16, startPosition.y),
- Quaternion.identity, transform);
- }
- void Update()
- {
- currentStage.transform.Translate(Vector3.left * GameManager.Instance.GetWorldSpeed() * Time.deltaTime);
- nextStage.transform.Translate(Vector3.left * GameManager.Instance.GetWorldSpeed() * Time.deltaTime);
- if (currentStage.transform.position.x <= startPosition.x - 16)
- {
- var temp = currentStage;
- currentStage = nextStage;
- int nextStageIndex = Random.Range(0, objectToMove.Length);
- nextStage = Instantiate(objectToMove[nextStageIndex], new Vector2(startPosition.x + 16, startPosition.y),
- Quaternion.identity, transform);
- Destroy(temp);
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement