prepare("class1name", $controlrow["class1name"]); $renderer->prepare("class2name", $controlrow["class2name"]); $renderer->prepare("class3name", $controlrow["class3name"]); $renderer->prepare("diff1name", $controlrow["diff1name"]); $renderer->prepare("diff2name", $controlrow["diff2name"]); $renderer->prepare("diff3name", $controlrow["diff3name"]); $renderer->prepare("diff1mod", $controlrow["diff1mod"]); $renderer->prepare("diff2mod", $controlrow["diff2mod"]); $renderer->prepare("diff3mod", $controlrow["diff3mod"]); $renderer->prepare("gamesize", $controlrow["gamesize"]); $renderer->display("help"); } /** * List all items for the help */ function items() { global $renderer; $itemsquery = doquery("SELECT * FROM {{table}} ORDER BY id", "items"); $items = []; while ($itemsrow = mysqli_fetch_array($itemsquery)) { switch ($itemsrow["type"]) { case "1": $image = "weapon"; $power = "Attack"; break; case "2": $image = "armor"; $power = "Defense"; break; default: $image = "shield"; $power = "Defense"; break; } if ($itemsrow["special"] != "X") { $specialArray = explode(",", $itemsrow["special"]); $attr = match ($specialArray[0]) { "maxhp" => "Max HP", "maxmp" => "Max MP", "maxtp" => "Max TP", "goldbonus" => "Gold Bonus (%)", "expbonus" => "Experience Bonus (%)", "strength" => "Strength", "dexterity" => "Dexterity", "attackpower" => "Attack Power", "defensepower" => "Defense Power", default => $specialArray[0], }; $stat = ($specialArray[1] > 0) ? '+' . $specialArray[1] : $specialArray[1]; $specialEffect = "$attr $stat"; } else { $specialEffect = "None"; } $items[] = [ 'image' => $image, 'name' => $itemsrow["name"], 'buycost' => $itemsrow["buycost"], 'attribute' => $itemsrow["attribute"], 'power' => $power, 'specialEffect' => $specialEffect, ]; } $renderer->prepare('items', $items); $renderer->display("help_items"); } /** * List all levels for the help */ function levels() { global $renderer; global $controlrow; $classes = ['class1', 'class2', 'class3']; $spellsquery = doquery("SELECT * FROM {{table}} ORDER BY id", "spells"); $levelsData = []; $spells = []; while ($spellsrow = mysqli_fetch_array($spellsquery)) { $spells[$spellsrow["id"]] = $spellsrow; } //FIXME: Will be improved when classes will have their own table foreach ($classes as $index => $class) { $classIndex = $index + 1; $levelquery = doquery("SELECT id,{$classIndex}_exp,{$classIndex}_hp,{$classIndex}_mp,{$classIndex}_tp,{$classIndex}_strength,{$classIndex}_dexterity,{$classIndex}_spells FROM {{table}} ORDER BY id", "levels"); $levels = []; while ($levelsrow = mysqli_fetch_array($levelquery)) { $spell = ($levelsrow["{$classIndex}_spells"] != 0) ? $spells[$levelsrow["{$classIndex}_spells"]]["name"] : "None"; if ($levelsrow["id"] < 100) { $levels[] = [ 'id' => $levelsrow["id"], 'exp' => number_format($levelsrow["{$classIndex}_exp"]), 'hp' => $levelsrow["{$classIndex}_hp"], 'mp' => $levelsrow["{$classIndex}_mp"], 'tp' => $levelsrow["{$classIndex}_tp"], 'strength' => $levelsrow["{$classIndex}_strength"], 'dexterity' => $levelsrow["{$classIndex}_dexterity"], 'spell' => $spell, ]; } } $levelsData[$class] = [ 'name' => $controlrow["{$class}name"], 'levels' => $levels, ]; } $renderer->prepare('levelsData', $levelsData); $renderer->display("help_levels"); } /** * List all monsters for the help */ function monsters() { global $renderer; $monstersquery = doquery("SELECT * FROM {{table}} ORDER BY id", "monsters"); $monsters = []; while ($monstersrow = mysqli_fetch_array($monstersquery)) { if ($monstersrow["immune"] == 0) { $immune = "None"; } elseif ($monstersrow["immune"] == 1) { $immune = "Hurt"; } else { $immune = "Hurt & Sleep"; } $monsters[] = [ 'name' => $monstersrow["name"], 'maxhp' => $monstersrow["maxhp"], 'maxdam' => $monstersrow["maxdam"], 'armor' => $monstersrow["armor"], 'level' => $monstersrow["level"], 'maxexp' => $monstersrow["maxexp"], 'maxgold' => $monstersrow["maxgold"], 'immune' => $immune, ]; } $renderer->prepare('monsters', $monsters); $renderer->display("help_monsters"); } /** * List all spells for the help */ function spells() { global $renderer; $spellsquery = doquery("SELECT * FROM {{table}} ORDER BY id", "spells"); $spells = []; while ($spellrow = mysqli_fetch_array($spellsquery)) { $type = match ($spellrow["type"]) { "1" => "Heal", "2" => "Hurt", "3" => "Sleep", "4" => "+Damage (%)", "5" => "+Defense (%)", default => "Unknown", }; $spells[] = [ 'color' => $color, 'name' => $spellrow["name"], 'cost' => $spellrow["mp"], 'type' => $type, 'attribute' => $spellrow["attribute"], ]; } $renderer->prepare('spells', $spells); $renderer->display("help_spells"); }