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

Project1

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

[已经过期] 请问我重复按X键,按久了会有难听的咚咚咚声。

[复制链接]

Lv2.观梦者

梦石
0
星屑
524
在线时间
329 小时
注册时间
2013-5-16
帖子
740
跳转到指定楼层
1
发表于 2013-6-4 18:54:50 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

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

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

x
请问我重复按X键,按久了会有难听的咚咚咚声。这是什么情况?
承接各类软件制作以及手机APP等...
我来开始为您讲述一个故事。
有一天,小明去了一个恐怖的森林。
他走了三天三夜,竟然发现了一位漂亮的公主。
公主指着遥远的另一边说。
   那里。才是我们的王堡

[零度火花论坛。原创游戏制作新城堡。请点击。期待来临。]
[零度火花论坛。原创游戏制作新城堡。请点击。期待来临。]
[零度火花论坛。原创游戏制作新城堡。请点击。期待来临。]
(温馨提示:我长达一年以及更久的时间内我没有打理也不会打理零度火花,广告机已经逆天,所以大家最好不要戳进去...)

Lv2.观梦者

梦石
0
星屑
280
在线时间
1374 小时
注册时间
2005-10-16
帖子
5113

贵宾

2
发表于 2013-6-5 06:15:49 | 只看该作者
用了输入法脚本?或者其他的什么脚本?
我只个搬答案的
叔叔我已经当爹了~
婚后闪人了……
回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
524
在线时间
329 小时
注册时间
2013-5-16
帖子
740
3
 楼主| 发表于 2013-6-5 10:53:56 | 只看该作者
亿万星辰 发表于 2013-6-5 06:15
用了输入法脚本?或者其他的什么脚本?

用了中文输入法……哟。是我崇拜的亿万星辰哥哥。我以前的游戏里还用过你的脚本呢……
承接各类软件制作以及手机APP等...
我来开始为您讲述一个故事。
有一天,小明去了一个恐怖的森林。
他走了三天三夜,竟然发现了一位漂亮的公主。
公主指着遥远的另一边说。
   那里。才是我们的王堡

[零度火花论坛。原创游戏制作新城堡。请点击。期待来临。]
[零度火花论坛。原创游戏制作新城堡。请点击。期待来临。]
[零度火花论坛。原创游戏制作新城堡。请点击。期待来临。]
(温馨提示:我长达一年以及更久的时间内我没有打理也不会打理零度火花,广告机已经逆天,所以大家最好不要戳进去...)
回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
280
在线时间
1374 小时
注册时间
2005-10-16
帖子
5113

贵宾

4
发表于 2013-6-5 13:40:02 | 只看该作者
本帖最后由 亿万星辰 于 2013-6-5 13:41 编辑
恶魔般的天使 发表于 2013-6-5 10:53
用了中文输入法……哟。是我崇拜的亿万星辰哥哥。我以前的游戏里还用过你的脚本呢…… ...

不要卖萌…… 本屌叔早已不吃这套~~~  
这个好像是那个focus没有切回的原因,我记得以前用的时候处理掉了,需要人为的给类 TextBox 增加一个方法
  1.   def focus=(f)
  2.     @focus = f
  3.     SetFocus.call(get_hWnd) unless @focus  # get_hWnd 是获取RGSS游戏窗口句柄
  4.   end
复制代码
当focus为false的时候,把游戏的窗口设为焦点,大致是这么个处理方法,然后还要在对应的Scene类里执行一个 TextBox 类对象.focus = false
我只个搬答案的
叔叔我已经当爹了~
婚后闪人了……
回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
524
在线时间
329 小时
注册时间
2013-5-16
帖子
740
5
 楼主| 发表于 2013-6-5 14:35:29 | 只看该作者
本帖最后由 恶魔般的天使 于 2013-6-5 14:40 编辑
亿万星辰 发表于 2013-6-5 13:40
不要卖萌…… 本屌叔早已不吃这套~~~  
这个好像是那个focus没有切回的原因,我记得以 ...


有点头晕的感觉…谢谢…我去试试吧。这段脚本插入在中文输入法就行了咩……还要修改什么类吗?
你要多多甩我………
承接各类软件制作以及手机APP等...
我来开始为您讲述一个故事。
有一天,小明去了一个恐怖的森林。
他走了三天三夜,竟然发现了一位漂亮的公主。
公主指着遥远的另一边说。
   那里。才是我们的王堡

