# 基础鼠标模组(Sion_MouseBase)v1.01 (2013/11/5)
# 需求! 白菜组脚本基 (WhiteCabbageBase) v1.0+
#
# 鼠标指针图片 MouseCursor.png 放入 Graphics\System 文件夹
# 按下 Alt + L 将鼠标锁定在屏幕内; Alt + O(字母欧) 解除锁定
Mouse.visible = true
module Mouse end
class << Mouse
def activate(vp = nil)
end
def deactivate
end
def set_pos(x, y)
end
def create_cursor(vp)
end
def dispose_cursor
end
def trigger?(sym)
click? sym
end
def repeat?(sym)
false
end
def state(sym)
press? sym
end
def double_click?
dbl_clk? :L
end
def click_count
0
end
def show_system_cursor
end
def hide_system_cursor
end
end
class << Mouse
attr_reader :sprite
end
class << Input
alias_method :sion_mouse_press?, :press?
alias_method :sion_mouse_trigger?, :trigger?
alias_method :sion_mouse_repeat?, :repeat?
unless self.method_defined?(:sion_mouse_update)
alias_method :sion_mouse_update, :update
end
def update
Mouse.update
sion_mouse_update
end
def press?(key)
return true if sion_mouse_press?(key)
return Mouse.press?(Mouse::LEFT) if key == ":L" #b
return Mouse.press?(Mouse::RIGHT) if key == ":R" #b
return Mouse.press?(Mouse::MIDDLE) if key == ":M" #b
return Mouse.press?(:R) if key == :B
return false
end
def trigger?(key)
return true if sion_mouse_trigger?(key)
return Mouse.trigger?(:L) if key == :C
return Mouse.trigger?(:R) if key == :B
return false
end
def repeat?(key)
return true if sion_mouse_repeat?(key)
return Mouse.repeat?(:L) if key == :C
return Mouse.repeat?(:R) if key == :B
return false
end
end
[/pre]
Mouse.trigger和Mouse.repeat 都是无效,此脚本原来好像是用于VA所以 :C:B:L:R那些不是XP用法无视即可,我在":L" 加了双引号是 文本 注意其实是没意思,可改成其他名字也行
if (Graphics.frame_rate % 5) == 0 #每5帧刷新一次(此句我测试用,可不看)
p Mouse.x,Mouse.y
# Mouse.x和Mouse.y 用来直接获取鼠标x轴与鼠标y轴
实际使用例字: Scene_Title ,def update ,test
if Input.press?(":L")
p "按住了左键"
end #if
单击需要自行设置变量计数器