//tags that must appear in the header $templatetags = array("title", "headscript", "script"); while (list($key, $val) = each($templatetags)) { if (strpos($template['header'], "{" . $val . "}") === false) { $templatemessage .= "You do not have {" . $val . "} defined in your header\n"; } } //tags that must appear in the footer $templatetags = array(); while (list($key, $val) = each($templatetags)) { if (strpos($template['footer'], "{" . $val . "}") === false) { $templatemessage .= "You do not have {" . $val . "} defined in your footer\n"; } } //tags that may appear anywhere but must appear $templatetags = array("nav", "stats", "petition", "motd", "mail", "copyright", "source"); while (list($key, $val) = each($templatetags)) { if (strpos($template['header'], "{" . $val . "}") === false && strpos($template['footer'], "{" . $val . "}") === false) { $templatemessage .= "You do not have {" . $val . "} defined in either your header or footer\n"; } } if ($templatemessage != "") { echo "<b>You have one or more errors in your template page!</b><br>" . nl2br($templatemessage); $template = loadtemplate("yarbrough.htm"); } $races = array(1 => "Troll", 2 => "Elf", 3 => "Human", 4 => "Dwarf", 0 => "Unknown", 50 => "Hoversheep"); $logd_version = "TDS-0.01"; $session['user']['laston'] = date("Y-m-d H:i:s"); $playermount = getmount($session['user']['hashorse']); $titles = array(0 => array("Farmboy", "Farmgirl"), 1 => array("Page", "Page"), 2 => array("Squire", "Squire"), 3 => array("Gladiator", "Gladiatrix"), 4 => array("Legionnaire", "Legioness"), 5 => array("Centurion", "Centurioness"), 6 => array("Sir", "Madam"), 7 => array("Reeve", "Reeve"), 8 => array("Steward", "Stewardess"), 9 => array("Mayor", "Mayoress"), 10 => array("Baron", "Baroness"), 11 => array("Count", "Countess"), 12 => array("Viscount", "Viscountess"), 13 => array("Marquis", "Marquisette"), 14 => array("Chancellor", "Chancelress"), 15 => array("Prince", "Princess"), 16 => array("King", "Queen"), 17 => array("Emperor", "Empress"), 18 => array("Angel", "Angel"), 19 => array("Archangel", "Archangel"), 20 => array("Principality", "Principality"), 21 => array("Power", "Power"), 22 => array("Virtue", "Virtue"), 23 => array("Dominion", "Dominion"), 24 => array("Throne", "Throne"), 25 => array("Cherub", "Cherub"), 26 => array("Seraph", "Seraph"), 27 => array("Demigod", "Demigoddess"), 28 => array("Titan", "Titaness"), 29 => array("Archtitan", "Archtitaness"), 30 => array("Undergod", "Undergoddess")); $beta = getsetting("beta", 0) == 1 || $session['user']['beta'] == 1;
output("`7Merick looks at you sorta sideways. \"`&'Ere, whadday ya think yeer doin'? Cannae ye see that {$mount['mountname']} costs `^{$mount['mountcostgold']}`& gold an' `%{$mount['mountcostgems']}`& gems?`7\""); } else { if ($session['user']['hashorse'] > 0) { output("`7You hand over the reins to your {$playermount['mountname']} and the purchase price of your new critter, and Merick leads out a fine new `&{$mount['mountname']}`7 for you!`n`n"); } else { output("`7You hand over the purchase price of your new critter, and Merick leads out a fine `&{$mount['mountname']}`7 for you!`n`n"); } $session['user']['hashorse'] = $mount['mountid']; $goldcost = $repaygold - $mount['mountcostgold']; $session['user']['gold'] += $goldcost; $gemcost = $repaygems - $mount['mountcostgems']; $session['user']['gems'] += $gemcost; debuglog(($goldcost <= 0 ? "spent " : "gained ") . abs($goldcost) . " gold and " . ($gemcost <= 0 ? "spent " : "gained ") . abs($gemcost) . " gems trading for a new mount"); $session['bufflist']['mount'] = unserialize($mount['mountbuff']); // Recalculate so the selling stuff works right $playermount = getmount($mount['mountid']); $repaygold = round($playermount['mountcostgold'] * 2 / 3, 0); $repaygems = round($playermount['mountcostgems'] * 2 / 3, 0); } } } elseif ($_GET['op'] == 'sellmount') { $session['user']['gold'] += $repaygold; $session['user']['gems'] += $repaygems; debuglog("gained {$repaygold} gold and {$repaygems} gems selling their mount"); unset($session['bufflist']['mount']); $session['user']['hashorse'] = 0; output("`7As sad as it is to do so, you give up your precious {$playermount['mountname']}, and a lone tear escapes your eye.`n`n"); output("However, the moment you spot the " . ($repaygold > 0 ? "`^{$repaygold}`7 gold " . ($repaygems > 0 ? " and " : "") : "") . ($repaygems > 0 ? "`%{$repaygems}`7 gems" : "") . ", you find that you're feeling quite a bit better."); } if ($session['user']['hashorse'] > 0) { output("`n`nMerick offers you `^{$repaygold}`& gold and `%{$repaygems}`& gems for your {$playermount['mountname']}.");
function mountupgrade_dohook($hookname, $args) { global $session; if (is_module_active("prizemount")) { $prizemount = get_module_setting("mountid", "prizemount"); if ($prizemount) { $prizemounts = array($prizemount => 1); while ($prizemount) { $prizemount = get_module_objpref("mounts", $prizemount, "upgradeto", "mountupgrade"); if ($prizemount) { $prizemounts[$prizemount] = 1; } } } } $upgradeto = get_module_objpref("mounts", $session['user']['hashorse'], "upgradeto"); if (get_module_objpref("mounts", $session['user']['hashorse'], "lose")) { $upgradeto = -1; } $upgradetext = get_module_objpref("mounts", $session['user']['hashorse'], "upgradetext"); $reqdks = get_module_objpref("mounts", $session['user']['hashorse'], "reqdks"); $reqlevels = get_module_objpref("mounts", $session['user']['hashorse'], "reqlevels"); $reqdays = get_module_objpref("mounts", $session['user']['hashorse'], "reqdays"); $reqffs = get_module_objpref("mounts", $session['user']['hashorse'], "reqffs"); $upgrade = get_module_pref("upgrade"); $metdks = get_module_pref("metdks"); $metlevels = get_module_pref("metlevels"); $metdays = get_module_pref("metdays"); $metffs = get_module_pref("metffs"); switch ($hookname) { case "pre-newday": if ($upgradeto && $metdks >= $reqdks && $metlevels >= $reqlevels && $metdays >= $reqdays && $metffs >= $reqdks) { set_module_pref("upgrade", 1); set_module_pref("upgradetext", $upgradetext); set_module_pref("metdks", 0); set_module_pref("metlevels", 0); set_module_pref("metdays", 0); set_module_pref("metffs", 0); global $playermount; $debugmount1 = $playermount['mountname']; if ($upgradeto == -1) { strip_buff("mount"); $session['user']['hashorse'] = 0; debuglog("upgraded their {$debugmount1} to nothing."); } else { $session['user']['hashorse'] = $upgradeto; $playermount = getmount($session['user']['hashorse']); $debugmount2 = $playermount['mountname']; debuglog("upgraded their {$debugmount1} to {$debugmount2}."); } } break; case "newday": if ($upgrade) { output("`n`^%s`0`n", stripslashes(translate_inline(get_module_pref("upgradetext")))); $mount = getmount($session['user']['hashorse']); apply_buff("mount", unserialize($mount['mountbuff'])); set_module_pref("upgrade", 0); } if ($upgradeto && $reqdays) { set_module_pref("metdays", $metdays + 1); } break; case "dragonkill": if ($upgradeto) { if ($reqdks) { set_module_pref("metdks", $metdks + 1); } if ($reqlevels) { set_module_pref("metlevels", $metlevels + 1); } } break; case "battle-victory": static $runonce = false; if ($runonce !== false) { break; } $runonce = true; if ($upgradeto) { global $options; if ($reqffs && ($options['type'] == "forest" || $options['type'] == "travel")) { set_module_pref("metffs", $metffs + 1); } if ($reqlevels && $options['type'] == "train") { set_module_pref("metlevels", $metlevels + 1); } } break; case "battle-defeat": static $runonce = false; if ($runonce !== false) { break; } $runonce = true; global $options; if ($upgradeto && $reqffs && ($options['type'] == "forest" || $options['type'] == "travel")) { set_module_pref("metffs", $metffs + 1); } break; case "showformextensions": $args['mount'] = "mountupgrade_showform"; break; case "boughtmount": case "soldmount": set_module_pref("upgrade", 0); set_module_pref("upgradetext", ""); set_module_pref("metdks", 0); set_module_pref("metlevels", 0); set_module_pref("metdays", 0); set_module_pref("metffs", 0); break; case "gainprizemount": $oldmount = get_module_pref("prizemount"); $prizemount = get_module_pref("mountid", "prizemount"); if ($prizemount != $oldmount) { while ($prizemount) { $prizemount = get_module_objpref("mounts", $prizemount, "upgradeto", "mountupgrade"); if ($prizemount == $oldmount) { $args['prizemount'] = $prizemount; break; } } } if ($upgradeto) { set_module_pref("savedks", $metdks); set_module_pref("savelevels", $metlevels); set_module_pref("savedays", $metdays); set_module_pref("saveffs", $metffs); } break; case "loseprizemount": set_module_pref("metdks", get_module_pref("savedks")); set_module_pref("metlevels", get_module_pref("savelevels")); set_module_pref("metdays", get_module_pref("savedays")); set_module_pref("metffs", get_module_pref("saveffs")); if ($upgradeto) { set_module_pref("prizemount", $session['user']['hashorse']); set_module_pref("savedks", $metdks); set_module_pref("savelevels", $metlevels); set_module_pref("savedays", $metdays); set_module_pref("saveffs", $metffs); } break; } return $args; }