Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
 Mog Menu script: help me stop the crazy picture movement during transitions
#1
Question 
Hello helpful people! I'm so happy to have found a community that is still active with RMXP!

So, I've been using Mog Menu with a project, and all is going well, with one exception: when I exit out of my shop or item menus the script does some crazy stretching and moving with my menu pictures in addition to the standard transition I have assigned. I've experimented as much as I know how to try and eliminate the effect, but I've had no luck.

Here are the relevant scripts.

Scene Item:
Code:
#_______________________________________________________________________________
# MOG Scene Item Laura V1.2            
#_______________________________________________________________________________
# By Moghunter  
# http://www.atelier-rgss.com
#_______________________________________________________________________________
module MOG
#Transition Time.
MNIT = 20
#Transition Type(Name).
MNITT = "Aztec"  
end
$mogscript = {} if $mogscript == nil
$mogscript["menu_laura"] = true
###############
# Window_Base #
###############
class Window_Base < Window
def nada
face = RPG::Cache.picture("")
end    
def drw_face(actor,x,y)
face = RPG::Cache.picture(actor.name + "_fc") rescue nada
cw = face.width
ch = face.height
src_rect = Rect.new(0, 0, cw, ch)
self.contents.blt(x , y - ch, face, src_rect)    
end  
def draw_maphp3(actor, x, y)
back = RPG::Cache.picture("BAR0")    
cw = back.width  
ch = back.height
src_rect = Rect.new(0, 0, cw, ch)    
self.contents.blt(x + 65, y - ch + 30, back, src_rect)
meter = RPG::Cache.picture("HP_Bar")    
cw = meter.width  * actor.hp / actor.maxhp
ch = meter.height
src_rect = Rect.new(0, 0, cw, ch)
self.contents.blt(x + 65, y - ch + 30, meter, src_rect)
text = RPG::Cache.picture("HP_Tx")    
cw = text.width  
ch = text.height
src_rect = Rect.new(0, 0, cw, ch)
self.contents.blt(x + 35, y - ch + 30, text, src_rect)
self.contents.font.color = Color.new(0,0,0,255)
self.contents.draw_text(x + 81, y - 1, 48, 32, actor.hp.to_s, 2)
self.contents.font.color = Color.new(255,255,255,255)
self.contents.draw_text(x + 80, y - 2, 48, 32, actor.hp.to_s, 2)    
end  
def draw_mapsp3(actor, x, y)
back = RPG::Cache.picture("BAR0")    
cw = back.width  
ch = back.height
src_rect = Rect.new(0, 0, cw, ch)    
self.contents.blt(x + 65, y - ch + 30, back, src_rect)
meter = RPG::Cache.picture("SP_Bar")    
cw = meter.width  * actor.sp / actor.maxsp
ch = meter.height
src_rect = Rect.new(0, 0, cw, ch)
self.contents.blt(x + 65, y - ch + 30, meter, src_rect)
text = RPG::Cache.picture("SP_Tx")    
cw = text.width  
ch = text.height
src_rect = Rect.new(0, 0, cw, ch)
self.contents.blt(x + 35, y - ch + 30, text, src_rect)
self.contents.font.color = Color.new(0,0,0,255)
self.contents.draw_text(x + 81, y - 1, 48, 32, actor.sp.to_s, 2)
self.contents.font.color = Color.new(255,255,255,255)
self.contents.draw_text(x + 80, y - 2, 48, 32, actor.sp.to_s, 2)    
end  
def draw_mexp_it(actor, x, y)
lv_tx = RPG::Cache.picture("LV_tx")
cw = lv_tx.width
ch = lv_tx.height
src_rect = Rect.new(0, 0, cw, ch)
self.contents.blt(x + 60 , y - ch + 32, lv_tx, src_rect)
self.contents.font.color = Color.new(0,0,0,255)
self.contents.draw_text(x + 101, y + 5, 24, 32, actor.level.to_s, 1)
self.contents.font.color = Color.new(255,255,255,255)
self.contents.draw_text(x + 100, y + 4, 24, 32, actor.level.to_s, 1)
end
def draw_actor_state_it(actor, x, y, width = 80)
text = make_battler_state_text(actor, width, true)
self.contents.font.color = actor.hp == 0 ? knockout_color : color.new(80, 220, 60, 255)
self.contents.draw_text(x, y, width, 32, text,1)
end
end
######################
# Window_Target_Item #
######################
class Window_Target_Item < Window_Selectable
 def initialize
   super(0, 130, 280, 300) #third was 280
   self.contents = Bitmap.new(width - 32, height - 32)
   self.contents.font.name = "OCR A Extended"
   self.z += 10
   @item_max = $game_party.actors.size
   refresh
 end
 def refresh
   self.contents.clear
   for i in 0...$game_party.actors.size
     x = 0 #was 4
     y = i * 65
     actor = $game_party.actors[i]
     drw_face(actor,x - 5,y + 55) # was only x
     if $mogscript["TP_System"] == true
     draw_actor_tp(actor, x + 160, y + 27 ,4)
     else  
     draw_mexp_it(actor, x + 102, y + 25 )
     end
     draw_actor_state_it(actor, x + 156, y - 2 ) #was x + 165
     draw_maphp3(actor, x + 12, y + 0) # 12s were 20s
     draw_mapsp3(actor, x + 12, y + 32)
   end
 end
 def update_cursor_rect
   if @index <= -2
     self.cursor_rect.set(-8, (@index + 12) * 65, self.width - 32, 60) #-10 was 0
   elsif @index == -1
     self.cursor_rect.set(-8, 2, self.width - 32, @item_max * 64 )
   else
     self.cursor_rect.set(-8, @index * 65 + 2, self.width - 32, 60)
   end
 end
end
############
# Type_Sel #
############
class Type_Sel < Window_Base
 attr_reader   :index                    
 attr_reader   :help_window            
 def initialize(x, y, width, height)
   super(x, y, width, height)
   @item_max = 1
   @column_max = 1
   @index = -1
 end
 def index=(index)
   @index = index
 end
 def row_max
   return (@item_max + @column_max - 1) / @column_max
 end
 def top_row
   return self.oy / 32
 end
 def top_row=(row)
   if row < 0
     row = 0
   end
   if row > row_max - 1
     row = row_max - 1
   end
   self.oy = row * 32
 end
 def page_row_max
   return (self.height - 32) / 32
 end
 def page_item_max
   return page_row_max * @column_max
 end
 def update
   super
   if self.active and @item_max > 0 and @index >= 0
     if Input.repeat?(Input::RIGHT)
       if (@column_max == 1 and Input.trigger?(Input::RIGHT)) or
          @index < @item_max - @column_max
         $game_system.se_play($data_system.cursor_se)
         @index = (@index + @column_max) % @item_max
       end
     end
     if Input.repeat?(Input::LEFT)
       if (@column_max == 1 and Input.trigger?(Input::LEFT)) or
          @index >= @column_max
         $game_system.se_play($data_system.cursor_se)
         @index = (@index - @column_max + @item_max) % @item_max
       end
     end
   end
 end
