View file games/bottle/game.php

File size: 18.3Kb
<?php

/*
------------------------------------------------
AlphaCMS - универсальный движок для вашего сайта
E-mail администрации проекта: adm@alpha-cms.ru
Официальный сайт поддержки: alpha-cms.ru
Руководитель проекта: adm (ID 1)
------------------------------------------------
*/
  
require_once ($_SERVER['DOCUMENT_ROOT'].'/system/connections/core.php');
acms_header('Бутылочка', 'users');
require (ROOT.'/games/bottle/plugins/config.php');
bt_stop();

$game = db::get_string("SELECT * FROM `BOTTLE` WHERE `ID` = ? LIMIT 1", [intval(get('id'))]);

if (!isset($game['ID']) || $game['URL'] != get('url')) {
  
  error('Стол не найден');
  redirect('/games/bottle/?');
  
}

if ($game['ACT'] == 1) {
  
  error('Сожалеем, но стол недоступен для игры');
  redirect('/games/bottle/?');
  
}

if (get('get') == 'add' && strpos($game['DELETE'], ':'.user('ID').':') === false) {
  
  get_check_valid();
  
  if ($game['US1'] > 0 && $game['US2'] > 0 && $game['US3'] > 0 && $game['US4'] > 0 && $game['US5'] > 0 && $game['US6'] > 0 && $game['US7'] > 0 && $game['US8'] > 0) {
    
    error('Нет свободных мест');
    redirect('/games/bottle/game.php?id='.$game['ID'].'&url='.tabs($game['URL']));
    
  }
  
  if (bt_user(user('ID'), $game['ID']) == 1) {
    
    error('Вы уже играете');
    redirect('/games/bottle/game.php?id='.$game['ID'].'&url='.tabs($game['URL']));
    
  }
  
  $num = 0;
  
  if ($game['US2'] == 0) { $num = 2; }
  if ($game['US1'] == 0) { $num = 1; }
  if ($game['US3'] == 0) { $num = 3; }
  if ($game['US8'] == 0) { $num = 8; }
  if ($game['US4'] == 0) { $num = 4; }
  if ($game['US6'] == 0) { $num = 6; }
  if ($game['US7'] == 0) { $num = 7; }
  if ($game['US5'] == 0) { $num = 5; }
  
  db::get_set("UPDATE `BOTTLE` SET `US".$num."` = ?, `EYE2` = ? WHERE `ID` = ? LIMIT 1", [user('ID'), ':'.($game['US1'] != user('ID') ? $game['US1'].':' : null).''.($game['US2'] != user('ID') ? $game['US2'].':' : null).''.($game['US3'] != user('ID') ? $game['US3'].':' : null).''.($game['US4'] != user('ID') ? $game['US4'].':' : null).''.($game['US5'] != user('ID') ? $game['US5'].':' : null).''.($game['US6'] != user('ID') ? $game['US6'].':' : null).''.($game['US7'] != user('ID') ? $game['US7'].':' : null).''.($game['US8'] != user('ID') ? $game['US8'].':' : null), $game['ID']]);
  
  $mess = lg('%s присоединился к столу', '[b]'.user::login_mini(user('ID')).'[/b]');
  db::get_add("INSERT INTO `COMMENTS` (`USER_ID`, `OBJECT_TYPE`, `OBJECT_ID`, `TIME`, `MESSAGE`) VALUES (?, ?, ?, ?, ?)", [config('SYSTEM'), 'bottle_comments', $game['ID'], TM, $mess]);
  
  success('Вы успешно присоединились к столу');
  redirect('/games/bottle/game.php?id='.$game['ID'].'&url='.tabs($game['URL']));
  
}
  
if ($game['BOTTLE'] == 3) {
  
  $max = 50;
  
}elseif ($game['BOTTLE'] == 1) {
  
  $max = 90;
  
}elseif ($game['BOTTLE'] == 2) {
  
  $max = 80;
  
}elseif ($game['BOTTLE'] == 4) {
  
  $max = 140;
  
}elseif ($game['BOTTLE'] == 5) {
  
  $max = 140;
  
}elseif ($game['BOTTLE'] == 6) {
  
  $max = 155;
  
}elseif ($game['BOTTLE'] == 7) {
  
  $max = 45;
  
}elseif ($game['BOTTLE'] == 8) {
  
  $max = 125;
  
}