[零度火花论坛。原创游戏制作新城堡。请点击。期待来临。]
[零度火花论坛。原创游戏制作新城堡。请点击。期待来临。]
[零度火花论坛。原创游戏制作新城堡。请点击。期待来临。]
(温馨提示:我长达一年以及更久的时间内我没有打理也不会打理零度火花,广告机已经逆天,所以大家最好不要戳进去...)
回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
524
在线时间
329 小时
注册时间
2013-5-16
帖子
740
6
 楼主| 发表于 2013-6-6 10:46:38 | 只看该作者
亿万星辰 发表于 2013-6-5 13:40
不要卖萌…… 本屌叔早已不吃这套~~~  
这个好像是那个focus没有切回的原因,我记得以 ...

大叔。还是没解决。能不能截图给我教教。具体的修改截图。实在抱歉。为了这个我几天都在找办法。哦。我用的是夏娜的中文输入法。是这个输入法的问题吗?
承接各类软件制作以及手机APP等...
我来开始为您讲述一个故事。
有一天,小明去了一个恐怖的森林。
他走了三天三夜,竟然发现了一位漂亮的公主。
公主指着遥远的另一边说。
   那里。才是我们的王堡

[零度火花论坛。原创游戏制作新城堡。请点击。期待来临。]
[零度火花论坛。原创游戏制作新城堡。请点击。期待来临。]
[零度火花论坛。原创游戏制作新城堡。请点击。期待来临。]
(温馨提示:我长达一年以及更久的时间内我没有打理也不会打理零度火花,广告机已经逆天,所以大家最好不要戳进去...)
回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
280
在线时间
1374 小时
注册时间
2005-10-16
帖子
5113

贵宾

7
发表于 2013-6-6 12:51:41 | 只看该作者
夏娜的输入法是哪个?
我截图只能截出个记事本来~
get_hWnd方法是获取当前游戏窗口句柄的方法

http://rpg.blue/forum.php?mod=viewthread&tid=243422
我用的是这个
我只个搬答案的
叔叔我已经当爹了~
婚后闪人了……
回复 支持 反对

使用道具 举报

Lv4.逐梦者

梦石
0
星屑
9280
在线时间
2504 小时
注册时间
2011-5-20
帖子
15389

开拓者

8
发表于 2013-6-6 13:25:17 | 只看该作者
电脑本来就是这么设置的啊,你按一个键按久了主机就会发出声音而且那个按键短时间内也不能按了
[img]http://service.t.sina.com.cn/widget/qmd/5339802982/c02e16bd/7.png
回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
524
在线时间
329 小时
注册时间
2013-5-16
帖子
740
9
 楼主| 发表于 2013-6-7 02:12:34 | 只看该作者
亿万星辰 发表于 2013-6-6 12:51
夏娜的输入法是哪个?
我截图只能截出个记事本来~
get_hWnd方法是获取当前游戏窗口句柄的方法

大叔,谢谢你的再次帮助。今晚回家我试试去。不过我的问题或许不是那么简单的样子。
我来说说情况吧。我的那个输入法是用在网络聊天上的。
按回车键就可以输入聊天内容了聊天了。再按一次就取消
聊天了。所以,除了确定键和回车键。其余的键都是屏蔽的
除非聊天时候其余键才会起效果。
但是大叔你也看到我游戏是按键ARPG类型的。
所以我就设置按键调用公共事件的方法。让按键有效果了。
于是打怪的时候肯定要重复按键啊。
于是就有了这个问题。

非常难听的声音。
如果大叔想再仔细了解下情况可以加我扣扣1300570901答案是爱你一万年。
要不你说你的你的。我怕大叔发了扣扣有人骚扰你。所以就发我的了吧。
希望大叔能帮帮新人哟。远程看看我游戏该怎么改。
大叔等等。我这就把我用的脚本给您看看研究下。
承接各类软件制作以及手机APP等...
我来开始为您讲述一个故事。
有一天,小明去了一个恐怖的森林。
他走了三天三夜,竟然发现了一位漂亮的公主。
公主指着遥远的另一边说。
   那里。才是我们的王堡

