Szerző Téma: Benzin script (player) hiba  (Megtekintve 664 alkalommal)

Benzin script (player) hiba
« Dátum: 2013. január 11. - 23:30:37 »
0 Show voters
Üdv, az alábbi benzin scripthez hozzáraktam, hogy ha kifogy a benzin (0%) akkor automatikusan kikapcsol a motor.
Felmentem szerverre egyedül, prímán mûködött. Viszont feljött még egy player, neki nem mûködött. Hogy is van ez? :no:
 
forward SubFuel();
public SubFuel()
{
    new i;
    new engine,lights,alarm,doors,bonnet,boot,objective;
    new veh = GetPlayerVehicleID(i);
    while (i != GetMaxPlayers())
    {
        if (IsPlayerInAnyVehicle(i))
{
    new string[128];
    if(Benzin[GetPlayerVehicleID(i)] <0) Benzin[GetPlayerVehicleID(i)] = 0;
    if(IsPlayerInAnyVehicle(i))
    {
        Benzin[GetPlayerVehicleID(i)]-=1;
        format(string, 128, \"Benzin:       %d%%\", Benzin[GetPlayerVehicleID(i)]);
        TextDrawSetString(Fuel, string), TextDrawShowForPlayer(i, Fuel),
        TextDrawShowForPlayer(i, BlackBox),
        TextDrawTextSize(Moving, (354.0 - (Benzin[GetPlayerVehicleID(i)] / DIVBY)), 0.000000),
        TextDrawShowForPlayer(i, Moving);
    }
    if (Benzin[GetPlayerVehicleID(i)] < 1)
    {
        Benzin[GetPlayerVehicleID(i)] = 0;
        GameTextForPlayer(i, \"~n~~n~~n~~n~~n~~n~~n~~r~Kifogyott az üzemanyag!\", 4000, 3);
        GetVehicleParamsEx(veh,engine,lights,alarm,doors,bonnet,boot,objective);
        SetVehicleParamsEx(veh,false,lights,alarm,doors,bonnet,boot,objective);
    }
}
else
{
        TextDrawHideForPlayer(i, Fuel),
        TextDrawHideForPlayer(i, BlackBox),
        TextDrawHideForPlayer(i, Moving);
}
++i;
    }
    return 1;
}

 
Én erre  \"while (i != GetMaxPlayers())\"  tippelnék...
Köszönöm!
« Utoljára szerkesztve: 2013. január 11. - 23:34:10 írta takehun »

Benzin script (player) hiba
« Válasz #1 Dátum: 2013. január 12. - 00:23:29 »
+1 Show voters
for(new i = 0; i < MAX_PLAYERS; i++)
 
forward SubFuel();
public SubFuel()
{
    for(new i = 0; i < MAX_PLAYERS; i++)
    new engine,lights,alarm,doors,bonnet,boot,objective;
    new veh = GetPlayerVehicleID(i);
    {
        if (IsPlayerInAnyVehicle(i))
        {
            new string[128];
            if(Benzin[GetPlayerVehicleID(i)] <0) Benzin[GetPlayerVehicleID(i)] = 0;
            if(IsPlayerInAnyVehicle(i))
            {
                Benzin[GetPlayerVehicleID(i)]-=1;
                format(string, 128, \"Benzin:       %d%%\", Benzin[GetPlayerVehicleID(i)]);
                TextDrawSetString(Fuel, string), TextDrawShowForPlayer(i, Fuel),
                TextDrawShowForPlayer(i, BlackBox),
                TextDrawTextSize(Moving, (354.0 - (Benzin[GetPlayerVehicleID(i)] / DIVBY)), 0.000000),
                TextDrawShowForPlayer(i, Moving);
            }
            if (Benzin[GetPlayerVehicleID(i)] < 1)
            {
                Benzin[GetPlayerVehicleID(i)] = 0;
                GameTextForPlayer(i, \"~n~~n~~n~~n~~n~~n~~n~~r~Kifogyott az üzemanyag!\", 4000, 3);
                GetVehicleParamsEx(veh,engine,lights,alarm,doors,bonnet,boot,objective);
                SetVehicleParamsEx(veh,false,lights,alarm,doors,bonnet,boot,objective);
            }
        }
        else
        {
                TextDrawHideForPlayer(i, Fuel),
                TextDrawHideForPlayer(i, BlackBox),
                TextDrawHideForPlayer(i, Moving);
        }
        ++i;
    }
    return 1;
}

 
Próbáld meg igy.

Benzin script (player) hiba
« Válasz #2 Dátum: 2013. január 12. - 00:36:11 »
0 Show voters
Igen, közbe nekem is eszembe jutott, plusz a \"veh\" -t is fölé írtam nem alá. Fáradok. :D   :facepalm:
Köszi azért! ;)

 

SimplePortal 2.3.7 © 2008-2024, SimplePortal