<?php
if (!defined('GAME')) {
    die();
}

class Chat
{

    var $smilesWorld = [
        'laugh' => [0 => 'смеется', 1 => 'посмеялся над [*%l*]'],
        'fingal' => [0 => 'трет фингал', 1 => 'щупает фингал у [*%l*]'],
        'eek' => [0 => 'ошарашен', 1 => 'ошарашен действиями [*%l*]'],
        'smoke' => [0 => 'закуривает', 1 => 'предлагает [*%l*] пойти покурить'],
        'hi' => [0 => 'приветствует всех вокруг', 1 => 'приветствует [*%l*]'],
        'bye' => [0 => 'прощается со всеми и уходит', 1 => 'прощается с [*%l*]'],
        'king' => [0 => 'коронует себя :-)', 1 => 'объявляет [*%l*] своим королем!'],
        'king2' => [0 => 'коронует себя :-)', 1 => 'объявляет [*%l*] своей королевой!'],
        'boks2' => [0 => 'вызывает всех на поединок', 1 => 'предлагает [*%l*] дружеский матч'],
        'boks' => [0 => 'обещает побить любого, кто примет вызов!', 1 => 'намекает [*%l*] на поединок'],
        'gent' => [0 => 'предлагает считать себя благородным сэром', 1 => 'считает [*%l*] джельтельменом'],
        'lady' => [0 => 'предлагает считать себя благородной леди', 1 => 'считает, что [*%l*] настоящая Леди'],
        'tongue' => [0 => 'показывает окружающим язык', 1 => 'показывает язык [*%l*]'],
        'smil' => [0 => 'болтает без умолку', 1 => 'считает, что [*%l*] говорит откровенную ерунду!'],
        'ponder' => [0 => 'кое-что усиленно обдумывает', 1 => 'обещает обмозговать предложение [*%l*]'],
        'bow' => [0 => 'сохраняя достоинство, кивает окружающим', 1 => 'сохраняя достоинство кивает  [*%l*]'],
        'angel' => [0 => 'считает себя Ангелом', 1 => 'считает [*%l*] своим Ангелом'],
        'angel2' => [0 => 'грезит об Ангелах', 1 => 'думает что  [*%l*] Ангел'],
        'hello' => [0 => 'желает здравствовать окружающим', 1 => 'желает здравствовать [*%l*]'],
        'dont' => [0 => 'рекомендует окружающим не делать этого', 1 => 'рекомендует [*%l*] не делать этого'],
        'idea' => [0 => 'озарен свежей идеей!', 1 => 'предлагает [*%l*] обсудить пару идей'],
        'mol' => [0 => 'преклоняется перед окружающими', 1 => 'преклоняется перед [*%l*]'],
        'super' => [0 => 'считает, что мир хорош, все дамы - Леди, а Солнце - шар дающий свет!', 1 => 'фанатеет от [*%l*]'],
        'beer' => [0 => 'вспоминает про припрятаный в заначке эликсир...', 1 => 'готов поделиться с [*%l*] припрятанным эликсиром!'],
        'drink' => [0 => 'считает, что пора пить различные эликсиры', 1 => 'предлагает [*%l*] пойти пропустить по стаканчику эликсира'],
        'baby' => [0 => 'изображает малыша', 1 => ' считает, что [*%l*] еще мал и неопытен для обоснованной критики'],
        'tongue2' => [0 => ' показывает всяким врединам язык', 1 => 'показывает [*%l*] язык, проявляя недовольство'],
        'sword' => [0 => 'готов сразиться в честном поединке', 1 => 'вызывает [*%l*] на честный поединок!'],
        'agree' => [0 => 'пожимает руку собеседникам', 1 => 'пожимает руку [*%l*]'],
        'loveya' => [0 => 'преисполнен чувства любви', 1 => 'преисполнен чувства любви к [*%l*]'],
        'kiss' => [0 => 'целует всех', 1 => 'целует [*%l*]'],
        'kiss2' => [0 => 'хочет нежно поцеловать кого-то...', 1 => 'нежно целует [*%l*]'],
        'kiss3' => [0 => 'кое-кого целует...', 1 => 'нежно целует [*%l*]'],
        'kiss4' => [0 => 'кое-кого целует...', 1 => 'хочет уединиться с [*%l*] и целоваться...'],
        'rose' => [0 => 'хочет кому-то подарить розу, но стесняется...', 1 => 'дарит [*%l*] ароматную розу...'],
        'love' => [0 => 'думает только о любви...', 1 => 'думает, что [loginfrom] + [*%l*]= любовь!'],
        'love2' => [0 => 'мечтает о свадьбе...', 1 => 'мечтает о свадьбе с [*%l*]'],
        'confused' => [0 => 'в недоумении...', 1 => 'недоумевает от [*%l*]'],
        'yes' => [0 => 'кивает в знак согласия', 1 => 'кивает [*%l*] в знак согласия'],
        'no' => [0 => 'мотает головой в знак протеста', 1 => 'мотает головой [*%l*] в знак протеста'],
        'shuffle' => [0 => 'в смущении от таких обстоятельств', 1 => 'в смущении от [*%l*]'],
        'nono' => [0 => 'выражает категорическое несогласие!', 1 => 'выражает категорическое несогласение с [*%l*]'],
        'maniac' => [0 => 'знает точно наперед - сегодня кто-нибудь умрет...', 1 => 'считает, что [*%l*] пора бы уже стать жертвой маньяка...'],
        'privet' => [0 => 'почтительно приветствует окружающих', 1 => 'почтительно приветствует [*%l*]'],
        'ok' => [0 => 'считает, что это замечательная идея', 1 => 'считает, что [*%l*] движется в правильном направлении'],
        'ninja' => [0 => 'угрожает окружающим тайным мастерством!', 1 => 'угрожает [*%l*] мастерством древних'],
        'pif' => [0 => 'ищет подходящую мишень', 1 => 'думает, что сложно промахнуться по [*%l*]'],
        'smash' => [0 => 'собирается крушить и ломать', 1 => 'хочет сломать пару-тройку костей у [*%l*]'],
        'alien' => [0 => 'считает, что мир захватили мутанты!', 1 => ' считает, что [*%l*] еще тот мутант!'],
        'pirate' => [0 => 'подумывает, кого бы ограбить!...', 1 => 'считает, что лучшей жертвы чем [*%l*], не найти!'],
        'gun' => [0 => 'хочет повысить кое-кому уровень железа в организме... :gun:', 1 => 'считает, что у [*%l*] маловато железа в организме! :gun:'],
        'trup' => [0 => 'падает замертво', 1 => 'считает, что [*%l*], живет слишком долго, и пора бы это исправить!'],
        'mdr' => [0 => 'считает, что у него есть отличный способ решения разногласий... :mdr:', 1 => 'предлагает [*%l*] культурно отдохнуть :mdr:'],
        'sneeze' => [0 => 'громко чихает', 1 => 'чихает на [*%l*], обрызгивая его слюнями с ног до головы!'],
        'mad' => [0 => 'просто в бешенстве!!!', 1 => 'в бешенстве от [*%l*]!!!'],
        'friday' => [0 => 'культурно отдыхает...', 1 => 'предлагает [*%l*] культурно отдохнуть'],
        'cry' => [0 => 'безудержно рыдает', 1 => 'рыдает на плече у [*%l*]'],
        'grust' => [0 => 'грустит...', 1 => 'грустит о [*%l*]'],
        'rupor' => [0 => 'пытается докричаться до окружающих', 1 => 'пытается докричаться до [*%l*]'],
        'fie' => [0 => 'умоляет: НЕТ, только не ЭТО!!!', 1 => 'умоляет [*%l*] о пощаде!'],
        'nnn' => [0 => 'ничего не видит, не слышит, и никому не скажет...', 1 => 'ничего не видел, не слышал и не помнит о [*%l*]'],
        'row' => [0 => 'находится в бешенстве и ищет с кем бы пообщаться...', 1 => 'собирается выяснить отношения с [*%l*]'],
        'red' => [0 => 'смущаясь краснеет...', 1 => 'краснеет от [*%l*]'],
        'lick' => [0 => 'облизнулся, в предвкушении', 1 => 'облизывается при виде [*%l*]'],
        'help' => [0 => 'нуждается в срочной помощи!', 1 => 'просит помощи у [*%l*]'],
        'wink' => [0 => 'подмигивает окружающим', 1 => 'подмигивает [*%l*]'],
        'jeer' => [0 => 'посмеивается над ситуацией...', 1 => 'посмеивается над [*%l*]'],
        'tease' => [0 => 'дразнится', 1 => 'дразнит [*%l*]'],
        'nunu' => [0 => 'недоволен окружающими...', 1 => 'недоволен [*%l*]'],
        'inv' => [0 => 'хочет найти свои зубы...', 1 => 'жалуется [*%l*] на трудности жизни инвалида...'],
        'duel' => [0 => 'собирается проткнуть кое-кого...', 1 => 'вызывает [*%l*] на дуэль!'],
        'susel' => [0 => 'Напевая: &quot;эээххх ухнеееемм, да ещеее ууухнеем..&quot; высматривает в толпе подходящий пондер...', 1 => 'предлагает [*%l*] отхватить прямо по пондеру!'],
        'nun' => [0 => 'угрожает окружающим палочками для риса', 1 => 'показывает [*%l*] как надо пользоваться палочками для риса'],
        'kruger' => [0 => 'ненавязчиво объясняет окружающим кого тут надо бояться :kruger:', 1 => 'демонстрирует [*%l*] нестриженные когти'],
        'flowers' => [0 => 'учится выхватывать букет Ромашек-21 из-за спины одним движением', 1 => 'целует [*%l*] и дарит букет ромашек'],
        'horse' => [0 => 'патрулирует границы Бойцовского Клуба', 1 => 'предлагает  [*%l*] порубать всех врагов в капусту! :horse:'],
        'hug' => [0 => 'готов обнять всех в комнате!', 1 => 'крепко обнимает [*%l*]'],
        'str' => [0 => 'в ужасе покрывается ледяным потом!', 1 => 'в ужасе прячется от [*%l*]'],
        'alch' => [0 => 'напоминает окружающим о вечных ценностях :alch:', 1 => 'предлагает [*%l*] приобщиться к вечным ценностям :alch:'],
        'pal' => [0 => ' напоминает, что из под робы выпирает крест, а не что-то там! :-)', 1 => 'требует от  [*%l*] предъявить документы в развернутом виде!'],
        'mag' => [0 => 'читает заклинания. Вслух. По слогам.', 1 => 'произносит страшное колдунство на [*%l*]'],
        'sniper' => [0 => 'изображает из себя Вильгельма Теля', 1 => 'предлагает [*%l*] поиграть в Вильгельма Теля'],
        'fuck' => [0 => 'повторяет позы камасутры', 1 => 'предлагает [*%l*] повторить позы камасутры вместе'],
        'rotate' => [0 => 'катается от смеха по полу', 1 => 'катается по полу от смеха над [*%l*]'],
    ];

