T-Rex: Stein-Schere-Papier-Echse-Spock in OOP

Beitrag lesen

Wenn man für im Thema genanntes Spiel eine objektorientierte Umsetzung machen wollen würde, was wären dann sinnvolle Ansätze für die Wahl der Klassen?

Also Echse und Spock kenne ich nicht. Deshalb konzentriere ich mich mal auf die ersten drei.
Ich würde eine Mutterkarte schaffen. Von der Leite ich ab:

abstract class motherofallcards  
{  
    protected $objBeat = null;  
    public function check( motherofallcards $objCheck )  
    {  
        //--- wenn die Objekte nicht verglichen werden können würde ich mit get_Class den Objekttypen vergleichen  
        if( $this->objBeat == $objCheck )  
        {  
            return -1;   //--- übergebenes Objekt ist stärker;  
        } else if( $objCheck == $this )  
        {  
            return 0;    //--- übergebenes Objekt entspricht aktuellem Objekt  
        }  
        return 1;  //--- aktuelles Objekt ist stärker  
    }  
}  
  
//--- Ableiten und benutzen  
class stein extends motherofallcards  
{  
    public function __construct()  
    {  
        $this->objBeat = new papier();  
    }  
}

Dann braucht es noch einen Controller (oder Router) der die Klassen initialisiert und entsprechend aufruft.
Falls du es mit mehr als 3 Objekten machst, kannst du das einfache objbeat in ein Array umwandeln und dort alle Objekte reinschreiben die stärker sind.

Gruß
Kartenspieler
T-Rex

0 55

Stein-Schere-Papier-Echse-Spock in OOP

Matthias Apsel
  • programmiertechnik
  1. 0
    Whouzuo
    1. 0
      T-Rex
      1. 0
        Whouzuo
  2. 0
    T-Rex
    1. 0

      Stein-Schere-Papier-Echse-Spock

      Auge
      • menschelei
  3. 0
    M.
  4. 0
    Encoder
    1. 0
      Matthias Apsel
      1. 0
        Encoder
        1. 0
          Matthias Apsel
          1. 0
            Whouzuo
            1. 0
              Matthias Apsel
              1. 0
                Whouzuo
        2. 0
          Matthias Apsel
  5. 0
    T-Rex
    1. 0
      Whouzuo
      1. 0
        Encoder
        1. 0
          Whouzuo
          1. 0
            Encoder
            1. 0
              Whouzuo
              1. 0
                Encoder
                1. 0
                  Matthias Apsel
                2. 0
                  Whouzuo
                  1. 0
                    Matthias Apsel
                    1. 0
                      Whouzuo
                    2. 0
                      Whouzuo
                      1. 0
                        Matthias Apsel
      2. 0
        Matthias Apsel
        1. 0
          Whouzuo
          1. 0
            Matthias Apsel
            1. 0
              Whouzuo
              1. 0
                Matthias Apsel
                1. 0
                  Whouzuo
                  1. 0
                    Matthias Apsel
              2. 0
                dedlfix
                1. 0
                  dedlfix
                2. 0
                  Whouzuo
      3. 0
        T-Rex
    2. 0
      T-Rex
      1. 0
        Matthias Apsel
  6. 3
    Der-Dennis
    1. 3
      Der-Dennis
      1. 0
        Whouzuo
        1. 0
          Der-Dennis
          1. 0
            Whouzuo
            1. 0
              Der-Dennis
          2. 0

            Stein-Schere-Papier-Echse-Spock in OOP (Teil 2)

            Whouzuo
            1. 0
              Der-Dennis
              • menschelei
    2. 0
      Matthias Apsel
      1. 0
        Der-Dennis
        1. 0
          bubble
          1. 0
            Der-Dennis
        2. 0
          Matthias Apsel
        3. 0
          Matthias Apsel