Como Crear Un Comando de /lock /Unlock Para Autos
#1

Hola a todos quisiera saver como crear comando de /lock y /unlock para autos
Gracias.
Reply
#2

Fбcil;
Definis Vehiculo Cerrado:
pawn Код:
new VehiculoCerrado[MAX_VEHICLES];
Y el codigo...
pawn Код:
if(strcmp(cmdtext, "/lock", true) == 0)
   {
    new
        vehiculo = GetPlayerVehicleID(playerid);

    {
        if(!IsPlayerInAnyVehicle(playerid))
        {
            return SendClientMessage(playerid, ROJO, "No estбs en un vehнculo.");
        }
        if(GetPlayerVehicleSeat(playerid) != 0)
        {
            return SendClientMessage(playerid, ROJO, "Necesitas ser el conductor para cerrar el auto.");
        }
        if(VehiculoCerrado[vehiculo] == 1)
        {
            return SendClientMessage(playerid, ROJO, "Tu auto ya estб cerrado.");
        }

        for(new i = 0;i < MAX_PLAYERS; i++)
        {
            if(i != playerid)
            {
                SetVehicleParamsForPlayer(vehiculo, i, 0, 1);
            }
        }
        VehiculoCerrado[vehiculo] = 1;
}
return 1;
}

if(strcmp(cmdtext, "/unlock", true) == 0)
   {
    new
        vehiculo = GetPlayerVehicleID(playerid);

    {
        if(!IsPlayerInAnyVehicle(playerid))
        {
            return SendClientMessage(playerid, ROJO, "No estбs en un vehнculo.");
        }
        if(GetPlayerVehicleSeat(playerid) != 0)
        {
            return SendClientMessage(playerid, ROJO, "Necesitas ser el conductor para abrir el auto.");
        }
        if(VehiculoCerrado[vehiculo] == 0)
        {
            return SendClientMessage(playerid, ROJO, "Tu auto ya estб abierto.");
        }

        for(new i = 0; i < MAX_PLAYERS; i++)
        {
            if(i != playerid)
            {
          SetVehicleParamsForPlayer(vehiculo, i, 0, 0);
            }
        }
        VehiculoCerrado[vehiculo] = 0;
}
return 1;
}
Y en OnPlayerExitVehicle...
pawn Код:
new
        vehiculo = GetPlayerVehicleID(playerid);

    if(VehiculoCerrado[vehiculo] == 1)
    {
        for(new i = 0; i < MAX_PLAYERS; i++)
        {
            SetVehicleParamsForPlayer(vehiculo, i, 0, 0);
        }

        VehiculoCerrado[vehiculo] = 0;
}
for(new x = 0; x < MAX_PLAYERS; x++) {
        if(GetPlayerState(x) == PLAYER_STATE_SPECTATING && SpecID[x] == playerid) {
            PlayerSpectatePlayer(x, playerid);
        }
    }
    return 1;
}
Saludos

PD IMPORTANTE: Si usas un FS, o en tu GM usas un comando o el sistema de menu de autos, para spawnear autos, no olvides que al borrar el vehiculo debes definir el VehiculoCerrado a 0, de lo contrario bugearas el vehiculo, y al spawnearlo seguira cerrado
pawn Код:
VehiculoCerrado[vehiculo] = 0;
Reply
#3

Quote:
Originally Posted by TiNcH010
Посмотреть сообщение
Y en OnPlayerExitVehicle...
pawn Код:
new
        vehiculo = GetPlayerVehicleID(playerid);

    if(VehiculoCerrado[vehiculo] == 1)
    {
        for(new i = 0; i < MAX_PLAYERS; i++)
        {
            SetVehicleParamsForPlayer(vehiculo, i, 0, 0);
        }

        VehiculoCerrado[vehiculo] = 0;
}
for(new x = 0; x < MAX_PLAYERS; x++) {
        if(GetPlayerState(x) == PLAYER_STATE_SPECTATING && SpecID[x] == playerid) {
            PlayerSpectatePlayer(x, playerid);
        }
    }
    return 1;
}
pawn Код:
VehiculoCerrado[vehiculo] = 0;
Disculpa man pero mira
pawn Код:
C:\Documents and Settings\BlackCrystal™\Escritorio\CNR.pwn(7575) : error 017: undefined symbol "SpecID"
C:\Documents and Settings\BlackCrystal™\Escritorio\CNR.pwn(7575) : warning 215: expression has no effect
C:\Documents and Settings\BlackCrystal™\Escritorio\CNR.pwn(7575) : error 001: expected token: ";", but found "]"
C:\Documents and Settings\BlackCrystal™\Escritorio\CNR.pwn(7575) : error 029: invalid expression, assumed zero
C:\Documents and Settings\BlackCrystal™\Escritorio\CNR.pwn(7575) : fatal error 107: too many error messages on one line

Compilation aborted.Pawn compiler 3.2.3664          Copyright (c) 1997-2006, ITB CompuPhase


4 Errors.
Reply
#4

Uh disculpa!
Definilo
pawn Код:
new SpecID[MAX_PLAYERS];
Reply
#5

[Quote = TiNcH010; 1219325] Uh Disculpa!
Definilo
[Peуn] nueva SpecID [MAX_PLAYERS] [/ peуn] [/ quote]

xD?
Код:
C:\Documents and Settings\BlackCrystal™\Escritorio\CNR.pwn(7582) : error 010: invalid function or declaration
C:\Documents and Settings\BlackCrystal™\Escritorio\CNR.pwn(7583) : error 010: invalid function or declaration
Pawn compiler 3.2.3664              Copyright © 1997-2006, ITB CompuPhase


2 Errors.
Reply
#6

Si nos pasaras las lнneas todo serнa mбs fбcil -_-
Reply
#7

Quote:
Originally Posted by Lunnatiicz
Посмотреть сообщение
Si nos pasaras las lнneas todo serнa mбs fбcil -_-
Man mira te dire que GM uso uso el de
Runix Cops and Robbers
No te Puedo pasar las lineas Ya que le agregue mis propias funsiones.
o diganme que lineas nesesitan
Reply
#8

Hace una cosa, me acabo de fijar y eso es parte de otro scrip creo jaja
solo quita eso y cerra con return, probalo, funciona perfecto por que lo acabo de testear y me anda barbaro
Reply
#9

No te pedimos el gm, te pedimos las lineas en las que te da el error, es como si dijera que te faltan 50 llaves en algo que no se ni que pasa.

pawn Код:
if(strcmp(cmdtext, "/lock", true) == 0)
   {
    new
        vehiculo = GetPlayerVehicleID(playerid);

    {
        if(!IsPlayerInAnyVehicle(playerid))
        {
            return SendClientMessage(playerid, ROJO, "No estбs en un vehнculo.");
        }
        if(GetPlayerVehicleSeat(playerid) != 0)
        {
            return SendClientMessage(playerid, ROJO, "Necesitas ser el conductor para cerrar el auto.");
        }
        if(VehiculoCerrado[vehiculo] == 1)
        {
            return SendClientMessage(playerid, ROJO, "Tu auto ya estб cerrado.");
        }

        for(new i = 0;i < MAX_PLAYERS; i++)
        {
            if(i != playerid)
            {
                SetVehicleParamsForPlayer(vehiculo, i, 0, 1);
            }
        }
        VehiculoCerrado[vehiculo] = 1;
}
}
return 1;
}
Reply
#10

Quote:
Originally Posted by Lunnatiicz
Посмотреть сообщение
No te pedimos el gm, te pedimos las lineas en las que te da el error, es como si dijera que te faltan 50 llaves en algo que no se ni que pasa.

pawn Код:
if(strcmp(cmdtext, "/lock", true) == 0)
   {
    new
        vehiculo = GetPlayerVehicleID(playerid);

    {
        if(!IsPlayerInAnyVehicle(playerid))
        {
            return SendClientMessage(playerid, ROJO, "No estбs en un vehнculo.");
        }
        if(GetPlayerVehicleSeat(playerid) != 0)
        {
            return SendClientMessage(playerid, ROJO, "Necesitas ser el conductor para cerrar el auto.");
        }
        if(VehiculoCerrado[vehiculo] == 1)
        {
            return SendClientMessage(playerid, ROJO, "Tu auto ya estб cerrado.");
        }

        for(new i = 0;i < MAX_PLAYERS; i++)
        {
            if(i != playerid)
            {
                SetVehicleParamsForPlayer(vehiculo, i, 0, 1);
            }
        }
        VehiculoCerrado[vehiculo] = 1;
}
}
return 1;
}
nono, el dice que le da error en OnPlayerVehicleExit me parece xD
Quita esto:
pawn Код:
for(new x = 0; x < MAX_PLAYERS; x++) {
        if(GetPlayerState(x) == PLAYER_STATE_SPECTATING && SpecID[x] == playerid) {
            PlayerSpectatePlayer(x, playerid);
        }
    }
Reply


Forum Jump:


Users browsing this thread: 2 Guest(s)