Amaranth's Super Simple Mouse System for Ace

Shaz

Veteran
Veteran
Joined
Mar 2, 2012
Messages
39,138
Reaction score
12,413
First Language
English
Primarily Uses
RMMV
The player is the central focus, not the events.
 

felsenstern

Veteran
Veteran
Joined
Jan 23, 2015
Messages
719
Reaction score
263
First Language
German
Primarily Uses
RMVXA
Has anyone already found a solution for mouse-use together with Zeus Fullscreen and Screen Options?
 

TheDrifter

Veteran
Veteran
Joined
Apr 18, 2012
Messages
104
Reaction score
3
First Language
English
Primarily Uses
Greetings.

First of all, this script is outstanding. Thank you very much for its creation.

Secondly, I have read the whole 24 pages of this thread and could not find an answer to my problem. I hope you can help me.

When testing my project, the Sword-like cursor disappears and reverts back to the regular arrow-like cursor as soon as I approach the black borders inside the game window.

The regular arrow-like cursor doesn't have the same sensitivity as the Sword-like cursor and gets lost off-screen very easily.

It's very awkward trying to "find back" your way onto the game screen every time you approach the black borders.

I could understand if it did that once I got out the game window, but the black borders are still inside of it.

It's exactly like having two monitors for your computer, and you could still hover your cursor over to the second monitor while it was off.

Is there a way to keep the cursor sprite within the game window so it can't go off-screen?

I really don't know RGSS3, but maybe something like this is what I'm looking for (I have no clue):

  1.     if MOUSE_KEEP_WINDOW
  2.       @m_x = [[@m_x, 0].max,Graphics.width-5].min
  3.       @m_y = [[@m_y, 0].max,Graphics.height-5].min

Thank you very much for your help! It is much appreciated.
 
Last edited by a moderator:

Shaz

Veteran
Veteran
Joined
Mar 2, 2012
Messages
39,138
Reaction score
12,413
First Language
English
Primarily Uses
RMMV
Why does your window have black borders? Are you using another script to resize the window? Someone did mention a script that resizes (or goes fullscreen) where the cursor changed back to the system cursor.
 

TheDrifter

Veteran
Veteran
Joined
Apr 18, 2012
Messages
104
Reaction score
3
First Language
English
Primarily Uses
Oh yes, you're right.

I've been using Fullscreen++ v2.2 by Zeus81, otherwise Fullscreen mode would look very stretchy from side to side.