require (ROOT.'/games/bottle/plugins/delete.php');
  
?>
<span id='id_start' start='<?=$game['ID']?>' pr='0' url='<?=tabs($game['URL'])?>'></span>
<span id='data'></span>

<div id='bt_info_active' style='display: none'>
<div class="modal_phone" style="display: block"></div>
<div class="modal_center" style="display: block; animation: none; min-height: 20px">
<div class="modal-container" style="padding: 17px; padding-top: 20px">
<br /><?=lg('Вы закрыли вкладку с игрой')?><br /><br /><br />
<a ajax="no" href="/games/bottle/game.php?id=<?=$game['ID']?>&url=<?=tabs($game['URL'])?>" class="bt-button2" style="margin-top: 10px"><?=lg('Обновить страницу')?></a>
</div>
</div>
</div>
  
<div class='bottle-content' style='background: <?=tabs($game['PHONE'])?>'>  
<a href="/games/bottle/info.php?id=<?=$game['ID']?>&url=<?=tabs($game['URL'])?>" class="bt-menu" style="left: 10px"><?=icons('info', 15, 'fa-fw')?></a>
<a href="/games/bottle/us_plus.php?id=<?=$game['ID']?>&url=<?=tabs($game['URL'])?>" class="bt-menu" style="left: 10px; top: 50px"><?=icons('user-plus', 15, 'fa-fw')?></a>
<?php if ($game['USER_ID'] == user('ID')) : ?>
<a href="/games/bottle/edit.php?id=<?=$game['ID']?>" class="bt-menu" style="left: 10px; top: 90px; background-color: #2AD179"><?=icons('pencil', 15, 'fa-fw')?></a> 
<a href="/games/bottle/game.php?id=<?=$game['ID']?>&url=<?=tabs($game['URL'])?>&<?=TOKEN_URL?>&get=delete" class="bt-menu" style="right: 10px; top: 90px; background-color: #EA2D7A"><?=icons('times', 15, 'fa-fw')?></a>
<?php endif ?> 
<a href="/games/bottle/?" class="bt-menu" style="top: 10px; right: 10px"><?=icons('home', 15, 'fa-fw')?></a>
<a href="/games/bottle/top.php" class="bt-menu" style="top: 50px; right: 10px"><?=icons('trophy', 15, 'fa-fw')?></a>
  
<div class="bt-table-title"><?=lg('Стол')?> #<?=$game['ID']?></div>
  
<div id='bt_upd2'>  
  
<?php if (bt_user(user('ID'), $game['ID']) == 1) : ?>
<?php if (bt_count($game['ID']) > 2) : ?>
  
<?php
  
if ($game['DATA'] == 0) {
  
  $type = lg('кого поцеловать');

}elseif ($game['DATA'] == 1) {
  
  $type = lg('кому сделать комплимент');

}else{
  
  $type = lg('кому передать %d баллов', $bt['BALLS']);

}

if ($game['DATA'] == 0) {
  
  $type2 = lg('поцеловать игрока');

}elseif ($game['DATA'] == 1) {
  
  $type2 = lg('сделать комплимент игроку');

}else{
  
  $type2 = lg('передать %d баллов игроку', $bt['BALLS']);

}

