Oui tu l'aurais mis au bon endroit, mais ce script est en effet un include et il ne peut donc s'exécuter comme ça.
Tu dois l'include en début de script et lancer la fonction à la fin, comme ceci:
#include "x0_i0_spawncond" #include "hc_inc_npccorpse"
void main() {
int nClass = GetLevelByClass(CLASS_TYPE_COMMONER); int nAlign = GetAlignmentGoodEvil(OBJECT_SELF);
// If we're a good/neutral commoner, // adjust the killer's alignment evil if(nClass > 0 && (nAlign == ALIGNMENT_GOOD || nAlign == ALIGNMENT_NEUTRAL)) { object oKiller = GetLastKiller(); AdjustAlignment(oKiller, ALIGNMENT_EVIL, 5); }
// Call to allies to let them know we're dead SpeakString("NW_I_AM_DEAD", TALKVOLUME_SILENT_TALK);
//Shout Attack my target, only works with the On Spawn In setup SpeakString("NW_ATTACK_MY_TARGET", TALKVOLUME_SILENT_TALK);
// NOTE: the OnDeath user-defined event does not // trigger reliably and should probably be removed if(GetSpawnInCondition(NW_FLAG_DEATH_EVENT)) { SignalEvent(OBJECT_SELF, EventUserDefined(1007)); }
//Voici la fonction: LeaveCorpse(); }
Bien entendu, tu peux configurer le tout dans l'include (les paramètres expliqués en début d'include se configurent plus bas, là où se trouve la fonction LeaveCorpse)
N'oublie pas de recompiler le script OnDeath si tu modifies l'include !!
Concernant l'objet, tu dois créer dans la palette un objet invisible avec le ResRef: "invis_corpse_obj" et mettre dans le OnDisturbed le script OnDist et dans le OnUsed, le script OnUsed.
PS: Je n'ai pas la même version que toi, pas moyen de mettre la main sur celle que j'ai
|