# Fullscreen++ v2.2 for VX and VXace by Zeus81# Free for non commercial and commercial use# Licence : http://creativecommons.org/licenses/by-sa/3.0/# Contact : zeusex81@gmail.com# (fr) Manuel d'utilisation : http://pastebin.com/raw.php?i=1TQfMnVJ# (en) User Guide : http://pastebin.com/raw.php?i=EgnWt9ur # Disable ALT+Enter reghotkey = Win32API.new('user32', 'RegisterHotKey', 'LIII', 'I') reghotkey.call(0, 1, 1, 0x0D) $imported ||= {}$imported[:Zeus_Fullscreen] = __FILE__class << Graphics Disable_VX_Fullscreen = false CreateWindowEx = Win32API.new('user32' , 'CreateWindowEx' , 'ippiiiiiiiii', 'i') GetClientRect = Win32API.new('user32' , 'GetClientRect' , 'ip' , 'i') GetDC = Win32API.new('user32' , 'GetDC' , 'i' , 'i') GetSystemMetrics = Win32API.new('user32' , 'GetSystemMetrics' , 'i' , 'i') GetWindowRect = Win32API.new('user32' , 'GetWindowRect' , 'ip' , 'i') FillRect = Win32API.new('user32' , 'FillRect' , 'ipi' , 'i') FindWindow = Win32API.new('user32' , 'FindWindow' , 'pp' , 'i') ReleaseDC = Win32API.new('user32' , 'ReleaseDC' , 'ii' , 'i') SendInput = Win32API.new('user32' , 'SendInput' , 'ipi' , 'i') SetWindowLong = Win32API.new('user32' , 'SetWindowLong' , 'iii' , 'i') SetWindowPos = Win32API.new('user32' , 'SetWindowPos' , 'iiiiiii' , 'i') ShowWindow = Win32API.new('user32' , 'ShowWindow' , 'ii' , 'i') SystemParametersInfo = Win32API.new('user32' , 'SystemParametersInfo' , 'iipi' , 'i') UpdateWindow = Win32API.new('user32' , 'UpdateWindow' , 'i' , 'i') GetPrivateProfileString = Win32API.new('kernel32', 'GetPrivateProfileString' , 'ppppip' , 'i') WritePrivateProfileString = Win32API.new('kernel32', 'WritePrivateProfileString', 'pppp' , 'i') CreateSolidBrush = Win32API.new('gdi32' , 'CreateSolidBrush' , 'i' , 'i') DeleteObject = Win32API.new('gdi32' , 'DeleteObject' , 'i' , 'i') unless method_defined?:)zeus_fullscreen_update) HWND = FindWindow.call('RGSS Player', 0) BackHWND = CreateWindowEx.call(0x08000008, 'Static', '', 0x80000000, 0, 0, 0, 0, 0, 0, 0, 0) alias zeus_fullscreen_resize_screen resize_screen alias zeus_fullscreen_update update endprivate def initialize_fullscreen_rects @borders_size ||= borders_size @fullscreen_rect ||= screen_rect @workarea_rect ||= workarea_rect end def borders_size GetWindowRect.call(HWND, wrect = [0, 0, 0, 0].pack('l4')) GetClientRect.call(HWND, crect = [0, 0, 0, 0].pack('l4')) wrect, crect = wrect.unpack('l4'), crect.unpack('l4') Rect.new(0, 0, wrect[2]-wrect[0]-crect[2], wrect[3]-wrect[1]-crect[3]) end def screen_rect Rect.new(0, 0, GetSystemMetrics.call(0), GetSystemMetrics.call(1)) end def workarea_rect SystemParametersInfo.call(0x30, 0, rect = [0, 0, 0, 0].pack('l4'), 0) rect = rect.unpack('l4') Rect.new(rect[0], rect[1], rect[2]-rect[0], rect[3]-rect[1]) end def hide_borders() SetWindowLong.call(HWND, -16, 0x14000000) end def show_borders() SetWindowLong.call(HWND, -16, 0x14CA0000) end def hide_back() ShowWindow.call(BackHWND, 0) end def show_back ShowWindow.call(BackHWND, 3) UpdateWindow.call(BackHWND) dc = GetDC.call(BackHWND) rect = [0, 0, @fullscreen_rect.width, @fullscreen_rect.height].pack('l4') brush = CreateSolidBrush.call(0) FillRect.call(dc, rect, brush) ReleaseDC.call(BackHWND, dc) DeleteObject.call(brush) end def resize_window(w, h) if @fullscreen x, y, z = (@fullscreen_rect.width-w)/2, (@fullscreen_rect.height-h)/2, -1 else w += @borders_size.width h += @borders_size.height x = @workarea_rect.x + (@workarea_rect.width - w) / 2 y = @workarea_rect.y + (@workarea_rect.height - h) / 2 z = -2 end SetWindowPos.call(HWND, z, x, y, w, h, 0) end def release_alt inputs = [1,18,2, 1,164,2, 1,165,2].pack('LSx2Lx16'*3) SendInput.call(3, inputs, 28) endpublic def load_fullscreen_settings buffer = [].pack('x256') section = 'Fullscreen++' filename = './Game.ini' get_option = Proc.new do |key, default_value| l = GetPrivateProfileString.call(section, key, default_value, buffer, buffer.size, filename) buffer[0, l] end @fullscreen = false#get_option.call('Fullscreen' , '0') == '1' @fullscreen_ratio = 1#get_option.call('FullscreenRatio', '0').to_i @windowed_ratio = 1#get_option.call('WindowedRatio' , '1').to_i toggle_vx_fullscreen if Disable_VX_Fullscreen and vx_fullscreen? fullscreen? ? fullscreen_mode : windowed_mode end def save_fullscreen_settings section = 'Fullscreen++' filename = './Game.ini' set_option = Proc.new do |key, value| WritePrivateProfileString.call(section, key, value.to_s, filename) end set_option.call('Fullscreen' , @fullscreen ? '1' : '0') set_option.call('FullscreenRatio', @fullscreen_ratio) set_option.call('WindowedRatio' , @windowed_ratio) end def fullscreen? @fullscreen or vx_fullscreen? end def vx_fullscreen? rect = screen_rect rect.width == 640 and rect.height == 480 end def toggle_fullscreen fullscreen? ? windowed_mode : fullscreen_mode end def toggle_vx_fullscreen windowed_mode if @fullscreen and !vx_fullscreen? inputs = [1,18,0, 1,13,0, 1,13,2, 1,18,2].pack('LSx2Lx16'*4) SendInput.call(4, inputs, 28) zeus_fullscreen_update self.ratio += 0 # refresh window size end def vx_fullscreen_mode return if vx_fullscreen? toggle_vx_fullscreen end def fullscreen_mode return if vx_fullscreen? initialize_fullscreen_rects show_back hide_borders @fullscreen = true self.ratio += 0 # refresh window size end def windowed_mode toggle_vx_fullscreen if vx_fullscreen? initialize_fullscreen_rects hide_back show_borders @fullscreen = false self.ratio += 0 # refresh window size end def toggle_ratio return if vx_fullscreen? self.ratio += 1 end def ratio return 1 if vx_fullscreen? @fullscreen ? @fullscreen_ratio : @windowed_ratio end def ratio=(r) return if vx_fullscreen? initialize_fullscreen_rects r = 0 if r < 0 if @fullscreen @fullscreen_ratio = r w_max, h_max = @fullscreen_rect.width, @fullscreen_rect.height else @windowed_ratio = r w_max = @workarea_rect.width - @borders_size.width h_max = @workarea_rect.height - @borders_size.height end if r == 0 w, h = w_max, w_max * height / width h, w = h_max, h_max * width / height if h > h_max else w, h = width * r, height * r return self.ratio = 0 if w > w_max or h > h_max end resize_window(w, h) #save_fullscreen_settings end def update #release_alt if Disable_VX_Fullscreen and Input.trigger?(Input::ALT) zeus_fullscreen_update toggle_fullscreen if Input.trigger?(Input::F5) toggle_ratio if Input.trigger?(Input::F6) end def resize_screen(width, height) zeus_fullscreen_resize_screen(width, height) self.ratio += 0 # refresh window size endendGraphics.load_fullscreen_settings 
It was the only script I could find to fix the issue, otherwise all players would have to meddle with their Aspect Ratio Scaling, and I did not want to force this on them just to play Fullscreen.

