Exemplo n.º 1
0
function battle_wrapper(&$pa, &$pd, $active)
{
    if (eval(__MAGIC__)) {
        return $___RET_VALUE;
    }
    battle_prepare($pa, $pd, $active);
    battle($pa, $pd, $active);
    battle_finish($pa, $pd, $active);
    //写回数据库
    eval(import_module('sys', 'logger', 'player', 'metman'));
    if ($active) {
        if ($pd['hp'] <= 0 && $pa['hp'] > 0) {
            $pa['action'] = 'corpse' . $pd['pid'];
        }
        if ($pa['hp'] <= 0 && $pd['hp'] > 0 && $pd['action'] == '' && $pd['type'] == 0) {
            $pd['action'] = 'pacorpse' . $pa['pid'];
        }
    } else {
        if ($pd['hp'] <= 0 && $pa['hp'] > 0 && $pa['action'] == '' && $pa['type'] == 0) {
            $pa['action'] = 'pacorpse' . $pd['pid'];
        }
        if ($pa['hp'] <= 0 && $pd['hp'] > 0) {
            $pd['action'] = 'corpse' . $pa['pid'];
        }
    }
    if ($active) {
        $edata = $pd;
        \player\player_save($pa);
        \player\player_save($pd);
        \metman\metman_load_playerdata($pd);
        if ($pd['type'] == 0) {
            save_enemy_battlelog($pd);
        }
        \player\load_playerdata($pa);
    } else {
        $edata = $pa;
        \player\player_save($pa);
        \player\player_save($pd);
        \metman\metman_load_playerdata($pa);
        if ($pa['type'] == 0) {
            save_enemy_battlelog($pa);
        }
        \player\load_playerdata($pd);
    }
    $battle_title = '战斗发生';
    $main = MOD_METMAN_MEETMAN;
    \metman\init_battle(1);
    if (substr($action, 0, 6) == 'corpse') {
        \corpse\findcorpse($edata);
    } else {
        include template(MOD_BATTLE_BATTLERESULT);
        $cmd = ob_get_contents();
        ob_clean();
        $action = '';
    }
    if (defined('MOD_CLUBBASE')) {
        include template(MOD_CLUBBASE_NPCSKILLPAGE);
    }
}
Exemplo n.º 2
0
function findenemy($edata)
{
    if (eval(__MAGIC__)) {
        return $___RET_VALUE;
    }
    eval(import_module('sys', 'logger', 'player', 'metman'));
    \player\update_sdata();
    $battle_title = '发现敌人';
    \metman\init_battle();
    $log .= "你发现了敌人<span class=\"red\">{$tdata['name']}</span>!<br>对方好像完全没有注意到你!<br>";
    include template(MOD_ENEMY_BATTLECMD);
    $cmd = ob_get_contents();
    ob_clean();
    $main = MOD_METMAN_MEETMAN;
    return;
}
Exemplo n.º 3
0
function findteam(&$edata)
{
    if (eval(__MAGIC__)) {
        return $___RET_VALUE;
    }
    eval(import_module('sys', 'player', 'metman', 'logger'));
    extract($edata, EXTR_PREFIX_ALL, 'w');
    $action = 'team' . $edata['pid'];
    $battle_title = '发现队友';
    \metman\init_battle(1);
    $log .= "你发现了队友<span class=\"yellow\">{$tdata['name']}</span>!<br>";
    include template(MOD_TEAM_FINDTEAM);
    $cmd = ob_get_contents();
    ob_clean();
    $main = MOD_METMAN_MEETMAN;
    return;
}
Exemplo n.º 4
0
function prepare_initial_response_content()
{
    if (eval(__MAGIC__)) {
        return $___RET_VALUE;
    }
    eval(import_module('sys', 'player', 'metman'));
    $cmd = $main = '';
    if ((strpos($action, 'corpse') === 0 || strpos($action, 'pacorpse') === 0) && $gamestate < 40) {
        $cid = strpos($action, 'corpse') === 0 ? str_replace('corpse', '', $action) : str_replace('pacorpse', '', $action);
        if ($cid) {
            $result = $db->query("SELECT * FROM {$tablepre}players WHERE pid='{$cid}' AND hp=0");
            if ($db->num_rows($result) > 0) {
                $edata = $db->fetch_array($result);
                extract($edata, EXTR_PREFIX_ALL, 'w');
                findcorpse($edata);
                \metman\init_battle(1);
                $main = MOD_METMAN_MEETMAN;
            }
        }
    }
    $chprocess();
}