Pawno Crash?
#1

I'm adding a Engine system, and when I compile the gamemode it crashes?

The script.
pawn Code:
forward StartEngine(playerid);
forward DamagedEngine(playerid);
OnPlayerStateChange:
public OnPlayerStateChange(playerid,newstate,oldstate)
{
    new vid, Name[24], Msg[128], engine, lights, alarm, doors, bonnet, boot, objective;
    switch (newstate)
    {
        case PLAYER_STATE_DRIVER:
        {
            vid = GetPlayerVehicleID(playerid);
            GetPlayerName(playerid, Name, sizeof(Name));
            if (AVehicleData[vid][Owned] == true)
            {
                if (strcmp(AVehicleData[vid][Owner], Name, false) != 0)
                {
                    RemovePlayerFromVehicle(playerid);
                    GetVehicleParamsEx(vid, engine, lights, alarm, doors, bonnet, boot, objective);
                    SetVehicleParamsEx(vid, 0, 0, alarm, doors, bonnet, boot, objective);
                    format(Msg, 128, TXT_SpeedometerCannotUseVehicle, AVehicleData[vid][Owner]);
                    SendClientMessage(playerid, 0xFFFFFFFF, Msg);
                }
                if (AVehicleData[vid][Clamped] == true)
                {
                    RemovePlayerFromVehicle(playerid);
                    GetVehicleParamsEx(vid, engine, lights, alarm, doors, bonnet, boot, objective);
                    SetVehicleParamsEx(vid, 0, 0, alarm, doors, bonnet, boot, objective);
                    format(Msg, 128, TXT_SpeedometerClampedVehicle);
                    SendClientMessage(playerid, 0xFFFFFFFF, Msg);
                    format(Msg, 128, TXT_SpeedometerClampedVehicle2);
                    SendClientMessage(playerid, 0xFFFFFFFF, Msg);
                }
            }
            if (APlayerData[playerid][PlayerClass] != ClassPolice)
            {
                if (AVehicleData[vid][StaticVehicle] == true)
                {
                    switch (GetVehicleModel(vid))
                    {
                        case VehiclePoliceLSPD, VehiclePoliceSFPD, VehiclePoliceLVPD, VehicleHPV1000, VehiclePoliceRanger:
                        {
                            RemovePlayerFromVehicle(playerid);
                            GetVehicleParamsEx(vid, engine, lights, alarm, doors, bonnet, boot, objective);
                            SetVehicleParamsEx(vid, 0, 0, alarm, doors, bonnet, boot, objective);
                            SendClientMessage(playerid, 0xFFFFFFFF, "{FF0000}Error: {FFFFFF}You can not use a police vehicle!");
                        }
                    }
                }
            }
            if (APlayerData[playerid][PlayerClass] != ClassPilot)
            {
                if (AVehicleData[vid][StaticVehicle] == true)
                {
                    switch (GetVehicleModel(vid))
                    {
                        case VehicleShamal, VehicleNevada, VehicleStuntPlane, VehicleDodo, VehicleMaverick, VehicleCargobob:
                        {
                            // Force the player out of the vehicle
                            RemovePlayerFromVehicle(playerid);
                            // Turn off the lights and engine
                            GetVehicleParamsEx(vid, engine, lights, alarm, doors, bonnet, boot, objective);
                            SetVehicleParamsEx(vid, 0, 0, alarm, doors, bonnet, boot, objective);
                            // Let the player know he cannot use a cop car
                            SendClientMessage(playerid, 0xFFFFFFFF, "{FF0000}Error: {FFFFFF}You can not use a pilot vehicle!");
                        }
                    }
                }
            }
        }
    }
    new vehicleid = GetPlayerVehicleID(playerid);

    if(newstate == PLAYER_STATE_DRIVER)
    {
        if(VehicleEngine[vehicleid] == 0)
        {
            TogglePlayerControllable(playerid, 0);
            SendClientMessage(playerid, 0xFFFFFFFF, "{00FF00}Note: {FFFFFF}Your vehicle is not started!");
            SendClientMessage(playerid, 0xFFFFFFFF, "{00FF00}Press SHIFT to start the engine.");
        }
        else if(VehicleEngine[vehicleid] == 1)
        {
            TogglePlayerControllable(playerid, 1);
            SendClientMessage(playerid, 0xFFFFFFFF, "{00FF00}Engine is currently running..");
        }
    }
    return 1;
}