My bad.

It'd be really nice if you had a fix in mind, but I know you only aim to support RTP scripts and I can understand that.

Thank you in any case.

EDIT:

I have made a topic about my issue right here, if anyone is interested.
 
Last edited by a moderator:

Shaz

Veteran
Veteran
Joined
Mar 2, 2012
Messages
39,138
Reaction score
12,413
First Language
English
Primarily Uses
RMMV
Yeah, sorry, I just don't have time to do fixes for different scripts. It would require that I learn what they do and how they do it, and learn it well, or any "fix" I provide would likely be glitchy.
 

morlockhater

Veteran
Veteran
Joined
Feb 26, 2014
Messages
40
Reaction score
157
First Language
English
Primarily Uses
Hi there, I'm using two-tile high characters in my game, and I'm wondering if there's a way to make it so the mouse has a little more wiggle room when clicking on the characters. I realise this may be a little tricky, but it's quite jarring having the option to talk to a character disappear if the mouse is above their waist. Any help or advice would be greatly appreciated, but if there's nothing I can do then I'll just have to make do. Excellent script, it's been a huge help!
 

cabfe

Cool Cat
Veteran
Joined
Jun 13, 2013
Messages
2,334
Reaction score
2,483
First Language
French
Primarily Uses
RMVXA
Hi there, I'm using two-tile high characters in my game, and I'm wondering if there's a way to make it so the mouse has a little more wiggle room when clicking on the characters. I realise this may be a little tricky, but it's quite jarring having the option to talk to a character disappear if the mouse is above their waist. Any help or advice would be greatly appreciated, but if there's nothing I can do then I'll just have to make do. Excellent script, it's been a huge help!
Which version of the script are you using?