end
###############
# Window_Type #
###############
class Window_Type < Type_Sel
 def initialize
   super(0, 0, 0, 0)
   @item_max = 3
   self.index = 0
 end
end
##################
# Window_Item_Ex #
##################
class Window_Item_Ex < Window_Selectable
 def initialize
   super(250, 50, 400, 350)#first was 250 third was 295
   @column_max = 1
   refresh
   self.index = 0
   if $game_temp.in_battle
     self.y = 64
     self.height = 256
     self.back_opacity = 160
   end
 end
 def item
   return @data[self.index]
 end
 def refresh
   if self.contents != nil
     self.contents.dispose
     self.contents = nil
   end
   @data = []
   for i in 1...$data_items.size
     if $game_party.item_number(i) > 0
       @data.push($data_items[i])
     end
   end
   @item_max = @data.size
   if @item_max > 0
     self.contents = Bitmap.new(width - 32, row_max * 32)
     for i in 0...@item_max
       draw_item(i)
     end
   end
 end
 def draw_item(index)
   item = @data[index]
   case item
   when RPG::Item
     number = $game_party.item_number(item.id)
   end
   if item.is_a?(RPG::Item) and
      $game_party.item_can_use?(item.id)
     self.contents.font.color = menu_color
   else
     self.contents.font.color = disabled_color
   end
   x = 46 + index % 1 * (288 + 32) #first num was 4
   y = index / 1 * 32
   rect = Rect.new(x, y, self.width / @column_max - 32, 32)
   self.contents.fill_rect(rect, Color.new(0, 0, 0, 0))
   self.contents.font.name = "OCR A Extended"    
   bitmap = RPG::Cache.icon(item.icon_name)
   opacity = self.contents.font.color == menu_color ? 255 : 128    
   self.contents.blt(x, y + 4, bitmap, Rect.new(46, 0, 24, 24), opacity) #first was 0
   self.contents.draw_text(x + 28, y, 190, 32, item.name, 0)
   self.contents.draw_text(x + 215, y, 16, 32, ":", 1)
   self.contents.draw_text(x + 230, y, 24, 32, number.to_s, 2)
 end
 def update_help
   @help_window.set_text(self.item == nil ? "" : self.item.description)
 end
end
#################
# Window_Weapon #
#################
class Window_Weapon < Window_Selectable
 def initialize
   super(250, 50, 400, 350)
   @column_max = 1
   refresh
   self.index = 0
    if $game_temp.in_battle
     self.y = 64
     self.height = 256
     self.back_opacity = 160
   end
 end
 def item
   return @data[self.index]
 end
 def refresh
   if self.contents != nil
     self.contents.dispose
     self.contents = nil
   end
   @data = []
     for i in 1...$data_weapons.size
       if $game_party.weapon_number(i) > 0
         @data.push($data_weapons[i])
       end
     end
   @item_max = @data.size
   if @item_max > 0
     self.contents = Bitmap.new(width - 32, row_max * 32)
     for i in 0...@item_max
       draw_item(i)
     end
   end
 end
 def draw_item(index)
   item = @data[index]
   case item
   when RPG::Weapon
     number = $game_party.weapon_number(item.id)
   end
   if item.is_a?(RPG::Item) and
      $game_party.item_can_use?(item.id)
     self.contents.font.color = color.new(80, 220, 60, 255)
   else
     self.contents.font.color = disabled_color
   end
   x = 46 + index % 1 * (288 + 32)
   y = index / 1 * 32
   rect = Rect.new(x, y, self.width / @column_max - 32, 32)
   self.contents.fill_rect(rect, Color.new(0, 0, 0, 0))
   self.contents.font.name = "OCR A Extended"    
   bitmap = RPG::Cache.icon(item.icon_name)
   opacity = self.contents.font.color == menu_color ? 255 : 128    
   self.contents.blt(x, y + 4, bitmap, Rect.new(46, 0, 24, 24), opacity)
   self.contents.draw_text(x + 28, y, 190, 32, item.name, 0)
   self.contents.draw_text(x + 215, y, 16, 32, ":", 1)
   self.contents.draw_text(x + 230, y, 24, 32, number.to_s, 2)
 end
 def update_help
   @help_window.set_text(self.item == nil ? "" : self.item.description)
 end
end
################
# Window_Armor #
################
class Window_Armor < Window_Selectable
 def initialize
   super(250, 50, 400, 350)
   @column_max = 1
   refresh
   self.index = 0
   if $game_temp.in_battle
     self.y = 64
     self.height = 256
     self.back_opacity = 160
   end
 end
 def item
   return @data[self.index]
 end
 def refresh
   if self.contents != nil
     self.contents.dispose
     self.contents = nil
   end
   @data = []
     for i in 1...$data_armors.size
       if $game_party.armor_number(i) > 0
         @data.push($data_armors[i])
       end
     end
   @item_max = @data.size
   if @item_max > 0
     self.contents = Bitmap.new(width - 32, row_max * 32)
     for i in 0...@item_max
       draw_item(i)
     end
   end
 end
 def draw_item(index)
   item = @data[index]
   case item
   when RPG::Armor
     number = $game_party.armor_number(item.id)
   end
   if item.is_a?(RPG::Item) and
      $game_party.item_can_use?(item.id)
     self.contents.font.color = color.new(80, 220, 60, 255)
   else
     self.contents.font.color = disabled_color
   end
   x = 46 + index % 1 * (288 + 32)
   y = index / 1 * 32
   rect = Rect.new(x, y, self.width / @column_max - 32, 32)
   self.contents.fill_rect(rect, Color.new(0, 0, 0, 0))
   self.contents.font.name = "OCR A Extended"    
   bitmap = RPG::Cache.icon(item.icon_name)
   opacity = self.contents.font.color == menu_color ? 255 : 128    
   self.contents.blt(x, y + 4, bitmap, Rect.new(46, 0, 24, 24), opacity)
   self.contents.draw_text(x + 28, y, 190, 32, item.name, 0)
   self.contents.draw_text(x + 215, y, 16, 32, ":", 1)
   self.contents.draw_text(x + 230, y, 24, 32, number.to_s, 2)
 end
 def update_help
   @help_window.set_text(self.item == nil ? "" : self.item.description)
 end
