From Computer Science Wiki
What are we going to learn today?[edit]
<?php
session_start();
function monster($current_player_location, $current_monster_location,$destination) {
echo "player is: $current_player_location Monster is: $current_monster_location <br />";
if($destination == $current_monster_location){
echo "from function: MONSTER!!! <br />";
}
}
if ($_SERVER['REQUEST_METHOD'] === 'POST') {
$current_player_location = $_SESSION['current_player_location'];
$current_monster_location = $_SESSION['current_monster_location'];
$grid = $_SESSION['grid'];
$move = $_POST['move'];
if($move == 'W' || $move == 'w'){
monster($current_player_location,$current_monster_location,($current_player_location-1));
if($current_player_location==50){ $grid[50]=1; }
$grid[$current_player_location] = $_SESSION['terrain_in_destination'];
$terrain_in_destination = $grid[($current_player_location-1)];
$_SESSION['terrain_in_destination'] = $terrain_in_destination;
$grid[($current_player_location-1)] = 4;
} elseif($move == 'E' || $move == 'e'){
monster($current_player_location,$current_monster_location,($current_player_location+1));
if($current_player_location==50){ $grid[50]=1; }
$grid[$current_player_location] = $_SESSION['terrain_in_destination'];
$terrain_in_destination = $grid[($current_player_location+1)];
$_SESSION['terrain_in_destination'] = $terrain_in_destination;
$grid[($current_player_location+1)] = 4;
} elseif($move == 'N' || $move == 'n'){
monster($current_player_location,$current_monster_location,($current_player_location-20));
if($current_player_location==50){ $grid[50]=1; }
$grid[$current_player_location] = $_SESSION['terrain_in_destination'];
$terrain_in_destination = $grid[($current_player_location-20)];
$_SESSION['terrain_in_destination'] = $terrain_in_destination;
$grid[($current_player_location-20)] = 4;
} elseif($move == 'S' || $move == 's'){
monster($current_player_location,$current_monster_location,($current_player_location+20));
if($current_player_location==50){ $grid[50]=1; }
$grid[$current_player_location] = $_SESSION['terrain_in_destination'];
$terrain_in_destination = $grid[($current_player_location+20)];
$_SESSION['terrain_in_destination'] = $terrain_in_destination;
$grid[($current_player_location+20)] = 4;
}
} else {
// This progam creates and prints a simple grid
// initialize the array
$grid = [];
// populate the array:
for($i=0;$i<300;$i++){
$new_number = rand(1,3);
if($new_number == 2 || $new_number ==3){
$new_number = rand(1,3);
}
$grid[] = $new_number;
}
// set initial player location:
$grid[50]=4;
// set initial monster location:
$grid[123]=5;
} // this ends the ISPOST
// print the array so it looks like a grid
echo "<!doctype html>";
echo "<html>";
echo "<meta charset=\"utf-8\"/>";
echo "<style>
body { font-family: \"courier\"; }</style>";
$count = 0;
$row_length = 20;
$player_location = 50;
foreach($grid as $i) {
$count = $count + 1;
if($i==1){
echo " . ";
} elseif($i==2) {
echo "<font color=\"green\"> T </font>";
} elseif($i==3) {
echo "<font color=\"red\"> M </font>";
} elseif($i == 4) {
echo "*";
} elseif($i == 5) {
echo " X ";
}
if($count == $row_length) {
echo "<br />";
$count = 0;
}
}
$current_player_location = array_search(4,$grid);
$current_monster_location = array_search(5,$grid);
$count_terrain_features = array_count_values($grid);
echo "<br /><hr /><br />";
echo "The player is currently at position: $current_player_location <br />";
echo "The monster is currently at position: $current_monster_location <br />";
echo "<br /><hr /><br />";
// print_r($count_terrain_features);
$_SESSION['grid'] = $grid;
$_SESSION['current_player_location'] = $current_player_location;
$_SESSION['current_monster_location'] = $current_monster_location;
?>
<form action="#" method="POST">
<p>Enter your move (N,S,W,E)<input type="text" name="move" autofocus /></p>
<input type="submit" value="click here to move" />
</form>
<br />
<br />
|
What is our homework?[edit]
- None
|
How am I being assessed today?[edit]
- You get a formative assessment today :-)
|
Standards we are covering today[edit]
|
As a computer scientist, you have:[edit]
- Confidence in dealing with complexity
- Persistence in working with difficult problems
- Tolerance for ambiguity
- The ability to deal with open-ended problems
- The ability to communicate and work with others to achieve a common goal or solution
|
Credits[edit]
|