It's already been fixed in version 1.10:

"1.10 6 Apr 2014 - Added interaction for sprites higher than 32 pixels tall (now you can click on the top of the sprite)"

Or do you still have this problem?
 

morlockhater

Veteran
Veteran
Joined
Feb 26, 2014
Messages
40
Reaction score
157
First Language
English
Primarily Uses
Which version of the script are you using?

It's already been fixed in version 1.10:

"1.10 6 Apr 2014 - Added interaction for sprites higher than 32 pixels tall (now you can click on the top of the sprite)"

Or do you still have this problem?
I have version 1.10, having trouble finding where in the script it is. Thanks!
 

Lantiz

Biterkid
Veteran
Joined
Dec 29, 2012
Messages
719
Reaction score
1,069
First Language
Portuguese
Primarily Uses
RMMV
Oh yes, you're right.

I've been using Fullscreen++ v2.2 by Zeus81, otherwise Fullscreen mode would look very stretchy from side to side.

# Fullscreen++ v2.2 for VX and VXace by Zeus81# Free for non commercial and commercial use# Licence : http://creativecommons.org/licenses/by-sa/3.0/# Contact : zeusex81@gmail.com# (fr) Manuel d'utilisation : http://pastebin.com/raw.php?i=1TQfMnVJ# (en) User Guide : http://pastebin.com/raw.php?i=EgnWt9ur # Disable ALT+Enter reghotkey = Win32API.new('user32', 'RegisterHotKey', 'LIII', 'I') reghotkey.call(0, 1, 1, 0x0D) $imported ||= {}$imported[:Zeus_Fullscreen] = __FILE__class << Graphics Disable_VX_Fullscreen = false CreateWindowEx = Win32API.new('user32' , 'CreateWindowEx' , 'ippiiiiiiiii', 'i') GetClientRect = Win32API.new('user32' , 'GetClientRect' , 'ip' , 'i') GetDC = Win32API.new('user32' , 'GetDC' , 'i' , 'i') GetSystemMetrics = Win32API.new('user32' , 'GetSystemMetrics' , 'i' , 'i') GetWindowRect = Win32API.new('user32' , 'GetWindowRect' , 'ip' , 'i') FillRect = Win32API.new('user32' , 'FillRect' , 'ipi' , 'i') FindWindow = Win32API.new('user32' , 'FindWindow' , 'pp' , 'i') ReleaseDC = Win32API.new('user32' , 'ReleaseDC' , 'ii' , 'i') SendInput = Win32API.new('user32' , 'SendInput' , 'ipi' , 'i') SetWindowLong = Win32API.new('user32' , 'SetWindowLong' , 'iii' , 'i') SetWindowPos = Win32API.new('user32' , 'SetWindowPos' , 'iiiiiii' , 'i') ShowWindow = Win32API.new('user32' , 'ShowWindow' , 'ii' , 'i') SystemParametersInfo = Win32API.new('user32' , 'SystemParametersInfo' , 'iipi' , 'i') UpdateWindow = Win32API.new('user32' , 'UpdateWindow' , 'i' , 'i') GetPrivateProfileString = Win32API.new('kernel32', 'GetPrivateProfileString' , 'ppppip' , 'i') WritePrivateProfileString = Win32API.new('kernel32', 'WritePrivateProfileString', 'pppp' , 'i') CreateSolidBrush = Win32API.new('gdi32' , 'CreateSolidBrush' , 'i' , 'i') DeleteObject = Win32API.new('gdi32' , 'DeleteObject' , 'i' , 'i') unless method_defined?:)zeus_fullscreen_update) HWND = FindWindow.call('RGSS Player', 0) BackHWND = CreateWindowEx.call(0x08000008, 'Static', '', 0x80000000, 0, 0, 0, 0, 0, 0, 0, 0) alias zeus_fullscreen_resize_screen resize_screen alias zeus_fullscreen_update update endprivate def initialize_fullscreen_rects @borders_size ||= borders_size @fullscreen_rect ||= screen_rect @workarea_rect ||= workarea_rect end def borders_size GetWindowRect.call(HWND, wrect = [0, 0, 0, 0].pack('l4')) GetClientRect.call(HWND, crect = [0, 0, 0, 0].pack('l4')) wrect, crect = wrect.unpack('l4'), crect.unpack('l4') Rect.new(0, 0, wrect[2]-wrect[0]-crect[2], wrect[3]-wrect[1]-crect[3]) end def screen_rect Rect.new(0, 0, GetSystemMetrics.call(0), GetSystemMetrics.call(1)) end def workarea_rect SystemParametersInfo.call(0x30, 0, rect = [0, 0, 0, 0].pack('l4'), 0) rect = rect.unpack('l4') Rect.new(rect[0], rect[1], rect[2]-rect[0], rect[3]-rect[1]) end def hide_borders() SetWindowLong.call(HWND, -16, 0x14000000) end def show_borders() SetWindowLong.call(HWND, -16, 0x14CA0000) end def hide_back() ShowWindow.call(BackHWND, 0) end def show_back ShowWindow.call(BackHWND, 3) UpdateWindow.call(BackHWND) dc = GetDC.call(BackHWND) rect = [0, 0, @fullscreen_rect.width, @fullscreen_rect.height].pack('l4') brush = CreateSolidBrush.call(0) FillRect.call(dc, rect, brush) ReleaseDC.call(BackHWND, dc) DeleteObject.call(brush) end def resize_window(w, h) if @fullscreen x, y, z = (@fullscreen_rect.width-w)/2, (@fullscreen_rect.height-h)/2, -1 else w += @borders_size.width h += @borders_size.height x = @workarea_rect.x + (@workarea_rect.width - w) / 2 y = @workarea_rect.y + (@workarea_rect.height - h) / 2 z = -2 end SetWindowPos.call(HWND, z, x, y, w, h, 0) end def release_alt inputs = [1,18,2, 1,164,2, 1,165,2].pack('LSx2Lx16'*3) SendInput.call(3, inputs, 28) endpublic def load_fullscreen_settings buffer = [].pack('x256') section = 'Fullscreen++' filename = './Game.ini' get_option = Proc.new do |key, default_value| l = GetPrivateProfileString.call(section, key, default_value, buffer, buffer.size, filename) buffer[0, l] end @fullscreen = false#get_option.call('Fullscreen' , '0') == '1' @fullscreen_ratio = 1#get_option.call('FullscreenRatio', '0').to_i @windowed_ratio = 1#get_option.call('WindowedRatio' , '1').to_i toggle_vx_fullscreen if Disable_VX_Fullscreen and vx_fullscreen? fullscreen? ? fullscreen_mode : windowed_mode end def save_fullscreen_settings section = 'Fullscreen++' filename = './Game.ini' set_option = Proc.new do |key, value| WritePrivateProfileString.call(section, key, value.to_s, filename) end set_option.call('Fullscreen' , @fullscreen ? '1' : '0') set_option.call('FullscreenRatio', @fullscreen_ratio) set_option.call('WindowedRatio' , @windowed_ratio) end def fullscreen? @fullscreen or vx_fullscreen? end def vx_fullscreen? rect = screen_rect rect.width == 640 and rect.height == 480 end def toggle_fullscreen fullscreen? ? windowed_mode : fullscreen_mode end def toggle_vx_fullscreen windowed_mode if @fullscreen and !vx_fullscreen? inputs = [1,18,0, 1,13,0, 1,13,2, 1,18,2].pack('LSx2Lx16'*4) SendInput.call(4, inputs, 28) zeus_fullscreen_update self.ratio += 0 # refresh window size end def vx_fullscreen_mode return if vx_fullscreen? toggle_vx_fullscreen end def fullscreen_mode return if vx_fullscreen? initialize_fullscreen_rects show_back hide_borders @fullscreen = true self.ratio += 0 # refresh window size end def windowed_mode toggle_vx_fullscreen if vx_fullscreen? initialize_fullscreen_rects hide_back show_borders @fullscreen = false self.ratio += 0 # refresh window size end def toggle_ratio return if vx_fullscreen? self.ratio += 1 end def ratio return 1 if vx_fullscreen? @fullscreen ? @fullscreen_ratio : @windowed_ratio end def ratio=(r) return if vx_fullscreen? initialize_fullscreen_rects r = 0 if r < 0 if @fullscreen @fullscreen_ratio = r w_max, h_max = @fullscreen_rect.width, @fullscreen_rect.height else @windowed_ratio = r w_max = @workarea_rect.width - @borders_size.width h_max = @workarea_rect.height - @borders_size.height end if r == 0 w, h = w_max, w_max * height / width h, w = h_max, h_max * width / height if h > h_max else w, h = width * r, height * r return self.ratio = 0 if w > w_max or h > h_max end resize_window(w, h) #save_fullscreen_settings end def update #release_alt if Disable_VX_Fullscreen and Input.trigger?(Input::ALT) zeus_fullscreen_update toggle_fullscreen if Input.trigger?(Input::F5) toggle_ratio if Input.trigger?(Input::F6) end def resize_screen(width, height) zeus_fullscreen_resize_screen(width, height) self.ratio += 0 # refresh window size endendGraphics.load_fullscreen_settings 
It was the only script I could find to fix the issue, otherwise all players would have to meddle with their Aspect Ratio Scaling, and I did not want to force this on them just to play Fullscreen.