end
##############
# Scene_Item #
##############
class Scene_Item
 def main
   @back = Plane.new
   @back.bitmap = RPG::Cache.picture("MN_BK_FILE")
   @back.z = 100
   @item_lay = Sprite.new
   @item_lay.bitmap = RPG::Cache.picture("Item_lay")
   @item_lay.z = 100
   @item_com = Sprite.new
   @item_com.bitmap = RPG::Cache.picture("Item_com01")
   @item_com.z = 100
   @type = Window_Type.new
   @type.opacity = 0
   @type.visible = false    
   @help_window = Window_Help.new
   @help_window.y = 405
   @item_window = Window_Item_Ex.new
   @item_window.help_window = @help_window
   @item_window.visible = true
   @item_window.active = true
   @weapon_window = Window_Weapon.new
   @weapon_window.help_window = @help_window
   @weapon_window.visible = false
   @weapon_window.active = true
   @armor_window = Window_Armor.new
   @armor_window.help_window = @help_window
   @armor_window.visible = false
   @armor_window.active = true    
   @target_window = Window_Target_Item.new
   @target_window.x = -300 ###was -300
   @target_window.active = false
   @help_window.opacity = 0 ###was 0
   @help_window.x = -200 ###was -200
   @help_window.contents_opacity = 0    
   @item_window.opacity = 0 ###was 0
   @weapon_window.opacity = 0 ###was 0
   @armor_window.opacity = 0 ###was 0
   @target_window.opacity = 0 ###was 0  
   @weapon_window.x = 640
   @armor_window.x = 640
   @item_window.x = 640  
   @weapon_window.contents_opacity = 0 ###was 0
   @armor_window.contents_opacity = 0 ###was 0
   @item_window.contents_opacity = 0 ###was 0    
   Graphics.transition(MOG::MNIT, "Graphics/Transitions/" + MOG::MNITT)
   loop do
     Graphics.update
     Input.update
     update
     if $scene != self
       break
     end
   end
   for i in 0..30
   @weapon_window.x = 20 ###was += 20
   @armor_window.x = 20 ###was += 20
   @item_window.x = 20  ###was += 20
   @weapon_window.contents_opacity -= 0 ###was 15
   @armor_window.contents_opacity -= 0 ###was 15
   @item_window.contents_opacity -= 0  ###was 15  
   @item_lay.zoom_x += 0.2
   @item_lay.opacity -= 15
   @item_com.zoom_y += 0.2
   @item_com.opacity -= 0 ###was 15
   @target_window.x = 15 ###was -= 15
   @help_window.contents_opacity -= 0 ###was 15
   @back.opacity -= 255 #new line
   @back.oy -= 1
   Graphics.update  
   end  
   Graphics.freeze
   @help_window.dispose
   @item_window.dispose
   @weapon_window.dispose
   @armor_window.dispose
   @target_window.dispose
   @item_lay.dispose
   @back.dispose
   @item_com.dispose
   @type.dispose
 end
 def update
   if @target_window.active == true
      @target_window.visible = true
   if @target_window.x < 20 ###was 0
      @target_window.x = 20 ###was += 20
   elsif @target_window.x >= 20 ###was 0
      @target_window.x = 20      
   end  
   else
   if @target_window.x > -300
      @target_window.x -= 20
   elsif @target_window.x >= -300
      @target_window.x = -300
      @target_window.visible = false
   end
   end    
   if @help_window.x < 0
   @help_window.x = 10 ###was += 10
   @help_window.contents_opacity += 0 ###was 15  
   elsif @help_window.x >= 0
   @help_window.x = 0
   @help_window.contents_opacity = 255    
   end
   if @item_window.x > 250
   @weapon_window.x = 20 ###was -= 20
   @armor_window.x = 20 ###was -= 20
   @item_window.x = 20 ###was -= 20  
   @weapon_window.contents_opacity += 0 ###was 15
   @armor_window.contents_opacity += 0
   @item_window.contents_opacity += 0    
   elsif  @item_window.x <= 250
   @weapon_window.x = 250
   @armor_window.x = 250
   @item_window.x = 250  
   @weapon_window.contents_opacity = 250
   @armor_window.contents_opacity = 250
   @item_window.contents_opacity = 250      
   end
   if @target_window.active == false
   if Input.trigger?(Input::RIGHT) or Input.trigger?(Input::LEFT) or
      Input.press?(Input::RIGHT) or  Input.press?(Input::LEFT)
   @weapon_window.x = 640
   @armor_window.x = 640
   @item_window.x = 640      
   @weapon_window.contents_opacity = 0
   @armor_window.contents_opacity = 0
   @item_window.contents_opacity = 0      
   end
   if Input.trigger?(Input.dir4) or Input.trigger?(Input.dir4) or
      Input.trigger?(Input::L) or Input.trigger?(Input::R)      
   @help_window.x = -0 ###was -200
   @help_window.contents_opacity = 0
   end  
   end
   @back.oy -= 1
   @help_window.update
   @item_window.update
   @weapon_window.update
   @armor_window.update
   @target_window.update
   @type.update
   case @type.index
   when 0
   @item_com.bitmap = RPG::Cache.picture("Item_com01")
   if @target_window.active == true
     update_target
     @item_window.active = false  
     @type.active = false
     return
   else  
     @item_window.active = true
     @type.active = true
   end    
   @weapon_window.active = false
   @armor_window.active = false
   @item_window.visible = true
   @weapon_window.visible = false
   @armor_window.visible = false    
   when 1
   @item_com.bitmap = RPG::Cache.picture("Item_com02")
   @item_window.active = false
   @weapon_window.active = true
   @armor_window.active = false
   @item_window.visible = false
   @weapon_window.visible = true
   @armor_window.visible = false    
   when 2
   @item_com.bitmap = RPG::Cache.picture("Item_com03")  
   @item_window.active = false
   @weapon_window.active = false
   @armor_window.active = true
   @item_window.visible = false
   @weapon_window.visible = false
   @armor_window.visible = true
   end
   if @item_window.active
     update_item
     return
   end
   if @weapon_window.active
     update_weapon
     return
   end
   if @armor_window.active
     update_armor
     return
   end
 end
 def update_weapon
   if Input.trigger?(Input::B)
     $game_system.se_play($data_system.cancel_se)
     $scene = Scene_Menu.new(0)
     return
   end
 end
 def update_armor
   if Input.trigger?(Input::B)
     $game_system.se_play($data_system.cancel_se)
     $scene = Scene_Menu.new(0)
     return
   end
 end
 def update_item
   if Input.trigger?(Input::B)
     $game_system.se_play($data_system.cancel_se)
     $scene = Scene_Menu.new(0)
     return
   end
   if Input.trigger?(Input::C)
     @item = @item_window.item
     unless @item.is_a?(RPG::Item)
       $game_system.se_play($data_system.buzzer_se)
       return
     end
     unless $game_party.item_can_use?(@item.id)
       $game_system.se_play($data_system.buzzer_se)
       return
     end
     $game_system.se_play($data_system.decision_se)
     if @item.scope >= 3
       @item_window.active = false
       @target_window.x = (@item_window.index + 1) % 1 * 304
       @target_window.active = true
       @target_window.x = -0 ###was -350              
       if @item.scope == 4 || @item.scope == 6
         @target_window.index = -1
       else
         @target_window.index = 0
       end
     else
       if @item.common_event_id > 0
         $game_temp.common_event_id = @item.common_event_id
         $game_system.se_play(@item.menu_se)
         if @item.consumable
           $game_party.lose_item(@item.id, 1)
           @item_window.draw_item(@item_window.index)
         end
         $scene = Scene_Map.new
         return
       end
     end
     return
   end
 end
 def update_target
   if Input.trigger?(Input::B)
     $game_system.se_play($data_system.cancel_se)
     unless $game_party.item_can_use?(@item.id)
       @item_window.refresh
     end
     @item_window.active = true
     @target_window.active = false
     return
   end
   if Input.trigger?(Input::C)
     if $game_party.item_number(@item.id) == 0
       $game_system.se_play($data_system.buzzer_se)
       return
     end
     if @target_window.index == -1
       used = false
       for i in $game_party.actors
         used |= i.item_effect(@item)
       end
     end
     if @target_window.index >= 0
       target = $game_party.actors[@target_window.index]
       used = target.item_effect(@item)
     end
     if used
       $game_system.se_play(@item.menu_se)
       if @item.consumable
         $game_party.lose_item(@item.id, 1)
         @item_window.draw_item(@item_window.index)
       end
       @target_window.refresh
       if $game_party.all_dead?
         $scene = Scene_Gameover.new
         return
       end
       if @item.common_event_id > 0
         $game_temp.common_event_id = @item.common_event_id
         $scene = Scene_Map.new
         return
       end
     end
     unless used
       $game_system.se_play($data_system.buzzer_se)
     end
     return
   end
 end
