15-12-2015, 11:56 AM
L'implé PHP peut être objet ou non, là, j'ai justement donné un vrac qui ressemble plus à du procédural qu'à de l'objet (d'où mon rajout, derrière, disant "en pratique je ferai ça en objet").
La surcouche arrive une fois que la demande se fait sentir: à l'usage, tu verras peut-être que valider le formulaire, attendre que le serveur t'envoie chier et recommencer n'est pas ergonomique (si cela se trouve, personne ne te remonteras ce problème, auquel cas tu t'épargnes le code de surcouche). Là, tu mettras une solution en place (pas forcément celle proposée d'ailleurs).
Pour moi, le stockage se ferait en BDD, avec une indication de temps (la date à partir de laquelle le sort peut de nouveau être lancé), soit associée au joueur (si le joueur ne peut pas lancer 2 sorts en même temps, l'indication est donc la date de lancement du prochain sort) soit associée au joueur+sort (si le joueur peut lancer des sorts en chaîne, mais ne peut pas lancer le même plusieurs fois de suite).
D'autres gameplays peuvent aussi faire intervenir des "points de magie": le joueur en gagne X par seconde, la BDD indique combien il en a à une date T (X(T)), et le serveur fait le calcul pour savoir combien le joueur en a à tout instant (donc, à la date t, le joueur a x(t) = X(T) + (t-T)*X). En ce cas, c'est une formule, souvent PHP mais perso je la collerai surement dans une procédure MySQL, qui permet de savoir quand le sort truc sera lançable.
La surcouche arrive une fois que la demande se fait sentir: à l'usage, tu verras peut-être que valider le formulaire, attendre que le serveur t'envoie chier et recommencer n'est pas ergonomique (si cela se trouve, personne ne te remonteras ce problème, auquel cas tu t'épargnes le code de surcouche). Là, tu mettras une solution en place (pas forcément celle proposée d'ailleurs).
Pour moi, le stockage se ferait en BDD, avec une indication de temps (la date à partir de laquelle le sort peut de nouveau être lancé), soit associée au joueur (si le joueur ne peut pas lancer 2 sorts en même temps, l'indication est donc la date de lancement du prochain sort) soit associée au joueur+sort (si le joueur peut lancer des sorts en chaîne, mais ne peut pas lancer le même plusieurs fois de suite).
D'autres gameplays peuvent aussi faire intervenir des "points de magie": le joueur en gagne X par seconde, la BDD indique combien il en a à une date T (X(T)), et le serveur fait le calcul pour savoir combien le joueur en a à tout instant (donc, à la date t, le joueur a x(t) = X(T) + (t-T)*X). En ce cas, c'est une formule, souvent PHP mais perso je la collerai surement dans une procédure MySQL, qui permet de savoir quand le sort truc sera lançable.