Problem with OnPlayerKeyStateChange [+REP]
#1

Hello, How to merge this two codes?

pawn Код:
public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
{
    if (IsPlayerInAnyVehicle(playerid) && GetPlayerState(playerid) == PLAYER_STATE_DRIVER)
    {
    if(newkeys & KEY_FIRE)
    {
    if(EnableBoast[playerid] == 1)
    {
    new Float:vx,Float:vy,Float:vz;
    GetVehicleVelocity(GetPlayerVehicleID(playerid),vx,vy,vz);
    SetVehicleVelocity(GetPlayerVehicleID(playerid), vx * 1.8, vy *1.8, vz * 1.8);
    }
    }
    }
    if (IsPlayerInAnyVehicle(playerid) && GetPlayerState(playerid) == PLAYER_STATE_DRIVER)
    {
    if (newkeys & KEY_CROUCH)
    {

    if(EnableBoast[playerid] == 1)
    {
    new Float:x, Float:y, Float:z;
    GetVehicleVelocity(GetPlayerVehicleID(playerid),x,y,z);
    SetVehicleVelocity(GetPlayerVehicleID(playerid),x,y,z+0.3);
    }
    }
    }
pawn Код:
public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
{  
if(PInfo[playerid][grove] != 1) return SendClientMessage(playerid, RAUDONA,"[Serveris]{4FB34D} I рi nama gali ieiti tik Grove Street Nariai");
    if( newkeys == KEY_SECONDARY_ATTACK )
    {
    if( IsPlayerInRangeOfPoint( playerid, 1.0, 2495.0188,-1691.1383,14.7656 ) )
    {
    SetPlayerPos( playerid, 2496.049804,-1695.238159,1014.742187);
    SetPlayerInterior( playerid, 3);
    return 1;
    }
    }
    if( newkeys == KEY_SECONDARY_ATTACK )
    {
    if( IsPlayerInRangeOfPoint( playerid, 1.0, 2496.049804,-1695.238159,1014.742187) )
    {
    SetPlayerPos( playerid, 2495.0188,-1691.1383,14.7656);
    SetPlayerInterior( playerid, 0);
    }
    }
    return 1;
    }
Reply
#2

Try:
pawn Код:
public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
{
    if (IsPlayerInAnyVehicle(playerid) && GetPlayerState(playerid) == PLAYER_STATE_DRIVER)
    {
    if(newkeys & KEY_FIRE)
    {
    if(EnableBoast[playerid] == 1)
    {
    new Float:vx,Float:vy,Float:vz;
    GetVehicleVelocity(GetPlayerVehicleID(playerid),vx,vy,vz);
    SetVehicleVelocity(GetPlayerVehicleID(playerid), vx * 1.8, vy *1.8, vz * 1.8);
    }
    }
    }
    if (IsPlayerInAnyVehicle(playerid) && GetPlayerState(playerid) == PLAYER_STATE_DRIVER)
    {
    if (newkeys & KEY_CROUCH)
    {

    if(EnableBoast[playerid] == 1)
    {
    new Float:x, Float:y, Float:z;
    GetVehicleVelocity(GetPlayerVehicleID(playerid),x,y,z);
    SetVehicleVelocity(GetPlayerVehicleID(playerid),x,y,z+0.3);
    }
    }
    }
if(PInfo[playerid][grove] != 1) return SendClientMessage(playerid, RAUDONA,"[Serveris]{4FB34D} I рi nama gali ieiti tik Grove Street Nariai");
    if( newkeys == KEY_SECONDARY_ATTACK )
    {
    if( IsPlayerInRangeOfPoint( playerid, 1.0, 2495.0188,-1691.1383,14.7656 ) )
    {
    SetPlayerPos( playerid, 2496.049804,-1695.238159,1014.742187);
    SetPlayerInterior( playerid, 3);
    }
    else if( IsPlayerInRangeOfPoint( playerid, 1.0, 2496.049804,-1695.238159,1014.742187) )
    {
    SetPlayerPos( playerid, 2495.0188,-1691.1383,14.7656);
    SetPlayerInterior( playerid, 0);
    }
    }
    return 1;
    }
Reply
#3

Quote:
Originally Posted by Matess
Посмотреть сообщение
Try:
pawn Код:
public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
{
    if (IsPlayerInAnyVehicle(playerid) && GetPlayerState(playerid) == PLAYER_STATE_DRIVER)
    {
    if(newkeys & KEY_FIRE)
    {
    if(EnableBoast[playerid] == 1)
    {
    new Float:vx,Float:vy,Float:vz;
    GetVehicleVelocity(GetPlayerVehicleID(playerid),vx,vy,vz);
    SetVehicleVelocity(GetPlayerVehicleID(playerid), vx * 1.8, vy *1.8, vz * 1.8);
    }
    }
    }
    if (IsPlayerInAnyVehicle(playerid) && GetPlayerState(playerid) == PLAYER_STATE_DRIVER)
    {
    if (newkeys & KEY_CROUCH)
    {

    if(EnableBoast[playerid] == 1)
    {
    new Float:x, Float:y, Float:z;
    GetVehicleVelocity(GetPlayerVehicleID(playerid),x,y,z);
    SetVehicleVelocity(GetPlayerVehicleID(playerid),x,y,z+0.3);
    }
    }
    }
if(PInfo[playerid][grove] != 1) return SendClientMessage(playerid, RAUDONA,"[Serveris]{4FB34D} I рi nama gali ieiti tik Grove Street Nariai");
    if( newkeys == KEY_SECONDARY_ATTACK )
    {
    if( IsPlayerInRangeOfPoint( playerid, 1.0, 2495.0188,-1691.1383,14.7656 ) )
    {
    SetPlayerPos( playerid, 2496.049804,-1695.238159,1014.742187);
    SetPlayerInterior( playerid, 3);
    }
    else if( IsPlayerInRangeOfPoint( playerid, 1.0, 2496.049804,-1695.238159,1014.742187) )
    {
    SetPlayerPos( playerid, 2495.0188,-1691.1383,14.7656);
    SetPlayerInterior( playerid, 0);
    }
    }
    return 1;
    }
I get this:

C:\Users\Tadas\Desktop\Serveris\gamemodes\mano.pwn (615) : error 004: function "SData" is not implemented
C:\Users\Tadas\Desktop\Serveris\gamemodes\mano.pwn (66 : error 004: function "SData" is not implemented
C:\Users\Tadas\Desktop\Serveris\gamemodes\mano.pwn (767) : error 004: function "SData" is not implemented
C:\Users\Tadas\Desktop\Serveris\gamemodes\mano.pwn (807) : error 029: invalid expression, assumed zero
C:\Users\Tadas\Desktop\Serveris\gamemodes\mano.pwn (80 : error 001: expected token: ";", but found "{"
C:\Users\Tadas\Desktop\Serveris\gamemodes\mano.pwn (834) : warning 217: loose indentation
C:\Users\Tadas\Desktop\Serveris\gamemodes\mano.pwn (835) : warning 217: loose indentation
C:\Users\Tadas\Desktop\Serveris\gamemodes\mano.pwn (850) : warning 225: unreachable code
C:\Users\Tadas\Desktop\Serveris\gamemodes\mano.pwn (850) : error 029: invalid expression, assumed zero
C:\Users\Tadas\Desktop\Serveris\gamemodes\mano.pwn (850) : error 004: function "OnRconLoginAttempt" is not implemented
C:\Users\Tadas\Desktop\Serveris\gamemodes\mano.pwn (855) : warning 225: unreachable code
C:\Users\Tadas\Desktop\Serveris\gamemodes\mano.pwn (855) : error 029: invalid expression, assumed zero
C:\Users\Tadas\Desktop\Serveris\gamemodes\mano.pwn (855) : error 004: function "OnPlayerUpdate" is not implemented
C:\Users\Tadas\Desktop\Serveris\gamemodes\mano.pwn (859) : warning 225: unreachable code
C:\Users\Tadas\Desktop\Serveris\gamemodes\mano.pwn (859) : error 029: invalid expression, assumed zero
C:\Users\Tadas\Desktop\Serveris\gamemodes\mano.pwn (859) : error 004: function "OnPlayerStreamIn" is not implemented
C:\Users\Tadas\Desktop\Serveris\gamemodes\mano.pwn (864) : warning 225: unreachable code
C:\Users\Tadas\Desktop\Serveris\gamemodes\mano.pwn (864) : error 029: invalid expression, assumed zero
C:\Users\Tadas\Desktop\Serveris\gamemodes\mano.pwn (864) : error 004: function "OnPlayerStreamOut" is not implemented
C:\Users\Tadas\Desktop\Serveris\gamemodes\mano.pwn (869) : warning 225: unreachable code
C:\Users\Tadas\Desktop\Serveris\gamemodes\mano.pwn (869) : error 029: invalid expression, assumed zero
C:\Users\Tadas\Desktop\Serveris\gamemodes\mano.pwn (869) : error 004: function "OnVehicleStreamIn" is not implemented
C:\Users\Tadas\Desktop\Serveris\gamemodes\mano.pwn (874) : warning 225: unreachable code
C:\Users\Tadas\Desktop\Serveris\gamemodes\mano.pwn (874) : error 029: invalid expression, assumed zero
C:\Users\Tadas\Desktop\Serveris\gamemodes\mano.pwn (874) : error 004: function "OnVehicleStreamOut" is not implemented
C:\Users\Tadas\Desktop\Serveris\gamemodes\mano.pwn (879) : warning 225: unreachable code
C:\Users\Tadas\Desktop\Serveris\gamemodes\mano.pwn (879) : error 029: invalid expression, assumed zero
C:\Users\Tadas\Desktop\Serveris\gamemodes\mano.pwn (879) : error 004: function "OnDialogResponse" is not implemented
C:\Users\Tadas\Desktop\Serveris\gamemodes\mano.pwn (882) : error 017: undefined symbol "dialogid"
C:\Users\Tadas\Desktop\Serveris\gamemodes\mano.pwn (884) : error 017: undefined symbol "response"
C:\Users\Tadas\Desktop\Serveris\gamemodes\mano.pwn (886) : error 017: undefined symbol "listitem"
C:\Users\Tadas\Desktop\Serveris\gamemodes\mano.pwn (914) : error 017: undefined symbol "dialogid"
C:\Users\Tadas\Desktop\Serveris\gamemodes\mano.pwn (916) : error 017: undefined symbol "response"
C:\Users\Tadas\Desktop\Serveris\gamemodes\mano.pwn (922) : error 017: undefined symbol "inputtext"
C:\Users\Tadas\Desktop\Serveris\gamemodes\mano.pwn (926) : error 017: undefined symbol "response"
Reply
#4

Maybe you're missing a bracket. That's one of the disadvantages of using poor indentation.
Reply
#5

I think that brackets are fine with "mine" code. And PrivatioBoni is right that you should use TAB...
Reply
#6

pawn Код:
public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
{
    if (IsPlayerInAnyVehicle(playerid) && GetPlayerState(playerid) == PLAYER_STATE_DRIVER)
    {
        if(newkeys & KEY_FIRE)
        {
            if(EnableBoast[playerid] == 1)
            {
                new Float:vx,Float:vy,Float:vz;
                GetVehicleVelocity(GetPlayerVehicleID(playerid),vx,vy,vz);
                SetVehicleVelocity(GetPlayerVehicleID(playerid), vx * 1.8, vy *1.8, vz * 1.8);
            }
        }
        if (newkeys & KEY_CROUCH)
        {
            if(EnableBoast[playerid] == 1)
            {
                new Float:x, Float:y, Float:z;
                GetVehicleVelocity(GetPlayerVehicleID(playerid),x,y,z);
                SetVehicleVelocity(GetPlayerVehicleID(playerid),x,y,z+0.3);
            }
        }
    }
    if( newkeys & KEY_SECONDARY_ATTACK )
    {
        if(PInfo[playerid][grove] != 1) return SendClientMessage(playerid, RAUDONA,"[Serveris]{4FB34D} I рi nama gali ieiti tik Grove Street Nariai");

        if( IsPlayerInRangeOfPoint( playerid, 1.0, 2495.0188,-1691.1383,14.7656 ) )
        {
            SetPlayerPos( playerid, 2496.049804,-1695.238159,1014.742187);
            SetPlayerInterior( playerid, 3);
        }
        else if( IsPlayerInRangeOfPoint( playerid, 1.0, 2496.049804,-1695.238159,1014.742187) )
        {
            SetPlayerPos( playerid, 2495.0188,-1691.1383,14.7656);
            SetPlayerInterior( playerid, 0);
        }
    }
    return 1;
}
Reply
#7

I am right now learning about OnPlayerKeyStateChange actually.. For me it seems like Macronix code should work. Anyways, good luck!
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)