Добро пожаловать на Pro Pawn - Портал о PAWN-скриптинге.
Показано с 1 по 10 из 10
  1. #1
    Аватар для nikvlad
    Пользователь

    Статус
    Оффлайн
    Регистрация
    04.02.2016
    Сообщений
    94
    Репутация:
    2 ±

    По поводу DC_CMD

    Как вызвать команду из мода с 2+ параметрами???

    Пробую так - вырубает сервер:

    PHP код:
                   new param_str[128];
                 
    format(param_strsizeof(param_str), "%d %s",pbNumbers[GetPVarInt(playerid,"phonebook")] , inputtext);
                 
    printf("%s",param_str); 
                 
    cmd::sms(playeridparam_str); 

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

    Статус
    Оффлайн
    Регистрация
    27.01.2014
    Адрес
    Восточный Мордор
    Сообщений
    5,588
    Репутация:
    1984 ±
    В консоль что выводит, если вот так сделать
    PHP код:
                 new param_str[128]; 
                 
    format(param_strsizeof(param_str), "%d %s",pbNumbers[GetPVarInt(playerid,"phonebook")] , inputtext); 
                 
    printf("|%s|",param_str);  
                 
    cmd::sms(playeridparam_str); 
    Связаться со мной в VK можно через личные сообщения этой группы
    Заказы не принимаю

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

    Steve Pavlina

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

    Статус
    Оффлайн
    Регистрация
    06.02.2017
    Сообщений
    123
    Репутация:
    16 ±
    На будущее, вместо конструкции:
    PHP код:
    printf("%s",param_str); 
    можно писать:
    PHP код:
    print(param_str); 
    MyProject:
    DriftEmpire©

    Ленивые всё делают быстро, чтобы поскорее избавиться от работы.
    И делают качественно, чтобы потом не переделывать.

  4. #4
    Аватар для nikvlad
    Пользователь

    Статус
    Оффлайн
    Регистрация
    04.02.2016
    Сообщений
    94
    Репутация:
    2 ±
    Цитата Сообщение от DeimoS Посмотреть сообщение
    В консоль что выводит, если вот так сделать
    PHP код:
                 new param_str[128]; 
                 
    format(param_strsizeof(param_str), "%d %s",pbNumbers[GetPVarInt(playerid,"phonebook")] , inputtext); 
                 
    printf("|%s|",param_str);  
                 
    cmd::sms(playeridparam_str); 


    PHP код:
    |980979 Тест СМС

    980979 - номер, он верный.
    "Тест СМС" - то, что я ввел в диалоговое окно, также верно вывело.

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

    Статус
    Оффлайн
    Регистрация
    27.01.2014
    Адрес
    Восточный Мордор
    Сообщений
    5,588
    Репутация:
    1984 ±
    crashdetect подключён? Если да, то скинь логи, а если нет, то подключи, введи команду и скинь логи
    Связаться со мной в VK можно через личные сообщения этой группы
    Заказы не принимаю

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

    Steve Pavlina

  6. #6
    Аватар для nikvlad
    Пользователь

    Статус
    Оффлайн
    Регистрация
    04.02.2016
    Сообщений
    94
    Репутация:
    2 ±
    Цитата Сообщение от DeimoS Посмотреть сообщение
    crashdetect подключён? Если да, то скинь логи, а если нет, то подключи, введи команду и скинь логи
    Вот логи:
    Код:
    [14:49:14] |980979 Тест СМС|
    [14:49:14] [debug] Server crashed while executing newrp.amx
    [14:49:14] [debug] AMX backtrace:
    [14:49:14] [debug] #0 native strfind () from samp-server.exe
    [14:49:14] [debug] #1 0022b24c in ?? (3427532) from newrp.amx
    [14:49:14] [debug] #2 00254eac in public cmd_sms (0, 3427532) from newrp.amx
    [14:49:14] [debug] #3 0017f9b8 in public OnDialogResponse (0, 7, 1, -1, 3414452) from newrp.amx
    [14:49:14] [debug] Native backtrace:
    [14:49:14] [debug] #0 77064f1d in ?? () from C:\Windows\syswow64\USER32.dll
    [14:49:14] [debug] #1 004061b4 in ?? () from samp-server.exe
    [14:49:14] [debug] Registers:
    [14:49:14] [debug] EAX: 000ef7f3 EBX: 00000001 ECX: 00000001 EDX: 000ef7f4
    [14:49:14] [debug] ESI: 000ef7f3 EDI: 04b112dc EBP: 00000000 ESP: 0018f3a0
    [14:49:14] [debug] EIP: 004061b4 EFLAGS: 00010206
    [14:49:14] [debug] Stack:
    [14:49:14] [debug] ESP+00000000: 000ef7f3 004064fe 00000001 04b112dc
    [14:49:14] [debug] ESP+00000020: 04ad4b7c 00000003 00000000 0018f514
    [14:49:14] [debug] ESP+00000040: 04b11318 00000009 004010b6 0220ff68
    [14:49:14] [debug] ESP+00000060: 00000017 0018f588 04b112dc e26fde35
    [14:49:14] [debug] ESP+00000080: 0220ff68 00000000 00344ca8 0022b24c
    [14:49:14] [debug] ESP+000000a0: 7782032a 00717068 0018f49e 00000000
    [14:49:14] [debug] ESP+000000c0: 7781e1b2 77820378 77567b81 00720e50
    [14:49:14] [debug] ESP+000000e0: 0018f548 7781e38c 00000000 00717068
    [14:49:14] [debug] ESP+00000100: 6c616944 6552676f 6e6f7073 02006573
    [14:49:14] [debug] ESP+00000120: 00000000 5ba0985c 0018f4e4 5b9d954f
    [14:49:14] [debug] ESP+00000140: 0018f588 00000000 0220ff68 0476f478
    [14:49:14] [debug] ESP+00000160: 0266d9f0 e26fde35 0018f8cc 5b9fb8d5
    [14:49:14] [debug] ESP+00000180: 0018f588 04b112dc 0018f580 5b9e4078
    [14:49:14] [debug] ESP+000001a0: 00000022 00000022 027d7220 00288420
    [14:49:14] [debug] ESP+000001c0: 0454422c 003419d8 003459b0 047cc64c
    [14:49:14] [debug] ESP+000001e0: 0018f5e4 5b9da767 00308530 0018f668
    [14:49:14] [debug] ESP+00000200: 00000009 00000002 0100007f 000ee22e
    [14:49:14] [debug] ESP+00000220: 00000001 00000000 00000000 00000022
    [14:49:14] [debug] ESP+00000240: 0018f5f4 0018f5f4 5b9dd65a 0018f668
    [14:49:14] [debug] ESP+00000260: 0018f668 00000022 00000000 0220ff68
    [14:49:14] [debug] ESP+00000280: 0018f668 00000022 0220ff68 00000000
    [14:49:14] [debug] ESP+000002a0: 0220ff68 ffffffff 0220ff68 0018f684
    [14:49:14] [debug] ESP+000002c0: 0018f8c1 0220ff68 00000000 04b0e000
    [14:49:14] [debug] ESP+000002e0: ffffffff 003419b4 0018fb54 00455620
    [14:49:14] [debug] ESP+00000300: 54c50007 00000000 00000078 00000078
    [14:49:14] [debug] ESP+00000320: 7782032a 00717068 0018f71e 00000000
    [14:49:14] [debug] ESP+00000340: 7781e1b2 77820378 77567801 007216e1
    [14:49:14] [debug] ESP+00000360: 0018f7c8 00000001 00000000 00717068
    [14:49:14] [debug] ESP+00000380: 6c627550 61436369 00326c6c 0018f604
    [14:49:14] [debug] ESP+000003a0: 0018fa01 0220ff68 00000000 5ba0985c
    [14:49:14] [debug] ESP+000003c0: 00000000 0018fa0c 5b9fba5d ffffffff
    [14:49:14] [debug] ESP+000003e0: 0018f784 00000000 0018f7a8 5b9e3159
    [14:49:14] [debug] Loaded modules:
    [14:49:14] [debug] 00400000 - 00519000 samp-server.exe
    [14:49:14] [debug] 777f0000 - 77970000 ntdll.dll
    [14:49:14] [debug] 76820000 - 76930000 kernel32.dll
    [14:49:14] [debug] 75f60000 - 75fa7000 KERNELBASE.dll
    [14:49:14] [debug] 75310000 - 75f5a000 SHELL32.dll
    [14:49:14] [debug] 76570000 - 7661c000 msvcrt.dll
    [14:49:14] [debug] 76f30000 - 76f87000 SHLWAPI.dll
    [14:49:14] [debug] 77140000 - 771d0000 GDI32.dll
    [14:49:14] [debug] 77040000 - 77140000 USER32.dll
    [14:49:14] [debug] 76330000 - 763d0000 ADVAPI32.dll
    [14:49:14] [debug] 76f10000 - 76f29000 sechost.dll
    [14:49:14] [debug] 76010000 - 76100000 RPCRT4.dll
    [14:49:14] [debug] 75210000 - 75270000 SspiCli.dll
    [14:49:14] [debug] 75200000 - 7520c000 CRYPTBASE.dll
    [14:49:14] [debug] 76660000 - 7666a000 LPK.dll
    [14:49:14] [debug] 76940000 - 769dd000 USP10.dll
    [14:49:14] [debug] 74840000 - 74847000 WSOCK32.dll
    [14:49:14] [debug] 76620000 - 76655000 WS2_32.dll
    [14:49:14] [debug] 766b0000 - 766b6000 NSI.dll
    [14:49:14] [debug] 65c70000 - 65ca2000 WINMM.dll
    [14:49:14] [debug] 75fb0000 - 76010000 IMM32.DLL
    [14:49:14] [debug] 76490000 - 7655c000 MSCTF.dll
    [14:49:14] [debug] 5b9c0000 - 5ba10000 crashdetect.dll
    [14:49:14] [debug] 66880000 - 668e9000 MSVCP100.dll
    [14:49:14] [debug] 666b0000 - 6676f000 MSVCR100.dll
    [14:49:14] [debug] 54c50000 - 54caa000 streamer.dll
    [14:49:14] [debug] 65030000 - 6509d000 MSVCP140.dll
    [14:49:14] [debug] 65130000 - 65145000 VCRUNTIME140.dll
    [14:49:14] [debug] 667c0000 - 667c4000 api-ms-win-crt-runtime-l1-1-0.dll
    [14:49:14] [debug] 60b30000 - 60c0c000 ucrtbase.DLL
    [14:49:14] [debug] 65cb0000 - 65cb3000 api-ms-win-core-timezone-l1-1-0.dll
    [14:49:14] [debug] 65120000 - 65123000 api-ms-win-core-file-l2-1-0.dll
    [14:49:14] [debug] 65020000 - 65023000 api-ms-win-core-localization-l1-2-0.dll
    [14:49:14] [debug] 70df0000 - 70df3000 api-ms-win-core-synch-l1-2-0.dll
    [14:49:14] [debug] 60b20000 - 60b23000 api-ms-win-core-processthreads-l1-1-1.dll
    [14:49:14] [debug] 60b10000 - 60b13000 api-ms-win-core-file-l1-2-0.dll
    [14:49:14] [debug] 60b00000 - 60b04000 api-ms-win-crt-string-l1-1-0.dll
    [14:49:14] [debug] 60af0000 - 60af3000 api-ms-win-crt-heap-l1-1-0.dll
    [14:49:14] [debug] 60ae0000 - 60ae4000 api-ms-win-crt-stdio-l1-1-0.dll
    [14:49:14] [debug] 60ad0000 - 60ad4000 api-ms-win-crt-convert-l1-1-0.dll
    [14:49:14] [debug] 60ac0000 - 60ac3000 api-ms-win-crt-locale-l1-1-0.dll
    [14:49:14] [debug] 60ab0000 - 60ab5000 api-ms-win-crt-math-l1-1-0.dll
    [14:49:14] [debug] 60aa0000 - 60aa5000 api-ms-win-crt-multibyte-l1-1-0.dll
    [14:49:14] [debug] 60a90000 - 60a93000 api-ms-win-crt-time-l1-1-0.dll
    [14:49:14] [debug] 60a80000 - 60a83000 api-ms-win-crt-filesystem-l1-1-0.dll
    [14:49:14] [debug] 60a70000 - 60a73000 api-ms-win-crt-environment-l1-1-0.dll
    [14:49:14] [debug] 60a60000 - 60a63000 api-ms-win-crt-utility-l1-1-0.dll
    [14:49:14] [debug] 10000000 - 1000d000 sscanf.dll
    [14:49:14] [debug] 504d0000 - 50501000 regex.dll
    [14:49:14] [debug] 70d40000 - 70de3000 MSVCR90.dll
    [14:49:14] [debug] 6b5a0000 - 6b62e000 MSVCP90.dll
    [14:49:14] [debug] 72cc0000 - 72cd0000 sql.dll
    [14:49:14] [debug] 028e0000 - 02d81000 libmysql.dll
    [14:49:14] [debug] 71020000 - 71028000 Secur32.dll
    [14:49:14] [debug] 6b4e0000 - 6b505000 LIBPQ.dll
    [14:49:14] [debug] 50480000 - 504c5000 SSLEAY32.dll
    [14:49:14] [debug] 77ee0000 - 78000000 LIBEAY32.dll
    [14:49:14] [debug] 6a300000 - 6a32b000 libintl.dll
    [14:49:14] [debug] 76100000 - 76145000 WLDAP32.dll
    [14:49:14] [debug] 503f0000 - 50475000 MSVCP110.dll
    [14:49:14] [debug] 0fd20000 - 0fdf6000 MSVCR110.dll
    [14:49:14] [debug] 70a10000 - 70a20000 NLAapi.dll
    [14:49:14] [debug] 70a00000 - 70a10000 napinsp.dll
    [14:49:14] [debug] 709e0000 - 709f2000 pnrpnsp.dll
    [14:49:14] [debug] 70a60000 - 70a9c000 mswsock.dll
    [14:49:14] [debug] 74610000 - 74654000 DNSAPI.dll
    [14:49:14] [debug] 709d0000 - 709d8000 winrnr.dll
    [14:49:14] [debug] 70af0000 - 70af6000 rasadhlp.dll
    [14:49:14] [debug] 00350000 - 00357000 dc_cmd.dll
    [14:49:14] [debug] 5bbc0000 - 5bbe1000 RNM.dll
    [14:49:14] [debug] 709c0000 - 709c5000 wshtcpip.dll
    [14:49:14] [debug] 74350000 - 7436c000 IPHLPAPI.DLL
    [14:49:14] [debug] 74340000 - 74347000 WINNSI.DLL
    [14:49:14] [debug] 70ab0000 - 70ae8000 fwpuclnt.dll

  7. #7
    Аватар для ziggi
    Проверенный

    Статус
    Оффлайн
    Регистрация
    14.05.2015
    Сообщений
    1,181
    Репутация:
    790 ±
    Проблема явно не в вызове cmd_sms, проблема в вызове strfind. Покажи код cmd_sms.

  8. #8
    Аватар для nikvlad
    Пользователь

    Статус
    Оффлайн
    Регистрация
    04.02.2016
    Сообщений
    94
    Репутация:
    2 ±
    Цитата Сообщение от ziggi Посмотреть сообщение
    Проблема явно не в вызове cmd_sms, проблема в вызове strfind. Покажи код cmd_sms.
    PHP код:
    CMD:sms(playeridparams[])
    {
        if(!
    pData[playerid][pPhone]) return SendClientMessage(playerid,CGRAY,"У вас нет телефона, вы можете купить его в 24/7");
        if(!
    pTemp[playerid][pTPhone]) return SendClientMessage(playerid,CGRAY,"Сначала нужно включить телефон");
        if(
    pData[playerid][pMut]) return SendClientMessage(playerid,CGRAY,"У Вас бан чата");
        if(
    pData[playerid][pJail]) return SendClientMessage(playeridCGRAY"Вы в тюрьме.");
        if(
    pData[playerid][pPhoneMoney] < 5) return SendClientMessage(playeridCGRAY"На счету недостаточно средств");
        if(
    sscanf(params"ds[128]",params[0],params[1])) return SendClientMessage(playerid,CGRAY,"Используйте: /sms [номер телефона] [текст]");
        if(
    IsIpFound(params[0]) || CheckString(params[0])) return PlayerGetsChatBan(playeridparams[0]);
        if(
    params[0] < 5) return SendClientMessage(playerid,CGRAY,"Номер введён неверно");
          if(
    IsIpFound(params[1]) || CheckString(params[1]))
        {
            
    PlayerGetsChatBan(playeridparams[1]);
            return 
    false;
        }
        new 
    id = -1;
        if(
    params[0] <= 3)
        {
            if(
    IsPlayerConnected(params[0])) id params[0];
        }
        else
        {
            if(!
    params[0]) return SendClientMessage(playerid,CGRAY,"Игрока с этим номером нет на сервере");
            for(new 
    i;i<MAX_PLAYERS;i++)
            {
                if(!
    IsPlayerConnected(i)) continue;
                if(
    pData[i][pPhone] == params[0]) {id i; break;}
            }
        }
        if(
    id == playerid) return SendClientMessage(playerid,CGRAY,"Вы ввели свой номер");
        if(
    id == -1) return SendClientMessage(playerid,CGRAY,"Игрока с этим номером нет на сервере");
        if(!
    pData[id][pPhone]) return SendClientMessage(playerid,CGRAY,"У игрока нет телефона");
        if(!
    pTemp[id][pTPhone]) return SendClientMessage(playerid,CGRAY,"У игрока выключен телефон");
        if(
    pData[id][pJail]) return SendClientMessage(playeridCGRAY"Игрок в тюрьме.");
        new 
    mes[128];
        
    format(mes,sizeof(mes),"SMS | %s | Получатель: %s (тел. %d)",params[1],pData[id][pNickname],pData[id][pPhone]);
        
    SendClientMessage(playerid,0x7DB2FFFF,mes);
        
    format(mes,sizeof(mes),"SMS | %s | Отправитель: %s (тел. %d)",params[1],pData[playerid][pNickname],pData[playerid][pPhone]);
        
    SendClientMessage(id,0x7DB2FFFF,mes);
        
    SetPlayerChatBubble(playerid"Отправил смс-сообщение"CPINK10.03000);
        
    pData[playerid][pPhoneMoney] -= 5;
        
    UpdatePlayerData(playerid,"phonemoney",pData[playerid][pPhoneMoney]);
        
    PlayerPlaySound(playerid,1054,0.0,0.0,0.0);
        
    PlayerPlaySound(id,1054,0.0,0.0,0.0);
        for(new 
    i=0;i<MAX_PLAYERS;i++)
        {
            if (!
    IsPlayerConnected(i)) continue;
            if(
    BigEarSms[i] != 0)
                {
                
    format(messizeof(mes), "» Входящее к %s[%d]: %s. Отправитель: %s[%d].",pData[id][pNickname],id,params[1],pData[playerid][pNickname],playerid);
                
    SendClientMessage(iCOLOR_YELLOWmes);
                }
        }
        return 
    1;

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

    Пофиксил. Всем спасибо. Можно закрыть.

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

    Статус
    Оффлайн
    Регистрация
    27.01.2014
    Адрес
    Восточный Мордор
    Сообщений
    5,588
    Репутация:
    1984 ±
    Так сообщи же всем в чём была твоя проблема. Вдруг у кого такая же будет и он на твою тему наткнётся, а решения нет
    Связаться со мной в VK можно через личные сообщения этой группы
    Заказы не принимаю

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

    Steve Pavlina

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

    Статус
    Оффлайн
    Регистрация
    04.02.2016
    Сообщений
    94
    Репутация:
    2 ±
    Цитата Сообщение от DeimoS Посмотреть сообщение
    Так сообщи же всем в чём была твоя проблема. Вдруг у кого такая же будет и он на твою тему наткнётся, а решения нет
    У меня, как видите, 2 проверки на наличие спама.

    if(IsIpFound(params[0]) || CheckString(params[0])) return PlayerGetsChatBan(playerid, params[0]);
    if(params[0] < 5) return SendClientMessage(playerid,CGRAY,"Номер введён неверно");
    if(IsIpFound(params[1]) || CheckString(params[1]))
    {
    PlayerGetsChatBan(playerid, params[1]);
    return false;
    }

    Причем, первая неверная, т.к. проверяет params[0], а туда я записываю ID игрока, поэтому и ругался strfind в этой функции.


    Всем спасибо.

    Теперь точно можно закрыть)

 

 

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

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

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

Ваши права

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