MOG Scene Shop Felicia V1.7
MOG Scene Shop Felicia é um script de Scene Shop com layout em pictures e movimento desenvolvido pelo Moghunter para ser usado em jogos ou projetos desenvolvidos com a ferramenta RPG Maker XP.
MOG Scene Shop Felicia é um script de “Scene Shop” com layout em pictures e movimento desenvolvido pelo Moghunter para ser usado em jogos ou projetos desenvolvidos com a ferramenta RPG Maker XP.
Utilização
Para renomear as Faces dos personagens, use da seguinte forma: Aluxes_FC.png
Ou seja, coloque o nome do personagem mais o sufixo _FC. É conveniente baixar a demo, que já possui todas as imagens exemplos e o script.
Screenshot
Código
#_______________________________________________________________________________ # MOG_Scene_Shop V1.7 #_______________________________________________________________________________ # By Moghunter # http://www.atelier-rgss.com #_______________________________________________________________________________ module MOG #Transition Time. MNSHPT= 30 #Transition Type (Name) MNSHPTT= "006-Stripe02" end #=============================================================================== # Window_Base #=============================================================================== class Window_Base < Window #-------------------------------------------------------------------------- # Draw_item_Name_Ex #-------------------------------------------------------------------------- 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 #-------------------------------------------------------------------------- # Nada #-------------------------------------------------------------------------- def nada face = RPG::Cache.picture("") end #-------------------------------------------------------------------------- # Drw_face #-------------------------------------------------------------------------- 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 end #=============================================================================== # Game_Actor #=============================================================================== class Win_Shop_Sel < Window_Base attr_reader :index #-------------------------------------------------------------------------- # Initialize #-------------------------------------------------------------------------- def initialize(x, y, width, height) super(x, y, width, height) @item_max = 1 @column_max = 1 @index = -1 end #-------------------------------------------------------------------------- # Index #-------------------------------------------------------------------------- def index=(index) @index = index update_cursor_rect end #-------------------------------------------------------------------------- # row_max #-------------------------------------------------------------------------- def row_max return (@item_max + @column_max - 1) / @column_max end #-------------------------------------------------------------------------- # Top_Row #-------------------------------------------------------------------------- def top_row return self.oy / 32 end #-------------------------------------------------------------------------- # Top_Row(Row) #-------------------------------------------------------------------------- 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 #-------------------------------------------------------------------------- # Page_Row_Max #-------------------------------------------------------------------------- def page_row_max return (self.height - 32) / 32 end #-------------------------------------------------------------------------- # Page_Item_Max #-------------------------------------------------------------------------- def page_item_max return page_row_max * @column_max end #-------------------------------------------------------------------------- # Update_Cursor_Rect #-------------------------------------------------------------------------- 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 #-------------------------------------------------------------------------- # Update #-------------------------------------------------------------------------- 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 #-------------------------------------------------------------------------- # Initialize #-------------------------------------------------------------------------- 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 #-------------------------------------------------------------------------- # Initialize #-------------------------------------------------------------------------- def initialize(shop_goods) super(-10, 180, 310, 225) @shop_goods = shop_goods refresh self.index = 0 end #-------------------------------------------------------------------------- # Ite #-------------------------------------------------------------------------- def item return @data[self.index] end #-------------------------------------------------------------------------- # Refresh #-------------------------------------------------------------------------- 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 #-------------------------------------------------------------------------- # Draw_Item #-------------------------------------------------------------------------- def draw_item(index) self.contents.font.name = "Georgia" self.contents.font.bold = false 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 + 150, y, 88, 32, "G", 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 #-------------------------------------------------------------------------- # Update_Help #-------------------------------------------------------------------------- def update_help @help_window.set_text(self.item == nil ? "" : self.item.description) end end #=============================================================================== # Window_ShopSell #=============================================================================== class Window_ShopSell < Window_Selectable #-------------------------------------------------------------------------- # Initialize #-------------------------------------------------------------------------- def initialize super(-10, 180, 305, 225) @column_max = 1 refresh self.index = 0 end #-------------------------------------------------------------------------- # Item #-------------------------------------------------------------------------- def item return @data[self.index] end #-------------------------------------------------------------------------- # Refresh #-------------------------------------------------------------------------- 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 #-------------------------------------------------------------------------- # Draw_item #-------------------------------------------------------------------------- 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 = "Georgia" 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 #-------------------------------------------------------------------------- # Update_Help #-------------------------------------------------------------------------- def update_help @help_window.set_text(self.item == nil ? "" : self.item.description) end end #=============================================================================== # Window_ShopNumber #=============================================================================== class Window_ShopNumber < Window_Base #-------------------------------------------------------------------------- # Initialize #-------------------------------------------------------------------------- def initialize super(-10, 180, 310, 225) self.contents = Bitmap.new(width - 32, height - 32) @item = nil @max = 1 @price = 0 @number = 1 end #-------------------------------------------------------------------------- # Set #-------------------------------------------------------------------------- def set(item, max, price) @item = item @max = max @price = price @number = 1 refresh end #-------------------------------------------------------------------------- # Number #-------------------------------------------------------------------------- def number return @number end #-------------------------------------------------------------------------- # Refresh #-------------------------------------------------------------------------- def refresh self.contents.clear self.contents.font.name = "Georgia" self.contents.font.bold = true draw_item_name_ex(@item, 4, 66) self.contents.font.color = Color.new(50,150,250,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("G").width self.contents.font.color = Color.new(200,200,50,255) self.contents.draw_text(4, 160, 228-2, 32, total_price.to_s, 2) self.contents.font.color = Color.new(50,250,150,255) self.contents.draw_text(90, 160, 88, 32, "G", 1) end #-------------------------------------------------------------------------- # Update #-------------------------------------------------------------------------- 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 #-------------------------------------------------------------------------- # Initialize #-------------------------------------------------------------------------- def initialize super(300, 128, 350, 300) self.contents = Bitmap.new(width - 32, height - 32) @item = nil refresh end #-------------------------------------------------------------------------- # Refresh #-------------------------------------------------------------------------- def refresh self.contents.clear self.contents.font.name = "Georgia" if @item == nil return end if $mog_rgss_Item_Limit != nil 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(190, 0, 200, 32, "Stock") self.contents.font.color = normal_color if item_max != nil self.contents.draw_text(230, 0, 80, 32, number.to_s + " / " + item_max.to_s, 2) else max_limit = MOG::DEFAULT_LIMIT self.contents.draw_text(230, 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(210, 0, 200, 32, "Stock") self.contents.font.color = normal_color self.contents.draw_text(245, 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(65, 0, 100, 32, "Equipped", 2) 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(-20, 50 + 64 * i, 112, 32,"Atk", 2) self.contents.draw_text(70, 50 + 64 * i, 112, 32,"Pdef", 2) self.contents.draw_text(160, 50 + 64 * i, 112, 32,"Mdef", 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(20, 50 + 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(110, 50 + 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(200, 50 + 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(-20, 50 + 64 * i, 112, 32,"Pdef", 2) self.contents.draw_text(70, 50 + 64 * i, 112, 32,"Mdef", 2) self.contents.draw_text(160, 50 + 64 * i, 112, 32,"Eva", 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(20, 50 + 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(110, 50 + 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(200, 50 + 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 - 35, bitmap, Rect.new(0, 0, 24, 24), opacity) self.contents.draw_text(x + 75, y - 40, 212, 32, item1.name) end end end def item=(item) if @item != item @item = item refresh end end end #=============================================================================== # Scene_Shop #=============================================================================== class Scene_Shop #-------------------------------------------------------------------------- # Main #-------------------------------------------------------------------------- def main @mshop_back = Plane.new @mshop_back.bitmap = RPG::Cache.picture("MN_BK2") @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 = "Georgia" @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 = -5 @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.ox += 1 @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 #-------------------------------------------------------------------------- # Update #-------------------------------------------------------------------------- def update @mshop_back.ox += 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 > -300 @sell_window.x -= 15 @sell_window.contents_opacity -= 10 elsif @sell_window.x <= -300 @sell_window.x = -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 > -300 @buy_window.x -= 15 @buy_window.contents_opacity -= 10 elsif @buy_window.x <= -300 @buy_window.x = -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 > -300 @number_window.x -= 15 @number_window.contents_opacity -= 10 elsif @number_window.x <= -300 @number_window.x = -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 = -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 #-------------------------------------------------------------------------- # Update_Command #-------------------------------------------------------------------------- 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 #-------------------------------------------------------------------------- # Update Buy #-------------------------------------------------------------------------- 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 #-------------------------------------------------------------------------- # Update Sell #-------------------------------------------------------------------------- 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 #-------------------------------------------------------------------------- # Update Number #-------------------------------------------------------------------------- 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 $mog_rgss_Scene_Shop = true
Download e ficha técnica
- Download (clique com o botão esquerdo do mouse ou toque no link)
- Desenvolvedor, publisher e/ou distribuidor: Moghunter
- SO: Windows 98/98SE/Me/2000/XP/Vista/7
- Tamanho: 572 KB (pacote de instalação e/ou espaço em disco)
- Licença: Grátis
- Categoria: Programação XP
- Tag: RPG Maker XP
- Adicionado por: LichKing
- Acessos: 54
Observação: se você gostou deste post ou ele lhe foi útil de alguma forma, por favor considere apoiar financeiramente a Gaming Room. Fico feliz só de ajudar, mas a contribuição do visitante é muito importante para que este site continua existindo e para que eu possa continuar provendo este tipo de conteúdo e melhorar cada vez mais. Acesse aqui e saiba como. Obrigado!
Você pode se interessar também por
Você pode acompanhar os comentários desse post através do feed RSS 2.0.
Deixe um comentário
Você pode criticar, elogiar, corrigir, complementar, reportar links quebrados (o que é muito importante) etc. Você pode até xingar a gente de palavrão se quiser, mas como não queremos ofender as crianças que nos visitam (e evitar choradeira dos frescos de plantão) não aprovaremos comentários com palavras chulas e/ou de baixo calão. Também não aprovaremos spam ou conteúdos ofensivos a outras partes. O seu link só será aprovado se for de algum site que esteja funcionando e não seja spam nem enganação. Dados pessoais não serão publicados. O conteúdo dos comentários é de inteira responsabilidade de seus autores.