summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--pages/gallery.php352
1 files changed, 161 insertions, 191 deletions
diff --git a/pages/gallery.php b/pages/gallery.php
index 8b6013d..e4e5d17 100644
--- a/pages/gallery.php
+++ b/pages/gallery.php
@@ -1,170 +1,146 @@
<?PHP
-htmlHeader(array());
+htmlHeader(array(), '', '', array('scores'));
?>
<body>
<?php
topbar($Links);
-include('../mazetd/includes/maps.php');
-include('../mazetd/includes/mapoftheday.php');
+include('./includes/maps.php');
+include('./includes/mapoftheday.php');
-//15x9.c3.r28.w12.t2.:0s.8r.4f.0s.9r.3f.0s.12r.0f.0s.8r.0r.3f.0s.5r.5r.1f.0s.1r.11f.0s.0r.8r.1r.1f.0s.8r.4f.0s.4r.3r.4f.
-$map = GenerateMap(
- 15, 9, 7 , //width, height, rocks
- rand(11,13) , //Walls
- weight(0,1,2,2,3,3) , //Checkpoints
- rand(0,1) //Teleports
- );
-
-
-$map = GenerateMap(
- 14, 15, 50 , //width, height, rocks
- weight(17,18,19,20) , //Walls
- weight(1,2,2,3,3) , //Checkpoints
- weight(0,0,0,1) //Teleports
-);
-
-//Weekend Map
-$map = GenerateMap(
- 25, 15, 9 , //width, height, rocks
- weight(20) , //Walls
- weight(5) , //Checkpoints
- weight(5) //Teleports
-);
-
-
-//Rocky Maze
-$map = GenerateMap(
- 19, 15, 5 , //width, height, rocks
- weight(16,17,18) , //Walls
- weight(1,2,2,2,3,3) , //Checkpoints
- weight(0) //Teleports
-);
-
-
-//Tele Madness
-$map = GenerateMap(
- 17, 12, 10 , //width, height, rocks
- weight(17,18) , //Walls
- weight(1) , //Checkpoints
- weight(5) //Teleports
-);
-
-//Tall tall
-$map = GenerateMap(
- 6, 17, 10 , //width, height, rocks
- weight(17,18,19,20) , //Walls
- weight(1,2,2,2,3,3) , //Checkpoints
- weight(0,0,0,1) //Teleports
-);
-//Side to Side
-$map = GenerateMap(
- 26, 6, 12 , //width, height, rocks
- weight(17,18,19) , //Walls
- weight(2,2,2,3,3) , //Checkpoints
- weight(3,3,3,4) //Teleports
-);
-
-//ABC's
-$map = GenerateMap(
- 19, 11, 12 , //width, height, rocks
- weight(20,21,22,22,23) , //Walls
- weight(3) , //Checkpoints
- weight(0) //Teleports
-);
-
-//Ultra Complex
-$map = GenerateMap(
- 18, 16, 12 , //width, height, rocks
- weight(16,17,18,18) , //Walls
- weight(5) , //Checkpoints
- weight(5) //Teleports
-);
-//Tall tall map
-$map = GenerateMap(
- 18, 14, 20 , //width, height, rocks
- weight(30) , //Walls
- weight(1) , //Checkpoints
- weight(1) //Teleports
-);
-//Thirty
-$map = GenerateMap(
- 18, 14, 20 , //width, height, rocks
- weight(30) , //Walls
- weight(1) , //Checkpoints
- weight(1) //Teleports
-);
-//Simple
-$map = GenerateMap(
- 18, 9, 7 , //width, height, rocks
- weight(15,16,17) , //Walls
- weight(0) , //Checkpoints
- weight(0) //Teleports
-);
-//huge
-$map = GenerateMap(
- 75, 20, 7 , //width, height, rocks
- weight(100) , //Walls
- weight(5) , //Checkpoints
- weight(4) //Teleports
-);
-
-$myshape[] = "qqqqqfffffqqqqq";
-$myshape[] = "qqqqq?????qqqqq";
-$myshape[] = "qqooo??b??oooqq";
-$myshape[] = "qqoRR?????RRoqq";
-$myshape[] = "qqoRR?????RRoqq";
-$myshape[] = "f?????????????f";
-$myshape[] = "f?????????????f";
-$myshape[] = "f?a????s????c?f";
-$myshape[] = "f?????????????f";
-$myshape[] = "f?p???????????f";
-$myshape[] = "qqpRR?????RRoqq";
-$myshape[] = "qqpRR?????RRoqq";
-$myshape[] = "qqpppp?d??oooqq";
-$myshape[] = "qqqqq?????qqqqq";
-$myshape[] = "qqqqqfffffqqqqq";
-
-$basic[] = "soooooooootoof";
-$basic[] = "soooooooooooof";
-$basic[] = "soooooooooooof";
-$basic[] = "soobooooroooof";
-$basic[] = "sooroooooaooof";
-$basic[] = "srorooooorroof";
-$basic[] = "soooooooorooof";
-$basic[] = "soooooocodooof";
-$basic[] = "soorooorroooof";
-$basic[] = "soooeoooooooof";
-$basic[] = "suooooooooooof";
-
-
-$basic2[] = "soooooooorotof";
-$basic2[] = "soooooooodooof";
-$basic2[] = "soorooooooooof";
-$basic2[] = "soooooooooooof";
-$basic2[] = "soooaoooooooof";
-$basic2[] = "suocooooooobof";
-
-
-$basic3[] = "soooooooooof";
-$basic3[] = "soooooooooof";
-$basic3[] = "sooooaooooof";
-$basic3[] = "soooooooooof";
-$basic3[] = "soooooooooof";
-
-
-$square[] = "sfoo";
-$square[] = "oooo";
+$basic3[] = "orooooooooof";
+$basic3[] = "orooooooooof";
+$basic3[] = "oroooaooooof";
+$basic3[] = "soroooooooof";
+$basic3[] = "ooooroooooof";
+$basic3[] = "uoooortoooof";
+$basic3[] = "usooooooooof";
+$basic3[] = "uoooooooooof";
$myparams['checkpoints'] = 1;
$myparams['teleports'] = 0;
$myparams['rockchance'] = 100;
-$myparams['walls'] = 13;
+$myparams['walls'] = 3;
+
+//$map = GenerateShapedMap($basic3, $myparams);
+
+//Dual map
+$dualmapa[] = "s??????????????????tc";
+$dualmapa[] = "s??????????????????tc";
+$dualmapa[] = "s??????????????????tc";
+$dualmapa[] = "s??????????????????tc";
+$dualmapa[] = "s??????????????????tc";
+$dualmapa[] = "s??????????????????tc";
+$dualmapa[] = "qqqqqqqqqqqoqqqqqqqqq";
+$dualmapb[] = "u???????????????????f";
+$dualmapb[] = "u???????????????????f";
+$dualmapb[] = "u???????????????????f";
+$dualmapb[] = "u???????????????????f";
+$dualmapb[] = "u???????????????????f";
+$dualmapb[] = "u???????????????????f";
+
+$dualmapa = insertPoint($dualmapa, 'ab');
+$dualmapb = insertPoint($dualmapb, 'cde');
+$dualmap = array_merge($dualmapa, $dualmapb);
+//$dualmap = insertPoint($dualmap, 'vw');
+
+$myparams['checkpoints'] = 3;
+$myparams['teleports'] = 1;
+$myparams['rockchance'] = 9;
+$myparams['walls'] = weight(20, 20, 21, 21, 22, 23);
+$myparams['name'] = 'Seeing Double';
+//$map = GenerateShapedMap($dualmap, $myparams);
+
+
+$dualsmap[] = 'rSrSrSrSrSrSr';
+$dualsmap[] = 's???????????f';
+$dualsmap[] = 'r???????????r';
+$dualsmap[] = 's???????????f';
+$dualsmap[] = 'r???????????r';
+$dualsmap[] = 's???????????f';
+$dualsmap[] = 'r???????????r';
+$dualsmap[] = 's???????????f';
+$dualsmap[] = 'rfrfrfrfrfrfr';
+
+$dualsmape[] = 'rSrSrSoroSrSrSr';
+$dualsmape[] = 'sooooooooorooof';
+$dualsmape[] = 'roootooooooooor';
+$dualsmape[] = 'soooorooorbroof';
+$dualsmape[] = 'roroaooooooroor';
+$dualsmape[] = 'sooooooooooooof';
+$dualsmape[] = 'roooooorcuoooor';
+$dualsmape[] = 'sooooooooooooof';
+$dualsmape[] = 'rooooooooooooor';
+$dualsmape[] = 'sooooooooooooof';
+$dualsmape[] = 'rooooooooooooor';
+$dualsmape[] = 'sooooooooooooof';
+$dualsmape[] = 'rfrfrforofrfrfr';
+
+$openmaps[] = 'Souooooooooooooooooooooo';
+$openmaps[] = 'oooooooooooooooooooooooo';
+$openmaps[] = 'oooooooooooooooooooooooo';
+$openmaps[] = 'oooooooooooooooooooooooo';
+$openmaps[] = 'ooooooooooaoootooooooooo';
+$openmaps[] = 'oooooooooooooooooooooooo';
+$openmaps[] = 'oooooooooooooooooooooooo';
+$openmaps[] = 'oooooooooooooooooooooooo';
+$openmaps[] = 'oooooooooooooooooooooooo';
+$openmaps[] = 'foooooooooooooooooooooos';
+
+//$dualsmape = insertPoint($dualsmape, 'abcptu');
+
+$myparams['checkpoints'] = 5;
+$myparams['teleports'] = 0;
+$myparams['rockchance'] = 15;
+$myparams['walls'] = 38;
+$myparams['name'] = 'Dualing Starts';
+
+$map = GenerateShapedMap($openmaps, $myparams);
+
+echo DisplayMap($map, 1);
+
+
+exit;
+
+echo "Prep..";
+
+$ultraComplex[] = "soooooooooooooooooooooooooooor";
+$ultraComplex[] = "ro??????????????????????????of";
+$ultraComplex[] = "so??????????????????????????or";
+$ultraComplex[] = "ro??????????????????????????of";
+$ultraComplex[] = "so??????????????????????????or";
+$ultraComplex[] = "ro??????????????????????????of";
+$ultraComplex[] = "so??????????????????????????or";
+$ultraComplex[] = "ro??????????????????????????of";
+$ultraComplex[] = "so??????????????????????????or";
+$ultraComplex[] = "ro??????????????????????????of";
+$ultraComplex[] = "so??????????????????????????or";
+$ultraComplex[] = "roooooooooooooooooooooooooooof";
+
+$ultraComplex = insertPoint($ultraComplex, 'abcde');
+$ultraComplex = insertPoint($ultraComplex, 'tumngh');
+$ultraComplex = insertPoint($ultraComplex, 'ppppppppppp');
+
+$myparams['checkpoints'] = 5;
+$myparams['teleports'] = 3;
+$myparams['rockchance'] = 9;
+$myparams['walls'] = 38;
+$myparams['name'] = 'Ultra Complex';
+
+echo "Gen..";
+
+$map = GenerateShapedMap($ultraComplex, $myparams);
+
+echo "Disp..";
+
+echo DisplayMap($map, 1);
+
-$map = GenerateShapedMap($basic3, $myparams);
+
+exit;
if( ini_get('safe_mode') ){
echo "RISM";
@@ -172,7 +148,7 @@ if( ini_get('safe_mode') ){
echo "NRISM";
}
ini_set('display_errors',1);
- //error_reporting(E_NOTICE);
+ error_reporting(E_NOTICE);
//trigger_error("Cannot divide by zero", E_NOTICE);
@@ -180,12 +156,8 @@ echo ini_get('max_execution_time');
echo ":";
-$motd = MapOfTheDay(3);
-$map = $motd['map'];
-
-
-
-
+//$motd = MapOfTheDay(3);
+//$map = $motd['map'];
if (isset($_GET['walls'])) {
$map[0][4] = ($_GET['walls'] * 1);
@@ -263,9 +235,10 @@ function executeTryMaze($mapMatrix, $intensity = 1) {
//$mapdata['walls'] = 12;
$mapdata['teleports'] = $mapMatrix[0][5];
-
- //PROCSES BEGIN
+
$routes = 0;
+
+ //PROCSES BEGIN
$wallcount = 0;
$iterations = 0;
$lastRefresh = 0;
@@ -290,12 +263,19 @@ function executeTryMaze($mapMatrix, $intensity = 1) {
continue;
}
+
//Set a wall and calculate the new path
$mapMatrix[$x][$y] = 'R';
$curpath = routePath($mapMatrix);
$routes++;
$trymoves = $curpath['moves'];
-
+
+ //if ("$x,$y" == "3,17") {
+ //echo "T($x,$y)\n:";
+ //print_r($affected);
+ //return;
+ //}
+ //path blocked?
if ($curpath['blocked'] == true) {
//Sometimes it's better to remove a different wall;
@@ -306,7 +286,7 @@ function executeTryMaze($mapMatrix, $intensity = 1) {
//determin wall values.
$walllist = wallvalues($mapMatrix, $arrayWalls);
- $routes = $routes + $wallcount;
+ $routes++;
//Put the best wall to remove on top; - A mono directional bubble sort would be better here.
$walllist["$x,$y"]--;
@@ -338,15 +318,15 @@ function executeTryMaze($mapMatrix, $intensity = 1) {
continue;
}
//The last choice, or first choice?
- //Can't decide, let's do both.
- if ($trymoves > $bestmoves OR ($trymoves >= $bestmoves AND $iterations % 4 >= 2)) {
- if ($bestcount <= $count) {
- $bestcount = $count;
- $bestmoves = $trymoves;
- $bestx = $x;
- $besty = $y;
- $mapMatrix[$x][$y] = 'o';
- }
+ //if ($trymoves >= $bestmoves) {
+ //echo "[$x, $y: $trymoves]";
+ if ($trymoves > $bestmoves OR ($trymoves >= $bestmoves AND $bestcount <= $count) ) {
+ $bestcount = $count;
+ $bestmoves = $trymoves;
+ $bestx = $x;
+ $besty = $y;
+ $mapMatrix[$x][$y] = 'o';
+ //break;
}
$mapMatrix[$x][$y] = 'o';
}
@@ -358,32 +338,22 @@ function executeTryMaze($mapMatrix, $intensity = 1) {
echo "B($bestx,$besty)\n:";
//Refresh walls (Remove obsolete walls)
- //Do a smidgens less than every other one.
- if ( ($iterations % 2 == 1 AND $iterations % 20 <> 1)
- AND ($wallcount > ($mapdata['walls'] * .6)) )
+ if ($iterations % 2 == 0 AND $wallcount > ($mapdata['walls'] * .6))
{
echo "RW";
- echo "MU";
- echo memory_get_usage(true);
- echo "MGPU:";
- //echo memory_get_peak_usage();
- //echo memory_get_peak_usage();
- echo "::";
$walllist = wallvalues($mapMatrix, $arrayWalls);
- $routes = $routes + $wallcount;
+ $routes++;
//Remove low valued wall;
$lowvaluewall = true;
$nullwalls = 0;
foreach ($walllist as $nwallposition => $wallvalue) {
- if ($wallvalue == 0 OR ($lowvaluewall == true AND $wallvalue == 1)) {
+ if ($wallvalue == 0 OR ($lowvaluewall == true AND $wallvalue == 1))
+ {
$nloc = explode(",", $nwallposition);
$x=$nloc[0];
$y=$nloc[1];
- if ($x == $bestx AND $y == $besty) {
- //echo "LVW USED";
- //$lowvaluewall = false;
+ if ($x == $bestx AND $y == $besty)
continue;
- }
$mapMatrix[$x][$y] = 'o';
unset($arrayWalls[$x][$y]);
$wallcount--;
@@ -407,14 +377,14 @@ function executeTryMaze($mapMatrix, $intensity = 1) {
$walllist = wallvalue($mapMatrix, "R");
$routes++;
foreach ($walllist as $nwallposition => $wallvalue) {
- if ($wallvalue < 1) {
+ if ($wallvalue <= 1) {
$nloc = explode(",", $nwallposition);
$i=$nloc[0];
$j=$nloc[1];
$mapMatrix[$i][$j] = 'o';
- unset($arrayWalls[$i][$j]);
+ unset($arrayWalls[$x][$y]);
$wallcount--;
- echo "LRM($i, $j)";
+ echo "RM($x, $y)";
}
}
echo "End Refresh walls to:[$wallcount]";
@@ -422,7 +392,7 @@ function executeTryMaze($mapMatrix, $intensity = 1) {
//If all walls are placed even after refresh, we're done
if ($wallcount >= $mapdata['walls']) {
- echo "END;($wallcount) <b>During $iterations iterations 'TryMaze' routed the path $routes times. Placing $wallcount walls</b>";
+ echo "END;($wallcount) <b>Solution routed the path $routes times.</b>";
break;
}
} while ($done == false);