implemented hashbrown assignment.
This commit is contained in:
@@ -0,0 +1,51 @@
|
||||
body {
|
||||
background-color: black;
|
||||
}
|
||||
|
||||
h1,
|
||||
p,
|
||||
input,
|
||||
.cell {
|
||||
color: white;
|
||||
}
|
||||
|
||||
.cell {
|
||||
background-color: black;
|
||||
outline: none;
|
||||
border: 1px solid white;
|
||||
transition-duration: 500ms;
|
||||
}
|
||||
|
||||
.cell:hover {
|
||||
background-color: orange;
|
||||
}
|
||||
|
||||
.button {
|
||||
padding: 15px;
|
||||
margin: 35px;
|
||||
border: 3px solid white;
|
||||
border-radius: 9px;
|
||||
background-color: transparent;
|
||||
transition-duration: 500ms;
|
||||
}
|
||||
|
||||
.button:hover {
|
||||
background-color: orange;
|
||||
}
|
||||
|
||||
#content {
|
||||
margin: 35px;
|
||||
width: 40%;
|
||||
margin: 0 auto;
|
||||
border: 3px solid white;
|
||||
border-radius: 18px;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
}
|
||||
|
||||
.row {
|
||||
display: flex;
|
||||
justify-content: space-evenly;
|
||||
}
|
||||
@@ -0,0 +1,127 @@
|
||||
<?php
|
||||
session_start();
|
||||
place_hurkle();
|
||||
if (!isset($_SESSION['size']))
|
||||
$_SESSION['size'] = 10;
|
||||
?>
|
||||
|
||||
<!doctype html>
|
||||
<html lang="en">
|
||||
|
||||
<head>
|
||||
<title>Hurkle</title>
|
||||
<link href="css/styles.css" type="text/css" rel="stylesheet">
|
||||
<script src="js/index.js"></script>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<?php
|
||||
function evaluate_input()
|
||||
{
|
||||
if (isset($_POST['position'])) {
|
||||
echo '<p>Hurkle position: ' . $_SESSION['x'] . ':' . $_SESSION['y'] . '</p>';
|
||||
[$x, $y] = explode(':', $_POST['position']);
|
||||
|
||||
if ($x == $_SESSION['x'] && $y == $_SESSION['y'])
|
||||
echo '<p>You found the Hurkle!</p>';
|
||||
else {
|
||||
$direction = '';
|
||||
if ($y < $_SESSION['y'])
|
||||
$direction .= 'South';
|
||||
else if ($y > $_SESSION['y'])
|
||||
$direction .= 'North';
|
||||
|
||||
if ($x < $_SESSION['x'])
|
||||
$direction .= 'East';
|
||||
if ($x > $_SESSION['x'])
|
||||
$direction .= 'West';
|
||||
|
||||
echo '<p>Hurkle is ' . $direction . '</p>';
|
||||
}
|
||||
}
|
||||
|
||||
if (isset($_POST['reset'])) {
|
||||
reset_session();
|
||||
}
|
||||
|
||||
if (isset($_GET['size'])) {
|
||||
$_SESSION['size'] = $_GET['size'];
|
||||
reset_session();
|
||||
header('Location: .');
|
||||
}
|
||||
}
|
||||
|
||||
evaluate_input();
|
||||
|
||||
echo '
|
||||
<div id="content">
|
||||
<h1>Hurkle</h1>
|
||||
';
|
||||
echo generate_grid();
|
||||
echo bottom_bar();
|
||||
echo '</div>';
|
||||
|
||||
function bottom_bar()
|
||||
{
|
||||
$forms = '
|
||||
<div class="row">
|
||||
<form method="get">
|
||||
<select name="size" id="size">
|
||||
';
|
||||
|
||||
for ($i = 2; $i < 12; $i++)
|
||||
$forms .= '<option value="' . $i . '">' . $i . '</option>';
|
||||
|
||||
$forms .= '
|
||||
</select>
|
||||
|
||||
<input type="submit" class="button">
|
||||
</form>
|
||||
<form method="post">
|
||||
<input type="submit" name="reset" value="Restart" class="button">
|
||||
</form>
|
||||
</div>
|
||||
';
|
||||
|
||||
return $forms;
|
||||
}
|
||||
|
||||
function reset_session()
|
||||
{
|
||||
unset($_SESSION['x']);
|
||||
unset($_SESSION['y']);
|
||||
place_hurkle();
|
||||
}
|
||||
|
||||
function generate_grid()
|
||||
{
|
||||
$grid = '
|
||||
<form method="post" style="display: grid; grid-template-columns: repeat(' . $_SESSION['size'] . ', 50px); grid-template-rows: repeat(' . $_SESSION['size'] . ', 50px);">
|
||||
';
|
||||
|
||||
for ($i = 0; $i < $_SESSION['size']; $i++) {
|
||||
for ($j = 0; $j < $_SESSION['size']; $j++) {
|
||||
$grid .= '
|
||||
<input class="cell" type="submit" name="position" value="' . $j . ':' . $i . '">
|
||||
';
|
||||
}
|
||||
}
|
||||
|
||||
$grid .= '
|
||||
</form>
|
||||
';
|
||||
|
||||
return $grid;
|
||||
}
|
||||
|
||||
function place_hurkle()
|
||||
{
|
||||
if (!isset($_SESSION['x']) && !isset($_SESSION['y'])) {
|
||||
$_SESSION['x'] = rand(0, $_SESSION['size'] - 1);
|
||||
$_SESSION['y'] = rand(0, $_SESSION['size'] - 1);
|
||||
}
|
||||
}
|
||||
?>
|
||||
</body>
|
||||
|
||||
</html>
|
||||
Reference in New Issue
Block a user