设为首页收藏本站|繁體中文

Project1

 找回密码
 注册会员
搜索
查看: 3274|回复: 7
打印 上一主题 下一主题

全键盘~ 改

 关闭 [复制链接]

Lv1.梦旅人

有事烧纸

梦石
0
星屑
154
在线时间
509 小时
注册时间
2005-10-22
帖子
6982

贵宾VX城市地图大赛冠军第1届RMTV比赛冠军第1届TG大赛冠军

跳转到指定楼层
1
发表于 2006-10-8 07:25:21 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

加入我们,或者,欢迎回来。

您需要 登录 才可以下载或查看,没有帐号?注册会员

x
全键盘~ 改

说明:至于原来站上那个全键盘的有什么问题试就知道了。。。。

1、Kboard.press?(key) 同 Input.press?(key)
2、Kboard.repeat?(key) 同 Input.repeat?(key)
3、Kboard.trigger?(key) 同 Input.trigger?(key)

以下脚本中没给出键值,需要的自己查找。。。

  1. module Kboard

  2.   module_function
  3.   
  4.   @R_Key_Hash = {}
  5.   @R_Key_Repeat = {}
  6.   
  7.   GetKeyState = Win32API.new("user32","GetAsyncKeyState",['I'],'I')

  8.   def press?(rkey)
  9.     return GetKeyState.call(rkey) != 0
  10.   end
  11.   
  12.   def repeat?(rkey)
  13.     result = GetKeyState.call(rkey)
  14.     if result != 0
  15.       if @R_Key_Repeat[rkey].nil?
  16.         @R_Key_Repeat[rkey] = 0
  17.         return true
  18.       end
  19.       @R_Key_Repeat[rkey] += 1
  20.     else
  21.       @R_Key_Repeat[rkey] = nil
  22.       @R_Key_Hash[rkey] = 0
  23.     end
  24.     if !@R_Key_Repeat[rkey].nil? and @R_Key_Repeat[rkey] > 4 # 4乃准确数字
  25.       @R_Key_Repeat[rkey] = 0
  26.       return true
  27.     else
  28.       return false
  29.     end
  30.   end
  31.   
  32.   def trigger?(rkey)
  33.     result = GetKeyState.call(rkey)
  34.     if @R_Key_Hash[rkey] == 1 and result != 0
  35.       return false
  36.     end
  37.     if result != 0
  38.       @R_Key_Hash[rkey] = 1
  39.       return true
  40.     else
  41.       @R_Key_Hash[rkey] = 0
  42.       return false
  43.     end
  44.   end
  45.   
  46. end
复制代码
神隐中,偶尔诈尸

Lv1.梦旅人

有事烧纸

梦石
0
星屑
154
在线时间
509 小时
注册时间
2005-10-22
帖子
6982

贵宾VX城市地图大赛冠军第1届RMTV比赛冠军第1届TG大赛冠军

2
 楼主| 发表于 2006-10-8 07:25:21 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

加入我们,或者,欢迎回来。

您需要 登录 才可以下载或查看,没有帐号?注册会员

x
全键盘~ 改

说明:至于原来站上那个全键盘的有什么问题试就知道了。。。。

1、Kboard.press?(key) 同 Input.press?(key)
2、Kboard.repeat?(key) 同 Input.repeat?(key)
3、Kboard.trigger?(key) 同 Input.trigger?(key)

以下脚本中没给出键值,需要的自己查找。。。

  1. module Kboard

  2.   module_function
  3.   
  4.   @R_Key_Hash = {}
  5.   @R_Key_Repeat = {}
  6.   
  7.   GetKeyState = Win32API.new("user32","GetAsyncKeyState",['I'],'I')

  8.   def press?(rkey)
  9.     return GetKeyState.call(rkey) != 0
  10.   end
  11.   
  12.   def repeat?(rkey)
  13.     result = GetKeyState.call(rkey)
  14.     if result != 0
  15.       if @R_Key_Repeat[rkey].nil?
  16.         @R_Key_Repeat[rkey] = 0
  17.         return true
  18.       end
  19.       @R_Key_Repeat[rkey] += 1
  20.     else
  21.       @R_Key_Repeat[rkey] = nil
  22.       @R_Key_Hash[rkey] = 0
  23.     end
  24.     if !@R_Key_Repeat[rkey].nil? and @R_Key_Repeat[rkey] > 4 # 4乃准确数字
  25.       @R_Key_Repeat[rkey] = 0
  26.       return true
  27.     else
  28.       return false
  29.     end
  30.   end
  31.   
  32.   def trigger?(rkey)
  33.     result = GetKeyState.call(rkey)
  34.     if @R_Key_Hash[rkey] == 1 and result != 0
  35.       return false
  36.     end
  37.     if result != 0
  38.       @R_Key_Hash[rkey] = 1
  39.       return true
  40.     else
  41.       @R_Key_Hash[rkey] = 0
  42.       return false
  43.     end
  44.   end
  45.   
  46. end
复制代码
神隐中,偶尔诈尸

Lv1.梦旅人

海 关

梦石
0
星屑
50
在线时间
431 小时
注册时间
2006-1-1
帖子
460
3
发表于 2006-10-8 09:17:55 | 只看该作者
想问鼠标中也能定义吗{/gg}
消失中~~
回复 支持 反对

使用道具 举报

Lv1.梦旅人

有事烧纸

梦石
0
星屑
154
在线时间
509 小时
注册时间
2005-10-22
帖子
6982

贵宾VX城市地图大赛冠军第1届RMTV比赛冠军第1届TG大赛冠军

4
 楼主| 发表于 2006-10-8 15:17:58 | 只看该作者
以下引用两只鱼于2006-10-8 1:17:55的发言:

想问鼠标中也能定义吗

你打算定义啥? {/gg}
神隐中,偶尔诈尸
回复 支持 反对

使用道具 举报

Lv1.梦旅人

海 关

梦石
0
星屑
50
在线时间
431 小时
注册时间
2006-1-1
帖子
460
5
发表于 2006-10-8 20:20:32 | 只看该作者
少打一个字了~~是鼠标中键
消失中~~
回复 支持 反对

使用道具 举报

Lv1.梦旅人

查无此人

梦石
0
星屑
50
在线时间
9 小时
注册时间
2006-5-8
帖子
1399
6
发表于 2006-10-8 20:22:33 | 只看该作者
可以的{/se}

但是偶不会{/hx}
KRKR + NS 学习中..........
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
17 小时
注册时间
2006-2-10
帖子
176
7
发表于 2006-10-8 22:58:20 | 只看该作者
记录一下,试了看看。
回复 支持 反对

使用道具 举报

Lv1.梦旅人

66RPG站长

梦石
0
星屑
54
在线时间
615 小时
注册时间
2005-10-10
帖子
5734

RMVX自由创作大赛亚军第2届短篇游戏比赛亚军第5届短篇游戏比赛冠军

8
发表于 2006-10-27 08:59:08 | 只看该作者
发布完毕……
VIP += 6
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

站长信箱:[email protected]|手机版|小黑屋|无图版|Project1游戏制作

GMT+8, 2024-5-2 21:33

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表