mirror of
https://github.com/infinitefusion/infinitefusion-e18.git
synced 2025-12-06 06:01:46 +00:00
Adds way to favorite hats and clothes and item to quickly swap to them
This commit is contained in:
BIN
Data/.DS_Store
vendored
BIN
Data/.DS_Store
vendored
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -22,6 +22,8 @@ class Player < Trainer
|
|||||||
attr_accessor :dyed_hats
|
attr_accessor :dyed_hats
|
||||||
attr_accessor :dyed_clothes
|
attr_accessor :dyed_clothes
|
||||||
|
|
||||||
|
attr_accessor :favorite_hat
|
||||||
|
attr_accessor :favorite_clothes
|
||||||
|
|
||||||
attr_accessor :last_worn_outfit
|
attr_accessor :last_worn_outfit
|
||||||
attr_accessor :last_worn_hat
|
attr_accessor :last_worn_hat
|
||||||
@@ -292,6 +294,8 @@ class Player < Trainer
|
|||||||
@dyed_hats = {}
|
@dyed_hats = {}
|
||||||
@dyed_clothes = {}
|
@dyed_clothes = {}
|
||||||
|
|
||||||
|
@favorite_hat = nil
|
||||||
|
@favorite_clothes = nil
|
||||||
|
|
||||||
@card_background = Settings::DEFAULT_TRAINER_CARD_BG
|
@card_background = Settings::DEFAULT_TRAINER_CARD_BG
|
||||||
@unlocked_card_backgrounds = [@card_background]
|
@unlocked_card_backgrounds = [@card_background]
|
||||||
|
|||||||
@@ -19,7 +19,9 @@ class ClothesMartAdapter < OutfitsMartAdapter
|
|||||||
|
|
||||||
def getDisplayName(item)
|
def getDisplayName(item)
|
||||||
return getName(item) if !item.name
|
return getName(item) if !item.name
|
||||||
return item.name
|
name = item.name
|
||||||
|
name = "* #{name}" if item.id == $Trainer.favorite_clothes
|
||||||
|
return name
|
||||||
end
|
end
|
||||||
|
|
||||||
def getDescription(item)
|
def getDescription(item)
|
||||||
|
|||||||
@@ -24,16 +24,19 @@ class ClothesShopPresenter < PokemonMartScreen
|
|||||||
|
|
||||||
remove_dye_option_available = $Trainer.hat_color != 0
|
remove_dye_option_available = $Trainer.hat_color != 0
|
||||||
options << "Remove dye" if remove_dye_option_available
|
options << "Remove dye" if remove_dye_option_available
|
||||||
|
options << "Mark as favorite" if $Trainer.favorite_hat != item.id
|
||||||
|
options << "Unmark as favorite" if $Trainer.favorite_hat == item.id
|
||||||
|
|
||||||
options << "Cancel"
|
options << "Cancel"
|
||||||
#if $Trainer.hat_color != 0
|
# if $Trainer.hat_color != 0
|
||||||
choice = pbMessage("What would you like to do?",options,-1)
|
choice = pbMessage("What would you like to do?", options, -1)
|
||||||
if choice == 0
|
if choice == 0
|
||||||
if is_player_hat #remove
|
if is_player_hat # remove
|
||||||
@adapter.doSpecialItemAction(:REMOVE)
|
@adapter.doSpecialItemAction(:REMOVE)
|
||||||
@scene.pbEndBuyScene
|
@scene.pbEndBuyScene
|
||||||
return false
|
return false
|
||||||
else
|
else
|
||||||
#wear
|
# wear
|
||||||
putOnClothes(item)
|
putOnClothes(item)
|
||||||
$Trainer.hat_color = @adapter.get_dye_color(item)
|
$Trainer.hat_color = @adapter.get_dye_color(item)
|
||||||
return false
|
return false
|
||||||
@@ -43,27 +46,47 @@ class ClothesShopPresenter < PokemonMartScreen
|
|||||||
$Trainer.hat_color = 0
|
$Trainer.hat_color = 0
|
||||||
end
|
end
|
||||||
return true
|
return true
|
||||||
|
elsif options[choice] == "Mark as favorite"
|
||||||
|
$Trainer.favorite_hat = item.id
|
||||||
|
pbSEPlay("GUI storage show party panel")
|
||||||
|
pbMessage("The #{item.name} is now your favorite!")
|
||||||
|
echoln "marked #{item.id} as favorite hat"
|
||||||
|
elsif options[choice] == "Unmark as favorite"
|
||||||
|
$Trainer.favorite_hat = nil
|
||||||
|
pbSEPlay("GUI storage show party panel")
|
||||||
|
pbMessage("The #{item.name} is no longer marked as your favorite!")
|
||||||
end
|
end
|
||||||
echoln "cancelled"
|
echoln "cancelled"
|
||||||
return true
|
return true
|
||||||
end
|
end
|
||||||
|
|
||||||
#returns if should stay in the menu
|
# returns if should stay in the menu
|
||||||
def playerClothesActionsMenu(item)
|
def playerClothesActionsMenu(item)
|
||||||
is_worn = item.id == @adapter.worn_clothes
|
is_worn = item.id == @adapter.worn_clothes
|
||||||
options = []
|
options = []
|
||||||
options << "Wear"
|
options << "Wear"
|
||||||
options << "Remove dye" if $Trainer.clothes_color != 0
|
options << "Remove dye" if $Trainer.clothes_color != 0
|
||||||
|
options << "Mark as favorite" if $Trainer.favorite_hat != item.id
|
||||||
|
options << "Unmark as favorite" if $Trainer.favorite_hat == item.id
|
||||||
options << "Cancel"
|
options << "Cancel"
|
||||||
choice = pbMessage("What would you like to do?",options,-1)
|
choice = pbMessage("What would you like to do?", options, -1)
|
||||||
|
|
||||||
if choice == 0
|
if choice == 0
|
||||||
putOnClothes(item)
|
putOnClothes(item)
|
||||||
$Trainer.clothes_color = @adapter.get_dye_color(item)
|
$Trainer.clothes_color = @adapter.get_dye_color(item)
|
||||||
return false
|
return false
|
||||||
elsif choice == 1
|
elsif options[choice] == "Remove dye"
|
||||||
if pbConfirm(_INTL("Are you sure you want to remove the dye from the {1}?", item.name))
|
if pbConfirm(_INTL("Are you sure you want to remove the dye from the {1}?", item.name))
|
||||||
$Trainer.clothes_color = 0
|
$Trainer.clothes_color = 0
|
||||||
end
|
end
|
||||||
|
elsif options[choice] == "Mark as favorite"
|
||||||
|
$Trainer.favorite_clothes = item.id
|
||||||
|
pbSEPlay("GUI storage show party panel")
|
||||||
|
pbMessage("The #{item.name} is now your favorite!")
|
||||||
|
elsif options[choice] == "Unmark favorite"
|
||||||
|
$Trainer.favorite_clothes = nil
|
||||||
|
pbSEPlay("GUI storage show party panel")
|
||||||
|
pbMessage("The #{item.name} is no longer marked as your favorite!")
|
||||||
end
|
end
|
||||||
return true
|
return true
|
||||||
end
|
end
|
||||||
@@ -120,7 +143,7 @@ class ClothesShopPresenter < PokemonMartScreen
|
|||||||
@stock.compact!
|
@stock.compact!
|
||||||
pbDisplayPaused(_INTL("Here you are! Thank you!")) { pbSEPlay("Mart buy item") }
|
pbDisplayPaused(_INTL("Here you are! Thank you!")) { pbSEPlay("Mart buy item") }
|
||||||
@adapter.addItem(item)
|
@adapter.addItem(item)
|
||||||
#break
|
# break
|
||||||
end
|
end
|
||||||
@scene.pbEndBuyScene
|
@scene.pbEndBuyScene
|
||||||
end
|
end
|
||||||
|
|||||||
@@ -32,7 +32,9 @@ class HatsMartAdapter < OutfitsMartAdapter
|
|||||||
|
|
||||||
def getDisplayName(item)
|
def getDisplayName(item)
|
||||||
return getName(item) if !item.name
|
return getName(item) if !item.name
|
||||||
return item.name
|
name = item.name
|
||||||
|
name = "* #{name}" if item.id == $Trainer.favorite_hat
|
||||||
|
return name
|
||||||
end
|
end
|
||||||
|
|
||||||
def getDescription(item)
|
def getDescription(item)
|
||||||
@@ -79,7 +81,7 @@ class HatsMartAdapter < OutfitsMartAdapter
|
|||||||
$Trainer.hat_color=0
|
$Trainer.hat_color=0
|
||||||
previewWindow.hat_color=0
|
previewWindow.hat_color=0
|
||||||
end
|
end
|
||||||
echoln $Trainer.dyed_hats
|
#echoln $Trainer.dyed_hats
|
||||||
else
|
else
|
||||||
$Trainer.hat_color=0
|
$Trainer.hat_color=0
|
||||||
previewWindow.hat_color=0
|
previewWindow.hat_color=0
|
||||||
|
|||||||
@@ -1,55 +1,4 @@
|
|||||||
ItemHandlers::BattleUseOnBattler.add(:POKEDEX, proc { |item, battler, scene|
|
|
||||||
#if battler.battle.battlers.length > -1
|
|
||||||
# scene.pbDisplay(_INTL(" The length is {1}",battler.battle.battlers.length))
|
|
||||||
# scene.pbDisplay(_INTL("The PokéDex cannot be used on multiple enemies at once!"))
|
|
||||||
# return false
|
|
||||||
#end
|
|
||||||
|
|
||||||
doublebattle = false
|
|
||||||
#DOUBLE BATTLES A FAIRE
|
|
||||||
#variable temporaire doublebattle
|
|
||||||
if doublebattle
|
|
||||||
e = battler.pbOpposing2
|
|
||||||
else
|
|
||||||
is_trainer = battler.battle.opponent
|
|
||||||
|
|
||||||
e1 = battler.pbOpposing1.pokemon
|
|
||||||
enemyname = e1.name
|
|
||||||
e1type1 = e1.type1
|
|
||||||
e1type2 = e1.type2
|
|
||||||
end
|
|
||||||
if e1type1 == e1type2
|
|
||||||
scene.pbDisplay(_INTL("{2} has been identified as a {1} type Pokémon.", PBTypes.getName(e1type1), enemyname))
|
|
||||||
else
|
|
||||||
scene.pbDisplay(_INTL("{3} has been identified as a {1}/{2} type Pokémon.", PBTypes.getName(e1type1), PBTypes.getName(e1type2), enemyname))
|
|
||||||
|
|
||||||
if $game_switches[10] #BADGE 7
|
|
||||||
if battler.pbCanIncreaseStatStage?(PBStats::DEFENSE, false)
|
|
||||||
battler.pbIncreaseStat(PBStats::DEFENSE, 1, true)
|
|
||||||
end
|
|
||||||
if battler.pbCanIncreaseStatStage?(PBStats::SPDEF, false)
|
|
||||||
battler.pbIncreaseStat(PBStats::SPDEF, 1, true)
|
|
||||||
end
|
|
||||||
if battler.pbCanIncreaseStatStage?(PBStats::ACCURACY, false)
|
|
||||||
battler.pbIncreaseStat(PBStats::ACCURACY, 3, true)
|
|
||||||
end
|
|
||||||
elsif $game_switches[8] #BADGE 5
|
|
||||||
if battler.pbCanIncreaseStatStage?(PBStats::ACCURACY, false)
|
|
||||||
battler.pbIncreaseStat(PBStats::ACCURACY, 3, true)
|
|
||||||
end
|
|
||||||
elsif $game_switches[6] #BADGE 3
|
|
||||||
if battler.pbCanIncreaseStatStage?(PBStats::ACCURACY, false)
|
|
||||||
battler.pbIncreaseStat(PBStats::ACCURACY, 2, true)
|
|
||||||
end
|
|
||||||
elsif $game_switches[8] #BADGE 1
|
|
||||||
if battler.pbCanIncreaseStatStage?(PBStats::ACCURACY, false)
|
|
||||||
battler.pbIncreaseStat(PBStats::ACCURACY, 1, true)
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
return true
|
|
||||||
end
|
|
||||||
})
|
|
||||||
|
|
||||||
ItemHandlers::UseInBattle.add(:POKEDOLL, proc { |item, battler, battle|
|
ItemHandlers::UseInBattle.add(:POKEDOLL, proc { |item, battler, battle|
|
||||||
battle.decision = 3
|
battle.decision = 3
|
||||||
@@ -144,58 +93,7 @@ def useTeleporter()
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
ItemHandlers::BattleUseOnBattler.add(:POKEDEX, proc { |item, battler, scene|
|
|
||||||
#if battler.battle.battlers.length > -1
|
|
||||||
# scene.pbDisplay(_INTL(" The length is {1}",battler.battle.battlers.length))
|
|
||||||
# scene.pbDisplay(_INTL("The PokéDex cannot be used on multiple enemies at once!"))
|
|
||||||
# return false
|
|
||||||
#end
|
|
||||||
|
|
||||||
doublebattle = false
|
|
||||||
#DOUBLE BATTLES A FAIRE
|
|
||||||
#variable temporaire doublebattle
|
|
||||||
if doublebattle
|
|
||||||
e = battler.pbOpposing2
|
|
||||||
else
|
|
||||||
is_trainer = battler.battle.opponent
|
|
||||||
|
|
||||||
e1 = battler.pbOpposing1.pokemon
|
|
||||||
enemyname = e1.name
|
|
||||||
e1type1 = e1.type1
|
|
||||||
e1type2 = e1.type2
|
|
||||||
end
|
|
||||||
if e1type1 == e1type2
|
|
||||||
scene.pbDisplay(_INTL("{2} has been identified as a {1} type Pokémon.", PBTypes.getName(e1type1), enemyname))
|
|
||||||
else
|
|
||||||
scene.pbDisplay(_INTL("{3} has been identified as a {1}/{2} type Pokémon.", PBTypes.getName(e1type1), PBTypes.getName(e1type2), enemyname))
|
|
||||||
|
|
||||||
if $game_switches[10] #BADGE 7
|
|
||||||
if battler.pbCanIncreaseStatStage?(PBStats::DEFENSE, false)
|
|
||||||
battler.pbIncreaseStat(PBStats::DEFENSE, 1, true)
|
|
||||||
end
|
|
||||||
if battler.pbCanIncreaseStatStage?(PBStats::SPDEF, false)
|
|
||||||
battler.pbIncreaseStat(PBStats::SPDEF, 1, true)
|
|
||||||
end
|
|
||||||
if battler.pbCanIncreaseStatStage?(PBStats::ACCURACY, false)
|
|
||||||
battler.pbIncreaseStat(PBStats::ACCURACY, 3, true)
|
|
||||||
end
|
|
||||||
elsif $game_switches[8] #BADGE 5
|
|
||||||
if battler.pbCanIncreaseStatStage?(PBStats::ACCURACY, false)
|
|
||||||
battler.pbIncreaseStat(PBStats::ACCURACY, 3, true)
|
|
||||||
end
|
|
||||||
elsif $game_switches[6] #BADGE 3
|
|
||||||
if battler.pbCanIncreaseStatStage?(PBStats::ACCURACY, false)
|
|
||||||
battler.pbIncreaseStat(PBStats::ACCURACY, 2, true)
|
|
||||||
end
|
|
||||||
elsif $game_switches[8] #BADGE 1
|
|
||||||
if battler.pbCanIncreaseStatStage?(PBStats::ACCURACY, false)
|
|
||||||
battler.pbIncreaseStat(PBStats::ACCURACY, 1, true)
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
return true
|
|
||||||
end
|
|
||||||
})
|
|
||||||
|
|
||||||
ItemHandlers::UseInBattle.add(:POKEDOLL, proc { |item, battler, battle|
|
ItemHandlers::UseInBattle.add(:POKEDOLL, proc { |item, battler, battle|
|
||||||
battle.decision = 3
|
battle.decision = 3
|
||||||
@@ -238,7 +136,7 @@ ItemHandlers::UseOnPokemon.add(:TRANSGENDERSTONE, proc { |item, pokemon, scene|
|
|||||||
end
|
end
|
||||||
})
|
})
|
||||||
|
|
||||||
#NOT FULLY IMPLEMENTED
|
# NOT FULLY IMPLEMENTED
|
||||||
ItemHandlers::UseOnPokemon.add(:SECRETCAPSULE, proc { |item, poke, scene|
|
ItemHandlers::UseOnPokemon.add(:SECRETCAPSULE, proc { |item, poke, scene|
|
||||||
abilityList = poke.getAbilityList
|
abilityList = poke.getAbilityList
|
||||||
numAbilities = abilityList[0].length
|
numAbilities = abilityList[0].length
|
||||||
@@ -429,6 +327,14 @@ ItemHandlers::UseInField.add(:ROCKETUNIFORM, proc { |item|
|
|||||||
next useRocketUniform()
|
next useRocketUniform()
|
||||||
})
|
})
|
||||||
|
|
||||||
|
ItemHandlers::UseFromBag.add(:FAVORITEOUTFIT, proc { |item|
|
||||||
|
next useFavoriteOutfit()
|
||||||
|
})
|
||||||
|
|
||||||
|
ItemHandlers::UseInField.add(:FAVORITEOUTFIT, proc { |item|
|
||||||
|
next useFavoriteOutfit()
|
||||||
|
})
|
||||||
|
|
||||||
ItemHandlers::UseInField.add(:EMERGENCYWHISTLE, proc { |item|
|
ItemHandlers::UseInField.add(:EMERGENCYWHISTLE, proc { |item|
|
||||||
if isOnPinkanIsland()
|
if isOnPinkanIsland()
|
||||||
pbCommonEvent(COMMON_EVENT_PINKAN_WHISTLE)
|
pbCommonEvent(COMMON_EVENT_PINKAN_WHISTLE)
|
||||||
@@ -471,16 +377,45 @@ ItemHandlers::UseFromBag.add(:ODDKEYSTONE, proc { |item|
|
|||||||
end
|
end
|
||||||
})
|
})
|
||||||
|
|
||||||
|
def useFavoriteOutfit()
|
||||||
|
if !$Trainer.favorite_clothes && !$Trainer.favorite_hat
|
||||||
|
pbMessage(_INTL("You can mark clothes and hats as your favorites in the outfits menu and use this to quickly switch to them!"))
|
||||||
|
return 0
|
||||||
|
end
|
||||||
|
|
||||||
|
if isWearingFavoriteOutfit()
|
||||||
|
if (Kernel.pbConfirmMessage("Remove your favorite outfit?"))
|
||||||
|
if ($Trainer.last_worn_outfit == $Trainer.favorite_clothes && $Trainer.last_worn_hat == $Trainer.favorite_hat)
|
||||||
|
$Trainer.last_worn_outfit = getDefaultClothes()
|
||||||
|
end
|
||||||
|
playOutfitChangeAnimation()
|
||||||
|
putOnClothes($Trainer.last_worn_outfit, true) if $Trainer.favorite_clothes
|
||||||
|
putOnHat($Trainer.last_worn_hat, true) if $Trainer.favorite_hat
|
||||||
|
else
|
||||||
|
return 0
|
||||||
|
end
|
||||||
|
|
||||||
|
else
|
||||||
|
if (Kernel.pbConfirmMessage("Put on your favorite outfit?"))
|
||||||
|
playOutfitChangeAnimation()
|
||||||
|
putOnClothes($Trainer.favorite_clothes, true) if $Trainer.favorite_clothes
|
||||||
|
putOnHat($Trainer.favorite_hat, true) if $Trainer.favorite_hat
|
||||||
|
else
|
||||||
|
return 0
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
def useRocketUniform()
|
def useRocketUniform()
|
||||||
return 0 if !$game_switches[SWITCH_JOINED_TEAM_ROCKET]
|
return 0 if !$game_switches[SWITCH_JOINED_TEAM_ROCKET]
|
||||||
if isWearingTeamRocketOutfit()
|
if isWearingTeamRocketOutfit()
|
||||||
if (Kernel.pbConfirmMessage("Remove the Team Rocket uniform?"))
|
if (Kernel.pbConfirmMessage("Remove the Team Rocket uniform?"))
|
||||||
if ($Trainer.last_worn_outfit == CLOTHES_TEAM_ROCKET_MALE || $Trainer.last_worn_outfit == CLOTHES_TEAM_ROCKET_FEMALE) && $Trainer.last_worn_hat == HAT_TEAM_ROCKET
|
if ($Trainer.last_worn_outfit == CLOTHES_TEAM_ROCKET_MALE || $Trainer.last_worn_outfit == CLOTHES_TEAM_ROCKET_FEMALE) && $Trainer.last_worn_hat == HAT_TEAM_ROCKET
|
||||||
$Trainer.last_worn_outfit =getDefaultClothes()
|
$Trainer.last_worn_outfit = getDefaultClothes()
|
||||||
end
|
end
|
||||||
playOutfitChangeAnimation()
|
playOutfitChangeAnimation()
|
||||||
putOnClothes($Trainer.last_worn_outfit,true)
|
putOnClothes($Trainer.last_worn_outfit, true)
|
||||||
putOnHat($Trainer.last_worn_hat,true)
|
putOnHat($Trainer.last_worn_hat, true)
|
||||||
else
|
else
|
||||||
return 0
|
return 0
|
||||||
end
|
end
|
||||||
@@ -489,11 +424,11 @@ def useRocketUniform()
|
|||||||
playOutfitChangeAnimation()
|
playOutfitChangeAnimation()
|
||||||
gender = pbGet(VAR_TRAINER_GENDER)
|
gender = pbGet(VAR_TRAINER_GENDER)
|
||||||
if gender == GENDER_MALE
|
if gender == GENDER_MALE
|
||||||
putOnClothes(CLOTHES_TEAM_ROCKET_MALE,true)
|
putOnClothes(CLOTHES_TEAM_ROCKET_MALE, true)
|
||||||
else
|
else
|
||||||
putOnClothes(CLOTHES_TEAM_ROCKET_FEMALE,true)
|
putOnClothes(CLOTHES_TEAM_ROCKET_FEMALE, true)
|
||||||
end
|
end
|
||||||
putOnHat(HAT_TEAM_ROCKET,true)
|
putOnHat(HAT_TEAM_ROCKET, true)
|
||||||
#$scene.reset_map(true)
|
#$scene.reset_map(true)
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
@@ -519,7 +454,7 @@ def useStrangePlant
|
|||||||
|
|
||||||
end
|
end
|
||||||
|
|
||||||
#DREAMMIRROR
|
# DREAMMIRROR
|
||||||
ItemHandlers::UseFromBag.add(:DREAMMIRROR, proc { |item|
|
ItemHandlers::UseFromBag.add(:DREAMMIRROR, proc { |item|
|
||||||
useDreamMirror
|
useDreamMirror
|
||||||
next 1
|
next 1
|
||||||
@@ -530,7 +465,7 @@ ItemHandlers::UseInField.add(:DREAMMIRROR, proc { |item|
|
|||||||
next 1
|
next 1
|
||||||
})
|
})
|
||||||
|
|
||||||
#STRANGE PLANT
|
# STRANGE PLANT
|
||||||
ItemHandlers::UseFromBag.add(:STRANGEPLANT, proc { |item|
|
ItemHandlers::UseFromBag.add(:STRANGEPLANT, proc { |item|
|
||||||
useStrangePlant()
|
useStrangePlant()
|
||||||
next 1
|
next 1
|
||||||
@@ -549,7 +484,7 @@ ItemHandlers::UseFromBag.add(:MAGICBOOTS, proc { |item|
|
|||||||
else
|
else
|
||||||
if Kernel.pbConfirmMessageSerious(_INTL("Put on the Magic Boots?"))
|
if Kernel.pbConfirmMessageSerious(_INTL("Put on the Magic Boots?"))
|
||||||
Kernel.pbMessage(_INTL("Debug mode is now active."))
|
Kernel.pbMessage(_INTL("Debug mode is now active."))
|
||||||
$game_switches[ENABLED_DEBUG_MODE_AT_LEAST_ONCE] = true #got debug mode (for compatibility)
|
$game_switches[ENABLED_DEBUG_MODE_AT_LEAST_ONCE] = true # got debug mode (for compatibility)
|
||||||
$DEBUG = true
|
$DEBUG = true
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
@@ -680,7 +615,7 @@ def reverseFusion(pokemon)
|
|||||||
pokemon.exp_when_fused_head = body_exp
|
pokemon.exp_when_fused_head = body_exp
|
||||||
|
|
||||||
pokemon.head_shiny, pokemon.body_shiny = pokemon.body_shiny, pokemon.head_shiny
|
pokemon.head_shiny, pokemon.body_shiny = pokemon.body_shiny, pokemon.head_shiny
|
||||||
#play animation
|
# play animation
|
||||||
pbFadeOutInWithMusic(99999) {
|
pbFadeOutInWithMusic(99999) {
|
||||||
fus = PokemonEvolutionScene.new
|
fus = PokemonEvolutionScene.new
|
||||||
fus.pbStartScreen(pokemon, newspecies, true)
|
fus.pbStartScreen(pokemon, newspecies, true)
|
||||||
@@ -705,7 +640,7 @@ ItemHandlers::UseOnPokemon.add(:INFINITEREVERSERS, proc { |item, pokemon, scene|
|
|||||||
pokemon.exp_when_fused_body = head_exp
|
pokemon.exp_when_fused_body = head_exp
|
||||||
pokemon.exp_when_fused_head = body_exp
|
pokemon.exp_when_fused_head = body_exp
|
||||||
|
|
||||||
#play animation
|
# play animation
|
||||||
pbFadeOutInWithMusic(99999) {
|
pbFadeOutInWithMusic(99999) {
|
||||||
fus = PokemonEvolutionScene.new
|
fus = PokemonEvolutionScene.new
|
||||||
fus.pbStartScreen(pokemon, newspecies, true)
|
fus.pbStartScreen(pokemon, newspecies, true)
|
||||||
@@ -903,26 +838,26 @@ def returnItemsToBag(pokemon, poke2)
|
|||||||
poke2.item = nil
|
poke2.item = nil
|
||||||
end
|
end
|
||||||
|
|
||||||
#A AJOUTER: l'attribut dmgup ne modifie presentement pas
|
# A AJOUTER: l'attribut dmgup ne modifie presentement pas
|
||||||
# le damage d'une attaque
|
# le damage d'une attaque
|
||||||
#
|
#
|
||||||
ItemHandlers::UseOnPokemon.add(:DAMAGEUP, proc { |item, pokemon, scene|
|
ItemHandlers::UseOnPokemon.add(:DAMAGEUP, proc { |item, pokemon, scene|
|
||||||
move = scene.pbChooseMove(pokemon, _INTL("Boost Damage of which move?"))
|
move = scene.pbChooseMove(pokemon, _INTL("Boost Damage of which move?"))
|
||||||
if move >= 0
|
if move >= 0
|
||||||
#if pokemon.moves[move].damage==0 || pokemon.moves[move].accuracy<=5 || pokemon.moves[move].dmgup >=3
|
# if pokemon.moves[move].damage==0 || pokemon.moves[move].accuracy<=5 || pokemon.moves[move].dmgup >=3
|
||||||
# scene.pbDisplay(_INTL("It won't have any effect."))
|
# scene.pbDisplay(_INTL("It won't have any effect."))
|
||||||
# next false
|
# next false
|
||||||
#else
|
# else
|
||||||
#pokemon.moves[move].dmgup+=1
|
# pokemon.moves[move].dmgup+=1
|
||||||
#pokemon.moves[move].damage +=5
|
# pokemon.moves[move].damage +=5
|
||||||
#pokemon.moves[move].accuracy -=5
|
# pokemon.moves[move].accuracy -=5
|
||||||
|
|
||||||
#movename=PBMoves.getName(pokemon.moves[move].id)
|
# movename=PBMoves.getName(pokemon.moves[move].id)
|
||||||
#scene.pbDisplay(_INTL("{1}'s damage increased.",movename))
|
# scene.pbDisplay(_INTL("{1}'s damage increased.",movename))
|
||||||
#next true
|
# next true
|
||||||
scene.pbDisplay(_INTL("This item has not been implemented into the game yet. It had no effect."))
|
scene.pbDisplay(_INTL("This item has not been implemented into the game yet. It had no effect."))
|
||||||
next false
|
next false
|
||||||
#end
|
# end
|
||||||
end
|
end
|
||||||
})
|
})
|
||||||
|
|
||||||
@@ -1015,7 +950,7 @@ ItemHandlers::UseOnPokemon.add(:DAMAGEUP, proc { |item, pokemon, scene|
|
|||||||
# end
|
# end
|
||||||
# })
|
# })
|
||||||
|
|
||||||
#easter egg for evolving shellder into slowbro's tail
|
# easter egg for evolving shellder into slowbro's tail
|
||||||
ItemHandlers::UseOnPokemon.add(:SLOWPOKETAIL, proc { |item, pokemon, scene|
|
ItemHandlers::UseOnPokemon.add(:SLOWPOKETAIL, proc { |item, pokemon, scene|
|
||||||
echoln pokemon.species
|
echoln pokemon.species
|
||||||
next false if pokemon.species != :SHELLDER
|
next false if pokemon.species != :SHELLDER
|
||||||
@@ -1160,7 +1095,7 @@ ItemHandlers::BattleUseOnPokemon.add(:BALMMUSHROOM, proc { |item, pokemon, battl
|
|||||||
# })
|
# })
|
||||||
|
|
||||||
####EXP. ALL
|
####EXP. ALL
|
||||||
#Methodes relative a l'exp sont pas encore la et pas compatibles
|
# Methodes relative a l'exp sont pas encore la et pas compatibles
|
||||||
# avec cette version de essentials donc
|
# avec cette version de essentials donc
|
||||||
# ca fait fuck all pour l'instant.
|
# ca fait fuck all pour l'instant.
|
||||||
ItemHandlers::UseFromBag.add(:EXPALL, proc { |item|
|
ItemHandlers::UseFromBag.add(:EXPALL, proc { |item|
|
||||||
@@ -1235,7 +1170,7 @@ ItemHandlers::UseOnPokemon.add(:TRANSGENDERSTONE, proc { |item, pokemon, scene|
|
|||||||
#
|
#
|
||||||
# })
|
# })
|
||||||
|
|
||||||
#NOT FULLY IMPLEMENTED
|
# NOT FULLY IMPLEMENTED
|
||||||
ItemHandlers::UseOnPokemon.add(:SECRETCAPSULE, proc { |item, poke, scene|
|
ItemHandlers::UseOnPokemon.add(:SECRETCAPSULE, proc { |item, poke, scene|
|
||||||
abilityList = poke.getAbilityList
|
abilityList = poke.getAbilityList
|
||||||
numAbilities = abilityList[0].length
|
numAbilities = abilityList[0].length
|
||||||
@@ -1387,7 +1322,7 @@ ItemHandlers::UseOnPokemon.add(:MISTSTONE, proc { |item, pokemon, scene|
|
|||||||
def pbForceEvo(pokemon)
|
def pbForceEvo(pokemon)
|
||||||
evolutions = getEvolvedSpecies(pokemon)
|
evolutions = getEvolvedSpecies(pokemon)
|
||||||
return false if evolutions.empty?
|
return false if evolutions.empty?
|
||||||
#if multiple evolutions, pick a random one
|
# if multiple evolutions, pick a random one
|
||||||
#(format of returned value is [[speciesNum, level]])
|
#(format of returned value is [[speciesNum, level]])
|
||||||
newspecies = evolutions[rand(evolutions.length - 1)][0]
|
newspecies = evolutions[rand(evolutions.length - 1)][0]
|
||||||
return false if newspecies == nil
|
return false if newspecies == nil
|
||||||
@@ -1456,7 +1391,7 @@ def getPokemonPositionInParty(pokemon)
|
|||||||
return -1
|
return -1
|
||||||
end
|
end
|
||||||
|
|
||||||
#don't remember why there's two Supersplicers arguments.... probably a mistake
|
# don't remember why there's two Supersplicers arguments.... probably a mistake
|
||||||
def pbDNASplicing(pokemon, scene, item = :DNASPLICERS)
|
def pbDNASplicing(pokemon, scene, item = :DNASPLICERS)
|
||||||
is_supersplicer = isSuperSplicersMechanics(item)
|
is_supersplicer = isSuperSplicersMechanics(item)
|
||||||
|
|
||||||
@@ -1480,7 +1415,7 @@ def pbDNASplicing(pokemon, scene, item = :DNASPLICERS)
|
|||||||
if chosen >= 0
|
if chosen >= 0
|
||||||
poke2 = $Trainer.party[chosen]
|
poke2 = $Trainer.party[chosen]
|
||||||
if (poke2.species_data.id_number <= NB_POKEMON) && poke2 != pokemon
|
if (poke2.species_data.id_number <= NB_POKEMON) && poke2 != pokemon
|
||||||
#check if fainted
|
# check if fainted
|
||||||
|
|
||||||
if pokemon.egg? || poke2.egg?
|
if pokemon.egg? || poke2.egg?
|
||||||
scene.pbDisplay(_INTL("It's impossible to fuse an egg!"))
|
scene.pbDisplay(_INTL("It's impossible to fuse an egg!"))
|
||||||
@@ -1492,10 +1427,10 @@ def pbDNASplicing(pokemon, scene, item = :DNASPLICERS)
|
|||||||
end
|
end
|
||||||
|
|
||||||
selectedHead = selectFusion(pokemon, poke2, is_supersplicer)
|
selectedHead = selectFusion(pokemon, poke2, is_supersplicer)
|
||||||
if selectedHead == -1 #cancelled
|
if selectedHead == -1 # cancelled
|
||||||
return false
|
return false
|
||||||
end
|
end
|
||||||
if selectedHead == nil #can't fuse (egg, etc.)
|
if selectedHead == nil # can't fuse (egg, etc.)
|
||||||
scene.pbDisplay(_INTL("It won't have any effect."))
|
scene.pbDisplay(_INTL("It won't have any effect."))
|
||||||
return false
|
return false
|
||||||
end
|
end
|
||||||
@@ -1530,7 +1465,7 @@ def pbDNASplicing(pokemon, scene, item = :DNASPLICERS)
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
else
|
else
|
||||||
#UNFUSE
|
# UNFUSE
|
||||||
return true if pbUnfuse(pokemon, scene, is_supersplicer)
|
return true if pbUnfuse(pokemon, scene, is_supersplicer)
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
@@ -1539,7 +1474,7 @@ def selectFusion(pokemon, poke2, supersplicers = false)
|
|||||||
return nil if !pokemon.is_a?(Pokemon) || !poke2.is_a?(Pokemon)
|
return nil if !pokemon.is_a?(Pokemon) || !poke2.is_a?(Pokemon)
|
||||||
return nil if pokemon.egg? || poke2.egg?
|
return nil if pokemon.egg? || poke2.egg?
|
||||||
|
|
||||||
selectorWindow = FusionPreviewScreen.new(poke2, pokemon, supersplicers) #PictureWindow.new(picturePath)
|
selectorWindow = FusionPreviewScreen.new(poke2, pokemon, supersplicers) # PictureWindow.new(picturePath)
|
||||||
selectedHead = selectorWindow.getSelection
|
selectedHead = selectorWindow.getSelection
|
||||||
selectorWindow.dispose
|
selectorWindow.dispose
|
||||||
return selectedHead
|
return selectedHead
|
||||||
@@ -1578,16 +1513,15 @@ def pbFuse(pokemon_body, pokemon_head, splicer_item)
|
|||||||
if (fus.pbStartScreen(pokemon_body, pokemon_head, newid, splicer_item))
|
if (fus.pbStartScreen(pokemon_body, pokemon_head, newid, splicer_item))
|
||||||
returnItemsToBag(pokemon_body, pokemon_head)
|
returnItemsToBag(pokemon_body, pokemon_head)
|
||||||
fus.pbFusionScreen(false, use_supersplicers_mechanics)
|
fus.pbFusionScreen(false, use_supersplicers_mechanics)
|
||||||
$game_variables[VAR_FUSE_COUNTER] += 1 #fuse counter
|
$game_variables[VAR_FUSE_COUNTER] += 1 # fuse counter
|
||||||
fus.pbEndScreen
|
fus.pbEndScreen
|
||||||
return true
|
return true
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
# Todo: refactor this, holy shit this is a mess
|
||||||
#Todo: refactor this, holy shit this is a mess
|
|
||||||
def pbUnfuse(pokemon, scene, supersplicers, pcPosition = nil)
|
def pbUnfuse(pokemon, scene, supersplicers, pcPosition = nil)
|
||||||
if pokemon.species_data.id_number > (NB_POKEMON * NB_POKEMON) + NB_POKEMON #triple fusion
|
if pokemon.species_data.id_number > (NB_POKEMON * NB_POKEMON) + NB_POKEMON # triple fusion
|
||||||
scene.pbDisplay(_INTL("{1} cannot be unfused.", pokemon.name))
|
scene.pbDisplay(_INTL("{1} cannot be unfused.", pokemon.name))
|
||||||
return false
|
return false
|
||||||
end
|
end
|
||||||
@@ -1661,7 +1595,7 @@ def pbUnfuse(pokemon, scene, supersplicers, pcPosition = nil)
|
|||||||
pokemon.shiny = false
|
pokemon.shiny = false
|
||||||
poke2.natural_shiny = true if pokemon.natural_shiny && !pokemon.debug_shiny
|
poke2.natural_shiny = true if pokemon.natural_shiny && !pokemon.debug_shiny
|
||||||
else
|
else
|
||||||
#shiny was obtained already fused
|
# shiny was obtained already fused
|
||||||
if rand(2) == 0
|
if rand(2) == 0
|
||||||
pokemon.shiny = true
|
pokemon.shiny = true
|
||||||
else
|
else
|
||||||
@@ -1691,7 +1625,6 @@ def pbUnfuse(pokemon, scene, supersplicers, pcPosition = nil)
|
|||||||
poke2.debug_shiny = false
|
poke2.debug_shiny = false
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
||||||
if $Trainer.party.length >= 6
|
if $Trainer.party.length >= 6
|
||||||
if (keepInParty == 0)
|
if (keepInParty == 0)
|
||||||
if isOnPinkanIsland()
|
if isOnPinkanIsland()
|
||||||
@@ -1704,14 +1637,14 @@ def pbUnfuse(pokemon, scene, supersplicers, pcPosition = nil)
|
|||||||
poke2 = Pokemon.new(bodyPoke, body_level)
|
poke2 = Pokemon.new(bodyPoke, body_level)
|
||||||
poke1 = Pokemon.new(headPoke, head_level)
|
poke1 = Pokemon.new(headPoke, head_level)
|
||||||
|
|
||||||
#Fusing from PC
|
# Fusing from PC
|
||||||
if pcPosition != nil
|
if pcPosition != nil
|
||||||
box = pcPosition[0]
|
box = pcPosition[0]
|
||||||
index = pcPosition[1]
|
index = pcPosition[1]
|
||||||
#todo: store at next available position from current position
|
# todo: store at next available position from current position
|
||||||
$PokemonStorage.pbStoreCaught(poke2)
|
$PokemonStorage.pbStoreCaught(poke2)
|
||||||
else
|
else
|
||||||
#Fusing from party
|
# Fusing from party
|
||||||
if isOnPinkanIsland()
|
if isOnPinkanIsland()
|
||||||
scene.pbDisplay(_INTL("{1} was released.", poke2.name))
|
scene.pbDisplay(_INTL("{1} was released.", poke2.name))
|
||||||
else
|
else
|
||||||
@@ -1724,14 +1657,14 @@ def pbUnfuse(pokemon, scene, supersplicers, pcPosition = nil)
|
|||||||
if pcPosition != nil
|
if pcPosition != nil
|
||||||
box = pcPosition[0]
|
box = pcPosition[0]
|
||||||
index = pcPosition[1]
|
index = pcPosition[1]
|
||||||
#todo: store at next available position from current position
|
# todo: store at next available position from current position
|
||||||
$PokemonStorage.pbStoreCaught(poke2)
|
$PokemonStorage.pbStoreCaught(poke2)
|
||||||
else
|
else
|
||||||
Kernel.pbAddPokemonSilent(poke2, poke2.level)
|
Kernel.pbAddPokemonSilent(poke2, poke2.level)
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
#On ajoute les poke au pokedex
|
# On ajoute les poke au pokedex
|
||||||
$Trainer.pokedex.set_seen(poke1.species)
|
$Trainer.pokedex.set_seen(poke1.species)
|
||||||
$Trainer.pokedex.set_owned(poke1.species)
|
$Trainer.pokedex.set_owned(poke1.species)
|
||||||
$Trainer.pokedex.set_seen(poke2.species)
|
$Trainer.pokedex.set_seen(poke2.species)
|
||||||
@@ -1744,7 +1677,7 @@ def pbUnfuse(pokemon, scene, supersplicers, pcPosition = nil)
|
|||||||
pokemon.obtain_method = 0
|
pokemon.obtain_method = 0
|
||||||
poke1.obtain_method = 0
|
poke1.obtain_method = 0
|
||||||
|
|
||||||
#scene.pbDisplay(_INTL(p1.to_s + " " + p2.to_s))
|
# scene.pbDisplay(_INTL(p1.to_s + " " + p2.to_s))
|
||||||
scene.pbHardRefresh
|
scene.pbHardRefresh
|
||||||
scene.pbDisplay(_INTL("Your Pokémon were successfully unfused! "))
|
scene.pbDisplay(_INTL("Your Pokémon were successfully unfused! "))
|
||||||
return true
|
return true
|
||||||
@@ -1752,8 +1685,6 @@ def pbUnfuse(pokemon, scene, supersplicers, pcPosition = nil)
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
ItemHandlers::UseOnPokemon.add(:SUPERSPLICERS, proc { |item, pokemon, scene|
|
ItemHandlers::UseOnPokemon.add(:SUPERSPLICERS, proc { |item, pokemon, scene|
|
||||||
next true if pbDNASplicing(pokemon, scene, item)
|
next true if pbDNASplicing(pokemon, scene, item)
|
||||||
})
|
})
|
||||||
@@ -1770,26 +1701,26 @@ def returnItemsToBag(pokemon, poke2)
|
|||||||
poke2.item = nil
|
poke2.item = nil
|
||||||
end
|
end
|
||||||
|
|
||||||
#A AJOUTER: l'attribut dmgup ne modifie presentement pas
|
# A AJOUTER: l'attribut dmgup ne modifie presentement pas
|
||||||
# le damage d'une attaque
|
# le damage d'une attaque
|
||||||
#
|
#
|
||||||
ItemHandlers::UseOnPokemon.add(:DAMAGEUP, proc { |item, pokemon, scene|
|
ItemHandlers::UseOnPokemon.add(:DAMAGEUP, proc { |item, pokemon, scene|
|
||||||
move = scene.pbChooseMove(pokemon, _INTL("Boost Damage of which move?"))
|
move = scene.pbChooseMove(pokemon, _INTL("Boost Damage of which move?"))
|
||||||
if move >= 0
|
if move >= 0
|
||||||
#if pokemon.moves[move].damage==0 || pokemon.moves[move].accuracy<=5 || pokemon.moves[move].dmgup >=3
|
# if pokemon.moves[move].damage==0 || pokemon.moves[move].accuracy<=5 || pokemon.moves[move].dmgup >=3
|
||||||
# scene.pbDisplay(_INTL("It won't have any effect."))
|
# scene.pbDisplay(_INTL("It won't have any effect."))
|
||||||
# next false
|
# next false
|
||||||
#else
|
# else
|
||||||
#pokemon.moves[move].dmgup+=1
|
# pokemon.moves[move].dmgup+=1
|
||||||
#pokemon.moves[move].damage +=5
|
# pokemon.moves[move].damage +=5
|
||||||
#pokemon.moves[move].accuracy -=5
|
# pokemon.moves[move].accuracy -=5
|
||||||
|
|
||||||
#movename=PBMoves.getName(pokemon.moves[move].id)
|
# movename=PBMoves.getName(pokemon.moves[move].id)
|
||||||
#scene.pbDisplay(_INTL("{1}'s damage increased.",movename))
|
# scene.pbDisplay(_INTL("{1}'s damage increased.",movename))
|
||||||
#next true
|
# next true
|
||||||
scene.pbDisplay(_INTL("This item has not been implemented into the game yet. It had no effect."))
|
scene.pbDisplay(_INTL("This item has not been implemented into the game yet. It had no effect."))
|
||||||
next false
|
next false
|
||||||
#end
|
# end
|
||||||
end
|
end
|
||||||
})
|
})
|
||||||
|
|
||||||
@@ -1932,7 +1863,7 @@ ItemHandlers::UseOnPokemon.add(:DAMAGEUP, proc { |item, pokemon, scene|
|
|||||||
# :SUNSTONE,:DUSKSTONE,:DAWNSTONE,:SHINYSTONE,:OVALSTONE,
|
# :SUNSTONE,:DUSKSTONE,:DAWNSTONE,:SHINYSTONE,:OVALSTONE,
|
||||||
# :UPGRADE,:DUBIOUSDISC,:ICESTONE,:MAGNETSTONE)
|
# :UPGRADE,:DUBIOUSDISC,:ICESTONE,:MAGNETSTONE)
|
||||||
|
|
||||||
#Quest log
|
# Quest log
|
||||||
|
|
||||||
ItemHandlers::UseFromBag.add(:DEVONSCOPE, proc { |item|
|
ItemHandlers::UseFromBag.add(:DEVONSCOPE, proc { |item|
|
||||||
pbQuestlog()
|
pbQuestlog()
|
||||||
@@ -1943,7 +1874,7 @@ ItemHandlers::UseInField.add(:DEVONSCOPE, proc { |item|
|
|||||||
pbQuestlog()
|
pbQuestlog()
|
||||||
})
|
})
|
||||||
|
|
||||||
#TRACKER (for roaming legendaries)
|
# TRACKER (for roaming legendaries)
|
||||||
ItemHandlers::UseInField.add(:REVEALGLASS, proc { |item|
|
ItemHandlers::UseInField.add(:REVEALGLASS, proc { |item|
|
||||||
track_pokemon()
|
track_pokemon()
|
||||||
next true
|
next true
|
||||||
@@ -2040,7 +1971,7 @@ def track_pokemon()
|
|||||||
end
|
end
|
||||||
|
|
||||||
####EXP. ALL
|
####EXP. ALL
|
||||||
#Methodes relative a l'exp sont pas encore la et pas compatibles
|
# Methodes relative a l'exp sont pas encore la et pas compatibles
|
||||||
# avec cette version de essentials donc
|
# avec cette version de essentials donc
|
||||||
# ca fait fuck all pour l'instant.
|
# ca fait fuck all pour l'instant.
|
||||||
ItemHandlers::UseFromBag.add(:EXPALL, proc { |item|
|
ItemHandlers::UseFromBag.add(:EXPALL, proc { |item|
|
||||||
@@ -2073,10 +2004,10 @@ ItemHandlers::UseOnPokemon.add(:GOLDENBANANA, proc { |item, pokemon, scene|
|
|||||||
|
|
||||||
ItemHandlers::UseInField.add(:BOXLINK, proc { |item|
|
ItemHandlers::UseInField.add(:BOXLINK, proc { |item|
|
||||||
blacklisted_maps = [
|
blacklisted_maps = [
|
||||||
315, 316, 317, 318, 328, 343, #Elite Four
|
315, 316, 317, 318, 328, 343, # Elite Four
|
||||||
776, 777, 778, 779, 780, 781, 782, 783, 784, #Mt. Silver
|
776, 777, 778, 779, 780, 781, 782, 783, 784, # Mt. Silver
|
||||||
722, 723, 724, 720, #Dream sequence
|
722, 723, 724, 720, # Dream sequence
|
||||||
304, 306, 307 #Victory road
|
304, 306, 307 # Victory road
|
||||||
]
|
]
|
||||||
if blacklisted_maps.include?($game_map.map_id)
|
if blacklisted_maps.include?($game_map.map_id)
|
||||||
Kernel.pbMessage("There doesn't seem to be any network coverage here...")
|
Kernel.pbMessage("There doesn't seem to be any network coverage here...")
|
||||||
@@ -2084,7 +2015,7 @@ ItemHandlers::UseInField.add(:BOXLINK, proc { |item|
|
|||||||
pbFadeOutIn {
|
pbFadeOutIn {
|
||||||
scene = PokemonStorageScene.new
|
scene = PokemonStorageScene.new
|
||||||
screen = PokemonStorageScreen.new(scene, $PokemonStorage)
|
screen = PokemonStorageScreen.new(scene, $PokemonStorage)
|
||||||
screen.pbStartScreen(0) #Boot PC in organize mode
|
screen.pbStartScreen(0) # Boot PC in organize mode
|
||||||
}
|
}
|
||||||
end
|
end
|
||||||
next 1
|
next 1
|
||||||
|
|||||||
@@ -4,6 +4,18 @@ def isWearingTeamRocketOutfit()
|
|||||||
return (isWearingClothes(CLOTHES_TEAM_ROCKET_MALE) || isWearingClothes(CLOTHES_TEAM_ROCKET_FEMALE)) && isWearingHat(HAT_TEAM_ROCKET)
|
return (isWearingClothes(CLOTHES_TEAM_ROCKET_MALE) || isWearingClothes(CLOTHES_TEAM_ROCKET_FEMALE)) && isWearingHat(HAT_TEAM_ROCKET)
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def isWearingFavoriteOutfit()
|
||||||
|
is_wearing_favorite_hat = $Trainer.hat == $Trainer.favorite_hat || !$Trainer.favorite_hat
|
||||||
|
is_wearing_favorite_clothes = $Trainer.clothes == $Trainer.favorite_clothes || !$Trainer.favorite_clothes
|
||||||
|
if $Trainer.favorite_hat && !$Trainer.favorite_clothes
|
||||||
|
return is_wearing_favorite_hat
|
||||||
|
end
|
||||||
|
if $Trainer.favorite_clothes && !$Trainer.favorite_hat
|
||||||
|
return is_wearing_favorite_clothes
|
||||||
|
end
|
||||||
|
return is_wearing_favorite_clothes && is_wearing_favorite_hat
|
||||||
|
end
|
||||||
|
|
||||||
def obtainRocketOutfit()
|
def obtainRocketOutfit()
|
||||||
Kernel.pbReceiveItem(:ROCKETUNIFORM)
|
Kernel.pbReceiveItem(:ROCKETUNIFORM)
|
||||||
gender = pbGet(VAR_TRAINER_GENDER)
|
gender = pbGet(VAR_TRAINER_GENDER)
|
||||||
|
|||||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
BIN
Data/items.dat
BIN
Data/items.dat
Binary file not shown.
Binary file not shown.
@@ -1,4 +1,2 @@
|
|||||||
1739849259
|
1739894631
|
||||||
1739849260
|
1739894631
|
||||||
1739849260
|
|
||||||
1739849318
|
|
||||||
@@ -56,3 +56,77 @@ Graphics/CustomBattlers/spritesheets/spritesheets_base/106.png
|
|||||||
Graphics/CustomBattlers/spritesheets/spritesheets_base/457.png
|
Graphics/CustomBattlers/spritesheets/spritesheets_base/457.png
|
||||||
Graphics/CustomBattlers/spritesheets/spritesheets_custom/457/457.png
|
Graphics/CustomBattlers/spritesheets/spritesheets_custom/457/457.png
|
||||||
Graphics/CustomBattlers/spritesheets/spritesheets_custom/25/25a.png
|
Graphics/CustomBattlers/spritesheets/spritesheets_custom/25/25a.png
|
||||||
|
Graphics/CustomBattlers/spritesheets/spritesheets_base/222.png
|
||||||
|
Graphics/CustomBattlers/spritesheets/spritesheets_base/183.png
|
||||||
|
Graphics/CustomBattlers/spritesheets/spritesheets_custom/183/183.png
|
||||||
|
Graphics/CustomBattlers/spritesheets/spritesheets_base/76.png
|
||||||
|
Graphics/CustomBattlers/spritesheets/spritesheets_base/203.png
|
||||||
|
Graphics/CustomBattlers/spritesheets/spritesheets_custom/203/203.png
|
||||||
|
Graphics/CustomBattlers/spritesheets/spritesheets_base/2.png
|
||||||
|
Graphics/CustomBattlers/spritesheets/spritesheets_base/50.png
|
||||||
|
Graphics/CustomBattlers/spritesheets/spritesheets_custom/50/50a.png
|
||||||
|
Graphics/CustomBattlers/spritesheets/spritesheets_base/323.png
|
||||||
|
Graphics/CustomBattlers/spritesheets/spritesheets_base/152.png
|
||||||
|
Graphics/CustomBattlers/spritesheets/spritesheets_base/446.png
|
||||||
|
Graphics/CustomBattlers/spritesheets/spritesheets_base/93.png
|
||||||
|
Graphics/CustomBattlers/spritesheets/spritesheets_custom/93/93.png
|
||||||
|
Graphics/CustomBattlers/spritesheets/spritesheets_base/37.png
|
||||||
|
Graphics/CustomBattlers/spritesheets/spritesheets_base/165.png
|
||||||
|
Graphics/CustomBattlers/spritesheets/spritesheets_custom/165/165.png
|
||||||
|
Graphics/CustomBattlers/spritesheets/spritesheets_base/30.png
|
||||||
|
Graphics/CustomBattlers/spritesheets/spritesheets_base/79.png
|
||||||
|
Graphics/CustomBattlers/spritesheets/spritesheets_custom/79/79a.png
|
||||||
|
Graphics/CustomBattlers/spritesheets/spritesheets_base/157.png
|
||||||
|
Graphics/CustomBattlers/spritesheets/spritesheets_base/302.png
|
||||||
|
Graphics/CustomBattlers/spritesheets/spritesheets_base/42.png
|
||||||
|
Graphics/CustomBattlers/spritesheets/spritesheets_base/227.png
|
||||||
|
Graphics/CustomBattlers/spritesheets/spritesheets_custom/227/227.png
|
||||||
|
Graphics/CustomBattlers/spritesheets/spritesheets_base/23.png
|
||||||
|
Graphics/CustomBattlers/spritesheets/spritesheets_base/161.png
|
||||||
|
Graphics/CustomBattlers/spritesheets/spritesheets_custom/161/161.png
|
||||||
|
Graphics/CustomBattlers/spritesheets/spritesheets_base/310.png
|
||||||
|
Graphics/CustomBattlers/spritesheets/spritesheets_custom/310/310a.png
|
||||||
|
Graphics/CustomBattlers/spritesheets/spritesheets_custom/50/50.png
|
||||||
|
Graphics/CustomBattlers/spritesheets/spritesheets_base/334.png
|
||||||
|
Graphics/CustomBattlers/spritesheets/spritesheets_custom/334/334.png
|
||||||
|
Graphics/CustomBattlers/spritesheets/spritesheets_base/29.png
|
||||||
|
Graphics/CustomBattlers/spritesheets/spritesheets_custom/29/29.png
|
||||||
|
Graphics/CustomBattlers/spritesheets/spritesheets_custom/94/94.png
|
||||||
|
Graphics/CustomBattlers/spritesheets/spritesheets_base/410.png
|
||||||
|
Graphics/CustomBattlers/spritesheets/spritesheets_base/49.png
|
||||||
|
Graphics/CustomBattlers/spritesheets/spritesheets_custom/49/49.png
|
||||||
|
Graphics/CustomBattlers/spritesheets/spritesheets_base/308.png
|
||||||
|
Graphics/CustomBattlers/spritesheets/spritesheets_base/132.png
|
||||||
|
Graphics/CustomBattlers/spritesheets/spritesheets_base/442.png
|
||||||
|
Graphics/CustomBattlers/spritesheets/spritesheets_custom/442/442b.png
|
||||||
|
Graphics/CustomBattlers/spritesheets/spritesheets_base/170.png
|
||||||
|
Graphics/CustomBattlers/spritesheets/spritesheets_base/295.png
|
||||||
|
Graphics/CustomBattlers/spritesheets/spritesheets_base/381.png
|
||||||
|
Graphics/CustomBattlers/spritesheets/spritesheets_custom/362/362.png
|
||||||
|
Graphics/CustomBattlers/spritesheets/spritesheets_base/212.png
|
||||||
|
Graphics/CustomBattlers/spritesheets/spritesheets_base/4.png
|
||||||
|
Graphics/CustomBattlers/spritesheets/spritesheets_custom/4/4.png
|
||||||
|
Graphics/CustomBattlers/spritesheets/spritesheets_base/55.png
|
||||||
|
Graphics/CustomBattlers/spritesheets/spritesheets_base/390.png
|
||||||
|
Graphics/CustomBattlers/spritesheets/spritesheets_custom/390/390.png
|
||||||
|
Graphics/CustomBattlers/spritesheets/spritesheets_base/163.png
|
||||||
|
Graphics/CustomBattlers/spritesheets/spritesheets_base/438.png
|
||||||
|
Graphics/CustomBattlers/spritesheets/spritesheets_custom/438/438.png
|
||||||
|
Graphics/CustomBattlers/spritesheets/spritesheets_base/134.png
|
||||||
|
Graphics/CustomBattlers/spritesheets/spritesheets_base/364.png
|
||||||
|
Graphics/CustomBattlers/spritesheets/spritesheets_base/447.png
|
||||||
|
Graphics/CustomBattlers/spritesheets/spritesheets_custom/447/447.png
|
||||||
|
Graphics/CustomBattlers/spritesheets/spritesheets_base/339.png
|
||||||
|
Graphics/CustomBattlers/spritesheets/spritesheets_base/91.png
|
||||||
|
Graphics/CustomBattlers/spritesheets/spritesheets_custom/91/91.png
|
||||||
|
Graphics/CustomBattlers/spritesheets/spritesheets_base/169.png
|
||||||
|
Graphics/CustomBattlers/spritesheets/spritesheets_base/11.png
|
||||||
|
Graphics/CustomBattlers/spritesheets/spritesheets_custom/11/11.png
|
||||||
|
Graphics/CustomBattlers/spritesheets/spritesheets_base/87.png
|
||||||
|
Graphics/CustomBattlers/spritesheets/spritesheets_base/263.png
|
||||||
|
Graphics/CustomBattlers/spritesheets/spritesheets_base/1.png
|
||||||
|
Graphics/CustomBattlers/spritesheets/spritesheets_custom/1/1.png
|
||||||
|
Graphics/CustomBattlers/spritesheets/spritesheets_base/20.png
|
||||||
|
Graphics/CustomBattlers/spritesheets/spritesheets_base/32.png
|
||||||
|
Graphics/CustomBattlers/spritesheets/spritesheets_base/105.png
|
||||||
|
Graphics/CustomBattlers/spritesheets/spritesheets_custom/105/105.png
|
||||||
|
|||||||
BIN
Graphics/.DS_Store
vendored
BIN
Graphics/.DS_Store
vendored
Binary file not shown.
BIN
Graphics/Battlers/.DS_Store
vendored
BIN
Graphics/Battlers/.DS_Store
vendored
Binary file not shown.
BIN
Graphics/Items/FAVORITEOUTFIT.png
Normal file
BIN
Graphics/Items/FAVORITEOUTFIT.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 4.4 KiB |
Reference in New Issue
Block a user