La Bibliothèque de Neverwinter Nights
Aide et informations diverses sur Neverwinter Nights ainsi que D&D3.
La date/heure actuelle est 13/06/2024 14:52:56


  Page 1 sur 1 ¤

Voir le sujet précédent ¤ Voir le sujet suivant 
Auteur Message
Baldurien
L'homme qui chutait sur le macadam
Inscrit le: 12 Sep 2002
Messages: 14065
Localisation: Quadran Alpha
Répondre en citant
Posté le : 22/03/2003 11:22:04 Sujet du message : Script de base: partie entière et décimale d'un flottant ?

Bon, ça va vous paraître con, mais j'en ai besoin:

j'utilise l'événement OnPlayerRested qui démarre quand on clique sur le bouton repos, et finit quand on annule le repos ou quand le repos se finit (logique!)

Quand le repos commence, je stocke le nombre de points de vie du personnage dans une variable "i".

Quand le repos se finit ou est interrompu, je vérifie que cette variable est définie, et si oui , je fais le calcul suivant: (avec j points de vie du perso après repos)

Heure écoulée = 8*((j - i)/i);

Jusque là rien de sorcier: sauf que Neverwinter me broute le chou pour des questions de flottant (je peux mettre 8.0 aussi) et il me semble bien qu'il calcule mal vu que par exemple:

Heure écoulée = 8*((100-30)/100) = 2.4

Ce qui fonctionne mal dans le jeu (me semble, me rappelle plus, de plus, ce calcul je sais le faire, il faut juste convertir les variables en flottants avant vu que nwn n'a pas l'air de faire les conversions implicites.

Le truc, c'est que 2.4 indique qu'il y a aussi des minutes qui se sont écoulées et donc je dois faire le calcul suivant:

Minute écoulée = PartieDecimaleDe(2.4) * 60;
Minute écoulée = PartieEntièreDeMinute écoulée );

avec PartieDecimaleDe(2.4) = 0.4

Aussi, je dois retirer cette même partie décimale car par exemple 2.6 la conversion en entier de 2.6 me donnerait 3, alors que seulement deux heures et 0.6*60 minutes se sont écoulées...

Voilà.

Si quelqu'un se sent capable de me répondre... Smile

Edit > j'ai oublié la question : comment simuler les fonctions PartiesEntieres et PartieDecimales?

Edit Bis > dans mon cas, il suffisait simplement de faire

Minutes Ecoulées := 8.0 * 60.0 * ((j - i)/i);

Et d'utiliser la fonction SetTime qui corrige les excès de manière logique.

Néanmoins, ça m'aiderait d'avoir des fonctions floor (arrondi à l'entier inférieur), ceil, round ...

=> PartieEntièreDe( x ) <=> floor( x );
=> PartieDécimaleDe( x ) <=> x - floor( x );

En gros, me manque que cette fonction d'arrondissement...
_________________
#nwnights-fr @ irc.darkmyst.org TitanQuest-FR
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Visiter le site web du posteur Ignorer l'utilisateur
 
Jedaï
Chevalier
Inscrit le: 14 Nov 2002
Messages: 89
Localisation: Le Havre, ville pourrie
Répondre en citant
Posté le : 22/03/2003 13:51:13 Sujet du message :

Ah j'avais pas vu ça. Si c'est pour des valeurs positives, alors tout va bien, FloatToInt() et ma fonction iront très bien. Very Happy
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Ignorer l'utilisateur
 
Baldurien
L'homme qui chutait sur le macadam
Inscrit le: 12 Sep 2002
Messages: 14065
Localisation: Quadran Alpha
Répondre en citant
Posté le : 22/03/2003 22:32:26 Sujet du message :

bon cf

[http]

et merci Smile
_________________
#nwnights-fr @ irc.darkmyst.org TitanQuest-FR
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Visiter le site web du posteur 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 18.278ms