Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- class Window_Message < Window_Selectable
- #--------------------------------------------------------------------------
- # called method: convert_regexp
- #--------------------------------------------------------------------------
- alias iex_convert_special_characters convert_special_characters unless $@
- def convert_special_characters(*args)
- @overevent = nil
- iex_convert_special_characters(*args)
- @text.scan(/\\P\[(.*?)\]/i) ; @overevent = $1.to_i unless $1.to_s == ""
- @text.gsub!(/\\P\[(.*?)\]/i) { "" }
- end
- alias iex_wm_reset_window reset_window unless $@
- def reset_window
- unless @overevent != nil and $scene.is_a?(Scene_Map)
- iex_setWindowXY(0, 0)
- end
- iex_wm_reset_window
- if @overevent != nil and $scene.is_a?(Scene_Map)
- case @overevent
- when -1
- iex_setWindowXY($game_map.events[$game_map.interpreter.last_eventId])
- when 0
- iex_setWindowXY($game_player)
- else
- iex_setWindowXY($game_map.events[@overevent])
- end
- end
- end
- def iex_setWindowXY(obj, y = nil)
- calc_height = 56
- calc_height += 64 unless $game_message.face_name.empty?
- add_w = 32
- add_w = 112 unless $game_message.face_name.empty?
- if obj.is_a?(Game_Character)
- self.width = self.contents.text_size(@text).width + 96 + add_w
- self.height = calc_height #56
- subx = 0 ; suby = 0
- subx = (self.width / 2) if obj.screen_x < Graphics.width - (self.width / 2)
- suby = self.height+40 if obj.screen_y > 96
- self.x = obj.screen_x - subx ; self.y = obj.screen_y - suby
- create_contents
- else
- self.x = obj.to_i ; self.y = y.to_i
- end
- end
- #--------------------------------------------------------------------------
- # alias method: new_page
- #--------------------------------------------------------------------------
- alias iex_new_page_cms new_page unless $@
- def new_page
- iex_new_page_cms
- self.contents.font.size = 18 #Font.default_size
- end
- end
- class Game_Interpreter
- def last_eventId ; return @event_id end
- end
Advertisement
Add Comment
Please, Sign In to add comment