11548 sujets

JavaScript, DOM et API Web HTML5

Salut Smiley smile ,

Je veux coder une appli javascript qui permet d'afficher, action par action, une main d'un jeu de cartes. comment, à partir de mes fonctions ( donner cartes, retourner cartes, etc... ), stocker et exécuter des scenario. Je veux un mode lecture ( les actions s'enchainent à interval régulier ), et un mode pas à pas, avec deux fleches ( avant et retour ).

Je suis pas sûr d'être clair.
Ta question est non seulement peu précise, mais surtout le champ est très large.
Tu veux faire un jeu de poker en ligne ? Y'a du boulot, et pas qu'en js.
Qu'entends tu par scénario ?
Essaie de préciser tes interrogations et de commencer à présenter quelque chose, ça sera plus simple de t'aider.
C'est vrai, à la relecture, je ne pose même pas de question.
Je ne veux pas coder un client de poker, mais juste un reviewer de mains.
Je me demandais la façon la plus pertinante, de stocker et d'executer mes actions. J'avais pensé à un tableau contenant les appels à mes fonctions, mais je trouve ça crade.


edit:
Exemple schématique de scenario:
event0 : Cartes distribuées à joueur1
event1 : Cartes distribuées à joueur2
event2 : joueur1 pose la petite blinde
event3 : joueur2 pose la grosse blind
event4 : joueur1 relance à 300
event5 : joueur2 se couche


Je veux pouvoir, en fonction de chaque evenement, appeller une fonction.
Ce, dans l'ordre que je veux, automatiquement ou non.
Ma question porte uniquement sur le stockage et l'execution des actions.
Modifié par NaN (13 May 2011 - 11:25)
J'avais pensé a:

evenements = new Array();
evenements[0] = function(){
	foo_action('bar');
};
evenements[1] = function(){
	foo_action('bar2');
};
evenements[2] = function(){
	foo_action2('bar');
};

evenements[0]()// on declenche l'evenement 1 du scenario




(l'exemple ne gère pas le sens de lecture)


Ça fonctionne mais je trouve ça sale...





Edit:

Voila ce pour quoi j'ai opté, le serveur génère :
{ 0: function(){ foo_bar(foo,bar,sens=1) }, ... } et wala
Modifié par NaN (16 May 2011 - 11:56)