My bad.

It'd be really nice if you had a fix in mind, but I know you only aim to support RTP scripts and I can understand that.

Thank you in any case.

EDIT:

I have made a topic about my issue right here, if anyone is interested.
I'm using this script and this does not happen to me.

I had an issue on window mode, but that happens when the game resolution is the same or above the desktop resolution.

What is the resolution your game is using, and what is the resolution of your desktop?
 

KevinFrost

KevinFrost91
Veteran
Joined
Jul 19, 2013
Messages
39
Reaction score
7
First Language
English
Primarily Uses
RMMV
First off let me say that I LOVE this script! It's awesome! I do have one question/request. Is it possible to make it so when showing text when you mouse over an event to be able to show variable amounts in real time? So for instance if I were to make a comment saying <Upgrade Farm for \v[1] Gold> It would show "Upgrade Farm For 50 Gold" depending on what the amount of that variable is. It can do those sorts of things in regular message windows, but wasn't sure if it would be possible to do for this script. If there is a way, I'd love to know how! :D
 

Shaz

Veteran
Veteran
Joined
Mar 2, 2012
Messages
39,138
Reaction score
12,413
First Language
English
Primarily Uses
RMMV
What a neat idea! And fairly simple to implement, too.

class Sprite_Mouse < Sprite #-------------------------------------------------------------------------- # * Set Bitmap #-------------------------------------------------------------------------- def set_bitmap(cursor = DEFAULT_ICON, text = nil) if @ignored cursor = DEFAULT_ICON text = nil end if @cursor != cursor || @text != text @cursor = cursor @text = text item_cursor = ICON[cursor] rect = Rect.new(item_cursor % 16 * 24, item_cursor / 16 * 24, 24, 24) if @text.nil? self.bitmap = Bitmap.new(24, 32) self.bitmap.blt(0, 0, Cache.system('Iconset'), rect) else sbs_text = substitute_text(@text) w = @dummy.text_size(sbs_text).width h = @dummy.font.size bitmap = Bitmap.new(26 + w, [32, h+2].max) bitmap.font.size = @dummy.font.size bitmap.font.shadow = true if self.x + 26 + w > Graphics.width bitmap.draw_text(0, 0, w, h, sbs_text) bitmap.blt(w, 0, Cache.system('Iconset'), rect) else bitmap.blt(0, 0, Cache.system('Iconset'), rect) bitmap.draw_text(26, 0, w, h, sbs_text) end self.bitmap = bitmap end end end def substitute_text(text) result = text.to_s.clone result.gsub!(/\\/) { "\e" } result.gsub!(/\e\e/) { "\\" } result.gsub!(/\eV\[(\d+)\]/i) { $game_variables[$1.to_i] } result.gsub!(/\eV\[(\d+)\]/i) { $game_variables[$1.to_i] } result.gsub!(/\eN\[(\d+)\]/i) { actor_name($1.to_i) } result.gsub!(/\eP\[(\d+)\]/i) { party_member_name($1.to_i) } result.gsub!(/\eG/i) { Vocab::currency_unit } result endend
Pop that into a new slot below the mouse script, or just replace the existing method and add the new one.

