模式切换的实现手段及讨论

修改于2021/03/06119 浏览反馈
君可闻“模式切换”乎?
比如说你的机甲可以变形,第一个形态是战车形态,第二个形态是机甲形态,那么从第一个形态切换到第二个形态以及项执行的附属语句是研究内容
举个栗子,这是我自写的平移mod
TapTap
多选是一个模式(多选插入和取消功能)
TapTap
单选也是一个模式(模拟和初始化功能)
TapTap
列表查找也是一个模式,而且并不冲突。
模式的切换可以帮我们简化控制界面或者合理区分功能,明确我们的目的。
且看两种实现办法
法一:使用一个计数器
1.UI创建(按钮)
2.初始化x=0(不会请跳过,游戏内是高级语音,查找不到x返回0)
3.if 按下按钮 then
附属4.x=x+1(1的位置是数字型常量)
所以这个数字是可以自己加的。
5. if x >1.5then
这个判断根据你的要求,比如说一个开关,只有两个状态,那你就设置两个状态就行了。因为本来开关关闭,你按下按钮x+1,值为1,开关打开。再按下应该为关闭,如6所示
附属6. x=0(关闭状态)
7. if x>0.5(此时x=1)then
附属语句,执行打开按钮步骤,如改变颜色,文字等
8. if x<0.5(此时x=1)then
附属语句同上,这个判断只是根据自己的要求设置的,用大于等于小于等于都可以
总结:0就是关闭,1就是打开。优点是可以做很多个模式。比如0是关闭,1是打开模式1,2是打开模式2是打开模式2,3是打开模式3。缺点是比较麻烦
法二:使用布尔值
1.同上
2.创建一个布尔型变量a(初始化不会跳过)一开始是false,即假(开始是关闭模式)
3. if 按下按钮 then
4.布尔值 a= not a(not即非门,详见之前帖子)用非门以后就是非假,则为真。
5. if a is ture then
附属语句,按钮打开的操作。
6. if not a is ture then(等价于if a is false then,在逻辑运算中寻找,就是逻辑计算中的等于 假 和非 为真则)
附属语句,按钮关闭的操作。
优点是目标明确。假是关闭,真是打开,缺点是只能两模式,而且门槛较高。
推荐使用第一种方法,容易理解。
当然有其他的办法,多探索,多发现,提升自己水平和适应能力,你会发现“原来姹紫嫣红开遍”。若有缺陷望加以斧正,疑问则烦请联系3461903286qq。
2
14