Unity学习之路(一)太空大战类游戏制作5
来源:互联网 发布:codeblocks有mac版吗 编辑:程序博客网 时间:2024/04/27 23:20
1. 添加敌舰
添加敌人,敌人的炮弹,在炮弹上添加rigidbody和boxcollider等,取消重力,固定xyz等和前面一样。
添加penemy脚本到敌人炮弹上
#pragma strictvar explosionplayer_1:GameObject;var speed:float=5.0f;function Update () {transform.Translate(0,-speed*Time.deltaTime,0);if(transform.position.y<-1.4){Destroy(gameObject);}}function OnTriggerEnter(pzObject:Collider){if(pzObject.tag=="projectile"){Destroy(gameObject);}if(pzObject.tag=="Player"){Instantiate(explosionplayer_b1,transform.position,transform.rotation);RockController.lives--;if(RockController.lives<1){if(RockController.score>PlayerPrefs.GetInt("highscore")){PlayerPrefs.SetInt("highscore",RockController.score);Application.LoadLevel("score");}else{Application.LoadLevel("lose");}}}}添加敌舰enemyController代码
#pragma strictvar Espeed:float=3.0;var f:float=1.0;var projectile1_b1:GameObject;var myTime:float=0;function Start () {}function Update () {transform.Translate(f*Espeed*Time.deltaTime,0,0);if(transform.position.x>3)f=-1.0;if(transform.position.x<-3)f=1.0;myTime+=Time.deltaTime;if(myTime>0.5){Instantiate(projectile1_b1,transform.position,transform.rotation);myTime=0;}}
2. 难易选择和医疗船代码补充
添加leftController代码(医疗船)
#pragma strictvar speed:float=2.0;function Update () {if(transform.position.y<-1.3)transform.position=new Vector3(Random.Range(-2.6,2.6),3.5,0);transform.Translate(0,-speed*Time.deltaTime,0);}function OnTriggerEnter(pz:Collider){if(pz.tag=="projectile"){rockController.lives++;gameObject.SetActive(false);}}
修改倒计时代码
function Update () {myTime+=Time.deltaTime;if(myTime>1){leftTime--;myTime=0;}if(leftTime<1.0){leftTime=0;if(RockController.score>PlayerPrefs.GetInt("highscore")){PlayerPrefs.SetInt("highscore",RockController.score);Application.LoadLevel("score");}elseApplication.LoadLevel("win");}if(Input.GetKeyDown(KeyCode.Q)){PlayerPrefs.SetInt("highscore",100);}if(leftTime<60.0){if(startController.ny==1){enemy_b1.SetActive(false);}else{enemy_b1.SetActive(true);leftsTime+=Time.deltaTime;if(leftsTime>5.0){lefts_b1.SetActive(true);leftsTime=0.0;}}}}
修改开始场景代码:
#pragma strictprivate var intext:String="Instruction:\n\n Press left and right arrow to move . \n Press Space to fire.";public var startTexture:Texture ;static var ny:int=1;var eTexture:Texture;var mTexture:Texture;var nTexture:Texture;var ffTexture:Texture;function OnGUI(){GUI.DrawTexture(new Rect(0,0,Screen.width,Screen.height),startTexture);GUI.DrawTexture(new Rect(30,108,128,64),eTexture);GUI.DrawTexture(new Rect(30,160,128,64),mTexture);GUI.DrawTexture(new Rect(30,220,128,64),nTexture);GUI.Label(new Rect(10,10,250,200),intext);if(GUI.Button(Rect(160,120,60,20),"easy")){ny=1;}if(GUI.Button(Rect(160,180,60,20),"normal")){ny=2;}if(GUI.Button(Rect(160,245,60,20),"hard")){ny=3;}GUI.Label(new Rect(520,505,250,200),"Press Space to start!!");if(ny==1){GUI.DrawTexture(new Rect(218,100,128,64),ffTexture);}if(ny==2){GUI.DrawTexture(new Rect(218,165,128,64),ffTexture);}if(ny==3){GUI.DrawTexture(new Rect(218,223,128,64),ffTexture);}if(Input.GetKeyDown(KeyCode.Space)){Application.LoadLevel("level");}}
0 0
- Unity学习之路(一)太空大战类游戏制作5
- Unity学习之路(一)太空大战类游戏制作1
- Unity学习之路(一)太空大战类游戏制作2
- Unity学习之路(一)太空大战类游戏制作3
- Unity学习之路(一)太空大战类游戏制作4
- Unity入门游戏太空大战
- unity学习之飞机大战制作 关键点(一)
- Unity3D之太空大战一
- Unity3D之太空大战一
- WeaveSocket框架-Unity太空大战游戏-概述0
- WeaveSocket框架-Unity太空大战游戏-服务端-1
- WeaveSocket框架-Unity太空大战游戏-通信协议-2
- WeaveSocket框架-Unity太空大战游戏-客户端-3
- WeaveSocket框架-Unity太空大战游戏-概述0
- WeaveSocket框架-Unity太空大战游戏-服务端-1
- WeaveSocket框架-Unity太空大战游戏-通信协议-2
- WeaveSocket框架-Unity太空大战游戏-客户端-3
- 太空大战之太空滚动
- [c++]类的构造函数
- HierarchyViewer结合merge标签优化布局结构
- BZOJ 3750
- CSS3 弹性布局弹性流(flex-flow)属性详解和实例
- swift基本语法(总结提炼版)之006 Swift之 while循环
- Unity学习之路(一)太空大战类游戏制作5
- hive install
- matlab 信号平滑处理方法
- Leetcode旅途二
- 基于Dubbo框架构建分布式服务
- c# http 学习笔记
- POJ--3481 Double Queue
- HDU 1394 Minimum Inversion Number(线段树:单点更新,区间求和)
- 回调理解