end

Scene Shop:
Code:
#_______________________________________________________________________________
# MOG Scene Shop Felicia V1.4            
#_______________________________________________________________________________
# By Moghunter    
# http://www.atelier-rgss.com
#_______________________________________________________________________________
module MOG
#Transition Time.
MNSHPT= 30
#Transition Type (Name)
MNSHPTT= "Aztec"
end
$mogscript = {} if $mogscript == nil
$mogscript["menu_shop"] = true
###############
# Window_Base #
###############
class Window_Base < Window
def draw_item_name_ex(item, x, y)
if item == nil
return
end
bitmap = RPG::Cache.icon(item.icon_name)
self.contents.blt(x, y + 4, bitmap, Rect.new(0, 0, 24, 24))
self.contents.font.color = normal_color
self.contents.draw_text(x + 28, y, 150, 32, item.name)
end
def nada
face = RPG::Cache.picture("")
end  
def drw_face(actor,x,y)
face = RPG::Cache.picture(actor.name + "_fc") rescue nada
cw = face.width
ch = face.height
src_rect = Rect.new(0, 0, cw, ch)
self.contents.blt(x , y - ch, face, src_rect) #was no -3 to begin  
end    
end
################
# Win_Shop_Sel #
################
class Win_Shop_Sel < Window_Base
 attr_reader   :index                  
 def initialize(x, y, width, height)
   super(x, y, width, height)
   @item_max = 1
   @column_max = 1
   @index = -1
 end
 def index=(index)
   @index = index
   update_cursor_rect
 end
 def row_max
   return (@item_max + @column_max - 1) / @column_max
 end
 def top_row
   return self.oy / 32
 end
 def top_row=(row)
   if row < 0
     row = 0
   end
   if row > row_max - 1
     row = row_max - 1
   end
   self.oy = row * 32
 end
 def page_row_max
   return (self.height - 32) / 32
 end
 def page_item_max
   return page_row_max * @column_max
 end
 def update_cursor_rect
   if @index < 0
     self.cursor_rect.empty
     return
   end
   row = @index / @column_max
   if row < self.top_row
     self.top_row = row
   end
   if row > self.top_row + (self.page_row_max - 1)
     self.top_row = row - (self.page_row_max - 1)
   end
   cursor_width = self.width / @column_max - 32
   x = @index % @column_max * 80
   y = @index / @column_max * 32 - self.oy
   self.cursor_rect.set(x, y, 32, 32)
 end
 def update
   super
   if self.active and @item_max > 0 and @index >= 0
     if Input.repeat?(Input::RIGHT)
       if @column_max >= 2 and @index < @item_max - 1
         $game_system.se_play($data_system.cursor_se)
         @index += 1
       end
     end
     if Input.repeat?(Input::LEFT)
       if @column_max >= 2 and @index > 0
         $game_system.se_play($data_system.cursor_se)
         @index -= 1
       end
     end      
   end
   update_cursor_rect
 end
end
######################
# Window_ShopCommand #
######################
class Window_ShopCommand < Win_Shop_Sel
 def initialize
   super(58, 68, 230, 64)
   self.contents = Bitmap.new(width - 32, height - 32)
   @item_max = 3
   @column_max = 3
   @commands = ["", "", ""]
   self.index = 0
 end