if ($game['DATA2'] > 0) {
  
  if ($game['DATA3'] == user('ID')) {
    
    if ($game['DATA'] == 0) {
      
      $type3 = lg('Вы должны поцеловать игрока %s', '<b>'.user::login_mini($game['DATA2']).'</b>');
      $type4 = '<a href="/games/bottle/game.php?id='.$game['ID'].'&url='.tabs($game['URL']).'&ok=3&'.TOKEN_URL.'" class="bt-button2">'.lg('Выполнить желание').'</a>';
    
    }elseif ($game['DATA'] == 1) {
      
      $type3 = lg('Вы должны сделать комплимент игроку %s', '<b>'.user::login_mini($game['DATA2']).'</b>');
      $type4 = '<a href="/games/bottle/game.php?id='.$game['ID'].'&url='.tabs($game['URL']).'&ok=1&'.TOKEN_URL.'" class="bt-button2">'.lg('Выполнить желание').'</a>';
    
    }else{
      
      $type3 = lg('Вы должны передать %d баллов игроку %s', $bt['BALLS'], '<b>'.user::login_mini($game['DATA2']).'</b>');
      $type4 = '<a href="/games/bottle/game.php?id='.$game['ID'].'&url='.tabs($game['URL']).'&ok=2&'.TOKEN_URL.'" class="bt-button2">'.lg('Выполнить желание').'</a>';
    
    }
    
    if (get('ok')) {
      
      get_check_valid();
      
      if (get('ok') == 2) {
        
        if (user('BALLS') < $bt['BALLS']) {
          
          if ($game['US1'] == user('ID')) { $t = 1; }
          if ($game['US2'] == user('ID')) { $t = 2; }
          if ($game['US3'] == user('ID')) { $t = 3; }
          if ($game['US4'] == user('ID')) { $t = 4; }
          if ($game['US5'] == user('ID')) { $t = 5; }
          if ($game['US6'] == user('ID')) { $t = 6; }
          if ($game['US7'] == user('ID')) { $t = 7; }
          if ($game['US8'] == user('ID')) { $t = 8; }
        
          db::get_set("UPDATE `BOTTLE` SET `JTIME` = ?, `DELETE` = ?, `US".$t."` = ?, `EYE` = ?, `START_USER` = ?, `DATA` = ?, `EYE2` = ?, `DATA2` = ?, `DATA3` = ? WHERE `ID` = ? LIMIT 1", [(TM + 60), $game['DELETE'].user('ID').':', 0, ':0:', bt_rand(), rand(0,2), ':'.($game['US1'] != user('ID') ? $game['US1'].':' : null).''.($game['US2'] != user('ID') ? $game['US2'].':' : null).''.($game['US3'] != user('ID') ? $game['US3'].':' : null).''.($game['US4'] != user('ID') ? $game['US4'].':' : null).''.($game['US5'] != user('ID') ? $game['US5'].':' : null).''.($game['US6'] != user('ID') ? $game['US6'].':' : null).''.($game['US7'] != user('ID') ? $game['US7'].':' : null).''.($game['US8'] != user('ID') ? $game['US8'].':' : null), 0, 0, $game['ID']]);
          
          $mess = lg('%s покидает стол, так как у него нет баллов для передачи другому игроку', '[b]'.user::login_mini(user('ID')).'[/b]');
          db::get_add("INSERT INTO `COMMENTS` (`USER_ID`, `OBJECT_TYPE`, `OBJECT_ID`, `TIME`, `MESSAGE`) VALUES (?, ?, ?, ?, ?)", [config('SYSTEM'), 'bottle_comments', $game['ID'], TM, $mess]);
          
          error(lg('У вас нет %d баллов, поэтому вы покидаете стол', $bt['BALLS']));
          redirect('/games/bottle/game.php?id='.$game['ID'].'&url='.tabs($game['URL']));
          
        }
        
        db::get_set("UPDATE `USERS` SET `BOTTLE_BALLS` = `BOTTLE_BALLS` + ?, `BALLS` = `BALLS` + ? WHERE `ID` = ? LIMIT 1", [$bt['BALLS'], $bt['BALLS'], $game['DATA2']]);
        db::get_set("UPDATE `USERS` SET `BALLS` = `BALLS` - ? WHERE `ID` = ? LIMIT 1", [$bt['BALLS'], user('ID')]);
        
        $mess = lg('%s передал %d баллов игроку %s', '[b]'.user::login_mini(user('ID')).'[/b]', $bt['BALLS'], '[b]'.user::login_mini($game['DATA2']).'[/b]');
        db::get_add("INSERT INTO `COMMENTS` (`USER_ID`, `OBJECT_TYPE`, `OBJECT_ID`, `TIME`, `MESSAGE`) VALUES (?, ?, ?, ?, ?)", [config('SYSTEM'), 'bottle_comments', $game['ID'], TM, $mess]);
        
        success('Вы передали баллы пользователю');
        redirect('/games/bottle/game.php?id='.$game['ID'].'&url='.tabs($game['URL']));
        
      }
      
      db::get_set("UPDATE `BOTTLE` SET `JTIME` = ?, `EYE` = ?, `START_USER` = ?, `DATA` = ?, `EYE2` = ?, `DATA2` = ?, `DATA3` = ? WHERE `ID` = ? LIMIT 1", [(TM + 60), ':0:', bt_rand(), rand(0,2), ':'.($game['US1'] != user('ID') ? $game['US1'].':' : null).''.($game['US2'] != user('ID') ? $game['US2'].':' : null).''.($game['US3'] != user('ID') ? $game['US3'].':' : null).''.($game['US4'] != user('ID') ? $game['US4'].':' : null).''.($game['US5'] != user('ID') ? $game['US5'].':' : null).''.($game['US6'] != user('ID') ? $game['US6'].':' : null).''.($game['US7'] != user('ID') ? $game['US7'].':' : null).''.($game['US8'] != user('ID') ? $game['US8'].':' : null), 0, 0, $game['ID']]);
      
      if (get('ok') == 3) {
        
        db::get_set("UPDATE `USERS` SET `BOTTLE_HEART` = `BOTTLE_HEART` + ? WHERE `ID` = ? LIMIT 1", [1, $game['DATA2']]);
        
        $mess = lg('%s поцеловал игрока %s. +1 сердце.', '[b]'.user::login_mini(user('ID')).'[/b]', '[b]'.user::login_mini($game['DATA2']).'[/b]');
        db::get_add("INSERT INTO `COMMENTS` (`USER_ID`, `OBJECT_TYPE`, `OBJECT_ID`, `TIME`, `MESSAGE`) VALUES (?, ?, ?, ?, ?)", [config('SYSTEM'), 'bottle_comments', $game['ID'], TM, $mess]);
        
        success('Вы поцеловали пользователя');
        
      }
      
      if (get('ok') == 1) {
        
        db::get_set("UPDATE `USERS` SET `BOTTLE_HEART` = `BOTTLE_HEART` + ? WHERE `ID` = ? LIMIT 1", [1, $game['DATA2']]);
        
        $mess = lg('%s сделал комплимент игроку %s. +1 сердце.', '[b]'.user::login_mini(user('ID')).'[/b]', '[b]'.user::login_mini($game['DATA2']).'[/b]');
        db::get_add("INSERT INTO `COMMENTS` (`USER_ID`, `OBJECT_TYPE`, `OBJECT_ID`, `TIME`, `MESSAGE`) VALUES (?, ?, ?, ?, ?)", [config('SYSTEM'), 'bottle_comments', $game['ID'], TM, $mess]);
        
        success('Вы сделали комплимент пользователю');
        
      }
      
      redirect('/games/bottle/game.php?id='.$game['ID'].'&url='.tabs($game['URL']));
      
    }
    
    if (get('get') == 'off') {
      
      get_check_valid();
      
      if (strpos($game['DELETE'], ':'.user('ID').':') === false) {
        
        if ($game['US1'] == user('ID')) { $t = 1; }
        if ($game['US2'] == user('ID')) { $t = 2; }
        if ($game['US3'] == user('ID')) { $t = 3; }
        if ($game['US4'] == user('ID')) { $t = 4; }
        if ($game['US5'] == user('ID')) { $t = 5; }
        if ($game['US6'] == user('ID')) { $t = 6; }
        if ($game['US7'] == user('ID')) { $t = 7; }
        if ($game['US8'] == user('ID')) { $t = 8; }
        
        db::get_set("UPDATE `BOTTLE` SET `JTIME` = ?, `DELETE` = ?, `US".$t."` = ?, `EYE` = ?, `START_USER` = ?, `DATA` = ?, `EYE2` = ?, `DATA2` = ?, `DATA3` = ? WHERE `ID` = ? LIMIT 1", [(TM + 60), $game['DELETE'].user('ID').':', 0, ':0:', bt_rand(), rand(0,2), ':'.($game['US1'] != user('ID') ? $game['US1'].':' : null).''.($game['US2'] != user('ID') ? $game['US2'].':' : null).''.($game['US3'] != user('ID') ? $game['US3'].':' : null).''.($game['US4'] != user('ID') ? $game['US4'].':' : null).''.($game['US5'] != user('ID') ? $game['US5'].':' : null).''.($game['US6'] != user('ID') ? $game['US6'].':' : null).''.($game['US7'] != user('ID') ? $game['US7'].':' : null).''.($game['US8'] != user('ID') ? $game['US8'].':' : null), 0, 0, $game['ID']]);
        
        success('Вы покинули игру');
        redirect('/games/bottle/game.php?id='.$game['ID'].'&url='.tabs($game['URL']));
        
      }
      
    }
    
    ?>
    <div class="modal_phone" style="display: block"></div>
    <div class="modal_center" style="display: block; animation: none">
    <div class="modal-container" style="padding: 17px; padding-top: 20px">
    <br /><?=$type3?><br /><br /><br />
    <?=$type4?>
    <a href="/games/bottle/game.php?id=<?=$game['ID']?>&url=<?=tabs($game['URL'])?>&get=off&<?=TOKEN_URL?>" class="bt-button2" style="background-color: #FF699A; margin-top: 10px"><?=lg('Покинуть стол')?></a>
    </div>
    </div>
    <?
    
  }
  
  if ($game['USER_ID'] == user('ID')) {
    
    if (get('get') == 'del_us') {
      
      get_check_valid();
      
      if ($game['US1'] == $game['DATA3']) { $t = 1; }
      if ($game['US2'] == $game['DATA3']) { $t = 2; }
      if ($game['US3'] == $game['DATA3']) { $t = 3; }
      if ($game['US4'] == $game['DATA3']) { $t = 4; }
      if ($game['US5'] == $game['DATA3']) { $t = 5; }
      if ($game['US6'] == $game['DATA3']) { $t = 6; }
      if ($game['US7'] == $game['DATA3']) { $t = 7; }
      if ($game['US8'] == $game['DATA3']) { $t = 8; }
      
      db::get_set("UPDATE `BOTTLE` SET `JTIME` = ?, `DELETE` = ?, `US".$t."` = ?, `EYE` = ?, `START_USER` = ?, `DATA` = ?, `EYE2` = ?, `DATA2` = ?, `DATA3` = ? WHERE `ID` = ? LIMIT 1", [(TM + 60), $game['DELETE'].$game['DATA3'].':', 0, ':0:', bt_rand(), rand(0,2), ':'.($game['US1'] != user('ID') ? $game['US1'].':' : null).''.($game['US2'] != user('ID') ? $game['US2'].':' : null).''.($game['US3'] != user('ID') ? $game['US3'].':' : null).''.($game['US4'] != user('ID') ? $game['US4'].':' : null).''.($game['US5'] != user('ID') ? $game['US5'].':' : null).''.($game['US6'] != user('ID') ? $game['US6'].':' : null).''.($game['US7'] != user('ID') ? $game['US7'].':' : null).''.($game['US8'] != user('ID') ? $game['US8'].':' : null), 0, 0, $game['ID']]);
      
      success('Пользователь успешно исключен');
      redirect('/games/bottle/game.php?id='.$game['ID'].'&url='.tabs($game['URL']));
    
    }
    
    ?>
    <a class="bottle-start" style="background-color: #FF699A" href="/games/bottle/game.php?id=<?=$game['ID']?>&url=<?=tabs($game['URL'])?>&get=del_us&<?=TOKEN_URL?>"><?=lg('Исключить %s', user::login_mini($game['DATA3']))?></a>
    <?
    
  }
  
  ?>    
  <div class='bt-message2'><?=lg('Ожидание: %s должен(-а) %s %s, либо отказаться и покинуть стол', '<b>'.user::login_mini($game['DATA3']).'</b>', '<b>'.$type2.'</b>', '<b>'.user::login_mini($game['DATA2']).'</b>')?></div>
  <?
  
}else{
  
  ?>
  <div class='bt-message'><?=lg('Задание: %s в течение 60 секунд должен(-а) покрутить бутылочку и выбрать %s', '<b>'.user::login_mini($game['START_USER']).'</b>', '<b>'.$type.'</b>')?></div>
  <?
  
  if ($game['START_USER'] == user('ID')) {
  
    ?>
    <button id="bt-on" class="bottle-start" onclick="bt_startOn()" start="<?=lg('Крутим...')?>" finish="<?=lg('Начать')?>"><?=lg('Начать')?></button>
    <?
  
  }
  
}
  
