Kartenspiel darstellen



  • n'abend

    hab da mal ne Frage und zwar möchte ich für ein "memory" Spiel z.b 20 karten darstellen. wenn man diese Anklickt sollen sie sich umdrehen und wenn sie zusammenpassen verschwinden oder ebend wieder verdeckt werden?
    wie kann ich die realisieren?

    mfg



  • googel mal nach cards32.dll

    [edit]
    Ein Beispiel für Hearts:
    http://www.microsoft.com/mind/0396/games.asp
    [/edit]



  • Ich würde sagen, du nimmst am besten für jede Karte ein Control (evtl. selbstgeschrieben), fängst dann die Klicks darauf ab und änderst entsprechend deren Inhalt



  • Hallo,

    hier habe ich gerade ein Beispiel für ein Kartenspiel gefunden : http://catch22.net/software/shed.asp

    Vielleicht hilft das ja weiter.

    MfG

    Anakin



  • Naja cards32.dll eignet sich für sowas eigentlich sehr gut. Ist auch sehr einfach zu benutzen ... das Beispiel von Anakin zeigt es auch rel gut. aber auf der selben Seite befindet sich auch ein Tutorial disbezüglich 🙂



  • okay kann ich das auch anders realisieren ohne verwendung von "Fremddatein"?
    naja können bestimmt aber welcher weg wäre dann der beste/einfachste?

    mfg



  • Der Beste und Einfachste wäre nicht C++ zu verwenden 😉
    Ansonsten: nimm doch die GDI+ Klassen für C++.



  • hustbaer schrieb:

    Der Beste und Einfachste wäre nicht C++ zu verwenden 😉

    Wieso das denn ? 😕



  • Ich hätte es mit DirectX gemacht und dann Sprites dargestellt.

    Ein Feld mit Spriteobjekten

    Sprite Feld[5][4];
    

    ,diese dann entsprechend Koordinaten zuordnen und in das Objekt einspeichern,wo das Sprite hingeblittet werden soll.

    Beim klicken dann die Mauskoordinaten abfragen und entsprechend das andere Bild blitten.

    if((60 < x < 80) && ( 40 < y < 60))
    {
        Feld[3][2].Change();
    }
    

    Und dann mit Hilfe von irgendwelchen Vergleichen dann die Karten aus dem Spielfeld entfernen.

    if(Feld[4][0].FeldTyp == Feld[2][2].FeldTyp)
    {
        Feld[4][0].Remove;
        Feld[2][2].Remove;
    }
    

    Auf die Art ungefähr hätte ich das gemacht.


Log in to reply