2020-08-30 15:39:27 +00:00
|
|
|
|
<?php
|
2018-07-02 15:35:25 +00:00
|
|
|
|
|
|
|
|
|
function getchance($p)
|
|
|
|
|
{
|
|
|
|
|
if (mt_rand(1, 100) <= $p) {
|
|
|
|
|
return 1;
|
|
|
|
|
} else {
|
|
|
|
|
return 0;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
function cavesys($text)
|
|
|
|
|
{
|
|
|
|
|
global $user;
|
|
|
|
|
if ($fp = @fopen("tmp/chat.txt", "a")) {
|
|
|
|
|
flock($fp, LOCK_EX);
|
|
|
|
|
fputs($fp, ":[" . time() . "]:[!cavesys!!]:[$text]:[$user[caveleader]]\r\n");
|
|
|
|
|
fflush($fp);
|
|
|
|
|
flock($fp, LOCK_UN);
|
|
|
|
|
fclose($fp);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
2020-09-30 12:01:33 +00:00
|
|
|
|
if (in_array($user->room, Config::$caverooms)) {
|
2020-08-30 15:39:27 +00:00
|
|
|
|
include("CaveItems.php");
|
|
|
|
|
mysql_query('LOCK TABLES `cavebots` WRITE, `caveitems` WRITE, `shop` WRITE, `caveparties` WRITE');
|
|
|
|
|
$location = mysql_fetch_array(mysql_query("SELECT `x`, `y`, `dir`, `floor` FROM `caveparties` WHERE `user` = '$user[id]' LIMIT 1"));
|
2018-01-28 16:40:49 +00:00
|
|
|
|
|
2020-08-30 15:39:27 +00:00
|
|
|
|
if ($location['dir'] == 0) {
|
|
|
|
|
$y = $location['y'] * 2;
|
|
|
|
|
$x = ($location['x'] - 1) * 2;
|
|
|
|
|
}
|
2018-01-28 16:40:49 +00:00
|
|
|
|
|
2020-08-30 15:39:27 +00:00
|
|
|
|
if ($location['dir'] == 1) {
|
|
|
|
|
$y = ($location['y'] - 1) * 2;
|
|
|
|
|
$x = $location['x'] * 2;
|
|
|
|
|
}
|
2018-01-28 16:40:49 +00:00
|
|
|
|
|
2020-08-30 15:39:27 +00:00
|
|
|
|
if ($location['dir'] == 2) {
|
|
|
|
|
$y = $location['y'] * 2;
|
|
|
|
|
$x = ($location['x'] + 1) * 2;
|
|
|
|
|
}
|
2018-01-28 16:40:49 +00:00
|
|
|
|
|
2020-08-30 15:39:27 +00:00
|
|
|
|
if ($location['dir'] == 3) {
|
|
|
|
|
$y = ($location['y'] + 1) * 2;
|
|
|
|
|
$x = $location['x'] * 2;
|
|
|
|
|
}
|
2018-01-28 16:40:49 +00:00
|
|
|
|
|
2020-08-30 15:39:27 +00:00
|
|
|
|
$floor = $location['floor'];
|
2018-01-28 16:40:49 +00:00
|
|
|
|
|
2020-08-30 15:39:27 +00:00
|
|
|
|
$r = mysql_query("SELECT `bot`, `x`, `y`, `cnt` FROM `cavebots` WHERE `battle` = '" . $this->battle_data["id"] . "'");
|
|
|
|
|
$i = 0;
|
|
|
|
|
$cnt = 0;
|
|
|
|
|
while ($rec = mysql_fetch_assoc($r)) {
|
|
|
|
|
$bot = $rec['bot'];
|
|
|
|
|
$cnt = $rec['cnt'];
|
|
|
|
|
if (@$caveitems[$bot]) {
|
2020-09-30 12:01:33 +00:00
|
|
|
|
if ($user->room == 621) {
|
2020-08-30 15:39:27 +00:00
|
|
|
|
$i = mt_rand(0, (count($caveitems[$bot]) - 1));
|
|
|
|
|
$item = $caveitems[$bot][$i];
|
|
|
|
|
if (getchance($item['chance'])) {
|
|
|
|
|
$it = mysql_fetch_array(mysql_query("SELECT `id`, `name`, `img` FROM `$item[from]` WHERE `id` = $item[id] LIMIT 1"));
|
|
|
|
|
$podz = 1;
|
|
|
|
|
mysql_query('INSERT INTO `caveitems` SET `podzem` = "' . $item['podzem'] . '", `leader` = "' . $user['caveleader'] . '", `x` = "' . $rec['x'] . '", `y` = "' . $rec['y'] . '", `floor` = "' . $floor . '", `name` = "' . $it['name'] . '", `img` = "' . $it['img'] . '", `item` = "' . $item['id'] . '"' . ($item['foronetrip'] ? ", `foronetrip` = 1" : ""));
|
|
|
|
|
cavesys("У <b>" . $cavebots[$bot] . "</b> был предмет <b>$it[name]</b> и кто угодно может подобрать его.");
|
|
|
|
|
$this->AddToLog('<span class=date>' . date("H:i") . "</span> У <b>" . $cavebots[$bot] . "</b> был предмет <b>$it[name]</b>.<BR>");
|
|
|
|
|
}
|
|
|
|
|
}
|
2018-01-28 16:40:49 +00:00
|
|
|
|
}
|
|
|
|
|
}
|
2020-08-30 15:39:27 +00:00
|
|
|
|
if ($user['caveleader'] > 0) {
|
|
|
|
|
$bots = [1 => 10025, 2 => 10026, 3 => 10027, 4 => 10028, 5 => 10031, 6 => 10032, 7 => 10033, 8 => 10034];
|
|
|
|
|
$tp = 1;
|
|
|
|
|
while ($tp <= $cnt) {
|
|
|
|
|
addActions(time(), 'win_bot_' . $bots[$bot], 0, $user['id']);
|
|
|
|
|
$tp++;
|
|
|
|
|
}
|
2018-01-28 16:40:49 +00:00
|
|
|
|
}
|
|
|
|
|
|
2020-08-30 15:39:27 +00:00
|
|
|
|
mysql_query("DELETE FROM `cavebots` WHERE `battle` = '" . $this->battle_data["id"] . "'");
|
|
|
|
|
mysql_query('UNLOCK TABLES');
|
2018-01-28 16:40:49 +00:00
|
|
|
|
}
|