La Bibliothèque de Neverwinter Nights
Aide et informations diverses sur Neverwinter Nights ainsi que D&D3.
La date/heure actuelle est 28/12/2024 10:49:46


  Page 1 sur 1 ¤

Voir le sujet précédent ¤ Voir le sujet suivant 
Auteur Message
Carn indil
Novice
Inscrit le: 28 Déc 2002
Messages: 17
Répondre en citant
Posté le : 17/01/2003 22:35:29 Sujet du message : [Help] Script de don d'XP

EDIT de Cassin : ce post était à l'origine dans le topic "porte pas cool", mais n'ayant rien à voir avec le sujet, mieux vaut ouvrir un autre topic, c'est plus clair pour s'y retrouver après Wink



o grand coolstar! Cool voici un chti script de don d'xp (c'est pas de moi j'ai po le niveau!! Sad ) mais il manque un chti bout, a croire que le scripteur en a croquer un morceau vers 2heures deu mat en faisant sa map.....

Code :
 
//sc_givexp_pick: Give XP on Pick Lock by KidCharlemagne 9/15/02

//Script gives experience points to a PC who picks a lock.
//Place this script in the OnUnLock Event of the door, chest, etc.
//They must not have key in inventory for it to work.

//Note: Although I arrived at this idea independently, I later
//found a similar script on NWN Vault to give xp when a trap
//is disarmed.  This script was written by Velmar.  I give credit
//to a like minded individual. :)

//VARIABLES:
//
//nExp = XP to be given
//oPC = PC who unlocked object
//oItem = variable to check through oPC's inventory
//sKey = string of key required to unlock object
//oKey = key object required to unlock object
//nDC = DC to unlock object
//nAlreadyPicked = local integer on calling object to prevent PC
//                 from locking object and picking to gain xp
//                 repeatedly

void main()
{

//VARIABLE DECLARATIONS----------------------------

    int nExp = 0;
    object oPC = GetLastUnlocked();
    object oItem = GetFirstItemInInventory(oPC);
    string sKey = GetTrapKeyTag(OBJECT_SELF);
    object oKey = GetObjectByTag(sKey);
    int nDC = GetLockUnlockDC(OBJECT_SELF);
    int nKeyAssociated = TRUE;
    int nAlreadyUnlocked = FALSE;

//if object's lock has already been unlocked before, don't give xp

    nAlreadyUnlocked = GetLocalInt(OBJECT_SELF,"AlreadyUnlocked");

    if (nAlreadyUnlocked == TRUE)
    {
        return;
    }

//Regardless of whether lock was just picked or key was used,
//localint "AlreadyUnlocked" will be set to indicate unlocking.

    SetLocalInt(OBJECT_SELF,"AlreadyUnlocked",TRUE);

//if oKey is OBJECT_INVALID then no key is associated with object

    if (oKey == OBJECT_INVALID)
    {
        nKeyAssociated = FALSE;
    }

//If a key is associated with the door, check oPC's inventory for the key
//If oPC has key, return from script

    while (oItem != OBJECT_INVALID && nKeyAssociated == TRUE)
    {
        if (oItem == oKey)
        {
            return;
        }
        oItem = GetNextItemInInventory(oPC);
    }
//The amount of experience given will depend on DC of the lock.
//This section is adjustable to suit level of XP required.

    if (nDC <= 18)
    {
        nExp = 10;
    }
    if (18 < nDC <= 30)
    {
        nExp = 20;
    }
    if (nDC > 30)
    {
        nExp = 30;
    }

    GiveXPToCreature(oPC,nExp);
}


question qui je suis sur te prendra peu de temps a résoudre (eh oui vus le genie du bonhomme!!! Very Happy )
- comment faire pour que l'xp soit attribué une seule fois a la meme personne?pour eviter que des petits malins ne se fasse de lxp facile en squattant un coffre ou autre....... a bientot et surtout MERCI A TOUS CEUX QUI REPONDENT aux questions des pti djeuns qui débute en scripting. (? scripting je sais po si ça existe mais bon ça sonne bien!!!) Very Happy
_________________
"l'Homme déterminé ne craint pas la pluie"
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Ignorer l'utilisateur
 
Wololo
Légende vivante
Inscrit le: 13 Déc 2002
Messages: 385
Répondre en citant
Posté le : 17/01/2003 22:53:40 Sujet du message :

bonjour, je ne suis pas Coolstar mais son secrétaire, et je peux te dire que normalement c'est déjà géré dans le script ....
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Ignorer l'utilisateur
 
Carn indil
Novice
Inscrit le: 28 Déc 2002
Messages: 17
Répondre en citant
Posté le : 17/01/2003 23:28:02 Sujet du message : arf lol arg

ben oui effectivement ça le fait, j'arrive pas a voir dans le code ou c'est..... Surprised
_________________
"l'Homme déterminé ne craint pas la pluie"
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Ignorer l'utilisateur
 
Wololo
Légende vivante
Inscrit le: 13 Déc 2002
Messages: 385
Répondre en citant
Posté le : 17/01/2003 23:39:24 Sujet du message :

Code :

    int nAlreadyUnlocked = FALSE;

//if object's lock has already been unlocked before, don't give xp

    nAlreadyUnlocked = GetLocalInt(OBJECT_SELF,"AlreadyUnlocked");

    if (nAlreadyUnlocked == TRUE)
    {
        return;
    }

//Regardless of whether lock was just picked or key was used,
//localint "AlreadyUnlocked" will be set to indicate unlocking.

    SetLocalInt(OBJECT_SELF,"AlreadyUnlocked",TRUE);


voilà, mais bon faut attendre la signature de Coolstar ...
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Ignorer l'utilisateur
 
Carn indil
Novice
Inscrit le: 28 Déc 2002
Messages: 17
Répondre en citant
Posté le : 17/01/2003 23:42:52 Sujet du message : arg

j'y crois pas, c'est tellement evident que je me suis dis qui yavai un truc..... Sad chuis une quiche!!!!
_________________
"l'Homme déterminé ne craint pas la pluie"
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Ignorer l'utilisateur
 
Montrer les messages depuis :
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


Sauter vers:
FAQ | Rechercher | Liste des Membres | Groupes d'utilisateurs | S'enregistrer | Profil | Se connecter pour vérifier ses messages privés | Connexion
Powered by phpBB 2.* [m] © 2001, 2002 phpBB Group
Theme rewritten in beautiful XHTML code by Baldurien.
Thème "La Bibliothèque de Neverwinter" crée par Kruger
Traduction par : phpBB-fr.com
Page generated in 26.81ms