Project1
标题:
怎么样设定开关开启时,按“字母键M”时改变变量?
[打印本页]
作者:
雷影
时间:
2015-4-30 14:58
标题:
怎么样设定开关开启时,按“字母键M”时改变变量?
找到一个地图系统,系统地图有3种模式,用变量0~3来控制了!
想扩张一下,设定成:
(0=无地图,1=右上小地图,2=画面中央大地图)
获得地图后,地图开关开启
开关开启后,按M键顺序切换3种地图模式
模式的话大约是这样:
按一下M键
地图变量+1
当地图变量=>3时
地图变量=0(无地图显示)
=========================================
另一个想法:
开关为ON时
按着Tab键,地图变量=2(画面中央显示大地图)
放开Tab键,地图变量=0(关闭地图模式)
作者:
三途亚梦
时间:
2015-4-30 17:10
你有全键盘的脚本么?
作者:
雷影
时间:
2015-4-30 17:23
本帖最后由 雷影 于 2015-4-30 17:24 编辑
简单来说就是
按一下M键,某变量+1,当变量大于等于3时,变量清零。
再细致一下就是,当某开关ON时,上面的代码才能执行。
作者:
tseyik
时间:
2015-4-30 18:06
本帖最后由 tseyik 于 2015-5-1 08:11 编辑
例:按X制切替迷你地図方式
公共事件>並行>変数1>開関二有効
Image001.png
(22.09 KB, 下载次数: 30)
下载附件
保存到相册
2015-5-1 08:11 上传
作者:
kuerlulu
时间:
2015-4-30 18:15
(1) 全键盘
module Kboard
module_function
@R_Key_Hash = {}
@R_Key_Repeat = {}
GetKeyState = Win32API.new("user32","GetAsyncKeyState",['I'],'I')
def press?(rkey)
return GetKeyState.call(rkey) != 0
end
def repeat?(rkey)
result = GetKeyState.call(rkey)
if result != 0
if @R_Key_Repeat[rkey].nil?
@R_Key_Repeat[rkey] = 0
return true
end
@R_Key_Repeat[rkey] += 1
else
@R_Key_Repeat[rkey] = nil
@R_Key_Hash[rkey] = 0
end
if !@R_Key_Repeat[rkey].nil? and @R_Key_Repeat[rkey] > 4 # 4乃准确数字
@R_Key_Repeat[rkey] = 0
return true
else
return false
end
end
def trigger?(rkey)
result = GetKeyState.call(rkey)
if @R_Key_Hash[rkey] == 1 and result != 0
return false
end
if result != 0
@R_Key_Hash[rkey] = 1
return true
else
@R_Key_Hash[rkey] = 0
return false
end
end
end
复制代码
(2)M键hex:
0x4D
Kboard.trigger?(0x4D)
复制代码
(3)地图变量的操作
(放在你的地图脚本的update内(自己把"地图变量"改成你需要的):)
地图变量 = (地图变量 + 1) % 3 if Kboard.trigger?(0x4D)
复制代码
完
作者:
zhaoxun96
时间:
2015-5-3 00:00
条件分歧第四页带有“按钮X(X在游戏中可设定为游戏内的上下左右ABXYZLR ——均指游戏按钮而非键盘上的键)被按下时的情况,可以用这个搭配并行做出楼主想要的效果。
至于M键游戏本身是不允许设定M键为某个游戏按钮的、的,所以如果你硬是要M键的话就必须要全键盘脚本。
欢迎光临 Project1 (https://rpg.blue/)
Powered by Discuz! X3.1