Русское сообщество по скриптингу

Отлов joinclass

Все вопросы по скриптингу для Metamod, помощь в редактировании плагинов.
Правила форума
1. Запрещено материться и оскорблять других участников форума.
2. Запрещен флуд, оффтоп, дабл постинг во всех разделах форума, кроме раздела "Болтовня".
3. Запрещено взламывать сайт/форум или наносить любой вред проекту.
4. Запрещено рекламировать другие ресурсы.
5. Запрещено создавать темы без информативного названия. Название темы должно отображать ее смысл.

В данном разделе форума разрешено создавать темы, касающие только скриптинга для
Metamod.


Правила при создании новой темы:
1. При вставке кода плагина необходимо использовать тег [pawn], в противном случае, если тег [pawn] не отображает ваш код, можно использовать тег [code].
2. Любые изображения должны быть загружены, как вложения к вашему сообщению.
3. При описании проблемы или запросе на помощь в редактировании плагина обязательно выкладывайте исходник плагина.

Отлов joinclass

Сообщение spree » 19 дек 2013, 16:23

как отловить joinclass при входе на сервер в меню?
Аватара пользователя
spree
 
Сообщения: 640
Зарегистрирован: 05 дек 2013, 15:01
Откуда: Курган
Благодарил (а): 61 раз.
Поблагодарили: 118 раз.
Языки программирования: Counter-Strike 1.6
Half-life

Re: Отлов joinclass

Сообщение Bos93 » 19 дек 2013, 18:09

Meta_Attach -> GetEntityAPI2 -> ClientCommand

Код: Выделить всё
static META_FUNCTIONS gMetaFunctionTable;
C_DLLEXPORT int Meta_Attach(PLUG_LOADTIME now, META_FUNCTIONS *pFunctionTable, meta_globals_t *pMGlobals, gamedll_funcs_t *pGamedllFuncs)
{
    gpMetaGlobals = pMGlobals;
    gpGamedllFuncs = pGamedllFuncs;

   gMetaFunctionTable.pfnGetEntityAPI2 = GetEntityAPI2;
   
   memcpy(pFunctionTable, &gMetaFunctionTable, sizeof(META_FUNCTIONS));

   return true;
}


Код: Выделить всё
DLL_FUNCTIONS gFunctionTable;
C_DLLEXPORT   int   GetEntityAPI2(DLL_FUNCTIONS *pFunctionTable, int *interfaceVersion)
{
   memset(&gFunctionTable, 0, sizeof(DLL_FUNCTIONS));

   gFunctionTable.pfnClientCommand = ClientCommand;
   memcpy(pFunctionTable, &gFunctionTable, sizeof(DLL_FUNCTIONS));

   return 1;
}


Код: Выделить всё
void ClientCommand( edict_t *pEntity )
{
   const char *szArg; szArg = CMD_ARGV(0);
   
   if (!strcmp(szArg, "joinclass"))
   {
      printf( "joinclass\n" );
      RETURN_META(MRES_IGNORED);
   }
   
   RETURN_META(MRES_IGNORED);
}
Всем добра, любви и осознанности.

Nosce animum tuum.

А осознание и есть, что понял и осмыслил..
А коль не думал ты о том, то кто о том замыслил..?
Аватара пользователя
Bos93
 
Сообщения: 1429
Зарегистрирован: 03 апр 2010, 13:44
Благодарил (а): 149 раз.
Поблагодарили: 511 раз.

Re: Отлов joinclass

Сообщение spree » 19 дек 2013, 20:13

я так понял это нифига не amx?
мне нужно средствами amx и его модулями отловить.

фишка в том что если игрок зашел за команду сразу живым то после его смерти его воскрешает через 2 секунды но если игрок не успевает зайти живым за команду то так и висит мертвым до нового раунда а разминка идёт 2 минуты.

Не могу придумать как отловить игрока при входе за команду мёртвым.
Аватара пользователя
spree
 
Сообщения: 640
Зарегистрирован: 05 дек 2013, 15:01
Откуда: Курган
Благодарил (а): 61 раз.
Поблагодарили: 118 раз.
Языки программирования: Counter-Strike 1.6
Half-life

Re: Отлов joinclass

Сообщение Safety1st » 19 дек 2013, 20:49


No comments xD

но если игрок не успевает зайти живым за команду

Живыми игроки за команду никогда не входили.
GoldSrc Gaming Community
Аватара пользователя
Safety1st
 
Сообщения: 1961
Зарегистрирован: 08 окт 2011, 05:41
Откуда: Moscow
Благодарил (а): 1690 раз.
Поблагодарили: 929 раз.
Опыт программирования: Около года
Языки программирования: Counter-Strike 1.6
Half-Life

Re: Отлов joinclass

Сообщение spree » 19 дек 2013, 22:39

я вообще не пойму как я в metamod попал :-D
сделал я наконец что хотел :-)
Живыми игроки за команду никогда не входили.

да я имел в виду за класс запутался уже.
Аватара пользователя
spree
 
Сообщения: 640
Зарегистрирован: 05 дек 2013, 15:01
Откуда: Курган
Благодарил (а): 61 раз.
Поблагодарили: 118 раз.
Языки программирования: Counter-Strike 1.6
Half-life

Re: Отлов joinclass

Сообщение Safety1st » 21 дек 2013, 15:50

За класс тоже не заходят живым.
Вариант, который я вам дал в предыдущем вашем топике по этому вопросу, как раз ловит выбор класса.
GoldSrc Gaming Community
Аватара пользователя
Safety1st
 
Сообщения: 1961
Зарегистрирован: 08 окт 2011, 05:41
Откуда: Moscow
Благодарил (а): 1690 раз.
Поблагодарили: 929 раз.
Опыт программирования: Около года
Языки программирования: Counter-Strike 1.6
Half-Life


Вернуться в Скриптинг

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1