IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

Bataille en php ?


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Août 2011
    Messages
    584
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Août 2011
    Messages : 584
    Par défaut Bataille en php ?
    Bonjour,
    je suis entrain de développer une petite application web, afin de ne pas trop perdre la main.
    J'aimerais donc avoir 2 cartes de jeu retournées (valeur invisible), et retourner les cartes lorsqu'on clique dessus. Les valeurs des cartes sont tirées aléatoirement (rand(1,32)).
    Mais je ne vois vraiment pas comment coder ceci en php.
    Il y aurait-il une solution, ou alors suffit-il d'afficher la valeur des cartes en position absolue lors du clique ?
    Merci d'avance pour vos réponses,
    Cordialement

  2. #2
    Expert confirmé
    Avatar de Benjamin Delespierre
    Profil pro
    Développeur Web
    Inscrit en
    Février 2010
    Messages
    3 929
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Février 2010
    Messages : 3 929
    Par défaut
    Tu veux faire ça en PHP brut ou avec du JavaScript par dessus ?

    Pour faire un deck de cartes, j'ai une fonction pour ça:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    /**
     * @brief Calculates the cartesian product of any number of array in parameter
     *
     * @ingroup Functions
     * @param mixed $a
     * @param mixed $b [...]
     * @return array
     */
    function array_cartesian_product () {
        if (!$c = func_num_args())
            return array();
     
        if ($c == 1) {
            foreach ((array)func_get_arg(0) as $v)
                $r[] = (array)$v;
            return $r;
        }
     
        $a = func_get_args();
        $f = array_shift($a);
        $s = call_user_func_array(__FUNCTION__, $a);
     
        foreach ((array)$f as $v) {
            foreach ($s as $w) {
                array_unshift($w, $v);
                $r[] = $w;
            }
        }
     
        return $r;
    }
     
    $colors = array('Pique', 'Coeur', 'Carreau', 'Trèfle');
    $values = array_merge(range(2,10), array('Valet', 'Dame', 'Roi', 'As'));
     
    // créer le jeu de cartes
    $deck = array_map('implode', array_cartesian_product($values, ' de ', $colors));
     
    // mélanger
    shuffle($deck);
     
    // tirer deux cartes
    var_dump( array_pop($deck) );
    var_dump( array_pop($deck) );

  3. #3
    Membre éclairé
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Août 2011
    Messages
    584
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Août 2011
    Messages : 584
    Par défaut
    Bonjour, et merci de votre réponse.
    Je n'ai encore jamais fait de JS, mais si besoin, je peux m'y mettre.
    Le but et vraiment d'avoir plusieurs cartes sur la table, et de retourner ces cartes(par cliue dessus), afin de découvrir la valeur de la carte choisie

  4. #4
    Expert confirmé
    Avatar de Benjamin Delespierre
    Profil pro
    Développeur Web
    Inscrit en
    Février 2010
    Messages
    3 929
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Février 2010
    Messages : 3 929
    Par défaut
    Mais je ne vois vraiment pas comment coder ceci en php.
    Si tu n'arrives pas à l'imaginer, c'est parce que PHP n'est pas vraiment fait pour ça. Que ton jeu soit en multijoueur et qu'il te faille un serveur pour assurer le lien entre deux joueurs, pourquoi pas. Mais pour l'interface utilisateur, JavaScript est bien plus adapté (surtout au niveau des interactions qui sont beaucoup plus aisées à réaliser).

    Tu en es ou dans le développement ?

  5. #5
    Membre éclairé
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Août 2011
    Messages
    584
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Août 2011
    Messages : 584
    Par défaut
    En ce qui concerne le développement, j'ai imaginé le jeu sur papier, dessiné les fenêtre à la main, pour avoir une idée du rendu, et fait le système de session.
    Etant entrain de développez une autre application en parallèle, je code le jeu lorsque j'ai un peu de temps. Le jeu ne semble vraiment pas compliqué (même pas de multijoueur pour le moment).

    Pour simplifier, j'ai ma fenêtre dans laquelle j'aimerais avoir des cartes (face cachée), et en cliquant dessus elles devraient se retourner, et dévoiler leurs valeurs (Un peu comme un mémory si on veut). Après je mettrai plusieurs cartes bien-sur, mais pour commencer, deux me semble pas trop mal

  6. #6
    Expert confirmé
    Avatar de Benjamin Delespierre
    Profil pro
    Développeur Web
    Inscrit en
    Février 2010
    Messages
    3 929
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Février 2010
    Messages : 3 929
    Par défaut
    Ok, c'est déjà un bon début. Prochaine étape: la state machine. N'importe quel jeu de cartes peut être modélisé avec une state machine. Fais donc quelques diagrames

    Note que compte tenu de la nature du langage, tu vas devoir trouver un moyen de sauvegarder ton automate donc y'a de la sérialisation à prévoir

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [EDI] Quel est l'éditeur que vous recommandez pour PHP ?
    Par Lana.Bauer dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 400
    Dernier message: 10/04/2018, 21h08
  2. Quel est le meilleur script PHP de portail (CMS) ?
    Par Lana.Bauer dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 187
    Dernier message: 18/10/2012, 08h45
  3. L'avenir est-il au PHP ?
    Par Manolo dans le forum Langage
    Réponses: 468
    Dernier message: 11/02/2008, 19h54

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo