Bon je vais répondre de manière plus illustrée pour les suivants utilisants la fonction 'Recherche', d'autant que mettre l'invincibilité sur les joueurs demande un peu plus de travail ...
I/ Le monstre devient invincibleDéjà, on a besoin des évènements communs qui vont transformer le monstre, dans les deux sens.
- Spoiler:
Le slime intuable est juste intuable ; pas besoin de mettre des améliorations de caractéristique, juste une résistance à tous les attributs et statuts (en s'assurant que toutes vos aptitudes ont bien des attributs). Le monstre ressemble donc à ça :
- Spoiler:
Et le monstre normal à ça :
- Spoiler:
Vous l'avez remarqué, la manière d'entrer ou de sortir de l'invincibilité est simple, il suffit de créer une aptitude qui appellera l'évènement commun 'Retour à la normale' ou 'Invincibilité' précédents, et de la faire lancer au monstre quand on veut (ici on entre lorsque les pv sont bas, lorsqu'on est frappé d'un statut, et on sort au troisième tour d'invulnérabilité). Ces aptitudes sont toutes simples, je la met avec l'aptitude Invincibilité qui est identique :
- Spoiler:
Comment rendre vulnérable un monstre invincible avec un objet ? (cf Golden Sun 2 et le Poséidon)
Simplement en appelant l'EV commun 'Retour à la normale' dans l'objet (ne pas oublier le 'combat uniquement'):
- Spoiler:
Et si on veut que l'adversaire devienne vulnérable lorsqu'on lui lance une attaque de feu/qu'on le tape avec un arc... ?
C'est là que nous sert la statut 'Provoc Invincibilité' que vous avez vu dans le screen du slime normal. En effet, si votre boule de feu inflige le statut Provoc Invincibilité, le slime déclenchera son aptitude dès le tour suivant.
Je met le screen de la condition au cas où :
- Spoiler:
Le seul truc important est 'Aucune résistance'.
Avec ça, vous devriez pouvoir gérer l'invulnérabilité de vos monstres sans problème (si, un seul, voir à la fin du post). Passons aux héros.
II/ Le héros devient invincibleCe procédé coûte : un interrupteur par héros plus un, et un état par héros, et une classe supplémentaire par classe jouable.
Là... c'est la classe qu'il faut modifier, en effet la classe du héros gère ses résistances aux attributs/aux statuts. Je prends le parti de créer les nouvelles classes juste en dessous des normales, de manière à ce que la différence d'id entre classe normale et invincible soit toujours de 1, et que les classes invincibles aient toujours un id pair. La classe copie du paladin sera tout simplement :
- Spoiler:
Bien, maintenant, comment nos personnages vont ils rentrer en phase d'invulnérabilité ? (pourquoi je trouve que deux mots pour ce truc @#!$ )
Ici on suppose que le héros utilise un objet sur lui même, le voici :
- Spoiler:
Cet objet fait deux choses : il inflige les états invulnérabilité (qui ne font encore rien, hein) de tout les membres de l'équipe sur l'utilisateur (la sienne se trouve forcément dedans) , et ENSUITE (j'ai vérifié, les conditions d'abord) il appelle l'EV commun ici nommé de manière surprenante : 'Invincibilité Joueur'
Je n'ai pas précisé ce que contiennent les sus-dis états, ils sont identiques à la condition 'Provoc Invincibilité' de tout à l'heure, mais cette fois, les conditions de guérison sont importantes : la guérison à la fin du combat est nécessaire pour pas commencer invincible ensuite, et si vous voulez être invulnérable 3 tours, la condition doit durer autant.
L'EV commun qui s'active est le suivant :
- Spoiler:
Bon donc l'effet est simple : on va chercher le personnage atteint de la condition(ceux qui sont déjà invincibles sont atteints aussi, mais on s'en fout), on lui change sa classe et on active l'interrupteur 'Compte à rebours'. Celui-ci déclenche un deuxième EV un évènement de combat :
- Spoiler:
Celui-ci se déclenche à la fin de chaque tour où l'interrupteur 'Compte à rebours' est activé, et son seul rôle est d'appeler un autre évènement commun :
- Spoiler:
Bien, que fait t'il ? Déjà, première partie des conditions : tous les personnes atteintes d'invincibilité activent un interrupteur. Ensuite, s'ils ne sont plus sous cet état (2eme partie de la condition), mais que l'interrupteur est activé (ils étaient donc invincibles au tour précédent), alors on les rend normaux (changement de classe, désactivation de l'interrupteur). Les interrupteurs individuels sont juste là pour pouvoir éventuellement afficher des messages ou animations lors d'un retour à l'état normal (sans les interrupteurs, ces messages seraient affichés à chaque tour pour tous les personnages normaux).
Enfin, si personne n'est invincible, on désactive l'EV de combat en désactivant 'Compte à rebours'.
Bilan des courses : on a bien réussi à rendre nos héros invincibles individuellement (à l'aide d'objet, mais ça marche pour des aptitudes de la même façon), pour une durée tout autant individuelle, en rendant possible les messages/animations au démarrage et à la fin de cet état.
Reste à rendre leurs classes normales aux héros à la fin du combat... malheureusement, on peut faire très peu de choses à la fin du combat avec seulement des events. On va donc rentrer quelques lignes de code dans Scene_battle :
- Spoiler:
Aux endroits en jaune, vous tapez :
for i in [1,2,...,le nombre de héros jouables]
if $game_actors[i].class_id%2 == 0
$game_actors[i].class_id -= 1
end
end
Bon voilà, j'espère que c'est assez clair maintenant, AUCUN besoin de toucher aux caractéristiques ou de passer par un script !
Après quelques tests, il reste quelques trucs bizarres : même avec E de résistance à tous les attributs, parfois on leur inflige 1 pv... s'ils ne doivent vraiment rien subir, mettez F à la place. Les héros avec E de résistance à tous les statuts sont quand même parfois aveuglés si la probabilité d'infliger l'état est 100% , donc mettez F ici aussi.
J'en ai fini, bon making !
Tiroflan