mirror of
https://github.com/infinitefusion/infinitefusion-e18.git
synced 2025-12-06 06:01:46 +00:00
bugfixes 1.5, speed up, variableShop
This commit is contained in:
53
Data/Scripts/050_AddOns/NonMoneyShop.rb
Normal file
53
Data/Scripts/050_AddOns/NonMoneyShop.rb
Normal file
@@ -0,0 +1,53 @@
|
||||
class VariableCurrencyMartAdapter < PokemonMartAdapter
|
||||
def initialize(currency)
|
||||
@currency_variable = currency
|
||||
end
|
||||
def getMoney
|
||||
return pbGet(@currency_variable).to_i
|
||||
end
|
||||
|
||||
def getMoneyString
|
||||
return pbGet(@currency_variable).to_s
|
||||
end
|
||||
|
||||
def setMoney(value)
|
||||
pbSet(@currency_variable,value)
|
||||
end
|
||||
end
|
||||
|
||||
|
||||
def pbVariablePokemonMart(stock,currencyVariable,currency_name="Points",speech=nil,cantsell=true)
|
||||
for i in 0...stock.length
|
||||
stock[i] = GameData::Item.get(stock[i]).id
|
||||
stock[i] = nil if GameData::Item.get(stock[i]).is_important? && $PokemonBag.pbHasItem?(stock[i])
|
||||
end
|
||||
stock.compact!
|
||||
commands = []
|
||||
cmdBuy = -1
|
||||
cmdSell = -1
|
||||
cmdQuit = -1
|
||||
commands[cmdBuy = commands.length] = _INTL("Buy")
|
||||
commands[cmdSell = commands.length] = _INTL("Sell") if !cantsell
|
||||
commands[cmdQuit = commands.length] = _INTL("Quit")
|
||||
cmd = pbMessage(
|
||||
speech ? speech : _INTL("Welcome! How may I serve you?"),
|
||||
commands,cmdQuit+1)
|
||||
loop do
|
||||
if cmdBuy>=0 && cmd==cmdBuy
|
||||
adapter = VariableCurrencyMartAdapter.new(currencyVariable)
|
||||
scene = PokemonMart_Scene.new(currency_name)
|
||||
screen = PokemonMartScreen.new(scene,stock,adapter)
|
||||
screen.pbBuyScreen
|
||||
elsif cmdSell>=0 && cmd==cmdSell #NOT IMPLEMENTED
|
||||
scene = PokemonMart_Scene.new(currency_name)
|
||||
screen = PokemonMartScreen.new(scene,stock,adapter)
|
||||
screen.pbSellScreen
|
||||
else
|
||||
pbMessage(_INTL("Please come again!"))
|
||||
break
|
||||
end
|
||||
cmd = pbMessage(_INTL("Is there anything else I can help you with?"),
|
||||
commands,cmdQuit+1)
|
||||
end
|
||||
$game_temp.clear_mart_prices
|
||||
end
|
||||
Reference in New Issue
Block a user