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

Реклама


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

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

    насчет showstats

    предлогаю посмотреть свою статистику, предложение пришло прописываю /accept stats ничего не происходит..


    PHP код:
    else if(strcmp(x_job,"stats",true) == 0)
                {
                    if(
    GetPVarInt(playerid,"SHOW")!= 1) return error(playerid"Никто не предлагал Вам просмотр статистики.");
                    
    GetPlayerName(playerid,sendername,sizeof(sendername));
                    
    showstats[playerid] = ReturnUser(tmp);
                    
    ShowStats(playerid,showstats[playerid]);
                    
    format(stringsizeof(string), "{33CCFF}%s{FFFFFF} просматривает Вашу статистику."sendername);
                    
    SendClientMessage(showstats[playerid], COLOR_WHITEstring);
                    
    DeletePVar(playerid,"SHOW");
                    
    showstats[playerid] = 0;
                    return 
    true;
                } 

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

    Статус
    Оффлайн
    Регистрация
    27.01.2014
    Адрес
    Восточный Мордор
    Сообщений
    3,931
    Репутация:
    1502 ±
    Покажите саму команду, которой предлагается показать статус
    Связаться со мной можно в личных сообщениях этой группы

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

    Steve Pavlina

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

    Статус
    Оффлайн
    Регистрация
    15.07.2014
    Сообщений
    106
    Репутация:
    0 ±
    PHP код:
    if(strcmp(cmd,"/showstats",true)==0)
        {
            
    tmp strtok(cmdtextidx);
            if(!
    strlen(tmp)) return error(playerid"/showstats [ Ник игрока / ID игрока ]");
            
    giveplayerid ReturnUser(tmp);
            if(!
    IsPlayerConnected(giveplayerid)) return NoPlayerConnect;
            if(
    giveplayerid == INVALID_PLAYER_ID) return NetotID;
            if(
    GetPVarInt(giveplayerid,"SHOW") == 1) return error(playerid"Этому игроку уже предложен просмотр статистики.");
            
    GetPlayerName(playerid,sendername,sizeof(sendername));
            
    GetPlayerName(giveplayeridgiveplayersizeof(giveplayer));
            
    showstats[giveplayerid] = playerid;
            
    format(stringsizeof(string), "{33CCFF}%s{FFFFFF} предложил Вам просмотр своей статистики. ({33CCFF}/accept stats{FFFFFF})"sendername);
            
    SendClientMessage(giveplayeridCOLOR_WHITEstring);
            
    format(string,sizeof(string),"Вы предложили просмотр своей статистики игроку {33CCFF}%s{FFFFFF}."giveplayer);
            
    SendClientMessage(playerid,COLOR_WHITE,string);
            
    SetPVarInt(giveplayerid,"SHOW",1);
            return 
    true;
        } 

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

    Статус
    Оффлайн
    Регистрация
    27.01.2014
    Адрес
    Восточный Мордор
    Сообщений
    3,931
    Репутация:
    1502 ±
    Строку
    PHP код:
    showstats[playerid] = ReturnUser(tmp); 
    уберите
    Связаться со мной можно в личных сообщениях этой группы

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

    Steve Pavlina

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

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

  6. #6
    Аватар для Londlem
    Модератор

    Статус
    Оффлайн
    Регистрация
    19.10.2013
    Сообщений
    1,360
    Репутация:
    767 ±
    Размер массива string какой? Попробуйте вместо оператора sizeof поставить число 144.

  7. #7
    Аватар для Unknown
    Пользователь

    Статус
    Оффлайн
    Регистрация
    15.07.2014
    Сообщений
    106
    Репутация:
    0 ±
    Цитата Сообщение от Londlem Посмотреть сообщение
    Размер массива string какой? Попробуйте вместо оператора sizeof поставить число 144.
    размер массива 256, поставил
    PHP код:
    format(string144"{33CCFF}%s{FFFFFF} просматривает Вашу статистику."sendername); 
    не помогло...

    Я не знаю я кину все что связанно, мб что-то да выяснится..



     /accept stats
    PHP код:
    if(strcmp(cmd,"/accept",true)==0)
        {
            if(
    IsPlayerConnected(playerid))
            {
                new 
    x_job[256];
                
    x_job strtok(cmdtextidx);
                if(!
    strlen(x_job)) return error(playerid"/accept [ Наименование ]"),error(playerid"Доступные наименования: drugs, repair, live, refill, stats, team"),error(playerid"Доступные наименования: car, taxi, medic, mechanic, ticket, mats");
    //-----------------------------------------------------------------------------------
    else if(strcmp(x_job,"stats",true) == 0)
                   {
                    if(
    GetPVarInt(playerid,"SHOW")!= 1) return error(playerid"Íèêòî íå ïðåäëàãàë Âàì ïðîñìîòð ñòàòèñòèêè.");
                    
    GetPlayerName(playerid,sendername,sizeof(sendername));
                     
    showstats[playerid] = ReturnUser(tmp);
                    
    ShowStats(playerid,showstats[playerid]);
                    
    format(stringsizeof(string), "{33CCFF}%s{FFFFFF} ïðîñìàòðèâàåò Âàøó ñòàòèñòèêó."sendername);
                    
    SendClientMessage(showstats[playerid], COLOR_WHITEstring);
                    
    DeletePVar(playerid,"SHOW"),showstats[playerid] = 0;
                    return 
    true;
                } 


     паблик ShowStats
    PHP код:
    public ShowStats(playerid,targetid)
    {
        if(
    IsPlayerConnected(playerid)&&IsPlayerConnected(targetid))
        {
            new 
    atext[32];// Пол
            
    switch(PlayerInfo[targetid][pSex])
            {
            case 
    0..1atext "Парень";
            case 
    2atext "Девушка";
            }
            new 
    ttext[50];// Фракция
            
    new string[32];
            new 
    playername[MAX_PLAYER_NAME];
            
    GetPlayerName(targetidplayernamesizeof(playername));
            
    format(stringsizeof(string), "Accounts/%s.ini"playername);// Заменить на своё!
            
    if(PlayerInfo[targetid][pMember] == || PlayerInfo[targetid][pLeader] == 1) { ttext "Полиция"; }
            else if(
    PlayerInfo[targetid][pMember] == || PlayerInfo[targetid][pLeader] == 2) { ttext "ФБР"; }
            else if(
    PlayerInfo[targetid][pMember] == || PlayerInfo[targetid][pLeader] == 3) { ttext "Армия"; }
            else if(
    PlayerInfo[targetid][pMember] == || PlayerInfo[targetid][pLeader] == 4) { ttext "МЧС"; }
            else if(
    PlayerInfo[targetid][pMember] == || PlayerInfo[targetid][pLeader] == 5) { ttext "La Cosa Nostra"; }
            else if(
    PlayerInfo[targetid][pMember] == || PlayerInfo[targetid][pLeader] == 6) { ttext "Yakuza Family"; }
            else if(
    PlayerInfo[targetid][pMember] == || PlayerInfo[targetid][pLeader] == 8) { ttext "The Triads Mafia"; }
            else if(
    PlayerInfo[targetid][pMember] == || PlayerInfo[targetid][pLeader] == 7) { ttext "Company Hired Killers"; }
            else if(
    PlayerInfo[targetid][pMember] == || PlayerInfo[targetid][pLeader] == 9) { ttext "Репортеры"; }
            else if(
    PlayerInfo[targetid][pMember] == 10 || PlayerInfo[targetid][pLeader] == 10) { ttext "The Ballas Gang"; }
            else if(
    PlayerInfo[targetid][pMember] == 12 || PlayerInfo[targetid][pLeader] == 12) { ttext "The Grove Street Family"; }
            else if(
    PlayerInfo[targetid][pMember] == 13 || PlayerInfo[targetid][pLeader] == 13) { ttext "Los Santos Vagos"; }
            else if(
    PlayerInfo[targetid][pMember] == 14 || PlayerInfo[targetid][pLeader] == 14) { ttext "Varrios Los Aztecas"; }
            else if(
    PlayerInfo[targetid][pMember] == 15 || PlayerInfo[targetid][pLeader] == 15) { ttext "San Fierro Rifa"; }
            else if(
    PlayerInfo[targetid][pMember] == 16 || PlayerInfo[targetid][pLeader] == 16) { ttext "Русская Мафия"; }
            else if(
    PlayerInfo[targetid][pMember] == 17 || PlayerInfo[targetid][pLeader] == 17) { ttext "Taxi Company"; }
            else if(
    PlayerInfo[targetid][pMember] == 18 || PlayerInfo[targetid][pLeader] == 18) { ttext "Street Racers"; }
            else if(
    PlayerInfo[targetid][pMember] == 19 || PlayerInfo[targetid][pLeader] == 19) { ttext "LVPD"; }
            else if(
    PlayerInfo[targetid][pMember] == 21 || PlayerInfo[targetid][pLeader] == 21) { ttext "Hell Angels"; }
            else if(
    PlayerInfo[targetid][pMember] == 20 || PlayerInfo[targetid][pLeader] == 20) { ttext "Black Kings"; }
            else if(
    PlayerInfo[targetid][pMember] == 11 || PlayerInfo[targetid][pLeader] == 11) { ttext "Академия Юристов"; }
            else if(
    PlayerInfo[targetid][pMember] == || PlayerInfo[targetid][pLeader] == 0) { ttext "Нет"; }
            new 
    rtext[10];
            switch(
    PlayerInfo[targetid][pRank])
            {
            case 
    0rtext "Нет";
            case 
    1rtext "1";
            case 
    2rtext "2";
            case 
    3rtext "3";
            case 
    4rtext "4";
            case 
    5rtext "5";
            case 
    6rtext "6";
            }
            new 
    goldtext[10];
            switch(
    PlayerInfo[playerid][pGold])
            {
            case 
    0goldtext "Нет";
            case 
    1goldtext "Есть";
            }
            new 
    ktext[16];
            switch(
    PlayerInfo[targetid][pBoi])
            {
            case 
    0,1ktext "None";
            case 
    2ktext "Boxing";
            case 
    3ktext "KungFu";
            case 
    4ktext "KneeHead";
            }
            new 
    otmichka[16];
            switch(
    otmi4ka[playerid])
            {
            case 
    0otmichka "Нет";
            case 
    1otmichka "Есть";
            }
            new 
    timetext[10];
            switch(
    PlayerInfo[targetid][pTime])
            {
            case 
    0timetext "Нет";
            case 
    1timetext "Есть";
            }
            if(
    PlayerInfo[targetid][pLeader] >= 1) { rtext "Лидер"; }
            new 
    jtext[32];// Работа
            
    switch(PlayerInfo[targetid][pJob])
            {
            case 
    1jtext "Детектив";
            case 
    2jtext "Адвокат";
            case 
    3jtext "Карманник";
            case 
    4jtext "Наркодилер";
            case 
    5jtext "Автоугонщик";
            case 
    7jtext "Механик";
            case 
    9jtext "Гандилер";
            case 
    10jtext "Автодилер";
            case 
    16jtext "Дальнобойщик";
            case 
    0jtext "Нет";
            }
            new 
    drank[20];
            if(
    PlayerInfo[targetid][pDonateRank] == 1) { drank "Есть(1 уровня)"; }
            else if(
    PlayerInfo[targetid][pDonateRank] >= 2) { drank "Есть(2 уровня)"; }
            else { 
    drank "Нет"; }
            new 
    mon PlayerInfo[targetid][pMoney]; // Деньги
            
    new crimes PlayerInfo[targetid][pCrimes]; // Преступления
            
    new arrests PlayerInfo[targetid][pArrested]; // Арестован [ Количество ] раз
            
    new warrests PlayerInfo[targetid][pWantedDeaths]; // Убит с розыском
            
    new wanted PlayerInfo[targetid][pWanted]; // Убит с розыском
            
    new lvl PlayerInfo[targetid][pLevel]; // Уровень
            
    new exp PlayerInfo[targetid][pExp]; // Респекты
            
    new nxtlevel PlayerInfo[targetid][pLevel]+1// След. лвл (нужно для вычисления того, что ниже)
            
    new expam nxtlevel*levelexp// Нужно респектов до след. лвл'а
            
    new wrn PlayerInfo[targetid][pWarns]; // Варны
            
    new blc PlayerInfo[targetid][pBlocked]; // Варны
            
    new fwrn PlayerInfo[targetid][pFWarns];
            new 
    bank PlayerInfo[targetid][pAccount];
            new 
    zmats PlayerInfo[targetid][pZmats];
            new 
    zdrugs PlayerInfo[targetid][pZdrugs];
            new 
    tmats PlayerInfo[targetid][ptMats];
            new 
    tdrugs PlayerInfo[targetid][ptDrugs];
            new 
    dd PlayerInfo[targetid][pDrugs];
            new 
    mm PlayerInfo[targetid][pMats];
            new 
    fh PlayerInfo[targetid][pFishes];
            new 
    fhb PlayerInfo[targetid][pBiggestFish];
            new 
    clvl nxtlevel*levelcost;
            new 
    name[MAX_PLAYER_NAME]; // Ник
            
    GetPlayerName(targetidnamesizeof(name));
            new 
    info[1000];
            new 
    coordsstring[500];
            new 
    coordsstring2[256];
            new 
    coordsstring3[210];
            new 
    coordsstring4[256];
            new 
    coordsstring5[210];
            new 
    coordsstring6[210];
            new 
    coordsstring7[210];
            
    format(coordsstringsizeof(coordsstring), "{ecca63}Уровень:\t\t{FFFFFF}%d\n{ecca63}Для сл. уровня:\t{FFFFFF}%d$\n{ecca63}Респекты:\t\t{FFFFFF}%d/%d\n{ecca63}Пол:\t\t\t{FFFFFF}%s\n{ecca63}Жизни:\t\t\t{FFFFFF}%.1f\n{ecca63}Работа:\t\t\t{FFFFFF}%s\n{ecca63}Фракция:\t\t{FFFFFF}%s\n{ecca63}Ранг:\t\t\t{FFFFFF}%s\n{ecca63}Предупреждения:\t{FFFFFF}%d/3\n{ecca63}Кол-во блокировок:\t{FFFFFF}%d/3",lvl,clvl,exp,expam,atext,PlayerInfo[targetid][pSHealth]+50.0,jtext,ttext,rtext,wrn,blc);
            
    format(coordsstring5sizeof(coordsstring5), "\n{ecca63}Кол-во выговоров:\t{FFFFFF}%d/3\n{ecca63}Стиль Боя:\t\t{FFFFFF}%s\n\n{ecca63}V.I.P. Аккаунт:\t\t{FFFFFF}%s\n{ecca63}Деньги на руках:\t{FFFFFF}%d$",fwrn,ktext,drank,mon);
            
    format(coordsstring2sizeof(coordsstring2), "\n{ecca63}Банк:\t\t\t{FFFFFF}%d$\n{ecca63}Обручен(а):\t\t{FFFFFF}No-one\n{ecca63}Золотая Карточка:\t{FFFFFF}%s\n{ecca63}Часы:\t\t\t{FFFFFF}%s\n{ecca63}Часов в игре:\t\t{FFFFFF}%d\n{ecca63}Лотерейный №:\t{FFFFFF}%d",bank,goldtexttimetextPlayerInfo[targetid][pHourgame], PlayerInfo[targetid][pLottoNr]);
            
    format(coordsstring3sizeof(coordsstring3), "\n\n{ecca63}Рыб поймано:\t\t{FFFFFF}%d\n{ecca63}Большая рыба:\t\t{FFFFFF}%dкг\n{ecca63}Уровень розыска:\t{FFFFFF}%d\n{ecca63}Преступлений:\t\t{FFFFFF}%d\n{ecca63}Арестов:\t\t{FFFFFF}%d\n{ecca63}Смертей с розыском:\t{FFFFFF}%d",fh,fhb,wanted,crimes,arrests,warrests);
            
    format(coordsstring4sizeof(coordsstring4), "\n\n{ecca63}Наркотики:\t\t{FFFFFF}%d\n{ecca63}Материалы:\t\t{FFFFFF}%d\n{ecca63}Нарко на складе:\t{FFFFFF}%d\n{ecca63}Матов на складе:\t{FFFFFF}%d\n{ecca63}Пакетов на складе:\t{FFFFFF}0\n{ecca63}Отмычка:\t\t{FFFFFF}%s",dd,mm,tdrugs,tmats,otmichka);
            
    format(coordsstring6sizeof(coordsstring6), "{ecca63}Статистика: {FFFFFF}%s",name);
            if(
    IsACop(targetid)) format(coordsstring7sizeof(coordsstring7), "\n\n{ecca63}Конфиск. матов:{FFFFFF}\t%d\n{ecca63}Конфиск. нарко: {FFFFFF}\t%d",zmats,zdrugs);
            
    format(info1260,"{ecca63}____________________________________\n%s%s%s%s%s%s",coordsstring,coordsstring5,coordsstring2,coordsstring3,coordsstring4,coordsstring7);
            
    Dialog(playerid,18,DIALOG_STYLE_MSGBOX,coordsstring6,info,"Закрыть","Назад");
        }



    - - - Добавлено - - -

    ну и команда.. хоть и кидал..
     /showstats
    PHP код:
    if(strcmp(cmd,"/showstats",true)==0)
        {
            
    tmp strtok(cmdtextidx);
            if(!
    strlen(tmp)) return error(playerid"/showstats [ Ник игрока / ID игрока ]");
            if(!
    IsPlayerConnected(giveplayerid)) return NoPlayerConnect;
            if(
    giveplayerid == INVALID_PLAYER_ID) return NetotID;
            if(
    GetPVarInt(giveplayerid,"SHOW") == 1) return error(playerid"Этому игроку уже предложен просмотр статистики.");
            
    GetPlayerName(playerid,sendername,sizeof(sendername));
            
    GetPlayerName(giveplayeridgiveplayersizeof(giveplayer));
            
    giveplayerid ReturnUser(tmp);
            
    showstats[giveplayerid] = playerid;
            
    format(stringsizeof(string), "{33CCFF}%s{FFFFFF} предложил Вам просмотр своей статистики. ({33CCFF}/accept stats{FFFFFF})"sendername);
            
    SendClientMessage(giveplayeridCOLOR_WHITEstring);
            
    format(stringsizeof(string),"Вы предложили просмотр своей статистики игроку {33CCFF}%s{FFFFFF}."giveplayer);
            
    SendClientMessage(playeridCOLOR_WHITEstring);
            
    SetPVarInt(giveplayerid,"SHOW",1);
            return 
    true;
        } 

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

    Статус
    Оффлайн
    Регистрация
    27.01.2014
    Адрес
    Восточный Мордор
    Сообщений
    3,931
    Репутация:
    1502 ±
    PHP код:
    if(strcmp(cmd,"/showstats",true)==0)
    {
        
    tmp strtok(cmdtextidx);
        if(!
    strlen(tmp)) return error(playerid"/showstats [ Ник игрока / ID игрока ]");
        
    giveplayerid ReturnUser(tmp);
        if(!
    IsPlayerConnected(giveplayerid)) return NoPlayerConnect;
        if(
    showstats[giveplayerid] == playerid) return error(playerid"Вы уже предложили данному игроку посмотреть свою статистику.");
        if(
    showstats[giveplayerid] != INVALID_PLAYER_ID) return error(playerid"Этому игроку уже предложен просмотр статистики.");
        
    GetPlayerName(playerid,sendername,sizeof(sendername));
        
    GetPlayerName(giveplayeridgiveplayersizeof(giveplayer));
        
    showstats[giveplayerid] = playerid;
        
    format(stringsizeof(string), "{33CCFF}%s{FFFFFF} предложил Вам просмотр своей статистики. ({33CCFF}/accept stats{FFFFFF})"sendername);
        
    SendClientMessage(giveplayeridCOLOR_WHITEstring);
        
    format(string,sizeof(string),"Вы предложили просмотр своей статистики игроку {33CCFF}%s{FFFFFF}."giveplayer);
        
    SendClientMessage(playerid,COLOR_WHITE,string);
        return 
    true;
    }

    if(
    strcmp(cmd,"/accept",true)==0)
    {
        new 
    x_job[256];
        
    x_job strtok(cmdtextidx);
        if(!
    strlen(x_job)) return error(playerid"/accept [ Наименование ]"),error(playerid"Доступные наименования: drugs, repair, live, refill, stats, team"),error(playerid"Доступные наименования: car, taxi, medic, mechanic, ticket, mats");
    //-----------------------------------------------------------------------------------
        
    else if(strcmp(x_job,"stats",true) == 0)
        {
            if(
    showstats[playerid] == INVALID_PLAYER_ID) return error(playerid"Никто не предлагал Вам просмотр статистики.");
            if(!
    IsPlayerConnected(showstats[playerid])) return error(playerid"Игрк, предложивший Вам просмотр статистики, покинул сервер."), showstats[playerid] = INVALID_PLAYER_ID;
            
    GetPlayerName(showstats[playerid], sendernamesizeof(sendername));
            
    ShowStats(playeridshowstats[playerid]);
            
    format(stringsizeof(string), "%s{FFFFFF} просматривает Вашу статистику."sendername);
            
    SendClientMessage(showstats[playerid], 0x33CCFFFFstring);
            
    showstats[playerid] = INVALID_PLAYER_ID;
            return 
    true;
        } 
    Связаться со мной можно в личных сообщениях этой группы

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

    Steve Pavlina

  9. #9
    Аватар для Unknown
    Пользователь

    Статус
    Оффлайн
    Регистрация
    15.07.2014
    Сообщений
    106
    Репутация:
    0 ±
    теперь пишет этом игроку уже предложен просмотр статистики при вводе /showstats id

    - - - Добавлено - - -

    а при /accept stats выдаёт Server Unknown command

  10. #10
    Аватар для Dima_Turkow
    Пользователь

    Статус
    Оффлайн
    Регистрация
    22.12.2013
    Адрес
    Екатеринбург
    Сообщений
    118
    Репутация:
    7 ±
    Использование GetPlayerName(showstats[playerid], sendername, sizeof(sendername));... Нет слов, оптимизировали бы хоть, ведь по этой теме есть куча мануалов, зачем каждый раз использовать эту функцию?

 

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

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

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

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

Ваши права

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