Unity 2d 有关陷阱的制作

本文详细介绍了如何在Unity3D中实现四种类型的陷阱:地刺(包括普通和隐形)、摆锤、射击类陷阱以及移动类齿轮。通过检测框、碰撞检测和Rigidbody组件,结合脚本编程,实现触发机制、摆动行为和自动瞄准等功能。文章还提供了具体的代码片段和设置建议,适合初学者学习游戏陷阱设计。
摘要由CSDN通过智能技术生成

常用的陷阱

1.地刺

2.摆锤

3.移动类齿轮

4 发射器。

主要实现的方式(目录 后面每一种会具体讲)

1.  制作检测框(当角色进入检测范围内时才启动,仅适用于发射类 和隐形地刺类)

2. 制作陷阱本体 使用抽象类 abstract  由于 检测人物的 碰撞框 碰到 陷阱而扣血(区分与检测框不同)。

3.制作任务碰撞框设定无敌时间。

一 .  先从最简单的 普通地刺

 

 首先检测到player 并且 因为有多个碰撞框防止一次触碰多次扣血 因此限定只碰撞 胶囊体碰撞框

并且将这个脚本设为抽象类 方便其他陷阱直接用。

关于最简单的地刺就直接 继承这个类就可以了

同理摆锤的本体也直接继承这个。

二. 地刺的进阶 隐形地刺(只有当player靠近到一定范围内才出现)

这里指出几种实现方法 

方法1. 设定一个半径当player的距离 靠近到陷阱一定范围内时  陷阱的 set active 变为true  离开一定距离后变成 false

方法2. 建立一个新物体赋予他一个box检测框 当 检测到player进入检测框 陷阱 set active 变为true 离开检测框变成 false

这里主要讲 方法二 不考虑效率问题(单纯因为方法2的框可见方便调节)如图

 做完这个然后将它与陷阱本体 放在同一个文件夹里面 然后将他做成预制体即可

三.  摆锤类  摆锤本体的碰撞扣血 同上 

主要介绍 摆锤的实现  

这里DiStance joint 2d 放到摆出本体里面

其中connect rigid Body 设置为如图选中的那种当作锚点

到这里已经能实现摆锤的摆动了

然后是 如何实现 摆锤的连接线

先添加 lineRender 

然后在脚本里面进行对具体数据的更改。

 

设置颜色,首尾相连(loop) 

设置线段的首位

 然后设置宽度

划重点  材料千万别忘记填写 点那个圈圈即可。

 

另外别忘记该图层不然显示不出颜色。

 四. 射击类陷阱的制作 

制作分两部分

1. 发射器功能: 用于自动瞄准并朝向player (同时也具有一个检测框当player进入时激活) 

2.子弹 : 功能 打到player扣血 发射超过一定距离自动销毁。

实现: 发射器功能

1.首先 以发射器位置为原点建立平面直角坐标系 

2.然后 拿player的位置减去 发射器位置求出单位向量 即发射的方向

3.下面那几行是为了防止旋转式发生发射器方向倒转

4.instantiate 生成已经制作成 预制体的子弹

5.最后运用 简单的update 计时器实现 发射间隔

(那个 muzzle 是我给player建立的一个子对象 用于方便调节具体的发射位置(毕竟用枪射击的时候子弹是从枪口发射的而非是从枪的其他位置发射)。

 

 

 2.子弹

 然后给初学者说下 实现的原理   

首先 子弹的射击我这里运用的是 以固定的 方向射击

即以 那个红色的(transform.right)为方向进行射击 

那么如果想要改变射击的方向 那么就可以直接改变它生成时的 方向即让 这个transform 旋转到想要的角度 因此 再instantiate里的旋转角度 用Quaternion.Euler(transform.eulerangle),其中括号里面的内容发射器旋转的角度

        五. 左右移动类齿轮攻击陷阱

其中齿轮本身还是直接继承之前写的抽象类函数。

移动的话比较简单 建立一个 transform 数组movepos   和一个整型 变量 a

 位移到 一端 就异或 1 解释:(0^1==1,1^1 ==0) 这样就实现了移动到一端 后再移动到另一端。

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小户爱

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值