Attention! Ceci n'est en aucun cas un tuto pour le ROM-Hacking, mais pour RPG Maker.
Bien, aujourd'hui je vais vous apprendre à ajouter le script du Follow Me, en français, suis-moi. Vous l'aurez deviné, ce script permet de faire suivre derrière vous le premier Pokémon de votre équipe, comme dans HG/SS.
Mais tout d'abord, je dois vous apprendre à ajouter un script.
Pour commencer, ouvrez le PSP Mod, puis, ouvrez votre projet PSP.
Cliquez ensuite sur l'éditeur de script ici:
Ici sont rangés TOUS les scripts du jeu. Le côté programmation est là. Tout est codé en "rgss", une forme de "ruby" simplifié. C'est un langage de programmation simple, vous pourrez trouver sur le net des cours pour apprendre le ruby.
Bref, dans la liste de gauche sont rangés les scripts, il suffit de cliquer sur l'un de ceux-ci pour qu'il apparaisse à droite. Pour créer un nouveau script faîtes clique droit sur la liste, puis "nouveau script". Vous n'avez plus qu'à ajouter votre script.
Bien, vous avez tout compris? On va enfin pouvoir ajouter le follow me.
Ajoutez un nouveau script et collez le code que je vais vous donner. Nous remercierons fort Brendan75 de PSP pour ce script fabuleux.
Spoiler
Code: [Sélectionner]
#==============================================================================
# ■ Follow Me Pokémon
# par Brendan75
#-----------------------------------------------------------------------------
# Rend le premier pokémon de l'équipe visible sur la map.
#==============================================================================
PKM_TRANSPARENT_SWITCHES = 50 # Index de l'interrupteur pour rendre invisible
class Follower_Pkm < Game_Character
include POKEMON_S
def initialize
super()
@through = false
@step_anime = true
@pkm_id = 0
end
def update
if $pokemon_party.size != 0
@pkm_id = $pokemon_party.actors[0].id
string = "pkm #{sprintf('%03d', @pkm_id)}.png"
if @character_name != string
@character_name = string
@character_hue = 0
@opacity = 255
@blend_type = 0
end
if @opacity != ($game_switches[PKM_TRANSPARENT_SWITCHES] ? 0 : 255)
@opacity = ($game_switches[PKM_TRANSPARENT_SWITCHES] ? 0 : 255)
end
else
@character_name = ""
end
self.move_speed = $game_player.move_speed
super
end
def screen_z(height = 0)
if $game_player.x == @x and $game_player.y == @y
return $game_player.screen_z(height) - 1
end
super(height)
end
def check_event_trigger_touch(x, y) end
def passable?(x, y, d)
new_x = x + (d == 6 ? 1 : d == 4 ? -1 : 0)
new_y = y + (d == 2 ? 1 : d == 8 ? -1 : 0)
unless $game_map.valid?(new_x, new_y)
return false
end
if @through
return true
end
unless $game_map.passable?(x, y, d, self)
return false
end
unless $game_map.passable?(new_x, new_y, 10 - d)
return false
end
for event in $game_map.events.values
if event.x == new_x and event.y == new_y
unless event.through
if self != $game_player
return false
end
if event.character_name != ""
return false
end
end
end
end
return true
end
end
#-----------------------------------------------------------------------------
# ● Spriteset Map
#-----------------------------------------------------------------------------
class Spriteset_Map
alias follow_me_initialize initialize
def initialize
follow_me_initialize
@character_sprites.push(Sprite_Character.new(@viewport1, $game_party.follower_pkm))
update
end
end
#-----------------------------------------------------------------------------
# ● Scene Map
#-----------------------------------------------------------------------------
class Scene_Map
alias follow_me_transfer_player transfer_player
def transfer_player
$game_party.erase_moves
follow_me_transfer_player
end
alias follow_me_update update
def update
follow_me_update
$game_party.follower_pkm.update
end
end
#-----------------------------------------------------------------------------
# ● Game Player
#-----------------------------------------------------------------------------
class Game_Player
alias follow_me_moveto moveto
def moveto(x, y)
follow_me_moveto(x, y)
$game_party.follower_pkm.moveto(x, y)
end
def move_down(turn_enabled = true)
if passable?(@x, @y, 2)
$game_party.move_party_actors
$game_party.add_move_list(Input::DOWN, turn_enabled)
end
super(turn_enabled)
end
def move_left(turn_enabled = true)
if passable?(@x, @y, 4)
$game_party.move_party_actors
$game_party.add_move_list(Input::LEFT, turn_enabled)
end
super(turn_enabled)
end
def move_right(turn_enabled = true)
if passable?(@x, @y, 6)
$game_party.move_party_actors
$game_party.add_move_list(Input::RIGHT, turn_enabled)
end
super(turn_enabled)
end
def move_up(turn_enabled = true)
if passable?(@x, @y, 8)
$game_party.move_party_actors
$game_party.add_move_list(Input::UP, turn_enabled)
end
super(turn_enabled)
end
end
#-----------------------------------------------------------------------------
# ● Game Party
#-----------------------------------------------------------------------------
class Game_Party
include POKEMON_S
attr_accessor :follower_pkm
alias follow_me_initialize initialize
def initialize
follow_me_initialize
@follower_pkm = Follower_Pkm.new
@next_move = nil
end
def move_party_actors
case @next_move.type
when Input::DOWN
@follower_pkm.move_down(@next_move.turn_enabled)
when Input::LEFT
@follower_pkm.move_left(@next_move.turn_enabled)
when Input::RIGHT
@follower_pkm.move_right(@next_move.turn_enabled)
when Input::UP
@follower_pkm.move_up(@next_move.turn_enabled)
else
return
end
erase_moves
end
def add_move_list(type, turn_enabled)
@next_move = Move_List_Element.new(type, turn_enabled)
end
def erase_moves
@next_move = nil
end
end
#-----------------------------------------------------------------------------
# ● Move List Element
#-----------------------------------------------------------------------------
class Move_List_Element
attr_reader :type
attr_reader :turn_enabled
def initialize(type, turn_enabled)
@type = type
@turn_enabled = turn_enabled
end
end
Nommez le script "Follow Me", et c'est dans la poche!
Mais le Follow Me a besoin de ressources pour fonctionner, bien sûr, l'image du Pokémon qui va suivre. Vous devez placer ces images dans le dossier "Characters". L'image doit avoir CETTE morphologie et pas une autre.
Spoiler
Vous devez aussi nommer les images de cette manière: "Pkm [ID].png" (par exemple "Pkm 001.png" pour Bulbizarre et ainsi de suite).
Allez, je vous aide, voici un pack des Pokémon (merci à Pikachu 5000):
http://www.mediafire.com/?fcte9d6phogw6et
Voilà, vous savez désormais ajouter un script et je vous ai donné le secret du Follow me!