Player Score: 0 | Dealer Score: 0
Cards Remaining: 24 per player
• Copyright© 2025 xPralak Designs - Joseph Downey
<?php
session_start();
$suits = ['hearts', 'diamonds', 'clubs', 'spades'];
$values = [
2 => '2', 3 => '3', 4 => '4', 5 => '5', 6 => '6',
7 => '7', 8 => '8', 9 => '9',
10 => 'j', 11 => 'q', 12 => 'k', 13 => 'a'
];
function createDeck($suits, $values) {
$deck = [];
foreach ($suits as $suit) {
foreach ($values as $val => $label) {
$deck[] = ['value' => $val, 'suit' => $suit, 'label' => $label];
}
}
shuffle($deck);
return $deck;
}
if (!isset($_SESSION['playerDeck']) || isset($_POST['reset'])) {
$deck = createDeck($suits, $values);
$_SESSION['playerDeck'] = array_slice($deck, 0, 24);
$_SESSION['dealerDeck'] = array_slice($deck, 24);
$_SESSION['playerScore'] = 0;
$_SESSION['dealerScore'] = 0;
$_SESSION['lastCards'] = null;
$_SESSION['message'] = "Game started!";
}
if (isset($_POST['continue'])) {
$deck = createDeck($suits, $values);
$_SESSION['playerDeck'] = array_slice($deck, 0, 24);
$_SESSION['dealerDeck'] = array_slice($deck, 24);
$_SESSION['message'] = "Game Continued!";
}
if (isset($_POST['play'])) {
if (!empty($_SESSION['playerDeck']) && !empty($_SESSION['dealerDeck'])) {
$playerCard = array_shift($_SESSION['playerDeck']);
$dealerCard = array_shift($_SESSION['dealerDeck']);
$_SESSION['lastCards'] = ['player' => $playerCard, 'dealer' => $dealerCard];
// Compare the card values
if ($playerCard['value'] > $dealerCard['value']) {
$_SESSION['playerScore']++;
$_SESSION['message'] = "Player wins the round!";
} elseif ($playerCard['value'] < $dealerCard['value']) {
$_SESSION['dealerScore']++;
$_SESSION['message'] = "Dealer wins the round!";
} else {
$_SESSION['message'] = "It's a tie!";
}
if (empty($_SESSION['playerDeck']) || empty($_SESSION['dealerDeck'])) {
if ($_SESSION['playerScore'] > $_SESSION['dealerScore']) {
$_SESSION['message'] = "Game over! Player wins!";
} elseif ($_SESSION['dealerScore'] > $_SESSION['playerScore']) {
$_SESSION['message'] = "Game over! Dealer wins!";
} else {
$_SESSION['message'] = "Game over! It's a tie!";
}
}
}
}
if (isset($_POST['endGame'])) {
header('Location: war2.php');
exit;
}
function cardImage($card) {
return "svgfiles/{$card['label']}_of_{$card['suit']}.svg";
}
?>
<div id="page">
<div class="game">
<?php
include('includes/warheader.php');
?>
<h1 class="page-heading">WAR! Card Game</h1>
<div class="scoreboard">
<p><strong>Player Score:</strong> <?= $_SESSION['playerScore'] ?> |
<strong>Dealer Score:</strong> <?= $_SESSION['dealerScore'] ?></p>
<p><strong>Cards Remaining:</strong> <?= count($_SESSION['playerDeck']) ?> per player</p>
</div>
<div class="card-container">
<?php if (empty($_SESSION['playerDeck'])):?>
<img class="card" src="svgfiles/placeholder.svg">
<?php else: ?>
<img class="card" src="svgfiles/cardback.svg">
<?php endif; ?>
<div class="card">
<?php if ($_SESSION['lastCards']): ?>
<img src="<?= cardImage($_SESSION['lastCards']['player']) ?>" alt="Player card">
<?php else: ?>
<img src="svgfiles/placeholder.svg">
<?php endif; ?>
</div>
<div class="card">
<?php if ($_SESSION['lastCards']): ?>
<img src="<?= cardImage($_SESSION['lastCards']['dealer']) ?>" alt="Dealer card">
<?php else: ?>
<img src="svgfiles/placeholder.svg">
<?php endif; ?>
</div>
<?php if (empty($_SESSION['dealerDeck'])):?>
<img class="card" src="svgfiles/placeholder.svg">
<?php else: ?>
<img class="card" src="svgfiles/cardback.svg">
<?php endif; ?>
</div>
<h2><?= $_SESSION['message'] ?></h2>
<form method="post" class="buttons">
<?php if (!empty($_SESSION['playerDeck']) && !empty($_SESSION['dealerDeck'])): ?>
<button type="submit" name="play">Play Round</button>
<?php else: ?>
<button type="submit" name="continue">Continue Game</button>
<?php endif; ?>
<button type="submit" name="reset">Reset Game</button>
<?php if (empty($_SESSION['playerDeck']) || empty($_SESSION['dealerDeck'])): ?>
<button type="submit" name="endGame">End Game</button>
<?php endif; ?>
</form>
</div>
<?php include('includes/footer.php'); ?>
</div>