end
##################
# Window_ShopBuy #
##################
class Window_ShopBuy < Window_Selectable
 def initialize(shop_goods)
   super(-10, 180, 310, 225)
   @shop_goods = shop_goods
   refresh
   self.index = 0
 end
 def item
   return @data[self.index]
 end
 def refresh
   if self.contents != nil
     self.contents.dispose
     self.contents = nil
   end
   @data = []
   for goods_item in @shop_goods
     case goods_item[0]
     when 0
       item = $data_items[goods_item[1]]
     when 1
       item = $data_weapons[goods_item[1]]
     when 2
       item = $data_armors[goods_item[1]]
     end
     if item != nil
       @data.push(item)
     end
   end
   @item_max = @data.size
   if @item_max > 0
     self.contents = Bitmap.new(width - 32, row_max * 32)
     for i in 0...@item_max
       draw_item(i)
     end
   end
 end
 def draw_item(index)
   self.contents.font.name = "OCR A Extended"  
   self.contents.font.bold = false
   self.contents.font.size = 16
   item = @data[index]
   case item
   when RPG::Item
     number = $game_party.item_number(item.id)
   when RPG::Weapon
     number = $game_party.weapon_number(item.id)
   when RPG::Armor
     number = $game_party.armor_number(item.id)
   end
   x = 4
   y = index * 32    
   if item.price <= $game_party.gold and number < 99
     self.contents.font.color = normal_color
   else
     self.contents.font.color = disabled_color
   end    
   rect = Rect.new(x, y, self.width - 32, 32)
   self.contents.fill_rect(rect, Color.new(0, 0, 0, 0))
   bitmap = RPG::Cache.icon(item.icon_name)
   opacity = self.contents.font.color == normal_color ? 255 : 128
   self.contents.blt(x, y + 4, bitmap, Rect.new(0, 0, 24, 24), opacity)
   self.contents.draw_text(x + 28, y, 150, 32, item.name, 0)
   self.contents.font.color = Color.new(50,250,150,255)
   self.contents.draw_text(x + 120, y, 88, 32, "", 1)      
   if item.price <= $game_party.gold
   if number < 99
   self.contents.font.color = Color.new(200,200,50,255)
   else
   self.contents.font.color = disabled_color
   end  
   else
   self.contents.font.color = Color.new(250,100,50,255)
   end        
   self.contents.draw_text(x + 180, y, 88, 32, item.price.to_s, 2)
 end
 def update_help
   @help_window.set_text(self.item == nil ? "" : self.item.description)
 end
end
###################
# Window_ShopSell #
###################
class Window_ShopSell < Window_Selectable
 def initialize
   super(-10, 180, 305, 225)
   @column_max = 1
   refresh
   self.index = 0
 end
 def item
   return @data[self.index]
 end
 def refresh
   if self.contents != nil
     self.contents.dispose
     self.contents = nil
   end
   @data = []
   for i in 1...$data_items.size
     if $game_party.item_number(i) > 0
       @data.push($data_items[i])
     end
   end
   for i in 1...$data_weapons.size
     if $game_party.weapon_number(i) > 0
       @data.push($data_weapons[i])
     end
   end
   for i in 1...$data_armors.size
     if $game_party.armor_number(i) > 0
       @data.push($data_armors[i])
     end
   end
   @item_max = @data.size
   if @item_max > 0
     self.contents = Bitmap.new(width - 32, row_max * 32)
     for i in 0...@item_max
       draw_item(i)
     end
   end
 end
 def draw_item(index)
   item = @data[index]
   case item
   when RPG::Item
     number = $game_party.item_number(item.id)
   when RPG::Weapon
     number = $game_party.weapon_number(item.id)
   when RPG::Armor
     number = $game_party.armor_number(item.id)
   end
   if item.price > 0
     self.contents.font.color = normal_color
   else
     self.contents.font.color = disabled_color
   end
   self.contents.font.name = "OCR A Extended"
   self.contents.font.size = 16 ################################
   x = 4 + index % 1 * (288 + 32)
   y = index / 1 * 32
   rect = Rect.new(x, y, self.width / @column_max - 32, 32)
   self.contents.fill_rect(rect, Color.new(0, 0, 0, 0))
   bitmap = RPG::Cache.icon(item.icon_name)
   opacity = self.contents.font.color == normal_color ? 255 : 128
   self.contents.blt(x, y + 4, bitmap, Rect.new(0, 0, 24, 24), opacity)
   self.contents.draw_text(x + 28, y, 150, 32, item.name, 0)
   
   self.contents.draw_text(x + 230, y, 16, 32, ":", 1)
   self.contents.draw_text(x + 240, y, 24, 32, number.to_s, 2)
 end
 def update_help
   @help_window.set_text(self.item == nil ? "" : self.item.description)
 end
end
#####################
# Window_ShopNumber #
#####################
class Window_ShopNumber < Window_Base
 def initialize
   super(-10, 180, 310, 225)
   self.contents = Bitmap.new(width - 32, height - 32)
   @item = nil
   @max = 1
   @price = 0
   @number = 1
 end
 def set(item, max, price)
   @item = item
   @max = max
   @price = price
   @number = 1
   refresh
 end
 def number
   return @number
 end
 def refresh
   self.contents.clear
   self.contents.font.name = "OCR A Extended"
   self.contents.font.bold = true
   self.contents.font.size = 16 ################################
   draw_item_name_ex(@item, 4, 66)
   self.contents.font.color = Color.new(80,220,60,255)    
   self.contents.draw_text(185, 66, 32, 32, "x")
   self.contents.font.color = normal_color    
   self.contents.draw_text(208, 66, 24, 32, @number.to_s, 2)
   self.cursor_rect.set(304, 66, 32, 32)
   total_price = @price * @number
   cx = contents.text_size("Coin").width    
   self.contents.font.color = Color.new(80,220,60,255)
   self.contents.draw_text(4, 160, 228-2, 32, total_price.to_s, 2)
   self.contents.font.color = Color.new(80,220,60,255)
   self.contents.draw_text(86, 160, 88, 32, "Coin", 1)      
 end
 def update
   super
   if self.active
     if Input.repeat?(Input::RIGHT) and @number < @max
       $game_system.se_play($data_system.cursor_se)
       @number += 1
       refresh
     end
     if Input.repeat?(Input::LEFT) and @number > 1
       $game_system.se_play($data_system.cursor_se)
       @number -= 1
       refresh
     end
     if Input.repeat?(Input::UP) and @number < @max
       $game_system.se_play($data_system.cursor_se)
       @number = [@number + 10, @max].min
       refresh
     end
     if Input.repeat?(Input::DOWN) and @number > 1
       $game_system.se_play($data_system.cursor_se)
       @number = [@number - 10, 1].max
       refresh
     end
   end
 end
