1) After downloading the DirectX version, download the Game.exe executable below and replace it with the one in the folder Client
Download Game.exe
2) Open the Script Editor (F11)
3) Search for the script [VS] Mouse:
4) Replace ALL [VS] Mouse script with:
Credits:
Valentine
Download Game.exe
2) Open the Script Editor (F11)
3) Search for the script [VS] Mouse:
4) Replace ALL [VS] Mouse script with:
- Código:
#==============================================================================
# ** Mouse
#------------------------------------------------------------------------------
# Autor: Cidiomar
#==============================================================================
module Mouse
typedef 'unsigned long HCURSOR'
dll = 'System/VXAOS.dll'
Mouse__setup = c_function(dll, 'void Mouse__setup(struct RArray*, struct RArray*, struct RArray*, void *)')
Mouse__update = c_function(dll, 'void Mouse__update()')
Mouse__getPos = c_function(dll, 'void Mouse__getPos(long *)')
Mouse__getOldPos = c_function(dll, 'void Mouse__getOldPos(long *)')
@triggered = Input.triggered
@pressed = Input.pressed
@released = Input.released
@repeated = Input.repeated
@last_lclick = Time.now
@last_rclick = Time.now
@dbl_lclick = false
@dbl_rclick = false
@pos = Array.new(2, 0)
Mouse__setup.call(@triggered, @pressed, @released, @repeated)
def self.click?(button)
return @triggered[1] if button == :L
return @triggered[2] if button == :R
end
def self.press?(button)
return @pressed[1] if button == :L
return @pressed[2] if button == :R
end
def self.release?(button)
return @released[1] if button == :L
return @released[2] if button == :R
end
def self.repeat?(button)
return @repeated[1] if button == :L
return @repeated[2] if button == :R
end
def self.dbl_clk?(button)
return @dbl_lclick if button == :L
return @dbl_rclick if button == :R
end
def self.tile_x
# Corrige o display_x, já que a tela pode se mover
#16 em vez de 32 pixel na horizontal se a largura da
#resolução for superior a 1000
x = $game_map.display_x > 0 && $game_map.display_x > $game_map.display_x.to_i ? self.x + 16 : self.x
(x / 32 + $game_map.display_x).to_i
end
def self.tile_y
(($game_map.display_y * 32 + self.y) / 32).to_i
end
def self.in_tile?(object)
object.x == tile_x && object.y == tile_y
end
def self.update
Mouse__update.call()
@pos = [0, 0].pack('l2')
@old_pos = [0, 0].pack('l2')
Mouse__getPos.call(@pos)
Mouse__getOldPos.call(@old_pos)
@pos = @pos.unpack('l2')
@old_pos = @old_pos.unpack('l2')
@dbl_lclick = double_left_click?
@dbl_rclick = double_right_click?
end
def self.double_left_click?
return false unless click?(:L)
result = false
t_diff = Time.now - @last_lclick
if t_diff < 0.5 && @last_pos == @pos
result = true
else
@last_lclick = Time.now
@last_pos = @pos
end
result
end
def self.double_right_click?
return false unless click?(:R)
result = false
t_diff = Time.now - @last_rclick
if t_diff < 0.5 && @last_pos == @pos
result = true
else
@last_rclick = Time.now
@last_pos = @pos
end
result
end
def self.x; @pos[0]; end
def self.y; @pos[1]; end
def self.pos; @pos.dup; end
def self.old_x; @old_pos[0]; end
def self.old_y; @old_pos[1]; end
def self.old_pos; @old_pos.dup; end
def self.moved?; @pos != @old_pos; end
end
#==============================================================================
# ** Graphics
#==============================================================================
module Graphics
def self.is_fullscreen?
false
end
def self.toggle_fullscreen
end
def self.vsync=(vsync)
end
def self.vsync
end
end
Credits:
Valentine