Реализация ChatMessageDTO.
This commit is contained in:
@@ -1,70 +1,89 @@
|
||||
<?
|
||||
if(!defined('GAME'))
|
||||
{
|
||||
die();
|
||||
<?php
|
||||
//Феерверк
|
||||
if (!defined('GAME')) {
|
||||
die();
|
||||
}
|
||||
if ($itm['magic_inci'] != 'feerverks') {
|
||||
return;
|
||||
}
|
||||
if ($u->room['id'] != '9') {
|
||||
$u->error = 'Вы не на Центральной Площади';
|
||||
} elseif (isset($lif['id'])) {
|
||||
$u->error = 'Запускать феерверки возможно не чаще одного раза в 10 сек.';
|
||||
} else {
|
||||
$chat = new Chat();
|
||||
$cmsg = new ChatMessage();
|
||||
$cmsg->setCity($u->info['city']);
|
||||
$cmsg->setRoom($u->info['room']);
|
||||
$cmsg->setType(6);
|
||||
$cmsg->setTypeTime(2);
|
||||
|
||||
if( $itm['magic_inci'] == 'feerverks' ) {
|
||||
//Феерверк
|
||||
if( $u->room['id'] != '9' ) {
|
||||
$u->error = 'Вы не на Центральной Площади';
|
||||
}else{
|
||||
//$lif = mysql_fetch_array(mysql_query('SELECT `id` FROM `feerverks` WHERE `uid` = "'.$u->info['id'].'" AND `time` > "'.(time()-10).'" LIMIT 1'));
|
||||
if( !isset($lif['id']) ) {
|
||||
$po = $u->lookStats($itm['data']);
|
||||
$fid = 'fw04';
|
||||
if( isset($po['feerverk_eff']) ) {
|
||||
$fid = $po['feerverk_eff'];
|
||||
}
|
||||
mysql_query('INSERT INTO `feerverks` (`room`,`uid`,`time`,`fid`) VALUES ("'.$u->info['room'].'","'.$u->info['id'].'","'.time().'","'.$fid.'")');
|
||||
//
|
||||
if( $u->info['sex'] == 0 ) {
|
||||
$text = '[img[items/'.$itm['img'].']] <b>'.$u->info['login'].'</b> запустил фейерверк!';
|
||||
}else{
|
||||
$text = '[img[items/'.$itm['img'].']] <b>'.$u->info['login'].'</b> запустила фейерверк!';
|
||||
}
|
||||
//
|
||||
if( $po['feerverk_sound'] == 1 ) {
|
||||
$po['feerverk_sound'] = rand(8,10);
|
||||
}
|
||||
//
|
||||
mysql_query("INSERT INTO `chat` (`frv`,`sound`,`city`,`room`,`login`,`to`,`text`,`time`,`type`,`toChat`,`new`,`typeTime`) VALUES (
|
||||
'".$fid."','0','".$u->info['city']."','".$u->info['room']."','','','".$text."','".time()."','6','0','1','2')");
|
||||
//
|
||||
if( rand(0,100) < 10 ) {
|
||||
// У персонажа легкая травма - "Ожог от фейерверка" еще 3 мин. 43 сек.
|
||||
// 22.02.14 21:14 лосенка пострадала от фейерверка! :fingal:
|
||||
$spf = mysql_query('SELECT `id`,`login`,`sex` FROM `users` WHERE `online` > "'.(time()-120).'" AND `invis` = "0" AND `battle` = "0" AND `room` = "'.$u->info['room'].'" ORDER BY `online` DESC LIMIT 100');
|
||||
$fusr = array();
|
||||
while( $plf = mysql_fetch_array($spf) ) {
|
||||
//Иммунитет от травм, либо травма
|
||||
$nou = mysql_fetch_array(mysql_query('SELECT `id` FROM `eff_users` WHERE ( `id_eff` = "4" OR `id_eff` = "263" ) AND `uid` = "'.$plf['id'].'" AND `delete` = "0" LIMIT 1'));
|
||||
if( !isset($nou['id'])) {
|
||||
$fusr[] = $plf;
|
||||
}
|
||||
}
|
||||
unset($spf,$plf,$nou);
|
||||
$fusr = $fusr[rand(0, ( count($fusr) - 1 ) )];
|
||||
if( isset($fusr['id']) ) {
|
||||
//Пострадавший от фейерверка
|
||||
$ins = mysql_query('INSERT INTO `eff_users` (`overType`,`timeUse`,`hod`,`name`,`data`,`uid`, `id_eff`, `img2`, `timeAce`, `v1`) VALUES ("0","'.time().'","-1","Ожог от фейерверка","add_s'.rand(1,3).'=-'.rand(1,3).'|add_s'.rand(1,3).'=-'.rand(1,3).'","'.$fusr['id'].'", "4", "eff_travma1.gif","300", "1")');
|
||||
if( $fusr['sex'] == 0 ) {
|
||||
$text = '[img[items/travma.gif]] <b>'.$fusr['login'].'</b> пострадал от фейерверка! :fingal:';
|
||||
}else{
|
||||
$text = '[img[items/travma.gif]] <b>'.$fusr['login'].'</b> пострадала от фейерверка! :fingal:';
|
||||
}
|
||||
mysql_query("INSERT INTO `chat` (`sound`,`city`,`room`,`login`,`to`,`text`,`time`,`type`,`toChat`,`new`,`typeTime`) VALUES ('0','".$u->info['city']."','".$u->info['room']."','','','".$text."','".time()."','6','0','1','2')");
|
||||
}
|
||||
unset($fusr);
|
||||
}
|
||||
unset($text,$lif,$po);
|
||||
//
|
||||
mysql_query('UPDATE `items_users` SET `iznosNOW` = `iznosNOW` + 1 WHERE `id` = '.$itm['id'].' LIMIT 1');
|
||||
//
|
||||
$u->error = 'Вы успешно запустили феерверк "'.$itm['name'].'"!';
|
||||
}else{
|
||||
$u->error = 'Запускать феерверки возможно не чаще одного раза в 10 сек.';
|
||||
}
|
||||
}
|
||||
$po = $u->lookStats($itm['data']);
|
||||
$fid = 'fw04';
|
||||
if (isset($po['feerverk_eff'])) {
|
||||
$fid = $po['feerverk_eff'];
|
||||
}
|
||||
mysql_query(
|
||||
'INSERT INTO `feerverks` (`room`,`uid`,`time`,`fid`) VALUES ("' . $u->info['room'] . '","' . $u->info['id'] . '","' . time(
|
||||
) . '","' . $fid . '")'
|
||||
);
|
||||
//
|
||||
$a = $u->info['sex'] == 1 ? 'a' : ''; //окончание рода М\Ж в словах
|
||||
|
||||
//
|
||||
if ($po['feerverk_sound'] == 1) {
|
||||
$po['feerverk_sound'] = mt_rand(8, 10);
|
||||
}
|
||||
//
|
||||
$cmsg->setText("[img[items/{$itm['img']}]] <b>{$u->info['login']}</b> запустил$a фейерверк!");
|
||||
$cmsg->setFireworks($fid);
|
||||
$chat->sendMsg($cmsg);
|
||||
//
|
||||
if (rand(0, 100) < 10) {
|
||||
// У персонажа легкая травма - "Ожог от фейерверка" еще 3 мин. 43 сек.
|
||||
// 22.02.14 21:14 лосенка пострадала от фейерверка! :fingal:
|
||||
$spf = mysql_query(
|
||||
'SELECT `id`,`login`,`sex` FROM `users` WHERE `online` > "' . (time(
|
||||
) - 120) . '" AND `invis` = 0 AND `battle` = 0 AND `room` = "' . $u->info['room'] . '" ORDER BY `online` DESC LIMIT 100'
|
||||
);
|
||||
$fusr = [];
|
||||
while ($plf = mysql_fetch_array($spf)) {
|
||||
//Иммунитет от травм, либо травма
|
||||
$nou = mysql_fetch_array(
|
||||
mysql_query(
|
||||
'SELECT `id` FROM `eff_users` WHERE ( `id_eff` = 4 OR `id_eff` = 263 ) AND `uid` = "' . $plf['id'] . '" AND `delete` = 0 LIMIT 1'
|
||||
)
|
||||
);
|
||||
if (!isset($nou['id'])) {
|
||||
$fusr[] = $plf;
|
||||
}
|
||||
}
|
||||
unset($spf, $plf, $nou);
|
||||
$fusr = $fusr[rand(0, (count($fusr) - 1))];
|
||||
if (isset($fusr['id'])) {
|
||||
//Пострадавший от фейерверка
|
||||
$ins = mysql_query(
|
||||
'INSERT INTO `eff_users` (`overType`,`timeUse`,`hod`,`name`,`data`,`uid`, `id_eff`, `img2`, `timeAce`, `v1`) VALUES (
|
||||
0,
|
||||
unix_timestamp(),
|
||||
-1,
|
||||
"Ожог от фейерверка",
|
||||
"add_s' . mt_rand(1, 3) . '=-' . mt_rand(1, 3) . '|add_s' . mt_rand(1, 3) . '=-' . mt_rand(1, 3) . '",
|
||||
"' . $fusr['id'] . '",
|
||||
4,
|
||||
"eff_travma1.gif",
|
||||
300,
|
||||
1)'
|
||||
);
|
||||
$a = $fusr['sex'] == 1 ? 'a' : ''; //окончание рода М\Ж в словах
|
||||
$cmsg->setFireworks(null);
|
||||
$cmsg->setText("[img[items/travma.gif]] <b>{$fusr['login']}</b> пострадал$a от фейерверка! :fingal:");
|
||||
}
|
||||
unset($fusr);
|
||||
}
|
||||
unset($lif, $po);
|
||||
//
|
||||
mysql_query('UPDATE `items_users` SET `iznosNOW` = `iznosNOW` + 1 WHERE `id` = ' . $itm['id'] . ' LIMIT 1');
|
||||
//
|
||||
$u->error = 'Вы успешно запустили феерверк "' . $itm['name'] . '"!';
|
||||
}
|
||||
?>
|
||||
Reference in New Issue
Block a user