Archives des forums MMO/MMORPG > Neverwinter Nights > NWN - Maskado > Dégats dus à des flammes
Dégats dus à des flammes
Par Mastokk le 3/1/2003 Ã 20:15:22 (#2937996)
void main()
{
object oPC = GetEnteringObject();
SetLocalInt(oPC, "bFIRE", 1);
ApplyEffectToObject(DURATION_TYPE_INSTANT,EffectDamage(d4(),DAMAGE_TYPE_FIRE), oPC);
if(GetLocalInt(oPC, "bFIRE")==1)
{
DelayCommand(1.0, ExecuteScript("be_dommages_flam", oPC));
}
}
Quelqu'un peut-il me dire ce qui cloche ?
Par Jedaï le 3/1/2003 à 20:38:09 (#2938166)
DelayCommand(1.0, ExecuteScript("be_dommages_flam", oPC));
et
object oPC = GetEnteringObject();
Demande toi ce qu'est oPC à la seconde (et pas deuxième) itération du script.... :mdr:
Je pense que tu as vu non ? :D
C'est fou ce qu'on peut-être distrait parfois. :(
Par Mastokk le 4/1/2003 Ã 0:40:03 (#2939565)
Par Mastokk le 4/1/2003 Ã 14:48:43 (#2942916)
J'ai cherché mais je n'ai pas trouvé de fonction permettant de récupérer le dernier PJ qui a subit des dégâts... :aide:
Par Zariel le 4/1/2003 Ã 17:31:23 (#2943949)
Par Mastokk le 6/1/2003 Ã 1:47:27 (#2953716)
Il faut forcément utiliser le OnHeartBeat où en émuler un ?
Par coolstar le 6/1/2003 Ã 2:58:55 (#2953935)
Il suffit juste de Repérer le PC concerné en lui affectant une Variable personnalisé, de type :SetLocalObject(oPC, "Flamme", oPC);
Et tu n'as plus ensuite qu'Ã renvoyer le Script non pas bien sur oPC, mais sur : GetLocalObject(oPC, "Flamme")
;)
Par eMRaistlin le 6/1/2003 Ã 10:33:57 (#2954977)
Sur le onExit, par exemple...
Par coolstar le 6/1/2003 Ã 10:47:42 (#2955032)
Par Mastokk le 6/1/2003 Ã 17:49:37 (#2957792)
Par Jedaï le 6/1/2003 à 20:17:13 (#2959040)
//OnEnter du trigger autour des flammes :
void main()
{
object oPC = GetEnteringObject();
SetLocalInt(oPC, "bGril", TRUE);
ExecuteScript("be_gril_pc_vite", oPC)
}
//OnExit du trigger autour des flammes :
void main()
{
object oPC = GetExitingObject();
DeleteLocalInt(oPC, "bGril");
}
//script "be_gril_pc_vite" :
void main()
{
object oPC = OBJECT_SELF;
if(GetLocalInt(oPC, "bGril"))
{
DelayCommand(1.0, ExecuteScript("be_gril_pc_vite", oPC));
ApplyEffectToObject(DURATION_TYPE_INSTANT,EffectDamage(d4(),DAMAGE_TYPE_FIRE), oPC);
}
}
Permet moi de dire qu'avec 1d4 de dommage toutes les secondes, tu te révèle un DM sadique. Si telle est ton intention, tant mieux :D , sinon modifie les délais dans "be_gril_pc_vite".;)
[EDIT] J'ai modifié le nom du script : il était trop long.;)
Par coolstar le 7/1/2003 Ã 1:16:41 (#2961515)
Par Mastokk le 7/1/2003 Ã 1:36:36 (#2961636)
Provient du message de Jedaï
Permet moi de dire qu'avec 1d4 de dommage toutes les secondes, tu te révèle un DM sadique. Si telle est ton intention, tant mieux :D , sinon modifie les délais dans "be_gril_pc_express".;)
Oui oui je sais je suis sadique :D. Mais je vais augmenter le temps entre les dégâts. Merci de votre aide. :).
Par Mastokk le 7/1/2003 Ã 1:59:10 (#2961757)
Pour ceux qui voudront l'utiliser tel quel, enlevez les 2 s du nom du script parce qu'il est trop long.
Par coolstar le 7/1/2003 Ã 3:37:42 (#2962108)
Par Gorgam le 7/1/2003 Ã 11:53:58 (#2963595)
//script "be_gril_pc_express" :
void main()
{
object oPC = OBJECT_SELF;
if(GetLocalInt(oPC, "bGril"))
{
DelayCommand(1.0, ExecuteScript("be_gril_pc_express", oPC));
ApplyEffectToObject(DURATION_TYPE_INSTANT,EffectDamage(d4(),DAMAGE_TYPE_FIRE), oPC);
}
}
En faite comme je comprend rien aux scriptes moi, je voulais juste savoir ou le me met celui la? [Edit by eM : c'est pas le genre de la maison, rassure toi] - Merci d'avance :)
Par coolstar le 7/1/2003 Ã 13:37:38 (#2964387)
PS Gorgam: Le Script est lancé par le celui du 'OnEnter' du Trigger concerné... ;)
Par Mastokk le 7/1/2003 Ã 16:09:20 (#2965627)
//script "be_gril_pc_express" :
void main()
{
object oPC = OBJECT_SELF;
if(GetLocalInt(oPC, "bGril"))
{
DelayCommand(1.0, ExecuteScript("be_gril_pc_express", oPC));
ApplyEffectToObject(DURATION_TYPE_INSTANT,EffectDamage(d4(),DAMAGE_TYPE_FIRE), oPC);
}
}
En faite comme je comprend rien aux scriptes moi, je voulais juste savoir ou le me met celui la? [Edit by eM : c'est pas le genre de la maison, rassure toi] - Merci d'avance :)
Celui-là tu le mets nul part, tu le crées simplement avec l'éditeur de script et le sauvegarde. Le script du Onenter s'occuppera de l'appeler :).
Fais bien attention à modifier le nom du script en be_gril_pc_expre, sinon il est trop long.
Par coolstar le 7/1/2003 Ã 18:33:10 (#2966823)
Provient du message de coolstar
PS Gorgam: Le Script est lancé par le celui du 'OnEnter' du Trigger concerné... ;)
Par Jaha Effect le 7/1/2003 Ã 21:47:43 (#2968370)
Jaha Effect :D
Par Mastokk le 7/1/2003 Ã 23:54:55 (#2969176)
Par coolstar le 8/1/2003 Ã 0:26:32 (#2969363)
JOL Archives 1.0.1
@ JOL / JeuxOnLine