function get_ex_def_array(&$pa, &$pd, $active) { if (eval(__MAGIC__)) { return $___RET_VALUE; } if (!\skillbase\skill_query(28, $pd) || !check_unlocked28($pd)) { return $chprocess($pa, $pd, $active); } $r = $chprocess($pa, $pd, $active); if (\itemmain\count_itmsk_num($pd['wepsk']) === 0) { array_push($r, 'A'); } return $r; }
function npcinfo_gen_item_description($itm, $itmk, $itme, $itms, $itmsk) { if (eval(__MAGIC__)) { return $___RET_VALUE; } echo $itm; if ($itmk != '') { echo '/' . \itemmain\parse_itmk_words($itmk); } if ($itme != '') { echo '/' . $itme; } if ($itms != '') { echo '/' . $itms; } if (\itemmain\count_itmsk_num($itmsk) > 0) { echo '/' . \itemmain\parse_itmsk_words($itmsk); } }
function gemming($t1, $t2) { if (eval(__MAGIC__)) { return $___RET_VALUE; } eval(import_module('sys', 'player', 'itemmain', 'logger')); if ($t1 != 'wep' && $t1 != 'arb' && $t1 != 'arh' && $t1 != 'ara' && $t1 != 'arf') { $log .= '你只能给你的武器/防具增加属性。<br>'; $mode = 'command'; return; } $itm =& ${$t1}; $itmk =& ${$t1 . 'k'}; $itme =& ${$t1 . 'e'}; $itms =& ${$t1 . 's'}; $itmsk =& ${$t1 . 'sk'}; if ($t1 == 'wep' || !$itme || !$itms) { if ($itmk == 'WN') { $log .= '你试图改造你的武器,但是你没有装备武器。<br>'; $mode = 'command'; return; } } else { if ($itms <= 0 && $itms != $nosta) { $log .= '本防具不存在,请重新选择。<br>'; $mode = 'command'; return; } } if (\itemmain\count_itmsk_num($itmsk) >= 6) { $log .= '你选择的物品属性数目已达到6个属性的上限,无法改造!<br>'; $mode = 'command'; return; } $t2 = (int) $t2; if ($t2 < 1 || $t2 > 6) { $log .= '你选择的宝石/方块不存在,请重新选择。<br>'; $mode = 'command'; return; } $gem =& ${'itm' . $t2}; $gemk =& ${'itmk' . $t2}; $geme =& ${'itme' . $t2}; $gems =& ${'itms' . $t2}; $gemsk =& ${'itmsk' . $t2}; if ($gems <= 0 && $gems != $nosta) { $log .= '你选择的宝石/方块不存在,请重新选择。<br>'; $mode = 'command'; return; } $buff = array(); if ($gem == '红色方块') { //火焰 if ($t1 == 'wep') { $buff = array(array(35, 'u')); } else { $buff = array(array(65, 'P'), array(35, 'U')); } } else { if ($gem == '黄色方块') { //重辅 if ($t1 == 'wep') { $buff = array(array(100, 'c')); } else { $buff = array(array(65, 'D'), array(35, 'c')); } } else { if ($gem == '蓝色方块') { //冻气 if ($t1 == 'wep') { $buff = array(array(35, 'i')); } else { $buff = array(array(65, 'G'), array(35, 'I')); } } else { if ($gem == '绿色方块') { //带毒 if ($t1 == 'wep') { $buff = array(array(35, 'p')); } else { $buff = array(array(65, 'K'), array(35, 'q')); } } else { if ($gem == '金色方块') { //电击 if ($t1 == 'wep') { $buff = array(array(35, 'e')); } else { $buff = array(array(65, 'C'), array(35, 'E')); } } else { if ($gem == '银色方块') { //音波 if ($t1 == 'wep') { $buff = array(array(35, 'w')); } else { $buff = array(array(65, 'F'), array(35, 'W')); } } else { if ($gem == '红宝石方块') { //火焰/灼焰 if ($t1 == 'wep') { $buff = array(array(65, 'u'), array(35, 'f')); } else { $buff = array(array(100, 'U')); } } else { if ($gem == '蓝宝石方块') { //冻气/冰华 if ($t1 == 'wep') { $buff = array(array(65, 'i'), array(35, 'k')); } else { $buff = array(array(100, 'I')); } } else { if ($gem == '绿宝石方块') { if ($t1 == 'wep') { $buff = array(array(15, 'u'), array(15, 'i'), array(15, 'p'), array(15, 'e'), array(15, 'w'), array(6, 'f'), array(6, 'k'), array(6, 'n'), array(6, 'N'), array(1, 'd')); } else { $buff = array(array(15, 'C'), array(15, 'D'), array(15, 'F'), array(15, 'G'), array(15, 'K'), array(15, 'P'), array(3, 'A'), array(3, 'a'), array(4, 'H')); } } else { if ($gem == '水晶方块') { //连击/HP制御 if ($t1 == 'wep') { $buff = array(array(1, 'r')); } else { $buff = array(array(5, 'H')); } } else { if ($gem == '黑色方块') { //贯穿 if ($t1 == 'wep') { $buff = array(array(5, 'n')); } else { $buff = array(array(5, 'm')); } } else { if ($gem == '白色方块') { //冲击 if ($t1 == 'wep') { $buff = array(array(5, 'N')); } else { $buff = array(array(5, 'M')); } } else { $log .= "你的物品不是合法的宝石或方块。<br>请参阅帮助获得所有合法的宝石或方块及它们的对应改造属性的列表。<br>"; $mode = 'command'; return; } } } } } } } } } } } } $dice = rand(1, 100); $flag = 0; $log .= "你将<span class=\"yellow\">{$gem}</span>镶嵌到了<span class=\"yellow\">{$itm}</span>上。<br>"; $lb = 10; $ub = 20; if (strpos($gem, '宝石') !== false) { $lb = round($lb * 1.75); $ub = round($ub * 1.75); } //宝石强化效果更高 foreach ($buff as $value) { if ($dice <= $value[0]) { $flag = 1; gemming_itme_buff($itm, $itmk, $itme, $itms, $itmsk, $lb, $ub); $log .= "同时,你的装备<span class=\"yellow\">{$itm}</span>还获得了“<span class=\"yellow\">{$itemspkinfo[$value[1]]}</span>”属性!<br>"; include_once GAME_ROOT . './include/news.func.php'; addnews(0, 'gemming', $name, $gem, $itm, $itemspkinfo[$value[1]]); if (strpos($itmsk, $value[1]) === false) { $itmsk .= $value[1]; } break; } else { $dice -= $value[0]; } } $expgain = rand(4, 7); if (!$flag) { $lb = round($lb / 2); $ub = round($ub / 2); gemming_itme_buff($itm, $itmk, $itme, $itms, $itmsk, $lb, $ub); $log .= "但是你的装备并没有获得额外属性。看起来技术还不过关的样子。<span class=\"yellow\">你决定痛定思痛,总结经验。</span><br>"; $rage += rand(5, 15); $rage = min($rage, 100); $expgain = rand(7, 11); } \lvlctl\getexp($expgain); $gems--; $log .= "消耗了一枚{$gem}。<br>"; if ($gems <= 0) { $log .= "{$gem}用完了。<br>"; $gem = ''; $gemk = ''; $gems = 0; $geme = 0; $gemsk = ''; } $mode = 'command'; }