09.06.2012, 08:58
(
Последний раз редактировалось mickos; 09.06.2012 в 10:37.
)
topic can delete
TogglePlayerControllable will freeze the player and stop his vehicle (if he's in one). Seems like you want the whole code, don't you?
Edit: You also may declare a timer (like 500 ms) after you freeze the player (to stop his vehicle) to unfreeze him, if you want only the vehicle to be stopped. Second-Edit: or just use https://sampwiki.blast.hk/wiki/SetVehicleVelocity |
#define FILTERSCRIPT
#include <a_samp>
#define PRESSED(%0) \
(((newkeys & (%0)) == (%0)) && ((oldkeys & (%0)) != (%0)))
#if defined FILTERSCRIPT
public OnFilterScriptInit()
{
print("\n--------------------------------------");
print(" Stop vehicle by Example 0.3");
print("--------------------------------------\n");
return 1;
}
public OnFilterScriptExit()
{
return 1;
}
public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
{
if(PRESSED(KEY_CROUCH))
{
if(!IsPlayerInAnyVehicle(playerid)) return 1;
new
Float:X,
Float:Y,
Float:Z,
VehicleID = GetPlayerVehicleID(playerid);
GetVehicleVelocity(VehicleID, X, Y, Z);
SetVehicleVelocity(VehicleID, -X, -Y, -Z);
}
return 1;
}
#endif
public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
{
if(PRESSED(KEY_CROUCH))
{
if(IsPlayerInAnyVehicle(playerid)) // checks if playrid in a vehicle
{
new
Float:x,
Float:y,
Float:z,
playerveh = GetPlayerVehicleID(playerid); // gets the id of the player's vehicle and store it into playerveh so we can use it in Get/SetVehiclePos
GetVehiclePos(playerveh, x, y, z);
SetVehiclePos(playerveh, x, y, z + 2.0);
}
}
return 1;
}
pawn Код:
Edit: No, the vehicle won't go forward actually it will stop (That's tested). |