JeuxOnLineForumsPlusConnectés : 125 (sites) | 302 (forums)Créer un compte
Forum jeux-vidéo>Neverwinter Nights
Maskado
Les forums JOL > Forum jeux-vidéo > Neverwinter Nights > NWN - Maskado > Pb sur un trigger dans le OnEnter RSS
   
Répondre
Partager Outils Rechercher
Fantome
Roi / Reine
 

Pb sur un trigger dans le OnEnter

Hello,

je voudrais faire en sorte que lorsqu'un pj (ou plusieurs) pénetre dans un trigger, il y ai 4 sorts qui se déclenchent à partir de 4 endroit différents(j'ai utilisé des objects invisibles que j'ai placé sur des colonnes: un sort par colonne) et que tant qu'il y a du monde dans la zone les 4 sorts se déclenchent tous les 3 secondes. Mon pb c'est que ca marche pas, ca me fait planter.
voici le code:

Code PHP:
void main()
{
 
object oColonneA GetObjectByTag("t_colonneA");
object oColonneB GetObjectByTag("t_colonneB");
object oColonneC GetObjectByTag("t_colonneC");
object oColonneD GetObjectByTag("t_colonneD");
object oPC GetEnteringObject();

 if (
GetIsObjectValid(oPC))
  {
   
AssignCommand(oColonneAActionCastSpellAtObject(SPELL_MAGIC_MISSILEoPCMETAMAGIC_ANYTRUE0PROJECTILE_PATH_TYPE_DEFAULTTRUE));

  
AssignCommand(oColonneBActionCastSpellAtObject(SPELL_CONE_OF_COLDoPCMETAMAGIC_ANYTRUE0PROJECTILE_PATH_TYPE_DEFAULTTRUE));
  
AssignCommand(oColonneCActionCastSpellAtObject(SPELL_CALL_LIGHTNINGoPCMETAMAGIC_ANYTRUE0PROJECTILE_PATH_TYPE_DEFAULTTRUE));
  
AssignCommand(oColonneDActionCastSpellAtObject(SPELL_FIREBALLoPCMETAMAGIC_ANYTRUE0PROJECTILE_PATH_TYPE_DEFAULTTRUE));
ActionWait(3.0);
}


Pouvez vous m'aidez? merci
a+

ps : j'ai pas réussi à mettre les balises pour le code. désolé. Dites moi comment faire. Merci
Lien direct vers le message - Vieux
Avatar de Jedaï
Jedaï
Alpha & Oméga
 
Avatar de Jedaï
 
C'est pas compliqué, pour obtenir le résultat suivant :
Code PHP:
//code 
Il te suffit de taper [*PHP]//code[*/PHP] (sans les "*") et voilà

Par ailleurs pour ta question, je ne sais pas même si je ne vois pas où est la répétition dans ton script (tu l'as bien mis dans le OnEnter hein, pas dans le OnHeartBeat ?).
Lien direct vers le message - Vieux
Sire Pom-pom
Roi
 
Outre la question de la boucle soulignée par Jedai, Le problème est que les objets inanimés ne peuvent pas lancer de sorts, donc si tu veut le faire tel quel, il faut simuler les effets. C'est relativement simple pour cône de froid, appel de la foudre et missile magiques, il suffit de reproduire les scripts de sort en les modifiant un peu pour la cause. ça l'est moins pour la boule de feu, car à ma connaissance il n'y a pas de VFX préfabriqué qui la produise (pas l'explosion, le missile), et on ne peut pas ajouter ce type de VFX (projectile) au jeu (bizarre mais j'ai cherché ce 2da et je ne l'ai pas trouvé, à quoi fait référence la valeur de Proj_FX_imp dans visualeffect.2da je ne sais pas... Skanzo?).
La solution simple c'est de poser des "néant_humain" à côté de tes colonnes (ou mieux le néantissime humain de Skanzo qui traine sur ce forum , cherche le topic de RAT sur un doppelganger, ça doit etre dans les 5 premières pages si la recherche ne donne rien ), et de leur faire lancer les sorts à eux (toujours avec cheat = TRUE), comme ce sont des créatures, plus de problème.

PS: oublies les ActionWait, ActionWait n'est presque jamais ce que tu veux.
Lien direct vers le message - Vieux
Avatar de eMRaistlin
eMRaistlin
Alpha & Oméga
 
Avatar de eMRaistlin
 
Citation:
PS: oublies les ActionWait, ActionWait n'est presque jamais ce que tu veux
Bein, ca depend, mais bon, la, il demande a un trigger de faire actionwait, je confirme que ca peut pas marcher
Lien direct vers le message - Vieux
Fantome
Roi / Reine
 
bonjour,
tout d'abord merci pour vos réponses.
Je confirme le script se trouve bien dans le OnEnter.
Je suis par contre surpris par ta réponse Sire PomPom quand tu dis que des objets inanimés ne peuvent pas lancer de sort: j'ai souvenir d'un script où il y a une porte piégé par une statue. Lorsque l'on touche la porte, la statue lance un magic missile. Et de mémoire ce script fonctionnait bien.
Mais bon je suis peut etre entrain de me fourvoyer.

J'ai peut etre pas bien compris tes explications: Pourrais tu me donner un exemple pour illustrer ton propos "il faut simuler les effets"?

Pour revenir au pb du OnEnter, étant donné qu'il s'agit d'une zone au sol, si un pj se déplace continuellement dans la zone, j'imagine que celà déclenche le OnEnter à chaque fois et par conséquence prends bcp de ressource: Mon pb de plantage n'est il pas là ?

Comment puis je gérer le fait que je veuille laisser un laps de temps de 3 secondes entre le moments ou les sorts sont lancé*s et la prochaine fois où ils seront exécutés?

J'ai jetté un oeil au script de Rat sur les Dopplegangers, c'est une effet une solution mais je ne vois pas pourquoi l'histoire de la statue qui piege une porte fonctionne et pkoi je pourrais pas l'appliquer à mon pb.

J'espère que vous saurez m'éclairer sur l'ensemble de ces pbs.
Merci.
a+

ps: j'ai rajouté les balises au code.
Lien direct vers le message - Vieux
Avatar de Le grognon
Le grognon
Alpha & Oméga
 
Avatar de Le grognon
 
mouais... je voulais dire ( ) peut-etre que vous devriez vous inspirer du module "CATAPULT" de bioware...

il me semble bien que ce sont des fireball que lance les catapults...

http://nwvault.ign.com/Files/modules...48444840.shtml
Lien direct vers le message - Vieux
Avatar de eMRaistlin
eMRaistlin
Alpha & Oméga
 
Avatar de eMRaistlin
 
Il ne faut pas confondre Lancer un sort et Appliquer des effets visuels + des effets divers par un script qui "simule" donc ce sort .
Lien direct vers le message - Vieux
Avatar de Le grognon
Le grognon
Alpha & Oméga
 
Avatar de Le grognon
 
Citation:
Provient du message de Sire Pom-pom
.... ça l'est moins pour la boule de feu, car à ma connaissance il n'y a pas de VFX préfabriqué qui la produise (pas l'explosion, le missile), et on ne peut pas ajouter ce type de VFX (projectile) au jeu (bizarre mais j'ai cherché ce 2da et je ne l'ai pas trouvé, à quoi fait référence la valeur de Proj_FX_imp dans visualeffect.2da je ne sais pas... Skanzo?).....
enfin moi c'etait pour repondre à ça...

et puis qu'on lance un sort ou qu'on le simule avec un effet visuel+ un script de degat... le resultat est le meme....

enfin, moi.. c'etait pour donner une idée...
Lien direct vers le message - Vieux
Avatar de B L I N G !
B L I N G !
Roi
 
Avatar de B L I N G !
 
essaye comme ca afin de remplacer ton ActionWait()....
tous ca en remplaçant le IF (...) {....} par celui là...
Code PHP:
if (GetIsObjectValid(oPC) && (!GetLocalInt(OBJECT_SELF,"variable")))
  {
  
SetLocalInt(OBJECT_SELF,"variable",TRUE);
 
AssignCommand(oColonneAActionCastSpellAtObject(SPELL_MAGIC_MISSILEoPCMETAMAGIC_ANYTRUE0PROJECTILE_PATH_TYPE_DEFAULTTRUE));

  
AssignCommand(oColonneBActionCastSpellAtObject(SPELL_CONE_OF_COLDoPCMETAMAGIC_ANYTRUE0PROJECTILE_PATH_TYPE_DEFAULTTRUE));
  
AssignCommand(oColonneCActionCastSpellAtObject(SPELL_CALL_LIGHTNINGoPCMETAMAGIC_ANYTRUE0PROJECTILE_PATH_TYPE_DEFAULTTRUE));
  
AssignCommand(oColonneDActionCastSpellAtObject(SPELL_FIREBALLoPCMETAMAGIC_ANYTRUE0PROJECTILE_PATH_TYPE_DEFAULTTRUE));
DelayCommande(3.0,SetLocalInt(OBJECT_SELF,"variable",FALSE));

pour les effet je peut pas te dire si ca cloche mais autant c'est juste ton actionwait qui fait planter le tout....
*a tester*
Lien direct vers le message - Vieux
Fantome
Roi / Reine
 
Merci à tous pour vos réponses.
Je vais tester ce soir la soluce de Sounéva. Si besoin est, je reviendrais vers vous.
a+
Lien direct vers le message - Vieux
Avatar de eMRaistlin
eMRaistlin
Alpha & Oméga
 
Avatar de eMRaistlin
 
Citation:
Provient du message de tonton le grognon
enfin moi c'etait pour repondre à ça...

et puis qu'on lance un sort ou qu'on le simule avec un effet visuel+ un script de degat... le resultat est le meme....

enfin, moi.. c'etait pour donner une idée...

Je suis d'accords : je repondait au post du dessus par rapport au statue qui lancent des sorts.
(ah, non, y'a un truc que je voulais rajouter : "le resultat est le meme....", mais la methode est differente, comme de se rendre a Bastille en Bus ou en Metro : meme resultat, mais pas la meme galere ^^)
Lien direct vers le message - Vieux
Avatar de Jedaï
Jedaï
Alpha & Oméga
 
Avatar de Jedaï
 
Citation:
Pour revenir au pb du OnEnter, étant donné qu'il s'agit d'une zone au sol, si un pj se déplace continuellement dans la zone, j'imagine que celà déclenche le OnEnter à chaque fois et par conséquence prends bcp de ressource: Mon pb de plantage n'est il pas là ?
Non, le OnEnter ne se déclenche qu'à l'entrée du joueur dans le trigger, c'est à dire lorsqu'il franchit la limite entre l'intérieur et l'extérieur du trigger (je croyais pourtant que "Enter" était suffisamment clair), il n'y a donc aucune raison (à part si le joueur se trémousse ou si tu as fait un trigger particulièrement tordu) pour que le OnEnter se déclenche plusieurs fois de suite.

Ce qui m'amène à critiquer le script de Sounéva, qui ne fait pas ce que tu veux : il a simplement reformulé ton script pour que si deux personnes rentrent l'une à la suite de l'autre en moins de 3 secondes dans le trigger, le script ne se déclenche qu'une fois. Or tu veux au contraire qu'il se répète toutes les 3 secondes tant que le PJ est dans le trigger, non ?

J'ai la flemme de te faire le script, donc je te renvoit à un post qui te montrera la technique à utiliser (© Jedaï ) :
http://forums.jeuxonline.info/showth...hreadid=154022
ou encore le script de la fameuse statue de Jaha qui utilise la même technique (avec des fourberies vraiment sadiques ) :
http://forums.jeuxonline.info/showth...hreadid=157785

Voilà, avec tout ça tu devrais y arriver
Lien direct vers le message - Vieux
Avatar de Jaha Effect
Jaha Effect
Alpha & Oméga
 
Avatar de Jaha Effect
 
Citation:
Provient du message de Jedaï

ou encore le script de la fameuse statue de Jaha qui utilise la même technique (avec des fourberies vraiment sadiques ) :
Sadique ?? hum... heu... oui j'avoue, mais j'adore

Jaha Effect
Lien direct vers le message - Vieux
Sire Pom-pom
Roi
 
Ben, je viens de bidouiller le module catapult! , et apparemment ActionCastSpellAtLocation marche sur les scripts de plaçables, avec bCheat = TRUE ou sans, ça ne change rien...
Désolé donc, j'étais persuadé du contraire.
Lien direct vers le message - Vieux
Avatar de eMRaistlin
eMRaistlin
Alpha & Oméga
 
Avatar de eMRaistlin
 
Citation:
Désolé donc, j'étais persuadé du contraire.

Euh... pareil...
Lien direct vers le message - Vieux
Répondre
Les forums JOL > Forum jeux-vidéo > Neverwinter Nights > NWN - Maskado > Pb sur un trigger dans le OnEnter
   

Outils Rechercher
Rechercher:

Recherche avancée

Les vidéos de Neverwinter Nights RSS
  • Aucune vidéo pour le moment...
Thème visuel : Fuseau horaire GMT +1. Il est actuellement 05h25.
   

© JeuxOnLine, le site des MMO, MMORPG et MOBA. Tous droits réservés. - Conditions générales d'utilisation - Conditions d'utilisation des forums - Traitement des données personnelles - ! Signaler un contenu illicite