Файл: ewar/functions/king.php
Строк: 585
<?php
function getFight() {
$fight = readcache('king');
if ($fight === false) {
$fight = setFight();
}
return $fight;
}
function setFight() {
$fight = array(
'status' => 1, # 1 - nežaidžia, 2 - žaidžia
'p_life' => array(),
'p_death' => array(),
'damage' => array(),
'kills' => array(),
'turn' => array(),
'king' => array(),
'target' => array(),
'journal' => array()
);
writecache('king', $fight);
return $fight;
}
#Funkcija atnaujinanti duomenis:
function updateFight(array $fight) {
writecache('king', $fight);
return $fight;
}
#Funkcija įtraukianti žaidėją į eilę:
function setTurn($id, array $fight) {
$fight['turn'][$id] = $id;
updateFight($fight);
return $fight;
}
#Funkcija ištrinanti žaidėją iš eilės:
function unsetTurn($id, array $fight) {
unset($fight['turn'][$id]);
updateFight($fight);
return $fight;
}
function checkTurn($id, array $fight) {
if (in_array($id, $fight['turn'])) {
return true;
}
else
{
return false;
}
}
function startFight($fight, $params_kings, $endtime, $min_player) {
//$fight['turn'][10] = 10;
//$fight['turn'][11] = 11;
//$fight['turn'][12] = 12;
$count = count($fight['turn']);
if ($count < $min_player) {
return $fight;
}
$turn = $fight['turn'];
$fight = array();
$fight['turn'] = array();
$fight['status'] = 2;
$fight['endtime'] = time() + $endtime;
$fight['journal'] = array();
$fight['damage'] = array();
$fight['kills'] = array();
$fight['p_life'] = array();
$fight['p_death'] = array();
$fight['bezumie'] = false;
foreach($turn as $uid) {
$usr = mysql_fetch_assoc(mysql_query("SELECT vit, def, agi, nick, statusas, akmuo_time, zole_time, self, str, ability_1, ability_1_quality, ability_2, ability_2_quality, ability_3, ability_3_quality, ability_4, ability_4_quality, ability_5, ability_5_quality FROM vartotojai WHERE id='$uid' LIMIT 1"));
$online = mysql_fetch_assoc(mysql_query("SELECT nick_id FROM online WHERE nick_id='$uid' LIMIT 1"));
$cat = (!$online) ? 'p_life' : 'p_life'; #p_death #p_life
$fight['damage'][$uid] = 0;
$fight['kills'][$uid] = 0;
$fight['target'][$uid] = false;
$fight[$cat][$uid] = array(
'id' => $uid,
'battle_hp' => $usr['vit'] * 2,
'other_hp' => $usr['vit'] * 2,
'str' => $usr['str'],
'def' => $usr['def'],
'agi' => $usr['agi'],
'name' => $usr['nick'],
'statusas' => $usr['statusas'],
'akmuo_time' => $usr['akmuo_time'],
'zole_time' => $usr['zole_time'],
'microtime' => microtime(),
'uron' => false,
'uvorot' => time(),
'nastroyka' => time(),
'ability_1' => $usr['ability_1'],
'ability_1_quality' => $usr['ability_1_quality'],
'ability_2' => $usr['ability_2'],
'ability_2_quality' => $usr['ability_2_quality'],
'ability_3' => $usr['ability_3'],
'ability_3_quality' => $usr['ability_3_quality'],
'ability_4' => $usr['ability_4'],
'ability_4_quality' => $usr['ability_4_quality'],
'ability_5' => $usr['ability_5'],
'ability_5_quality' => $usr['ability_5_quality']
);
}
$fight['king'] = array(
'name' => '[nemirtinguju_karalius*]',
'life' => true,
'str' => rand($params_kings['str'][0], $params_kings['str'][1]),
'def' => rand($params_kings['def'][0], $params_kings['def'][1]),
'agi' => rand($params_kings['agi'][0], $params_kings['agi'][1]),
'other_hp' => rand($params_kings['hp'][0], $params_kings['hp'][1]),
);
$fight['king']['battle_hp'] = $fight['king']['other_hp'];
updateFight($fight);
return $fight;
}
function statusGamer($uid, array $fight) {
# 1 - nedalyvauju, 2 - miręs, 3 - kovoje
if (@$fight['p_life'][$uid]) {
return 3;
}
elseif (@$fight['p_death'][$uid]) {
return 2;
}
else
{
return 1;
}
}
function k_journal(array $fight, $count_j) {
global $language;
foreach(array_slice($fight['journal'], 0, $count_j, true) as $value) {
$value = str_replace('[kova_prasidejo*]',$language['kova_prasidejo'],$value);
$value = str_replace('[kovoje*]',$language['kovoje'],$value);
$value = str_replace('[nemirtinguju_karalius*]',$language['nemirtinguju_karalius'],$value);
$value = str_replace('[ir*]',$language['ir'],$value);
$value = str_replace('[zaideju*]',$language['zaideju'],$value);
$value = str_replace('[smoge*]',$language['smoge'],$value);
$value = str_replace('[su*]',$language['su'],$value);
$value = str_replace('[zala*]',$language['zala'],$value);
$value = str_replace('[krit*]',$language['krit'],$value);
$value = str_replace('[nuzude*]',$language['nuzude'],$value);
$value = str_replace('[prasidejo_kruvina_beprotybe*]',$language['prasidejo_kruvina_beprotybe'],$value);
$value = str_replace('[prie_zalos*]',$language['prie_zalos'],$value);
$value = str_replace('[akmeni_ka*]',$language['akmeni_ka'],$value);
$value = str_replace('[zole_ka*]',$language['zole_ka'],$value);
$value = str_replace('[panaudojo*]',$language['panaudojo'],$value);
$value = str_replace('[titano_ituzis*]',$language['titano_ituzis'],$value);
$value = str_replace('[galinga_gynyba*]',$language['galinga_gynyba'],$value);
$value = str_replace('[kritu_viesulas*]',$language['kritu_viesulas'],$value);
$value = str_replace('[apsaugine_stovesena*]',$language['apsaugine_stovesena'],$value);
$value = str_replace('[vampyrizmas*]',$language['vampyrizmas'],$value);
echo $value . '<br/>';
}
}
function clear_journal(array $fight, $count_j) {
$count = count($fight['journal']);
if ($count > $count_j) {
foreach(array_slice($fight['journal'], $count_j, ($count - $count_j), true) as $key => $value) {
unset($fight['journal'][$key]);
}
}
return $fight;
}
function resUsers($uid, $fight) {
if (@$fight['p_death'][$uid]) {
$fight['p_life'][$uid] = $fight['p_death'][$uid];
$fight['p_life'][$uid]['battle_hp'] = $fight['p_life'][$uid]['other_hp'];
unset($fight['p_death'][$uid]);
updateFight($fight);
}
return $fight;
}
function getTarget($uid, $fight, $type, $king, $count_users) {
# type:
# false - jeigu karalius gyvas ir taikinys false - taikinys karalius
# true - taikinys žaidėjai
if (!$type && $king) {
$fight['target'][$uid] = 'king';
}
if (!$type && !$king OR $type) {
$stop = false;
if ($count_users < 2) return false;
while($stop == false) {
$rand = array_rand($fight['p_life']);
if ($rand != $uid) {
$fight['target'][$uid] = $rand;
$stop = true;
break;
}
}
}
return $fight['target'][$uid];
}
#Atakuojame karalių:
function attackKing($fight, $uid, $uron, $crit, $statusas) {
$fight['king']['battle_hp'] -= $uron;
$fight['p_life'][$uid]['microtime'] = microtime();
$fight['damage'][$uid] += $uron;
$zenklas = zenklas($statusas);
array_unshift($fight['journal'], '<span class="small yellow"><span class="lime"><img src="img/icons/player.png" alt="*"/> '.$zenklas.''.$fight['p_life'][$uid]['name'].'</span> [smoge*] <span class="red"><img src="img/icons/king2.png" alt="*"/> [nemirtinguju_karalius*]</span> [su*] <span class="bold">'.$uron.'</span> [zala*]'.(($crit) ? ' [krit*].' : '.').'</span>');
if ($fight['king']['battle_hp'] <= 0) {
$fight['king']['death'] = time();
$fight['kills_king'] = $uid;
$fight['kills'][$uid] ++;
$fight['king']['life'] = false;
$fight['target'][$uid] = false;
array_unshift($fight['journal'], '<span class="small yellow"><span class="lime"><img src="img/icons/player.png" alt="*"/> '.$zenklas.''.$fight['p_life'][$uid]['name'].'</span> [nuzude*] <span class="red"><img src="img/icons/king2.png" alt="*"/> [nemirtinguju_karalius*]</span>.</span>');
updateFight($fight);
$s = mysql_query("SELECT * FROM `strides` WHERE `user`='$uid' AND `complete`='0' AND `s`='5'");
if (mysql_num_rows($s) != 0) {
$strides = mysql_fetch_assoc($s);
$stride = strides($strides['s']);
if ($strides['c'] < $stride['c']) {
if ($strides['c'] + 1 == $stride['c']) {
$complete = 1;
$force = mysql_fetch_assoc(mysql_query("SELECT `str`, `def`, `force` FROM `vartotojai` WHERE `id` = '$uid'"));
if($force['force'] == 1) {
$force['str'] = force($force['str']);
}
else
{
$force['def'] = force($force['def']);
}
mysql_query("UPDATE `vartotojai` SET `str` = '".($force['str'] + 50)."', `vit` = `vit` + 50, `agi` = `agi` + 50, `def` = '".($force['def'] + 50)."', `force_updated` = '0' WHERE `id` = '$uid'");
}
else
{
$complete = 0;
}
mysql_query("UPDATE `strides` SET `c`=`c`+1,`complete`='$complete' WHERE `user`='$uid' AND `s`='".$stride['id']."'");
}
}
header("Location: king.php?id=battle");
exit;
}
return $fight;
}
#Karalius atakuoja:
function attackUsersToKing($fight, $uid, $uron, $crit, $statusas) {
$fight['p_life'][$uid]['battle_hp'] -= $uron;
$zenklas = zenklas($statusas);
array_unshift($fight['journal'], '<span class="small yellow"><span class="red"><img src="img/icons/king2.png" alt="*"/> [nemirtinguju_karalius*]</span> [smoge*] <span class="lime"><img src="img/icons/player.png" alt="*"/> '.$zenklas.''.$fight['p_life'][$uid]['name'].'</span> [su*] <span class="bold">'.$uron.'</span> [zala*]'.(($crit) ? ' [krit*].' : '.').'</span>');
if ($fight['p_life'][$uid]['battle_hp'] <= 0) {
$fight['p_death'][$uid] = $fight['p_life'][$uid];
array_unshift($fight['journal'], '<span class="small yellow"><span class="red"><img src="img/icons/king2.png" alt="*"/> [nemirtinguju_karalius*]</span> [nuzude*] <span class="lime"><img src="img/icons/player.png" alt="*"/> '.$zenklas.''.$fight['p_life'][$uid]['name'].'</span>.</span>');
unset($fight['p_life'][$uid]);
updateFight($fight);
header("Location: king.php?id=battle");
exit;
}
return $fight;
}
#Atakuoja žaidėja:
function attackUsers($fight, $uid, $target, $uron, $crit, $statusas) {
$fight['p_life'][$target]['battle_hp'] -= $uron;
$fight['p_life'][$target]['uron'] = $uron;
$fight['p_life'][$uid]['microtime'] = microtime();
$fight['damage'][$uid] += $uron;
$zenklas = zenklas($statusas);
$zenklas2 = zenklas($fight['p_life'][$target]['statusas']);
array_unshift($fight['journal'], '<span class="small yellow"><span class="lime"><img src="img/icons/player.png" alt="*"/> '.$zenklas.''.$fight['p_life'][$uid]['name'].'</span> [smoge*] <span class="lime"><img src="img/icons/player.png" alt="*"/> '.$zenklas2.''.$fight['p_life'][$target]['name'].'</span> [su*] <span class="bold">'.$uron.'</span> [zala*]'.(($crit) ? ' [krit*].' : '.').'</span>');
if ($fight['p_life'][$target]['battle_hp'] <= 0) {
$fight['p_death'][$target] = $fight['p_life'][$target];
unset($fight['p_life'][$target]);
$fight['kills'][$uid] ++;
$fight['target'][$uid] = false;
array_unshift($fight['journal'], '<span class="small yellow"><span class="lime"><img src="img/icons/player.png" alt="*"/> '.$zenklas.''.$fight['p_life'][$uid]['name'].'</span> [nuzude*] <span class="lime"><img src="img/icons/player.png" alt="*"/> '.$zenklas2.''.$fight['p_death'][$target]['name'].'</span>.</span>');
updateFight($fight);
header("Location: king.php?id=battle");
exit;
}
return $fight;
}
function activateBezumie($fight, $bezumie_t, $bezumie_u) {
if (!$fight['bezumie'] && !$fight['king']['life'] && ($fight['king']['death'] + $bezumie_t) < time()) {
$fight['bezumie'] = $fight['king']['death'] + $bezumie_t;
array_unshift($fight['journal'], '<span class="small yellow">[prasidejo_kruvina_beprotybe*] +'.$bezumie_u.'% [prie_zalos*].</span>');
}
return $fight;
}
function addUronPrBezumie($bezumie_t, $bezumie_u) {
if ($bezumie_t) {
$tt = time() - $bezumie_t;
return ($tt * $bezumie_u);
}
else
{
return 0;
}
}
function activUvorot($fight, $uid, $uvorot_t) {
if ($fight['p_life'][$uid]['uvorot'] < time()) {
$fight['p_life'][$uid]['uvorot'] = time() + $uvorot_t;
foreach($fight['target'] as $key => $value) {
if ($value == $uid) {
unset($fight['target'][$key]);
}
}
}
return $fight;
}
function activNastroyka($fight, $uid, $nastroyka_t, $bezumie) {
if ($fight['p_life'][$uid]['nastroyka'] < time() && !$bezumie) {
$fight['p_life'][$uid]['nastroyka'] = time() + $nastroyka_t;
$fight['p_life'][$uid]['battle_hp'] = $fight['p_life'][$uid]['other_hp'];
}
return $fight;
}
function finalFight($fight) {
$king = $fight['king']['life'];
$endtime = $fight['endtime'];
$count_user = count($fight['p_life']);
$fight['final'] = false;
$w_id = 0;
#Jeigu karalius miręs ir liko 3 žaidėjai. Atlygis po 100 aukso.
if (!$king && $count_user <= 3) {
$fight['final'] = 1; #Pergalė
$fight['result'] = array();
foreach($fight['p_life'] as $uid => $value) {
$db_user = mysql_fetch_assoc(mysql_query("SELECT premium,effect1,effect2,effect3 FROM vartotojai WHERE id='$uid' LIMIT 1"));
$_gold = 100;
$_silver = rand(1,5) * round(rand(($fight['damage'][$uid] / 100), $fight['damage'][$uid]));
$_exp = rand(1,2) * round(round($fight['damage'][$uid] / 100) * 10);
$clan_memb = mysql_fetch_assoc(mysql_query("SELECT * FROM clan_memb WHERE user = '$uid'"));
if ($clan_memb) {
if ($clan_memb['v'] > 0) {
$_exp += round($_exp / 100 * $clan_memb['v']);
}
$clan = mysql_fetch_assoc(mysql_query('SELECT * FROM clans WHERE id = "'.$clan_memb['clan'].'"'));
}
if ($db_user['premium'] > time()) {
$_exp += round($_exp / 100 * 25);
}
if ($db_user['effect1'] > time()) {
$_exp += round($_exp / 100 * 25);
}
if ($db_user['effect2'] > time()) {
$_exp += round($_exp / 100 * 25);
}
if ($db_user['effect3'] > time()) {
$_exp += round($_exp / 100 * 25);
}
if ($clan) {
mysql_query('UPDATE `clans` SET `exp` = `exp` + '.$_exp.' WHERE `id` = "'.$clan['id'].'"');
mysql_query('UPDATE `clan_memb` SET `exp` = `exp` + '.$_exp.' WHERE `clan` = "'.$clan['id'].'" AND `user` = "'.$uid.'"');
}
if ($fight['kills_king'] == $uid) {
if (mysql_result(mysql_query('SELECT COUNT(*) FROM `inv` WHERE `place` = "0" AND `equip` = "0" AND `user` = "'.$uid.'"'),0) < 20) {
$w = mysql_fetch_assoc(mysql_query('SELECT * FROM `shop` WHERE `quality` = "5" ORDER BY RAND() LIMIT 1'));
mysql_query('INSERT INTO `inv` (`user`,`item`,`quality`,`bonus`,`_str`,`_vit`,`_agi`,`_def`) VALUES ("'.$uid.'","'.$w['id'].'","'.$w['quality'].'","'.$w['bonus'].'","'.$w['_str'].'","'.$w['_vit'].'","'.$w['_agi'].'","'.$w['_def'].'")');
$w_id = mysql_insert_id();
}
}
$fight['result'][$uid] = array(
'_gold' => $_gold, '_silver' => $_silver, '_exp' => $_exp,
'kills' => $fight['kills'][$uid], 'damage' => $fight['damage'][$uid]
);
}
foreach($fight['p_death'] as $uid => $value) {
$db_user = mysql_fetch_assoc(mysql_query("SELECT premium,effect1,effect2,effect3 FROM vartotojai WHERE id='$uid' LIMIT 1"));
$_gold = 0;
$_silver = rand(1,5) * round(rand(($fight['damage'][$uid] / 100), $fight['damage'][$uid]));
$_exp = rand(1,2) * round(round($fight['damage'][$uid] / 100) * 10);
$clan_memb = mysql_fetch_assoc(mysql_query("SELECT * FROM clan_memb WHERE user = '$uid'"));
if ($clan_memb) {
if ($clan_memb['v'] > 0) {
$_exp += round($_exp / 100 * $clan_memb['v']);
}
$clan = mysql_fetch_assoc(mysql_query('SELECT * FROM clans WHERE id = "'.$clan_memb['clan'].'"'));
}
if ($db_user['premium'] > time()) {
$_exp += round($_exp / 100 * 25);
}
if ($db_user['effect1'] > time()) {
$_exp += round($_exp / 100 * 25);
}
if ($db_user['effect2'] > time()) {
$_exp += round($_exp / 100 * 25);
}
if ($db_user['effect3'] > time()) {
$_exp += round($_exp / 100 * 25);
}
if ($clan) {
mysql_query('UPDATE `clans` SET `exp` = `exp` + '.$_exp.' WHERE `id` = "'.$clan['id'].'"');
mysql_query('UPDATE `clan_memb` SET `exp` = `exp` + '.$_exp.' WHERE `clan` = "'.$clan['id'].'" AND `user` = "'.$uid.'"');
}
if ($fight['kills_king'] == $uid) {
if (mysql_result(mysql_query('SELECT COUNT(*) FROM `inv` WHERE `place` = "0" AND `equip` = "0" AND `user` = "'.$uid.'"'),0) < 20) {
$w = mysql_fetch_assoc(mysql_query('SELECT * FROM `shop` WHERE `quality` = "5" ORDER BY RAND() LIMIT 1'));
mysql_query('INSERT INTO `inv` (`user`,`item`,`quality`,`bonus`,`_str`,`_vit`,`_agi`,`_def`) VALUES ("'.$uid.'","'.$w['id'].'","'.$w['quality'].'","'.$w['bonus'].'","'.$w['_str'].'","'.$w['_vit'].'","'.$w['_agi'].'","'.$w['_def'].'")');
$w_id = mysql_insert_id();
}
}
$fight['result'][$uid] = array(
'_gold' => $_gold, '_silver' => $_silver, '_exp' => $_exp,
'kills' => $fight['kills'][$uid], 'damage' => $fight['damage'][$uid]
);
}
}
#Jeigu karalius miręs, žaidėjų daugiau negu 3 ir baigėsi laikas, tai paprastas atlygis.
if (!$king && $count_user > 3 && $endtime < time()) {
$fight['final'] = 1;
$array = $fight['p_life'] + $fight['p_death'];
foreach($array as $uid => $value) {
$db_user = mysql_fetch_assoc(mysql_query("SELECT premium,effect1,effect2,effect3 FROM vartotojai WHERE id='$uid' LIMIT 1"));
$_gold = 0;
$_silver = 0;
$_exp = rand(1,2) * round(round($fight['damage'][$uid] / 100) * 10);
$clan_memb = mysql_fetch_assoc(mysql_query("SELECT * FROM clan_memb WHERE user = '$uid'"));
if ($clan_memb) {
if ($clan_memb['v'] > 0) {
$_exp += round($_exp / 100 * $clan_memb['v']);
}
$clan = mysql_fetch_assoc(mysql_query('SELECT * FROM clans WHERE id = "'.$clan_memb['clan'].'"'));
}
if ($db_user['premium'] > time()) {
$_exp += round($_exp / 100 * 25);
}
if ($db_user['effect1'] > time()) {
$_exp += round($_exp / 100 * 25);
}
if ($db_user['effect2'] > time()) {
$_exp += round($_exp / 100 * 25);
}
if ($db_user['effect3'] > time()) {
$_exp += round($_exp / 100 * 25);
}
if ($clan) {
mysql_query('UPDATE `clans` SET `exp` = `exp` + '.$_exp.' WHERE `id` = "'.$clan['id'].'"');
mysql_query('UPDATE `clan_memb` SET `exp` = `exp` + '.$_exp.' WHERE `clan` = "'.$clan['id'].'" AND `user` = "'.$uid.'"');
}
if ($fight['kills_king'] == $uid) {
if (mysql_result(mysql_query('SELECT COUNT(*) FROM `inv` WHERE `place` = "0" AND `equip` = "0" AND `user` = "'.$uid.'"'),0) < 20) {
$w = mysql_fetch_assoc(mysql_query('SELECT * FROM `shop` WHERE `quality` = "5" ORDER BY RAND() LIMIT 1'));
mysql_query('INSERT INTO `inv` (`user`,`item`,`quality`,`bonus`,`_str`,`_vit`,`_agi`,`_def`) VALUES ("'.$uid.'","'.$w['id'].'","'.$w['quality'].'","'.$w['bonus'].'","'.$w['_str'].'","'.$w['_vit'].'","'.$w['_agi'].'","'.$w['_def'].'")');
$w_id = mysql_insert_id();
}
}
$fight['result'][$uid] = array(
'_gold' => $_gold, '_silver' => $_silver, '_exp' => $_exp,
'kills' => $fight['kills'][$uid], 'damage' => $fight['damage'][$uid]
);
}
}
#Pralaimėjimas. Karalius gyvas, laikas baigėsi arba nėra žaidėjų.
if ($king && $endtime < time() OR $king && $count_user == 0) {
$fight['final'] = 2; #Pralaimėjimas
$array = $fight['p_life'] + $fight['p_death'];
foreach($array as $uid => $value) {
$db_user = mysql_fetch_assoc(mysql_query("SELECT premium,effect1,effect2,effect3 FROM vartotojai WHERE id='$uid' LIMIT 1"));
$_gold = 0;
$_silver = 0;
$_exp = rand(1,2) * round(round($fight['damage'][$uid] / 100), 10);
$clan_memb = mysql_fetch_assoc(mysql_query("SELECT * FROM clan_memb WHERE user = '$uid'"));
if ($clan_memb) {
if ($clan_memb['v'] > 0) {
$_exp += round($_exp / 100 * $clan_memb['v']);
}
$clan = mysql_fetch_assoc(mysql_query('SELECT * FROM clans WHERE id = "'.$clan_memb['clan'].'"'));
}
if ($db_user['premium'] > time()) {
$_exp += round($_exp / 100 * 25);
}
if ($db_user['effect1'] > time()) {
$_exp += round($_exp / 100 * 25);
}
if ($db_user['effect2'] > time()) {
$_exp += round($_exp / 100 * 25);
}
if ($db_user['effect3'] > time()) {
$_exp += round($_exp / 100 * 25);
}
if ($clan) {
mysql_query('UPDATE `clans` SET `exp` = `exp` + '.$_exp.' WHERE `id` = "'.$clan['id'].'"');
mysql_query('UPDATE `clan_memb` SET `exp` = `exp` + '.$_exp.' WHERE `clan` = "'.$clan['id'].'" AND `user` = "'.$uid.'"');
}
$fight['result'][$uid] = array(
'_gold' => $_gold, '_silver' => $_silver, '_exp' => (int)($_exp / 2),
'kills' => $fight['kills'][$uid], 'damage' => $fight['damage'][$uid]
);
}
}
if ($fight['final']) {
$winners = array();
foreach($fight['result'] as $uid => $reward) {
if ($reward['_gold'] == 100) {
$winners[] = $uid;
$s = mysql_query("SELECT * FROM `strides` WHERE `user`='$uid' AND `complete`='0' AND `s`='6'");
if (mysql_num_rows($s) != 0) {
$strides = mysql_fetch_assoc($s);
$stride = strides($strides['s']);
if ($strides['c'] < $stride['c']) {
if ($strides['c'] + 1 == $stride['c']) {
$complete = 1;
$force = mysql_fetch_assoc(mysql_query("SELECT `str`, `def`, `force` FROM `vartotojai` WHERE `id` = '$uid'"));
if($force['force'] == 1) {
$force['str'] = force($force['str']);
}
else
{
$force['def'] = force($force['def']);
}
mysql_query("UPDATE `vartotojai` SET `str` = '".($force['str'] + 50)."', `vit` = `vit` + 50, `agi` = `agi` + 50, `def` = '".($force['def'] + 50)."', `force_updated` = '0' WHERE `id` = '$uid'");
}
else
{
$complete = 0;
}
mysql_query("UPDATE `strides` SET `c`=`c`+1,`complete`='$complete' WHERE `user`='$uid' AND `s`='".$stride['id']."'");
}
}
}
mysql_query("UPDATE vartotojai SET g = g+".$reward['_gold'].",s = s+".$reward['_silver'].", exp = exp+".$reward['_exp']." WHERE id = '$uid' LIMIT 1");
}
arsort($fight['kills']);
arsort($fight['damage']);
$best_killers = array();
$best_damage = array();
foreach(array_slice($fight['kills'], 0, 3, true) as $uid => $kills) {
$best_killers[$uid] = $kills;
}
foreach(array_slice($fight['damage'], 0, 3, true) as $uid => $damage) {
$best_damage[$uid] = $damage;
}
$winners = json_encode($winners);
$best_killers = json_encode($best_killers);
$best_damage = json_encode($best_damage);
$kill_king = (@$fight['kills_king']) ? $fight['kills_king'] : 0;
$cache = array();
$cache['winners'] = $winners;
$cache['best_killers'] = $best_killers;
$cache['best_damage'] = $best_damage;
$cache['time'] = time();
$cache['count_users'] = count($fight['result']);
$cache['kills_king'] = $kill_king;
$cache['kills_king_item'] = $w_id;
$key = 'king.stats';
writecache($key, $cache);
$fight['turn'] = array();
$fight['status'] = 1;
$fight['journal'] = array();
$fight['damage'] = array();
$fight['kills'] = array();
$fight['p_life'] = array();
$fight['p_death'] = array();
$fight['bezumie'] = false;
updateFight($fight);
header("Location: king.php");
exit;
}
return $fight;
}
function clearLastStatistika() {
$key = 'king.stats';
deletecache($key);
}
function getLastStatistika() {
$key = 'king.stats';
$cache = readcache($key);
$winners = json_decode($cache['winners'], true);
$best_killers = json_decode($cache['best_killers'], true);
$best_damage = json_decode($cache['best_damage'], true);
$kills_king = $cache['kills_king'];
if ($kills_king > 0) {
$us = mysql_fetch_assoc(mysql_query("SELECT nick,statusas FROM vartotojai WHERE id='$kills_king' LIMIT 1"));
$cache['kills_king'] = array('nick' => $us['nick'], 'id' => $kills_king, 'statusas' => $us['statusas']);
}
else
{
$cache['kills_king'] = '-';
}
foreach($winners as $uid) {
$us = mysql_fetch_assoc(mysql_query("SELECT nick,statusas FROM vartotojai WHERE id='$uid' LIMIT 1"));
$cache['winners'] = $winners;
}
foreach($best_killers as $uid => $kills) {
$us = mysql_fetch_assoc(mysql_query("SELECT nick,statusas FROM vartotojai WHERE id='$uid' LIMIT 1"));
$cache['kills'][] = array('nick' => $us['nick'], 'kill' => $kills, 'id' => $uid, 'statusas' => $us['statusas']);
}
foreach($best_damage as $uid => $damage) {
$us = mysql_fetch_assoc(mysql_query("SELECT nick,statusas FROM vartotojai WHERE id='$uid' LIMIT 1"));
$cache['damage'][] = array('nick' => $us['nick'], 'damage' => $damage, 'id' => $uid, 'statusas' => $us['statusas']);
}
return $cache;
}
?>