Alors j'ai une réponse "pas prise de tête pour moi", mais assez coûteuse pour toi en terme d'event.
Première chose, une manière simple de "bloquer/débloquer" un sort, c'est de créer un double de ce sort dans la BDD avec la disponibilité "Jamais"
Ensuite, voilà un micro bout de code :
- Code:
-
class Scene_Battle < Scene_Base
alias newupdate_start_skill_selection start_skill_selection
def start_skill_selection
$game_temp.common_event_id = 32564
newupdate_start_skill_selection
end
end
Celui ci va déclencher l'event commun de ton choix (ici, le 32564) à chaque fois que tu ouvres la fenêtre des skills dans un combat. (c'est à dire très souvent :O fais gaffe à ton event commun)
Dans l'event, tu sais quoi mettre en gros : si une variable vaut tant, alors tu supprime un skill et t'en ajoute un autre.
Je fais mettre à jour les compétences aussi souvent au cas où tu veux mettre des compétences du style "Augmente la variable : Magie élémentaire de X" en plein combat, ou alors si ce genre de variable augmente spontanément au milieu du combat.
Si ce n'est pas prévu, voilà le même bout de code, mais qui déclenche en fin de combat :
- Code:
-
class Scene_Battle < Scene_Base
alias newupdate_process_victory process_victory
def process_victory
$game_temp.common_event_id = 32564
newupdate_process_victory
end
end