help with /lock
#1

the command /lock is only locking the vehicle to the player who type /lock..
it isnt locking for others players -.-

anyone knows how to fix it?

Quote:

if(strcmp(cmd, "/lock", true) == 0)
{
new carid=GetPlayerVehicleID(playerid);
if(GetPlayerState(playerid) == PLAYER_STATE_DRIVER)
{
if(VehicleLocked[carid] == 0)
{
if(PlayerInfo[playerid][pSex] == 1)
{
PlayerActionMessage(playerid,15.0,"trancou as portas do seu veнculo.");
}
else
{
PlayerActionMessage(playerid,15.0,"trancou as portas do seu veнculo.");
}
SendClientMessage(playerid,COLOR_LIGHTYELLOW2,"Veн culo Trancado");
VehicleLocked[carid] = 1;
VehicleLockedPlayer[playerid] = carid;
}
}
else if(GetPlayerState(playerid) == PLAYER_STATE_ONFOOT)
{
new Float,Float:y,Float:z;
if(VehicleLockedPlayer[playerid] != 999)
{
GetVehiclePos(VehicleLockedPlayer[playerid], x, y, z);
}
if(VehicleLocked[VehicleLockedPlayer[playerid]])
{
if(PlayerToPoint(5.0,playerid,x,y,z))
{
if(PlayerInfo[playerid][pSex] == 1)
{
PlayerActionMessage(playerid,15.0,"destrancou as portas do seu veнculo.");
}
else
{
PlayerActionMessage(playerid,15.0,"destrancou as portas do seu veнculo.");
}
SendClientMessage(playerid,COLOR_LIGHTYELLOW2,"Veн culo Destrancado");
VehicleLocked[VehicleLockedPlayer[playerid]] = 0;
VehicleLockedPlayer[playerid] = 999;
}
else
{
SendClientMessage(playerid,COLOR_LIGHTYELLOW2,"Nгo estбs num veнculo!");
}
}
}
return 1;
}

Reply
#2

your code looks needlessly complicated

pawn Код:
if(strcmp(cmd, "/lock", true) == 0)
{
  new carid=GetPlayerVehicleID(playerid);
  if(GetPlayerState(playerid) == PLAYER_STATE_DRIVER)
  {
    if(VehicleLocked[carid] != 0)
     return 1;

    PlayerActionMessage(playerid,15.0,"trancou as portas do seu veнculo.");
     
    SendClientMessage(playerid,COLOR_LIGHTYELLOW2,"Veнculo Trancado");
    VehicleLocked[carid] = 1;
    VehicleLockedPlayer[playerid] = carid;

    // lock for all players
    for (new i = 0; i < MAX_PLAYERS; i++)
      SetVehicleParamsForPlayer(GetPlayerVehicleID(playerid), i, 0, 1);

     return 1;
  }
  else if(GetPlayerState(playerid) == PLAYER_STATE_ONFOOT)
  {
    new Float:x,Float:y,Float:z;
    if(VehicleLockedPlayer[playerid] != 999)
      GetVehiclePos(VehicleLockedPlayer[playerid], x, y, z);
     
    if(VehicleLocked[VehicleLockedPlayer[playerid]] == 0)
      return 1;
     
    if(!PlayerToPoint(5.0,playerid,x,y,z))
      return SendClientMessage(playerid,COLOR_LIGHTYELLOW2,"Nгo estбs num veнculo!");
     
    PlayerActionMessage(playerid,15.0,"destrancou as portas do seu veнculo.");

    // unlock for all players
    for (new i = 0; i < MAX_PLAYERS; i++)
      SetVehicleParamsForPlayer(VehicleLockedPlayer[playerid], i, 0, 0);

    SendClientMessage(playerid,COLOR_LIGHTYELLOW2,"Veнculo Destrancado");
    VehicleLocked[VehicleLockedPlayer[playerid]] = 0;
    VehicleLockedPlayer[playerid] = 999;

    return 1;
  }
  return 1;
}
Reply
#3

Quote:

if(strcmp(cmd, "/lock", true) == 0)
{
new carid=GetPlayerVehicleID(playerid);
if(GetPlayerState(playerid) == PLAYER_STATE_DRIVER)
{
if(VehicleLocked[carid] != 0)
return 1;

PlayerActionMessage(playerid,15.0,"trancou as portas do seu veнculo.");

SendClientMessage(playerid,COLOR_LIGHTYELLOW2,"Veн culo Trancado");
VehicleLocked[carid] = 1;
VehicleLockedPlayer[playerid] = carid;
// lock for all players
for (new i = 0; i < MAX_PLAYERS; i++)
SetVehicleParamsForPlayer(GetPlayerVehicleID(playe rid), i, 0, 1);
}
else if(GetPlayerState(playerid) == PLAYER_STATE_ONFOOT)
{
new Float,Float:y,Float:z;
if(VehicleLockedPlayer[playerid] != 999)
GetVehiclePos(VehicleLockedPlayer[playerid], x, y, z);

if(VehicleLocked[VehicleLockedPlayer[playerid]] == 0)
return 1;

if(!PlayerToPoint(5.0,playerid,x,y,z))
return SendClientMessage(playerid,COLOR_LIGHTYELLOW2,"Nгo estбs num veнculo!");

PlayerActionMessage(playerid,15.0,"destrancou as portas do seu veнculo.");

// unlock for all players
for (new i = 0; i < MAX_PLAYERS; i++)
SetVehicleParamsForPlayer(VehicleLockedPlayer[playerid], i, 0, 0);

SendClientMessage(playerid,COLOR_LIGHTYELLOW2,"Veн culo Destrancado");
VehicleLocked[VehicleLockedPlayer[playerid]] = 0;
VehicleLockedPlayer[playerid] = 999;

return 1;
}
return 1;
}

getting one warning in the line 8555, wich is in bold.. i cant see why the compile is warning...

Quote:

C:\Documents and Settings\Proprietбrio\Ambiente de trabalho\Opadrinho\gamemodes\crp.pwn(8555) : warning 217: loose indentation

Reply
#4

it warns you about indentation, try making it a tab instead of a few spaces, that should solve it - it's nothing serious though
Reply
#5

Match the line to what is above/under it. It's called identitaion..
Reply
#6

Right, thank you very much
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)