Scripts RPG Maker XP Création de magie par l'entrer d'un nom de magie
Auteur : Ajenim
Fonction : Permet de mettre une nouvelle fonction dans le menu. Vous pouvez créer une nouvelle magie en rentrant son nom
Image(s) : Image n°1 Image n°2
Ressource(s) : Aucune
Démo : Aucune
Remarque : Testé et fonctionnel.
Nombre de scripts : 4
Installation : D'abord créez 999 magies pour ne pas que le script plante. Ces 999 magies sont celles qui pourront être créés.
Copiez ensuite le code, ouvrez l'éditeur de script ( F11 ) et créez en un nouveau au dessus de 'Main'. Nommez ce script " Création_Magie " et collez le code.
Utilisation : Pour créer votre alphabet toutes les cases se trouvent de la ligne 444 à 480.
Si le joueur se trompe dans le nom de la magie il apprendra obligatoirement la magie 999.
Code :
Ouvrez l'éditeur et ajouter après la ligne 23 de "Game_Actor " ceci :
attr_reader :creermagie
attr_reader :motmagentier
Puis après la ligne 66:
@creermagie=["","","","","","","","","",""] #ces commandes sont
#là pour instancier les nouveaux attributs
for k in 0 .. 9
@creermagie[k]=["","","","","",""]
end
@motmagentier=["","","","","","","","","",""]
Remplacer le script "Scene_Menu " par celui-ci:
#--------------------------------
#class Scene_Menu modifié par Ajenim pour le scrîpt création de magies V0.9
#--------------------------------
class Scene_Menu
# --------------------------------
def initialize(menu_index = 0)
@menu_index = menu_index
@changer = 0
@where = 0
@checker = 0
end
# --------------------------------
def main
s1 = $data_system.words.item
s2 = $data_system.words.skill
s3 = $data_system.words.equip
s4 = "Etat"
s5 = "Sauvegarder"
s6 = "Quitter"
s7 = "Equipe" #cette commande correspond à la fonction ordre
s8 = "Creer"
@command_window = Window_Command.new(160, [s1, s2, s3, s4, s5, s6, s7,s8])
@command_window.index = @menu_index
if $game_party.actors.size == 0
@command_window.disable_item(0)
@command_window.disable_item(1)
@command_window.disable_item(2)
@command_window.disable_item(3)
end
if $game_system.save_disabled
@command_window.disable_item(4)
end
if $game_party.actors.size == 1
@command_window.disable_item(6)
end
#@playtime_window = Window_PlayTime.new #j'ai désactivé le temps de jeu mais je
ne l'ai pas supprimé si vous voulez faire des modifications
#@playtime_window.x = 0 #j'ai désactivé le temps de jeu mais je
ne l'ai pas supprimé si vous voulez faire des modifications
#@playtime_window.y = 256 #j'ai désactivé le temps de jeu mais je ne
l'ai pas supprimé si vous voulez faire des modifications
@gold_window = Window_Gold.new
@gold_window.x = 0
@gold_window.y = 416
@status_window = Window_MenuStatus.new
@status_window.x = 160
@status_window.y = 0
Graphics.transition
loop do
Graphics.update
Input.update
update
if $scene != self
break
end
end
Graphics.freeze
@command_window.dispose
#@playtime_window.dispose #j'ai désactivé le temps de jeu mais
je ne l'ai pas supprimé si vous voulez faire des modifications
@gold_window.dispose
@status_window.dispose
end
# --------------------------------
def update
@command_window.update
#@playtime_window.update #j'ai désactivé le temps de jeu mais
je ne l'ai pas supprimé si vous voulez faire des modifications
@gold_window.update
@status_window.update
if @command_window.active
update_command
return
end
if @status_window.active
update_status
return
end
end
# --------------------------------
def update_command
if Input.trigger?(Input::B)
$game_system.se_play($data_system.cancel_se)
$scene = Scene_Map.new
return
end
if Input.trigger?(Input::C)
if $game_party.actors.size == 0 and @command_window.index < 4
$game_system.se_play($data_system.buzzer_se)
return
end
if $game_party.actors.size == 1 and @command_window.index ==6
$game_system.se_play($data_system.buzzer_se)
return
end
case @command_window.index
when 0
$game_system.se_play($data_system.decision_se)
$scene = Scene_Item.new
when 1
$game_system.se_play($data_system.decision_se)
@command_window.active = false
@status_window.active = true
@status_window.index = 0
when 2
$game_system.se_play($data_system.decision_se)
@command_window.active = false
@status_window.active = true
@status_window.index = 0
when 3
$game_system.se_play($data_system.decision_se)
@command_window.active = false
@status_window.active = true
@status_window.index = 0
when 4
if $game_system.save_disabled
$game_system.se_play($data_system.buzzer_se)
return
end
$game_system.se_play($data_system.decision_se)
$scene = Scene_Save.new
when 5
$game_system.se_play($data_system.decision_se)
$scene = Scene_End.new
when 6
$game_system.se_play($data_system.decision_se)
@checker = 0
@command_window.active = false
@status_window.active = true
@status_window.index = 0
when 7
#ce morceau a été rajouté pour le scrîpt
$game_system.se_play($data_system.decision_se)
@command_window.active = false
@status_window.active = true
@status_window.index = 0
end
return
end
end
# --------------------------------
def update_status
if Input.trigger?(Input::B)
$game_system.se_play($data_system.cancel_se)
@command_window.active = true
@status_window.active = false
@status_window.index = -1
return
end
if Input.trigger?(Input::C)
case @command_window.index
when 1
if $game_party.actors[@status_window.index].restriction >= 2
$game_system.se_play($data_system.buzzer_se)
return
end
$game_system.se_play($data_system.decision_se)
$scene = Scene_Skill.new(@status_window.index)
when 2
$game_system.se_play($data_system.decision_se)
$scene = Scene_Equip.new(@status_window.index)
when 3
$game_system.se_play($data_system.decision_se)
$scene = Scene_Status.new(@status_window.index)
when 6
$game_system.se_play($data_system.decision_se)
if @checker == 0
@changer = $game_party.actors[@status_window.index]
@where = @status_window.index
@checker = 1
else
$game_party.actors[@where] = $game_party.actors[@status_window.index]
$game_party.actors[@status_window.index] = @changer
@checker = 0
@status_window.refresh
end
when 7
#on choisi l'activation de la
fenetre des noms des magies pour un personnage
$game_system.se_play($data_system.decision_se)
$scene = Scene_Creer.new(@status_window.index)
end
return
end
end
end