end
#####################
# Window_ShopStatus #
#####################
class Window_ShopStatus < Window_Base
 def initialize
   super(290, 80, 640, 480)
   self.contents = Bitmap.new(width - 32, height - 32)
   @item = nil
   refresh
 end
 def refresh
   self.contents.clear
   self.contents.font.name = "OCR A Extended"
   self.contents.font.size = 16
   if @item == nil
     return
   end
   if $mogscript["Item_Limit"] == true
case @item
when RPG::Item
number = $game_party.item_number(@item.id)
item_max = MOG::ITEM_LIMIT[@item.id]
when RPG::Weapon
number = $game_party.weapon_number(@item.id)
item_max = MOG::WEAPON_LIMIT[@item.id]  
when RPG::Armor
number = $game_party.armor_number(@item.id)
item_max = MOG::ARMOR_LIMIT[@item.id]
end
self.contents.font.color = system_color
self.contents.draw_text(206, 0, 200, 32, "Stock")
self.contents.font.color = system_color
if item_max != nil
self.contents.draw_text(300, 0, 80, 32, number.to_s + " / " + item_max.to_s, 2)
else
max_limit = MOG::DEFAULT_LIMIT
self.contents.draw_text(300, 0, 80, 32, number.to_s + " / " + max_limit.to_s, 2)
end    
   else
   case @item
   when RPG::Item
     number = $game_party.item_number(@item.id)
   when RPG::Weapon
     number = $game_party.weapon_number(@item.id)
   when RPG::Armor
     number = $game_party.armor_number(@item.id)
   end
   self.contents.font.color = system_color
   self.contents.draw_text(231, 0, 200, 32, "In Stock")
   self.contents.font.color = system_color
   self.contents.draw_text(192, 0, 32, 32, number.to_s, 2)
   end
   if @item.is_a?(RPG::Item)
     return
   end
   for i in 0...$game_party.actors.size
     actor = $game_party.actors[i]
     if actor.equippable?(@item)
       self.contents.font.color = normal_color
     else
       self.contents.font.color = disabled_color
     end
     self.contents.draw_text(145, y - 30, 100, 32, "", 2) #was "Equipped"        
     drw_face(actor,0 ,80 + 64 * i)
     if @item.is_a?(RPG::Weapon)
       item1 = $data_weapons[actor.weapon_id]
     elsif @item.kind == 0
       item1 = $data_armors[actor.armor1_id]
     elsif @item.kind == 1
       item1 = $data_armors[actor.armor2_id]
     elsif @item.kind == 2
       item1 = $data_armors[actor.armor3_id]
     else
       item1 = $data_armors[actor.armor4_id]
     end
     if actor.equippable?(@item)
       if @item.is_a?(RPG::Weapon)
         atk1 = item1 != nil ? item1.atk : 0
         atk2 = @item != nil ? @item.atk : 0
         pdef1 = item1 != nil ? item1.pdef : 0
         mdef1 = item1 != nil ? item1.mdef : 0
         pdef2 = @item != nil ? @item.pdef : 0
         mdef2 = @item != nil ? @item.mdef : 0          
       self.contents.draw_text(-10, 59 + 64 * i, 112, 32,"Attack", 2)    
       self.contents.draw_text(85, 59 + 64 * i, 112, 32,"Defense", 2)  
       self.contents.draw_text(182, 59 + 64 * i, 112, 32,"MagDef", 2)          
       change = atk2 - atk1
       change2 = pdef2 - pdef1
       change3 = mdef2 - mdef1
     if atk2 > atk1
     self.contents.font.color = Color.new(50,250,150,255)  
     elsif atk2 == atk1
     self.contents.font.color = disabled_color
     else
     self.contents.font.color = Color.new(250,100,50,255)    
     end        
     self.contents.draw_text(21, 59 + 64 * i, 112, 32,sprintf("%d", change), 2)    
     if pdef2 > pdef1
     self.contents.font.color = Color.new(50,250,150,255)  
     elsif pdef2 == pdef1
     self.contents.font.color = disabled_color
     else
     self.contents.font.color = Color.new(250,100,50,255)    
     end            
     self.contents.draw_text(119, 59 + 64 * i, 112, 32,sprintf("%d", change2), 2)    
     if mdef2 > mdef1
     self.contents.font.color = Color.new(50,250,150,255)  
     elsif mdef2 == mdef1
     self.contents.font.color = disabled_color
     else
     self.contents.font.color = Color.new(250,100,50,255)    
     end            
     self.contents.draw_text(214, 59 + 64 * i, 112, 32,sprintf("%d", change3), 2)    
     end
     if @item.is_a?(RPG::Armor)
         pdef1 = item1 != nil ? item1.pdef : 0
         mdef1 = item1 != nil ? item1.mdef : 0
         eva1 = item1 != nil ? item1.eva : 0          
         pdef2 = @item != nil ? @item.pdef : 0
         mdef2 = @item != nil ? @item.mdef : 0
         eva2 = @item != nil ? @item.eva : 0          
         change = pdef2 - pdef1
         change2 = mdef2 - mdef1
         change3 = eva2 - eva1        
       self.contents.draw_text(0, 59 + 64 * i, 112, 32,"Defense", 2)    
       self.contents.draw_text(96, 59 + 64 * i, 112, 32,"MagDef", 2)  
       self.contents.draw_text(181, 59 + 64 * i, 112, 32,"Dodge", 2)  
     if pdef2 > pdef1
     self.contents.font.color = Color.new(50,250,150,255)  
     elsif pdef2 == pdef1
     self.contents.font.color = disabled_color
     else
     self.contents.font.color = Color.new(250,100,50,255)    
     end    
     self.contents.draw_text(33, 59 + 64 * i, 112, 32,sprintf("%d", change), 2)    
     
     if mdef2 > mdef1
     self.contents.font.color = Color.new(50,250,150,255)  
     elsif mdef2 == mdef1
     self.contents.font.color = disabled_color
     else
     self.contents.font.color = Color.new(250,100,50,255)    
     end            
     self.contents.draw_text(130, 59 + 64 * i, 112, 32,sprintf("%d", change2), 2)          
     if eva2 > eva1
     self.contents.font.color = Color.new(50,250,150,255)  
     elsif eva2 == eva1
     self.contents.font.color = disabled_color
     else
     self.contents.font.color = Color.new(250,100,50,255)    
     end            
     self.contents.draw_text(214, 59 + 64 * i, 112, 32,sprintf("%d", change3), 2)    
     end
     end
     if item1 != nil
     if actor.equippable?(@item)
       self.contents.font.color = normal_color
     else
       self.contents.font.color = disabled_color
     end
       x = 4
       y = 64 + 64 * i
       bitmap = RPG::Cache.icon(item1.icon_name)
       opacity = self.contents.font.color == normal_color ? 255 : 128
       self.contents.blt(x + 50, y - 25, bitmap, Rect.new(0, 0, 24, 24), opacity)
       self.contents.draw_text(x + 75, y - 30, 212, 32, item1.name)
     end
   end
 end
 def item=(item)
   if @item != item
     @item = item
     refresh
   end
 end
