Project1

标题: Sion 的 SiNova 如何让小键盘的0 也生效? [打印本页]

作者: 卡奥尼特    时间: 2023-11-13 16:52
标题: Sion 的 SiNova 如何让小键盘的0 也生效?
本帖最后由 卡奥尼特 于 2023-11-13 16:54 编辑

先附上原贴
https://rpg.blue/forum.php?mod=viewthread&tid=347535

默认情况下,小键盘的0 担任了默认按键的B键。
当我使用上这个脚本的时候,小键盘0 就没法当做B键使用了。

我需要怎么改呢?
作者: alexncf125    时间: 2023-11-13 23:17
大概是把SiNova_Input v1.03第29行的0x58, #  X  ->  :B改成0x60, #  0  ->  :B吧?
作者: 卡奥尼特    时间: 2023-11-14 00:26
alexncf125 发表于 2023-11-13 23:17
大概是把SiNova_Input v1.03第29行的0x58, #  X  ->  :B改成0x60, #  0  ->  :B吧?

我确实有试过,这样就相当于是覆盖了设置。
相当于是把原本的X键位 ,设置成了小键盘0
作者: alexncf125    时间: 2023-11-14 23:40
哦, 原来是又要x又要0, 那把SionMouseSystem_v3.03第118行之后的3行0x02改成0x02 || 0x60吧?

  def press?(key)
    return true if sion_mouse_press?(key)
    return Input.key_press?(0x01) if key == :C
    return (Input.key_press?(0x02) || Input.key_press?(0x60)) if key == :B
    return false
  end
  def trigger?(key)
    return true if sion_mouse_trigger?(key)
    return Input.key_trigger?(0x01) if key == :C
    return (Input.key_trigger?(0x02) || Input.key_trigger?(0x60)) if key == :B
    return false
  end
  def repeat?(key)
    return true if sion_mouse_repeat?(key)
    return Input.key_repeat?(0x01) if key == :C
    return (Input.key_repeat?(0x02) || Input.key_repeat?(0x60)) if key == :B
    return false
  end
作者: 卡奥尼特    时间: 2023-11-15 14:25
alexncf125 发表于 2023-11-14 23:40
哦, 原来是又要x又要0, 那把SionMouseSystem_v3.03第118行之后的3行0x02改成0x02 || 0x60吧?

  def press? ...

咕,可能有一点我没有说。
我没有使用到里边的鼠标扩展呐。
作者: alexncf125    时间: 2023-11-15 15:48
卡奥尼特 发表于 2023-11-15 14:25
咕,可能有一点我没有说。
我没有使用到里边的鼠标扩展呐。

那就加在SiNova_Input v1.03的底下喽

class << Input
alias_method :sion_mouse_press?,   :press?
alias_method :sion_mouse_trigger?, :trigger?
alias_method :sion_mouse_repeat?,  :repeat?

  def press?(key)
    return true if sion_mouse_press?(key)
    return Input.key_press?(0x60) if key == :B
    return false
  end
  def trigger?(key)
    return true if sion_mouse_trigger?(key)
    return Input.key_trigger?(0x60) if key == :B
    return false
  end
  def repeat?(key)
    return true if sion_mouse_repeat?(key)
    return Input.key_repeat?(0x60) if key == :B
    return false
  end
end




欢迎光临 Project1 (https://rpg.blue/) Powered by Discuz! X3.1