
if(strcmp(cmd, "/door", true) == 0)
{
if(IsPlayerConnected(playerid))
{
if(PlayerInfo[playerid][pMember] == 1 || PlayerInfo[playerid][pMember] == 2 || PlayerInfo[playerid][pMember] == 3 || PlayerInfo[playerid][pMember] == 7)
{
if(IsPlayerInRangeOfPoint(playerid, 3, 246.3489,72.0905,1003.6406))
{
new name[MAX_PLAYER_NAME];
GetPlayerName(playerid, name, sizeof(name));
if(IsPlayerConnected(playerid))
{
if(IsLSPDDoorOpen == 0)
{
MoveObject(LSPD_Door[ObjectID1], 247.3080, 72.3000, 1003.6700, 1.50);
MoveObject(LSPD_Door[ObjectID2], 245.480, 72.5750, 1003.6650, 1.50);
MoveObject(LSPD_Door[ObjectID3], 247.888, 72.4500, 1003.7000, 1.50);
MoveObject(LSPD_Door[ObjectID4], 244.908, 72.4500, 1003.7000, 1.50);
IsLSPDDoorOpen = 1;
format(string, sizeof(string), "* %s slides their card and opens the door", name);
ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
return 1;
}
if(IsLSPDDoorOpen == 1)
{
MoveObject(LSPD_Door[ObjectID1], 246.4050, 72.3000, 1003.6700, 1.50);
MoveObject(LSPD_Door[ObjectID2], 246.4050, 72.5750, 1003.6650, 1.50);
MoveObject(LSPD_Door[ObjectID3], 246.9850, 72.4500, 1003.7000, 1.50);
MoveObject(LSPD_Door[ObjectID4], 245.8330, 72.4500, 1003.7000, 1.50);
IsLSPDDoorOpen = 0;
format(string, sizeof(string), "* %s slides their card and closes the door", name);
ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
return 1;
}
}
}
if(IsPlayerInRangeOfPoint(playerid, 3, 222.09, 70.57, 1004.00))
{
if(IsPlayerConnected(playerid))
{
if(DoorOpened==0)
{
MoveObject(door, 222.21, 72.27, 1004.00, 3);
chiefdoortimer = SetTimer("ClosePDDoor",3000,0);
DoorOpened = 1;
}
else if(DoorOpened==1)
{
MoveObject(door, 222.09, 70.57, 1004.00, 3);
KillTimer(chiefdoortimer);
DoorOpened = 0;
}
}
}
}
}
}
public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
{
if (PRESSED(KEY_FIRE))
{
public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
{
if (PRESSED(KEY_FIRE))
{
OnPlayerCommandText(playerid, "/door");
}
}
|
TRy ^^
pawn Код:
|
new DoorKeyPressed[MAX_PLAYERS];
public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
{
if (PRESSED(KEY_FIRE))
{
DoorKeyPressed[playerid] = 1;
}
}
|
Just transfer all the code inside the /door command to the OnPlayerKeyStateChange callback.
|
/*line20707*/ public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
{
if (PRESSED(KEY_FIRE))
{
if(IsPlayerConnected(playerid))
{
if(PlayerInfo[playerid][pMember] == 1 || PlayerInfo[playerid][pMember] == 2 || PlayerInfo[playerid][pMember] == 3 || PlayerInfo[playerid][pMember] == 7)
{
if(IsPlayerInRangeOfPoint(playerid, 3, 246.3489,72.0905,1003.6406))
{
new name[MAX_PLAYER_NAME];
GetPlayerName(playerid, name, sizeof(name));
if(IsPlayerConnected(playerid))
{
if(IsLSPDDoorOpen == 0)
{
MoveObject(LSPD_Door[ObjectID1], 247.3080, 72.3000, 1003.6700, 1.50);
MoveObject(LSPD_Door[ObjectID2], 245.480, 72.5750, 1003.6650, 1.50);
MoveObject(LSPD_Door[ObjectID3], 247.888, 72.4500, 1003.7000, 1.50);
MoveObject(LSPD_Door[ObjectID4], 244.908, 72.4500, 1003.7000, 1.50);
IsLSPDDoorOpen = 1;
format(string, sizeof(string), "* %s slides their card and opens the door", name);
ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
return 1;
}
if(IsLSPDDoorOpen == 1)
{
MoveObject(LSPD_Door[ObjectID1], 246.4050, 72.3000, 1003.6700, 1.50);
MoveObject(LSPD_Door[ObjectID2], 246.4050, 72.5750, 1003.6650, 1.50);
MoveObject(LSPD_Door[ObjectID3], 246.9850, 72.4500, 1003.7000, 1.50);
MoveObject(LSPD_Door[ObjectID4], 245.8330, 72.4500, 1003.7000, 1.50);
IsLSPDDoorOpen = 0;
format(string, sizeof(string), "* %s slides their card and closes the door", name);
ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
return 1;
}
}
}
if(IsPlayerInRangeOfPoint(playerid, 3, 222.09, 70.57, 1004.00))
{
if(IsPlayerConnected(playerid))
{
if(DoorOpened==0)
{
MoveObject(door, 222.21, 72.27, 1004.00, 3);
chiefdoortimer = SetTimer("ClosePDDoor",3000,0);
DoorOpened = 1;
}
else if(DoorOpened==1)
{
MoveObject(door, 222.09, 70.57, 1004.00, 3);
KillTimer(chiefdoortimer);
DoorOpened = 0;
}
}
}
}
}
}
}
C:\Users\Dennis\Downloads\Server\gamemodes\matrix2.pwn(20707) : error 029: invalid expression, assumed zero C:\Users\Dennis\Downloads\Server\gamemodes\matrix2.pwn(20707) : error 017: undefined symbol "newkeys" C:\Users\Dennis\Downloads\Server\gamemodes\matrix2.pwn(20709) : error 017: undefined symbol "newkeys"
#define PRESSED(%0) \ (((newkeys & (%0)) == (%0)) && ((oldkeys & (%0)) != (%0)))