end
##############
# Scene_Shop #
##############
class Scene_Shop
 def main
   @mshop_back = Plane.new
   @mshop_back.bitmap = RPG::Cache.picture("MN_BK_BLUE")
   @mshop_back.z = 10
   @mshop_lay = Sprite.new
   @mshop_lay.bitmap = RPG::Cache.picture("Shop_Lay")
   @mshop_lay.z = 15
   @mshop_com = Sprite.new
   @mshop_com.bitmap = RPG::Cache.picture("Shop_Com01")
   @mshop_com.z = 20
   @help_window = Window_Help.new
   @help_window.contents.font.name = "OCR A Extended"
   @help_window.contents.font.size = 20 ################################
   @help_window.y = 413
   @command_window = Window_ShopCommand.new
   @command_window.visible = false
   @gold_window = Window_Gold.new
   @gold_window.x = 460
   @gold_window.y = +1
   @dummy_window = Window_Base.new(0, 128, 640, 352)
   @buy_window = Window_ShopBuy.new($game_temp.shop_goods)
   @buy_window.active = false
   @buy_window.visible = false
   @buy_window.help_window = @help_window
   @sell_window = Window_ShopSell.new
   @sell_window.active = false
   @sell_window.visible = false
   @sell_window.help_window = @help_window
   @number_window = Window_ShopNumber.new
   @number_window.active = false
   @number_window.visible = false
   @status_window = Window_ShopStatus.new
   @status_window.visible = false
   @help_window.opacity = 0
   @status_window.opacity = 0
   @sell_window.opacity = 0
   @buy_window.opacity = 0
   @gold_window.opacity = 0
   @command_window.opacity = 0
   @number_window.opacity = 0
   @dummy_window.opacity = 0
   Graphics.transition(MOG::MNSHPT, "Graphics/Transitions/" + MOG::MNSHPTT)
   loop do
     Graphics.update
     Input.update
     update
     if $scene != self
       break
     end
   end
   for i in 0..30
   @mshop_back.oy -= 1
   @mshop_back.opacity -= 255
   @help_window.x -= 15      
   @gold_window.x += 15
   @mshop_lay.zoom_x += 0.1
   @mshop_lay.opacity -= 10
   @command_window.x -= 15
   @mshop_com.x -= 15
   @buy_window.x -= 20
   @sell_window.x -= 20
   Graphics.update  
   end  
   Graphics.freeze
   @help_window.dispose
   @command_window.dispose
   @gold_window.dispose
   @dummy_window.dispose
   @buy_window.dispose
   @sell_window.dispose
   @number_window.dispose
   @status_window.dispose
   @mshop_back.dispose  
   @mshop_lay.dispose
   @mshop_com.dispose
 end
 def update
   @mshop_back.oy -= 1
   if @help_window.x < 0
      @help_window.x += 10
      @help_window.contents_opacity += 10
   elsif @help_window.x >= 0  
     @help_window.x = 0
     @help_window.contents_opacity = 255    
   end  
   if @sell_window.active == true
      @sell_window.visible = true
   if @sell_window.x < -10
      @sell_window.x += 15
      @sell_window.contents_opacity += 10
   elsif @sell_window.x >= -10  
      @sell_window.x = -10
      @sell_window.contents_opacity = 255      
   end  
   else
   if @sell_window.x > -0 ####### was -300
      @sell_window.x -= 0 ####### was 15
      @sell_window.contents_opacity -= 10
   elsif @sell_window.x <= -0  ####### was -300
      @sell_window.x = -0 ####### was -300
      @sell_window.contents_opacity = 0
      @sell_window.visible = false
   end    
   end  
   if @buy_window.active == true
      @buy_window.visible = true
   if @buy_window.x < -10
      @buy_window.x += 15
      @buy_window.contents_opacity += 10
   elsif @buy_window.x >= -10  
      @buy_window.x = -10
      @buy_window.contents_opacity = 255      
   end  
   else
   if @buy_window.x > -0 ####### was -300
      @buy_window.x -= 0 ####### was 15
      @buy_window.contents_opacity -= 10
   elsif @buy_window.x <= -0  ####### was -300
      @buy_window.x = -0 ####### was -300
      @buy_window.contents_opacity = 0
      @buy_window.visible = false
   end    
   end  
   if @number_window.active == true
      @number_window.visible = true
   if @number_window.x < -10
      @number_window.x += 15
      @number_window.contents_opacity += 10
   elsif @number_window.x >= -10  
      @number_window.x = -10
      @number_window.contents_opacity = 255      
   end  
   else
   if @number_window.x > -0 ####### was -300
      @number_window.x -= 0 ####### was 15
      @number_window.contents_opacity -= 10
   elsif @number_window.x <= -0  ####### was -300
      @number_window.x = -0 ####### was -300
      @number_window.contents_opacity = 0
      @number_window.visible = false
   end    
   end  
   if @number_window.active == false
   if Input.trigger?(Input.dir4) or Input.trigger?(Input::C) or
      Input.trigger?(Input::L) or Input.trigger?(Input::R)      
   @help_window.x = -0 ##### was -200
   @help_window.contents_opacity = 0
   end
   end
   @help_window.update
   @command_window.update
   @gold_window.update
   @dummy_window.update
   @buy_window.update
   @sell_window.update
   @number_window.update
   @status_window.update
   case @command_window.index
   when 0
   @mshop_com.bitmap = RPG::Cache.picture("Shop_Com01")
   when 1
   @mshop_com.bitmap = RPG::Cache.picture("Shop_Com02")
   when 2
   @mshop_com.bitmap = RPG::Cache.picture("Shop_Com03")
   end
   if @command_window.active
     update_command
     return
   end
   if @buy_window.active
     update_buy
     return
   end
   if @sell_window.active
     update_sell
     return
   end
   if @number_window.active
     update_number
     return
   end
 end
 def update_command
   if Input.trigger?(Input::B)
     $game_system.se_play($data_system.cancel_se)
     $scene = Scene_Map.new
     return
   end
   if Input.trigger?(Input::C)
     case @command_window.index
     when 0  
       $game_system.se_play($data_system.decision_se)
       @command_window.active = false
       @dummy_window.visible = false
       @buy_window.active = true
       @buy_window.refresh
       @status_window.visible = true
     when 1
       $game_system.se_play($data_system.decision_se)
       @command_window.active = false
       @dummy_window.visible = false
       @sell_window.active = true
       @sell_window.refresh
     when 2  
       $game_system.se_play($data_system.decision_se)
       $scene = Scene_Map.new
     end
     return
   end
 end
 def update_buy
   @status_window.item = @buy_window.item
   if Input.trigger?(Input::B)
     $game_system.se_play($data_system.cancel_se)
     @command_window.active = true
     @dummy_window.visible = true
     @buy_window.active = false
     @status_window.visible = false
     @status_window.item = nil
     @help_window.set_text("")
     return
   end
   if Input.trigger?(Input::C)
     @item = @buy_window.item
     if @item == nil or @item.price > $game_party.gold
       $game_system.se_play($data_system.buzzer_se)
       return
     end
     case @item
     when RPG::Item
       number = $game_party.item_number(@item.id)
     when RPG::Weapon
       number = $game_party.weapon_number(@item.id)
     when RPG::Armor
       number = $game_party.armor_number(@item.id)
     end
     if number == 99
       $game_system.se_play($data_system.buzzer_se)
       return
     end
     $game_system.se_play($data_system.decision_se)
     max = @item.price == 0 ? 99 : $game_party.gold / @item.price
     max = [max, 99 - number].min
     @buy_window.active = false
     @number_window.set(@item, max, @item.price)
     @number_window.active = true
   end
 end
 def update_sell
   @status_window.item = @sell_window.item
    @status_window.visible = true
   if Input.trigger?(Input::B)
     $game_system.se_play($data_system.cancel_se)
     @command_window.active = true
     @dummy_window.visible = true
     @sell_window.active = false
     @status_window.item = nil
     @help_window.set_text("")
     return
   end
   if Input.trigger?(Input::C)
     @item = @sell_window.item
     @status_window.item = @item
     if @item == nil or @item.price == 0
       $game_system.se_play($data_system.buzzer_se)
       return
     end
     $game_system.se_play($data_system.decision_se)
     case @item
     when RPG::Item
       number = $game_party.item_number(@item.id)
     when RPG::Weapon
       number = $game_party.weapon_number(@item.id)
     when RPG::Armor
       number = $game_party.armor_number(@item.id)
     end
     max = number
     @sell_window.active = false
     @number_window.set(@item, max, @item.price / 2)
     @number_window.active = true
     @status_window.visible = true
   end
 end
 def update_number
   if Input.trigger?(Input::B)
     $game_system.se_play($data_system.cancel_se)
     @number_window.active = false
     case @command_window.index
     when 0  
       @buy_window.active = true
     when 1
       @sell_window.active = true
       @status_window.visible = false
     end
     return
   end
   if Input.trigger?(Input::C)
     $game_system.se_play($data_system.shop_se)
     @number_window.active = false
     case @command_window.index
     when 0
       $game_party.lose_gold(@number_window.number * @item.price)
       case @item
       when RPG::Item
         $game_party.gain_item(@item.id, @number_window.number)
       when RPG::Weapon
         $game_party.gain_weapon(@item.id, @number_window.number)
       when RPG::Armor
         $game_party.gain_armor(@item.id, @number_window.number)
       end
       @gold_window.refresh
       @buy_window.refresh
       @status_window.refresh
       @buy_window.active = true
     when 1
       $game_party.gain_gold(@number_window.number * (@item.price / 2))
       case @item
       when RPG::Item
         $game_party.lose_item(@item.id, @number_window.number)
       when RPG::Weapon
         $game_party.lose_weapon(@item.id, @number_window.number)
       when RPG::Armor
         $game_party.lose_armor(@item.id, @number_window.number)
       end
       @gold_window.refresh
       @sell_window.refresh
       @status_window.refresh
       @sell_window.active = true
       @status_window.visible = false
     end
     return
   end
 end
