Добро пожаловать на Pro Pawn - Портал о PAWN-скриптинге.

Реклама


**Как получить V.I.P** (Перейти)
Чтобы заказать рекламу на Pro-Pawn.Ru, обращайтесь в Skype.
Баннерная реклама 200руб/мес, Текстовая 100руб/мес.
Страница 1 из 2 12 ПоследняяПоследняя
Показано с 1 по 10 из 12

Тема: sscanf

  1. #1
    Аватар для #Johnson
    Пользователь

    Статус
    Оффлайн
    Регистрация
    15.05.2016
    Сообщений
    24
    Репутация:
    0 ±

    sscanf

    Когда ввожу /adjust invite или uninvite, или rank и ввожу там ид игрока и все как нужно, то пишет "Неправильно отредактирована Категория !", не могу понять в чем ошибка.

    PHP код:
    CMD:adjust(playerid,params[])
    {
        if(
    PlayerInfo[playerid][pFMember] == CIVILIAN) return SendClientMessage(playeridCOLOR_GREY"   Вы не член Банды !");
        new 
    family PlayerInfo[playerid][pFMember];
        new 
    strings[24];
        
    format(stringssizeof(strings), "%s"PlayerName(playerid));
        if(
    strcmp(FamilyInfo[family][FamilyLeader],stringstrue) == ||
                (
    family >= && family <= && PlayerInfo[playerid][pRank] >= 6))
        {   
    //если ваше имя совпало с именем в списке gangs
            
    if(sscanf(params,"s[10]",params[0]))
            {
                
    SendClientMessage(playeridCOLOR_GRAYWHITE"USAGE: /adjust [name]");
                
    SendClientMessage(playeridCOLOR_WHITE"Available Category: MOTD, Spawn, Invite, Uninvite, Rank");
                return 
    1;
            }
            if(
    strcmp(params[0],"spawn",true) == 0)
            {
                if(
    PlayerCuffed[playerid] < MAX_PLAYERS-1) return SendClientMessage(playeridCOLOR_GREY"   Вы не можете связать когда у вас надеты наручники !");
                if(
    PlayerTied[playerid] > 0) return SendClientMessage(playeridCOLOR_GREY"   Вы не можете надеть наручники когда связаны !");
                
    GetPlayerPos(playeridFamilyInfo[family][FamilySpawn][0],FamilyInfo[family][FamilySpawn][1],FamilyInfo[family][FamilySpawn][2]);
                
    GetPlayerFacingAngle(playeridFamilyInfo[family][FamilySpawn][3]);
                
    FamilyInfo[family][FamilyInterior] = GetPlayerInterior(playerid);
                
    //SaveFamilies();
                
    SendClientMessage(playeridCOLOR_LIGHTBLUE"   Вы отредактировали место появления вашей Банды !");
                return 
    1;
            }
            else if(
    strcmp(params[0],"invite",true) == 0)
            {
                
    printf("params[0] = %s",params[0]);
                if(
    sscanf(params,"s[10]u",params[0],params[1])) return SendClientMessage(playeridCOLOR_GRAYWHITE"USAGE: /adjust invite [playerid/PartOfName]");
                if(
    IsPlayerConnected(params[1]) && !IsPlayerNPC(params[1]))
                {
                    if(
    params[1] != INVALID_PLAYER_ID)
                    {
                        if(
    PlayerInfo[params[1]][pFMember]>=1&&PlayerInfo[params[1]][pFMember]<=9) return SendClientMessage(playeridCOLOR_GREY"   Этот игрок находится уже в Банде !");
                        if(
    PlayerInfo[params[1]][pJob] != || GettingJob[params[1]] > 0) return SendClientMessage(playeridCOLOR_GREY"   Вы Не Можете пригласить его, т.к. игрок имеет Работу или устраивается !");
                        if(
    PlayerInfo[params[1]][pMember] > 0) return SendClientMessage(playeridCOLOR_GREY"   Этот игрок находится уже в Организации !");
                        
    PlayerInfo[params[1]][pFMember] = family;
                        
    PlayerInfo[params[1]][pRank] = 1;
                        
    FamilyInfo[family][FamilyMembers] ++;
                        
    //SaveFamilies();
                        
    new string[61+(MAX_PLAYER_NAME)+35];
                        
    format(stringsizeof(string), "* Вы пригласили %s присоединиться к '%s'.",PlayerName(params[1]), FamilyInfo[family][FamilyName]);
                        
    SendClientMessage(playeridCOLOR_LIGHTBLUEstring);
                        
    format(stringsizeof(string), "* %s пригласил Вас присоединиться к '%s', Вы - теперь член Банды.",PlayerName(playerid), FamilyInfo[family][FamilyName]);
                        
    SendClientMessage(params[1], COLOR_LIGHTBLUEstring);
                        return 
    1;
                    }
                }
                else
                {
                    
    SendClientMessage(playeridCOLOR_GREY"   Этого игрока нету на сервере !");
                    return 
    1;
                }
            }
            else if(
    strcmp(params[0],"uninvite",true) == 0)
            {
                if(
    sscanf(params,"s[13]u",params[0],params[1])) return SendClientMessage(playeridCOLOR_GRAYWHITE"USAGE: /adjust uninvite [playerid/PartOfName]");
                if(
    params[1] == playerid) { SendClientMessage(playeridCOLOR_GREY"   Вы не можете выгнать самого себя!"); return 1; }
                if(!
    IsPlayerConnected(params[1]) && params[1] == INVALID_PLAYER_ID && params[1] != playerid)
                {
                    
    params[1] = MAX_PLAYERS-2;
                    
    OnPlayerLoadParameters(params[1], PlayerName(params[1]));
                    if(
    PlayerInfo[params[1]][pFMember] != family) return SendClientMessage(playeridCOLOR_GREY"   Этот игрок не является членом вашей Банды !");
                    
    PlayerInfo[params[1]][pFMember] = CIVILIAN;
                    
    PlayerInfo[params[1]][pRank] = 0;
                    
    FamilyInfo[family][FamilyMembers] --;
                    
    //SaveFamilies();
                    //--------------------------------------------------
                    
    new ind;
                    new 
    Clothes[MAX_SKINS];//массив для хранения найденых
                    
    pGender PlayerInfo[params[1]][pSex]; pTypePed[params[1]] = NormalPed;
                    for(new 
    i=0i<MAX_SKINSi++)//сканируем все скины
                    
    {
                        if(
    SkinName[i][Type_Ped]==pTypePed[params[1]] && SkinName[i][Gender]==pGender)
                        { 
    ind++; Clothes[ind]=SkinName[i][Skin_ID];    break; }
                    }
                    new 
    rand random(ind);
                    
    PlayerInfo[params[1]][pModel] = Clothes[rand];
                    
    //--------------------------------------------------
                    
    SaveAccount(params[1]);
                    new 
    string[29+(MAX_PLAYER_NAME)];
                    
    format(stringsizeof(string), "* Вы выгнали %s из вашей Банды.",PlayerName(params[1]));
                    
    SendClientMessage(playeridCOLOR_LIGHTBLUEstring);
                    return 
    1;
                }
    //not connected
                
    else
                {
                    if(
    params[1] != INVALID_PLAYER_ID)
                    {
                        if(
    PlayerInfo[params[1]][pFMember] != family) return SendClientMessage(playeridCOLOR_GREY"   Этот игрок не является членом вашей Банды !");
                        if(
    PlayerTied[params[1]] > 0) return SendClientMessage(playeridCOLOR_GREY"   Этот игрок Связан !");
                        
    PlayerInfo[params[1]][pFMember] = CIVILIAN;
                        
    PlayerInfo[params[1]][pRank] = 0;
                        
    FamilyInfo[family][FamilyMembers] --;
                        
    //SaveFamilies();
                        //--------------------------------------------------
                        
    new ind;
                        new 
    Clothes[MAX_SKINS];//массив для хранения найденых
                        
    pGender PlayerInfo[params[1]][pSex]; pTypePed[params[1]] = NormalPed;
                        for(new 
    i=0i<MAX_SKINSi++)//сканируем все скины
                        
    {
                            if(
    SkinName[i][Type_Ped]==pTypePed[params[1]] && SkinName[i][Gender]==pGender)
                            { 
    ind++; Clothes[ind]=SkinName[i][Skin_ID];    break; }
                        }
                        new 
    rand random(ind);
                        
    PlayerInfo[params[1]][pModel] = Clothes[rand];
                        
    //--------------------------------------------------
                        
    new string[35+(MAX_PLAYER_NAME)];
                        
    format(stringsizeof(string), "* Вы выгнали %s из вашей Банды.",PlayerName(params[1]));
                        
    SendClientMessage(playeridCOLOR_LIGHTBLUEstring);
                        
    format(stringsizeof(string), "* Глава Банды %s выгнал вас из Банды.",PlayerName(playerid));
                        
    SendClientMessage(params[1], COLOR_LIGHTBLUEstring);
                        return 
    1;
                    }
                    return 
    1;
                }
            }
            else if(
    strcmp(params[0],"rank",true) == 0)
            {
                if(
    sscanf(params,"s[12]du",params[0],params[1],params[2])) return SendClientMessage(playeridCOLOR_GRAYWHITE"USAGE: /adjust rank [RankNr] [playerid/PartOfName]");
                if(
    params[1] < || params[1] > 6) { SendClientMessage(playeridCOLOR_GREY"   Ранг может быть от 1 до 6 !"); return 1; }
                if(
    IsPlayerConnected(params[2]) && !IsPlayerNPC(params[2]))
                {
                    if(
    params[2] != INVALID_PLAYER_ID)
                    {
                        if(
    PlayerInfo[params[2]][pFMember] != family) return SendClientMessage(playeridCOLOR_GREY"   Этот игрок не является членом вашей Банды !");
                        
    PlayerInfo[params[2]][pRank] = params[1];
                        
    //SaveFamilies();
                        
    new string[29+1+(MAX_PLAYER_NAME)];
                        
    format(stringsizeof(string), "* Вы дали %s Ранг %d.",PlayerName(params[2]),params[1]);
                        
    SendClientMessage(playeridCOLOR_LIGHTBLUEstring);
                        
    format(stringsizeof(string), "* Глава Банды %s дал вам Ранг %d.",PlayerName(playerid),params[1]);
                        
    SendClientMessage(params[2], COLOR_LIGHTBLUEstring);
                        return 
    1;
                    }
                }
                else 
    SendClientMessage(playeridCOLOR_GREY"   Этого игрока нету на сервере !");
            }
            else 
    SendClientMessage(playeridCOLOR_GREY"   Неправельно отредактирована Категория !");
        }
        else 
    SendClientMessage(playeridCOLOR_GREY"   Вы - не Глава этой Банды !");
        return 
    1;
    }
    //end /adjust 

  2. #2
    Аватар для DeimoS
    Модератор?

    Статус
    Оффлайн
    Регистрация
    27.01.2014
    Адрес
    Восточный Мордор
    Сообщений
    3,931
    Репутация:
    1502 ±
    PHP код:
    if(sscanf(params,"s[10]",params[0])) 

        
    SendClientMessage(playeridCOLOR_GRAYWHITE"USAGE: /adjust [name]"); 
        
    SendClientMessage(playeridCOLOR_WHITE"Available Category: MOTD, Spawn, Invite, Uninvite, Rank"); 
        return 
    1

    на
    PHP код:
    if(isnull(params)) 

        
    SendClientMessage(playeridCOLOR_GRAYWHITE"USAGE: /adjust [name]"); 
        
    SendClientMessage(playeridCOLOR_WHITE"Available Category: MOTD, Spawn, Invite, Uninvite, Rank"); 
        return 
    1

    И все "params[0]" на "params"
    Связаться со мной можно в личных сообщениях этой группы

    Широко известно, что идеи стоят 0.8333 цента каждая (исходя из рыночной цены 10 центов за дюжину).
    Великих идей полно, на них нет спроса.
    Воплощение идеи в законченную игру требует долгой работы,
    таланта, терпения и креативности, не говоря уж о затратах денег, времени и ресурсов.
    Предложить идею просто, воплотить – вот в чём проблема

    Steve Pavlina

  3. #3
    Аватар для #Johnson
    Пользователь

    Статус
    Оффлайн
    Регистрация
    15.05.2016
    Сообщений
    24
    Репутация:
    0 ±
    Цитата Сообщение от DeimoS Посмотреть сообщение
    PHP код:
    if(sscanf(params,"s[10]",params[0])) 

        
    SendClientMessage(playeridCOLOR_GRAYWHITE"USAGE: /adjust [name]"); 
        
    SendClientMessage(playeridCOLOR_WHITE"Available Category: MOTD, Spawn, Invite, Uninvite, Rank"); 
        return 
    1

    на
    PHP код:
    if(isnull(params)) 

        
    SendClientMessage(playeridCOLOR_GRAYWHITE"USAGE: /adjust [name]"); 
        
    SendClientMessage(playeridCOLOR_WHITE"Available Category: MOTD, Spawn, Invite, Uninvite, Rank"); 
        return 
    1

    И все "params[0]" на "params"
    Проблема осталась та же!
    PHP код:
    CMD:adjust(playerid,params[])
    {
        if(
    PlayerInfo[playerid][pFMember] == CIVILIAN) return SendClientMessage(playeridCOLOR_GREY"   Вы не член Банды !");
        new 
    family PlayerInfo[playerid][pFMember];
        new 
    strings[24];
        
    format(stringssizeof(strings), "%s"PlayerName(playerid));
        if(
    strcmp(FamilyInfo[family][FamilyLeader],stringstrue) == ||
                (
    family >= && family <= && PlayerInfo[playerid][pRank] >= 6))
        {   
    //если ваше имя совпало с именем в списке gangs
            
    if(isnull(params))
            {
                
    SendClientMessage(playeridCOLOR_GRAYWHITE"USAGE: /adjust [name]");
                
    SendClientMessage(playeridCOLOR_WHITE"Available Category: MOTD, Spawn, Invite, Uninvite, Rank");
                return 
    1;
            }
            if(
    strcmp(params,"spawn",true) == 0)
            {
                if(
    PlayerCuffed[playerid] < MAX_PLAYERS-1) return SendClientMessage(playeridCOLOR_GREY"   Вы не можете связать когда у вас надеты наручники !");
                if(
    PlayerTied[playerid] > 0) return SendClientMessage(playeridCOLOR_GREY"   Вы не можете надеть наручники когда связаны !");
                
    GetPlayerPos(playeridFamilyInfo[family][FamilySpawn][0],FamilyInfo[family][FamilySpawn][1],FamilyInfo[family][FamilySpawn][2]);
                
    GetPlayerFacingAngle(playeridFamilyInfo[family][FamilySpawn][3]);
                
    FamilyInfo[family][FamilyInterior] = GetPlayerInterior(playerid);
                
    //SaveFamilies();
                
    SendClientMessage(playeridCOLOR_LIGHTBLUE"   Вы отредактировали место появления вашей Банды !");
                return 
    1;
            }
            else if(
    strcmp(params,"invite",true) == 0)
            {
                if(
    sscanf(params,"s[10]u",params,params[1])) return SendClientMessage(playeridCOLOR_GRAYWHITE"USAGE: /adjust invite [playerid/PartOfName]");
                if(
    IsPlayerConnected(params[1]) && !IsPlayerNPC(params[1]))
                {
                    if(
    params[1] != INVALID_PLAYER_ID)
                    {
                        if(
    PlayerInfo[params[1]][pFMember]>=1&&PlayerInfo[params[1]][pFMember]<=9) return SendClientMessage(playeridCOLOR_GREY"   Этот игрок находится уже в Банде !");
                        if(
    PlayerInfo[params[1]][pJob] != || GettingJob[params[1]] > 0) return SendClientMessage(playeridCOLOR_GREY"   Вы Не Можете пригласить его, т.к. игрок имеет Работу или устраивается !");
                        if(
    PlayerInfo[params[1]][pMember] > 0) return SendClientMessage(playeridCOLOR_GREY"   Этот игрок находится уже в Организации !");
                        
    PlayerInfo[params[1]][pFMember] = family;
                        
    PlayerInfo[params[1]][pRank] = 1;
                        
    FamilyInfo[family][FamilyMembers] ++;
                        
    //SaveFamilies();
                        
    new string[61+(MAX_PLAYER_NAME)+35];
                        
    format(stringsizeof(string), "* Вы пригласили %s присоединиться к '%s'.",PlayerName(params[1]), FamilyInfo[family][FamilyName]);
                        
    SendClientMessage(playeridCOLOR_LIGHTBLUEstring);
                        
    format(stringsizeof(string), "* %s пригласил Вас присоединиться к '%s', Вы - теперь член Банды.",PlayerName(playerid), FamilyInfo[family][FamilyName]);
                        
    SendClientMessage(params[1], COLOR_LIGHTBLUEstring);
                        return 
    1;
                    }
                }
                else
                {
                    
    SendClientMessage(playeridCOLOR_GREY"   Этого игрока нету на сервере !");
                    return 
    1;
                }
            }
            else if(
    strcmp(params,"uninvite",true) == 0)
            {
                if(
    sscanf(params,"s[13]u",params,params[1])) return SendClientMessage(playeridCOLOR_GRAYWHITE"USAGE: /adjust uninvite [playerid/PartOfName]");
                if(
    params[1] == playerid) { SendClientMessage(playeridCOLOR_GREY"   Вы не можете выгнать самого себя!"); return 1; }
                if(!
    IsPlayerConnected(params[1]) && params[1] == INVALID_PLAYER_ID && params[1] != playerid)
                {
                    
    params[1] = MAX_PLAYERS-2;
                    
    OnPlayerLoadParameters(params[1], PlayerName(params[1]));
                    if(
    PlayerInfo[params[1]][pFMember] != family) return SendClientMessage(playeridCOLOR_GREY"   Этот игрок не является членом вашей Банды !");
                    
    PlayerInfo[params[1]][pFMember] = CIVILIAN;
                    
    PlayerInfo[params[1]][pRank] = 0;
                    
    FamilyInfo[family][FamilyMembers] --;
                    
    //SaveFamilies();
                    //--------------------------------------------------
                    
    new ind;
                    new 
    Clothes[MAX_SKINS];//массив для хранения найденых
                    
    pGender PlayerInfo[params[1]][pSex]; pTypePed[params[1]] = NormalPed;
                    for(new 
    i=0i<MAX_SKINSi++)//сканируем все скины
                    
    {
                        if(
    SkinName[i][Type_Ped]==pTypePed[params[1]] && SkinName[i][Gender]==pGender)
                        { 
    ind++; Clothes[ind]=SkinName[i][Skin_ID];    break; }
                    }
                    new 
    rand random(ind);
                    
    PlayerInfo[params[1]][pModel] = Clothes[rand];
                    
    //--------------------------------------------------
                    
    SaveAccount(params[1]);
                    new 
    string[29+(MAX_PLAYER_NAME)];
                    
    format(stringsizeof(string), "* Вы выгнали %s из вашей Банды.",PlayerName(params[1]));
                    
    SendClientMessage(playeridCOLOR_LIGHTBLUEstring);
                    return 
    1;
                }
    //not connected
                
    else
                {
                    if(
    params[1] != INVALID_PLAYER_ID)
                    {
                        if(
    PlayerInfo[params[1]][pFMember] != family) return SendClientMessage(playeridCOLOR_GREY"   Этот игрок не является членом вашей Банды !");
                        if(
    PlayerTied[params[1]] > 0) return SendClientMessage(playeridCOLOR_GREY"   Этот игрок Связан !");
                        
    PlayerInfo[params[1]][pFMember] = CIVILIAN;
                        
    PlayerInfo[params[1]][pRank] = 0;
                        
    FamilyInfo[family][FamilyMembers] --;
                        
    //SaveFamilies();
                        //--------------------------------------------------
                        
    new ind;
                        new 
    Clothes[MAX_SKINS];//массив для хранения найденых
                        
    pGender PlayerInfo[params[1]][pSex]; pTypePed[params[1]] = NormalPed;
                        for(new 
    i=0i<MAX_SKINSi++)//сканируем все скины
                        
    {
                            if(
    SkinName[i][Type_Ped]==pTypePed[params[1]] && SkinName[i][Gender]==pGender)
                            { 
    ind++; Clothes[ind]=SkinName[i][Skin_ID];    break; }
                        }
                        new 
    rand random(ind);
                        
    PlayerInfo[params[1]][pModel] = Clothes[rand];
                        
    //--------------------------------------------------
                        
    new string[35+(MAX_PLAYER_NAME)];
                        
    format(stringsizeof(string), "* Вы выгнали %s из вашей Банды.",PlayerName(params[1]));
                        
    SendClientMessage(playeridCOLOR_LIGHTBLUEstring);
                        
    format(stringsizeof(string), "* Глава Банды %s выгнал вас из Банды.",PlayerName(playerid));
                        
    SendClientMessage(params[1], COLOR_LIGHTBLUEstring);
                        return 
    1;
                    }
                    return 
    1;
                }
            }
            else if(
    strcmp(params,"rank",true) == 0)
            {
                if(
    sscanf(params,"s[12]du",params,params[1],params[2])) return SendClientMessage(playeridCOLOR_GRAYWHITE"USAGE: /adjust rank [RankNr] [playerid/PartOfName]");
                if(
    params[1] < || params[1] > 6) { SendClientMessage(playeridCOLOR_GREY"   Ранг может быть от 1 до 6 !"); return 1; }
                if(
    IsPlayerConnected(params[2]) && !IsPlayerNPC(params[2]))
                {
                    if(
    params[2] != INVALID_PLAYER_ID)
                    {
                        if(
    PlayerInfo[params[2]][pFMember] != family) return SendClientMessage(playeridCOLOR_GREY"   Этот игрок не является членом вашей Банды !");
                        
    PlayerInfo[params[2]][pRank] = params[1];
                        
    //SaveFamilies();
                        
    new string[29+1+(MAX_PLAYER_NAME)];
                        
    format(stringsizeof(string), "* Вы дали %s Ранг %d.",PlayerName(params[2]),params[1]);
                        
    SendClientMessage(playeridCOLOR_LIGHTBLUEstring);
                        
    format(stringsizeof(string), "* Глава Банды %s дал вам Ранг %d.",PlayerName(playerid),params[1]);
                        
    SendClientMessage(params[2], COLOR_LIGHTBLUEstring);
                        return 
    1;
                    }
                }
                else 
    SendClientMessage(playeridCOLOR_GREY"   Этого игрока нету на сервере !");
            }
            else 
    SendClientMessage(playeridCOLOR_GREY"   Неправильно отредактирована Категория !");
        }
        else 
    SendClientMessage(playeridCOLOR_GREY"   Вы - не Глава этой Банды !");
        return 
    1;
    }
    //end /adjust 

  4. #4
    Аватар для DeimoS
    Модератор?

    Статус
    Оффлайн
    Регистрация
    27.01.2014
    Адрес
    Восточный Мордор
    Сообщений
    3,931
    Репутация:
    1502 ±
    Команда изначально построена неверно. Зачем в каждом блоке ты опять вызываешь sscanf, типа
    PHP код:
    if(sscanf(params,"s[13]u",params,params[1])) return SendClientMessage(playeridCOLOR_GRAYWHITE"USAGE: /adjust uninvite [playerid/PartOfName]"); 
    если ты параметры обработал в самом начале?
    Связаться со мной можно в личных сообщениях этой группы

    Широко известно, что идеи стоят 0.8333 цента каждая (исходя из рыночной цены 10 центов за дюжину).
    Великих идей полно, на них нет спроса.
    Воплощение идеи в законченную игру требует долгой работы,
    таланта, терпения и креативности, не говоря уж о затратах денег, времени и ресурсов.
    Предложить идею просто, воплотить – вот в чём проблема

    Steve Pavlina

  5. #5
    Аватар для #Johnson
    Пользователь

    Статус
    Оффлайн
    Регистрация
    15.05.2016
    Сообщений
    24
    Репутация:
    0 ±
    Цитата Сообщение от DeimoS Посмотреть сообщение
    Команда изначально построена неверно. Зачем в каждом блоке ты опять вызываешь sscanf, типа
    PHP код:
    if(sscanf(params,"s[13]u",params,params[1])) return SendClientMessage(playeridCOLOR_GRAYWHITE"USAGE: /adjust uninvite [playerid/PartOfName]"); 
    если ты параметры обработал в самом начале?
    Потом ведь добавляется новый параметр u (имя игрока).
    Если что то не правильно сделал, подскажите как правильно тогда, буду благодарен.

  6. #6
    Аватар для #Vito
    #define

    Статус
    Оффлайн
    Регистрация
    14.09.2013
    Адрес
    Одесса
    Сообщений
    129
    Репутация:
    38 ±
    Я так понял, тебе нужно добавлять параметры, в зависимости от значения params?
    Вот пример в общем:
    PHP код:
    CMD:set(playeridparams[])
    {
        new 
    pmr[5], playernumber;
        if(
    sscanf(params"s[5] "pmr)) return SendClientMessage(playerid, -1"Введите: /set [skin/hp]");
        else if(!
    strcmp(pmr,"hp",true))
        {
            if(
    sscanf(params"{s[5]}ii"player)) return SendClientMessage(playerid, -1"Введите: /set hp [id игрока]");
            
    SetPlayerHealth(player100.0);
        }
        else if(!
    strcmp(pmr,"skin",true))
        {
            if(
    sscanf(params"{s[5]}ii"player,number)) return SendClientMessage(playerid, -1"Введите: /set skin [id игрока] [id скина]");
            
    SetPlayerSkin(playernumber);
        }
        return 
    1;

    Skype: vitya.saveliev


  7. Пользователь сказал cпасибо:
    #Johnson (19.06.2016)
  8. #7
    Аватар для #Johnson
    Пользователь

    Статус
    Оффлайн
    Регистрация
    15.05.2016
    Сообщений
    24
    Репутация:
    0 ±
    Цитата Сообщение от #Vito Посмотреть сообщение
    Я так понял, тебе нужно добавлять параметры, в зависимости от значения params?
    Вот пример в общем:
    PHP код:
    CMD:set(playeridparams[])
    {
        new 
    pmr[5], playernumber;
        if(
    sscanf(params"s[5] "pmr)) return SendClientMessage(playerid, -1"Введите: /set [skin/hp]");
        else if(!
    strcmp(pmr,"hp",true))
        {
            if(
    sscanf(params"{s[5]}ii"player)) return SendClientMessage(playerid, -1"Введите: /set hp [id игрока]");
            
    SetPlayerHealth(player100.0);
        }
        else if(!
    strcmp(pmr,"skin",true))
        {
            if(
    sscanf(params"{s[5]}ii"player,number)) return SendClientMessage(playerid, -1"Введите: /set skin [id игрока] [id скина]");
            
    SetPlayerSkin(playernumber);
        }
        return 
    1;

    Сделал все по примеру, как вы показали. итог:
    Допустим вызываю /adjust invite мне пишет что нужно вызвать вот так вот: /adjust invite [playerid/partOfName], ввожу /adjust invite 1 и пишет все ровно что нужно ввести /adjust invite [playerid/partOfName]. И так со всеми.

    PHP код:
    CMD:adjust(playerid,params[])
    {
        if(
    PlayerInfo[playerid][pFMember] == CIVILIAN) return SendClientMessage(playeridCOLOR_GREY"   Вы не член Банды !");
        new 
    family PlayerInfo[playerid][pFMember];
        new 
    strings[24];
        new 
    giveplayerid;
        
    format(stringssizeof(strings), "%s"PlayerName(playerid));
        if(
    strcmp(FamilyInfo[family][FamilyLeader],stringstrue) == ||
                (
    family >= && family <= && PlayerInfo[playerid][pRank] >= 6))
        {   
    //если ваше имя совпало с именем в списке gangs
            
    if(sscanf(params,"s[10] ",params[0]))
            {
                
    SendClientMessage(playeridCOLOR_GRAYWHITE"USAGE: /adjust [name]");
                
    SendClientMessage(playeridCOLOR_WHITE"Available Category: MOTD, Spawn, Invite, Uninvite, Rank");
                return 
    1;
            }
            else if(
    strcmp(params[0],"spawn",true))
            {
                if(
    PlayerCuffed[playerid] < MAX_PLAYERS-1) return SendClientMessage(playeridCOLOR_GREY"   Вы не можете связать когда у вас надеты наручники !");
                if(
    PlayerTied[playerid] > 0) return SendClientMessage(playeridCOLOR_GREY"   Вы не можете надеть наручники когда связаны !");
                
    GetPlayerPos(playeridFamilyInfo[family][FamilySpawn][0],FamilyInfo[family][FamilySpawn][1],FamilyInfo[family][FamilySpawn][2]);
                
    GetPlayerFacingAngle(playeridFamilyInfo[family][FamilySpawn][3]);
                
    FamilyInfo[family][FamilyInterior] = GetPlayerInterior(playerid);
                
    //SaveFamilies();
                
    SendClientMessage(playeridCOLOR_LIGHTBLUE"   Вы отредактировали место появления вашей Банды !");
                return 
    1;
            }
            else if(
    strcmp(params[0],"invite",true))
            {
                if(
    sscanf(params[0],"{s[10]}u",giveplayerid)) return SendClientMessage(playeridCOLOR_GRAYWHITE"USAGE: /adjust invite [playerid/PartOfName]");
                if(
    IsPlayerConnected(giveplayerid) && !IsPlayerNPC(giveplayerid))
                {
                    if(
    giveplayerid != INVALID_PLAYER_ID)
                    {
                        if(
    PlayerInfo[giveplayerid][pFMember]>=1&&PlayerInfo[params[1]][pFMember]<=9) return SendClientMessage(playeridCOLOR_GREY"   Этот игрок находится уже в Банде !");
                        if(
    PlayerInfo[giveplayerid][pJob] != || GettingJob[params[1]] > 0) return SendClientMessage(playeridCOLOR_GREY"   Вы Не Можете пригласить его, т.к. игрок имеет Работу или устраивается !");
                        if(
    PlayerInfo[giveplayerid][pMember] > 0) return SendClientMessage(playeridCOLOR_GREY"   Этот игрок находится уже в Организации !");
                        
    PlayerInfo[giveplayerid][pFMember] = family;
                        
    PlayerInfo[giveplayerid][pRank] = 1;
                        
    FamilyInfo[family][FamilyMembers] ++;
                        
    //SaveFamilies();
                        
    new string[61+(MAX_PLAYER_NAME)+35];
                        
    format(stringsizeof(string), "* Вы пригласили %s присоединиться к '%s'.",PlayerName(giveplayerid), FamilyInfo[family][FamilyName]);
                        
    SendClientMessage(playeridCOLOR_LIGHTBLUEstring);
                        
    format(stringsizeof(string), "* %s пригласил Вас присоединиться к '%s', Вы - теперь член Банды.",PlayerName(playerid), FamilyInfo[family][FamilyName]);
                        
    SendClientMessage(giveplayeridCOLOR_LIGHTBLUEstring);
                        return 
    1;
                    }
                }
                else
                {
                    
    SendClientMessage(playeridCOLOR_GREY"   Этого игрока нету на сервере !");
                    return 
    1;
                }
            }
            else if(!
    strcmp(params[0],"uninvite",true))
            {
                if(
    sscanf(params[0],"{s[10]}u",params[1])) return SendClientMessage(playeridCOLOR_GRAYWHITE"USAGE: /adjust uninvite [playerid/PartOfName]");
                if(
    params[1] == playerid) { SendClientMessage(playeridCOLOR_GREY"   Вы не можете выгнать самого себя!"); return 1; }
                if(!
    IsPlayerConnected(params[1]) && params[1] == INVALID_PLAYER_ID && params[1] != playerid)
                {
                    
    params[1] = MAX_PLAYERS-2;
                    
    OnPlayerLoadParameters(params[1], PlayerName(params[1]));
                    if(
    PlayerInfo[params[1]][pFMember] != family) return SendClientMessage(playeridCOLOR_GREY"   Этот игрок не является членом вашей Банды !");
                    
    PlayerInfo[params[1]][pFMember] = CIVILIAN;
                    
    PlayerInfo[params[1]][pRank] = 0;
                    
    FamilyInfo[family][FamilyMembers] --;
                    
    //SaveFamilies();
                    //--------------------------------------------------
                    
    new ind;
                    new 
    Clothes[MAX_SKINS];//массив для хранения найденых
                    
    pGender PlayerInfo[params[1]][pSex]; pTypePed[params[1]] = NormalPed;
                    for(new 
    i=0i<MAX_SKINSi++)//сканируем все скины
                    
    {
                        if(
    SkinName[i][Type_Ped]==pTypePed[params[1]] && SkinName[i][Gender]==pGender)
                        { 
    ind++; Clothes[ind]=SkinName[i][Skin_ID];    break; }
                    }
                    new 
    rand random(ind);
                    
    PlayerInfo[params[1]][pModel] = Clothes[rand];
                    
    //--------------------------------------------------
                    
    SaveAccount(params[1]);
                    new 
    string[29+(MAX_PLAYER_NAME)];
                    
    format(stringsizeof(string), "* Вы выгнали %s из вашей Банды.",PlayerName(params[1]));
                    
    SendClientMessage(playeridCOLOR_LIGHTBLUEstring);
                    return 
    1;
                }
    //not connected
                
    else
                {
                    if(
    params[1] != INVALID_PLAYER_ID)
                    {
                        if(
    PlayerInfo[params[1]][pFMember] != family) return SendClientMessage(playeridCOLOR_GREY"   Этот игрок не является членом вашей Банды !");
                        if(
    PlayerTied[params[1]] > 0) return SendClientMessage(playeridCOLOR_GREY"   Этот игрок Связан !");
                        
    PlayerInfo[params[1]][pFMember] = CIVILIAN;
                        
    PlayerInfo[params[1]][pRank] = 0;
                        
    FamilyInfo[family][FamilyMembers] --;
                        
    //SaveFamilies();
                        //--------------------------------------------------
                        
    new ind;
                        new 
    Clothes[MAX_SKINS];//массив для хранения найденых
                        
    pGender PlayerInfo[params[1]][pSex]; pTypePed[params[1]] = NormalPed;
                        for(new 
    i=0i<MAX_SKINSi++)//сканируем все скины
                        
    {
                            if(
    SkinName[i][Type_Ped]==pTypePed[params[1]] && SkinName[i][Gender]==pGender)
                            { 
    ind++; Clothes[ind]=SkinName[i][Skin_ID];    break; }
                        }
                        new 
    rand random(ind);
                        
    PlayerInfo[params[1]][pModel] = Clothes[rand];
                        
    //--------------------------------------------------
                        
    new string[35+(MAX_PLAYER_NAME)];
                        
    format(stringsizeof(string), "* Вы выгнали %s из вашей Банды.",PlayerName(params[1]));
                        
    SendClientMessage(playeridCOLOR_LIGHTBLUEstring);
                        
    format(stringsizeof(string), "* Глава Банды %s выгнал вас из Банды.",PlayerName(playerid));
                        
    SendClientMessage(params[1], COLOR_LIGHTBLUEstring);
                        return 
    1;
                    }
                    return 
    1;
                }
            }
            else if(
    strcmp(params[0],"rank",true))
            {
                if(
    sscanf(params[0],"{s[10]}du",params[1],params[2])) return SendClientMessage(playeridCOLOR_GRAYWHITE"USAGE: /adjust rank [RankNr] [playerid/PartOfName]");
                if(
    params[1] < || params[1] > 6) { SendClientMessage(playeridCOLOR_GREY"   Ранг может быть от 1 до 6 !"); return 1; }
                if(
    IsPlayerConnected(params[2]) && !IsPlayerNPC(params[2]))
                {
                    if(
    params[2] != INVALID_PLAYER_ID)
                    {
                        if(
    PlayerInfo[params[2]][pFMember] != family) return SendClientMessage(playeridCOLOR_GREY"   Этот игрок не является членом вашей Банды !");
                        
    PlayerInfo[params[2]][pRank] = params[1];
                        
    //SaveFamilies();
                        
    new string[29+1+(MAX_PLAYER_NAME)];
                        
    format(stringsizeof(string), "* Вы дали %s Ранг %d.",PlayerName(params[2]),params[1]);
                        
    SendClientMessage(playeridCOLOR_LIGHTBLUEstring);
                        
    format(stringsizeof(string), "* Глава Банды %s дал вам Ранг %d.",PlayerName(playerid),params[1]);
                        
    SendClientMessage(params[2], COLOR_LIGHTBLUEstring);
                        return 
    1;
                    }
                }
                else 
    SendClientMessage(playeridCOLOR_GREY"   Этого игрока нету на сервере !");
            }
            else 
    SendClientMessage(playeridCOLOR_GREY"   Неправильно отредактирована Категория !");
        }
        else 
    SendClientMessage(playeridCOLOR_GREY"   Вы - не Глава этой Банды !");
        return 
    1;
    }
    //end /adjust 

  9. #8
    Аватар для #Vito
    #define

    Статус
    Оффлайн
    Регистрация
    14.09.2013
    Адрес
    Одесса
    Сообщений
    129
    Репутация:
    38 ±
    Немного неправильно использовал, вот так пробуй:
    PHP код:
    CMD:adjust(playerid,params[])
    {
        if(
    PlayerInfo[playerid][pFMember] == CIVILIAN) return SendClientMessage(playeridCOLOR_GREY"   Вы не член Банды !");
        new 
    family PlayerInfo[playerid][pFMember];
        new 
    strings[24];
        new 
    giveplayeridknp[9];
        
    format(stringssizeof(strings), "%s"PlayerName(playerid));
        if(
    strcmp(FamilyInfo[family][FamilyLeader],stringstrue) == ||
                (
    family >= && family <= && PlayerInfo[playerid][pRank] >= 6))
        {   
    //если ваше имя совпало с именем в списке gangs
            
    if(sscanf(params,"s[10] ",knp))
            {
                
    SendClientMessage(playeridCOLOR_GRAYWHITE"USAGE: /adjust [name]");
                
    SendClientMessage(playeridCOLOR_WHITE"Available Category: MOTD, Spawn, Invite, Uninvite, Rank");
                return 
    1;
            }
            else if(
    strcmp(knp,"spawn",true))
            {
                if(
    PlayerCuffed[playerid] < MAX_PLAYERS-1) return SendClientMessage(playeridCOLOR_GREY"   Вы не можете связать когда у вас надеты наручники !");
                if(
    PlayerTied[playerid] > 0) return SendClientMessage(playeridCOLOR_GREY"   Вы не можете надеть наручники когда связаны !");
                
    GetPlayerPos(playeridFamilyInfo[family][FamilySpawn][0],FamilyInfo[family][FamilySpawn][1],FamilyInfo[family][FamilySpawn][2]);
                
    GetPlayerFacingAngle(playeridFamilyInfo[family][FamilySpawn][3]);
                
    FamilyInfo[family][FamilyInterior] = GetPlayerInterior(playerid);
                
    //SaveFamilies();
                
    SendClientMessage(playeridCOLOR_LIGHTBLUE"   Вы отредактировали место появления вашей Банды !");
                return 
    1;
            }
            else if(
    strcmp(knp,"invite",true))
            {
                if(
    sscanf(params,"{s[10]}u",giveplayerid)) return SendClientMessage(playeridCOLOR_GRAYWHITE"USAGE: /adjust invite [playerid/PartOfName]");
                if(
    IsPlayerConnected(giveplayerid) && !IsPlayerNPC(giveplayerid))
                {
                    if(
    giveplayerid != INVALID_PLAYER_ID)
                    {
                        if(
    PlayerInfo[giveplayerid][pFMember]>=1&&PlayerInfo[params[1]][pFMember]<=9) return SendClientMessage(playeridCOLOR_GREY"   Этот игрок находится уже в Банде !");
                        if(
    PlayerInfo[giveplayerid][pJob] != || GettingJob[params[1]] > 0) return SendClientMessage(playeridCOLOR_GREY"   Вы Не Можете пригласить его, т.к. игрок имеет Работу или устраивается !");
                        if(
    PlayerInfo[giveplayerid][pMember] > 0) return SendClientMessage(playeridCOLOR_GREY"   Этот игрок находится уже в Организации !");
                        
    PlayerInfo[giveplayerid][pFMember] = family;
                        
    PlayerInfo[giveplayerid][pRank] = 1;
                        
    FamilyInfo[family][FamilyMembers] ++;
                        
    //SaveFamilies();
                        
    new string[61+(MAX_PLAYER_NAME)+35];
                        
    format(stringsizeof(string), "* Вы пригласили %s присоединиться к '%s'.",PlayerName(giveplayerid), FamilyInfo[family][FamilyName]);
                        
    SendClientMessage(playeridCOLOR_LIGHTBLUEstring);
                        
    format(stringsizeof(string), "* %s пригласил Вас присоединиться к '%s', Вы - теперь член Банды.",PlayerName(playerid), FamilyInfo[family][FamilyName]);
                        
    SendClientMessage(giveplayeridCOLOR_LIGHTBLUEstring);
                        return 
    1;
                    }
                }
                else
                {
                    
    SendClientMessage(playeridCOLOR_GREY"   Этого игрока нету на сервере !");
                    return 
    1;
                }
            }
            else if(!
    strcmp(params[0],"uninvite",true))
            {
                if(
    sscanf(params,"{s[10]}u",params[1])) return SendClientMessage(playeridCOLOR_GRAYWHITE"USAGE: /adjust uninvite [playerid/PartOfName]");
                if(
    params[1] == playerid) { SendClientMessage(playeridCOLOR_GREY"   Вы не можете выгнать самого себя!"); return 1; }
                if(!
    IsPlayerConnected(params[1]) && params[1] == INVALID_PLAYER_ID && params[1] != playerid)
                {
                    
    params[1] = MAX_PLAYERS-2;
                    
    OnPlayerLoadParameters(params[1], PlayerName(params[1]));
                    if(
    PlayerInfo[params[1]][pFMember] != family) return SendClientMessage(playeridCOLOR_GREY"   Этот игрок не является членом вашей Банды !");
                    
    PlayerInfo[params[1]][pFMember] = CIVILIAN;
                    
    PlayerInfo[params[1]][pRank] = 0;
                    
    FamilyInfo[family][FamilyMembers] --;
                    
    //SaveFamilies();
                    //--------------------------------------------------
                    
    new ind;
                    new 
    Clothes[MAX_SKINS];//массив для хранения найденых
                    
    pGender PlayerInfo[params[1]][pSex]; pTypePed[params[1]] = NormalPed;
                    for(new 
    i=0i<MAX_SKINSi++)//сканируем все скины
                    
    {
                        if(
    SkinName[i][Type_Ped]==pTypePed[params[1]] && SkinName[i][Gender]==pGender)
                        { 
    ind++; Clothes[ind]=SkinName[i][Skin_ID];    break; }
                    }
                    new 
    rand random(ind);
                    
    PlayerInfo[params[1]][pModel] = Clothes[rand];
                    
    //--------------------------------------------------
                    
    SaveAccount(params[1]);
                    new 
    string[29+(MAX_PLAYER_NAME)];
                    
    format(stringsizeof(string), "* Вы выгнали %s из вашей Банды.",PlayerName(params[1]));
                    
    SendClientMessage(playeridCOLOR_LIGHTBLUEstring);
                    return 
    1;
                }
    //not connected
                
    else
                {
                    if(
    params[1] != INVALID_PLAYER_ID)
                    {
                        if(
    PlayerInfo[params[1]][pFMember] != family) return SendClientMessage(playeridCOLOR_GREY"   Этот игрок не является членом вашей Банды !");
                        if(
    PlayerTied[params[1]] > 0) return SendClientMessage(playeridCOLOR_GREY"   Этот игрок Связан !");
                        
    PlayerInfo[params[1]][pFMember] = CIVILIAN;
                        
    PlayerInfo[params[1]][pRank] = 0;
                        
    FamilyInfo[family][FamilyMembers] --;
                        
    //SaveFamilies();
                        //--------------------------------------------------
                        
    new ind;
                        new 
    Clothes[MAX_SKINS];//массив для хранения найденых
                        
    pGender PlayerInfo[params[1]][pSex]; pTypePed[params[1]] = NormalPed;
                        for(new 
    i=0i<MAX_SKINSi++)//сканируем все скины
                        
    {
                            if(
    SkinName[i][Type_Ped]==pTypePed[params[1]] && SkinName[i][Gender]==pGender)
                            { 
    ind++; Clothes[ind]=SkinName[i][Skin_ID];    break; }
                        }
                        new 
    rand random(ind);
                        
    PlayerInfo[params[1]][pModel] = Clothes[rand];
                        
    //--------------------------------------------------
                        
    new string[35+(MAX_PLAYER_NAME)];
                        
    format(stringsizeof(string), "* Вы выгнали %s из вашей Банды.",PlayerName(params[1]));
                        
    SendClientMessage(playeridCOLOR_LIGHTBLUEstring);
                        
    format(stringsizeof(string), "* Глава Банды %s выгнал вас из Банды.",PlayerName(playerid));
                        
    SendClientMessage(params[1], COLOR_LIGHTBLUEstring);
                        return 
    1;
                    }
                    return 
    1;
                }
            }
            else if(
    strcmp(params[0],"rank",true))
            {
                if(
    sscanf(params[0],"{s[10]}du",params[1],params[2])) return SendClientMessage(playeridCOLOR_GRAYWHITE"USAGE: /adjust rank [RankNr] [playerid/PartOfName]");
                if(
    params[1] < || params[1] > 6) { SendClientMessage(playeridCOLOR_GREY"   Ранг может быть от 1 до 6 !"); return 1; }
                if(
    IsPlayerConnected(params[2]) && !IsPlayerNPC(params[2]))
                {
                    if(
    params[2] != INVALID_PLAYER_ID)
                    {
                        if(
    PlayerInfo[params[2]][pFMember] != family) return SendClientMessage(playeridCOLOR_GREY"   Этот игрок не является членом вашей Банды !");
                        
    PlayerInfo[params[2]][pRank] = params[1];
                        
    //SaveFamilies();
                        
    new string[29+1+(MAX_PLAYER_NAME)];
                        
    format(stringsizeof(string), "* Вы дали %s Ранг %d.",PlayerName(params[2]),params[1]);
                        
    SendClientMessage(playeridCOLOR_LIGHTBLUEstring);
                        
    format(stringsizeof(string), "* Глава Банды %s дал вам Ранг %d.",PlayerName(playerid),params[1]);
                        
    SendClientMessage(params[2], COLOR_LIGHTBLUEstring);
                        return 
    1;
                    }
                }
                else 
    SendClientMessage(playeridCOLOR_GREY"   Этого игрока нету на сервере !");
            }
            else 
    SendClientMessage(playeridCOLOR_GREY"   Неправильно отредактирована Категория !");
        }
        else 
    SendClientMessage(playeridCOLOR_GREY"   Вы - не Глава этой Банды !");
        return 
    1;
    }
    //end /adjust 
    Skype: vitya.saveliev


  10. Пользователь сказал cпасибо:
    #Johnson (19.06.2016)
  11. #9
    Аватар для #Johnson
    Пользователь

    Статус
    Оффлайн
    Регистрация
    15.05.2016
    Сообщений
    24
    Репутация:
    0 ±
    Цитата Сообщение от #Vito Посмотреть сообщение
    Немного неправильно использовал, вот так пробуй:
    PHP код:
    CMD:adjust(playerid,params[])
    {
        if(
    PlayerInfo[playerid][pFMember] == CIVILIAN) return SendClientMessage(playeridCOLOR_GREY"   Вы не член Банды !");
        new 
    family PlayerInfo[playerid][pFMember];
        new 
    strings[24];
        new 
    giveplayeridknp[9];
        
    format(stringssizeof(strings), "%s"PlayerName(playerid));
        if(
    strcmp(FamilyInfo[family][FamilyLeader],stringstrue) == ||
                (
    family >= && family <= && PlayerInfo[playerid][pRank] >= 6))
        {   
    //если ваше имя совпало с именем в списке gangs
            
    if(sscanf(params,"s[10] ",knp))
            {
                
    SendClientMessage(playeridCOLOR_GRAYWHITE"USAGE: /adjust [name]");
                
    SendClientMessage(playeridCOLOR_WHITE"Available Category: MOTD, Spawn, Invite, Uninvite, Rank");
                return 
    1;
            }
            else if(
    strcmp(knp,"spawn",true))
            {
                if(
    PlayerCuffed[playerid] < MAX_PLAYERS-1) return SendClientMessage(playeridCOLOR_GREY"   Вы не можете связать когда у вас надеты наручники !");
                if(
    PlayerTied[playerid] > 0) return SendClientMessage(playeridCOLOR_GREY"   Вы не можете надеть наручники когда связаны !");
                
    GetPlayerPos(playeridFamilyInfo[family][FamilySpawn][0],FamilyInfo[family][FamilySpawn][1],FamilyInfo[family][FamilySpawn][2]);
                
    GetPlayerFacingAngle(playeridFamilyInfo[family][FamilySpawn][3]);
                
    FamilyInfo[family][FamilyInterior] = GetPlayerInterior(playerid);
                
    //SaveFamilies();
                
    SendClientMessage(playeridCOLOR_LIGHTBLUE"   Вы отредактировали место появления вашей Банды !");
                return 
    1;
            }
            else if(
    strcmp(knp,"invite",true))
            {
                if(
    sscanf(params,"{s[10]}u",giveplayerid)) return SendClientMessage(playeridCOLOR_GRAYWHITE"USAGE: /adjust invite [playerid/PartOfName]");
                if(
    IsPlayerConnected(giveplayerid) && !IsPlayerNPC(giveplayerid))
                {
                    if(
    giveplayerid != INVALID_PLAYER_ID)
                    {
                        if(
    PlayerInfo[giveplayerid][pFMember]>=1&&PlayerInfo[params[1]][pFMember]<=9) return SendClientMessage(playeridCOLOR_GREY"   Этот игрок находится уже в Банде !");
                        if(
    PlayerInfo[giveplayerid][pJob] != || GettingJob[params[1]] > 0) return SendClientMessage(playeridCOLOR_GREY"   Вы Не Можете пригласить его, т.к. игрок имеет Работу или устраивается !");
                        if(
    PlayerInfo[giveplayerid][pMember] > 0) return SendClientMessage(playeridCOLOR_GREY"   Этот игрок находится уже в Организации !");
                        
    PlayerInfo[giveplayerid][pFMember] = family;
                        
    PlayerInfo[giveplayerid][pRank] = 1;
                        
    FamilyInfo[family][FamilyMembers] ++;
                        
    //SaveFamilies();
                        
    new string[61+(MAX_PLAYER_NAME)+35];
                        
    format(stringsizeof(string), "* Вы пригласили %s присоединиться к '%s'.",PlayerName(giveplayerid), FamilyInfo[family][FamilyName]);
                        
    SendClientMessage(playeridCOLOR_LIGHTBLUEstring);
                        
    format(stringsizeof(string), "* %s пригласил Вас присоединиться к '%s', Вы - теперь член Банды.",PlayerName(playerid), FamilyInfo[family][FamilyName]);
                        
    SendClientMessage(giveplayeridCOLOR_LIGHTBLUEstring);
                        return 
    1;
                    }
                }
                else
                {
                    
    SendClientMessage(playeridCOLOR_GREY"   Этого игрока нету на сервере !");
                    return 
    1;
                }
            }
            else if(!
    strcmp(params[0],"uninvite",true))
            {
                if(
    sscanf(params,"{s[10]}u",params[1])) return SendClientMessage(playeridCOLOR_GRAYWHITE"USAGE: /adjust uninvite [playerid/PartOfName]");
                if(
    params[1] == playerid) { SendClientMessage(playeridCOLOR_GREY"   Вы не можете выгнать самого себя!"); return 1; }
                if(!
    IsPlayerConnected(params[1]) && params[1] == INVALID_PLAYER_ID && params[1] != playerid)
                {
                    
    params[1] = MAX_PLAYERS-2;
                    
    OnPlayerLoadParameters(params[1], PlayerName(params[1]));
                    if(
    PlayerInfo[params[1]][pFMember] != family) return SendClientMessage(playeridCOLOR_GREY"   Этот игрок не является членом вашей Банды !");
                    
    PlayerInfo[params[1]][pFMember] = CIVILIAN;
                    
    PlayerInfo[params[1]][pRank] = 0;
                    
    FamilyInfo[family][FamilyMembers] --;
                    
    //SaveFamilies();
                    //--------------------------------------------------
                    
    new ind;
                    new 
    Clothes[MAX_SKINS];//массив для хранения найденых
                    
    pGender PlayerInfo[params[1]][pSex]; pTypePed[params[1]] = NormalPed;
                    for(new 
    i=0i<MAX_SKINSi++)//сканируем все скины
                    
    {
                        if(
    SkinName[i][Type_Ped]==pTypePed[params[1]] && SkinName[i][Gender]==pGender)
                        { 
    ind++; Clothes[ind]=SkinName[i][Skin_ID];    break; }
                    }
                    new 
    rand random(ind);
                    
    PlayerInfo[params[1]][pModel] = Clothes[rand];
                    
    //--------------------------------------------------
                    
    SaveAccount(params[1]);
                    new 
    string[29+(MAX_PLAYER_NAME)];
                    
    format(stringsizeof(string), "* Вы выгнали %s из вашей Банды.",PlayerName(params[1]));
                    
    SendClientMessage(playeridCOLOR_LIGHTBLUEstring);
                    return 
    1;
                }
    //not connected
                
    else
                {
                    if(
    params[1] != INVALID_PLAYER_ID)
                    {
                        if(
    PlayerInfo[params[1]][pFMember] != family) return SendClientMessage(playeridCOLOR_GREY"   Этот игрок не является членом вашей Банды !");
                        if(
    PlayerTied[params[1]] > 0) return SendClientMessage(playeridCOLOR_GREY"   Этот игрок Связан !");
                        
    PlayerInfo[params[1]][pFMember] = CIVILIAN;
                        
    PlayerInfo[params[1]][pRank] = 0;
                        
    FamilyInfo[family][FamilyMembers] --;
                        
    //SaveFamilies();
                        //--------------------------------------------------
                        
    new ind;
                        new 
    Clothes[MAX_SKINS];//массив для хранения найденых
                        
    pGender PlayerInfo[params[1]][pSex]; pTypePed[params[1]] = NormalPed;
                        for(new 
    i=0i<MAX_SKINSi++)//сканируем все скины
                        
    {
                            if(
    SkinName[i][Type_Ped]==pTypePed[params[1]] && SkinName[i][Gender]==pGender)
                            { 
    ind++; Clothes[ind]=SkinName[i][Skin_ID];    break; }
                        }
                        new 
    rand random(ind);
                        
    PlayerInfo[params[1]][pModel] = Clothes[rand];
                        
    //--------------------------------------------------
                        
    new string[35+(MAX_PLAYER_NAME)];
                        
    format(stringsizeof(string), "* Вы выгнали %s из вашей Банды.",PlayerName(params[1]));
                        
    SendClientMessage(playeridCOLOR_LIGHTBLUEstring);
                        
    format(stringsizeof(string), "* Глава Банды %s выгнал вас из Банды.",PlayerName(playerid));
                        
    SendClientMessage(params[1], COLOR_LIGHTBLUEstring);
                        return 
    1;
                    }
                    return 
    1;
                }
            }
            else if(
    strcmp(params[0],"rank",true))
            {
                if(
    sscanf(params[0],"{s[10]}du",params[1],params[2])) return SendClientMessage(playeridCOLOR_GRAYWHITE"USAGE: /adjust rank [RankNr] [playerid/PartOfName]");
                if(
    params[1] < || params[1] > 6) { SendClientMessage(playeridCOLOR_GREY"   Ранг может быть от 1 до 6 !"); return 1; }
                if(
    IsPlayerConnected(params[2]) && !IsPlayerNPC(params[2]))
                {
                    if(
    params[2] != INVALID_PLAYER_ID)
                    {
                        if(
    PlayerInfo[params[2]][pFMember] != family) return SendClientMessage(playeridCOLOR_GREY"   Этот игрок не является членом вашей Банды !");
                        
    PlayerInfo[params[2]][pRank] = params[1];
                        
    //SaveFamilies();
                        
    new string[29+1+(MAX_PLAYER_NAME)];
                        
    format(stringsizeof(string), "* Вы дали %s Ранг %d.",PlayerName(params[2]),params[1]);
                        
    SendClientMessage(playeridCOLOR_LIGHTBLUEstring);
                        
    format(stringsizeof(string), "* Глава Банды %s дал вам Ранг %d.",PlayerName(playerid),params[1]);
                        
    SendClientMessage(params[2], COLOR_LIGHTBLUEstring);
                        return 
    1;
                    }
                }
                else 
    SendClientMessage(playeridCOLOR_GREY"   Этого игрока нету на сервере !");
            }
            else 
    SendClientMessage(playeridCOLOR_GREY"   Неправильно отредактирована Категория !");
        }
        else 
    SendClientMessage(playeridCOLOR_GREY"   Вы - не Глава этой Банды !");
        return 
    1;
    }
    //end /adjust 
    Спасибо, остался последний вопрос. Почему лучше использовать отдельные переменные вместо массивов params ?

  12. #10
    Аватар для #Vito
    #define

    Статус
    Оффлайн
    Регистрация
    14.09.2013
    Адрес
    Одесса
    Сообщений
    129
    Репутация:
    38 ±
    Отдельные перменные нужно использовать только в командах такого типа, т.к. с params такие команды не хотят работать (Очень давно пытался сделать, но они не срабатывали..)
    В остальных же случаях лучше использовать массивы params
    Skype: vitya.saveliev


 

 
Страница 1 из 2 12 ПоследняяПоследняя

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •