mirror of
https://github.com/infinitefusion/infinitefusion-e18.git
synced 2025-12-06 06:01:46 +00:00
Added Setting for item sell prices, added stat for primal reversions, fixed weird movement when jumping across a map connection
This commit is contained in:
@@ -255,6 +255,9 @@ module Settings
|
|||||||
# from a Mart at once (true), or 1 Premier Ball for buying 10+ regular Poké
|
# from a Mart at once (true), or 1 Premier Ball for buying 10+ regular Poké
|
||||||
# Balls (false).
|
# Balls (false).
|
||||||
MORE_BONUS_PREMIER_BALLS = (MECHANICS_GENERATION >= 8)
|
MORE_BONUS_PREMIER_BALLS = (MECHANICS_GENERATION >= 8)
|
||||||
|
# The default sell price of an item to a Poké Mart is its buy price divided by
|
||||||
|
# this number.
|
||||||
|
ITEM_SELL_PRICE_DIVISOR = (MECHANICS_GENERATION >= 9) ? 4 : 2
|
||||||
|
|
||||||
#-----------------------------------------------------------------------------
|
#-----------------------------------------------------------------------------
|
||||||
# Bag
|
# Bag
|
||||||
|
|||||||
@@ -418,3 +418,15 @@ SaveData.register_conversion(:v21_add_bump_stat) do
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
#===============================================================================
|
||||||
|
|
||||||
|
SaveData.register_conversion(:v22_add_primal_reversion_stat) do
|
||||||
|
essentials_version 22
|
||||||
|
display_title "Adding a primal reversion stat"
|
||||||
|
to_value :stats do |stats|
|
||||||
|
stats.instance_eval do
|
||||||
|
@primal_reversion_count = 0 if !@primal_reversion_count
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|||||||
@@ -442,9 +442,9 @@ class Interpreter
|
|||||||
$game_temp.mart_prices[item] = [-1, -1] if !$game_temp.mart_prices[item]
|
$game_temp.mart_prices[item] = [-1, -1] if !$game_temp.mart_prices[item]
|
||||||
$game_temp.mart_prices[item][0] = buy_price if buy_price > 0
|
$game_temp.mart_prices[item][0] = buy_price if buy_price > 0
|
||||||
if sell_price >= 0 # 0=can't sell
|
if sell_price >= 0 # 0=can't sell
|
||||||
$game_temp.mart_prices[item][1] = sell_price * 2
|
$game_temp.mart_prices[item][1] = sell_price
|
||||||
elsif buy_price > 0
|
elsif buy_price > 0
|
||||||
$game_temp.mart_prices[item][1] = buy_price
|
$game_temp.mart_prices[item][1] = buy_price / Settings::ITEM_SELL_PRICE_DIVISOR
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|||||||
@@ -93,7 +93,7 @@ class PokemonMapFactory
|
|||||||
# Detects whether the player has moved onto a connected map, and if so, causes
|
# Detects whether the player has moved onto a connected map, and if so, causes
|
||||||
# their transfer to that map.
|
# their transfer to that map.
|
||||||
def setCurrentMap
|
def setCurrentMap
|
||||||
return if $game_player.moving?
|
return if $game_player.moving? || $game_player.jumping?
|
||||||
return if $game_map.valid?($game_player.x, $game_player.y)
|
return if $game_map.valid?($game_player.x, $game_player.y)
|
||||||
newmap = getNewMap($game_player.x, $game_player.y)
|
newmap = getNewMap($game_player.x, $game_player.y)
|
||||||
return if !newmap
|
return if !newmap
|
||||||
|
|||||||
@@ -38,7 +38,7 @@ class GameStats
|
|||||||
attr_accessor :total_exp_gained
|
attr_accessor :total_exp_gained
|
||||||
attr_accessor :battle_money_gained, :battle_money_lost
|
attr_accessor :battle_money_gained, :battle_money_lost
|
||||||
attr_accessor :blacked_out_count
|
attr_accessor :blacked_out_count
|
||||||
attr_accessor :mega_evolution_count
|
attr_accessor :mega_evolution_count, :primal_reversion_count
|
||||||
attr_accessor :failed_poke_ball_count
|
attr_accessor :failed_poke_ball_count
|
||||||
# Currency
|
# Currency
|
||||||
attr_accessor :money_spent_at_marts
|
attr_accessor :money_spent_at_marts
|
||||||
@@ -118,6 +118,7 @@ class GameStats
|
|||||||
@battle_money_lost = 0
|
@battle_money_lost = 0
|
||||||
@blacked_out_count = 0
|
@blacked_out_count = 0
|
||||||
@mega_evolution_count = 0
|
@mega_evolution_count = 0
|
||||||
|
@primal_reversion_count = 0
|
||||||
@failed_poke_ball_count = 0
|
@failed_poke_ball_count = 0
|
||||||
# Currency
|
# Currency
|
||||||
@money_spent_at_marts = 0
|
@money_spent_at_marts = 0
|
||||||
|
|||||||
@@ -59,7 +59,7 @@ module GameData
|
|||||||
["PortionNamePlural", ItemNameProperty, _INTL("Name of 2 or more portions of this item as displayed by the game.")],
|
["PortionNamePlural", ItemNameProperty, _INTL("Name of 2 or more portions of this item as displayed by the game.")],
|
||||||
["Pocket", PocketProperty, _INTL("Pocket in the Bag where this item is stored.")],
|
["Pocket", PocketProperty, _INTL("Pocket in the Bag where this item is stored.")],
|
||||||
["Price", LimitProperty.new(Settings::MAX_MONEY), _INTL("Purchase price of this item.")],
|
["Price", LimitProperty.new(Settings::MAX_MONEY), _INTL("Purchase price of this item.")],
|
||||||
["SellPrice", LimitProperty2.new(Settings::MAX_MONEY), _INTL("Sell price of this item. If blank, is half the purchase price.")],
|
["SellPrice", LimitProperty2.new(Settings::MAX_MONEY), _INTL("Sell price of this item. If blank, is usually half the purchase price.")],
|
||||||
["BPPrice", LimitProperty.new(Settings::MAX_BATTLE_POINTS), _INTL("Purchase price of this item in Battle Points (BP).")],
|
["BPPrice", LimitProperty.new(Settings::MAX_BATTLE_POINTS), _INTL("Purchase price of this item in Battle Points (BP).")],
|
||||||
["FieldUse", EnumProperty.new(field_use_array), _INTL("How this item can be used outside of battle.")],
|
["FieldUse", EnumProperty.new(field_use_array), _INTL("How this item can be used outside of battle.")],
|
||||||
["BattleUse", EnumProperty.new(battle_use_array), _INTL("How this item can be used within a battle.")],
|
["BattleUse", EnumProperty.new(battle_use_array), _INTL("How this item can be used within a battle.")],
|
||||||
@@ -124,7 +124,7 @@ module GameData
|
|||||||
@real_portion_name_plural = hash[:real_portion_name_plural]
|
@real_portion_name_plural = hash[:real_portion_name_plural]
|
||||||
@pocket = hash[:pocket] || 1
|
@pocket = hash[:pocket] || 1
|
||||||
@price = hash[:price] || 0
|
@price = hash[:price] || 0
|
||||||
@sell_price = hash[:sell_price] || (@price / 2)
|
@sell_price = hash[:sell_price] || (@price / Settings::ITEM_SELL_PRICE_DIVISOR)
|
||||||
@bp_price = hash[:bp_price] || 1
|
@bp_price = hash[:bp_price] || 1
|
||||||
@field_use = hash[:field_use] || 0
|
@field_use = hash[:field_use] || 0
|
||||||
@battle_use = hash[:battle_use] || 0
|
@battle_use = hash[:battle_use] || 0
|
||||||
@@ -255,7 +255,7 @@ module GameData
|
|||||||
ret = __orig__get_property_for_PBS(key)
|
ret = __orig__get_property_for_PBS(key)
|
||||||
case key
|
case key
|
||||||
when "SellPrice"
|
when "SellPrice"
|
||||||
ret = nil if ret == @price / 2
|
ret = nil if ret == @price / Settings::ITEM_SELL_PRICE_DIVISOR
|
||||||
when "BPPrice"
|
when "BPPrice"
|
||||||
ret = nil if ret == 1
|
ret = nil if ret == 1
|
||||||
when "FieldUse", "BattleUse"
|
when "FieldUse", "BattleUse"
|
||||||
|
|||||||
@@ -181,6 +181,7 @@ class Battle
|
|||||||
battler = @battlers[idxBattler]
|
battler = @battlers[idxBattler]
|
||||||
return if !battler || !battler.pokemon || battler.fainted?
|
return if !battler || !battler.pokemon || battler.fainted?
|
||||||
return if !battler.hasPrimal? || battler.primal?
|
return if !battler.hasPrimal? || battler.primal?
|
||||||
|
$stats.primal_reversion_count += 1 if battler.pbOwnedByPlayer?
|
||||||
if battler.isSpecies?(:KYOGRE)
|
if battler.isSpecies?(:KYOGRE)
|
||||||
pbCommonAnimation("PrimalKyogre", battler)
|
pbCommonAnimation("PrimalKyogre", battler)
|
||||||
elsif battler.isSpecies?(:GROUDON)
|
elsif battler.isSpecies?(:GROUDON)
|
||||||
|
|||||||
@@ -215,6 +215,7 @@ def pbHatch(pokemon)
|
|||||||
pokemon.name = nil
|
pokemon.name = nil
|
||||||
pokemon.owner = Pokemon::Owner.new_from_trainer($player)
|
pokemon.owner = Pokemon::Owner.new_from_trainer($player)
|
||||||
pokemon.happiness = 120
|
pokemon.happiness = 120
|
||||||
|
pokemon.steps_to_hatch = 0
|
||||||
pokemon.timeEggHatched = Time.now.to_i
|
pokemon.timeEggHatched = Time.now.to_i
|
||||||
pokemon.obtain_method = 1 # hatched from egg
|
pokemon.obtain_method = 1 # hatched from egg
|
||||||
pokemon.hatched_map = $game_map.map_id
|
pokemon.hatched_map = $game_map.map_id
|
||||||
|
|||||||
Reference in New Issue
Block a user