<ul> <li><a href="#431">暗杀者</a></li> <li><a href="#432">风行者</a></li> </ul> </ul> </ul> <h4>Variety</h4> <table cellspacing="0" style="width:740px"> <?php $job = array(100 => "战士系基本职业<br />攻防力强。", 101 => "战士系高级职业<br />更高级的攻防。", 102 => "战士系高级职业<br />专职负责攻击的职业。<br />以牺牲自己体力的方式释放强力技能。<br /><a href=\"?manual#sacrier\">Sacrier的攻击</a>", 103 => "战士系高级职业<br />夺取对手的魔力,非正统意义上的战士。", 111 => "战士系最高级职业<br />更高级的防御及回复能力。", 112 => "战士系最高级职业<br />前后冲锋及降低对方攻防的战士。", 121 => "战士系最高级职业<br />更高的血量更高的伤害。", 122 => "战士系最高级职业<br />吸血攻击。", 131 => "战士系最高级职业<br />物理及魔法兼备的战士。", 132 => "战士系最高级职业<br />无视对方防御的攻击及灵活控场的战士。", 200 => "法师系基本职业。<br />攻击力弱但可使用强力的魔法。", 201 => "法师系高级职业。<br />可以使用更加强大的魔法。", 202 => "法师系高级职业。<br />可以花费时间来召唤强力的召唤兽。", 203 => "法师系高级职业。<br />降低对手的能力,制作僵尸。<br />使毒。", 211 => "法师系最高级职业。<br />可以使用最强大的魔法。", 212 => "法师系最高级职业。<br />擅长控场的输出魔法。", 221 => "法师系最高级职业。<br />可以花费时间来召唤更多更强力的召唤兽。", 222 => "法师系最高级职业。<br />专注于对单只召唤兽的辅助强化。", 231 => "法师系最高级职业。<br />更多的负面魔法,更便捷的毒。", 232 => "法师系最高级职业。<br />召唤更强大的亡灵,拥有瞬间夺取对方性命的魔法。", 300 => "牧师系基本职业。<br />回复我方的HP、SP。", 301 => "牧师系高级职业。<br />提高我方的能力值。", 302 => "牧师系高级职业。<br />具有一些特殊的支援能力。", 311 => "牧师系最高级职业。<br />更强的回复能力并能够复活队友。", 312 => "牧师系最高级职业。<br />召唤天界的生物帮助治疗及作战。", 321 => "牧师系最高级职业。<br />更强的支援能力。", 322 => "牧师系最高级职业。<br />注重攻击性魔法,对召唤兽的破坏能力较强。", 400 => "猎人基本职业。<br />拥有着不会被对方前卫影响的攻击技能。", 401 => "猎人高级职业。<br />可进行强力的攻击。", 402 => "猎人高级职业。<br />更快的召唤及擅长强化召唤兽。", 403 => "猎人高级职业。<br />善于使用毒的职业。", 411 => "猎人最高级职业。<br />强力的多次物理攻击。", 412 => "猎人最高级职业。<br />强力的后排单体点杀能力。", 421 => "猎人最高级职业。<br />更快的召唤及擅长强化召唤兽。", 422 => "猎人最高级职业。<br />擅长用鞭子攻击对手并能将对手固定住。", 431 => "猎人最高级职业。<br />单体物理杀伤,不可被保护。", 432 => "猎人最高级职业。<br />较强的速度提升能力。"); $JobSkill = array(100 => array(1001, 3110, 3120), 101 => array(1012, 1023, 1019), 102 => array(1100, 1114, 1118), 103 => array(1020, 2090, 3215), 111 => array(3201, 3114, 3124), 112 => array(1031, 1027, 1026), 121 => array(2058, 3206, 1122), 122 => array(2033, 2034), 131 => array(1030, 1038, 1029), 132 => array(3216, 3115, 1028), 200 => array(1002, 2011, 3011), 201 => array(2001, 2024, 2015), 202 => array(3020, 2500, 2501), 203 => array(2030, 2050, 2460), 211 => array(2046, 2048, 2047), 212 => array(2044, 2045, 2061), 221 => array(2505, 2506, 2507), 222 => array(3275, 3313, 3423), 231 => array(2064, 3202, 2072), 232 => array(2035, 2467, 2062), 300 => array(3000, 3101, 2100), 301 => array(2101, 3220, 2481), 302 => array(3050, 3055, 3060), 311 => array(3042, 3404, 3006), 312 => array(3104, 2482, 2483), 321 => array(2059, 3136, 3137), 322 => array(2063, 3311, 2103), 400 => array(2300, 2301, 2302), 401 => array(2305, 2306, 2307), 402 => array(2405, 2406, 3300), 403 => array(1200, 1207, 1204), 411 => array(2313, 2315, 2318), 412 => array(2311, 2317, 2312), 421 => array(2411, 2412, 2413), 422 => array(1245, 1246), 431 => array(1221, 1222, 1223), 432 => array(3138, 1224, 1225)); include DATA_SKILL; foreach ($job as $No => $exp) { $flag = $flag ^ 1; $css = $flag ? ' class="td6"' : ' style="padding:3px;"'; $JobData = LoadJobData($No); print "<tr>\n"; print '<td' . $css . ' valign="top"><a name="#' . $No . '"></a><span class="bold">'; print $JobData["name_male"]; if ($JobData["name_male"] !== $JobData["name_female"]) { print "<br />(" . $JobData["name_female"] . ")"; } print '</span></td>' . "\n"; print "<td{$css}>"; print '<img src="' . IMG_CHAR . $JobData["img_male"] . '" />'; print '<img src="' . IMG_CHAR . $JobData["img_female"] . '" />'; print "</td>"; print "<td{$css}>{$exp}"; print "</td>"; print "<tr><td{$css} colspan=\"3\"><div style=\"margin-left:30px\">"; $equip = "装备 : ";
<td class="a">type</td> <td class="a">lrn</td> <td class="a">Target</td> <td class="a">pow</td> <td class="a">hit</td> <td class="a">invalid</td> <td class="a">support</td> <td class="a">priority</td> <td class="a">charge</td> <td class="a">exp</td></tr>' . "\n"; $img_f = "../image/char/"; print '<table border="0" cellspacing="1"><tbody>'; //print($det); $detcount = 0; for ($no = 100; $no < 999; $no++) { $j = LoadJobData($no); if (!$j) { continue; } $detcount++; //if($detcount%10==0) print($det); print "<tr>"; print "<td>{$no}</td>"; //no print "<td>{$j[name_male]}</td>"; //name print "<td>{$j[coe][0]} : {$j[coe][1]}</td>"; //name print "<td><img src=\"{$img_f}{$j[img_male]}\"><img src=\"{$img_f}{$j[img_female]}\"></td>"; //no print "</tr>\n";
} } print "CharAmount :" . $charAmount . "<br>\n"; print "AveLevel :" . $totalLevel / $charAmount . "<br>\n"; print "AveStr :" . $totalStr / $charAmount . "<br>\n"; print "AveInt :" . $totalInt / $charAmount . "<br>\n"; print "AveDex :" . $totalDex / $charAmount . "<br>\n"; print "AveSpd :" . $totalSpd / $charAmount . "<br>\n"; print "AveLuk :" . $totalLuk / $charAmount . "<br>\n"; print "Male :{$totalMale}(" . $totalMale / $charAmount * 100 . "%)<br>\n"; print "Female :{$totalFemale}(" . $totalFemale / $charAmount * 100 . "%)<br>\n"; print "--- Job<br>\n"; arsort($totalJob); include DATA_JOB; foreach ($totalJob as $job => $amount) { $jobData = LoadJobData($job); print $job . "({$jobData[name_male]},{$jobData[name_female]})" . " : " . $amount . "(" . $amount / $charAmount * 100 . "%)<br>\n"; } } else { if ($_POST["ItemDataDetail"]) { include GLOBAL_PHP; $userFileList = glob(USER . "*"); $userAmount = count($userFileList); $items = array(); foreach ($userFileList as $user) { if (!($data = ParseFile($user . "/item.dat"))) { } foreach ($data as $itemno => $amount) { $items[$itemno] += $amount; } }
function CharStatShow() { $char =& $this->char[$_GET["char"]]; if (!$char) { print "Not exists"; return false; } // 戦闘用変数の設定。 $char->SetBattleVariable(); // 職データ $JobData = LoadJobData($char->job); // 転職可能な職 if ($JobData["change"]) { include_once DATA_CLASSCHANGE; foreach ($JobData["change"] as $job) { if (CanClassChange($char, $job)) { $CanChange[] = $job; } //転職できる候補。 } } ////// ステータス表示 ////////////////////////////// ?> <form action="?char=<?php print $_GET["char"]; ?> " method="post" style="padding:5px 0 0 15px"> <?php // その他キャラ print '<div style="padding-top:5px">'; foreach ($this->char as $key => $val) { //if($key == $_GET["char"]) continue;//表示中キャラスキップ echo "<a href=\"?char={$key}\">{$val->name}</a> "; } print "</div>"; ?> <h4>人物状态 <a href="?manual#charstat" target="_blank" class="a0">?</a></h4> <?php $char->ShowCharDetail(); // 改名 if ($this->item["7500"]) { print '<input type="submit" class="btn" name="rename" value="ChangeName">' . "\n"; } // ステータスリセット系 if ($this->item["7510"] || $this->item["7511"] || $this->item["7512"] || $this->item["7513"] || $this->item["7520"]) { print '<input type="submit" class="btn" name="showreset" value="重置">' . "\n"; } ?> <input type="submit" class="btn" name="byebye" value="剔除"> </form> <?php // ステータス上昇 //////////////////////////// if (0 < $char->statuspoint) { print <<<HTML \t<form action="?char={$_GET['char']}" method="post" style="padding:0 15px"> \t<h4>Status <a href="?manual#statup" target="_blank" class="a0">?</a></h4> HTML; $Stat = array("Str", "Int", "Dex", "Spd", "Luk"); print "Point : {$char->statuspoint}<br />\n"; foreach ($Stat as $val) { print "{$val}:\n"; print "<select name=\"up{$val}\" class=\"vcent\">\n"; for ($i = 0; $i < $char->statuspoint + 1; $i++) { print "<option value=\"{$i}\">+{$i}</option>\n"; } print "</select>"; } print "<br />"; print '<input type="submit" class="btn" name="stup" value="升值">'; print "\n"; print "</form>\n"; } ?> <form action="?char=<?php print $_GET["char"]; ?> " method="post" style="padding:0 15px"> <h4>行动模式 <a href="?manual#jdg" target="_blank" class="a0">?</a></h4> <?php // Action Pattern 行動判定 ///////////////////////// $list = JudgeList(); // 行動判定条件一覧 print "<table cellspacing=\"5\"><tbody>\n"; for ($i = 0; $i < $char->MaxPatterns(); $i++) { print "<tr><td>"; //----- No print $i + 1 . "</td><td>"; //----- JudgeSelect(判定の種類) print "<select name=\"judge" . $i . "\">\n"; foreach ($list as $val) { //判断のoption $exp = LoadJudgeData($val); print "<option value=\"{$val}\"" . ($char->judge[$i] == $val ? " selected" : NULL) . ($exp["css"] ? ' class="select0"' : NULL) . ">" . ($exp["css"] ? ' ' : ' ') . "{$exp[exp]}</option>\n"; } print "</select>\n"; print "</td><td>\n"; //----- 数値(量) print "<input type=\"text\" name=\"quantity" . $i . "\" maxlength=\"4\" value=\"" . $char->quantity[$i] . "\" style=\"width:56px\" class=\"text\">"; print "</td><td>\n"; //----- //SkillSelect(技の種類) print "<select name=\"skill" . $i . "\">\n"; foreach ($char->skill as $val) { //技のoption $skill = LoadSkillData($val); print "<option value=\"{$val}\"" . ($char->action[$i] == $val ? " selected" : NULL) . ">"; print $skill["name"] . (isset($skill["sp"]) ? " - (SP:{$skill[sp]})" : NULL); print "</option>\n"; } print "</select>\n"; print "</td><td>\n"; print '<input type="radio" name="PatternNumber" value="' . $i . '">'; print "</td></tr>\n"; } print "</tbody></table>\n"; ?> <input type="submit" class="btn" value="确定模式" name="ChangePattern"> <input type="submit" class="btn" value="设置 & 测试" name="TestBattle"> <a href="?simulate">Simulate</a><br /> <input type="submit" class="btn" value="切换模式" name="PatternMemo"> <input type="submit" class="btn" value="添加" name="AddNewPattern"> <input type="submit" class="btn" value="删除" name="DeletePattern"> </form> <form action="?char=<?php print $_GET["char"]; ?> " method="post" style="padding:0 15px"> <h4>位置 & 保护<a href="?manual#posi" target="_blank" class="a0">?</a></h4> <table><tbody> <tr><td>位置(Position) :</td><td><input type="radio" class="vcent" name="position" value="front" <?php $char->position == "front" ? print " checked" : NULL; ?> >前卫(Front)</td></tr> <tr><td></td><td><input type="radio" class="vcent" name="position" value="back" <?php $char->position == "back" ? print " checked" : NULL; ?> >后卫(Backs)</td></tr> <tr><td>护卫(Guarding) :</td><td> <select name="guard"> <?php // 前衛の時の後衛守り ////////////////////////////// $option = array("always" => "必定保护", "never" => "不保护", "life25" => "体力25%以上时保护", "life50" => "体力50%以上时保护", "life75" => "体力75%以上时保护", "prob25" => "25%的概率保护", "prpb50" => "50%的概率保护", "prob75" => "75%的概率保护"); foreach ($option as $key => $val) { print "<option value=\"{$key}\"" . ($char->guard == $key ? " selected" : NULL) . ">{$val}</option>"; } ?> </select> </td></tr> </tbody></table> <input type="submit" class="btn" value="设置"> </form> <?php // 装備中の物表示 //////////////////////////////// $weapon = LoadItemData($char->weapon); $shield = LoadItemData($char->shield); $armor = LoadItemData($char->armor); $item = LoadItemData($char->item); $handle = 0; $handle = $weapon["handle"] + $shield["handle"] + $armor["handle"] + $item["handle"]; ?> <div style="margin:0 15px"> <h4>装备<a href="?manual#equip" target="_blank" class="a0">?</a></h4> <div class="bold u">Current Equip's</div> <table> <tr><td class="dmg" style="text-align:right">Atk :</td><td class="dmg"><?php print $char->atk[0]; ?> </td></tr> <tr><td class="spdmg" style="text-align:right">Matk :</td><td class="spdmg"><?php print $char->atk[1]; ?> </td></tr> <tr><td class="recover" style="text-align:right">Def :</td><td class="recover"><?php print $char->def[0] . " + " . $char->def[1]; ?> </td></tr> <tr><td class="support" style="text-align:right">Mdef :</td><td class="support"><?php print $char->def[2] . " + " . $char->def[3]; ?> </td></tr> <tr><td class="charge" style="text-align:right">handle :</td><td class="charge"><?php print $handle; ?> / <?php print $char->GetHandle(); ?> </td></tr> </table> <form action="?char=<?php print $_GET["char"]; ?> " method="post"> <table> <tr><td class="align-right"> 武器:</td><td><input type="radio" class="vcent" name="spot" value="weapon"> <?php ShowItemDetail(LoadItemData($char->weapon)); ?> </td></tr><tr><td class="align-right"> 盾:</td><td><input type="radio" class="vcent" name="spot" value="shield"> <?php ShowItemDetail(LoadItemData($char->shield)); ?> </td></tr><tr><td class="align-right"> 甲:</td><td><input type="radio" class="vcent" name="spot" value="armor"> <?php ShowItemDetail(LoadItemData($char->armor)); ?> </td></tr><tr><td class="align-right"> 道具:</td><td><input type="radio" class="vcent" name="spot" value="item"> <?php ShowItemDetail(LoadItemData($char->item)); ?> </td></tr></tbody> </table> <input type="submit" class="btn" name="remove" value="卸下"> <input type="submit" class="btn" name="remove_all" value="全卸"> </form> </div> <?php // 装備可能な物表示 //////////////////////////////// if ($JobData["equip"]) { $EquipAllow = array_flip($JobData["equip"]); } else { $EquipAllow = array(); } //装備可能な物リスト(反転) $Equips = array("Weapon" => "2999", "Shield" => "4999", "Armor" => "5999", "Item" => "9999"); print "<div style=\"padding:15px 15px 0 15px\">\n"; print "\t<div class=\"bold u\">拥有的 & 容许装备的</div>\n"; if ($this->item) { include CLASS_JS_ITEMLIST; $EquipList = new JS_ItemList(); $EquipList->SetID("equip"); $EquipList->SetName("type_equip"); // JSを使用しない。 if ($this->no_JS_itemlist) { $EquipList->NoJS(); } reset($this->item); //これが無いと装備変更時に表示されない foreach ($this->item as $key => $val) { $item = LoadItemData($key); // 装備できないので次 if (!isset($EquipAllow[$item["type"]])) { continue; } $head = '<input type="radio" name="item_no" value="' . $key . '" class="vcent">'; $head .= ShowItemDetail($item, $val, true) . "<br />"; $EquipList->AddItem($item, $head); } print $EquipList->GetJavaScript("list0"); print $EquipList->ShowSelect(); print '<form action="?char=' . $_GET["char"] . '" method="post">' . "\n"; print '<div id="list0">' . $EquipList->ShowDefault() . '</div>' . "\n"; print '<input type="submit" class="btn" name="equip_item" value="装备">' . "\n"; print "</form>\n"; } else { print "暂无道具.<br />\n"; } print "</div>\n"; /* print("\t<table><tbody><tr><td colspan=\"2\">\n"); print("\t<span class=\"bold u\">Stock & Allowed to Equip</span></td></tr>\n"); if($this->item): reset($this->item);//これが無いと装備変更時に表示されない foreach($Equips as $key => $val) { print("\t<tr><td class=\"align-right\" valign=\"top\">\n"); print("\t{$key} :</td><td>\n"); while( substr(key($this->item),0,4) <= $val && substr(current($this->item),0,4) !== false ) { $item = LoadItemData(key($this->item)); if(!isset( $EquipAllow[ $item["type"] ] )) { next($this->item); continue; } print("\t"); print('<input type="radio" class="vcent" name="item_no" value="'.key($this->item).'">'); print("\n\t"); print(current($this->item)."x"); ShowItemDetail($item); print("<br>\n"); next($this->item); } print("\t</td></tr>\n"); } else: print("<tr><td>No items.</td></tr>"); endif; print("\t</tbody></table>\n"); */ ?> <form action="?char=<?php print $_GET["char"]; ?> " method="post" style="padding:0 15px"> <h4>技能<a href="?manual#skill" target="_blank" class="a0">?</a></h4> <?php // スキル表示 ////////////////////////////////////// //include(DATA_SKILL);//ActionPatternに移動 include_once DATA_SKILL_TREE; if ($char->skill) { print '<div class="u bold">已掌握的</div>'; print "<table><tbody>"; foreach ($char->skill as $val) { print "<tr><td>"; $skill = LoadSkillData($val); ShowSkillDetail($skill); print "</td></tr>"; } print "</tbody></table>"; print '<div class="u bold">新技能</div>'; print "技能点 : {$char->skillpoint}"; print "<table><tbody>"; $tree = LoadSkillTree($char); foreach (array_diff($tree, $char->skill) as $val) { print "<tr><td>"; $skill = LoadSkillData($val); ShowSkillDetail($skill, 1); print "</td></tr>"; } print "</tbody></table>"; //dump($char->skill); //dump($tree); print '<input type="submit" class="btn" name="learnskill" value="习得">' . "\n"; print '<input type="hidden" name="learnskill" value="1">' . "\n"; } // 転職 //////////////////////////////////////////// if ($CanChange) { ?> </form> <form action="?char=<?php print $_GET["char"]; ?> " method="post" style="padding:0 15px"> <h4>转职</h4> <table><tbody><tr> <?php foreach ($CanChange as $job) { print "<td valign=\"bottom\" style=\"padding:5px 30px;text-align:center\">"; $JOB = LoadJobData($job); print '<img src="' . IMG_CHAR . $JOB["img_" . ($char->gender ? "female" : "male")] . '">' . "<br />\n"; //画像 print '<input type="radio" value="' . $job . '" name="job">' . "<br />\n"; print $JOB["name_" . ($char->gender ? "female" : "male")]; print "</td>"; } ?> </tr></tbody></table> <input type="submit" class="btn" name="classchange" value="转职"> <input type="hidden" name="classchange" value="1"> <?php } ?> </form> <?php //その他キャラ print '<div style="padding:15px">'; foreach ($this->char as $key => $val) { //if($key == $_GET["char"]) continue;//表示中キャラスキップ echo "<a href=\"?char={$key}\">{$val->name}</a> "; } print '</div>'; }
function SetJobData() { if($this->job) { $jobdata = LoadJobData($this->job); $this->job_name = ($this->gender ? $jobdata["name_female"] : $jobdata["name_male"]); $this->img = ($this->gender ? $jobdata["img_female"] : $jobdata["img_male"]); } }