public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
{
if (IsPlayerInAnyVehicle(playerid) && GetPlayerState(playerid) == PLAYER_STATE_DRIVER) {
if(newkeys == KEY_SUBMISSION) {
if(IsPlayerInAnyVehicle(playerid)) { {
RepairVehicle(GetPlayerVehicleID(playerid));
}
}
}
}
return 1;
}
#define KeyPressed(%0) (newkeys & %0) && !(oldkeys & %0)
public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
{
if (GetPlayerState(playerid) == PLAYER_STATE_DRIVER)
{
if (KeyPressed(KEY_SUBMISSION)) RepairVehicle(GetPlayerVehicleID(playerid));
}
return 1;
}
|
Kostas: that's not optimised at all AND it will NOT work correctly.
1) If you test that the player is a driver, then why checking if he's in a vehicle? 2) Use one if inside another if instead of using "&&" 3) newkays==KEY_SUBMISSION will work very bad Here's something that works faster, that is easier to read and that works better: Код:
#define KeyPressed(%0) (newkeys & %0) && !(oldkeys & %0)
public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
{
if (GetPlayerState(playerid) == PLAYER_STATE_DRIVER)
{
if (KeyPressed(KEY_SUBMISSION)) RepairVehicle(GetPlayerVehicleID(playerid));
}
return 1;
}
|
public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
{
if (GetPlayerState(playerid) == PLAYER_STATE_DRIVER){
if (newkeys & KEY_SUBMISSION) RepairVehicle(GetPlayerVehicleID(playerid));
}
return 1;
}
|
I'd just do
pawn Код:
|
C:\Documents and Settings\orion\Фб ЭггсбцЬ мпх\AK Server Gamemode\filterscripts\Sp.pwn(280) : error 017: undefined symbol "IsNosVehicle"
C:\Documents and Settings\orion\Фб ЭггсбцЬ мпх\AK Server Gamemode\filterscripts\Sp.pwn(317) : warning 225: unreachable code
C:\Documents and Settings\orion\Фб ЭггсбцЬ мпх\AK Server Gamemode\filterscripts\Sp.pwn(317) : error 017: undefined symbol "IsNosVehicle"
C:\Documents and Settings\orion\Фб ЭггсбцЬ мпх\AK Server Gamemode\filterscripts\Sp.pwn(330) : error 017: undefined symbol "vehicleid"
C:\Documents and Settings\orion\Фб ЭггсбцЬ мпх\AK Server Gamemode\filterscripts\Sp.pwn(338) : error 030: compound statement not closed at the end of file (started at line 265)
Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase
4 Errors.
Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase