22-07-2007, 12:02 AM
rwk a écrit :Il y a la partie classe/metier ou j'ai un soucis.
Par exemple, la classe guerrier donne => 1 attaque d'opportunité par tour
La classe voleur donne le droit à 2 actions de vols
...
Ça dépend un peu du fonctionnement de ton jeu, mais personnellement je me contenterais de créer une table actions (contenant l'id et le nom de l'action) avec une clé étrangère vers la classe pour laquelle celle-ci est disponible.
Au moment de lister les actions possibles, tu fais une requête sur la table des actions pour voir lesquelles sont possibles pour ta classe.
Quand une action est exécutée, tu traite ça en php. Autrement dit tu fais un truc du genre :
Code PHP :
<?php
function executeAction($action, $params){
switch($action->getId()){
case "1": // Vol
voler($params)
case "2": // Attaque
attaquer($params)
[...]
}
}