1. Соблюдайте Правила форума и проявляйте уважение к другим участникам беседы.

Быдло кодинг.

Тема в разделе 'Общение', создана пользователем fake, 16 май 2011.

  1. rost Гуру

    Сообщения:
    1.258
    Спасибы:
    150
    Сборка бота GHost:
    LtG
    Дата начала использования бота:
    01.11.2010
    Skype:
    Мой статус
    Пыталсо, перпыталсо...
    Кароче зделать так хотел:
    При киле я заметил бот пишет в логе что так-то так убили такого токаго.
    Ну и бот это подсчитует.
    То что я хочу касаетсо Double kill и т.д...
    Как лонг сказал там вроде 16 секунд дают чтобы после кила еще защитало как связку.
    МОжно зделать так чтобы просле кила давало 16 секунд на еще кил и если ты его делаешь то это кпримеру идет в колонку Double (уже созданную в БД в dotapyayers), а если еще за 16 сек кил то это число идет в колонку Tripl.
    Желательно чтобы небыло такого что если дабл оно в дабл если трипт оно ЕЩЕ И В ТРИПЛ.
    Тогда очевидно будет даблов больше всего и так по убыванию.
    А так можно чтобы даже RAMPAGE было больше чем Double если поставить какуюто проверку, что типа если оно шлет число в Tripl то в Double уже нече не шлет. И так же при RAMPAGE чтобы оно неслало число и в Ultra и в Tripl и в Double. Тоесть какую связку набил такая и записуетсо.
    Блеать я несильно запутал?)
  2. ____ROB____ Старожила

    Сообщения:
    1.008
    Спасибы:
    22
    Сборка бота GHost:
    Ghost One 1.5
    фейк будет время, заглянешь сюда о_o
  3. rost Гуру

    Сообщения:
    1.258
    Спасибы:
    150
    Сборка бота GHost:
    LtG
    Дата начала использования бота:
    01.11.2010
    Skype:
    Мой статус
    Нашол такое:
    это спуф чек при заходе в игру
    Код:
    if( (*i)->GetServer( ) == JoinedRealm )
    				SendChat( Player, m_GHost->m_Language->GetLang( "lang_0067", string( UniqueName.begin( ), UniqueName.end( ) )  ) );
    Как зделать чтобы игроку в приват писало??? Ставил много че, но невышло.

    А вот то что нужно но непашет:
    Код:
    if( (*i)->GetServer( ) == player->GetJoinedRealm( ) )
    			{
    				// hackhack: there must be a better way to do this
    
    				if( (*i)->GetPasswordHashType( ) == "pvpgn" )
    					(*i)->UnqueueChatCommand( "/whereis " + player->GetName( ) );
    				else
    					(*i)->UnqueueChatCommand( "/whois " + player->GetName( ) );
    
    				(*i)->UnqueueChatCommand( "/w " + player->GetName( ) + " " + m_GHost->m_Language->GetLang("lang_0041") ); // SpoofCheckByReplying
    			}
    		}
    	}
    
  4. fake Старожила

    Сообщения:
    1.624
    Спасибы:
    19
    Дата начала использования бота:
    11.11.11
    сори но я вас не понимаю... просьба не кидать брт код...найди этот же в гхост оне и переформулируй вопрос.Роб, запросы в бд не относятся к кодингу
  5. rost Гуру

    Сообщения:
    1.258
    Спасибы:
    150
    Сборка бота GHost:
    LtG
    Дата начала использования бота:
    01.11.2010
    Skype:
    Мой статус
    Я кинул вроде код который везде есть.
    При заходе в игру пишет:
    Spoof ChecK отправте /w host sc
    Мне надо чтобы оно кароче в приват игроку писало вот.
    Типа так:
    Код:
    Авторизируйтесь отправив /w host sc
    и это в приват каждому зашедшему в лобби.
  6. fake Старожила

    Сообщения:
    1.624
    Спасибы:
    19
    Дата начала использования бота:
    11.11.11
    viwe 4ast koda...
  7. Synth (LM) Пантограф!

    Сообщения:
    2.762
    Спасибы:
    172
    Сборка бота GHost:
    My own version of GhostOne
    Дата начала использования бота:
    15.06.2008
    Skype:
    Мой статус
    Нене, без транслита.
  8. fake Старожила

    Сообщения:
    1.624
    Спасибы:
    19
    Дата начала использования бота:
    11.11.11
    flame je, roost dai kod s ghost one i s ciklom...
  9. rost Гуру

    Сообщения:
    1.258
    Спасибы:
    150
    Сборка бота GHost:
    LtG
    Дата начала использования бота:
    01.11.2010
    Skype:
    Мой статус
    Я показал что есть 2 части кода.
    1-е пашет, но пишет в чат, и видит только игрок зашедший.
    2-я часть неработает, там пишет в приват. (мне так и надо, чтоб в глаза кидалось)

    Вобщем можешь даже просто сказать как зделать чтобы при заходе в игру писало в приват зашедшему.
    Код:
    SendAllChat( "Player [" + joinPlayer->GetName( ) + "] connected with [" + ServName + "]" );
    Вот даже в этой функции, как зделать чтобы в приват ему писало. Я ставил другое место sendallchat, но невыходит.
  10. fake Старожила

    Сообщения:
    1.624
    Спасибы:
    19
    Дата начала использования бота:
    11.11.11
    думаеш пользователь не знает откуда он зашел??
    помоему эт смешно.
    дай весь код я те покажу тот иф изза которого оно "НЕ ПАШЕТ"
  11. rost Гуру

    Сообщения:
    1.258
    Спасибы:
    150
    Сборка бота GHost:
    LtG
    Дата начала использования бота:
    01.11.2010
    Skype:
    Мой статус
    Не я тебе просто показал на обычненьком примере что я хочу.
    Просто когда заходит игрок пишет spoof check отправьте /w host sc
    Мне эту фразу надо чтобы оно в приват слало. Так сразу в глаза кидается да и нужно тогода будет просто /r sc
    Я тебе скинул 2 кода
    1-й там где оно работает, но шлет не в приват, это бот и выдает.
    2-й код для привата, но бот юзает 1-й код.
    Вот весь 2-й код (тут посмотри че не так):
    Код:
    void CBaseGame :: EventPlayerDeleted( CGamePlayer *player )
    {
    	CONSOLE_Print( "[GAME: " + m_GameName + "] deleting player [" + player->GetName( ) + "]: " + player->GetLeftReason( ) );
    
    	// remove any queued spoofcheck messages for this player
    
    	if( player->GetWhoisSent( ) && !player->GetJoinedRealm( ).empty( ) && player->GetSpoofedRealm( ).empty( ) )
    	{
    		for( vector<CBNET *> :: iterator i = m_GHost->m_BNETs.begin( ); i != m_GHost->m_BNETs.end( ); i++ )
    		{
    			if( (*i)->GetServer( ) == player->GetJoinedRealm( ) )
    			{
    				// hackhack: there must be a better way to do this
    
    				if( (*i)->GetPasswordHashType( ) == "pvpgn" )
    					(*i)->UnqueueChatCommand( "/whereis " + player->GetName( ) );
    				else
    					(*i)->UnqueueChatCommand( "/whois " + player->GetName( ) );
    
    				(*i)->UnqueueChatCommand( "/w " + player->GetName( ) + " " + m_GHost->m_Language->GetLang("lang_0041") ); // SpoofCheckByReplying
    			}
    		}
    	}
    Ну а вот 1-й, так кинул если чет надо (если будет пахать 1-й можно будет его закоментить):
    Код:
    	if( m_GHost->m_RequireSpoofChecks && !Player->GetWhoisShouldBeSent( ) )
    	{
    		for( vector<CBNET *> :: iterator i = m_GHost->m_BNETs.begin( ); i != m_GHost->m_BNETs.end( ); i++ )
    		{
    			// note: the following (commented out) line of code will crash because calling GetUniqueName( ) twice will result in two different return values
    			// and unfortunately iterators are not valid if compared against different containers
    			// this comment shall serve as warning to not make this mistake again since it has now been made twice before in GHost++
    			// string( (*i)->GetUniqueName( ).begin( ), (*i)->GetUniqueName( ).end( ) )
    
    			BYTEARRAY UniqueName = (*i)->GetUniqueName( );
    
    			if( (*i)->GetServer( ) == JoinedRealm )
    				SendChat( Player, m_GHost->m_Language->GetLang( "lang_0067", string( UniqueName.begin( ), UniqueName.end( ) )  ) );
    		}
    	}
    -------
    P.S.: мне это надо тошо, что-то атвоспуф как-то через раз пашет, то ли из-за Gproxy то ли еще чето...
    Вобщем решил на ручной перейти, мб у тебя есть обьяснение почему авто пашет не на все 100% ??
  12. fake Старожила

    Сообщения:
    1.624
    Спасибы:
    19
    Дата начала использования бота:
    11.11.11
    есть инфа
    что этот код не посылает сообщение в приват, а убирает его из очереди Unqueue
    Не там ищешь функция спуфчека не может находится в EventPlayerDeleted.
    А второй код из за ГЕТЛАНГА я даже смотреть не буду.Кидай код с гхост оне, или заменяй в брт гетланг на функции из гхост оне...Будешь кидать с брт, буду игнорировать..
  13. D-MiLIR Ньюфаг

    Сообщения:
    109
    Спасибы:
    0
    Помогите сделать такую вещь ^^ Добавить такую команду !listtd и он выдает список карт пронумерованных.
    Например: 1-Mirana wars, 2-Pudge Wars и т.д.

    А также добавить либо заменить команду !pub на !pubtd [номер из списка(смотреть выше)] [имя игры] .
    Например: !pubtd 1 Go vse. Должна создать карта Mirana wars с названием Go vse
    Спасибо заранее.
  14. rost Гуру

    Сообщения:
    1.258
    Спасибы:
    150
    Сборка бота GHost:
    LtG
    Дата начала использования бота:
    01.11.2010
    Skype:
    Мой статус
    Если ты их пронумерушь + свою команду зделаешь как команду !map но поставиль payload на дефолт такой -> w3x,
    то оно по идее и будет выдавать их по порядку (т.к. ты их пронумеровал)
    А в команду создания надо будет конфиг както всунуть , я хз. Делал только с названием.
  15. rost Гуру

    Сообщения:
    1.258
    Спасибы:
    150
    Сборка бота GHost:
    LtG
    Дата начала использования бота:
    01.11.2010
    Skype:
    Мой статус
    Fake я вроде и в One видел этот же код, т.к. я и One скачал чтобы проверить как там.
    И функции я тебе те кинул, т.к. я их по лангу нашол (тот который и пишет пройдите спуфчек)
    Может про delete player то лишнее, хотя вроде как и в функции было.
    Давай тогда чтоб непарится, просто если это не очень сложно, то напиши маленький код который будет работать так:
    заходит человек в игру ему в приват lang_0099, и именно в приват.
    Мне не столь важны эти функции что я тебе кидаю, мне нужна просто фраза в приват, когда ктото в лобби коннект. Я пытался но постоянно краш (но я пытался пофиксить эти)
    Если этот код неоч сложный и ты без проблем его накидаешь, то буду благодарен :prayy:
  16. fake Старожила

    Сообщения:
    1.624
    Спасибы:
    19
    Дата начала использования бота:
    11.11.11
    если это высвечивает при заходе
    Код:
            if( (*i)->GetServer( ) == JoinedRealm )
                SendChat( Player, m_GHost->m_Language->GetLang( "lang_0067", string( UniqueName.begin( ), UniqueName.end( ) )  ) );
    ,то примерно так.
    if( (*i)->GetServer( ) == JoinedRealm )
    (*i)->QueueChatCommand( "/w "+ string( UniqueName.begin( ), UniqueName.end( ) +" "+m_GHost->m_Language->GetLang( "lang_0099") );
    код мне в падлу открывать поэтому писал в слепую, что такое 99 ланг тоже хз...
  17. rost Гуру

    Сообщения:
    1.258
    Спасибы:
    150
    Сборка бота GHost:
    LtG
    Дата начала использования бота:
    01.11.2010
    Skype:
    Мой статус
    Проверю отпишу. 99 ланг, то для примера))
    ------------------
    Вобщем немного подправил и вышло.
    Зделал так:
    Код:
    if( (*i)->GetServer( ) == JoinedRealm )
    (*i)->QueueChatCommand( "/w " + Player->GetName( ) + " " +m_GHost->m_Language->GetLang( "lang_xxxx") );
    Вобщем СпС))
    P.S.: А еще по поводу votekick я отпишу, а то чуток ту команду подзабросил. (ну чтоб могли кикать только из своей тимы)
  18. rost Гуру

    Сообщения:
    1.258
    Спасибы:
    150
    Сборка бота GHost:
    LtG
    Дата начала использования бота:
    01.11.2010
    Skype:
    Мой статус
    Fake смотри что я пыталсо:
    в Game_base.cpp
    Код:
    if(GetTime( )> 120 && m_GameLoaded)
    SendAllChat("Бла бла бла");
    Вобщем чето вышло, но он тупо флудит. Скажи как поставить ограничение в написание 1 раз и неболее.
    Это я так пытаюсь MarsAuto заменить, по рахитски правда,но хоть както.
    Ну чтоб в игре писало мол:
    Код:
    Неливайте - есть команда !ff 
    и типа такого, разная хренатень.
  19. Guard Старожила

    Сообщения:
    473
    Спасибы:
    47
    Сборка бота GHost:
    Ghost++ RAKAL Edition
    Дата начала использования бота:
    00.00.2009
    Skype:
    Мой статус
    Предлагаю сделать команду (например) !info .
    Вводишь ее, а она показывает текст из файла (например) info.txt
    Увы сам реализовать не могу... знаний не хватает категорически! :D

    Или же есть аналог этой команды?? :patsak:
  20. rost Гуру

    Сообщения:
    1.258
    Спасибы:
    150
    Сборка бота GHost:
    LtG
    Дата начала использования бота:
    01.11.2010
    Skype:
    Мой статус
    !mars введи