Blackjack bank
Ik zit met een probleem waar ik maar niet uit wil komen.
Als je blackjack speelt kan je tot 21 gaan.
Als je de bank leegspeeld qua vermogen dan hoor je het casino te kijken.
Nu zie ik dat de if 21 (regel vanaf 320) boven de andere berekening staat of de bank wel genoeg in kas heeft om uit te betalen.
Ik heb dit geprobeerd te verwisselen door de If en elsif om te draaien en dat gedeelte van < 21 naar onderen te zetten, echter geeft dit het resultaat dat er geen geld vanaf gaat maar wel erbij komt.
Wie heeft enig idee wat ik hiermee kan?
Scriptcode:
Dan gaat het dus om dit stukje:
Edit:
</font></center></body></html>
Code (php)
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
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
<?PHP
$winst = ($vorige->inzet * 2);
$inzet = ($vorige->inzet);
if($dealer > 21){echo"<br><br>De deler is kapot, je hebt €$inzet gewonnen.<br><br><a href=blackjack.php>Speel opnieuw</a>";
mysql_query("UPDATE `users` SET `blackjackgeld`=`blackjackgeld`+$winst WHERE `login`='{$data->login}'");
mysql_query("UPDATE `casino` set `winst`=`winst`-$inzet,`bank`=`bank`-$inzet WHERE `spel`='$casino->spel' AND `stad`='$data->stad'");
}
elseif($dealer < $som) {
$winst = ($vorige->inzet * 2);
if($casino->bank - $winst <= 0){
$winstb = $casino->bank;
mysql_query("UPDATE `users` SET `blackjackgeld`=`blackjackgeld`+$winstb WHERE `login`='{$data->login}'");
$is = mysql_query("SELECT * FROM `casino` WHERE `owner`='{$data->login}',`winst`='0',`bank`='1000'");
$xist = mysql_num_rows($is);
$own = $data->login;
mysql_query("UPDATE `casino` SET `owner`='{$data->login}',`winst`='0',`bank`='1000' WHERE `spel`='{$casino->spel}' AND `stad`='{$data->stad}'");
echo "<br><br>Je hebt meer dan de dealer.<br><br>Je hebt echter maar € $winstb gekregen omdat $eigenaar->login niet kon uitbetalen.<br>Je hebt ook zijn casino gekregen.";
}
else{
echo"<br><br>Je hebt meer dan de dealer, je hebt €$inzet gewonnen.<br><br><a href=blackjack.php>Speel opnieuw</a>";
mysql_query("UPDATE `users` SET `blackjackgeld`=`blackjackgeld`+$winst WHERE `login`='{$data->login}'");
mysql_query("UPDATE `casino` set `winst`=`winst`-$inzet,`bank`=`bank`-$inzet WHERE `spel`='$casino->spel' AND `stad`='$data->stad'");
}
}
elseif($dealer > $som){
echo"<br><br>Je hebt minder dan de dealer, je hebt €$inzet verloren.<br><br><a href=blackjack.php>Speel opnieuw</a>";
mysql_query("UPDATE `casino` set `winst`=`winst`+$inzet,`bank`=`bank`+$inzet WHERE `spel`='$casino->spel' AND `stad`='$data->stad'");
}
elseif($dealer == $som){
echo"<br><br>Je hebt evenveel als de dealer. Je hebt je geld terug gekregen.<br><br><a href=blackjack.php>Speel opnieuw</a>";
mysql_query("UPDATE `users` set `blackjackgeld`=`blackjackgeld`+$inzet WHERE `login`='$data->login'");
}
mysql_query("DELETE FROM `blackjack` WHERE `login`='{$data->login}'");
}
else {
// Dit laat dus zien wanneer je kunt inzetten (gehele tekst eronder weggehaald gezien het niet van toepassing is.
$inzet = number_format($casino->inzet, 0, '.' , '.');
$blackjackgeld = number_format($data->blackjackgeld, 0, '.' , '.');
echo "<table width=100%>
<tr><td valign=top class=mainTxt2>Dit is een Test Casino. Gewonnengeld wordt niet uitgekeerd in je cashgeld ingame! <br /> Je hebt: € {$blackjackgeld},- om mee te spelen.</td></tr>";
}
?>
$winst = ($vorige->inzet * 2);
$inzet = ($vorige->inzet);
if($dealer > 21){echo"<br><br>De deler is kapot, je hebt €$inzet gewonnen.<br><br><a href=blackjack.php>Speel opnieuw</a>";
mysql_query("UPDATE `users` SET `blackjackgeld`=`blackjackgeld`+$winst WHERE `login`='{$data->login}'");
mysql_query("UPDATE `casino` set `winst`=`winst`-$inzet,`bank`=`bank`-$inzet WHERE `spel`='$casino->spel' AND `stad`='$data->stad'");
}
elseif($dealer < $som) {
$winst = ($vorige->inzet * 2);
if($casino->bank - $winst <= 0){
$winstb = $casino->bank;
mysql_query("UPDATE `users` SET `blackjackgeld`=`blackjackgeld`+$winstb WHERE `login`='{$data->login}'");
$is = mysql_query("SELECT * FROM `casino` WHERE `owner`='{$data->login}',`winst`='0',`bank`='1000'");
$xist = mysql_num_rows($is);
$own = $data->login;
mysql_query("UPDATE `casino` SET `owner`='{$data->login}',`winst`='0',`bank`='1000' WHERE `spel`='{$casino->spel}' AND `stad`='{$data->stad}'");
echo "<br><br>Je hebt meer dan de dealer.<br><br>Je hebt echter maar € $winstb gekregen omdat $eigenaar->login niet kon uitbetalen.<br>Je hebt ook zijn casino gekregen.";
}
else{
echo"<br><br>Je hebt meer dan de dealer, je hebt €$inzet gewonnen.<br><br><a href=blackjack.php>Speel opnieuw</a>";
mysql_query("UPDATE `users` SET `blackjackgeld`=`blackjackgeld`+$winst WHERE `login`='{$data->login}'");
mysql_query("UPDATE `casino` set `winst`=`winst`-$inzet,`bank`=`bank`-$inzet WHERE `spel`='$casino->spel' AND `stad`='$data->stad'");
}
}
elseif($dealer > $som){
echo"<br><br>Je hebt minder dan de dealer, je hebt €$inzet verloren.<br><br><a href=blackjack.php>Speel opnieuw</a>";
mysql_query("UPDATE `casino` set `winst`=`winst`+$inzet,`bank`=`bank`+$inzet WHERE `spel`='$casino->spel' AND `stad`='$data->stad'");
}
elseif($dealer == $som){
echo"<br><br>Je hebt evenveel als de dealer. Je hebt je geld terug gekregen.<br><br><a href=blackjack.php>Speel opnieuw</a>";
mysql_query("UPDATE `users` set `blackjackgeld`=`blackjackgeld`+$inzet WHERE `login`='$data->login'");
}
mysql_query("DELETE FROM `blackjack` WHERE `login`='{$data->login}'");
}
else {
// Dit laat dus zien wanneer je kunt inzetten (gehele tekst eronder weggehaald gezien het niet van toepassing is.
$inzet = number_format($casino->inzet, 0, '.' , '.');
$blackjackgeld = number_format($data->blackjackgeld, 0, '.' , '.');
echo "<table width=100%>
<tr><td valign=top class=mainTxt2>Dit is een Test Casino. Gewonnengeld wordt niet uitgekeerd in je cashgeld ingame! <br /> Je hebt: € {$blackjackgeld},- om mee te spelen.</td></tr>";
}
?>
Gewijzigd op 19/09/2013 17:04:39 door Johannes Janssen
Plaats even alleen relevante code svp.
aangepast Erwin ;)
Als ik jouw was zou ik je code eens even goed inspringen met TAB. Dat maakt het beter leesbaarder.
Johannes Janssen op 19/09/2013 10:13:31:
Als je de bank leegspeeld qua vermogen dan hoor je het casino te kijken.
Is dit nieuw nederlands of begrijp ik het gewoon niet?
In de casinobank zit 50.000
Ik speel met 100.000 inzet
win de ronde
krijg 200.000 terwijl er maar 50.000 inzet
en de casino wordt niet gegeven aan diegene die hem leegspeeld.
^^ Beter begrijpbaar?
Johannes Janssen op 19/09/2013 17:06:03:
en de casino wordt niet gegeven aan diegene die hem leegspeeld.
De casino wisselt toch nooit van eigenaar? Maar blijft buiten bezit van een speler?
Johannes Janssen op 19/09/2013 17:06:03:
^^ Beter begrijpbaar?
Nauwelijks.
Kun je niet beter zelf wat gaan programmeren dan deze download die al jaren over het internet zwerft?
Een speler
Die stopt geld in zijn casino bank
En andere members kunnen erop spelen.
Bij het leegspelen van de blackjack(bank) hoor je de blackjack te krijgen.
Dit gebeurd nu dus niet.
Nu is het dus zo:
Er zit 50.000 in de blackjack bank
Ik speel met 100.000 inzet
Win en krijg 200.000 terwijl ik maar 150.000 hoor te krijgen omdat er dus maar 50.000 in de bank zit.
Daarbij komt ook nog dat je eigenaar hoort te worden wanneer je de casino leegspeeld.
En daar zit dus de fout..
Als ik het hele script moet posten, geen probleem
Toevoeging op 19/09/2013 17:57:52:
@Roel, die kennis heb ik niet in huis.
Dit schijnt toch een redelijke blackjack te zijn, vandaar dat ik deze al enige tijd gebruik...
Code (php)
Als de dealer over de 21 gaat voer je het eerste stuk uit. Maar eigenlijk wil je ook nog naar de tweede optie kijken. In die tweede optie kijk je zo te zien namelijk pas of de bank nog wel kan betalen. Dat wil je (ook) in het eerste stuk hebben.
Dus het komt erop neer dat je je logica wat beter in orde moet zien te krijgen. Schrijf het eens uit, op papier.
"als deler over 21 gaat, dan dit en dat..." etc.
En dan alle opties meenemen.
Toevoeging op 19/09/2013 18:36:39:
Dan zou het dus zo uitkomen, correct?
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
<?PHP
$winst = ($vorige->inzet * 2);
$inzet = ($vorige->inzet);
if($casino->bank - $winst <= 0){
$winstb = $casino->bank;
mysql_query("UPDATE `users` SET `blackjackgeld`=`blackjackgeld`+$winstb WHERE `login`='{$data->login}'");
$is = mysql_query("SELECT * FROM `casino` WHERE `owner`='{$data->login}',`winst`='0',`bank`='1000'");
$xist = mysql_num_rows($is);
$own = $data->login;
mysql_query("UPDATE `casino` SET `owner`='{$data->login}',`winst`='0',`bank`='1000' WHERE `spel`='{$casino->spel}' AND `stad`='{$data->stad}'");
echo "<br><br>Je hebt meer dan de dealer.<br><br>Je hebt echter maar € $winstb gekregen omdat $eigenaar->login niet kon uitbetalen.<br>Je hebt ook zijn casino gekregen.";
}
elseif($dealer < $som) {
$winst = ($vorige->inzet * 2);
if($dealer > 21){echo"<br><br>De deler is kapot, je hebt €$inzet gewonnen.<br><br><a href=blackjack.php>Speel opnieuw</a>";
mysql_query("UPDATE `users` SET `blackjackgeld`=`blackjackgeld`+$winst WHERE `login`='{$data->login}'");
mysql_query("UPDATE `casino` set `winst`=`winst`-$inzet,`bank`=`bank`-$inzet WHERE `spel`='$casino->spel' AND `stad`='$data->stad'");
}
?>
$winst = ($vorige->inzet * 2);
$inzet = ($vorige->inzet);
if($casino->bank - $winst <= 0){
$winstb = $casino->bank;
mysql_query("UPDATE `users` SET `blackjackgeld`=`blackjackgeld`+$winstb WHERE `login`='{$data->login}'");
$is = mysql_query("SELECT * FROM `casino` WHERE `owner`='{$data->login}',`winst`='0',`bank`='1000'");
$xist = mysql_num_rows($is);
$own = $data->login;
mysql_query("UPDATE `casino` SET `owner`='{$data->login}',`winst`='0',`bank`='1000' WHERE `spel`='{$casino->spel}' AND `stad`='{$data->stad}'");
echo "<br><br>Je hebt meer dan de dealer.<br><br>Je hebt echter maar € $winstb gekregen omdat $eigenaar->login niet kon uitbetalen.<br>Je hebt ook zijn casino gekregen.";
}
elseif($dealer < $som) {
$winst = ($vorige->inzet * 2);
if($dealer > 21){echo"<br><br>De deler is kapot, je hebt €$inzet gewonnen.<br><br><a href=blackjack.php>Speel opnieuw</a>";
mysql_query("UPDATE `users` SET `blackjackgeld`=`blackjackgeld`+$winst WHERE `login`='{$data->login}'");
mysql_query("UPDATE `casino` set `winst`=`winst`-$inzet,`bank`=`bank`-$inzet WHERE `spel`='$casino->spel' AND `stad`='$data->stad'");
}
?>
Geen idee of het correct is. Aangezien er nul komma nul commentaar in de code staat en het niet is ingesprongen is het niet te lezen. De enige die dus kan zeggen of het klopt ben jij.
Maar Erwin, jij bedoel dus dat ik met // moet aangeven wat de actie gaat doen?
Ik zie een hoop if'jes... Welke hoort bij welke? ;-)
Bedenk het zo, als jij volgend jaar nog eens naar deze code kijkt, weet je dan nog wat het doet? En nog belangrijker, waarom het zo is? Het antwoord daarop is nee (wat je nu ook voor antwoord wil geven), daarom zet je er commentaar tussen.
inderdaad is het script een gigantische puinhoop
Vandaar: bouw het goed op, spring netjes in, zet er goed commentaar bij.
Als je daar al niet mee begint kom je er nooit uit.