La Bibliothèque de Neverwinter Nights
Aide et informations diverses sur Neverwinter Nights ainsi que D&D3.
Aide et informations diverses sur Neverwinter Nights ainsi que D&D3.
FAQ
Rechercher
Liste des Membres
Groupes d'utilisateurs
S'enregistrer Se connecter pour vérifier ses messages privés Connexion
S'enregistrer Se connecter pour vérifier ses messages privés Connexion
La date/heure actuelle est 23/11/2024 12:39:35
La Bibliothèque de Neverwinter Nights Index du Forum »
La Bibliothèque Binaire du NWScript - Neverwinter Nights
Voir le sujet précédent ¤ Voir le sujet suivant | |
---|---|
Auteur | Message |
sylveran Ecuyer Messages: 57 Localisation: dijon |
|
Revenir en haut | |
edisnotdead Grand Chevalier Messages: 132 |
faut mettre ca dans le ondeath du mod je pense
NWScript : void main() { object otueur = GetLastKiller(); object opc = GetLastPlayerDied(); object oItem = GetItemPossessedBy(opc, "tag du drapeau"); location oopc = GetLocation(opc); if ((GetIsPC(opc)==TRUE)&&(oItem != OBJECT_INVALID)) { DestroyObject(oItem); CreateItemOnObject("reref du drapeau",otueur); } } |
Revenir en haut | |
sylveran Ecuyer Messages: 57 Localisation: dijon |
|
Revenir en haut | |
edisnotdead Grand Chevalier Messages: 132 |
essaye celui la ca evitera que si il se fait tuer par un spawn le drapeau soit perdu
NWScript : void main() { object otueur = GetLastKiller(); object opc = GetLastPlayerDied(); object oItem = GetItemPossessedBy(opc, "tag du drapeau"); location oopc = GetLocation(opc); if ((GetIsPC(opc)==TRUE)&&(oItem != OBJECT_INVALID)&&(GetIsPC(otueur)==TRUE)) { DestroyObject(oItem); CreateItemOnObject("reref du drapeau",otueur); } } |
Revenir en haut | |
arknax Ecuyer Messages: 56 |
Pourquoi
NWScript : Il ne te sert à rien dans ton script.
Note : le code affiché ci-dessus n'est pas rendu tel qu'il devrait l'être réellement, en particulier des sauts de lignes sont automatiquement insérés pour éviter de casser la mise en page. En le copiant/collant, vous résoudrez ce problème. Sinon, pour raccourcir un peu le tout : NWScript : void main() { object otueur = GetLastKiller(); object opc = GetLastPlayerDied(); object oItem = GetItemPossessedBy(opc, "tag du drapeau"); if (GetIsPC(opc) && oItem != OBJECT_INVALID && GetIsPC(otueur)) { DestroyObject(oItem); CreateItemOnObject("reref du drapeau",otueur); } } |
Revenir en haut | |
edisnotdead Grand Chevalier Messages: 132 |
pourquoi ??? la fleme de l enlever en faite
|
Revenir en haut | |
arknax Ecuyer Messages: 56 |
...lol
|
Revenir en haut | |
sylveran Ecuyer Messages: 57 Localisation: dijon |
|
Revenir en haut | |
sylveran Ecuyer Messages: 57 Localisation: dijon |
|
Revenir en haut | |
sylveran Ecuyer Messages: 57 Localisation: dijon |
|
Revenir en haut | |
parrain Chevalier Messages: 97 Localisation: Creteil |
huhu je t'aurais bien aider mais bon sa m'interesse aussi ce script
Aller aider nous! lol |
Revenir en haut | |
Ivellios Légende vivante Messages: 447 Localisation: Poitiers |
En utilisant le TagBase il y à la possibilitté suivante
NWScript :
#include "x2_inc_switches" void main() { object oPC; object oFlag; switch(GetUserDefinedItemEventNumber()) { case X2_ITEM_EVENT_ACQUIRE : { oPC = GetModuleItemAcquiredBy(); oFlag = GetModuleItemAcquired(); AssignCommand(oPC, ActionUnequipItem(GetItemInSlot(5 ,oPC))); AssignCommand(oPC, ActionEquipItem(oFlag, 5)); object oXP = CreateObject(64, "ResRef_XP", GetLocation(oPC), 0, "XP_"+GetName(oPC)); SetLocalObject(oXP, "PC", oPC); SignalEvent(oXP, EventUserDefined(1212)); } break; case X2_ITEM_EVENT_UNEQUIP : { oPC = GetPCItemLastUnequippedBy(); oFlag = GetPCItemLastUnequipped(); AssignCommand(oPC, ActionPutDownItem(oFlag)); DestroyObject(GetObjectByTag("XP_"+GetName(oPC))); } break; } } Attention je n'est pas tout donné, dans un premier temps il va falloir enregistrer ce script sous le tag du drapeau, Ensuite tu devra créer un plaçable (invisible, intrigue, etc) ou tu utilisera un système basé sur le OnUserDefined (avec l'event 1212, mais tu peux le changer) qui fera des boucles de 1 seconde pour donner 1xp au persos que je t'ai enregistrer en variable (tu peux t'inspirer de ça). Ensuite n'oublie pas les quelques détail tel que dans le OnClientLeave lacher le drapeau et detruire le plaçable invisible. En théorie sa devrait pas être loin de marcher... _________________ Scripts, systèmes, fonctions,... c'est par ici... Pyjama pour castor, une vocation, un avenir sûr |
Revenir en haut | |
sylveran Ecuyer Messages: 57 Localisation: dijon |
|
Revenir en haut | |
Dangon Acolyte Messages: 21 |
Je vous propose plus simple que de passer par un placeable invisible : directement implémenter le compteur à XP dans le script précédent...
NWScript : #include "x2_inc_switches" void GainXP() { object oPC = GetItemPossessor(OBJECT_SELF); if ( GetIsPC(oPC) ) { // On lui donne 1 point d'xp GiveXPToCreature(oPC,1); // On relance la machine dans 1 sec DelayCommand(1.0,GainXP()); } } void main() { object oPC; object oFlag; switch(GetUserDefinedItemEventNumber()) { case X2_ITEM_EVENT_ACQUIRE : { oPC = GetModuleItemAcquiredBy(); oFlag = GetModuleItemAcquired(); AssignCommand(oPC, ActionUnequipItem(GetItemInSlot(5 ,oPC))); AssignCommand(oPC, ActionEquipItem(oFlag, 5)); AssignCommand(oFlag, GainXP()); } break; case X2_ITEM_EVENT_UNEQUIP : { oPC = GetPCItemLastUnequippedBy(); oFlag = GetPCItemLastUnequipped(); AssignCommand(oPC, ActionPutDownItem(oFlag)); DestroyObject(GetObjectByTag("XP_"+GetName(oPC))); } break; } } |
Revenir en haut | |
Ivellios Légende vivante Messages: 447 Localisation: Poitiers |
EDIT : Désolé erreur.
_________________ Scripts, systèmes, fonctions,... c'est par ici... Pyjama pour castor, une vocation, un avenir sûr |
Revenir en haut | |
sylveran Ecuyer Messages: 57 Localisation: dijon |
|
Revenir en haut | |
sylveran Ecuyer Messages: 57 Localisation: dijon |
|
Revenir en haut | |
Ivellios Légende vivante Messages: 447 Localisation: Poitiers |
C'est normal ta pas rien mit dans le OnPlayerDeath je pense ^^
_________________ Scripts, systèmes, fonctions,... c'est par ici... Pyjama pour castor, une vocation, un avenir sûr |
Revenir en haut | |
sylveran Ecuyer Messages: 57 Localisation: dijon |
|
Revenir en haut | |
Ivellios Légende vivante Messages: 447 Localisation: Poitiers |
Non pas du tout, c'est un script à enregistrer sous le même nom que le tag de ton drapeau mais pour cela il faut avoir le script de base dans le OnActivatedItem (ou dumoins une version équivalente).
Après pour le OnDeath tu lui fait tombé le drapeau au sol comme quand il quitte le module. _________________ Scripts, systèmes, fonctions,... c'est par ici... Pyjama pour castor, une vocation, un avenir sûr |
Revenir en haut | |
La Bibliothèque de Neverwinter Nights Index du Forum »
La Bibliothèque Binaire du NWScript - Neverwinter Nights
Page 1 sur 1 ¤
Vous ne pouvez pas poster de nouveaux sujets dans ce forum
Vous ne pouvez pas répondre aux sujets dans ce forum
Vous ne pouvez pas éditer vos messages dans ce forum
Vous ne pouvez pas supprimer vos messages dans ce forum
Vous ne pouvez pas voter dans les sondages de ce forum