using UnityEngine; using System.Collections;
public class Road : MonoBehaviour { public float speed = 3.0f; // public을 넣지 않으면 Inspector에서 수정불가능. public float x = 0; public float y = 0; public float roadHeight = 6.0f; public float roadWidth = 6.0f; // Use this for initialization void Start () { // 시작하기 전에 세팅이나 초기화. } // Update is called once per frame void Update () { // 게임이 종료될때 까지 계속해서 구동되는 부분. y = y + Time.deltaTime * speed; renderer.material.mainTextureOffset = new Vector2(x,-y); // 위에서 밑으로 내려오는 건 음수 올라가는건 양수. // x z 축은 안움직이기 때문에 Vector2로 기본값 설정. } } |
using UnityEngine; using System.Collections;
public class Player : MonoBehaviour { public float Speed = 10.0f; // Use this for initialization void Start () { } // Update is called once per frame void Update () { float h = Input.GetAxis("Horizontal"); //input -> 입력 좌우로 움직이는 명령어Time.deltaTime. float v = Input.GetAxis("Vertical"); transform.Translate(Vector3.right * h * Speed *Time.deltaTime); //왼쪽으로 움직이면 음수값이 나오기 때문에 left는 따로 적을필요 없다. transform.Translate(Vector3.up * v * Speed *Time.deltaTime); /* float h = Input.GetAxis("Horizontal")*Time.deltaTime; 한문장으로 사용하는법. float v = Input.GetAxis("Vertical")*Time.deltaTime; */ // 도로밖으로 차 못나가게 하기 if(transform.position.x > 6.0f ) { transform.position = new Vector3(6.0f,transform.position.y,transform.position.z); } if(transform.position.x < -6.0f) { transform.position = new Vector3(-6.0f,transform.position.y,transform.position.z); } if(transform.position.y > 7.0f ) { transform.position = new Vector3(transform.position.x,7.0f,transform.position.z); } if(transform.position.y < -7.0f) { transform.position = new Vector3(transform.position.x,-7.0f,transform.position.z); } } } |
using UnityEngine; using System.Collections;
public class SpawnerCar : MonoBehaviour { public GameObject Prefab1; public float nextTime = 0.0f; public float Rate = 0.5f; public Road road; // Use this for initialization void Start () { road = GameObject.Find("Road").GetComponent<Road>(); //하이라키 값. 스크립트값. } // Update is called once per frame void Update () { if(Time.time > nextTime) { int i = Random.Range(1,4); //실제로는 0~3 의 값 if(i ==1) { EnemyCar1(); } nextTime = Time.time + Rate; } } void EnemyCar1() { float addxpos = Random.Range(road.roadWidth, -road.roadWidth); Vector3 pos = new Vector3(addxpos,0,0) + transform.position; Instantiate(Prefab1,pos,Quaternion.identity); // 발사~ Prefab1을...무회전으로 하겠다. } } |