While testing this I noticed a bit of a glitch in the alignment of the text and the icon on events near the right side of the screen. where there's a large gap between the two. But it's not caused by the above snippet - it's present in the original script too. I'll have to add that to my to-do list (which means I don't know when I'll get time to investigate).
 

KevinFrost

KevinFrost91
Veteran
Joined
Jul 19, 2013
Messages
39
Reaction score
7
First Language
English
Primarily Uses
RMMV
Oh my goodness you are absolutely amazing!! This solved so many graphical issues I was running into in my project because I wasn't sure where I was going to show certain variable numbers. You're awesome!! Thank you so much for this script, and the added snippet! :D :D
 

dax

Veteran
Veteran
Joined
Jul 17, 2015
Messages
46
Reaction score
4
Primarily Uses
apologies if already asked, but is there a way to disable the mouse and re-enable it?

I found   $mouse.enabled = false but I don't know how to tell the game to have the mouse disabled literally when it starts.

Basically, I'd like to have it only when I open a menu...
 
Last edited by a moderator:

dax

Veteran
Veteran
Joined
Jul 17, 2015
Messages
46
Reaction score
4
Primarily Uses
small bump? ;_;

I'd REALLY need at least to disable movement through mouse. So that if you click, nothing happens, it doesn't trigger events.