?>
 
<?php else : ?>
<div class='bt-error'><?=lg('Для активации стола игроков должно быть не менее 3-х')?></div>
<?php endif ?>
<?php else : ?>
<?php if ($game['US1'] > 0 && $game['US2'] > 0 && $game['US3'] > 0 && $game['US4'] > 0 && $game['US5'] > 0 && $game['US6'] > 0 && $game['US7'] > 0 && $game['US8'] > 0) : ?>
<span class="bottle-start" style="min-width: 160px; text-align: center; background: #F6397E"><?=lg('Все места заняты')?></span>
<?php else : ?>
<?php if (strpos($game['DELETE'], ':'.user('ID').':') === false) : ?>
<a class="bottle-start" href="/games/bottle/game.php?id=<?=$game['ID']?>&url=<?=tabs($game['URL'])?>&<?=TOKEN_URL?>&get=add" style="min-width: 160px; text-align: center; background: #52D476"><?=lg('Присоединиться')?></a>
<?php endif ?>
<?php endif ?>
<?php endif ?>
  
<span class='bt-data'><div style='position: relative; display: inline-block'><?=bt_show(($game['US1'] > 0 ? 1 : 0), ($game['US8'] > 0 ? 1 : 0), ($game['US3'] > 0 ? 1 : 0), ($game['US2'] > 0 ? 1 : 0), ($game['US7'] > 0 ? 1 : 0), ($game['US6'] > 0 ? 1 : 0), ($game['US4'] > 0 ? 1 : 0), ($game['US5'] > 0 ? 1 : 0))?><img src="/games/bottle/img/table.png" style="max-width: 380px"></div><span>  
  
</div>

<span class='bt-data'><img id="bt-start" src="/games/bottle/img/bottle<?=$game['BOTTLE']?>.png" style="max-width: <?=$max?>px"></span><br /><br />
  
</div>
  
<div class='list'>
<b><?=lg('Чат стола')?></b> <span class='count'><?=db::get_column("SELECT COUNT(`ID`) FROM `COMMENTS` WHERE `OBJECT_ID` = ? AND `OBJECT_TYPE` = ? LIMIT 1", [$game['ID'], 'bottle_comments'])?></span>
<?php if ($game['USER_ID'] == user('ID')) : ?>
<a style='float: right; position: relative; bottom: 6px' href='/games/bottle/game.php?id=<?=$game['ID']?>&get=delete_chat&<?=TOKEN_URL?>&url=<?=tabs($game['URL'])?>' class='btn-o'><?=icons('trash', 17, 'fa-fw')?> <?=lg('Очистить')?></a>
<?php endif ?>
</div>
  
<?php
comments('/games/bottle/game.php?id='.$game['ID'].'&url='.tabs($game['URL']), 'bottle_comments', 0, 'message', $game['USER_ID'], $game['ID']);  
  
back('/games/bottle/?');
acms_footer();