La Bibliothèque de Neverwinter Nights
Aide et informations diverses sur Neverwinter Nights ainsi que D&D3.
La date/heure actuelle est 22/09/2024 21:38:54


  Page 1 sur 1 ¤

Voir le sujet précédent ¤ Voir le sujet suivant 
Auteur Message
Mars
Seigneur
Inscrit le: 31 Mar 2004
Messages: 199
Répondre en citant
Posté le : 31/03/2004 15:49:51 Sujet du message : Aide pour script repos & drogue

Salut, salut!!
Voila j'ai besoin d'un bon scripteur pour un probleme avec le repos.
j'utilise dans mon module un script permettant de se reposer une seule fois par jour seulement le soir et uniquement si 'lon possede a boire et a manger (merci a kiki le magnifique pour se script).
Mais je voudrais rajouter deux option suplémentaire....
a l'aide d'un objet qui ferais office de pipe(un petit effet de fumer se un super +)je voudait proposer au pj de fumer soit des feuilles de coca séché et dans se cas un effet de rapidité et de force sur le joueur(genre force de taureau) mais en contre parti impossible de se reposer avant 48h.
Soit fumer de la bonne vieille be...... et dans ce cas repos immédiat sans avoir tte les contrainte de repos cité au dessus.
et pour ces deux substance un effet de dépendance.
j'espere que quelqu'un sera me pondre un petit script ou au moin m'éguillé un maximum



Longbow a écrit :
Pas de problème...
Tu peux envoyer des scripts délirants et j'essayerai de les concrétiser !!
se script est assez délirant non?
Very Happy

bon je vous remerci a l'avance particulierement a kiki ki m'a deja beaucoup aider
a++

PS:n'hesité a demander si cela manque de détail je n'ai pas l'habitude des forums et je m'exprime pas toujours tres clairement

[Edit de Lendraste : Désolé d'avoir créé un nouveau sujet, mais tu n'avais aucune raison de remonter le sujet sur lequel tu avais répondu originellement (aucun lien -> nécromancie de sujet -> règles du forum pas respectées).]
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Ignorer l'utilisateur
 
kiky.le.magnifique
Homme très gay
Inscrit le: 19 Sep 2003
Messages: 907
Localisation: Camping de la nation martienne...
Répondre en citant
Posté le : 31/03/2004 16:21:48 Sujet du message :

Je pense qu'on pourra mieux t'aider si on donne le script de base, le voici :

NWScript :
void main()
{

object oPC = GetLastPCRested();
object viande = GetItemPossessedBy(oPC,"viande");
object eau = GetItemPossessedBy(oPC,"eau");
int KelHeurKilai = GetTimeHour();

    if ( (GetLastRestEventType() == REST_EVENTTYPE_REST_STARTED)
    && ((KelHeurKilai >= 21 && KelHeurKilai <= 24)
          || (KelHeurKilai >= 0 && KelHeurKilai <= 6)) )
//ici vous placez les heures qui vous conviennent
    {



        int nIntervalleSansRepos = 24;
        int nLastRest = GetLocalInt(oPC, "LastRest");
        int nLastDay = GetLocalInt(oPC, "LastDay");
        int nHour = GetTimeHour();
        int nDay = GetCalendarDay();

  if((GetIsObjectValid(viande) == FALSE) || (GetIsObjectValid(eau) == FALSE))
  {
  AssignCommand(oPC,ClearAllActions());
  AssignCommand(oPC,SpeakString (""));
  }

        // Est ce la toute premiere fois qu'on se repose?
        if (((nLastRest == 0) && (nLastDay == 0)) ||
        (GetLocalInt(GetModule(),"DMRestOK") == 1) ||
        (GetLocalInt(oPC,"DMRestOK") == 1))
        {
            SetLocalInt(oPC, "LastRest", nHour);
            SetLocalInt(oPC, "LastDay", nDay);
            SetLocalInt(oPC, "DMRestOK", 0);
            if(GetIsObjectValid(viande)&&GetIsObjectValid(eau))
            {
            DestroyObject(viande,1.0f); //destruction viande
            DestroyObject (eau,1.0f); //destruction eau
            }
            else
            {
            AssignCommand(oPC,ClearAllActions());
            AssignCommand(oPC,SpeakString ("vous devez boire et manger pour vous reposer."));
            }
        }

       
        else if (nDay == nLastDay)
            {
            if ((nHour - nLastRest) < nIntervalleSansRepos)
                {
                AssignCommand(oPC, ClearAllActions());
                SendMessageToPC(oPC, "Tu ne peux pas encore te reposer.");
                }
            }

        // Est ce le jour suivant?
        else if (((nDay - nLastDay) == 1) || ((nLastDay - nDay) == 27))
            {
            if ((nLastRest - nHour) > 24 - nIntervalleSansRepos)
                {
                AssignCommand(oPC, ClearAllActions());
                SendMessageToPC(oPC, "Tu ne peux pas encore te reposer.");
                }
            }

        // Sinon...
        else
        {
            SetLocalInt(oPC, "LastRest", nHour);
            SetLocalInt(oPC, "LastDay", nDay);
            SetLocalInt(oPC, "DMRestOK", 0);

            if(GetIsObjectValid(viande)&&GetIsObjectValid(eau))
            {
            DestroyObject(viande,1.0f); //destruction viande
            DestroyObject (eau,1.0f); //destruction eau
            }
            else
            {
            AssignCommand(oPC,ClearAllActions());
            AssignCommand(oPC,SpeakString ("vous devez boire et manger pour vous reposer."));
            }
        }
    }
        else if ( (GetLastRestEventType() == REST_EVENTTYPE_REST_STARTED)
    && (KelHeurKilai >= 6 && KelHeurKilai <= 21) )
        {
        AssignCommand(oPC, ClearAllActions());
        AssignCommand(oPC,SpeakString ("Je ne peux me reposer que la nuit..."));
        }
}
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.

Il n'est surement pas parfait, puisqu'en partie de moi Embarassed ...

Le probleme selon lequel si on tente de se reposer sans avoir à manger ou à boire,
on est obliger de ré-attendre 24h devrait être résolu maintenant, à toi de tester...

Bon courage à ceux qui prendront la suite! Very Happy
_________________
http://perso.wanadoo.fr/kikitor | Deviant Art | www.VistaEntraide.com | CCLLSELFV! | D-lire_K | Viendez rêver au Pays des fées... | Ne taquinez pas l'admin!
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Visiter le site web du posteur Ignorer l'utilisateur
 
Mars
Seigneur
Inscrit le: 31 Mar 2004
Messages: 199
Répondre en citant
Posté le : 31/03/2004 23:49:26 Sujet du message :

oui ca marche merci Embarassed
j'attend une ame charitable pour la suite merci de vous prendre la tete pour moi Razz
je me met un peu au scripts mais ca c'est vraiment trop dur pour moi. Crying or Very sad
 
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 60.042ms