The best way basically would be that it is only enabled in the main menu...
 

Lantiz

Biterkid
Veteran
Joined
Dec 29, 2012
Messages
719
Reaction score
1,069
First Language
Portuguese
Primarily Uses
RMMV
small bump? ;_;

I'd REALLY need at least to disable movement through mouse. So that if you click, nothing happens, it doesn't trigger events.

The best way basically would be that it is only enabled in the main menu...
try editing or commenting (or maybe removing) the "move_by_input" method, its around line 905... didn't tested myself but i guess it works, not sure if its used somewhere else in the script thou... lazy me :]
 
  • Like
Reactions: dax

Shaz

Veteran
Veteran
Joined
Mar 2, 2012
Messages
39,138
Reaction score
12,413
First Language
English
Primarily Uses
RMMV
dax, please do not bump your topic unless it has been 72 hours later since your last post. You can review our forum rules here. Thank you.
 

dax

Veteran
Veteran
Joined
Jul 17, 2015
Messages
46
Reaction score
4
Primarily Uses
try editing or commenting (or maybe removing) the "move_by_input" method, its around line 905... didn't tested myself but i guess it works, not sure if its used somewhere else in the script thou... lazy me :]
Thanks and no worries, at least I got some help. The script is very long, I tried to check around but couldn't find the right parts and every time I tried it resulted in crashes xD. Was hoping for someone more experienced, and it looks like you're right! I can even still use events!

And sorry Shaz you're right ;_; ... I blame IGMC
 

Lantiz

Biterkid
Veteran
Joined
Dec 29, 2012
Messages
719
Reaction score
1,069
First Language
Portuguese
Primarily Uses
RMMV
Thanks and no worries, at least I got some help. The script is very long, I tried to check around but couldn't find the right parts and every time I tried it resulted in crashes xD. Was hoping for someone more experienced, and it looks like you're right! I can even still use events!

And sorry Shaz you're right ;_; ... I blame IGMC
Awesome!

Now that is what I would call a "lucky strike".
 

Users Who Are Viewing This Thread (Users: 0, Guests: 1)

Latest Threads

Latest Posts

Latest Profile Posts

BCj
Ew, why does my blogpost on the rpgmaker.net site look like a garbled mess? Are html codes disabled or something?
I feel that I should cut down on my order queue so I can get some more time for my projects, its been quite a longggg while since I worked on them LOL
I friend of mine insisted on practicing dubbing things with him... and its quite funny, yet, it really takes a huge amount of practice!
Gotta save this for my next thread later...
Finsh all of the walking dead game in a week, such an amazing emotional trip

Forum statistics

Threads
97,877
Messages
947,570
Members
129,111
Latest member
mariominestrone
Top