Unity3D 初涉门径之 射击脚本实现
来源:互联网 发布:migration 迁移数据库 编辑:程序博客网 时间:2024/04/28 09:55
Unity3D 之 2D 射击脚本
借用Unity 自带的项目, 做了个简单的射击脚本。成功实现了 武器发送子弹以及子弹碰撞后销毁 过程。o( ̄▽ ̄)d~
编译环境:Win10 + Unity 5.5.1f
首先,在Unity 自带项目工程里,新建一个空对象,命名为FirePoint 作为 射击的发射枪口。
然后新建一个脚本,实现射击与碰撞销毁。
射击脚本的检测面板如下:
(预制武器物体 就自己弄了哈~)
代码如下(C#脚本,亲测可行):
// 变量定义 public GameObject arrow; // 弓箭 -- 预设物体 public GameObject bullet; // 子弹 -- 预设物体 public Transform firePoint;// 发射点(枪口) -- 新建空gameObject,置放于发射枪口,然后拖进脚本即可 private GameObject weapon; // 私有化 武器,用于切换武器装备 public int speed = 100; // 初始化武器速度 private string str = "发射次数:"; private int count = 0; GUISkin guiskin;// 文本显示void OnGUI(){ GUI.skin = guiSkin; GUI.color = Color.white; GUI.Label(new Rect(20,20, 100, 300), str);}void Start(){ weapon = bullet; // 初始化 弓箭为攻击武器}void Update(){ if (Input.GetButtonDown("Fire1") ) { //GameObject clone = Instantiate(bullet, this.transform.position, this.transform.rotation); // 以当前对象 为发射点 // 实例化 clone ,让它 与发射点的方向 保持一致。 GameObject clone = Instantiate(weapon, firePoint.position, firePoint.rotation); //以枪口为发射点, clone.GetComponent<Rigidbody2D>().velocity = transform.TransformDirection(Vector3.right * speed); // 根据发射口 ,判断发射方向,3D 用 Vector3.forward count++; } // 武器切换,并更改武器发射速度 if (Input.GetKey(KeyCode.LeftShift) && Input.GetKey(KeyCode.Q)) { Debug.Log("Replace the weapon."); weapon = (weapon == arrow) ? bullet : arrow; // 切换武器 speed = (weapon == arrow) ? 80 : 100; }}// 武器射击后 碰撞销毁 (3D 用OnCollisionEnter()方法 )// 也可以把下面代码单独写进 一个脚本,然后绑定预制武器的预制武器即可。void OnCollisionEnter2D(){ Destory(weapon);}
嗯,先写到这里吧,里面也有注释了。╰( ̄▽ ̄)╭
0 0
- Unity3D 初涉门径之 射击脚本实现
- Unity3D 初涉门径 之登录界面
- Unity3D 初涉门径之物体移动(W,A,S,D)实现
- 新手练习之~unity3d射击类游戏~
- Unity3D学习之(射击小项目)
- 【Unity3D】开发飞盘射击案列之界面逻辑
- unity3D 第一人称射击游戏
- unity3d射击类demo
- unity3d简单射击游戏
- 测试驱动开发之初窥门径
- 正则表达式之初窥门径
- MyBatis学习之初窥门径
- 设计模式之初窥门径
- Scrapy框架之初窥门径
- unity3d脚本之鸡零狗碎
- unity3d 第一人称射击游戏 Demo
- Unity3d 脚本实现CoverFlow 效果
- Unity3d 脚本实现CoverFlow 效果
- MQL语言命令中子段的含义
- OrderTicket( ) ,OrderM…
- 怎么修改Myeclipse中的JDK版本
- 【DayDayUp】【算法_图_网络流_之二_Dinic层次图与最小费最大流的概述】(待续)
- RSI\Stochastic\trend配合使用EA
- Unity3D 初涉门径之 射击脚本实现
- POJ-----2299---Ultra-QuickSort---归并排序
- (datetime)问题possible loss…
- maven3.1.1 spring4.3.4+mybatis3.2.8+CXF3.1.7 发布webservice 注意几点
- weblogic部署项目问题解决
- 转MQL4论坛:MQL4程序的常见…
- Android Studio常用快捷键集合
- 代理那些事之:PSD(Permeo Se…
- lk_primary_cpu_init_level