deler

Status
Niet open voor verdere reacties.

pkmartijn

Gebruiker
Lid geworden
18 aug 2011
Berichten
163
ik wil een spel maken met een deler die iedereen 7 kaarten geeft en de rest op de pot gooit maar ik weet niet hoe dat moet. ik wil dat je telkens andere kaarten krijgt (door pc uitgekozen anders is het vals) weet iemand met welke function dan vogel ik het zelf wel uit:D

gr pkmartijn
 
Je kunt shuffle gebruiken, denk dat dat het makkelijkst is.

Je maakt een array met kaarten, die shuffle je, en dan verplaatst je een deel naar iedere speler.

PHP:
// je kaarten
$kaarten= array( 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 );
$speler1 = array();
$speler2 = array();
$pot = array();
shuffle ( $array );

for( $i = 0; $i < 4; $i++ ) {
  // verplaatst een kaart naar de speler
  $speler1[] = array_pop( $kaarten );
}
for( $i = 0; $i < 4; $i++ ) {
  // verplaatst een kaart naar de speler
  $speler2[] = array_pop( $kaarten );
}
// de pot zijn de kaarten die nog over zijn
$pot = $kaarten;
 
deel kaarten over spellers en stopt de rest in de pot

ik wil graag dat ik een deel script heb maar hij doet het niet er is niks op het scherm hij blijft helemaal wit dus zit er een fout maar ik weet niet wat wie kan me helpen?
PHP:
<?
// je kaarten
$kaarten= array( 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13);
$speler1 = array();
$speler2 = array();
$pot = array();
shuffle ( $kaarten );
 
for( $i = 0; $i < 4; $i++ ) {
  // verplaatst een kaart naar de speler
  $speler1[] = array_pop( $kaarten );
}
for( $i = 0; $i < 4; $i++ ) {
  // verplaatst een kaart naar de speler
  $speler2[] = array_pop( $kaarten );
}
// de pot zijn de kaarten die nog over zijn
$pot = $kaarten;
?>
 
Je stuurt ook nergens output naar de browser.

Probeer het volgende eens:
PHP:
<pre>
<?php
var_dump($speler1);
var_dump($speler2);
var_dump($pot);
?>
</pre>
 
1) zoals marabunta2048 al zei er staat geen output in je script dus er kan ook niets op het scherm komen

2) de array_pop functie verwijdert het laatste element uit de array en plaatst dit in de de variabele.
Je spelers zullen in met deze functie steeds dezelfde kaarten krijgen.
Je moet ergens een random inbouwen voor het kiezen van de kaarten.
 
@jacfdof,
Hij gebruikt de functie shuffle om de kaarten te schudden. De spelers krijgen dus wel degelijk iedere speelbeurt een willekeurige kaart. :)
 
:o Klopt idd ! Had ik even niet gezien :o

Vergeet dus punt 2 van mijn vorige post. Blijft enkel punt 1 over.
:thumb: marabunta2048 :thumb:
:D
 
maar nu heb ik dit:
PHP:
<?
// je kaarten
$kaarten= array( 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13);
$speler1 = array();
$speler2 = array();
$pot = array();
shuffle ( $kaarten );
<pre>
var_dump($speler1);
var_dump($speler2);
var_dump($pot);
</pre>
 
for( $i = 0; $i < 4; $i++ ) {
  // verplaatst een kaart naar de speler
  $speler1[] = array_pop( $kaarten );
}
for( $i = 0; $i < 4; $i++ ) {
  // verplaatst een kaart naar de speler
  $speler2[] = array_pop( $kaarten );
}
// de pot zijn de kaarten die nog over zijn
$pot = $kaarten;
?>
en hij zegt dat er een fout in lijn 9 zit maar wat dan?
 
Je kunt niet zomaar PHP mixen met HTML, je moet wisselen van modus. Heb je ooit eerder met PHP gewerkt?
 
@Frats, die indruk krijg ik niet..
PHP:
<?php
// je kaarten
$kaarten= array( 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13);
$speler1 = array();
$speler2 = array();
$pot = array();
shuffle ( $kaarten );
 
for( $i = 0; $i < 4; $i++ ) {
  // verplaatst een kaart naar de speler
  $speler1[] = array_pop( $kaarten );
}
for( $i = 0; $i < 4; $i++ ) {
  // verplaatst een kaart naar de speler
  $speler2[] = array_pop( $kaarten );
}
// de pot zijn de kaarten die nog over zijn
$pot = $kaarten;
?>
<pre>
<?php
var_dump($speler1);
var_dump($speler2);
var_dump($pot);
?>
</pre>
Zo zou het werken. Maar ik kan pkmartijn met Klem aanraden om gewoon een goed boek te kopen over PHP en te beginnen bij de basis. Want zo leert hij er zelf niets van. Copy/paste.
 
ik heb een boek:)
mr daar staan alleen voorbeeldjes in en niet hoe je deeld en een pot over hebt:confused:
ik ben 13 hoe moet ik dat dan weten:eek:
pkmartijn
 
Het idee van programmeren is dat je zelf leert om na te denken over hoe je je eigen probleem oplost. Het enige wat je kunt doen is gewoon oefenen en zelf nadenken over hoe je je probleem zou kunnen verhelpen.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan