Pour coller à sa description, j'ai décidé de n'accorder des habilités à ma Chevaucheuse de Licorne que lorsqu'elle possède une licorne.
1° étape : supprimer les AP_ concernés de la table CLUA.
2° étape : les conférer soit par script, soit par dialogue initié par la licorne lorsque la Chevaucheuse atteint les niveaux concernés.
Mais en commençant à coder ça, je me suis aperçu que je provoquais un problème que je n'arrive pas à résoudre : que se passe-t-il si plusieurs persos du groupe ont ce kit ?
Bref, comment identifier A QUI appartient la Licorne ?
Des idées ?
[KIT] Comment attribuer des habilités sous condition ?
- Freddy_Gwendo
- Orbe ancien
- Messages : 5879
- Enregistré le : sam. 23 avr. 2011, 01:26
- Localisation : Égaré dans un vortex entre Féérune et le Royaume de Diamant Éternel
- Statut : Hors ligne
[KIT] Comment attribuer des habilités sous condition ?
CARPE DIEM...Co-modérateur de La Forge et de La Chambre des Scribes
Moddeur qui s'arrache les cheveux...
Moddeur qui s'arrache les cheveux...
... avec Menace sur le Royaume de Diamant Éternel.
- Freddy_Gwendo
- Orbe ancien
- Messages : 5879
- Enregistré le : sam. 23 avr. 2011, 01:26
- Localisation : Égaré dans un vortex entre Féérune et le Royaume de Diamant Éternel
- Statut : Hors ligne
Personne n'aurait une intuition géniale ?
CARPE DIEM...Co-modérateur de La Forge et de La Chambre des Scribes
Moddeur qui s'arrache les cheveux...
Moddeur qui s'arrache les cheveux...
... avec Menace sur le Royaume de Diamant Éternel.
- Freddy_Gwendo
- Orbe ancien
- Messages : 5879
- Enregistré le : sam. 23 avr. 2011, 01:26
- Localisation : Égaré dans un vortex entre Féérune et le Royaume de Diamant Éternel
- Statut : Hors ligne
Merci de répondre. 
En fait, après voir étudié les fichiers CRE des PNJ du jeu, je me suis aperçu que je pouvais gérer ça avec le script du slot RACE qui n'est jamais utilisé.
J'ai commencé donc à coder ça hier soir : j'affecte le script GWCLDial au perso qui a le kit et je peux gérer le passage de niveau EN PRÉSENCE de la licorne (complexifié car non seulement la licorne change aussi de niveaux aux niveaux 20, 30, 35 et 40, mais bénéficie aussi de certaines habilités à cause du lien télépathique qui les unit : "Deux font une").
La seule chose que ne n'ai pas encore vérifié, c'est ceci : quid du mod level1NPC qui permet d'attribuer des kits différents en début de partie. Je dois ÊTRE CERTAIN que ce mod ne remplit pas le slot RACE des scripts.
Sinon, ça donne à peu près ceci :
En fait, après voir étudié les fichiers CRE des PNJ du jeu, je me suis aperçu que je pouvais gérer ça avec le script du slot RACE qui n'est jamais utilisé.
J'ai commencé donc à coder ça hier soir : j'affecte le script GWCLDial au perso qui a le kit et je peux gérer le passage de niveau EN PRÉSENCE de la licorne (complexifié car non seulement la licorne change aussi de niveaux aux niveaux 20, 30, 35 et 40, mais bénéficie aussi de certaines habilités à cause du lien télépathique qui les unit : "Deux font une").
La seule chose que ne n'ai pas encore vérifié, c'est ceci : quid du mod level1NPC qui permet d'attribuer des kits différents en début de partie. Je dois ÊTRE CERTAIN que ce mod ne remplit pas le slot RACE des scripts.
Sinon, ça donne à peu près ceci :
► Afficher le texte
Code : Tout sélectionner
/* ===================================================================================================================== *
* INITIALISATION du DIALOGUE lors des CHANGEMENTS de NIVEAU de la CHEVAUCHEUSE de LICORNE *
* ===================================================================================================================== */
/* ---------------------------------------------------------------------------------------------- *
* NIVEAU 11 - VIGILANCE : la Chevaucheuse et sa Licorne bénéficient d'un bonus de 1 à leur CA. *
* ---------------------------------------------------------------------------------------------- */
IF
Class(Myself,PALADIN_ALL)
LevelGT(Myself,10)
Global("GWChevaucheuse_L11","LOCALS",0)
InActiveArea("GWLicor1") // Licorne compagnon N10-19
Delay(12)
THEN
RESPONSE #100
ApplySpellRES("GWCLAC1",Myself)
ActionOverride("GWLicor1",ApplySpellRES("GWCLAC1",Myself))
SetGlobal("GWChevaucheuse_L11","LOCALS",1)
END
/* ---------------------------------------------------------------------------------------------------------------------------- *
* NIVEAU 14 - SCIENCE de L'INITIATIVE : la Chevaucheuse et sa Licorne bénéficient d'un bonus de 1 à leur facteur de vitesse. *
* ---------------------------------------------------------------------------------------------------------------------------- */
IF
Class(Myself,PALADIN_ALL)
LevelGT(Myself,13)
Global("GWChevaucheuse_L14","LOCALS",0)
InActiveArea("GWLicor1") // Licorne compagnon N10-19
Delay(12)
THEN
RESPONSE #100
ApplySpellRES("GWCLIni1",Myself)
ActionOverride("GWLicor1",ApplySpellRES("GWCLIni1",Myself))
SetGlobal("GWChevaucheuse_L14","LOCALS",1)
END
/* ------------------------------------------------------------------------------------ *
* NIVEAU 15 - PISTAGE : la Chevaucheuse acquiert la capacité de pistage des rôdeurs. *
* ------------------------------------------------------------------------------------ */
IF
Class(Myself,PALADIN_ALL)
LevelGT(Myself,14)
Global("GWChevaucheuse_L15","LOCALS",0)
InActiveArea("GWLicor1") // Licorne compagnon N10-19
Delay(12)
THEN
RESPONSE #100
AddSpecialAbility("GWPist1")
SetGlobal("GWChevaucheuse_L15","LOCALS",1)
END
/* ----------------------------------------------------------------------------------------------------------------- *
* NIVEAU 16 : la Chevaucheuse et sa Licorne gagnent un bonus de 2 aux dégâts qu'elles infligent au corps à corps. *
* ----------------------------------------------------------------------------------------------------------------- */
IF
Class(Myself,PALADIN_ALL)
LevelGT(Myself,15)
Global("GWChevaucheuse_L16","LOCALS",0)
InActiveArea("GWLicor1") // Licorne compagnon N10-19
Delay(12)
THEN
RESPONSE #100
ApplySpellRES("GWCLDam2",Myself)
ActionOverride("GWLicor1",ApplySpellRES("GWCLDam2",Myself))
SetGlobal("GWChevaucheuse_L16","LOCALS",1)
END
/* ---------------------------------------------------------------------------------------------- *
* NIVEAU 18 - VIGILANCE : la Chevaucheuse et sa Licorne bénéficient d'un bonus de 1 à leur CA. *
* ---------------------------------------------------------------------------------------------- */
IF
Class(Myself,PALADIN_ALL)
LevelGT(Myself,17)
Global("GWChevaucheuse_L18","LOCALS",0)
InActiveArea("GWLicor1") // Licorne compagnon N10-19
Delay(12)
THEN
RESPONSE #100
ApplySpellRES("GWCLAC1",Myself)
ActionOverride("GWLicor1",ApplySpellRES("GWCLAC1",Myself))
SetGlobal("GWChevaucheuse_L18","LOCALS",1)
END
/* --------------------------------- *
* NIVEAU 25 - BEAUTE SURNATURELLE *
* --------------------------------- */
IF
Class(Myself,PALADIN_ALL)
LevelGT(Myself,24)
Global("GWChevaucheuse_L25","LOCALS",0)
InActiveArea("GWLicor2") // Licorne compagnon N20-29
Delay(12)
THEN
RESPONSE #100
ApplySpellRES("GWBteSu",Myself)
SetGlobal("GWChevaucheuse_L25","LOCALS",1)
END
/* -------------------------------------------------------------------------------------------------- *
* NIVEAU 30 - VIGILANCE : la Chevaucheuse et sa Licorne bénéficient d'un bonus de 1 à leur CA. *
* INTEMPORALITÉ : la Chevaucheuse bénéficie de la longévité de sa licorne *
* -------------------------------------------------------------------------------------------------- */
IF
Class(Myself,PALADIN_ALL)
LevelGT(Myself,29)
Global("GWChevaucheuse_L30A","LOCALS",0)
InActiveArea("GWLicor3") // Licorne compagnon N30
Delay(12)
THEN
RESPONSE #100
ApplySpellRES("GWCLAC2",Myself)
ActionOverride("GWLicor3",ApplySpellRES("GWCLAC2",Myself))
SetGlobal("GWChevaucheuse_L30A","LOCALS",1)
END
/* --------------------------------------------------------------------------------- *
* NIVEAU 30 - PISTAGE : la Chevaucheuse acquiert la capacité Empreintes fraîches. *
* --------------------------------------------------------------------------------- */
IF
Class(Myself,PALADIN_ALL)
LevelGT(Myself,30)
Global("GWChevaucheuse_L30B","LOCALS",0)
InActiveArea("GWLicor3") // Licorne compagnon N30
Delay(12)
THEN
RESPONSE #100
AddSpecialAbility("GWPist2")
SetGlobal("GWChevaucheuse_L30B","LOCALS",1)
END
/* ------------------------------------- *
* NIVEAU 35 : Choix d'un nouveau sort *
* ------------------------------------- */
IF
Class(Myself,PALADIN_ALL)
LevelGT(Myself,34)
Global("GWCLDIAL","GLOBAL",35)
Global("GWChevaucheuse_L35","GLOBAL",0)
Delay(12)
THEN
RESPONSE #100
SetGlobal("GWCLDIAL","GLOBAL",36)
CreateCreatureObject("GWCLDial",Myself,0,0,0)
ActionOverride("GWCLDial",StartDialogNoSet(Myself))
END
/* --------------------------------------------- *
* SORT CHOISI : ENDURANCE de l'OURS de GROUPE *
* --------------------------------------------- */
IF
Global("GWCLDIAL","GLOBAL",3) // Le sort de groupe a été choisi
Global("GWChevaucheuse_L35","GLOBAL",1)
PartyRested()
THEN
RESPONSE #100
SetGlobal("GWCLDIAL","GLOBAL",0)
SetGlobal("GWChevaucheuse_L35","GLOBAL",0)
AddSpecialAbility("GWCLOurs")
END
/* ------------------------------------------ *
* SORT CHOISI : FORCE de TAUREAU de GROUPE *
* ------------------------------------------ */
IF
Global("GWCLDIAL","GLOBAL",3) // Le sort de groupe a été choisi
Global("GWChevaucheuse_L35","GLOBAL",2)
PartyRested()
THEN
RESPONSE #100
SetGlobal("GWCLDIAL","GLOBAL",0)
SetGlobal("GWChevaucheuse_L35","GLOBAL",0)
AddSpecialAbility("GWCLTaur")
END
/* -------------------------------------- *
* SORT CHOISI : GRÂCE FÉLINE de GROUPE *
* -------------------------------------- */
IF
Global("GWCLDIAL","GLOBAL",3) // Le sort de groupe a été choisi
Global("GWChevaucheuse_L35","GLOBAL",3)
PartyRested()
THEN
RESPONSE #100
SetGlobal("GWCLDIAL","GLOBAL",0)
SetGlobal("GWChevaucheuse_L35","GLOBAL",0)
AddSpecialAbility("GWCLGFel")
END
CARPE DIEM...Co-modérateur de La Forge et de La Chambre des Scribes
Moddeur qui s'arrache les cheveux...
Moddeur qui s'arrache les cheveux...
... avec Menace sur le Royaume de Diamant Éternel.
Qui est en ligne
Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 0 invité