CS1.6密码锁制作过程分享

2019-04-18  本文已影响0人  marksman_e902

0.前言

两年前用CS1.6金源引擎做了一张闯关解密型的地图,走的是恐怖和阴森的风格,玩家在屋子里寻找线索和钥匙,最后找到方法打开通往地下室的铁门,不过地下室的章节现在还没有想好。
剧情中有一扇门需要玩家输入密码解锁,这就是本篇主要介绍的内容。


gifeditor_20190417_224952.gif

1.参与工作的实体

1)func_button:按钮实体:
image.png
2)func_door_rotating:由轴心和门板组成的旋转门,需要设置好旋转轴:
image.png
3)multi_manager:多源控制实体,使用它来同时向多个实体发出信号,这里用来实现总电闸启动后开灯和密码锁通电的效果:
image.png
4)trigger_changetarget:密码锁逻辑的核心,用来更改其他实体的目标作用实体,做密码锁要用到20多个:
image.png

2.核心逻辑ー状态控制机

密码锁的工作原理是状态的跳转,在不同的状态下按下不同的按钮会跳转到相应的状态。


image.png

3.实现过程

在金源引擎SDK,使用trigger_changetarget实体来实现状态的跳转。原理是每按一个按钮,就使用trigger_changetarget把密码板上的数字按钮的目标作用实体修改掉。
具体实体设置如下图,实体间的关系看起来比较复杂,一句话描述就是通过trigger_changetarget不断地修改按钮的作用对象,最后输对密码后将开门按钮的作用目标修改为旋转门。
别的不多说,一张图说明一切。


image.png

4.地图剧情分享

开场动画

cstrike 2016-02-03 01-20-19-07.avi_1454433968.gif
密码锁断电效果
gifeditor_20190418_225524.gif
开电闸
gifeditor_20190418_225739.gif
密码锁
gifeditor_20190418_230049.gif
解锁地下室
gifeditor_20190418_233018.gif
大结局
gifeditor_20190418_233257.gif
未完待续,争取早日填坑。
地图文件分享:
链接:https://pan.baidu.com/s/16V-9cIOrefLygL_B1D4ivw
提取码:x5au
上一篇下一篇

猜你喜欢

热点阅读