end

I've taken some screenshots demonstrating the crazy transition to give you an idea:

Item screen normally
[Image: Item.jpg]

Item screen mid-transition
[Image: Item_Smeared.jpg]

Shop screen normally
[Image: Shop.jpg]

Shop screen mid-transition
[Image: Shop_Smeared.jpg]
}


Messages In This Thread
Mog Menu script: help me stop the crazy picture movement during transitions - by Zachariad - 05-28-2017, 04:12 PM

Possibly Related Threads…
Thread Author Replies Views Last Post
   Script compatibility help Lord Vectra 3 3,501 07-25-2021, 11:42 PM
Last Post: DerVVulfman
   Adding face script on Cogwheel's RTAB Battle Status rekkatsu 15 12,692 08-25-2020, 03:09 AM
Last Post: DerVVulfman
   "Wait" in the script Whisper 13 13,529 04-28-2020, 04:06 PM
Last Post: Whisper
   Skill Cooldown script Fenriswolf 11 13,920 12-10-2019, 11:10 AM
Last Post: Fenriswolf
   Need help with my menu - Current issue is item grid layout LilyFrog 41 32,686 09-24-2018, 02:03 AM
Last Post: LilyFrog
   Special Items Separate Menu Diorm 41 36,059 02-10-2018, 06:06 PM
Last Post: Diorm
   Help iwth script (RGSS Player crash) Whisper 3 6,467 06-17-2017, 05:03 PM
Last Post: Whisper
   Help modifying a script Keeroh 7 8,846 06-11-2017, 04:43 PM
Last Post: DerVVulfman
   Actor names in Quest Script jreagan406 5 7,515 03-07-2017, 08:06 AM
Last Post: JayRay
   Bizarre issue with Lanzer counter script. Steel Beast 6Beets 2 6,562 10-04-2016, 11:46 AM
Last Post: Steel Beast 6Beets



Users browsing this thread: