Witam wszystkich. PoszukujÄ skryptu na limit danego przedmiotu. Tzn chciaĹbym mĂłc ustawiÄ by np moĹźna byĹo posiadaÄ 99 "mikstur leczniczych" ale tylko maksymalnie 20 "elixirĂłw".
Z gĂłry dziÄkujÄ za pomoc.
________________________ "Darker than Black"
MoĹźe taki jestem.
# By ustawiÄ maksymalnÄ iloĹÄ wybranego przedmiotu w jego oknie notatek
# w bazie danych wpisz np. <MAX_ITEM 23> lub <maxitem 45>
end
class RPG::BaseItem
def max_amount
@amount = Ayene::ITEM_MAX_AMOUNT
@note.split(/[\r\n]+/).each { |line|
case line
when /^<(?:MAX_ITEM|maxitem)[ ]*(\d+)>/i
@amount = $1.to_i
end
}
return @amount
end
end
class Game_Party < Game_Unit
def gain_item(item, n, include_equip = false)
number = item_number(item)
case item
when RPG::Item
@items[item.id] = [[number + n, 0].max, item.max_amount].min
when RPG::Weapon
@weapons[item.id] = [[number + n, 0].max, item.max_amount].min
when RPG::Armor
@armors[item.id] = [[number + n, 0].max, item.max_amount].min
end
n += number
if include_equip and n < 0
for actor in members
while n < 0 and actor.equips.include?(item)
actor.discard_equip(item)
n += 1
end
end
end
end
end
Wielkie dziÄki Ayene. Jak zawsze niezastÄ piona ^ ^
PĂłki co wszystko dziaĹa jak naleĹźy, gdyby byĹo coĹ nie tak dam znaÄ na forum.
Skrypt ma jednÄ wadÄ: mianowicie osiÄ gnÄ juĹź maksymalnÄ liczbÄ eliksirĂłw jednak w sklepie nadal pokazuje Ĺźe mogÄ je kupiÄ i gracz nie wiedzÄ cy o tym straci duĹźo kasy na darmo :D Fajnie by byĹo gdyby w sklepie po osiÄ gniÄciu maksymalnej liczby danego przedmiotu nie mozna byĹo juĹź go kupiÄ. ChociaĹź ja nawet bez tego zrobiÄ ze skryptu poĹźytek :3
________________________ "Darker than Black"
MoĹźe taki jestem.
# By ustawiÄ maksymalnÄ iloĹÄ wybranego przedmiotu w jego oknie notatek
# w bazie danych wpisz np. <MAX_ITEM 23> lub <maxitem 45>
end
class RPG::BaseItem
def max_amount
@amount = Ayene::ITEM_MAX_AMOUNT
@note.split(/[\r\n]+/).each { |line|
case line
when /^<(?:MAX_ITEM|maxitem)[ ]*(\d+)>/i
@amount = $1.to_i
end
}
return @amount
end
end
class Game_Party < Game_Unit
def gain_item(item, n, include_equip = false)
number = item_number(item)
case item
when RPG::Item
@items[item.id] = [[number + n, 0].max, item.max_amount].min
when RPG::Weapon
@weapons[item.id] = [[number + n, 0].max, item.max_amount].min
when RPG::Armor
@armors[item.id] = [[number + n, 0].max, item.max_amount].min
end
n += number
if include_equip and n < 0
for actor in members
while n < 0 and actor.equips.include?(item)
actor.discard_equip(item)
n += 1
end
end
end
end
end
class Window_ShopBuy < Window_Selectable
def draw_item(index)
item = @data[index]
number = $game_party.item_number(item)
enabled = (item.price <= $game_party.gold and number < item.max_amount)
rect = item_rect(index)
self.contents.clear_rect(rect)
draw_item_name(item, rect.x, rect.y, enabled)
rect.width -= 4
self.contents.draw_text(rect, item.price, 2)
end
end
class Scene_Shop < Scene_Base
def update_buy_selection
@status_window.item = @buy_window.item
if Input.trigger?(Input::B)
Sound.play_cancel
@command_window.active = true
@dummy_window.visible = true
@buy_window.active = false
@buy_window.visible = false
@status_window.visible = false
@status_window.item = nil
@help_window.set_text("")
return
end
if Input.trigger?(Input::C)
@item = @buy_window.item
number = $game_party.item_number(@item)
if @item == nil || @item.price > $game_party.gold or
number == @item.max_amount
Sound.play_buzzer
else
Sound.play_decision
max = (@item.price == 0 ? @item.max_amount : $game_party.gold / @item.price)
max = [max, @item.max_amount - number].min
@buy_window.active = false
@buy_window.visible = false
@number_window.set(@item, max, @item.price)
@number_window.active = true
@number_window.visible = true
end
end
end
end
Nie możesz pisać nowych tematów Nie możesz odpowiadać w tematach Nie możesz zmieniać swoich postów Nie możesz usuwać swoich postów Nie możesz głosować w ankietach Nie możesz załączać plików na tym forum Możesz ściągać załączniki na tym forum