// napadaem zaodno proverjaem celq rjadom li
include_once 'modules/f_mag_decl_attack.php';
// $to dolzhen bytq uzhe gdeto dan
if (!mag_decl_attack($LOGIN, $to)) {
    put_g_error('рядом такого нет!');
}
// nanosim uron:
include_once 'modules/f_do_mag_dmg.php';
// spell tozhe dolzhen bytq dan
do_mag_dmg($spell, $LOGIN, $to);
// nanosim effekty:
include_once 'modules/f_mag_add_effects.php';
mag_add_effects($spell, $to);
// nakonec proverka,zhiv li:
include_once 'modules/f_check_dead.php';
if (check_dead($to)) {
    // uvelichenie reitinga pobed:
    $lvl = $p['stats'][0];
    // snimem karmu
    $id = is_player($to);
    if ($id) {
        do_mysql("UPDATE players SET playerkill = playerkill + 1 WHERE id_player = '" . $p['id_player'] . "';");
        // dela s karmoj svjazanye
        $q = do_mysql("SELECT status1, karma, location, clan FROM players WHERE id_player = '" . $id . "';");
        $def = mysql_fetch_assoc($q);
        if ($def['status1'][0] != 1 && $def['status1'][0] != 2 && substr($def['location'], 0, 4) != 'pris' && substr($def['location'], 0, 3) != 'are') {
            // proverim togda vojnu klanovuju -
            $att['clan'] = $p['clan'];
            $def['clan'] = explode('|', $def['clan']);
            $q = do_mysql("SELECT politics FROM clans WHERE clanname = '" . $att['clan'][0] . "';");
            if (!mysql_num_rows($q)) {
function npc_try_do_dmg($off, $pass)
{
    //$off = preg_replace ('/[^a-z0-9_\.]/i', '', $off);
    //$pass = preg_replace ('/[^a-z0-9_\.]/i', '', $pass);
    if (!$off || !$pass) {
        return 0;
    }
    $id = is_npc($off);
    if (!$id) {
        return 0;
    }
    include_once 'modules/f_check_dead.php';
    // proverjaem uspeshnostq ataki:
    include_once 'modules/f_is_attack_successful.php';
    $result = is_attack_successful($off, $pass);
    if ($result) {
        // vse, delaem uron
        include_once 'modules/f_do_dmg.php';
        if ($result > 1) {
            $PAR = 0;
        } else {
            $PAR = 1;
        }
        do_dmg($off, $pass, 'NONE', $PAR);
    } else {
        return 0;
    }
    ///////////////////////////////////////////////////////////////////////////////////
    // podvodim itogi
    // zhiv li
    include_once 'modules/f_check_dead.php';
    if (check_dead($pass)) {
        // esli komu-to prinadlezhit, to obnovitq i ego reiting
        $q = do_mysql("SELECT belongs FROM npc WHERE id_npc = '" . $id . "';");
        $bel = mysql_result($q, 0);
        if ($bel) {
            $id = is_player($pass);
            if ($id) {
                do_mysql("UPDATE players SET playerkill = playerkill + 1 WHERE login = '******';");
            } else {
                do_mysql("UPDATE players SET monsterkill = monsterkill + 1 WHERE login = '******';");
            }
        }
        // uvelichenie reitinga pobed:
        if (is_player($pass)) {
            do_mysql("UPDATE npc SET playerkill = playerkill + 1 WHERE id_npc = '" . $id . "';");
        } else {
            do_mysql("UPDATE npc SET monsterkill = monsterkill + 1 WHERE id_npc = '" . $id . "';");
        }
        include_once 'modules/f_make_die.php';
        make_die($pass);
        return 1;
    }
    ///////////////////////////////////////////////////////////////////////////////////
    // otvetka, esli reakcija pozvolit
    include_once 'modules/f_comp_reaction.php';
    if (comp_reaction($pass, $off) == 1) {
        // proverjaem uspeshnostq ataki:
        include_once 'modules/f_is_attack_successful.php';
        $result = is_attack_successful($pass, $off, 1);
        if ($result) {
            // vse, delaem uron
            include_once 'modules/f_do_dmg.php';
            if ($result > 1) {
                $PAR = 0;
            } else {
                $PAR = 1;
            }
            do_dmg($pass, $off, 'NONE', $PAR);
        } else {
            return 0;
        }
        ///////////////////////////////////////////////////////////////////////////////////
        // podvodim itogi
        // zhiv li
        include_once 'modules/f_check_dead.php';
        if (check_dead($off)) {
            // uvelichenie reitinga pobed:
            $id = is_player($pass);
            if ($id) {
                do_mysql("UPDATE players SET monsterkill = monsterkill + 1 WHERE id_player = '" . $id . "';");
            } else {
                $id = is_npc($pass);
                do_mysql("UPDATE npc SET monsterkill = monsterkill + 1 WHERE id_npc = '" . $id . "';");
                // esli komu-nibudq prinadlezhit, obnovim egoo reiting
                $q = do_mydql("SELECT belongs FROM npc WHERE id_npc = '" . $id . "';");
                $bel = mysql_result($q, 0);
                if ($bel) {
                    do_mysql("UPDATE players SET monsterkill = monsterkill + 1 WHERE login = '******';");
                }
            }
            include_once 'modules/f_make_die.php';
            make_die($off);
            return 1;
        }
    }
    return 1;
}
Ejemplo n.º 3
0
 // proverjaem uspeshnostq ataki:
 include_once 'modules/f_is_attack_successful.php';
 $result = is_attack_successful($to, $who, 1);
 if ($result) {
     // vse, delaem uron
     include_once 'modules/f_do_dmg.php';
     if ($result > 1) {
         $PAR = 0;
     } else {
         $PAR = 1;
     }
     do_dmg($to, $who, 'NONE', $PAR);
 }
 //////////////////////////////////////////////////////////////////////////////
 // podvodim itogi
 if (check_dead($who)) {
     $id = is_player($to);
     if ($id) {
         do_mysql("UPDATE players SET playerkill = playerkill + 1 WHERE id_player = '" . $id . "';");
         // dela s karmoj svjazanye
         $q = do_mysql("SELECT status1, karma, location, clan FROM players WHERE id_player = '" . $id . "';");
         $att = mysql_fetch_assoc($q);
         if ($p['status1'][0] != 1 && $p['status1'][0] != 2 && substr($p['location'], 0, 4) != 'pris' && substr($p['location'], 0, 3) != 'are') {
             // proverim togda vojnu klanovuju -
             $att['clan'] = explode('|', $att['clan']);
             $q = do_mysql("SELECT politics FROM clans WHERE clanname = '" . $att['clan'][0] . "';");
             if (!mysql_num_rows($q)) {
                 $pol = '';
             }
             $pol = mysql_result($q, 0);
             $pol = explode('|', $pol);