summaryrefslogtreecommitdiffstats
path: root/includes/mapoftheday.php
blob: 62b44a49e220c34b16c2f561d9151bf4be32989a (plain)
1
<?PHP

include_once('maps.php');
include_once('db.inc.php');

//Select from current day.
function getMapOfTheDay() {
	$sql = "
	select `ID`, `code` from `maps`
	WHERE ( 
		DAY(dateCreated) = DAY(NOW()) 
		AND 
		MONTH(dateCreated) = MONTH(NOW()) 
		AND
		YEAR(dateCreated) = YEAR(NOW())
	)
	";
	$result = mysql_query($sql);
	//No map for today?
	if (mysql_num_rows($result) == 0) {
		// If you want to modify the maps created! This is the line
		$map = GenerateMap(rand(13, 18), rand(10, 14), rand(6, 9));
		$code = GenerateMapCode($map);
		$sql = "INSERT INTO `maps` (`code`)
		VALUES ('$code')";
		
		mysql_query($sql);
		$r['code'] = $code;
		$r['map'] = $map;
		$r['id'] = mysql_insert_id();
		return $r;
	}
	$r['code'] = mysql_result($result, 0, 'code');
	$r['map'] = GenerateMapByCode($r['code']);
   $r['id'] = mysql_result($result, 0, 'ID');
	return $r;
}


function mapOfTheDay($type = 1) {
	$sql = "
	select maps.ID, maps.code
	FROM `mapOfTheDay`, `maps`
	WHERE `mapDate` = CURDATE() AND
	`mapType` = $type AND
	mapID = maps.ID
	";
	$result = mysql_query($sql);
	//No map for today?
	if (mysql_num_rows($result) == 0) {
		// If you want to modify the maps created! This is the line
		//GenerateMap($rows, $cols, $rockchance, $numBlocks = -1, $cp = -1, $tp = -1) {
		switch ($type) {
			case 1:		//Easy
			$map = GenerateMap(13, 7, 12, rand(7,10), rand(0, 2), 0);
			break;
			
			case 2:		//Normal
			$map = GenerateMap(15, 9, 7, rand(11,13), rand(1,2) + rand(0,1), rand(0,1));
			break;
			
			case 3:		//Hard
			$map = GenerateMap(19, 9, rand(7, 9), rand(13,16), rand(2,5), rand(1,2));
			break;
			
			case 4:		//Full random map
			//Get the current day as int.
			$numday = date('w');
			$numday = intval($numday);
			
			switch ($numday) {
				case 0:	//Sunday
				//Thirty
				$map = GenerateMap(
					18, 14, 20						,  		//width, height, rocks
					weight(30)						,			//Walls
					weight(1)						,			//Checkpoints
					weight(1)									//Teleports
				);	
				break;
				
				case 1:	//Monday
				//Simple
				$map = GenerateMap(
					18, 9, 7							,  		//width, height, rocks
					weight(15,16,17)				,			//Walls
					weight(0)						,			//Checkpoints
					weight(0)									//Teleports
				);	
				break;
				
				case 2:	//Tuesday
				//ABC's
				$map = GenerateMap(
					19, 11, 12						,  		//width, height, rocks
					weight(20,21,22,22,23)		,			//Walls
					weight(3)						,			//Checkpoints
					weight(0)									//Teleports
				);	
				break;
				
				case 3:	//Wednesday
				//Tele Madness
				$map = GenerateMap(
					17, 12, 10					,  		//width, height, rocks
					weight(17,18)				,			//Walls
					weight(1)					,			//Checkpoints
					weight(5)								//Teleports
				);
				break;

				case 4:	//Thursday
				//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
				);		
				break;
				
				case 5:	//Friday
				//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
				);	
				
				break;
				
				case 6:	//Saturday
				//Dual map
				$dualmapa[] = "s???????????????????f";
				$dualmapa[] = "s???????????????????f";
				$dualmapa[] = "s???????????????????f";
				$dualmapa[] = "s???????????????????f";
				$dualmapa[] = "s???????????????????f";
				$dualmapa[] = "s???????????????????f";
				$dualmapa[] = "oqqqqqqqqqqqqqqqqqqqq";
				$dualmapa[] = "oqqqqqqqqqqqqqqqqqqqq";
				$dualmapb[] = "s???????????????????f";
				$dualmapb[] = "s???????????????????f";
				$dualmapb[] = "s???????????????????f";
				$dualmapb[] = "s???????????????????f";
				$dualmapb[] = "s???????????????????f";
				$dualmapb[] = "s???????????????????f";

				$dualmapa = insertPoint($dualmapa, 'abc');
				$dualmapb = insertPoint($dualmapb, 'abc');
				$dualmap = array_merge($dualmapa, $dualmapb);
				$dualmap = insertPoint($dualmap, 'tu');

				$myparams['checkpoints'] = 3;
				$myparams['teleports'] = 1;
				$myparams['rockchance'] = 9;
				$myparams['walls'] = weight(20, 20, 21, 21, 22, 23);
				$map = GenerateShapedMap($dualmap, $myparams);
				break;
			}
			
			
			break;
			default:
			$map = GenerateMap(rand(13, 18), rand(10, 14), rand(6, 9));
			break;
		}
		$code = GenerateMapCode($map);
		$sql = "INSERT INTO `maps` (`code`)
		VALUES ('$code')";
		
		mysql_query($sql);
		$mapID = mysql_insert_id();
		$r['code'] = $code;
		$r['map'] = $map;
		$r['id'] = $mapID;
		
		$sql = "INSERT INTO `mapOfTheDay` (`mapID`, `mapType`, `mapDate`)
		VALUES ('$mapID', '$type', CURDATE()) ";
		mysql_query($sql);
		return $r;
	}
	$r['code'] = mysql_result($result, 0, 'code');
	$r['map'] = GenerateMapByCode($r['code']);
   $r['id'] = mysql_result($result, 0, 'ID');
	return $r;
}

// RMA # CT1160811
// 97686

//Select from yesterday
function getYesterdaysMap() {
	$sql = "
	select `ID`, `code` from `maps`
	WHERE ( 
		DAY(dateCreated) = DAY(NOW()) - 1 
		AND 
		MONTH(dateCreated) = MONTH(NOW()) 
		AND
		YEAR(dateCreated) = YEAR(NOW())
	)
	";
	$result = mysql_query($sql);
	//No map for today?
	if (mysql_num_rows($result) == 0) {
		return -1;
	}
	$r['code'] = mysql_result($result, 0, 'code');
   $r['id'] = mysql_result($result, 0, 'ID');
	return $r;
}



?>