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

Помогите найти плагин!

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

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

Помогите найти плагин!

Сообщение cheatdestroy » 15 янв 2014, 21:53

Помогите найти плагин выбор команды для админа.
Суть плагина в том что люди соеденяются и не могут выбрать команду, а вот админу высвечивается табличка за кого он будет террорист или тер.
На сервере уже установлено то что нельзя выбрать команду их кидает рандомно. Осталось найти плагин что бы админ мог выбрать команду только.
Аватара пользователя
cheatdestroy
 
Сообщения: 22
Зарегистрирован: 07 янв 2014, 15:53
Благодарил (а): 5 раз.
Поблагодарили: 0 раз.
Языки программирования: Counter-Strike 1.6

Re: Помогите найти плагин!

Сообщение Plrip » 15 янв 2014, 22:09

Код: Выделить всё
#define OFFSET_TEAM                    114 + EXTRAOFFSET
#define OFFSET_INTERNALMODEL        126 + EXTRAOFFSET
#define GETINFOKEYBUFFER                (*g_engfuncs.pfnGetInfoKeyBuffer) 

#define TEAM_UNASSIGNED                    0
#define TEAM_T                            1
#define TEAM_CT                            2
#define TEAM_SPECTATOR                    3
 


Код: Выделить всё
CHECK_PLAYER(params[1]);

    // Make into edict pointer
    edict_t *pPlayer = MF_GetPlayerEdict(params[1]);

    int model = params[3];

    // Just set team. Removed check of 1-2-3, because maybe scripters want to create new teams, 4, 5 etc?
    *((int *)pPlayer->pvPrivateData + OFFSET_TEAM) = params[2];
    if (model != 0)
        *((int *)pPlayer->pvPrivateData + OFFSET_INTERNALMODEL) = model;
    
    
// This makes the model get updated right away.
    MDLL_ClientUserInfoChanged(pPlayer, GETINFOKEYBUFFER(pPlayer)); //  If this causes any problems for WON, do this line only in STEAM builds.

    // And update scoreboard by sending TeamInfo msg.
    char teaminfo[32];
    switch (params[2]) {
        case TEAM_UNASSIGNED:
            strcpy(teaminfo, "UNASSIGNED");
            break;
        case TEAM_T:
            strcpy(teaminfo, "TERRORIST");
            break;
        case TEAM_CT:
            strcpy(teaminfo, "CT");
            break;
        case TEAM_SPECTATOR:
            strcpy(teaminfo, "SPECTATOR");
            break;
        default:
            int team_nr = (int)params[2];
            sprintf(teaminfo, "TEAM_%i", team_nr);
    }
    MESSAGE_BEGIN(MSG_ALL, GET_USER_MSG_ID(PLID, "TeamInfo", NULL));
    WRITE_BYTE(params[1]);
    WRITE_STRING(teaminfo);
    MESSAGE_END();
    
    if 
(params[2] == 1)
        MF_SetPlayerTeamInfo(params[1], params[2], "TERRORIST");
    else if (params[2] == 2)
        MF_SetPlayerTeamInfo(params[1], params[2], "CT");
    else
        MF_SetPlayerTeamInfo
(params[1], params[2], NULL);

Надеюсь ничего не забыл.
[spoiler]Из cstrike[/spoiler]

Status:
Аватара пользователя
Plrip
Скриптер
 
Сообщения: 2903
Зарегистрирован: 03 дек 2011, 19:33
Откуда: Ukraine
Благодарил (а): 237 раз.
Поблагодарили: 603 раз.
Языки программирования: Counter-Strike 1.6
X-Ray
Killing-Floor [low]

Re: Помогите найти плагин!

Сообщение cheatdestroy » 15 янв 2014, 22:14

Plrip писал(а):
Код: Выделить всё
#define OFFSET_TEAM                    114 + EXTRAOFFSET
#define OFFSET_INTERNALMODEL        126 + EXTRAOFFSET
#define GETINFOKEYBUFFER                (*g_engfuncs.pfnGetInfoKeyBuffer) 

#define TEAM_UNASSIGNED                    0
#define TEAM_T                            1
#define TEAM_CT                            2
#define TEAM_SPECTATOR                    3


Код: Выделить всё
CHECK_PLAYER(params[1]);

    // Make into edict pointer
    edict_t *pPlayer = MF_GetPlayerEdict(params[1]);

    int model = params[3];

    // Just set team. Removed check of 1-2-3, because maybe scripters want to create new teams, 4, 5 etc?
    *((int *)pPlayer->pvPrivateData + OFFSET_TEAM) = params[2];
    if (model != 0)
        *((int *)pPlayer->pvPrivateData + OFFSET_INTERNALMODEL) = model;
    
    
// This makes the model get updated right away.
    MDLL_ClientUserInfoChanged(pPlayer, GETINFOKEYBUFFER(pPlayer)); //  If this causes any problems for WON, do this line only in STEAM builds.

    // And update scoreboard by sending TeamInfo msg.
    char teaminfo[32];
    switch (params[2]) {
        case TEAM_UNASSIGNED:
            strcpy(teaminfo, "UNASSIGNED");
            break;
        case TEAM_T:
            strcpy(teaminfo, "TERRORIST");
            break;
        case TEAM_CT:
            strcpy(teaminfo, "CT");
            break;
        case TEAM_SPECTATOR:
            strcpy(teaminfo, "SPECTATOR");
            break;
        default:
            int team_nr = (int)params[2];
            sprintf(teaminfo, "TEAM_%i", team_nr);
    }
    MESSAGE_BEGIN(MSG_ALL, GET_USER_MSG_ID(PLID, "TeamInfo", NULL));
    WRITE_BYTE(params[1]);
    WRITE_STRING(teaminfo);
    MESSAGE_END();
    
    if 
