示例#1
1
文件: main.php 项目: winddramon/dts
function check_skill400_proc(&$pa, &$pd, $active)
{
    if (eval(__MAGIC__)) {
        return $___RET_VALUE;
    }
    eval(import_module('skill400', 'player', 'logger'));
    if (!\skillbase\skill_query(400, $pa) || !check_unlocked400($pa)) {
        return array();
    }
    $l400 = \skillbase\skill_getvalue(400, 'lvl', $pa);
    if (rand(0, 99) < $procrate[$l400]) {
        if ($active) {
            if ($l400 >= 5) {
                $log .= "<span class=\"yellow\">你朝{$pd['name']}打出了猛烈的一击!</span><br>";
            } else {
                $log .= "<span class=\"yellow\">你朝{$pd['name']}打出了重击!</span><br>";
            }
        } else {
            if ($l400 == 5) {
                $log .= "<span class=\"yellow\">{$pa['name']}朝你打出了猛烈的一击!</span><br>";
            } else {
                $log .= "<span class=\"yellow\">{$pa['name']}朝你打出了重击!</span><br>";
            }
        }
        $dmggain = (100 + $attgain[$l400]) / 100;
        return array($dmggain);
    }
    return array();
}
示例#2
0
文件: main.php 项目: sillycross/dts
function strike_prepare(&$pa, &$pd, $active)
{
    if (eval(__MAGIC__)) {
        return $___RET_VALUE;
    }
    if ($pa['bskill'] != 46) {
        return $chprocess($pa, $pd, $active);
    }
    if (!\skillbase\skill_query(46, $pa) || !check_unlocked46($pa)) {
        eval(import_module('logger'));
        $log .= '你尚未解锁这个技能!';
        $pa['bskill'] = 0;
    } else {
        $remtime = (int) get_remaintime46($pa);
        if ($remtime >= 1) {
            eval(import_module('logger'));
            if ($active) {
                $log .= "<span class=\"lime\">你对{$pd['name']}发动了技能「暴打」!</span><br>";
            } else {
                $log .= "<span class=\"lime\">{$pa['name']}对你发动了技能「暴打」!</span><br>";
            }
            $remtime--;
            \skillbase\skill_setvalue(46, 'rmtime', $remtime, $pa);
            $pd['skill46_flag'] = 1;
            addnews(0, 'bskill46', $pa['name'], $pd['name']);
        } else {
            if ($active) {
                eval(import_module('logger'));
                $log .= '怒气不足或其他原因不能发动。<br>';
            }
            $pa['bskill'] = 0;
        }
    }
    $chprocess($pa, $pd, $active);
}
示例#3
0
文件: main.php 项目: winddramon/dts
function upgrade12()
{
    if (eval(__MAGIC__)) {
        return $___RET_VALUE;
    }
    eval(import_module('player', 'logger'));
    if (!\skillbase\skill_query(12)) {
        $log .= '你没有这个技能!<br>';
        return;
    }
    if ($skillpoint < 1) {
        $log .= '技能点不足。<br>';
        return;
    }
    eval(import_module('wound'));
    $flag = false;
    $log .= "消耗了<span class='lime'>1</span>点技能点,<br>";
    for ($i = 0; $i < strlen($inf); $i++) {
        $log .= "{$infname[$inf[$i]]}状态解除了。<br>";
        $flag = true;
    }
    $inf = '';
    if (!$flag) {
        $log .= '但是什么也没发生。<br>';
    }
    $skillpoint--;
    $inf = '';
}
示例#4
0
文件: main.php 项目: nahakyuu/dts
function apply_total_damage_modifier_down(&$pa, &$pd, $active)
{
    if (eval(__MAGIC__)) {
        return $___RET_VALUE;
    }
    if (!\skillbase\skill_query(439, $pd) || !check_unlocked439($pd)) {
        return $chprocess($pa, $pd, $active);
    }
    if ($pa['dmg_dealt'] <= 0) {
        return $chprocess($pa, $pd, $active);
    }
    eval(import_module('logger'));
    $var_439 = \skillbase\skill_getvalue(439, 'type', $pd);
    if ($var_439 != $pa['wep_kind']) {
        \skillbase\skill_setvalue(439, 'type', $pa['wep_kind'], $pd);
    } else {
        \skillbase\skill_setvalue(439, 'type', '0', $pd);
        if ($active) {
            $log .= "<span class=\"yellow\">黄翔把你的攻击方式ban了,造成的伤害降低75%!</span><br>";
        } else {
            $log .= "<span class=\"yellow\">黄翔把敌人的攻击方式ban了,造成的伤害降低75%!</span><br>";
        }
        $pa['dmg_dealt'] = ceil($pa['dmg_dealt'] / 4);
    }
    $chprocess($pa, $pd, $active);
}
示例#5
0
文件: main.php 项目: sillycross/dts
function get_physical_dmg_multiplier(&$pa, &$pd, $active)
{
    if (eval(__MAGIC__)) {
        return $___RET_VALUE;
    }
    $r = array();
    if (\skillbase\skill_query(262, $pa) && check_unlocked262($pa) && $pa['user_commanded'] == 1 && $active && !$pa['is_counter'] && (!isset($pa['sk262flag']) || !$pa['sk262flag'])) {
        eval(import_module('logger'));
        $ct = floor(getmicrotime() * 1000);
        $st = (int) \skillbase\skill_getvalue(262, 'ct', $pa);
        $t = $ct - $st;
        //$log.='t='.$t;
        $pretime = skill262_get_pretime($pa);
        $dmgperc = skill262_get_dmgperc($pa);
        $maxdmgperc = skill262_get_maxdmgperc($pa);
        //$log.=' pretime='.$pretime.' dmgperc='.$dmgperc.' maxdmgperc='.$maxdmgperc;
        if ($t < $pretime) {
            $z = 0;
        } else {
            $z = ($t - $pretime) / 1000 * $dmgperc;
            $z = min($z, $maxdmgperc);
            $z = round($z);
            $log .= '<span class="lime">你积蓄力量打出了致命的一拳!伤害增加了' . $z . '%!</span><br>';
        }
        $r = array(1 + $z / 100);
    }
    return array_merge($r, $chprocess($pa, $pd, $active));
}
示例#6
0
文件: main.php 项目: winddramon/dts
function upgrade227()
{
    if (eval(__MAGIC__)) {
        return $___RET_VALUE;
    }
    eval(import_module('player', 'logger', 'input'));
    $skillpara1 = (int) $skillpara1;
    if (!\skillbase\skill_query(227) || !check_unlocked227($sdata)) {
        $log .= '你没有这个技能。<br>';
        return;
    }
    if (!\sklearn_util\sklearn_basecheck($skillpara1) || !sklearn_checker227('is_learnable', $skillpara1)) {
        $log .= '你不可以学习这个技能!<br>';
        return;
    }
    if (!sklearn_checker227('now_learnable', $skillpara1)) {
        $log .= '现在尚没有足够资源学习这个技能!<br>';
        return;
    }
    if (\skillbase\skill_query($skillpara1)) {
        $log .= '你已经拥有这个技能了!<br>';
        return;
    }
    if ((int) \skillbase\skill_getvalue(227, 'l') != 0) {
        $log .= '你已经学习过一个技能了!<br>';
        return;
    }
    \skillbase\skill_setvalue(227, 'l', $skillpara1);
    \skillbase\skill_acquire($skillpara1);
    $log .= '学习成功。<br>';
}
示例#7
0
文件: main.php 项目: DTS-China/dts
function kill(&$pa, &$pd)
{
    if (eval(__MAGIC__)) {
        return $___RET_VALUE;
    }
    $chprocess($pa, $pd);
    eval(import_module('sys', 'logger'));
    if (in_array($pd['state'], array(20, 21, 22, 23, 24, 25, 27, 29))) {
        if (\skillbase\skill_query(58, $pd) && (int) \skillbase\skill_getvalue(58, 'r', $pd) == 0) {
            \skillbase\skill_setvalue(58, 'r', '1', $pd);
            if ($pd['state'] == 27 && !$pd['sourceless']) {
                $log .= "<span class=\"lime\">但是,由于你及时按下了BOMB键,你原地满血复活了!</span><br>";
                $w_log = "<span class=\"lime\">但是,由于{$pd['name']}及时按下了BOMB键,其原地满血复活了!</span><br>";
                \logger\logsave($pa['pid'], $now, $w_log, 'b');
            } else {
                //击杀复活提示将接管player_kill_enemy进行
            }
            $pd['state'] = 0;
            $pd['hp'] = $pd['mhp'];
            $pd['skill58_flag'] = 1;
            if ($pd['type'] == 0) {
                $alivenum++;
            }
            save_gameinfo();
            addnews($now, 'revival', $pd['name']);
            //满血复活时加成效果(这个其实是技能“新生”的内容,但直接做在一起好了)
            $pd['mhp'] += $pd['lvl'] * 2;
            $pd['hp'] += $pd['lvl'] * 2;
            $pd['def'] += $pd['lvl'] * 5;
        }
    }
}
示例#8
0
文件: main.php 项目: nahakyuu/dts
function bufficons_list()
{
    if (eval(__MAGIC__)) {
        return $___RET_VALUE;
    }
    eval(import_module('sys', 'player'));
    \player\update_sdata();
    if (\skillbase\skill_query(456, $sdata) && check_unlocked456($sdata)) {
        eval(import_module('skill456'));
        $skill456_time = $now - $starttime;
        $z = array('disappear' => 0);
        if ($skill456_time < $skill456_act_time) {
            $z['clickable'] = 1;
            $z['style'] = 1;
            $z['totsec'] = $skill456_act_time;
            $z['nowsec'] = $skill456_time;
            $skill456_rm = $skill456_act_time - $skill456_time;
            $z['hint'] = "技能「突击」";
        } else {
            $z['clickable'] = 0;
            $z['style'] = 3;
            $z['activate_hint'] = "技能「突击」生效时间已经结束";
        }
        \bufficons\bufficon_show('img/skill456.gif', $z);
    }
    $chprocess();
}
示例#9
0
function apply_damage(&$pa, &$pd, $active)
{
    if (eval(__MAGIC__)) {
        return $___RET_VALUE;
    }
    if (\skillbase\skill_query(412, $pd) && check_unlocked412($pd) && $pa['dmg_dealt'] > 0) {
        eval(import_module('logger'));
        $t = calculate_mobius_function($pa['dmg_dealt']);
        if ($t == 0) {
            //无伤害
            $log .= '<span class="lime">只见敌人周围突然出现了奇怪的呈U形的力场,你的伤害似乎被力场完全吸收了。</span><br>';
            $pa['dmg_dealt'] = 0;
        } else {
            if ($t == 1) {
                //有效
                $log .= '<span class="lime">只见敌人周围突然出现了奇怪的呈U形的力场,但是你的攻击势不可挡地击穿了它。</span><br>';
            } else {
                //反弹233
                $log .= '<span class="lime">只见敌人周围突然出现了奇怪的呈U形的力场,你造成的伤害竟然被反弹了回来!</span><br>';
                $log .= "<span class=\"red\">你受到了{$pa['dmg_dealt']}点伤害!</span><br>";
                \attack\post_damage_news($pd, $pa, 1 - $active, $pa['dmg_dealt']);
                $pa['hp'] -= $pa['dmg_dealt'];
                if ($pa['hp'] < 0) {
                    $pa['hp'] = 0;
                }
                $pa['dmg_dealt'] = 0;
                if ($pa['hp'] <= 0) {
                    $pa['deathmark'] = 39;
                    \attack\player_kill_enemy($pd, $pa, 1 - $active);
                }
            }
        }
    }
    $chprocess($pa, $pd, $active);
}
示例#10
0
文件: main.php 项目: sillycross/dts
function check_skill35_proc(&$pa, &$pd, $active)
{
    if (eval(__MAGIC__)) {
        return $___RET_VALUE;
    }
    eval(import_module('skill35', 'player', 'logger'));
    if (!\skillbase\skill_query(35, $pa) || !check_unlocked35($pa)) {
        return array();
    }
    if ($pa['wepk'] != 'WP') {
        return array();
    }
    if (rand(0, 99) < calculate_skill35_proc_rate($pa, $pd, $active)) {
        if ($active) {
            $log .= "<span class=\"yellow\">你朝着{$pd['name']}打出了凶猛的一击!<span class=\"clan\">敌人被打晕了过去!</span></span><br>";
        } else {
            $log .= "<span class=\"yellow\">{$pa['name']}朝你打出了凶猛的一击!<span class=\"clan\">你被打晕了过去!</span></span><br>";
        }
        $clv = (int) \skillbase\skill_getvalue(35, 'lvl', $pa);
        $dmggain = (100 + $attgain[$clv]) / 100;
        \skill602\set_stun_period($sk35_stuntime[$clv] * 1000, $pd);
        \skill602\send_stun_battle_news($pa['name'], $pd['name']);
        return array($dmggain);
    }
    return array();
}
示例#11
0
文件: main.php 项目: sillycross/dts
function strike_prepare(&$pa, &$pd, $active)
{
    if (eval(__MAGIC__)) {
        return $___RET_VALUE;
    }
    if ($pa['bskill'] != 36) {
        return $chprocess($pa, $pd, $active);
    }
    if (!\skillbase\skill_query(36, $pa) || !check_unlocked36($pa)) {
        eval(import_module('logger'));
        $log .= '你尚未解锁这个技能!';
        $pa['bskill'] = 0;
    } else {
        $rcost = get_rage_cost36($pa);
        if ($pa['rage'] >= $rcost && $pa['wepk'] == 'WP') {
            eval(import_module('logger'));
            if ($active) {
                $log .= "<span class=\"lime\">你对{$pd['name']}发动了技能「偷袭」!</span><br>";
            } else {
                $log .= "<span class=\"lime\">{$pa['name']}对你发动了技能「偷袭」!</span><br>";
            }
            $pa['rage'] -= $rcost;
            addnews(0, 'bskill36', $pa['name'], $pd['name']);
        } else {
            if ($active) {
                eval(import_module('logger'));
                $log .= '怒气不足或其他原因不能发动。<br>';
            }
            $pa['bskill'] = 0;
        }
    }
    $chprocess($pa, $pd, $active);
}
示例#12
0
文件: main.php 项目: sillycross/dts
function apply_damage(&$pa, &$pd, $active)
{
    if (eval(__MAGIC__)) {
        return $___RET_VALUE;
    }
    if (\skillbase\skill_query(469, $pd) && ceil($pd['mhp'] * 0.9) <= $pa['dmg_dealt'] && $pa['dmg_dealt'] < $pd['mhp']) {
        eval(import_module('logger'));
        //$pa['dmg_dealt']=$pd['mhp'];
        $pd['hp'] = 0;
        $pd['deathmark'] = 40;
        $suicidedmg = round($pd['mhp'] * 1.1);
        $pa['hp'] -= $suicidedmg;
        if ($active) {
            $log .= "<span class=\"yellow\">你暴风骤雨般的攻击将对方打得毫无还手之力,<br>\n\t\t\t\t\t正当你欺身向前,准备了结对方的性命时,对方忽然振臂高呼:</span><br>\n\t\t\t\t\t<span class=\"clan\">“安拉胡阿克巴!”</span><br>\n\t\t\t\t\t<span class=\"yellow\">你这才发现对方腰间绑着一排明晃晃的炸药,但他已猛地扑了上来。</span><br>\n\t\t\t\t\t猛烈的爆炸对你造成了<span class=\"red\">{$suicidedmg}</span>点伤害!<br>";
        } else {
            $log .= "<span class=\"yellow\">你被对方暴风骤雨般的攻击打得毫无还手之力。<br>\n\t\t\t\t\t对方欺身向前,准备了结你的性命。 你不甘就这么死去,振臂高呼到:</span><br>\n\t\t\t\t\t<span class=\"clan\">“安拉胡阿克巴!”</span><br>\n\t\t\t\t\t<span class=\"yellow\">对方这才发现你腰间绑着一排明晃晃的炸药。你用尽最后的力气拉响了引线,猛地扑了上去。</span><br>\n\t\t\t\t\t猛烈的爆炸对<span class=\"yellow\">" . $pa['name'] . "</span>造成了<span class=\"red\">{$suicidedmg}</span>点伤害!<br>";
        }
        if ($pa['hp'] < 0) {
            $pa['hp'] = 0;
        }
        if ($pa['hp'] <= 0) {
            $pa['deathmark'] = 41;
            //\attack\player_kill_enemy($pd, $pa, 1-$active);
        }
    }
    return $chprocess($pa, $pd, $active);
}
示例#13
0
文件: main.php 项目: DTS-China/dts
function strike_prepare(&$pa, &$pd, $active)
{
    if (eval(__MAGIC__)) {
        return $___RET_VALUE;
    }
    if ($pa['bskill'] != 60) {
        return $chprocess($pa, $pd, $active);
    }
    if (!\skillbase\skill_query(60, $pa) || !check_unlocked60($pa)) {
        eval(import_module('logger'));
        $log .= '你尚未解锁这个技能!';
        $pa['bskill'] = 0;
    } else {
        $rcost = get_rage_cost60($pa);
        if ($pa['rage'] >= $rcost) {
            eval(import_module('logger'));
            if ($active) {
                $log .= "<span class=\"lime\">你对{$pd['name']}发动了技能「恐惧」!</span><br>";
            } else {
                $log .= "<span class=\"lime\">{$pa['name']}对你发动了技能「恐惧」!</span><br>";
            }
            $pa['rage'] -= $rcost;
            $pa['skill60_flag'] = floor((1 - min(1, $pd['hp'] / $pd['mhp'])) * 100);
            addnews(0, 'bskill60', $pa['name'], $pd['name']);
        } else {
            if ($active) {
                eval(import_module('logger'));
                $log .= '怒气不足或其他原因不能发动。<br>';
            }
            $pa['bskill'] = 0;
        }
    }
    $chprocess($pa, $pd, $active);
}
示例#14
0
文件: main.php 项目: sillycross/dts
function strike_prepare(&$pa, &$pd, $active)
{
    if (eval(__MAGIC__)) {
        return $___RET_VALUE;
    }
    if ($pa['bskill'] != 253) {
        return $chprocess($pa, $pd, $active);
    }
    if (!\skillbase\skill_query(253, $pa) || !check_unlocked253($pa)) {
        eval(import_module('logger'));
        $log .= '你尚未解锁这个技能!';
        $pa['bskill'] = 0;
    } else {
        $rcost = get_rage_cost253($pa);
        if ($pa['rage'] >= $rcost) {
            eval(import_module('logger'));
            if ($active) {
                $log .= "<span class=\"lime\">你对{$pd['name']}发动了技能「天威」!</span><br>";
            } else {
                $log .= "<span class=\"lime\">{$pa['name']}对你发动了技能「天威」!</span><br>";
            }
            $pa['rage'] -= $rcost;
            addnews(0, 'bskill253', $pa['name'], $pd['name']);
            $pd['old_hp'] = $pd['hp'];
            //记录战斗开始时的hp,用于判定返还怒气
        } else {
            if ($active) {
                eval(import_module('logger'));
                $log .= '怒气不足或其他原因不能发动。<br>';
            }
            $pa['bskill'] = 0;
        }
    }
    $chprocess($pa, $pd, $active);
}
示例#15
0
文件: main.php 项目: winddramon/dts
function check_skill401_proc(&$pa, &$pd, $active)
{
    if (eval(__MAGIC__)) {
        return $___RET_VALUE;
    }
    eval(import_module('skill401', 'player', 'logger'));
    if (!\skillbase\skill_query(401, $pd) || !check_unlocked401($pd)) {
        return array();
    }
    $l401 = \skillbase\skill_getvalue(401, 'lvl', $pd);
    if ($l401 > 0) {
        if ($active) {
            if ($l401 == 5) {
                $log .= "<span class=\"yellow\">{$pd['name']}的护甲使其几乎刀枪不入!</span><br>";
            } else {
                $log .= "<span class=\"yellow\">{$pd['name']}坚硬的护甲减少了你造成的物理伤害!</span><br>";
            }
        } else {
            if ($l401 == 5) {
                $log .= "<span class=\"yellow\">你的护甲使你几乎刀枪不入!</span><br>";
            } else {
                $log .= "<span class=\"yellow\">你坚硬的护甲减少了{$pa['name']}造成的物理伤害!</span><br>";
            }
        }
        $dmggain = (100 - $dmgreduce[$l401]) / 100;
        return array($dmggain);
    }
    return array();
}
示例#16
0
文件: main.php 项目: sillycross/dts
function strike_finish(&$pa, &$pd, $active)
{
    if (eval(__MAGIC__)) {
        return $___RET_VALUE;
    }
    if (\skillbase\skill_query(263, $pd) && check_unlocked263($pd)) {
        if (\skillbase\skill_query(261, $pd)) {
            $t = (int) \skillbase\skill_getvalue(261, 'lastuse', $pd);
            if ($t > 0) {
                $chance = 35;
            } else {
                $chance = 20;
            }
        } else {
            $chance = 20;
        }
        if ($pd['club'] != 19) {
            $chance = 10;
        }
        if (rand(0, 99) < $chance) {
            eval(import_module('logger'));
            $dmgred = min($pd['wp'], 800);
            if ($active) {
                $log .= '<span class="yellow">敌人精湛的格斗技术抵挡了' . $dmgred . '点伤害!</span><br>';
            } else {
                $log .= '<span class="yellow">你精湛的格斗技术抵挡了' . $dmgred . '点伤害!</span><br>';
            }
            $pa['dmg_dealt'] -= $dmgred;
            if ($pa['dmg_dealt'] < 1) {
                $pa['dmg_dealt'] = 1;
            }
        }
    }
    return $chprocess($pa, $pd, $active);
}
示例#17
0
文件: main.php 项目: winddramon/dts
function apply_total_damage_modifier_down(&$pa, &$pd, $active)
{
    if (eval(__MAGIC__)) {
        return $___RET_VALUE;
    }
    if (!\skillbase\skill_query(415, $pd) || !check_unlocked415($pd)) {
        return $chprocess($pa, $pd, $active);
    }
    eval(import_module('logger'));
    $var_415 = \skillbase\skill_getvalue(415, 'lvl', $pd);
    $pa['dmg_dealt'] = (int) $pa['dmg_dealt'];
    if ($var_415 == 0 && $pa['dmg_dealt'] % 2 == 0) {
        $tz = 1;
        while ($pa['dmg_dealt'] > 0 && $pa['dmg_dealt'] % 2 == 0) {
            $pa['dmg_dealt'] = floor($pa['dmg_dealt'] / 2);
            $tz *= 2;
        }
        if ($tz > 1) {
            if ($active) {
                $log .= "<span class=\"yellow\">你的攻击被敌人的技能「影像」防御了,伤害降低至{$tz}分之1!</span><br>";
            } else {
                $log .= "<span class=\"yellow\">敌人的攻击被你的技能「影像」防御了,伤害降低至{$tz}分之1!</span><br>";
            }
        }
    }
    if ($var_415 == 1 && $pa['dmg_dealt'] % 1000 != 666) {
        $pa['dmg_dealt'] = 0;
        if ($active) {
            $log .= "<span class=\"yellow\">敌人的技能「影像」使你的攻击没有造成任何效果!</span><br>";
        } else {
            $log .= "<span class=\"yellow\">你的技能「影像」使敌人的攻击没有造成任何效果!</span><br>";
        }
    }
    $chprocess($pa, $pd, $active);
}
示例#18
0
文件: main.php 项目: winddramon/dts
function upgrade43()
{
    if (eval(__MAGIC__)) {
        return $___RET_VALUE;
    }
    eval(import_module('player', 'logger'));
    if (!\skillbase\skill_query(43) || !check_unlocked43($sdata)) {
        $log .= '你没有这个技能。<br>';
        return;
    }
    eval(import_module('input'));
    $val = (int) $skillpara1;
    if ($val != 1 && $val != 2) {
        $log .= '参数不合法。<br>';
        return;
    }
    if ($val == 1) {
        if (!\skillbase\skill_query(41)) {
            \skillbase\skill_acquire(41);
        }
        \skill41\unlock41($sdata);
    } else {
        if (!\skillbase\skill_query(42)) {
            \skillbase\skill_acquire(42);
        }
        \skill42\unlock42($sdata);
    }
    \skillbase\skill_lost(43);
    $log .= '选择成功。<br>';
}
示例#19
0
文件: main.php 项目: DTS-China/dts
function wele()
{
    if (eval(__MAGIC__)) {
        return $___RET_VALUE;
    }
    eval(import_module('sys', 'player', 'itemmain', 'logger'));
    if ($wepk == 'WN' || !$wepe || !$weps) {
        $log .= '<span class="red">你没有装备武器,无法改造!</span><br />';
        $mode = 'command';
        return;
    }
    if (strpos($wepsk, 'j') !== false) {
        $log .= '多重武器不能改造。<br>';
        $mode = 'command';
        return;
    }
    if (\skillbase\skill_query(230)) {
        $position = 0;
        foreach (array(1, 2, 3, 4, 5, 6) as $imn) {
            global ${'itm' . $imn}, ${'itmk' . $imn}, ${'itme' . $imn}, ${'itms' . $imn}, ${'itmsk' . $imn};
            if (strpos(${'itmk' . $imn}, 'B') === 0 && ${'itme' . $imn} > 0) {
                $position = $imn;
                break;
            }
        }
        if ($position) {
            if (strpos($wepsk, 'e') !== false) {
                $log .= '<span class="red">武器已经带电,不用改造!</span><br />';
                $mode = 'command';
                return;
            } elseif (strlen($wepsk) >= 5) {
                $log .= '<span class="red">武器属性数目达到上限,无法改造!</span><br />';
                $mode = 'command';
                return;
            }
            ${'itms' . $position} -= 1;
            $itm = ${'itm' . $position};
            $log .= "<span class=\"yellow\">用{$itm}改造了{$wep},{$wep}增加了电击属性!</span><br />";
            $wep = '电气' . $wep;
            $wepsk .= 'e';
            if (${'itms' . $position} == 0) {
                $log .= "<span class=\"red\">{$itm}</span>用光了。<br />";
                ${'itm' . $position} = ${'itmk' . $position} = ${'itmsk' . $position} = '';
                ${'itme' . $position} = ${'itms' . $position} = 0;
            }
            $mode = 'command';
            return;
        } else {
            $log .= '<span class="red">你没有电池,无法改造武器!</span><br />';
            $mode = 'command';
            return;
        }
    } else {
        $log .= '<span class="red">你没有这个技能!</span><br />';
        $mode = 'command';
        return;
    }
}
示例#20
0
文件: main.php 项目: winddramon/dts
function get_final_dmg_multiplier(&$pa, &$pd, $active)
{
    if (eval(__MAGIC__)) {
        return $___RET_VALUE;
    }
    $r = array();
    if (\skillbase\skill_query(408, $pa) && check_unlocked408($pa)) {
        eval(import_module('logger', 'skill408', 'weapon'));
        $l408 = \skillbase\skill_getvalue(408, 'lvl', $pa);
        $var_408 = 0;
        if ($l408 == 1) {
            if ($pa['wep_kind'] == 'P') {
                $var_408 = 20;
            }
            if ($pa['wep_kind'] == 'N') {
                $var_408 = 40;
            }
        } else {
            if ($l408 == 2) {
                if ($pa['wep_kind'] == 'G') {
                    $var_408 = 20;
                }
            } else {
                if ($l408 == 3) {
                    if ($pa['wep_kind'] == 'K') {
                        $var_408 = 20;
                    }
                    if ($pa['wep_kind'] == 'C') {
                        $var_408 = 15;
                    }
                } else {
                    if ($l408 == 4) {
                        if ($pa['wep_kind'] == 'D') {
                            $var_408 = 15;
                        }
                    } else {
                        if ($l408 == 5) {
                            $var_408 = $rangeinfo[$pd['wepk'][1]] * 3;
                            if ($var_408 == 0) {
                                $var_408 = 24;
                            }
                        }
                    }
                }
            }
        }
        if ($var_408 > 0) {
            if ($active) {
                $log .= "<span class=\"yellow\">「菁英」使你造成的最终伤害提高了{$var_408}%!</span><br>";
            } else {
                $log .= "<span class=\"yellow\">「菁英」使敌人造成的最终伤害提高了{$var_408}%!</span><br>";
            }
            $r = array(1 + $var_408 / 100);
        }
    }
    return array_merge($r, $chprocess($pa, $pd, $active));
}
示例#21
0
文件: main.php 项目: DTS-China/dts
function get_ex_dmg_restriction(&$pa, &$pd, $active, $key)
{
    if (eval(__MAGIC__)) {
        return $___RET_VALUE;
    }
    if (\skillbase\skill_query(238, $pa) && check_unlocked238($pa) && $key == 'e') {
        return 0;
    }
    return $chprocess($pa, $pd, $active, $key);
}
示例#22
0
文件: main.php 项目: DTS-China/dts
function check_in_shop_area($p)
{
    if (eval(__MAGIC__)) {
        return $___RET_VALUE;
    }
    if (\skillbase\skill_query(68)) {
        return 1;
    }
    return $chprocess($p);
}
示例#23
0
文件: main.php 项目: DTS-China/dts
function lvlup(&$pa)
{
    if (eval(__MAGIC__)) {
        return $___RET_VALUE;
    }
    if (\skillbase\skill_query(13, $pa)) {
        $pa['wp'] += rand(4, 6);
    }
    $chprocess($pa);
}
示例#24
0
文件: main.php 项目: sillycross/dts
function init_battle($ismeet)
{
    if (eval(__MAGIC__)) {
        return $___RET_VALUE;
    }
    $chprocess($ismeet);
    if (\skillbase\skill_query(252)) {
        apply_sk252_effect();
    }
}
示例#25
0
文件: main.php 项目: winddramon/dts
function lvlup(&$pa)
{
    if (eval(__MAGIC__)) {
        return $___RET_VALUE;
    }
    if (\skillbase\skill_query(67, $pa) && check_unlocked67($pa)) {
        $pa['money'] += $pa['club'] == 11 ? 200 : 150;
    }
    $chprocess($pa);
}
示例#26
0
文件: main.php 项目: winddramon/dts
function get_itemuse_coldtime(&$item)
{
    if (eval(__MAGIC__)) {
        return $___RET_VALUE;
    }
    if (\skillbase\skill_query(417)) {
        return $chprocess($item) * 2;
    }
    return $chprocess($item);
}
示例#27
0
文件: main.php 项目: sillycross/dts
function calculate_ex_single_dmg_multiple(&$pa, &$pd, $active, $key)
{
    if (eval(__MAGIC__)) {
        return $___RET_VALUE;
    }
    if (!\skillbase\skill_query(465, $pd) || $key != 'f' && $key != 'u') {
        return $chprocess($pa, $pd, $active, $key);
    }
    return $chprocess($pa, $pd, $active, $key) * 1.5;
}
示例#28
0
文件: main.php 项目: winddramon/dts
function calculate_attack_weapon_skill_gain(&$pa, &$pd, $active)
{
    if (eval(__MAGIC__)) {
        return $___RET_VALUE;
    }
    if (\skillbase\skill_query(229, $pa) && check_unlocked229($pa)) {
        return 1 + $chprocess($pa, $pd, $active);
    }
    return $chprocess($pa, $pd, $active);
}
示例#29
0
文件: main.php 项目: winddramon/dts
function get_edible_hpup(&$theitem)
{
    if (eval(__MAGIC__)) {
        return $___RET_VALUE;
    }
    if (\skillbase\skill_query(31, $pa)) {
        return round($chprocess($theitem) * 2.5);
    }
    return $chprocess($theitem);
}
示例#30
0
文件: main.php 项目: nahakyuu/dts
function calculate_ex_single_dmg_multiple(&$pa, &$pd, $active, $key)
{
    if (eval(__MAGIC__)) {
        return $___RET_VALUE;
    }
    if (\skillbase\skill_query(434, $pa) && check_unlocked434($pa) && $key == 'd') {
        return $chprocess($pa, $pd, $active, $key) * 1.7;
    }
    return $chprocess($pa, $pd, $active, $key);
}