Hello hello les gens, j'ai remarqué que cette section est plutôt vide
alors voici un petit tuto utile pour ceux qui utilise les starter kit pokémon.
Bon, les personnes les plus avancer en Ruby vont peut être rire mais pour
les autres, ça peut toujours être utile ^^
Astuce : Combat contre un pokémon sauvage personnalisé
(Oui, j'aime les gros titres !)
Ce que je trouve dommage, c'est que dans tout les starter kits, on ne pouvais pas démarrer
un combat total custom contre un pokémon sauvage prédéfini, or contre un dresseur, ou encore
les hordes de pokémons, c'est possible, du coups, j'ai plus ou moins remédier ça.
Difficulté : -1
Niveau en scripting : Ultra néophyte
Niveau en mapping : Heu.....
Niveau en graphisme : Non mais y'a pas besoin...
Niveau.... BON ! ON VA PEUT ETRE POUVOIR COMMENCER !
(Je pars en vrille...)
Pour commencer, aller dans le script : Interpreter
puis, au dessous de :
#-----------------------------------------------------------------------------
# call_battle_wild
# Appel d'un combat contre un Pokémon sauvage quelconque
# (Pour un pokémon perso, cf fonction suivante)
# id: id Pokémon
# level: niveau du Pokémon sauvage
#-----------------------------------------------------------------------------
def call_battle_wild(id_data, level, shiny = false, ia = false)
$game_temp.map_bgm = $game_system.playing_bgm
$game_system.bgm_stop
if id_data.type == Fixnum
id = id_data
elsif id_data.type == String
id = id_conversion(id_data)
end
pokemon = Pokemon.new(id, level, shiny)
$scene = Pokemon_Battle_Wild.new($pokemon_party, pokemon, ia)
@wait_count = 2
return true
end
alias demarrer_combat call_battle_wild
collez :
ça
#-----------------------------------------------------------------------------
# demarre_combat_param(hash)
# Appel d'un combat contre un Pokémon sauvage défini
# (Pour un légendaire mobile, cf fonction suivante)
# id: id Pokémon
# level: niveau du Pokémon sauvage
#-----------------------------------------------------------------------------
def demarre_combat_param(hash)
if hash["ID"] == nil or hash["NV"] == nil
return
end
pokemon = Pokemon.new(hash["ID"], hash["NV"], hash["SHINY"])
if hash["GR"] != nil and [0, 1, 2, "F", "G", "I"].include?(hash["GR"])
pokemon.set_gender(hash["GR"])
end
if hash["FORM"] != nil
pokemon.form = hash["FORM"]
end
if hash["MOVE"] != nil and hash["MOVE"].type == Array
i = 0
for skill in hash["MOVE"]
if skill != nil and skill != "AUCUN"
pokemon.skills_set[i] = Skill.new(Skill_Info.id(skill))
end
if skill == "AUCUN"
pokemon.skills_set[i] = nil
end
i += 1
end
pokemon.skills_set.compact!
end
if hash["OBJ"] != nil
if hash["OBJ"].type == Fixnum
pokemon.item_hold = hash["OBJ"]
elsif hash["OBJ"].type == String
pokemon.item_hold = Item.id(hash["OBJ"])
end
end
if hash["STAT"] != nil and hash["STAT"].type == Array and
hash["STAT"].length == 6
pokemon.dv_modifier(hash["STAT"])
end
if hash["IA"] == nil
hash["IA"] = false
end
$scene = Pokemon_Battle_Wild.new($pokemon_party, pokemon, hash["IA"])
@wait_count = 2
return true
end
Voila, et la vous allez vous dire :
Oh, le joli poney !
Heu... Oui mais non, vous allez me dire,
pour les plus attentif d'entre vous :
Mais, j'ai déjà vu ça quelque part...
Et oui, il s'agit de la même méthode utiliser pour ajouter des pokémons
custom à son équipe.
Spoiler
Mais si, vous savez :
ajouter_pokemon_param({ "ID" => A, "NV" => B, "OBJ" => C, "MOVE" => ["ATK1", "ATK2", "ATK3", "ATK4"], "STAT" => [HP, AT, DF, VI, AS, DS], "GR" => D, "SHINY" => E, "FORM" => F })
(Comment ça je triche ?)
Donc voilà, vous pouvez maintenant créer un combat contre un pokémon prédéfini perso. (C'est long à dire).
Ah oui, j'allais oublié !
Pour l'appeler, faites :
demarre_combat_param(hash)
Et à la place de hash, mettez :
{ "ID" => A, "NV" => B, "OBJ" => C, "MOVE" => ["ATK1", "ATK2", "ATK3", "ATK4"], "STAT" => [HP, AT, DF, VI, AS, DS], "GR" => D, "SHINY" => E, "FORM" => F , "IA" => false/true}
Et voilà, je vous laisse la suite, en espérant qu'il sera utile à quelqu'un ^^
Le mot de la fin
J'ai remarqué sur PSP 0.8 en tout cas, je sais pas pour les autres, mais quand on ajoute un pokémon,
on peut pas mettre un DO, un surnom ou une ball, du coup, pour y remédier :
Dans le script Interpreter, cherchez ça :
if hash["STAT"] != nil and hash["STAT"].type == Array and
hash["STAT"].length == 6
pokemon.dv_modifier(hash["STAT"])
end
Puis en dessous, collez :
if hash["DO"] and hash["DO"].type == String
pokemon.trainer_name = hash["DO"]
end
if hash["IDo"] and hash["IDo"].type == String
pokemon.trainer_id = hash["IDo"]
end
if hash["SURNOM"] and hash["SURNOM"].type == String
pokemon.given_name = hash["SURNOM"]
end
if hash["BALL"] and hash["BALL"].type == Fixnum
pokemon.ball_data = $data_ball[hash["BALL"]]
end
Et voià, je pense avoir fini ^^
Sur ce, bon making à vous ^^
PS : Je m'excuse pour les potentiels faute =)