炮塔控制
2015-12-29 00:05:39 0 举报
炮塔控制是一种复杂的军事操作,涉及到精确的瞄准、射击和防御。操作员需要对炮塔的各种功能有深入的理解,包括瞄准系统、射击控制系统、防御系统等。他们需要在战场上快速做出决策,对敌人进行精确打击,同时保护自己的阵地不受攻击。此外,他们还需要不断学习和熟悉新的技术和战术,以应对不断变化的战场环境。炮塔控制是一项需要高度专业技能和严密协调的工作,是现代战争中不可或缺的一部分。
作者其他创作
大纲/内容
F
利用插值函数Slerp,计算此帧中应该转动的角度
MachineGunFireAShot() 开始
鼠标左键是否按下?
设置装弹后的BulletInClip和BulletTotalCount的状态
T
播放装弹音乐,并在播放期间等待
子弹数(BulletInClip) - 1
从屏幕使用射线,记录场景中鼠标指向的对象坐标
Time.time 下次允许时间
OnReload() 开始
使用SendMessage的方式调用被射线撞击到的GameObject的OnShootHit函数
调用
返回
R键是否按下?
RotateToTarget() 开始
限制视角仰角和俯角为maxXAngle
计算炮塔从当前角度转到鼠标指向的角度的差值‘rotation’
下次允许时间 = Time.time + 射击间隔
游戏状态是否为运行?
StartCoroutine(OnReload());开启另一个线程,执行装弹夹函数
播放子弹发射声音
调用对应barrel发射函数
将炮塔的rotation设置为计算后的值
从GameState获取射击间隔
RotateToTarget(),炮塔旋转到指向的目标
BulletInClip = 0;BulletTotalCount += BulletInClip;
调用线程显示枪口火焰muzzleFlash
向射击方向发送射线
从瞄准控制模块获取散布波动范围,加在shootDir上
OnReload() 结束
以枪管前方为发射方向shootDir
MachineGunFireAShot(),执行射击函数
isCanShoot()?
每一帧开始
将GameState中的isReloading状态置为true
RotateToTarget() 结束
MachineGunFireAShot() 结束
结束
0 条评论
下一页