Merci beaucoup pour ton aide Jeckel
En ce qui concerne les unités, ta solution me semble très bien et même réaliste, quand on commande un produit, on commande souvent une certaine quantité et ce sont les prix du marché à ce moment la qui décideront du prix total !
Donc vendu pour les unités
Je pense que je vais faire une table commande dans ma BDD qui contiendra :
L'heure de création de la commande
L'heure de fin de la commande (calculée en fonction des ressources et technologie lors de la création)
La quantité commandée
Le cout total (pour facilité le remboursement)
Temps pour une unité (je préfère quand même fournir chaque unité quand elle est prete plutôt que tout à la fin)
Enfin pour les bâtiments,
Je préfère le cas 2.
J'ai fait un petit pseudo code pour les bâtiments, qu'en penses tu ?
(J'espère qu'il est compréhensible)
Petit explication : Dans la boucle, on considère que l'heure actuelle est l'heure lors de la dernière visite et petit à petit dans la boucle on va rapprocher cette valeur de l'heure actuelle.
Cela te semble t il bon ?
Encore merci
En ce qui concerne les unités, ta solution me semble très bien et même réaliste, quand on commande un produit, on commande souvent une certaine quantité et ce sont les prix du marché à ce moment la qui décideront du prix total !
Donc vendu pour les unités
Je pense que je vais faire une table commande dans ma BDD qui contiendra :
L'heure de création de la commande
L'heure de fin de la commande (calculée en fonction des ressources et technologie lors de la création)
La quantité commandée
Le cout total (pour facilité le remboursement)
Temps pour une unité (je préfère quand même fournir chaque unité quand elle est prete plutôt que tout à la fin)
Enfin pour les bâtiments,
Je préfère le cas 2.
J'ai fait un petit pseudo code pour les bâtiments, qu'en penses tu ?
(J'espère qu'il est compréhensible)
Petit explication : Dans la boucle, on considère que l'heure actuelle est l'heure lors de la dernière visite et petit à petit dans la boucle on va rapprocher cette valeur de l'heure actuelle.
$last_visite = Temps lors de la dernière visite
While 1
Si il y a un batiment en cours de construction ?
$temps_restant = Temps de construction restant lors de $last_visite
Si le temps écoulé est >= $temps_restant
On met à jour les ressources produite entre $last_visite et $last_visite + $temps_restant
On met à jour le niveau du batiments et les coef
$last_visite = $last_visite + $temps_restant
Sinon
On met à jour les ressources
$last_visite = NOW()
On sort de la boucle (break)
Sinon
Si la liste de construction est vide
On met à jour les ressources
$last_visite = NOW()
On sort de la boucle (break)
Sinon
Si on a assez de ressource pour le premier batiment de la liste
On enlève les ressources necessaires
On indique que le batiment est en construction
(Le prochain tour de boucle verifiera si le batiment est fini)
Sinon
On enlève le premier batiment de la liste, (le second sera examiné au prochain tour de boucle)
WhileEnd
PS : Bon après il faut mettre une limite à la taille de la liste de construction des bâtiments pour éviter de passer trop de temps dans la boucle !Cela te semble t il bon ?
Encore merci