Unity Official Tutorial --- CREATING A BREAKOUT GAME FOR BEGINNERS
来源:互联网 发布:ruby for windows 编辑:程序博客网 时间:2024/05/20 05:53
ATTENTION PLEASE:
If you wanna learn official tutorials, please single click the hyperlink below. This blog is just used to MAKE PDF for learning.
CREATING A BREAKOUT GAME FOR BEGINNERS
In this live training session we look at creating a Breakout style game including basic game mechanics, user interface and a game manager script.
Paddle
using UnityEngine;using System.Collections;public class Paddle : MonoBehaviour { public float paddleSpeed = 1f; private Vector3 playerPos = new Vector3 (0, -9.5f, 0); void Update () { float xPos = transform.position.x + (Input.GetAxis("Horizontal") * paddleSpeed); playerPos = new Vector3 (Mathf.Clamp (xPos, -8f, 8f), -9.5f, 0f); transform.position = playerPos; }}
Ball
using UnityEngine;using System.Collections;public class Ball : MonoBehaviour { public float ballInitialVelocity = 600f; private Rigidbody rb; private bool ballInPlay; void Awake () { rb = GetComponent<Rigidbody>(); } void Update () { if (Input.GetButtonDown("Fire1") && ballInPlay == false) { transform.parent = null; ballInPlay = true; rb.isKinematic = false; rb.AddForce(new Vector3(ballInitialVelocity, ballInitialVelocity, 0)); } }}
GM
using UnityEngine;using System.Collections;using UnityEngine.UI;public class GM : MonoBehaviour { public int lives = 3; public int bricks = 20; public float resetDelay = 1f; public Text livesText; public GameObject gameOver; public GameObject youWon; public GameObject bricksPrefab; public GameObject paddle; public GameObject deathParticles; public static GM instance = null; private GameObject clonePaddle; // Use this for initialization void Awake () { if (instance == null) instance = this; else if (instance != this) Destroy (gameObject); Setup(); } public void Setup(){ clonePaddle = Instantiate(paddle, transform.position, Quaternion.identity) as GameObject; Instantiate(bricksPrefab, transform.position, Quaternion.identity); } void CheckGameOver(){ if (bricks < 1){ youWon.SetActive(true); Time.timeScale = .25f; Invoke ("Reset", resetDelay); } if (lives < 1){ gameOver.SetActive(true); Time.timeScale = .25f; Invoke ("Reset", resetDelay); } } void Reset(){ Time.timeScale = 1f; Application.LoadLevel(Application.loadedLevel); } public void LoseLife(){ lives--; livesText.text = "Lives: " + lives; Instantiate(deathParticles, clonePaddle.transform.position, Quaternion.identity); Destroy(clonePaddle); Invoke ("SetupPaddle", resetDelay); CheckGameOver(); } void SetupPaddle(){ clonePaddle = Instantiate(paddle, transform.position, Quaternion.identity) as GameObject; } public void DestroyBrick(){ bricks--; CheckGameOver(); }}
Bricks
using UnityEngine;using System.Collections;public class Bricks : MonoBehaviour { public GameObject brickParticle; void OnCollisionEnter (Collision other) { Instantiate(brickParticle, transform.position, Quaternion.identity); GM.instance.DestroyBrick(); Destroy(gameObject); }}
DeadZone
using UnityEngine;using System.Collections;public class DeadZone : MonoBehaviour { void OnTriggerEnter (Collider col){ GM.instance.LoseLife(); }}
TimedDestory
using UnityEngine;using System.Collections;public class TimedDestroy : MonoBehaviour { public float destroyTime = 1f; // Use this for initialization void Start () { Destroy (gameObject, destroyTime); }}
0 0
- Unity Official Tutorial --- CREATING A BREAKOUT GAME FOR BEGINNERS
- WinInet Tutorial for Beginners
- C# Tutorial For Beginners
- Sqlmap tutorial for beginners
- unix Tutorial for beginners
- UNIX Tutorial for Beginners
- unity official Networking tutorial总结
- iPhone Tutorial for Creating a Splash Screen
- How to Make a jQuery Plugin - Tutorial for Beginners
- How To Create A Breakout Game with Box2D and Cocos2D Tutorial: Part 1/2
- How To Create A Breakout Game with Box2D and Cocos2D Tutorial: Part 2/2
- Good tutorial for MFC beginners
- Sprite Kit Tutorial for Beginners
- Creating a Unity Launcher for Java Applications
- Tetris tutorial in C++ platform independent focused in game logic for beginners
- A* pathfinding for beginners
- A* Pathfinding for Beginners
- A* Pathfinding for Beginners
- usaco回文质数
- handler和asyncTask比较
- NSUrSession和AFN
- PC SDK PDFs
- 使用Jmeter测试Webservice简单示例
- Unity Official Tutorial --- CREATING A BREAKOUT GAME FOR BEGINNERS
- ios拼图游戏(三)之使用TableView布局
- leetcode——117——Populating Next Right Pointers in Each Node II
- POJ 3321Apple Tree(dfs序 树状数组)
- secureCRT光标不见啦
- 利用referer请求头防止“盗链”
- PHP基础之进制的转换
- 一个xib文件中最有一个view
- Netty的Protobuf开发列子