La Bibliothèque de Neverwinter Nights
Aide et informations diverses sur Neverwinter Nights ainsi que D&D3.
La date/heure actuelle est 23/11/2024 19:31:08


  Page 1 sur 1 ¤

Voir le sujet précédent ¤ Voir le sujet suivant 
Auteur Message
L'Erudit
Seigneur
Inscrit le: 26 Oct 2005
Messages: 167
Répondre en citant
Posté le : 17/01/2006 14:39:28 Sujet du message : Des exercices

Vous avez épluché les tutoriaux de NwnScripts, vous connaissez tout un tas de choses et vous souhaitez les appliquer tout en aidant la communauté?

Alors, entraînez vous sur les requêtes des débutants, fournissez leur l'aide dont ils ont besoin, et formez les en ajoutant tout plein de commentaires.
Occasionnellement, progressez en Anglais Laughing !

Un premier site: içi

J'ai déjà répondu à plusieurs requêtes pour ma part, et voilà l'une d'entre elles pour vous donner un exemple:

NWScript :
/* - This script must be added to the NPC's OnUserDefined event to work.
In a better way, a similary script may be done,
to allow you to test any entering player. However, this will not require a NPC.
  - All the values you see (despite "1002,1" in red),
can be changed as you  want.
I will give some explanation, to permit you to custom a little.
  - There is another option that you can inclued.
This will forbid the PC to profit a second time of this system.
You just have to delete the "//", before:
"|| GetCampaignInt("YourBbdSt ringName", "First Entrance", oPC) != FALSE)"
"SetCampaignInt("Y ourBbdStringName", "First Entrance", TRUE, oPC);"
and delete the ")" behind the number "5" below.
  - You must open the NPC's OnSpawn script, and delete the "//" before:
"SetSpawnInCondition(NW _FLAG_PERCIEVE_EVENT);" */


#include "NW_I0_GENERIC"

void main()
{
// Var oPC = Last object perceived
// If it isn't a PC,
// or that is level is >= 5
// do nothing
object oPC = GetLastPerceived();
        if (!GetIsPC(oPC)
        || GetCharacterLevel(oPC) >= 5)
        //|| GetCampaignInt("YourBbdSt ringName", "First Entrance", oPC) != FALSE)
        return;

// Var nEvent to define what the executions will be,
// after having called an event like Perception$
// Var oNPC = NPC itself
// Var nGP = Amount of Gp to give
// Var nXP = Amount of Xp to give
// Var sItem = Item to give
// Var nFCT = Type of Creature is: Player
// Var nFCV = Must be a PC
// Var nSCT = Type of Creature is: Alive
// Var nSVT = Must be alive
int nEvent = GetUserDefinedEventNumber();
object oNPC = OBJECT_SELF;
int nGP = 5;
int nXP = 5;
string sItem = "wound";
int nFCT = CREATURE_TYPE_PLAYER_CHAR;
int nFCV = PLAYER_CHAR_IS_PC;
int nSCT = CREATURE_TYPE_IS_ALIVE;
int nSVT = TRUE;

        // If nEvent 1002 (Perception) is called
        if (nEvent == 1002)
      {
        // for n=1
        // while oPC is valid
        // n increases of 1, at each loop
        int n;
        for(n=1; oPC != OBJECT_INVALID; n++)
      {
        // For one loop,
        // oPC becomes the nearest Creature with parameters described upon
        // Give him nGp
        // Give him nXP
        // Give him 3 sItem
        oPC = GetNearestCreature(nFCT, nFCV, oNPC, n, nSCT, nSVT);
        GiveGoldToCreature(oPC, nGP);
        GiveXPToCreature(oPC, nXP);
        CreateItemOnObject(sItem, oPC, 3);
        //SetCampaignInt("YourBbd StringName", "First Entrance", TRUE, oPC);
      }
      }
}
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.
 
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 47.732ms