mirror of
https://github.com/infinitefusion/infinitefusion-e18.git
synced 2025-12-08 05:34:58 +00:00
6.6 update
This commit is contained in:
198
Data/Scripts/025-Randomizer/Random Pokemon.rb
Normal file
198
Data/Scripts/025-Randomizer/Random Pokemon.rb
Normal file
@@ -0,0 +1,198 @@
|
||||
################################################################################
|
||||
# Randomized Pokemon Script
|
||||
# By Umbreon
|
||||
################################################################################
|
||||
# Used for a randomized pokemon challenge mainly.
|
||||
#
|
||||
# By randomized, I mean EVERY pokemon will be random, even interacted pokemon
|
||||
# like legendaries. (You may easily disable the randomizer for certain
|
||||
# situations like legendary battles and starter selecting.)
|
||||
#
|
||||
# To use: simply activate Switch Number X
|
||||
# (X = the number listed After "Switch = ", default is switch number 36.)
|
||||
#
|
||||
# If you want certain pokemon to NEVER appear, add them inside the black list.
|
||||
# (This does not take into effect if the switch stated above is off.)
|
||||
#
|
||||
# If you want ONLY certain pokemon to appear, add them to the whitelist. This
|
||||
# is only recommended when the amount of random pokemon available is around
|
||||
# 32 or less.(This does not take into effect if the switch stated above is off.)
|
||||
#
|
||||
################################################################################
|
||||
|
||||
########################## You may edit any settings below this freely.
|
||||
# module RandomizedChallenge
|
||||
# Switch = 36 # switch ID to randomize a pokemon, if it's on then ALL
|
||||
# # pokemon will be randomized. No exceptions.
|
||||
#
|
||||
# BlackListedPokemon = [] #[PBSpecies::MEW, PBSpecies::ARCEUS]
|
||||
# # Pokemon to Black List. Any pokemon in here will NEVER appear.
|
||||
#
|
||||
# WhiteListedPokemon = []
|
||||
# # Leave this empty if all pokemon are allowed, otherwise only pokemon listed
|
||||
# # above will be selected.
|
||||
# end
|
||||
#
|
||||
# ######################### Do not edit anything below here.
|
||||
# class PokeBattle_Pokemon
|
||||
#
|
||||
# alias randomized_init initialize
|
||||
#
|
||||
# def initialize(species, level, player = nil, withMoves = true)
|
||||
#
|
||||
# if $game_switches && $game_switches[RandomizedChallenge::Switch]
|
||||
# if $game_switches[991]
|
||||
# species = rand(PBSpecies.maxValue - 1) + 1
|
||||
# basestatsum = $pkmn_dex[species][5][0] # HP
|
||||
# basestatsum += $pkmn_dex[species][5][1] # Attack
|
||||
# basestatsum += $pkmn_dex[species][5][2] # Defense
|
||||
# basestatsum += $pkmn_dex[species][5][3] # Speed
|
||||
# basestatsum += $pkmn_dex[species][5][4] # Special Attack
|
||||
# basestatsum += $pkmn_dex[species][5][5] # Special Defense
|
||||
#
|
||||
# while basestatsum > $game_variables[53] || basestatsum < $game_variables[87]
|
||||
# species = rand(PBSpecies.maxValue - 1) + 1
|
||||
# basestatsum = $pkmn_dex[species][5][0] # HP
|
||||
# basestatsum += $pkmn_dex[species][5][1] # Attack
|
||||
# basestatsum += $pkmn_dex[species][5][2] # Defense
|
||||
# basestatsum += $pkmn_dex[species][5][3] # Speed
|
||||
# basestatsum += $pkmn_dex[species][5][4] # Special Attack
|
||||
# basestatsum += $pkmn_dex[species][5][5] # Special Defense
|
||||
# end
|
||||
# #Kernel.pbMessage(_INTL("total = {1}, {2}",basestatsum, PBSpecies.getName(species)))
|
||||
# else
|
||||
# if $game_switches[841]
|
||||
# species = getRandomCustomSprite()
|
||||
# else
|
||||
# species = rand(PBSpecies.maxValue - 1) + 1
|
||||
# end
|
||||
# end
|
||||
# end
|
||||
#
|
||||
# randomized_init(species, level, player, withMoves)
|
||||
# end
|
||||
# end
|
||||
#
|
||||
#
|
||||
# def getRandomCustomSprite()
|
||||
# filesList = Dir["./Graphics/CustomBattlers/*"]
|
||||
# i = rand(filesList.length - 1)
|
||||
# path = filesList[i]
|
||||
# file = File.basename(path, ".*")
|
||||
# splitPoke = file.split(".")
|
||||
# head = splitPoke[0].to_i
|
||||
# body = splitPoke[1].to_i
|
||||
# return (body * NB_POKEMON) + head
|
||||
# end
|
||||
|
||||
=begin
|
||||
|
||||
##########################
|
||||
# Trainer house shit
|
||||
#########################
|
||||
#Battleformat : 0 = single
|
||||
# 1 = double
|
||||
def Kernel.pbTrainerHouse(bstMin,bstMax,level,battleformat)
|
||||
return false if !validateLevel()
|
||||
#activate random Pokemon
|
||||
$game_switches[991] = true
|
||||
|
||||
#Set game variables
|
||||
$game_variables[87]=bstMin
|
||||
$game_variabes[53]=bstMax
|
||||
|
||||
#initialize variables
|
||||
trainerHouse=true
|
||||
currentStreak=0
|
||||
backupTeamLevels()
|
||||
doubleBattle = battleformat == 1 ? true : false
|
||||
|
||||
|
||||
while trainerHouse
|
||||
currentStreak += 1
|
||||
TrainerHouseVictory(currentStreak) if TrainerHouseBattle(level)
|
||||
end
|
||||
end
|
||||
|
||||
def backupTeamLevels()
|
||||
$game_variables[91] = $Trainer.pokemonParty[0].level
|
||||
$game_variables[92] = $Trainer.pokemonParty[1].level
|
||||
$game_variables[93] = $Trainer.pokemonParty[2].level
|
||||
end
|
||||
|
||||
#choisir le trainer a combattre en fonction du level
|
||||
def TrainerHouseBattle(level,battleformat)
|
||||
victoryMessage = getVictoryMessage()
|
||||
getTrainerHouseBattle(rand(1),level,battleformat)
|
||||
return
|
||||
end
|
||||
|
||||
#initialiser background & musique pour le combat
|
||||
def setBattleConstants()
|
||||
$PokemonGlobal.nextBattleBGM="SubwayTrainerBattle"
|
||||
$PokemonGlobal.nextBattleBack="IndoorC"
|
||||
end
|
||||
|
||||
#Ajouter les TP après un victoire
|
||||
def TrainerHouseVictory(currentStreak)
|
||||
tp_won = currentStreak + 1
|
||||
$game_variables[49] = tp_won
|
||||
end
|
||||
|
||||
#Valider si le niveau est un challenge possible
|
||||
def validateLevel(level)
|
||||
validLevels=[25,50,100]
|
||||
return validLevels.include?(level)
|
||||
end
|
||||
|
||||
def getVictoryMessage()
|
||||
return "You're good!"
|
||||
end
|
||||
|
||||
def getTrainerHouseBattle(IsMale,level,single=true)
|
||||
victoryMessage = getVictoryMessage()
|
||||
|
||||
LV25MALE_SINGLE = pbTrainerBattle(PBTrainers::COOLTRAINER_M2,"Matthew",_I(victoryMessage),false,0,true)
|
||||
LV25FEMALE_SINGLE = pbTrainerBattle(PBTrainers::COOLTRAINER_F2,"Jessica",_I(victoryMessage),false,0,true)
|
||||
LV25MALE_DOUBLE = pbTrainerBattle(PBTrainers::COOLTRAINER_M2,"Alex",_I(victoryMessage),false,0,true)
|
||||
LV25FEMALE_DOUBLE = pbTrainerBattle(PBTrainers::COOLTRAINER_F2,"Laurie",_I(victoryMessage),false,0,true)
|
||||
|
||||
LV50MALE_SINGLE = pbTrainerBattle(PBTrainers::COOLTRAINER_M2,"Alberto",_I(victoryMessage),false,0,true)
|
||||
LV50FEMALE_SINGLE = pbTrainerBattle(PBTrainers::COOLTRAINER_F2,"Skyler",_I(victoryMessage),true,0,true)
|
||||
LV50MALE_DOUBLE = pbTrainerBattle(PBTrainers::COOLTRAINER_M2,"Patrick",_I(victoryMessage),false,0,true)
|
||||
LV50FEMALE_DOUBLE = pbTrainerBattle(PBTrainers::COOLTRAINER_F2,"Heather",_I(victoryMessage),true,0,true)
|
||||
|
||||
LV100MALE_SINGLE = pbTrainerBattle(PBTrainers::COOLTRAINER_M2,"Joe",_I(victoryMessage),false,0,true)
|
||||
LV100FEMALE_SINGLE = pbTrainerBattle(PBTrainers::COOLTRAINER_F2,"Melissa",_I(victoryMessage),true,0,true)
|
||||
LV100MALE_DOUBLE = pbTrainerBattle(PBTrainers::COOLTRAINER_M2,"Stephen",_I(victoryMessage),false,0,true)
|
||||
LV100FEMALE_DOUBLE = pbTrainerBattle(PBTrainers::COOLTRAINER_F2,"Kim",_I(victoryMessage),true,0,true)
|
||||
|
||||
|
||||
|
||||
if single #SINGLE
|
||||
if level == 25
|
||||
return LV25MALE_SINGLE if IsMale == 1
|
||||
return LV25FEMALE_SINGLE
|
||||
elsif level == 50
|
||||
return LV50MALE_SINGLE if IsMale == 1
|
||||
return LV50FEMALE_SINGLE
|
||||
else
|
||||
return LV100MALE_SINGLE if IsMale == 1
|
||||
return LV100FEMALE_SINGLE
|
||||
end
|
||||
else #DOUBLE
|
||||
if level == 25
|
||||
return LV25MALE_DOUBLE if IsMale == 1
|
||||
return LV25FEMALE_DOUBLE
|
||||
elsif level == 50
|
||||
return LV50MALE_DOUBLE if IsMale == 1
|
||||
return LV50FEMALE_DOUBLE
|
||||
else
|
||||
return LV100MALE_DOUBLE if IsMale == 1
|
||||
return LV100FEMALE_DOUBLE
|
||||
end
|
||||
end
|
||||
|
||||
end
|
||||
|
||||
=end
|
||||
Reference in New Issue
Block a user