NOAHW'S PROFILE
NoahW
64
I'm an artist first and foremost, and long time video game and RPG fan. Been tooling around with RPG maker for some time and I'm finally getting down to business and working on a serious project. I've got everything planned out and now I'm just trying to punch out the work.
To see some game art and sample maps please check my DeviantArt gallery
To see some game art and sample maps please check my DeviantArt gallery
Search
Filter
Need Help Modifying a Script
I'm having some serious deja vu, worked like magic dude. I suppose I should've just PMed you with my little issue huh? Thanks loads dude, This will drastically Improve the visual flare of the game :P
and hey check out the new boss transformation I just Illustrated: http://rpgmaker.net/games/4506/images/31919/
and hey check out the new boss transformation I just Illustrated: http://rpgmaker.net/games/4506/images/31919/
Need Help Modifying a Script
I'm using Leon's modified shop script and would like to be able to have an image beind the window replacing the black background.
If that's possible could someone please supply me the code required to do so, really appreciate it dudes :P
The original code:
If that's possible could someone please supply me the code required to do so, really appreciate it dudes :P
The original code:
#=============================================================================== # Leon's Shopping System #------------------------------------------------------------------------------- # 3/10/2007 # v. 1.0 #------------------------------------------------------------------------------- # Instructions: # Place above main, and below the other default scripts. # (Yes, that is all of the instructions) # # Features: # Replaces the default shop system. # #=============================================================================== #=============================================================================== # Window_Shop_Info #=============================================================================== class Window_Shop_Info < Window_Base def initialize super(160, 0, 480, 64) self.contents = Bitmap.new(width - 32, height - 32) self.contents.font.name = "Times New Roman" self.contents.font.size = 22 refresh end def refresh(selection = 0) self.contents.clear if selection == 0 self.contents.draw_text(0, 0, 448, 32, "Buy, sell, or leave?", 1) else self.contents.draw_text(0, 0, 448, 32, "Press 'Z' for character compatabilitiy.", 1) end end end #=============================================================================== # END Window_Shop_Info #=============================================================================== #=============================================================================== # Window_Shop_Option #=============================================================================== class Window_Shop_Option < Window_Selectable def initialize super(0, 0, 160, 128) @option = ["Buy", "Sell", "Leave"] @item_max = @option.size self.contents = Bitmap.new(width - 32, height - 32) self.contents.font.name = "Times New Roman" self.contents.font.size = 22 self.index = 0 self.active = true refresh end def refresh self.contents.clear for i in 0...@option.size y = i * 32 self.contents.draw_text(0, y, 128, 32, @option[i], 1) end end end #=============================================================================== # END Window_Shop_Option #=============================================================================== #=============================================================================== # Window_Shop_Gold #=============================================================================== class Window_Shop_Gold < Window_Base def initialize super(0, 128, 160, 64) self.contents = Bitmap.new(width - 32, height - 32) self.contents.font.name = "Times New Roman" self.contents.font.size = 22 refresh end def refresh self.contents.clear self.contents.font.color = system_color self.contents.draw_text(0, 0, 60, 32, $data_system.words.gold + ":") self.contents.font.color = normal_color self.contents.draw_text(0, 0, 128, 32, $game_party.gold.to_s, 2) end end #=============================================================================== # END Window_Shop_Gold #=============================================================================== #=============================================================================== # Window_Shop_Own #=============================================================================== class Window_Shop_Own < Window_Base def initialize super(0, 192, 160, 64) self.contents = Bitmap.new(width - 32, height - 32) self.contents.font.name = "Times New Roman" self.contents.font.size = 22 item = nil refresh(item) end def refresh(item) self.contents.clear self.contents.font.color = system_color self.contents.draw_text(0, 0, 48, 32, "Own:") if item == nil return end self.contents.font.color = normal_color 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.draw_text(0, 0, 128, 32, number.to_s, 2) end end #=============================================================================== # END Window_Shop_Own #=============================================================================== #=============================================================================== # Window_Shop_List #=============================================================================== class Window_Shop_List < Window_Selectable def initialize(shop_goods) super(160, 64, 480, 192) self.contents = Bitmap.new(width - 32, height - 32) self.contents.font.name = "Times New Roman" self.contents.font.size = 22 self.active = false self.index = 0 self.visible = false @shop_goods = shop_goods @sell = false end def item if @data != nil return @data[index] end end def refresh @sell = false @option_index = nil 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) self.contents.font.name = "Times New Roman" self.contents.font.size = 22 for i in 0...@item_max draw_item(i) end end end def refresh_sell(option_index) @sell = true @option_index = option_index 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) self.contents.font.name = "Times New Roman" self.contents.font.size = 22 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 @option_index == nil if item.price <= $game_party.gold and number < 99 self.contents.font.color = normal_color else self.contents.font.color = disabled_color end else self.contents.font.color = normal_color end x = 4 y = index * 32 if item.price == 0 self.contents.font.color = disabled_color else self.contents.font.color = normal_color end if @sell == false if item.price < $game_party.gold and number < 99 self.contents.font.color = normal_color else self.contents.font.color = disabled_color end 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, 212, 32, item.name, 0) if @option_index == nil self.contents.draw_text(x + 350, y, 88, 32, item.price.to_s, 2) else item_price = (item.price / 2).round self.contents.draw_text(x + 350, y, 88, 32, item_price.to_s, 2) end end end #=============================================================================== # END Window_Shop_List #=============================================================================== #=============================================================================== # Window_Shop_Description_Item #=============================================================================== class Window_Shop_Description_Item < Window_Base def initialize super(90, 256, 460, 192) self.contents = Bitmap.new(width - 32, height - 32) self.contents.font.name = "Times New Roman" self.contents.font.size = 22 self.visible = false item = nil refresh(item) end def refresh(item) self.contents.clear if item == nil return end bitmap = RPG::Cache.icon(item.icon_name) opacity = self.contents.font.color == normal_color ? 255 : 128 self.contents.blt(0, 4, bitmap, Rect.new(0, 0, 24, 24), opacity) self.contents.draw_text(28, 0, 120, 32, item.name) self.contents.draw_text(0, 32, 428, 32, item.description) self.contents.font.color = system_color self.contents.draw_text(0, 64, 120, 32, "Range:") self.contents.draw_text(0, 96, 140, 32, "% HP Recovered:") self.contents.draw_text(0, 128, 140, 32, "% SP Recovered:") self.contents.draw_text(230, 96, 120, 32, "HP Recovered:") self.contents.draw_text(230, 128, 120, 32, "SP Recovered:") self.contents.font.color = normal_color self.contents.draw_text(150, 96, 90, 32, item.recover_hp_rate.to_s) self.contents.draw_text(150, 128, 90, 32, item.recover_sp_rate.to_s) self.contents.draw_text(360, 96, 90, 32, item.recover_hp.to_s) self.contents.draw_text(360, 128, 90, 32, item.recover_sp.to_s) case item.scope when 0 self.contents.draw_text(70, 64, 120, 32, "None") when 1 self.contents.draw_text(70, 64, 120, 32, "One Enemy") when 2 self.contents.draw_text(70, 64, 120, 32, "All Enemies") when 3 self.contents.draw_text(70, 64, 120, 32, "One Ally") when 4 self.contents.draw_text(70, 64, 120, 32, "All Allies") when 5 self.contents.draw_text(70, 64, 120, 32, "One Dead Ally") when 6 self.contents.draw_text(70, 64, 120, 32, "All Dead Allies") when 7 self.contents.draw_text(70, 64, 120, 32, "User") end end end #=============================================================================== # END Window_Shop_Description_Item #=============================================================================== #=============================================================================== # Window_Shop_Description_Equipment #=============================================================================== class Window_Shop_Description_Equipment < Window_Base def initialize super(0, 256, 640, 224) self.contents = Bitmap.new(width - 32, height - 32) self.contents.font.name = "Times New Roman" self.contents.font.size = 22 self.visible = false item = nil refresh(item) end def refresh(item) self.contents.clear if item == nil return end bitmap = RPG::Cache.icon(item.icon_name) opacity = self.contents.font.color == normal_color ? 255 : 128 self.contents.blt(0, 4, bitmap, Rect.new(0, 0, 24, 24), opacity) self.contents.draw_text(28, 0, 120, 32, item.name) self.contents.draw_text(0, 32, 460, 32, item.description) self.contents.font.color = system_color if item.is_a?(RPG::Weapon) self.contents.draw_text(0, 64, 75, 32, "Attack:") self.contents.draw_text(0, 96, 120, 32, "Phys. Def:") self.contents.draw_text(0, 128, 120, 32, "Mag. Def:") self.contents.draw_text(165, 64, 120, 32, "Str:") self.contents.draw_text(165, 96, 120, 32, "Dex:") self.contents.draw_text(165, 128, 120, 32, "Agi:") self.contents.draw_text(165, 160, 120, 32, "Int:") self.contents.draw_text(290, 64, 120, 32, "Weapon Type:") self.contents.draw_text(470, 64, 120, 32, "Inflicts:") else self.contents.draw_text(0, 64, 120, 32, "Phys. Def:") self.contents.draw_text(0, 96, 120, 32, "Mag. Def:") self.contents.draw_text(0, 128, 120, 32, "Evade:") self.contents.draw_text(0, 160, 120, 32, "Auto:") self.contents.draw_text(165, 64, 120, 32, "Str:") self.contents.draw_text(165, 96, 120, 32, "Dex:") self.contents.draw_text(165, 128, 120, 32, "Agi:") self.contents.draw_text(165, 160, 120, 32, "Int:") self.contents.draw_text(370, 64, 120, 32, "Guards Against:") end self.contents.font.color = normal_color if item.is_a?(RPG::Weapon) self.contents.draw_text(60, 64, 75, 32, item.atk.to_s) self.contents.draw_text(90, 96, 75, 32, item.pdef.to_s) self.contents.draw_text(90, 128, 75, 32, item.mdef.to_s) self.contents.draw_text(195, 64, 50, 32, item.str_plus.to_s, 2) self.contents.draw_text(195, 96, 50, 32, item.dex_plus.to_s, 2) self.contents.draw_text(195, 128, 50, 32, item.agi_plus.to_s, 2) self.contents.draw_text(195, 160, 50, 32, item.int_plus.to_s, 2) self.contents.font.size = 14 for i in 0...item.element_set.size x = 265 + i % 2 * 75 y = 80 + i / 2 * 14 self.contents.draw_text(x, y, 120, 32, $data_system.elements[item.element_set[i]]) end for i in 0...item.plus_state_set.size x = 445 + i % 2 * 75 y = 80 + i / 2 * 14 self.contents.draw_text(x, y, 120, 32, $data_states[item.plus_state_set[i]].name) end else self.contents.draw_text(90, 64, 75, 32, item.pdef.to_s) self.contents.draw_text(90, 96, 75, 32, item.mdef.to_s) self.contents.draw_text(60, 128, 75, 32, item.eva.to_s) if $data_states[item.auto_state_id] != nil self.contents.draw_text(55, 160, 75, 32, $data_states[item.auto_state_id].name) end self.contents.draw_text(195, 64, 50, 32, item.str_plus.to_s, 2) self.contents.draw_text(195, 96, 50, 32, item.dex_plus.to_s, 2) self.contents.draw_text(195, 128, 50, 32, item.agi_plus.to_s, 2) self.contents.draw_text(195, 160, 50, 32, item.int_plus.to_s, 2) self.contents.font.size = 14 @defense = [] for i in 0...item.guard_element_set.size @defense.push($data_system.elements[item.guard_element_set[i]]) end for i in 0...item.guard_state_set.size @defense.push($data_states[item.guard_state_set[i]].name) end for i in 0...@defense.size x = 265 + i % 4 * 80 y = 80 + i / 4 * 14 self.contents.draw_text(x + 15, y, 85, 32, @defense[i]) end end self.contents.font.size = 22 end end #=============================================================================== # END Window_Shop_Description_Equipment #=============================================================================== #=============================================================================== # Window_Shop_Actors #=============================================================================== class Window_Shop_Actors < Window_Base def initialize super(84, 32, 472, 416) self.contents = Bitmap.new(width - 32, height - 32) self.contents.font.name = "Times New Roman" self.contents.font.size = 22 self.visible = false self.active = false self.z += 100 item = nil refresh(item) end def refresh(item) self.contents.clear if item == nil return end for i in 0...$game_party.actors.size x = i%2 * 236 y = i/2 * 192 draw_actor_graphic($game_party.actors[i], x + 16, y + 48) draw_actor_name($game_party.actors[i], x + 48, y + 8) pdef1 = item.pdef mdef1 = item.mdef str1 = item.str_plus dex1 = item.dex_plus agi1 = item.agi_plus int1 = item.int_plus atk2 = 0 eva2 = 0 pdef2 = 0 mdef2 = 0 str2 = 0 dex2 = 0 agi2 = 0 int2 = 0 if item.is_a?(RPG::Weapon) if $data_weapons[$game_party.actors[i].weapon_id] != nil atk1 = item.atk atk2 = $data_weapons[$game_party.actors[i].weapon_id].atk pdef2 = $data_weapons[$game_party.actors[i].weapon_id].pdef mdef2 = $data_weapons[$game_party.actors[i].weapon_id].mdef str2 = $data_weapons[$game_party.actors[i].weapon_id].str_plus dex2 = $data_weapons[$game_party.actors[i].weapon_id].dex_plus agi2 = $data_weapons[$game_party.actors[i].weapon_id].agi_plus int2 = $data_weapons[$game_party.actors[i].weapon_id].int_plus end else eva1 = item.eva case item.kind when 0 if $data_armors[$game_party.actors[i].armor1_id] != nil eva2 = $data_armors[$game_party.actors[i].armor1_id].eva pdef2 = $data_armors[$game_party.actors[i].armor1_id].pdef mdef2 = $data_armors[$game_party.actors[i].armor1_id].mdef str2 = $data_armors[$game_party.actors[i].armor1_id].str_plus dex2 = $data_armors[$game_party.actors[i].armor1_id].dex_plus agi2 = $data_armors[$game_party.actors[i].armor1_id].agi_plus int2 = $data_armors[$game_party.actors[i].armor1_id].int_plus end when 1 if $data_armors[$game_party.actors[i].armor2_id] != nil eva2 = $data_armors[$game_party.actors[i].armor2_id].eva pdef2 = $data_armors[$game_party.actors[i].armor2_id].pdef mdef2 = $data_armors[$game_party.actors[i].armor2_id].mdef str2 = $data_armors[$game_party.actors[i].armor2_id].str_plus dex2 = $data_armors[$game_party.actors[i].armor2_id].dex_plus agi2 = $data_armors[$game_party.actors[i].armor2_id].agi_plus int2 = $data_armors[$game_party.actors[i].armor2_id].int_plus end when 2 if $data_armors[$game_party.actors[i].armor3_id] != nil eva2 = $data_armors[$game_party.actors[i].armor3_id].eva pdef2 = $data_armors[$game_party.actors[i].armor3_id].pdef mdef2 = $data_armors[$game_party.actors[i].armor3_id].mdef str2 = $data_armors[$game_party.actors[i].armor3_id].str_plus dex2 = $data_armors[$game_party.actors[i].armor3_id].dex_plus agi2 = $data_armors[$game_party.actors[i].armor3_id].agi_plus int2 = $data_armors[$game_party.actors[i].armor3_id].int_plus end when 3 if $data_armors[$game_party.actors[i].armor4_id] != nil eva2 = $data_armors[$game_party.actors[i].armor4_id].eva pdef2 = $data_armors[$game_party.actors[i].armor4_id].pdef mdef2 = $data_armors[$game_party.actors[i].armor4_id].mdef str2 = $data_armors[$game_party.actors[i].armor4_id].str_plus dex2 = $data_armors[$game_party.actors[i].armor4_id].dex_plus agi2 = $data_armors[$game_party.actors[i].armor4_id].agi_plus int2 = $data_armors[$game_party.actors[i].armor4_id].int_plus end end end color1 = Color.new(25, 210, 25, 255) color2 = Color.new(210, 25, 25, 255) if $game_party.actors[i].equippable?(item) self.contents.font.color = normal_color # PDEF if (pdef1 - pdef2) > 0 self.contents.font.color = color1 elsif (pdef1 - pdef2) < 0 self.contents.font.color = color2 else self.contents.font.color = normal_color end self.contents.draw_text(x + 25, y + 80, 70, 32, (pdef1 - pdef2).to_s, 2) # MDEF if (mdef1 - mdef2) > 0 self.contents.font.color = color1 elsif (mdef1 - mdef2) < 0 self.contents.font.color = color2 else self.contents.font.color = normal_color end self.contents.draw_text(x + 25, y + 112, 70, 32, (mdef1 - mdef2).to_s, 2) # STR if (str1 - str2) > 0 self.contents.font.color = color1 elsif (str1 - str2) < 0 self.contents.font.color = color2 else self.contents.font.color = normal_color end self.contents.draw_text(x + 125, y + 48, 70, 32, (str1 - str2).to_s, 2) # DEX if (dex1 - dex2) > 0 self.contents.font.color = color1 elsif (dex1 - dex2) < 0 self.contents.font.color = color2 else self.contents.font.color = normal_color end self.contents.draw_text(x + 125, y + 80, 70, 32, (dex1 - dex2).to_s, 2) # AGI if (agi1 - agi2) > 0 self.contents.font.color = color1 elsif (agi1 - agi2) < 0 self.contents.font.color = color2 else self.contents.font.color = normal_color end self.contents.draw_text(x + 125, y + 112, 70, 32, (agi1 - agi2).to_s, 2) # INT if (int1 - int2) > 0 self.contents.font.color = color1 elsif (int1 - int2) < 0 self.contents.font.color = color2 else self.contents.font.color = normal_color end self.contents.draw_text(x + 125, y + 144, 70, 32, (int1 - int2).to_s, 2) if item.is_a?(RPG::Weapon) self.contents.font.color = system_color self.contents.draw_text(x, y + 48, 80, 32, "Atk:") self.contents.draw_text(x, y + 80, 80, 32, "Pdef:") self.contents.draw_text(x, y + 112, 80, 32, "Mdef:") self.contents.draw_text(x + 110, y + 48, 80, 32, "Str:") self.contents.draw_text(x + 110, y + 80, 80, 32, "Dex:") self.contents.draw_text(x + 110, y + 112, 80, 32, "Agi:") self.contents.draw_text(x + 110, y + 144, 80, 32, "Int:") self.contents.font.color = normal_color # ATTACK if (atk1 - atk2) > 0 self.contents.font.color = color1 elsif (atk1 - atk2) < 0 self.contents.font.color = color2 else self.contents.font.color = normal_color end self.contents.draw_text(x + 25, y + 48, 70, 32, (atk1 - atk2).to_s, 2) # ELSE if armor... else self.contents.font.color = system_color self.contents.draw_text(x, y + 48, 80, 32, "Eva:") self.contents.draw_text(x, y + 80, 80, 32, "Pdef:") self.contents.draw_text(x, y + 112, 80, 32, "Mdef:") self.contents.draw_text(x + 110, y + 48, 80, 32, "Str:") self.contents.draw_text(x + 110, y + 80, 80, 32, "Dex:") self.contents.draw_text(x + 110, y + 112, 80, 32, "Agi:") self.contents.draw_text(x + 110, y + 144, 80, 32, "Int:") self.contents.font.color = normal_color if (eva1 - eva2) > 0 self.contents.font.color = color1 elsif (eva1 - eva2) < 0 self.contents.font.color = color2 else self.contents.font.color = normal_color end self.contents.draw_text(x + 25, y + 48, 70, 32, (eva1 - eva2).to_s, 2) end else self.contents.font.color = disabled_color self.contents.draw_text(x + 10, y + 80, 120, 32, "Cannot Equip") self.contents.font.color = normal_color end end end end #=============================================================================== # END Window_Shop_Actors #=============================================================================== #=============================================================================== # Window_Shop_Amount #=============================================================================== class Window_Shop_Amount < Window_Selectable attr_accessor :amount def initialize super(80, 208, 480, 96) @item_max = 1 self.contents = Bitmap.new(width - 32, height - 32) self.contents.font.name = "Times New Roman" self.contents.font.size = 22 self.visible = false self.z += 100 @amount = 1 item = $data_items[1] option_index = 0 refresh(item, option_index) end def refresh(item, option_index) self.contents.clear if item == nil return end if option_index == nil return end if option_index == 0 self.contents.font.color = system_color self.contents.draw_text(0, 0, 200, 32, "How many?") self.contents.font.color = normal_color if $game_party.gold < (@amount * item.price) self.contents.font.color = disabled_color end bitmap = RPG::Cache.icon(item.icon_name) opacity = self.contents.font.color == normal_color ? 255 : 128 self.contents.blt(0, 36, bitmap, Rect.new(0, 0, 24, 24), opacity) self.contents.draw_text(28, 32, 120, 32, item.name) self.contents.draw_text(335, 32, 10, 32, "x") self.contents.draw_text(280, 32, 30, 32, @amount.to_s, 2) self.cursor_rect.set(284, 32, 32, 32) self.contents.draw_text(370, 32, 70, 32, (@amount * item.price).to_s, 2) else self.contents.font.color = system_color self.contents.draw_text(0, 0, 200, 32, "How many?") self.contents.font.color = normal_color bitmap = RPG::Cache.icon(item.icon_name) opacity = self.contents.font.color == normal_color ? 255 : 128 self.contents.blt(0, 36, bitmap, Rect.new(0, 0, 24, 24), opacity) self.contents.draw_text(28, 32, 120, 32, item.name) self.contents.draw_text(335, 32, 10, 32, "x") self.contents.draw_text(280, 32, 30, 32, @amount.to_s, 2) self.cursor_rect.set(284, 32, 32, 32) self.contents.draw_text(370, 32, 70, 32, (@amount * (item.price / 2)).to_s, 2) end end end #=============================================================================== # END Window_Shop_Amount #=============================================================================== #=============================================================================== # Scene_Shop #=============================================================================== class Scene_Shop def main @counter = 0 @info_window = Window_Shop_Info.new @option_window = Window_Shop_Option.new @gold_window = Window_Shop_Gold.new @own_window = Window_Shop_Own.new @list_window = Window_Shop_List.new($game_temp.shop_goods) @desc_item_window = Window_Shop_Description_Item.new @desc_equip_window = Window_Shop_Description_Equipment.new @actor_window = Window_Shop_Actors.new @amount_window = Window_Shop_Amount.new Graphics.transition loop do Graphics.update Input.update update if $scene != self break end end Graphics.freeze @info_window.dispose @option_window.dispose @gold_window.dispose @own_window.dispose @list_window.dispose @desc_item_window.dispose @desc_equip_window.dispose @actor_window.dispose @amount_window.dispose end def update @info_window.update @option_window.update @gold_window.update @own_window.update @list_window.update @desc_item_window.update @desc_equip_window.update @actor_window.update @amount_window.update if @option_window.active update_option return end if @list_window.active update_list return end if @actor_window.visible update_actors return end if @amount_window.active and @option_window.index == 0 update_amount return end if @amount_window.active and @option_window.index == 1 update_sell return end end def update_option @info_window.refresh(0) 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 @option_window.index when 0 $game_system.se_play($data_system.decision_se) @list_window.refresh @option_window.active = false @list_window.visible = true @list_window.active = true @list_window.index = 0 when 1 $game_system.se_play($data_system.decision_se) @list_window.refresh_sell(@option_window.index) @option_window.active = false @list_window.visible = true @list_window.active = true @list_window.index = 0 when 2 $game_system.se_play($data_system.cancel_se) $scene = Scene_Map.new return end end end def update_list @info_window.refresh(1) @item = @list_window.item if @counter != 1 if @item.is_a?(RPG::Item) @desc_item_window.refresh(@item) @counter = 1 else @desc_equip_window.refresh(@item) @counter = 1 end end @own_window.refresh(@list_window.item) if Input.trigger?(Input::UP) or Input.trigger?(Input::DOWN) or Input.repeat?(Input::UP) or Input.repeat?(Input::DOWN) @counter = 0 end if @item.is_a?(RPG::Item) if @counter != 1 @desc_item_window.refresh(@item) @counter = 1 end @desc_item_window.visible = true @desc_equip_window.visible = false else if @counter != 1 @desc_equip_window.refresh(@item) @counter = 1 end @desc_item_window.visible = false @desc_equip_window.visible = true end if Input.trigger?(Input::B) @counter = 0 $game_system.se_play($data_system.cancel_se) @desc_item_window.visible = false @desc_equip_window.visible = false @desc_item_window.refresh(nil) @desc_equip_window.refresh(nil) @option_window.active = true @list_window.visible = false @list_window.active = false @own_window.refresh(nil) return end if Input.trigger?(Input::A) unless @item.is_a?(RPG::Item) $game_system.se_play($data_system.decision_se) @actor_window.refresh(@item) @actor_window.visible = true @list_window.active = false return else $game_system.se_play($data_system.buzzer_se) end end if Input.trigger?(Input::C) if @item == nil or @item.id == 0 or @item.price == 0 $game_system.se_play($data_system.buzzer_se) return end if @option_window.index == 0 case @item when RPG::Item if $game_party.item_number(@item.id) >= 99 $game_system.se_play($data_system.buzzer_se) return end when RPG::Weapon if $game_party.weapon_number(@item.id) >= 99 $game_system.se_play($data_system.buzzer_se) return end when RPG::Armor if $game_party.armor_number(@item.id) >= 99 $game_system.se_play($data_system.buzzer_se) return end end end $game_system.se_play($data_system.decision_se) @amount_window.visible = true @amount_window.active = true @list_window.active = false return end end def update_actors if Input.trigger?(Input::B) $game_system.se_play($data_system.cancel_se) @actor_window.visible = false @list_window.active = true end end def update_amount @amount_window.refresh(@item, @option_window.index) if Input.trigger?(Input::B) $game_system.se_play($data_system.cancel_se) @amount_window.amount = 1 @amount_window.visible = false @amount_window.active = false @list_window.active = true return end if Input.trigger?(Input::C) if $game_party.gold >= (@amount_window.amount * @item.price) $game_system.se_play($data_system.decision_se) $game_party.lose_gold(@amount_window.amount * @item.price) case @item when RPG::Item $game_party.gain_item(@item.id, @amount_window.amount) when RPG::Weapon $game_party.gain_weapon(@item.id, @amount_window.amount) when RPG::Armor $game_party.gain_armor(@item.id, @amount_window.amount) end @gold_window.refresh @amount_window.amount = 1 @amount_window.visible = false @amount_window.active = false @list_window.active = true @list_window.refresh return else $game_system.se_play($data_system.buzzer_se) end end if Input.trigger?(Input::LEFT) $game_system.se_play($data_system.cursor_se) @amount_window.amount -= 1 if @amount_window.amount == 0 @amount_window.amount = 1 end return end if Input.trigger?(Input::RIGHT) $game_system.se_play($data_system.cursor_se) @amount_window.amount += 1 case @item when RPG::Item if ($game_party.item_number(@item.id) + @amount_window.amount) > 99 @amount_window.amount = (99 - $game_party.item_number(@item.id)) end when RPG::Weapon if ($game_party.weapon_number(@item.id) + @amount_window.amount) > 99 @amount_window.amount = (99 - $game_party.weapon_number(@item.id)) end when RPG::Armor if ($game_party.armor_number(@item.id) + @amount_window.amount) > 99 @amount_window.amount = (99 - $game_party.armor_number(@item.id)) end end return end if Input.trigger?(Input::UP) $game_system.se_play($data_system.cursor_se) @amount_window.amount += 10 case @item when RPG::Item if ($game_party.item_number(@item.id) + @amount_window.amount) > 99 @amount_window.amount = (99 - $game_party.item_number(@item.id)) end when RPG::Weapon if ($game_party.weapon_number(@item.id) + @amount_window.amount) > 99 @amount_window.amount = (99 - $game_party.weapon_number(@item.id)) end when RPG::Armor if ($game_party.armor_number(@item.id) + @amount_window.amount) > 99 @amount_window.amount = (99 - $game_party.armor_number(@item.id)) end end return end if Input.trigger?(Input::DOWN) $game_system.se_play($data_system.cursor_se) @amount_window.amount -= 10 if @amount_window.amount < 1 @amount_window.amount = 1 end return end end def update_sell @amount_window.refresh(@item, @option_window.index) if Input.trigger?(Input::B) $game_system.se_play($data_system.cancel_se) @amount_window.amount = 1 @amount_window.visible = false @amount_window.active = false @list_window.active = true return end if Input.trigger?(Input::C) if @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 $game_party.gain_gold(@amount_window.amount * (@item.price / 2)) $game_party.lose_item(@item.id, @amount_window.amount) when RPG::Weapon $game_party.gain_gold(@amount_window.amount * (@item.price / 2)) $game_party.lose_weapon(@item.id, @amount_window.amount) when RPG::Armor $game_party.gain_gold(@amount_window.amount * (@item.price / 2)) $game_party.lose_armor(@item.id, @amount_window.amount) end @gold_window.refresh @amount_window.amount = 1 @amount_window.visible = false @amount_window.active = false @list_window.active = true @list_window.refresh_sell(@option_window.index) @desc_equip_window.refresh(nil) @desc_item_window.refresh(nil) end if Input.trigger?(Input::LEFT) $game_system.se_play($data_system.cursor_se) @amount_window.amount -= 1 if @amount_window.amount < 1 @amount_window.amount = 1 end end if Input.trigger?(Input::RIGHT) $game_system.se_play($data_system.cursor_se) case @item when RPG::Item @amount_window.amount += 1 if @amount_window.amount > $game_party.item_number(@item.id) @amount_window.amount = $game_party.item_number(@item.id) end when RPG::Weapon @amount_window.amount += 1 if @amount_window.amount > $game_party.weapon_number(@item.id) @amount_window.amount = $game_party.weapon_number(@item.id) end when RPG::Armor @amount_window.amount += 1 if @amount_window.amount > $game_party.armor_number(@item.id) @amount_window.amount = $game_party.armor_number(@item.id) end end end if Input.trigger?(Input::UP) $game_system.se_play($data_system.cursor_se) case @item when RPG::Item @amount_window.amount += 10 if @amount_window.amount > $game_party.item_number(@item.id) @amount_window.amount = $game_party.item_number(@item.id) end when RPG::Weapon @amount_window.amount += 10 if @amount_window.amount > $game_party.weapon_number(@item.id) @amount_window.amount = $game_party.weapon_number(@item.id) end when RPG::Armor @amount_window.amount += 10 if @amount_window.amount > $game_party.armor_number(@item.id) @amount_window.amount = $game_party.armor_number(@item.id) end end end if Input.trigger?(Input::DOWN) $game_system.se_play($data_system.cursor_se) @amount_window.amount -= 10 if @amount_window.amount < 1 @amount_window.amount = 1 end end end end
Need Help With Small Script Bug
author=GreatRedSpirit
Thanks to: GreatRedSpirit for giving me a fix for a script that would sometimes divide by zero to always divide by zero! Glad it's working now at least :)
lol hey you got me on the right path dude
Need Help With Small Script Bug
author=GreatRedSpirit
If it's a divide by zero error then you can add a check to see if size is zero like so:if size > 0 chance = number * 100 / 0 else chance = 0 end
Or just set a minimum value for the size to be when assigning it:size = [@deck.size, 1].max
The .max will always pick the bigger of the two numbers so size can never be smaller than 1.
I tried copy pasting it and it didn't work then tweaked like so:
if size > 0 chance = number * 100 / size else chance = 0 end
Works like a charm, you single handedly saved my favorite minigame amigo, you are so getting a thanks in the credits :P
Need Help With Small Script Bug
My game: http://rpgmaker.net/games/4506/
I have a blackjack minigame I'm using that functions very well except for an error I'm getting on line 417, this part of code dictates the "dealer's actions however if size=0 it still attempts to divide 100 by size which of course you cannot do, however I know <0 about coding and could seriously use some help.
# Create Values
values = ('2'..amount.to_s).to_a << 'A'
# Get Number of Cards then won't make the dealer bust
number = @deck.number(*values)
# Get Size of Deck
size = @deck.size
# Get Chance of Not Busting
HERE->chance = number * 100 / size
# If chance is less than the riskiness or If value is less than minimum
if (100 - chance <= $game_system.dealer_risk ||
@dealer_hand.total <= $game_system.dealer_min)
# Hit Again
cpu_draw
# Return
I have a blackjack minigame I'm using that functions very well except for an error I'm getting on line 417, this part of code dictates the "dealer's actions however if size=0 it still attempts to divide 100 by size which of course you cannot do, however I know <0 about coding and could seriously use some help.
# Create Values
values = ('2'..amount.to_s).to_a << 'A'
# Get Number of Cards then won't make the dealer bust
number = @deck.number(*values)
# Get Size of Deck
size = @deck.size
# Get Chance of Not Busting
HERE->chance = number * 100 / size
# If chance is less than the riskiness or If value is less than minimum
if (100 - chance <= $game_system.dealer_risk ||
@dealer_hand.total <= $game_system.dealer_min)
# Hit Again
cpu_draw
# Return
Promoting my game, All original art!
Shamelessly promoting a game I'm working on entitled "Dark Arts" Link: http://rpgmaker.net/games/4506/ I'm doing all the artwork for the game (Tile sets, Battle anims, etc) with the exception of the chars which will be edits. Please give it a looksee if you like original RPG art. Here's a couple screenies to peek your interest...
New Artist saying 'ello
New Artist saying 'ello
author=Fugue
i like new artists i'm new too let's be friend.
i <3 <3 <3 everything about fruit of despair but i guess i'd better tell u that on ur game page.
Glad you like the work so far, all the art will be original by yours truely. Though I will probably use battle anims made by someone else :P
New Artist saying 'ello
author=MrChearlie
Welcome, tha't poster looks kick awesome O:
Hope you like the community ;)
Thankies, and yeah I'm totally digging it here
New Artist saying 'ello
author=dezz123
Damn man, that's some fine art!
That game looks incredibly unique; I might have to keep an eye out for your works.
But anyway; welcome to RMN. Glad to have you aboard!
Gracias, I love doing tile sets and game art in general. I really want to use the experience to try and add some game work to my portfolio
author=Clareain_Christopher
Welcome to RMN. I'll check out your DA once I get the chance.
Sounds good dude, I'm totally digging it here ;P