Login: Pass:
sebcrew



Inscrit le: 25 Nov 2006
Messages: 16
Message Posté le: 14/06/2007 13:14 Sujet du message: Idée de script
Bonjour à tous,

Voila, j'ai une idée de script, mais je n'ai aucune idée sur la maniere de le réaliser.

En gros, un PNj dans une auberge propose 3 types d'hebergements:

>1 nuit
>2 nuits
>1 semeine

Sachant que suivant le choix du joueur, Le PNj aubergiste donne une clé unique qui ouvre une des 4 chambres disponible contre de l'or.
La clé de la chambre doit disparaitre a la fin de la période choisit par le Pj.
Je pense qu'il faut donc 3 clés différentes par chambre et que si la chambre 1 est déja prise, l'aubergiste donne une des clés de la 2, si 1 et 2 sont prisent, il donne la clé de la 3, etc... Si toutes les chambres sont prisent, il ne donne pas de clé, mais annonce au Pj quand une des quatres chambre sera disponible.

Voila ce que j'aimerai mettre en place. Si quelqu'un à une idée...
Répondre en citant
Voir le profil de l'utilisateur Envoyer un message privé Envoyer l'e-mail
Antilia
Administrateur


Inscrit le: 21 Juin 2005
Messages: 492
Message Posté le: 14/06/2007 21:29 Sujet du message:

Bien déjà il va falloir utiliser NWNX, et donc MySQL afin d'obtenir l'heure réel et non pas l'heure dans le jeu, afin de pouvoir compter les jours même si le serveur plante. Donc il serait bon de savoir si tu t'y connais un peu avec ça, et si ton module a un lien SQL.

Après il faudrait décider sur quel évènement de quel objet attacher ton script, le mettre dans le heartbeat est je crois une mauvaise idée, peut être sur les portes de l'auberge, dans le OnUsed?

Répondre en citant
Voir le profil de l'utilisateur Envoyer un message privé Visiter le site web du posteur
sebcrew



Inscrit le: 25 Nov 2006
Messages: 16
Message Posté le: 15/06/2007 15:57 Sujet du message:
Après m'être documenté, je vois de quoi tu parles.
En revanche, je pense qu'il va falloir que je regarde de plus près la manière d'élaborer un script de ce genre. Cela reste pour moi assez évasif. Smile
Répondre en citant
Voir le profil de l'utilisateur Envoyer un message privé Envoyer l'e-mail
Antilia
Administrateur


Inscrit le: 21 Juin 2005
Messages: 492
Message Posté le: 16/06/2007 10:54 Sujet du message:

Tiens voici une fonction qui pourrait t'aider :


Citation
//Intérroge le serveur SQL et retourne son heure actuelle (l'heure Windows).
//La valeur retournée correspond au nombre de secondes depuis le 1 janvier 1970.
//Retourne -1 en cas d'erreur.
int GetCurrentTimeFromSQL()
{
SQLExecDirect("SELECT UNIX_TIMESTAMP(NOW())"); //SQL Query.

if (SQLFetch() == SQL_SUCCESS) {
return StringToInt(SQLGetData(1));
} else {
WriteTimestampedLogEntry("Script function GetCurrentTimeFromSQL(): Unable to get query's answer (SQL_ERROR).");
}

return -1;
}

Attention elle est dépendant de NWNX, donc il faudra probablement un #include "nwnx_include" ou un truc ainsi en début du fichier script. Wink

Répondre en citant
Voir le profil de l'utilisateur Envoyer un message privé Visiter le site web du posteur
sebcrew



Inscrit le: 25 Nov 2006
Messages: 16
Message Posté le: 16/06/2007 12:05 Sujet du message:
Merci,
Sachant qu'il y a 4 chambres et 3 type de clé par chambre ( Clé 1 jour, Clé 2 jours et Clé 1 semeine).

Mieux vaut faire un script pour chaque clé ( donc 12 au total ) ou un script qui gére les 12 clés?
Répondre en citant
Voir le profil de l'utilisateur Envoyer un message privé Envoyer l'e-mail
Antilia
Administrateur


Inscrit le: 21 Juin 2005
Messages: 492
Message Posté le: 16/06/2007 12:22 Sujet du message:

Je dirai 1 script perso. Wink Et d'ailleurs qu'un seul objet clef dans la palette aussi.

Répondre en citant
Voir le profil de l'utilisateur Envoyer un message privé Visiter le site web du posteur
Montrer les messages depuis:   

Page 1 sur 1
Sauter vers:  

 

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

Traduction par : phpBB-fr.com
Powered by phpBB © 2001, 2007 phpBB Group