Вопросы по PAWN скриптингу

iAmerican

Известный
Друг
615
257
Не понимаю что надо добавить для этого CMD.
Вот ерроры .
Код:
D:\server\gamemodes\1.pwn(821) : error 017: undefined symbol "cmd_lsopen1"
D:\server\gamemodes\1.pwn(825) : error 030: compound statement not closed at the end of file (started at line 816)
Pawn compiler 3.2.3664                  Copyright (c) 1997-2006, ITB CompuPhase
 
 
2 Errors.
Код:
public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
if (newkeys == 2)
        {
                if(Pi[playerid][Adm] < 1) return send(playerid, grey, noadm);
                {
                if(IsPlayerInRangeOfPoint(playerid,15.0,1588.065,-1637.963,15.596))
                {
                            SetPVarInt(playerid,"antifloodcmd",0);
                            cmd_lsopen1(playerid, "");
                            return 1;
                        }
                }
 

kaZax

samp.work
Автор темы
Проверенный
150
23
Не понимаю что надо добавить для этого CMD.
Вот ерроры .
Код:
D:\server\gamemodes\1.pwn(821) : error 017: undefined symbol "cmd_lsopen1"
D:\server\gamemodes\1.pwn(825) : error 030: compound statement not closed at the end of file (started at line 816)
Pawn compiler 3.2.3664                  Copyright (c) 1997-2006, ITB CompuPhase
 
 
2 Errors.
Код:
public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
if (newkeys == 2)
        {
                if(Pi[playerid][Adm] < 1) return send(playerid, grey, noadm);
                {
                if(IsPlayerInRangeOfPoint(playerid,15.0,1588.065,-1637.963,15.596))
                {
                            SetPVarInt(playerid,"antifloodcmd",0);
                            cmd_lsopen1(playerid, "");
                            return 1;
                        }
                }

Вот решение:
PHP:
public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
{
    if (newkeys == 2)
    {
        if(Pi[playerid][Adm] < 1) return send(playerid, grey, noadm);
        {
            if(IsPlayerInRangeOfPoint(playerid,15.0,1588.065,-1637.963,15.596))
            {
                SetPVarInt(playerid,"antifloodcmd",0);
                CallLocalFunction( "OnPlayerCommandText", "ds", playerid, "lsopen1" );
                return 1;
            }
        }
    }
    return 1;
}
Надеюсь я правильно понял тебя.
 

iAmerican

Известный
Друг
615
257
Вот решение:
PHP:
public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
{
    if (newkeys == 2)
    {
        if(Pi[playerid][Adm] < 1) return send(playerid, grey, noadm);
        {
            if(IsPlayerInRangeOfPoint(playerid,15.0,1588.065,-1637.963,15.596))
            {
                SetPVarInt(playerid,"antifloodcmd",0);
                CallLocalFunction( "OnPlayerCommandText", "ds", playerid, "lsopen1" );
                return 1;
            }
        }
    }
    return 1;
}
Надеюсь я правильно понял тебя.

Спасибо , попробую :)
Эм вообщем попробовал , вообще не реагирует , у меня есть ворота , вроде работающие :D они работают по команде , так я хотел бы сделать что бы они работали по клавише ALT.
Вот код .
Ко всем new:
PHP:
new Vorota;
В public OnGameModeInit() ;
PHP:
Vorota = CreateObject(980,1588.039,-1638.009,15.184,0.0,0.0,0.0);
CMD:
PHP:
CMD:lsopen1(playerid, params[])
{
if(Pi[playerid][Adm] < 1) return send(playerid, grey, noadm);
  {
MoveObject(Vorota, 1588.065,-1637.963,9.596, 3);
SetTimer("COPVorot", 7000, 0);
PlayerPlaySound(playerid, 6002, 0.0, 0.0, 0.0);
}
return 1;
}
Ну и forward
PHP:
forward COPVorot();
public COPVorot()
{
MoveObject(Vorota, 1588.039,-1638.009,15.184, 3);
return 1;
}
Вроде не че не забыл , и вот уже к этому надо добавить что бы открывались по клавише ))
Вообще если честно мне она не очень нравится, открывается нормально , закрывается стремно как - то туда сюда ездиет , подкинь если можешь нормальную системку)


Еще вопросик , у меня команды на ZCMD и сервер на mysql .
Я бы хотел , когда я например меняю скин в игре , себе или еще кому либо , то в БД это тоже изменялось .
Так же желательно и для /makeadmin .
Вот моя команда /setskin
PHP:
CMD:setskin(playerid, params[])
{
    if(Pi[playerid][Adm] < 4) return send(playerid, grey, noadm);
    if(!IsPlayerConnected(playerid)) return true;
    if(sscanf(params,"ui", params[0],params[1])) return send(playerid, bluea, "Êîìàíäà: /setskin [id èãðîêà | íèê] [id ñêèíà]");
    if(!IsPlayerConnected(params[0])) return send(playerid, grey, "Èãðîê íå íàéäåí!");
    if(params[1] > 299) return send(playerid, grey, "Íå áîëüøå ÷åì 299.");
    SetPlayerSkin(params[0],params[1]);
    return true;
}
 

kaZax

samp.work
Автор темы
Проверенный
150
23
Я забыл поставить "/". Измени на:
PHP:
CallLocalFunction( "OnPlayerCommandText", "ds", playerid, "/lsopen1" );
 

Frixen

Известный
131
8
Как сделать что бы, после смерти оружие сохранялось, и при спавне загружалось
 

Frixen

Известный
131
8
Если не затруднит можешь выложить код? А то в инете перепробовал кучу вариантов.... и ни один не работает.