Salut,
Avant d'aller plus loin dans le développement, je veux essayer de mettre en place une classe "action" qui me permettrait de gérer de façon similaire toutes les actions du jeu. Les attaques, les déplacements...
Je fais un poste pour vous présentez ce que je compte grossiérement faire , et savoir comment vous vous gérez toutes les actions possibles.
Pour l'instant j'en ai déduis que toutes les actions avaient en commun de necessiter un nombre de vérification avant d'être executé.
Type de vérification :
- Point d'action : vérifier que le personnage a assez de points d'action pour executer l'action. (toutes les actions)
- Endurance : Vérifie que le personnage a assez d'endurance. ( action physique)
- Portée : portée de l'arme et vérification si la cible est bien à portée ( pour une arme)
- Position : vérifie que la position est compatible avec l'action ( par exemple pour entrer dans un bâtiment il faut bien être devant)
- Alignement : vérifie que l'on peut faire une action sur une cible en fonction de son alignement (soin sur allié uniquement, attaquer un ennemi)
- Terrritoire : certains territoire peuvent permettre des actions spécifique
- Inventaire : vérifie que l'objet cible est bien dans l'inventaire ( poser un objet, donner un objet)
- propriétaire : vérifie que le propriétaire est bien le propriétaire de l'objet cible
- Ressource : vérifie que le personnage a suffisament de ressource pour effectuer une action (achat / vente)
Il y en a quelques autres mais c'est les principale auxquelles je pense.
A partir de là je compte créer une table ou un tableau statique qui comportera pour toutes les actions possibles par exemple pour l'action "poser un objet" on a pas besoin de vérifier la position ou l'alignement mais uniquement que la condition Inventaire est remplie.
Par exemple :
id | action | vérifications | cout en point d'action
Il y aura probablement deux ou trois classes.
Une pour les actions sans cible autre que le personnage. Par exemple "dormir"
Une pour les actions avec une cible genre attaquer, utiliser un objet, entrer dans un bâtiment.
L'objectif c'est de créer un système assez flexible pour pouvoir ajouter facilement des actions plutôt que de créer un script complexe associé à chaque actions.
Dans mon cas j'espère avoir des script action simple qui ressembleront à ça :
Avant d'aller plus loin dans le développement, je veux essayer de mettre en place une classe "action" qui me permettrait de gérer de façon similaire toutes les actions du jeu. Les attaques, les déplacements...
Je fais un poste pour vous présentez ce que je compte grossiérement faire , et savoir comment vous vous gérez toutes les actions possibles.
Pour l'instant j'en ai déduis que toutes les actions avaient en commun de necessiter un nombre de vérification avant d'être executé.
Type de vérification :
- Point d'action : vérifier que le personnage a assez de points d'action pour executer l'action. (toutes les actions)
- Endurance : Vérifie que le personnage a assez d'endurance. ( action physique)
- Portée : portée de l'arme et vérification si la cible est bien à portée ( pour une arme)
- Position : vérifie que la position est compatible avec l'action ( par exemple pour entrer dans un bâtiment il faut bien être devant)
- Alignement : vérifie que l'on peut faire une action sur une cible en fonction de son alignement (soin sur allié uniquement, attaquer un ennemi)
- Terrritoire : certains territoire peuvent permettre des actions spécifique
- Inventaire : vérifie que l'objet cible est bien dans l'inventaire ( poser un objet, donner un objet)
- propriétaire : vérifie que le propriétaire est bien le propriétaire de l'objet cible
- Ressource : vérifie que le personnage a suffisament de ressource pour effectuer une action (achat / vente)
Il y en a quelques autres mais c'est les principale auxquelles je pense.
A partir de là je compte créer une table ou un tableau statique qui comportera pour toutes les actions possibles par exemple pour l'action "poser un objet" on a pas besoin de vérifier la position ou l'alignement mais uniquement que la condition Inventaire est remplie.
Par exemple :
id | action | vérifications | cout en point d'action
Il y aura probablement deux ou trois classes.
Une pour les actions sans cible autre que le personnage. Par exemple "dormir"
Une pour les actions avec une cible genre attaquer, utiliser un objet, entrer dans un bâtiment.
L'objectif c'est de créer un système assez flexible pour pouvoir ajouter facilement des actions plutôt que de créer un script complexe associé à chaque actions.
Dans mon cas j'espère avoir des script action simple qui ressembleront à ça :
Code PHP :
<?php
/**
* @file dormir.php
*/
$action = new action('dormir');
If ( $action->check == OK){
$action->do();
}