23.02.2011, 05:55
Okay, So I'm Ussing SSCANF For My Gates And Commands How Would I use OnPlayerKeyStateChange so it can just open gates?
pawn Code:
if(strcmp(cmdtext, "/gate", true) == 0)
{
if(IsPlayerInRangeOfPoint(playerid,9,1588.3058,-1637.9652,13.4227))
{ //POLICE GATE
if(!IsACop(playerid)) return SendClientMessage(playerid,COLOR_GREY," You are not a Cop / FBI / SASP !");
if(pdgategar==0)
{
pdgategar = 1;
MoveObject(pdgaragegateobj, 1588.965698, -1637.882690, 7.710285, 1.50);
}
else if(pdgategar==1)
{
pdgategar = 0;
MoveObject(pdgaragegateobj, 1588.965698, -1637.882690, 15.260185, 1.50);
}
}
else if(IsPlayerInRangeOfPoint(playerid,9,1544.4913,-1627.2817,13.3828))
{ //POLICE BAR
if(!IsACop(playerid)) return SendClientMessage(playerid,COLOR_GREY," You are not a Cop / FBI / SASP !");
if(pdgatebar==0)
{
pdgatebar = 1;
SetObjectRot( pdbarriergateobj, 0.0000, 360.0000, 90.0000);
SetObjectPos( pdbarriergateobj, 1544.682495, -1630.953003, 13.079567 );
}
else if(pdgatebar==1)
{
pdgatebar = 0;
SetObjectRot( pdbarriergateobj, 0.0000, 90.0000, 90.0000);
SetObjectPos( pdbarriergateobj, 1544.682495, -1630.980000, 13.215000 );
}
}
else if(IsPlayerInRangeOfPoint(playerid,9,96.8500, 1923.4334, 15.3518))
{ //PRISON GATE
if(!IsACop(playerid) && PlayerInfo[playerid][pMember] != 5) return SendClientMessage(playerid,COLOR_GREY," You are not a Cop / FBI / SASP / NG !");
if(Prison_Buttons[GateOpened] == 0)
{
MoveObject(Prison_Buttons[PrisonGate], 96.808670, 1923.5, 16.234968, 1.50);
Prison_Buttons[GateOpened] = 1;
Prison_Buttons[GateTimerID]= SetTimer("PrisonGateCheck", 60000, 0);
}
else
{
MoveObject(Prison_Buttons[PrisonGate], 96.808670, 1920.512817, 16.234968, 1.50);
Prison_Buttons[GateOpened] = 0;
KillTimer(Prison_Buttons[GateTimerID]);
}
}
else if(IsPlayerInRangeOfPoint(playerid, 12.0, -80.057670593262, -352.7497253418, 3.2030787467957))
{ //SECRET SOCIETY GATE
if(!(PlayerInfo[playerid][pMember] == 7)) return SendClientMessage(playerid,COLOR_GREY," You are not a member of the Secret Society !");
if(ssgateopen == 0)
{
ssgateopen = 1;
MoveObject(ssgate, -80.057670593262, -352.7497253418, 7.6630787467957, 1.500000);
}
else
{
ssgateopen = 0;
MoveObject(ssgate, -80.057670593262, -352.7497253418, 3.2030787467957, 1.500000);
}
}
else if(IsPlayerInRangeOfPoint(playerid, 12.0, 1027.46203613, 1183.29357910, 12.45144653))
{ //FBI GATE
if(!(PlayerInfo[playerid][pMember] == 2)) return SendClientMessage(playerid,COLOR_GREY," You are not a member of the FBI !");
if(fbigateopen == 0)
{
fbigateopen = 1;
MoveObject(FBIGate, 1038.17248535, 1183.50256348, 12.45144653, 1.500000);
}
else
{
fbigateopen = 0;
MoveObject(FBIGate, 1027.46203613,1183.29357910,12.45144653, 1.500000);
}
}
else
{
SendClientMessage(playerid, COLOR_GREY, " You are not near a gate !");
return 1;
}
return 1;
}