Card Class

Door Bob , 18 jaar geleden, 5.304x bekeken

Voor de liefhebbers een kleine card class scriptje. Ik heb zelf ook het script gebruikt om een soort van blackjack te maken. Als er vraag naar is wil ik die ook wel posten ;-)

ps, mijn Engels is niet erg best

Op en aanmerkingen zijn welkom.


Script + kaarten
http://dzhome.freehostia.com/ en dan download

kaarten komen van http://www.jfitz.com/cards/[url]

Gesponsorde koppelingen

PHP script bestanden

  1. card-class

 

Er zijn 14 reacties op 'Card class'

PHP hulp
PHP hulp
0 seconden vanaf nu
 

Gesponsorde koppelingen
Steen
steen
18 jaar geleden
 
0 +1 -0 -1
Post die blackjack ook maar, want dit is wel een erg simpele class.

Edit: blackjack ziet er goed uit, deal or no deal werkt niet goed, blijft altijd bij de eerste deal
Bob
bob
18 jaar geleden
 
0 +1 -0 -1
Blackjack zal ik wel in de loop van de week posten alleen Deal or no deal doet het bij wel gewoon?
Nicoow Unknown
Nicoow Unknown
18 jaar geleden
 
0 +1 -0 -1
De blackjack klopt niet helemaal.
Als je een aas heb, dat rekent hij die alleen als 1, terwijl hij ook als 11 kan gelden.
En als je bijvoorbeeld 5 , 6 , Q heb,
Dan zegt hij BlackJack, maar dat is het helemaal niet.
Als de bank dan ook 21 heeft, wint de bank nog steeds.
Misschien nog even goed naar de spelregels kijken?
Pieter van Linschoten
Pieter van Linschoten
18 jaar geleden
 
0 +1 -0 -1
Die blackjack klopt totaal niet. Veel complexer dan dat script van jou.
Ik mis naast de punten van nico: mogenlijkheid tot splitsen
Als het puntenaantal gelijk is, win je zelf. Dit is is normaliter een 'push', je krijgt je inzet terug.
Ik mis double down.


18 jaar geleden
 
0 +1 -0 -1
Zet die demo eens op een fatsoenlijke host, deze is traag als dikke stront....
John Doe
John Doe
18 jaar geleden
 
0 +1 -0 -1
Volgens de meest recente kansberekening zou je moeten stoppen bij punten => 17 maar bij dit script verlies ik dan bijna altijd.


18 jaar geleden
 
0 +1 -0 -1
Blackjack kun je in dat opzicht alleen winnen als je kan tellen. Dit script is gewoon onzin in dat opzicht, random getallen. Je kan dus makkelijk 4 keer dezelfde kaarten krijgen (ruiten 4, 4 naast elkaar in 1 potje. leuk ;-))
Nicoow Unknown
Nicoow Unknown
18 jaar geleden
 
0 +1 -0 -1
Overigens ook wat commentaar op je code zelf.
Je hebt een class card,
Die heeft een construct,, maar ook een function card, wat ook als een contructor hoort te werken.

Voor de rest is een Card een object, en die zit in een Deck, dus je hoort ook een class deck te hebben.
Die class Deck kan kaarten pakken, een kaart kan zichzelf niet delen, (behalve in Harry Potter).
En eigenlijk moet je dan nog een dealer hebben, die een kaart van de deck af kan halen.
Ik post misschien binnekort mijn card class wel eens :P
Bob
bob
18 jaar geleden
 
0 +1 -0 -1
nico,
Nu ik erover nadenk klopt het inderdaad, card en de construct doet hetzelfde.
de dealer die een kaart pakt is pickcard();

----

Ik heb bij de spelregels van Blackjack alleen toegevoegt wat ik zelf wist :$, Behalve de aas een 1 en een 10 kan zijn dat wist ik al en had naar mijn weten al aangepast (niet goed dus).

Chris,
het is en blijft een gratis host.

Lapidi,

Zoals ik al schreef wist ik alleen de 'basics' er vanaf, ik had er vanaf het begin al meer research moeten doen voordat ik het maakte.
Koen
koen
18 jaar geleden
 
0 +1 -0 -1
een aas kan een 1 en een 11 zijn.

en de deal or no deal klopt niet helemaal.
als je na een paar deals door te gaan, en dan alsnog deal doet, dan krijg je de eerste deal...
en voor je de eerste deal kan maken of afwijzen staat er de hele tijd "je moet nog 1 koffer kiezen"
Bob
bob
18 jaar geleden
 
0 +1 -0 -1
Deal or no deal heb ik wat dingetjes gefixed en dat 'je moet nog .. kofffers kiezen' alleen bij de boden gedaan, mischien dat ik hier later nog eens moet kijkn
Nicoow Unknown
Nicoow Unknown
18 jaar geleden
 
0 +1 -0 -1
Het begin van een card class zou er zo uit moeten zien:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
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
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
<?php

/**
 * @author Nico Kaag
 * @copyright 2009
 */

error_reporting(E_ALL);

class card
{
    public $color;
    public $value;
    function
__construct($color, $value)
    {

        $this->color = $color;
        $this->value = $value;
    }

    
    static function get_colorCode($card)
    {

        switch ($card->value) {
                case
"H":
                    $color = 1;
                    break;
                case
"D":
                    $color = 2;
                    break;
                case
"S":
                    $color = 3;
                    break;
                case
"C":
                    $color = 4;
                    break;
                default:

                    $color = 5;
                    break;
        }

    return $color;
    }

    
    static function getValue($card)
    {

        switch ($card->value) {
                case
"J":
                    $cardValue = 11;
                    break;
                case
"Q":
                    $cardValue = 12;
                    break;
                case
"K":
                    $cardValue = 13;
                    break;
                case
"A":
                    $cardValue = 14;
                    break;
                default:

                    $cardValue = $a->value;
                    break;
        }

        return $cardValue;
    }
}


class deck
{
    //Player Variables
    public $deck;
    private $aSuits = array('H', 'D', 'S', 'C');
    private $aValues = array('2', '3', '4', '5', '6', '7', '8', '9', '10', 'J', 'Q', 'K', 'A');
    
    function
__construct()
    {

        $this->deck = array();
        foreach($this->aSuits as $sSuit)
        {

            foreach($this->aValues as $sValue)
            {

                  array_push($this->deck, new card($sSuit, $sValue));
            }
          }
    }
}


?>


Nu moet hier alleen nog een dealer bij.
Bob
bob
18 jaar geleden
 
0 +1 -0 -1
Ok, dit gaat mijn kleine verstand te boven. Het script van jou ziet er beter uit dan mij. Ik weet zeker dat jij een betere card class kan maken dan mij. Als je het af hebt kan een mod dit script verwijderen.
PHP hulp
PHP hulp
0 seconden vanaf nu
 

Gesponsorde koppelingen
CrawlBackwards
CrawlBackwards
18 jaar geleden
 
0 +1 -0 -1
hmm heb zelf ooit is een php/ajax versie van freecell gemaakt.. zal nog is een keer kijken of ik de code nog ergens heb staan. t werkte wel aardig op een paar foutjes na die ike r nooit uitgehaald heb.

mja ik zie wel :P

Om te reageren heb je een account nodig en je moet ingelogd zijn.

Inhoudsopgave

  1. card-class

Labels

  • Geen tags toegevoegd.

Navigatie

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.