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 28/12/2024 11:07:04
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 |
Ballbreaker1 Chevalier Messages: 89 |
bonjour a tous ,voici un script don je ne vois pas ou est le problème et pourtant tout me semble etre bien fais ... merci de bien vuloir m'aider.
NWScript : // Pierres de rappel int bHasGoodStone = GetItemPossessedBy(oActivator, "pierre_sacree2") != OBJECT_INVALID; int bHasEvilStone = GetItemPossessedBy(oActivator, "pierre_mal") != OBJECT_INVALID; int bHasNeutralStone = GetItemPossessedBy(oActivator, "pierre_univ") != OBJECT_INVALID; int bhasMenotte = GetItemPossessedBy(oActivator, "menoNODROP") != OBJECT_INVALID; int bUseGoodStone = sItemTag == "pierre_sacree2"; int bUseEvilStone = sItemTag == "pierre_mal"; int bUseNeutralStone = sItemTag == "pierre_univ"; if (bUseGoodStone || bUseEvilStone || bUseNeutralStone) // Une pierre de rappel a ete utilisee { string tArea = GetTag(GetArea(oActivator)); int iArea = StringToInt(GetSubString(tArea, 5, GetStringLength(tArea)-5)); if (bHasGoodStone + bHasEvilStone + bHasNeutralStone + bhasMenotte == 1) // Il n'en possede bien qu'une if ((iArea>=140 && iArea<=179) || (iArea>=190 && iArea<=199)) {SendMessageToPC(oActivator,"Les puissantes protections magiques de cet endroit empechent votre pierre de fonctionner"); return;} else { location LastRecallUsed; // Set the location variable LastRecallUsed = GetLocation(oActivator); // Get the location, fill up the variable SetLocalLocation(oActivator,"LastRecallUsed",LastRecallUsed); // Set where the portal jump the player to SetLocalInt(oActivator,"HasRecalled",1); // To make the recall poretal tells the player if he want to go back ActionCastFakeSpellAtObject ( SPELL_DISMISSAL , oActivator); int bFighting = 0; int nHD = GetHitDice(oActivator); if (GetIsInCombat(oActivator)) bFighting = 1; //{SendMessageToPC(oActivator, "Vous n'arrivez pas a vous concentrer suffisamment pendant le combat pour utiliser cette pierre de rappel"); return;} int nXP = GetXP(oActivator); int nPenalty = 0; int nGoldPenalty = nHD * nHD * nHD; if (bFighting) nPenalty = nHD*nHD; if (bFighting) nGoldPenalty *= 4; // * You can not lose a level with this respawning int nMin = ((nHD * (nHD - 1)) / 2) * 1000; if (GetGold(oActivator)<nGoldPenalty) nGoldPenalty = GetGold(oActivator); int nNewXP = nXP - nPenalty; if (nNewXP < nMin) nNewXP = nMin; SetXP(oActivator, nNewXP); TakeGoldFromCreature(nGoldPenalty, oActivator, TRUE); if (bUseGoodStone) AssignCommand(oActivator,JumpToLocation(GetLocation(GetObjectByTag("pierre_sacree2")))); // Get the player to the temple if (bUseEvilStone) AssignCommand(oActivator,JumpToLocation(GetLocation(GetObjectByTag("pierre_mal")))); // Get the player to the temple if (bUseNeutralStone) AssignCommand(oActivator,JumpToLocation(GetLocation(GetObjectByTag("temple_venus")))); // Get the player to the temple } return; } |
Revenir en haut | |
Ballbreaker1 Chevalier Messages: 89 |
Ah j'oubliais j'ai 2 pierre de rapel sur 3 qui ne veux pas s'activer.
merci de votre aide |
Revenir en haut | |
Ivellios Légende vivante Messages: 447 Localisation: Poitiers |
Ton oActivator tu l'as défini comment, et ton script tu l'as placé où ?
_________________ Scripts, systèmes, fonctions,... c'est par ici... Pyjama pour castor, une vocation, un avenir sûr |
Revenir en haut | |
Ballbreaker1 Chevalier Messages: 89 |
le script je l'ai placer dans le OnActivateItem ,mais je me demandais si c'étais pas la du pourkoi de mon problème:
NWScript : SetLocalLocation(oActivator,"LastRecallUsed",LastRecallUsed); // Set where the portal jump the player to SetLocalInt(oActivator,"HasRecalled",1); // To make the recall poretal tells the player if he want to go back ActionCastFakeSpellAtObject ( SPELL_DISMISSAL , oActivator); int bFighting = 0; int nHD = GetHitDice(oActivator); |
Revenir en haut | |
Ballbreaker1 Chevalier Messages: 89 |
J'arrive toujours pas a faire fonctionner les 2 autres pierre de rappel, j'ai bien regarder les tag, waypoint , et le script se compile pourtant . Si quelqu'un pourrait bien m'aider a comprendre pourquoi sa fonctionne pas j'en serais ravis merci.
|
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