    public function expworld($txt, $vl)
    {
        $words = explode(' ', $txt);
        $j = 0;
        $i = -1;
        while ($i < count($words)) {
            $i++;
            if (isset($words[$i])) {
                if (strlen($words[$i]) > $vl) {
                    $words[$i] = substr($words[$i], 0, $vl) . ' ' . substr($words[$i], $vl);
                    $i = 0;
                    $j++;
                    $txt = implode(' ', $words);
                    $words = explode(' ', $txt);
                }
            }
        }
        $txt = implode(' ', $words);
        return $txt;
    }

    public function str_count($str, $col)
    {
        if (strlen($str) > $col) {
            $str = substr($str, 0, $col);
        }
        return ($str);
    }

    public function smileText($text, $tol, $room, $city)
    {
        $retxt = '';
        $j = 0;
        $txt = str_replace('/', '&frasl;', $text) . ' ';

        if (preg_match("/&frasl;(.*?) /", $txt, $retxt)) {
            if (isset($this->smilesWorld[$retxt[1]])) {
                if ($tol == '') {
                    $tol = str_replace('&frasl;' . $retxt[1] . ' ', '', $txt);
                    $tol = trim($tol, ' ');
                }
                if ($tol == '') {
                    $txt = '' . $this->smilesWorld[$retxt[1]][0] . '';
                } else {
                    $mbl = mysql_fetch_array(mysql_query('SELECT `online`,`id`,`login`,`room`,`city` FROM `users` WHERE `room`="' . $room . '" AND `online` > ' . (time() - 520) . ' AND `city` = "' . $city . '" AND `login`="' . mysql_real_escape_string($tol) . '" LIMIT 1'));
                    if (isset($mbl['id'])) {
                        $txt = '' . $this->smilesWorld[$retxt[1]][1] . '';
                        $txt = str_replace('[*%l*]', '[login:' . $tol . ']', $txt);
                    } else {
                        $txt = 'USER IS FALSE';
                    }
                }
                $j = 1;
            }
        }

        if ($j == 1) {
            $text = $txt;
        } else {
            $text = false;
        }

        return $text;
    }