Look for OnPlayerKeyStateChange:
public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
{
    switch (APlayerData[playerid][PlayerClass])
    {
        case ClassPolice:
        {
            if (((newkeys & KEY_HANDBRAKE) && !(oldkeys & KEY_HANDBRAKE)) && (GetPlayerVehicleID(playerid) == 0))
                Police_FineNearbyPlayers(playerid);
            if (((newkeys & KEY_ACTION) && !(oldkeys & KEY_ACTION)) && (GetPlayerVehicleID(playerid) != 0))
                Police_WarnNearbyPlayers(playerid);
        }
        case ClassAssistance:
        {
            if (((newkeys & KEY_HANDBRAKE) && !(oldkeys & KEY_HANDBRAKE)) && (GetPlayerVehicleID(playerid) == 0))
                Assistance_FixVehicle(playerid);
            if (((newkeys & KEY_ACTION) && !(oldkeys & KEY_ACTION)) && (GetPlayerVehicleID(playerid) != 0))
                Assistance_FixOwnVehicle(playerid);
        }
    }
    if(GetVehicleModel(GetPlayerVehicleID(playerid)) == VehicleTowTruck)
    {
        if(newkeys & KEY_FIRE)
        {
            new closest = GetClosestVehicle(playerid);
            if(VehicleToPlayer(playerid, closest) < 10)
                AttachTrailerToVehicle(closest, GetPlayerVehicleID(playerid));
        }
    }
    new vehicleid = GetPlayerVehicleID(playerid);

    if(IsPlayerInAnyVehicle(playerid))
    {
        if(VehicleEngine[vehicleid] == 0)
        {
            if(newkeys == KEY_JUMP)
            {
                VehicleEngine[vehicleid] = 2;
                SetTimerEx("StartEngine", 3000, 0, "i", playerid);
                SendClientMessage(playerid, 0xFFFFFFFF, "{00FF00}Starting {FFFFFF}engine..");
            }
        }
        if(newkeys == KEY_SECONDARY_ATTACK)
        {
            RemovePlayerFromVehicle(playerid);
            TogglePlayerControllable(playerid, 1);
        }
    }
    return 1;
}
Put dis under of gamemode:
public StartEngine(playerid)
{
    new vehicleid = GetPlayerVehicleID(playerid);
    new Float:health;
    new rand = random(2);

    GetVehicleHealth(vehicleid, health);

    if(IsPlayerInAnyVehicle(playerid))
    {
        if(VehicleEngine[vehicleid] == 2)
        {
            if(health > 300)
            {
                if(rand == 0)
                {
                    VehicleEngine[vehicleid] = 1;
                    TogglePlayerControllable(playerid, 1);
                    SetTimerEx("DamagedEngine", 1000, 1, "i", playerid);
                    SendClientMessage(playerid, 0xFFFFFFFF, "{00FF00}Engine started!");
                }
                if(rand == 1)
                {
                    VehicleEngine[vehicleid] = 0;
                    TogglePlayerControllable(playerid, 0);
                    SendClientMessage(playerid, 0xFFFFFFFF, "{FF0000}Engine failed to start!");
                }
            }
            else
            {
                VehicleEngine[vehicleid] = 0;
                TogglePlayerControllable(playerid, 0);
                SendClientMessage(playerid, 0xFFFFFFFF, "{FF0000}Error: {FFFFFF}The vehicle failed to start because of too much damage!");
            }
        }
    }
    return 1;
}

public DamagedEngine(playerid)
{
    new vehicleid = GetPlayerVehicleID(playerid);
    new Float:health;

    GetVehicleHealth(vehicleid, health);

    if(IsPlayerInAnyVehicle(playerid))
    {
        if(VehicleEngine[vehicleid] == 1)
        {
            if(health < 300)
            {
                VehicleEngine[vehicleid] = 0;
                TogglePlayerControllable(playerid, 0);
                SendClientMessage(playerid, 0xFFFFFFFF, "{FF0000}Vehicle stopped because of too much damage!");
            }
        }
    }
    return 1;
}
Reply


Messages In This Thread
Pawno Crash? - by NathNathii - 08.05.2013, 23:55
Re: Pawno Crash? - by vvhy - 09.05.2013, 02:45
Re: Pawno Crash? - by Skyrise - 09.05.2013, 03:09
Re: Pawno Crash? - by NathNathii - 09.05.2013, 11:37
Re: Pawno Crash? - by MrTinder - 09.05.2013, 14:00
Re: Pawno Crash? - by NathNathii - 09.05.2013, 17:24
Re: Pawno Crash? - by NathNathii - 09.05.2013, 23:12
Re: Pawno Crash? - by NathNathii - 16.05.2013, 13:00
Re: Pawno Crash? - by Threshold - 16.05.2013, 13:11

Forum Jump:


Users browsing this thread: 1 Guest(s)