";
if ($viewer)
echo "
Viewing
";
echo "
";
function displayUnlockItem($uType, $item) {
switch ($uType) {
case 1:
$r .= "
| ";
break;
case 2:
$r .= "
| ";
break;
case 3:
$r .= "
";
$r .= " $item[name] ";
$r .= " | ";
break;
}
return $r;
}
if (isset($unlocks)) {
echo "
Unlocks
";
//Set defaults.
//$defaultColor = array('id' => 0, 'subtype' => 0, 'name' => 'Default Charcoal', 'value' => '#666666');
//$defaultEmblem = array('id' => 0, 'subtype' => 0, 'name' => 'Default Blank', 'value' => 'blank.png');
//$defaultNameColor = array('id' => 0, 'subtype' => 0, 'name' => 'Default Gray', 'value' => '#cccccc');
//array_unshift($unlocks[1], $defaultColor);
//array_unshift($unlocks[2], $defaultEmblem);
//array_unshift($unlocks[3], $defaultNameColor);
$uTypeNames[1] = "Wall Colors";
$uTypeNames[2] = "Emblems";
$uTypeNames[3] = "Username Colors";
$uSubtypeNames[1][0] = "Darker";
$uSubtypeNames[1][1] = "Brighter";
$uSubtypeNames[2][0] = "Simple";
$uSubtypeNames[2][1] = "Complicated";
foreach ($unlocks as $uType => $unlock) {
$subtype = array();
echo "
$uTypeNames[$uType] unlocked:
";
foreach ($unlock as $item) {
$subtype[$item['subtype']] .= displayUnlockItem($uType, $item);
}
$uSubtypeNames[$uType][0];
foreach($subtype as $key => $content) {
$tmpName = $uSubtypeNames[$uType][$key];
if (count($subtype) > 1)
echo "
$tmpName";
echo "
";
}
}
}
echo "
";
//Type 1; wall unlocks:
if (isset($unlocks[1]) AND 1 == 2) {
echo "
Wall colors unlocked:
";
//Default color:
echo " | ";
foreach ($unlocks[1] as $item) {
echo displayUnlockItem(1, $item);
//echo " | ";
}
echo "
";
echo "
";
$item[id];
echo "
";
}
//Type 2; emblem unlocks:
if (isset($unlocks[2]) AND 1 == 2) {
//Default Emblem
$subtype[0] = "
| ";
foreach ($unlocks[2] as $item) {
$subtype[$item['subtype']] .= "
| ";
}
echo "
Emblems unlocked:
";
if ($subtype[0] !== '') {
echo "
Simple";
echo "
";
}
if ($subtype[1] !== '') {
echo "
Complicated";
echo "
";
}
}
//Type 3; display-name color unlocks.
if (isset($unlocks[3]) AND 1 == 2) {
echo "
Username colors unlocked:
";
echo "
";
echo "";
echo "Default";
echo "";
foreach ($unlocks[3] as $item) {
echo "";
echo " $item[name] ";
echo "";
}
echo "
";
echo "
";
}
if (!$viewer) {
echo "
";
}
echo "
";
echo "
Achievements
";
foreach($achievements as $aType => $a) {
$CPD = getAchievementsArray($aType);
$aLevel = $a['level'];
$aCompleted = $a['dateCompleted'];
$aCompleted = relative_date(strtotime($aCompleted));
if (!isset($uStats[$aType]))
$uStats[$aType] = getAchievementCurrency($userID, $aType);
$uCurrent = $uStats[$aType];
$nUCurrent = number_format($uCurrent);
$aTypeNames[1] = "Path Career Level $aLevel!";
$aTypeNames[2] = "Mazes Career Level $aLevel!";
$aTypeNames[3] = "Maze Mastery Level $aLevel!";
$aTypeNames[4] = "Champion Level $aLevel!";
$aTypeNames[32] = 'Tutorial Complete!';
$aTypeCurrency[1] = "total moves mazed";
$aTypeCurrency[2] = "mazes played";
$aTypeCurrency[3] = "mazes with (tied) top score";
$aTypeCurrency[4] = "maze wins";
$name = $aTypeNames[$aType];
$currency = $aTypeCurrency[$aType];
echo "
$name
";
if ($aType >= 32) {
echo "Completed $aCompleted";
continue;
}
$lastlevel = true;
foreach ($CPD as $item) {
list($required, $unlockType, $unlockValue, $unlockName) = $item;
if ($debug)
echo "At $required:
".displayUnlock($unlockType, $unlockValue, $unlockName)."
";
$nRequired = number_format($required);
if ($required > $uCurrent) {
$lastlevel = false;
if (!$debug)
break;
}
}
if ($lastlevel) {
echo "Completed all levels $aCompleted";
echo "
$nUCurrent $currency";
continue;
}
$percent = round($uCurrent / $required * 100, 1);
//$percentLeft = 100 - $percent;
echo "Last level earned $aCompleted";
echo "
Currently you have $nUCurrent $currency";
echo "
";
echo "Next level at $nRequired will unlock: ";
echo displayUnlock($unlockType, $unlockValue, $unlockName);
}
if (false) {
echo "
Mazes Career: $UTotalSolutions
You have played $UTotalSolutions mazes.
Wall embelms unlocked:
|
";
}
function displayUnlock($uType, $uValue, $uName) {
switch ($uType) {
case 1:
$r .= "$uName Wall Color!";
$r .= "";
break;
case 2:
$r .= "$uName Emblem!";
$r .= "";
break;
case 3:
$r .= "
$uName Username color!";
break;
}
return $r;
}
?>
";
echo "
";
echo "
";
htmlFooter();
// ----- Functions
//Thank you:
//http://snippets.dzone.com/posts/show/196
function relative_date($time) {
$today = strtotime(date('M j, Y'));
$reldays = ($time - $today)/86400;
if ($reldays >= 0 && $reldays < 1) {
return 'Today';
} else if ($reldays >= 1 && $reldays < 2) {
return 'Tomorrow';
} else if ($reldays >= -1 && $reldays < 0) {
return 'Yesterday';
}
if (abs($reldays) < 7) {
if ($reldays > 0) {
$reldays = floor($reldays);
return 'in ' . $reldays . ' day' . ($reldays != 1 ? 's' : '');
} else {
$reldays = abs(floor($reldays));
return $reldays . ' day' . ($reldays != 1 ? 's' : '') . ' ago';
}
}
if (abs($reldays) < 182) {
return date('l, F j',$time ? $time : time());
} else {
return date('l, F j, Y',$time ? $time : time());
}
}
?>