Вход Регистрация
Файл: world-faces.ru/world-faces.ru/chat/inc/bar.php
Строк: 80
<?php

class barmen{
    public 
$msg;
    public 
$team;
    public 
$posts;
    public 
$alcohol;
    public 
$config;
    public 
$drinks = array();
    public 
$food = array();
    public 
$youDrunk = array();
    public 
$userProfile = array();
    public 
$eda;

    
/*
    * $login   - Логин юзера
    * $alcohol - уровень опьянения юзера
    * $money   - Количество денег на счету у юзера
    * $keyLog  - Ключ (ид юзера) для лога его покупок
    **/
    
function __construct($alcohol$posts$keyLog$pol) {
        
$this->alcohol $alcohol;
        
$this->posts $posts;
        
$this->pol $pol;
        
//Лог файл
        
$this->logFole H.'chat/dat/log/'.$keyLog.'.dat';        //Настройки бота
        
$this->config parse_ini_file(H.'chat/dat/config.ini');
        
//Авто Очистка лога
        
if (!$alcohol && file_exists($this->logFole)) unlink($this->logFole);

    }

    
/*Анализ сообщение
    * $msg - Сообшение
    * Функция возвращает
    * 1 - если чел слишком пьян
    * 2 - если у чела нет денег для оплаты
    * 3 - Заказ выполнен
    */
    
public function analysis($msg) {
    
$this->msg $msg;
        
preg_match("#!(.*?)(s|$)#i"$msg$arr);
        if (
$this->alcohol $this->config['font']) {
                
$this->msg $this->font($msg);
        }
        
/*Стриптиз*/
        
$mony_strip 100//Цена стриптиза
        
$strip = array('стрип''стриптиз''strip''striptiz');

        if (
in_array(mb_strtolower($arr[1], 'UTF-8'), $strip)) {
            if (
$mony_strip $this->posts) return 2;
            
$this->eda true//Чтоб тост не говорило
                
if($this->pol == 0
                
$rand mysql_fetch_assoc(mysql_query("SELECT `file`,`name`,`sex` FROM `bar_strip` WHERE `sex`='0' ORDER BY RAND() LIMIT 1"));
                else
                
$rand mysql_fetch_assoc(mysql_query("SELECT `file`,`name`,`sex` FROM `bar_strip` WHERE `sex`='1' ORDER BY RAND() LIMIT 1"));

    
$teex = ($rand['sex']==1?'. Встречайте, очаровательная [b]'.$rand['name'].'[/b]':'. Встречайте обворожительного мачо [b]'.$rand['name'].'[/b]');
            
$this->team = ($rand['sex'] == 'cтриптизершу' 'cтриптизера');
            
$this->setLog();
            
$this->team .= $teex.' [img]/files/strip/'.$rand['file'].'[/img]';
            
$this->posts $this->posts-$mony_strip;
            
//$this->update_alcohol = 0;
            
return 3;
        }

        
$res mysql_fetch_assoc(mysql_query("SELECT * FROM bar_product WHERE name = '".htmlspecialchars(mb_strtolower($arr[1], 'UTF-8'))."'"));
        if (!empty(
$res['name'])) {
            
$this->eda $res['alcohol'] < true false;
            
$this->alcohol $this->alcohol $this->alcohol+$res['alcohol'] : $res['alcohol'];
            if (!
$this->eda && ($this->alcohol $this->config['youdrunk'])) {
                return 
1;
            } elseif (
$res['price'] > $this->posts) {
                return 
2;
            } else {
                
$this->posts $this->posts-$res['price'];
                if (
$this->alcohol >= 100) {
                    
$this->alcohol 100;
                } elseif (
$this->alcohol 0) {
                    
$this->alcohol 0;
                }
                
$this->alcohol abs($this->alcohol);
                
$this->team $res['name'];
                
$this->setLog();
                if (
is_file(H.'files/barmen/'.$res['id'].'.'.$res['type'])) {
                    
$this->team .= ' [img]/files/barmen/'.$res['id'].'.'.$res['type'].'[/img]';
                }

                return 
3;
            }
        }
    }

    
//Случайный тост
    
public function toast() {
        
$data file(H.'chat/dat/tost.dat');
        return 
$data[array_rand($data)];
    }
    
//Случайное оповешение о том что юзер пьян
    
public function youDrunk() {
        
$data file(H.'chat/dat/ydrunk.dat');
        return 
$data[array_rand($data)];
    }
    
//Преобразование текста в ПрЫгАюЩиЙ регистр
    
public function font($msg) {
        
$msg iconv("UTF-8""windows-1251"$msg);
        
$count strlen($msg);
        for(
$i 0$i<$count$i++) {
            
$r $r 1;
            
$txt .= $r mb_strtoupper($msg[$i], 'windows-1251') : mb_strtolower($msg[$i], 'windows-1251');
        }
        return 
iconv("windows-1251",  "UTF-8"$txt);
    }

    
//Запись в лог покупок
    
public function setLog() {
        
$fp fopen($this->logFole'a+');
        
flock ($fpLOCK_EX);
        
fwrite($fp$this->team.'('.date("d.m.Y H:i").')<br/>');
        
flock ($fpLOCK_UN);
        
fclose($fp);
        @
chmod($this->logFole0666);
    }
    
//Загрузка лога
    
public function getLog() {
        return 
file_exists($this->logFole) ? file_get_contents($this->logFole) : 'История пока пуста...';
    }
}
?>
Онлайн: 1
Реклама