(params[2] == 1)
        MF_SetPlayerTeamInfo(params[1], params[2], "TERRORIST");
    else if (params[2] == 2)
        MF_SetPlayerTeamInfo(params[1], params[2], "CT");
    else
        MF_SetPlayerTeamInfo
(params[1], params[2], NULL); 

Надеюсь ничего не забыл.
[spoiler]Из cstrike[/spoiler]



Флаг доступа какой?
Аватара пользователя
cheatdestroy
 
Сообщения: 22
Зарегистрирован: 07 янв 2014, 15:53
Благодарил (а): 5 раз.
Поблагодарили: 0 раз.
Языки программирования: Counter-Strike 1.6

Re: Помогите найти плагин!

Сообщение Bos93 » 16 янв 2014, 17:16

Plrip, в любом случае ему явно не C++ код нужен. Ну ты его затралил.

Как всегда тут замешана мистика, только гений мог ошибиться так разделом.
Всем добра, любви и осознанности.

Nosce animum tuum.

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

Re: Помогите найти плагин!

Сообщение Plrip » 16 янв 2014, 17:34

Так он ничего не писал про павн.
Код: Выделить всё
void SetFlags(const char *flags)
    {
        
// If this is a "!" entry then stop
        
if (flags && flags[0]=='!')
        {
            
SetHidden(1);
            return;
        }

        
m_strFlags.assign(flags);
        
m_iFlags=UTIL_ReadFlags(flags);
    };
    
void SetFlags(const int flags)
    {
        
m_iFlags=flags;

        
char FlagsString[32];
        
UTIL_GetFlags(FlagsStringflags);

        
m_strFlags.assign(FlagsString);
    }; 

Не пойму, зачем 2 SetFlags ?
SetFlags(const char *flags) нужно для проверки при заходе игрока на сервер и выставления прав?

А SetFlags(const int flags), получается для установки прав в обычных плагинах ?
тогда зачем там:
Код: Выделить всё
void UTIL_GetFlags(charfint a)
{
    for (
int i 'a'<= 'z'; ++i)
    {
        if (
1) *f++ = i;
        
>>= 1;
    }

    *
0;

Это выходит считываются все флаги UTIL_GetFlags(FlagsString, flags);
и потом устанавливаются в m_strFlags.assign(FlagsString); ?

Status:
Аватара пользователя
Plrip
Скриптер
 
Сообщения: 2903
Зарегистрирован: 03 дек 2011, 19:33
Откуда: Ukraine
Благодарил (а): 237 раз.
Поблагодарили: 603 раз.
Языки программирования: Counter-Strike 1.6
X-Ray
Killing-Floor [low]

Re: Помогите найти плагин!

Сообщение cheatdestroy » 16 янв 2014, 17:58

Не понимаю вас. Мне нужен плагин такой когда заходишь на сервер то только админ мог выбрать команду.
Аватара пользователя
cheatdestroy
 
Сообщения: 22
Зарегистрирован: 07 янв 2014, 15:53
Благодарил (а): 5 раз.
Поблагодарили: 0 раз.
Языки программирования: Counter-Strike 1.6

Re: Помогите найти плагин!

Сообщение Bos93 » 16 янв 2014, 18:15

cheatdestroy писал(а):Не понимаю вас. Мне нужен плагин такой когда заходишь на сервер то только админ мог выбрать команду.


Дык раздел пали. тебе павн или метамод?
Всем добра, любви и осознанности.

Nosce animum tuum.

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

Re: Помогите найти плагин!

Сообщение Plrip » 16 янв 2014, 18:25

Bos93, я тебя спросил немного выше :this:

Status:
Аватара пользователя
Plrip
Скриптер
 
Сообщения: 2903
Зарегистрирован: 03 дек 2011, 19:33
Откуда: Ukraine
Благодарил (а): 237 раз.
Поблагодарили: 603 раз.
Языки программирования: Counter-Strike 1.6
X-Ray
Killing-Floor [low]

Re: Помогите найти плагин!

Сообщение PRoSToTeM@ » 16 янв 2014, 19:34

Это перегрузка функции. В одном варианте ты битсуммой устанавливаешь, в другом строкой.
Аватара пользователя
PRoSToTeM@
Скриптер
 
Сообщения: 2498
Зарегистрирован: 26 мар 2010, 00:12
Благодарил (а): 438 раз.
Поблагодарили: 1125 раз.

Re: Помогите найти плагин!

Сообщение cheatdestroy » 16 янв 2014, 20:22

Извиняюсь перепутал раздел.
Аватара пользователя
cheatdestroy
 
Сообщения: 22
Зарегистрирован: 07 янв 2014, 15:53
Благодарил (а): 5 раз.
Поблагодарили: 0 раз.
Языки программирования: Counter-Strike 1.6


Вернуться в Поиск плагинов

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

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