    public function send($color, $room, $city, $from, $to, $text, $time, $type, $toChat, $spam, $sound, $new = 0)
    {
        //mysql_query('LOCK TABLES chat WRITE');

        mysql_query("INSERT INTO `chat` (`new`,`sound`,`color`,`city`,`room`,`login`,`to`,`text`,`time`,`type`,`toChat`,`spam`) VALUES ('" . $new . "','" . $sound . "','" . $color . "','" . $city . "','" . $room . "','" . $from . "','" . $to . "','" . $text . "','" . $time . "','" . $type . "','" . $toChat . "','" . $spam . "')");

        //mysql_query('UNLOCK TABLES');

        $msg_id = mysql_insert_id();
        return $msg_id;
    }

    public function jsmsg($id, $time, $to, $from, $type, $ch, $e, $see, $js = 0, $cl = '#000000', $typeTime = null)
    {
        $tm = date('H:i', $time);
        if ($typeTime == 1) {
            $tm = date('d.m.Y H:i', $time);
        }
        $rt = 'top.addMessage(\'' . $id . '\',\'' . $tm . '\',\'' . $to . ' \',\'' . $from . '\',\'' . $type . '\',\'' . $ch . '\'," ' . $e . ' ",\'' . $see . '\',\'' . $cl . '\');';
        if ($js == 1) {
            $rt = '<script>' . $rt . '</script>';
        }
        return $rt;
    }
}

$chat = new Chat();
