Suite et fin du script précédent:- Code: Tout sélectionner
#==============================================================================
# ** Scene_Equip
#------------------------------------------------------------------------------
# Edited to add 'equipment_can_use?' function
#==============================================================================
class Scene_Equip < Scene_Base
#--------------------------------------------------------------------------
# * Update Item Selection
#--------------------------------------------------------------------------
def update_item_selection
if Input.trigger?(Input::B)
Sound.play_cancel
@equip_window.active = true
@item_window.active = false
@item_window.index = -1
elsif Input.trigger?(Input::C)
if @actor.equipment_can_use?(@item_window.item) # Added 'equipment_can_use?'
Sound.play_equip
@actor.change_equip(@equip_window.index, @item_window.item)
@equip_window.active = true
@item_window.active = false
@item_window.index = -1
@equip_window.refresh
for item_window in @item_windows
item_window.refresh
end
else
Sound.play_buzzer
end
end
end
end
#==============================================================================
# ** Window_Skill
#------------------------------------------------------------------------------
# Edited to hide certain skills
#==============================================================================
class Window_Skill < Window_Selectable
#--------------------------------------------------------------------------
# * Refresh
#--------------------------------------------------------------------------
def refresh
@data = []
for skill in @actor.skills
@data.push(skill) if @actor.show_skill?(skill) # Added 'If' statement
if skill.id == @actor.last_skill_id
self.index = @data.size - 1
end
end
@item_max = @data.size
create_contents
for i in 0...@item_max
draw_item(i)
end
end
end
Pour utiliser ce script, choisissez l'arme ou le sort à utiliser sous certaines conditions et rajoutez dans la partie
Note:
- <skill><skill> s'il s'agit d'un sort;
- <equip><equip> s'il s'agit d'un équipement.
Entre ces deux balises, vous insèrerez la condition que vous souhaitez.
Exemple:
- Code: Tout sélectionner
<equip>LEVELMORE9<equip>
Le héros devra alors avoir un niveau supérieur à 9 pour pouvoir équiper son arme.
Vous pouvez également mettre plusieurs conditions pour l'arme ou le sort.
Exemple:
- Code: Tout sélectionner
<skill>HPLESS500
HPMORE400<skill>
Le héros devra donc avoir entre 400 et 500 points de vie.
La liste des commandes utilisable pour les
sorts est:
- STATEx: Le héros doit subir l'état x (ID de l'état) pour lancer le sort;
- WEAPONx: L'arme d'ID x doit être équipée;
- ARMOURx: L'armure d'ID x doit être équipée (vous pouvez également mettre la condition avec deux armures en mettant ARMOURx,y avec x et y les ID des deux armures nécessaires);
- HPLESSx: La vie du héros doit être inférieure à x% de sa vie totale;
- HPMOREx: La vie du héros doit être supérieure à x% de sa vie totale;
- FREEHANDx: x des deux mains du héros doit être libre;
- ITEM: ITEMx: Le héros doit posséder l'objet x (ID de l'objet);
ITEMx,y: Le héros doit posséder l'objet x et l'objet y (ID des objets);
ITEMx&y,z: Le héros doit posséder y fois l'objet x et doit posséder l'objet z (x et z les ID des objets);
- ITEMUSE: ITEMUSEx: Le héros doit posséder l'objet x (ID de l'objet) et le sacrifiera lors de l'utilisation du sort;
ITEMUSEx,y: Le héros doit posséder l'objet x et l'objet y (ID des objets) et les sacrifiera lors de l'utilisation du sort;
ITEMUSEx&y,z: Le héros doit posséder y fois l'objet x et doit posséder l'objet z (x et z les ID des objets) et les sacrifiera lors de l'utilisation du sort;
- GOLDx: Le héros doit posséder au moins x unités de l'argent du jeu pour lancer le sort;
- GOLDUSEx: Le héros doit posséder au moins x unités de l'argent du jeu et les sacrifiera pour lancer le sort;
- LEVELLESSx: Le niveau du héros doit être inférieur à x (remplacez x par la valeur);
- LEVELMOREx: Le niveau du héros doit être supérieur à x (remplacez x par la valeur);
- CLASSx: Seuls les héros de classe x (ID de la classe) peuvent utiliser le sort (vous pouvez également mettre la condition avec deux classes en mettant CLASSx,y avec x et y les ID des deux classes possibles);
- PARTYNUMBERx: Le nombre de héros dans le groupe doit être supérieur ou égal à x pour lancer le sort;
- PARTYMEMBERx: Le héros x (ID du héros) doit être présent dans le groupe pour lancer le sort.
La liste des commandes utilisable pour les
équipements est:
- LEVELLESSx: Le niveau du héros doit être inférieur à x (remplacez x par la valeur);
- LEVELMOREx: Le niveau du héros doit être supérieur à x (remplacez x par la valeur);
- WEAPONx: L'arme d'ID x doit être équipée;
- ARMOURx: L'armure d'ID x doit être équipée (vous pouvez également mettre la condition avec deux armures en mettant ARMOURx,y avec x et y les ID des deux armures nécessaires);
- ATKx: ATK du héros doit être supérieur ou égal à x;
- DEFx: DEF du héros doit être supérieur ou égal à x;
- SPIx: SPI du héros doit être supérieur ou égal à x;
- AGIx: AGI du héros doit être supérieur ou égal à x.
Remarque :
Le script comporte quelques défauts de conception notamment par exemple le fait qu'il ne prenne pas en compte les stats (atk, ...) effectives mais leur valeur relative au niveau du personnage et indépendante de quelconque ajouts ou retrait autres. (par la commande d'event modifier les statistiques par exemple)