[零度火花论坛。原创游戏制作新城堡。请点击。期待来临。]
[零度火花论坛。原创游戏制作新城堡。请点击。期待来临。]
[零度火花论坛。原创游戏制作新城堡。请点击。期待来临。]
(温馨提示:我长达一年以及更久的时间内我没有打理也不会打理零度火花,广告机已经逆天,所以大家最好不要戳进去...)
回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
524
在线时间
329 小时
注册时间
2013-5-16
帖子
740
10
 楼主| 发表于 2013-6-7 02:15:46 | 只看该作者
本帖最后由 亿万星辰 于 2013-6-7 13:11 编辑
亿万星辰 发表于 2013-6-6 12:51
夏娜的输入法是哪个?
我截图只能截出个记事本来~
get_hWnd方法是获取当前游戏窗口句柄的方法
  1. =begin

  2.   脚本:【完美输入法修正】
  3.   
  4.   功能:输入法。
  5.   
  6.   说明: 直接用Type_Field创建输入域即可进行输入,在此可根据Type_Field域对象
  7.   
  8.         的活动标记active来自定义刷新等,在Type_Field中需要自己处理特殊按键
  9.         
  10.         的处理方法。具体不明白之处请参考范例工程。

  11.   作者:灼眼的夏娜
  12.   
  13.   补充: 至于以前那个版本也许很多人都注意到那个烦人的问题了吧,按Enter和Tab那
  14.   
  15.         些会出现不爽的声音,这个版本解决了那个问题,并简化添加了Type_Field类
  16.         
  17.         来方便创建输入域。

  18. =end

  19. #==============================================================================
  20. # ■ RInput
  21. #------------------------------------------------------------------------------
  22. #  全键盘处理的模块。
  23. #==============================================================================
  24. module RInput
  25.   #--------------------------------------------------------------------------
  26.   # ● 常量定义
  27.   #--------------------------------------------------------------------------
  28.   ENTER             = 0x0D
  29.   SPACE             = 0x20
  30.   UP                = 0x26
  31.   DOWN              = 0x28
  32.   LEFT              = 0x25
  33.   RIGHT             = 0x27
  34.   
  35.   LCTRL             = 0xA2
  36.   LALT              = 0xA4
  37.   TAB               = 0x09     
  38.   
  39.   F1                = 0x70  
  40.   ESCAPE            = 0x1B

  41.   Key_0         = 0x30        # 0 key
  42.   Key_1         = 0x31        # 1 key
  43.   Key_2         = 0x32        # 2 key
  44.   Key_3         = 0x33        # 3 key
  45.   Key_4         = 0x34        # 4 key
  46.   Key_5         = 0x35        # 5 key
  47.   Key_6         = 0x36        # 6 key
  48.   Key_7         = 0x37        # 7 key
  49.   Key_8         = 0x38        # 8 key
  50.   Key_9         = 0x39        # 9 key
  51.   #--------------------------------------------------------------------------
  52.   # ● 临时Hash
  53.   #--------------------------------------------------------------------------
  54.   @R_Key_Hash = {}
  55.   @R_Key_Repeat = {}
  56.   
  57.   #--------------------------------------------------------------------------
  58.   # ● 唯一API
  59.   #--------------------------------------------------------------------------
  60.   GetKeyState = Win32API.new("user32","GetAsyncKeyState",['I'],'I')
  61.   
  62.   #--------------------------------------------------------------------------
  63.   # ● 单键按下
  64.   #--------------------------------------------------------------------------
  65.   def self.press?(rkey)
  66.     return GetKeyState.call(rkey) != 0
  67.   end
  68.   #--------------------------------------------------------------------------
  69.   # ● 单键重复按下
  70.   #--------------------------------------------------------------------------
  71.   def self.repeat?(rkey)
  72.     result = GetKeyState.call(rkey)
  73.     if result != 0
  74.       if @R_Key_Repeat[rkey].nil?
  75.         @R_Key_Repeat[rkey] = 0
  76.         return true
  77.       end
  78.       @R_Key_Repeat[rkey] += 1
  79.     else
  80.       @R_Key_Repeat[rkey] = nil
  81.       @R_Key_Hash[rkey] = 0
  82.     end
  83.     #当连续按3下同一键时候返回=0
  84.     if !@R_Key_Repeat[rkey].nil? and @R_Key_Repeat[rkey] > 3 # 4乃准确数字
  85.       @R_Key_Repeat[rkey] = 0
  86.       return true
  87.     else
  88.       return false
  89.     end
  90.   end
  91.   
  92.   #--------------------------------------------------------------------------
  93.   # ● 单键处理
  94.   #--------------------------------------------------------------------------
  95.   def self.trigger?(rkey)
  96.     result = GetKeyState.call(rkey)
  97.     if @R_Key_Hash[rkey] == 1 and result != 0
  98.       return false
  99.     end
  100.     if result != 0
  101.       @R_Key_Hash[rkey] = 1
  102.       return true
  103.     else
  104.       @R_Key_Hash[rkey] = 0
  105.       return false
  106.     end
  107.   end

  108. end
  109. #==============================================================================
  110. # ■ EasyConv
  111. #------------------------------------------------------------------------------
  112. #  转码模块。
  113. #==============================================================================
  114. module EasyConv

  115.   #--------------------------------------------------------------------------
  116.   # ● 常量定义
  117.   #--------------------------------------------------------------------------
  118.   CP_ACP = 0
  119.   CP_UTF8 = 65001

  120.   #--------------------------------------------------------------------------
  121.   # ● 模块函数
  122.   #--------------------------------------------------------------------------
  123.   module_function
  124.   
  125.   #--------------------------------------------------------------------------
  126.   # ● 转码
  127.   #--------------------------------------------------------------------------
  128.   def s2u(text)

  129.     m2w = Win32API.new('kernel32', 'MultiByteToWideChar', 'ilpipi', 'i')
  130.     w2m = Win32API.new('kernel32', 'WideCharToMultiByte', 'ilpipipp', 'i')

  131.     len = m2w.call(CP_ACP, 0, text, -1, nil, 0)
  132.     buf = "\0" * (len*2)
  133.     m2w.call(CP_ACP, 0, text, -1, buf, buf.size/2)

  134.     len = w2m.call(CP_UTF8, 0, buf, -1, nil, 0, nil, nil)
  135.     ret = "\0" * len
  136.     w2m.call(CP_UTF8, 0, buf, -1, ret, ret.size, nil, nil)
  137.     ret[-1] = ""
  138.    
  139.     return ret
  140.   end

  141.   #--------------------------------------------------------------------------
  142.   # ● 转码
  143.   #--------------------------------------------------------------------------
  144.   def u2s(text)
  145.    
  146.     m2w = Win32API.new('kernel32', 'MultiByteToWideChar', 'ilpipi', 'i')
  147.     w2m = Win32API.new('kernel32', 'WideCharToMultiByte', 'ilpipipp', 'i')

  148.     len = m2w.call(CP_UTF8, 0, text, -1, nil, 0)
  149.     buf = "\0" * (len*2)
  150.     m2w.call(CP_UTF8, 0, text, -1, buf, buf.size/2)

  151.     len = w2m.call(CP_ACP, 0, buf, -1, nil, 0, nil, nil)
  152.     ret = "\0" * len
  153.     w2m.call(CP_ACP, 0, buf, -1, ret, ret.size, nil, nil)
  154.    
  155.     return ret
  156.   end

  157. end
  158. #==============================================================================
  159. # ■ TypeAPI
  160. #------------------------------------------------------------------------------
  161. #  输入法相关API模块。
  162. #==============================================================================
  163. module TypeAPI
  164.   #--------------------------------------------------------------------------
  165.   # ● API定义
  166.   #--------------------------------------------------------------------------
  167.   GPPS         = Win32API.new("kernel32","GetPrivateProfileString",'pppplp','l')
  168.   FindWindow   = Win32API.new("user32", "FindWindow", 'pp', 'i')
  169.   CreateWindow = Win32API.new("NetGame","CreatWnd",'l','l')
  170.   SetHK        = Win32API.new("NetGame","SetHK",'v','v')
  171.   GetText      = Win32API.new("NetGame","GetWndText",'l','p')
  172.   SetFocus     = Win32API.new("user32","SetFocus",'l','l')
  173.   IfBack       = Win32API.new("NetGame","If_Back",'v','i')
  174.   StartType    = Win32API.new("NetGame","StartType",'v','v')
  175.   EndType      = Win32API.new("NetGame","EndType",'v','v')
  176.   GetKeyInfos  = Win32API.new("NetGame","GetKeyInfo",'v','i')
  177.   #--------------------------------------------------------------------------
  178.   # ● 模块函数
  179.   #--------------------------------------------------------------------------
  180.   module_function
  181. #=begin
  182.   #--------------------------------------------------------------------------
  183.   # ● 获取参数
  184.   #--------------------------------------------------------------------------
  185.   def getParam
  186.     val = "\0" * 256
  187.     GPPS.call("Game","Title","",val,256,"./Game.ini")
  188.     val.delete!("\0")
  189.     return val
  190.   end
  191.   
  192.   #--------------------------------------------------------------------------
  193.   # ● 获取窗口
  194.   #--------------------------------------------------------------------------
  195.   def findWindow
  196.     return FindWindow.call("RGSS Player",self.getParam)
  197.     return FindWindow.call("",self.getParam)
  198.   end
  199. #=end
  200. =begin
  201.   #--------------------------------------------------------------------------
  202.   # ● 获取参数
  203.   #--------------------------------------------------------------------------
  204.   def getParam
  205.     val = 0.chr * 256
  206.     GPPS.call("Game","Title","",val,256,"./Game.ini")
  207.     val.delete!("\0")
  208.     return val
  209.   end  
  210.   #--------------------------------------------------------------------------
  211.   #  ● 获取窗口
  212.   #--------------------------------------------------------------------------
  213.   def findWindow
  214.     Win32API.new("user32","FindWindow","pp","i").call("RGSS Player",self.getParam)
  215.   end
  216. =end
  217.   #--------------------------------------------------------------------------
  218.   # ● 创建窗口
  219.   #--------------------------------------------------------------------------
  220.   def createWindow(hwnd)
  221.     return CreateWindow.call(hwnd)
  222.   end
  223.   
  224.   #--------------------------------------------------------------------------
  225.   # ● 设置HK
  226.   #--------------------------------------------------------------------------
  227.   def setHK
  228.     SetHK.call
  229.   end
  230.   
  231.   #--------------------------------------------------------------------------
  232.   # ● 获取文字
  233.   #--------------------------------------------------------------------------
  234.   def getText
  235.     return EasyConv.s2u(GetText.call(@subhwnd))
  236.   end
  237.   
  238.   #--------------------------------------------------------------------------
  239.   # ● 设置焦点
  240.   #--------------------------------------------------------------------------
  241.   def setFocus
  242.     SetFocus.call(@subhwnd)
  243.   end
  244.   
  245.   #--------------------------------------------------------------------------
  246.   # ● 转换焦点
  247.   #--------------------------------------------------------------------------
  248.   def lostFocus
  249.     SetFocus.call(@hwnd)
  250.   end
  251.   
  252.   #--------------------------------------------------------------------------
  253.   # ● 退格判定
  254.   #--------------------------------------------------------------------------
  255.   def ifBack
  256.     return IfBack.call
  257.   end
  258.   
  259.   #--------------------------------------------------------------------------
  260.   # ● 开始输入
  261.   #--------------------------------------------------------------------------
  262.   def startType
  263.     StartType.call
  264.   end
  265.   
  266.   #--------------------------------------------------------------------------
  267.   # ● 结束输入
  268.   #--------------------------------------------------------------------------
  269.   def endType
  270.     EndType.call
  271.   end
  272.   #--------------------------------------------------------------------------
  273.   # ● 输入中特殊按键处理
  274.   #--------------------------------------------------------------------------
  275.   def getKeyInfos
  276.     return GetKeyInfos.call
  277.   end
  278.   
  279.   #--------------------------------------------------------------------------
  280.   # ● 获取句柄
  281.   #--------------------------------------------------------------------------
  282.   @hwnd    = self.findWindow
  283.   @subhwnd = self.createWindow(@hwnd)

  284.   #--------------------------------------------------------------------------
  285.   # ● 设置HK应用
  286.   #--------------------------------------------------------------------------
  287.   self.setHK
  288.   
  289. end

  290. #==============================================================================
复制代码
承接各类软件制作以及手机APP等...
我来开始为您讲述一个故事。
有一天,小明去了一个恐怖的森林。
他走了三天三夜,竟然发现了一位漂亮的公主。
公主指着遥远的另一边说。
   那里。才是我们的王堡

[零度火花论坛。原创游戏制作新城堡。请点击。期待来临。]
[零度火花论坛。原创游戏制作新城堡。请点击。期待来临。]
[零度火花论坛。原创游戏制作新城堡。请点击。期待来临。]
(温馨提示:我长达一年以及更久的时间内我没有打理也不会打理零度火花,广告机已经逆天,所以大家最好不要戳进去...)
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2025-1-14 02:44

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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