Beiträge von Jeffry

    for(new i=0; i<sizeof(cInfo); i++)
    {
    if(cInfo[i][id_x]==0)continue;
    if(cInfo[i][besitzer]!=sInfo[playerid][db_id])continue;
    GetVehiclePos(cInfo[i][id_x],cInfo[i][c_x],cInfo[i][c_y],cInfo[i][c_z]);
    GetVehicleZAngle(cInfo[i][id_x],cInfo[i][c_r]);
    new query[256];
    format(query,sizeof(query),"UPDATE autos SET x='%f',y='%f',z='%f',r='%f' WHERE id='%i'",cInfo[i][c_x],cInfo[i][c_y],cInfo[i][c_z],cInfo[i][c_r],cInfo[i][db_id]);
    mysql_function_query(dbhandle,query,false,"","");
    DestroyVehicle(cInfo[i][id_x]);
    cInfo[i][id_x]=0;
    }
    zu
    for(new i=0; i<sizeof(cInfo); i++)
    {
    if(cInfo[i][id_x]==0)continue;
    if(cInfo[i][besitzer]!=sInfo[playerid][db_id])continue;
    DestroyVehicle(cInfo[i][id_x]);
    cInfo[i][id_x]=0;
    }



    Beim /parken Befehl:
    for(new i=0; i<sizeof(cInfo); i++)
    {
    if(cInfo[i][id_x]==0)continue;
    if(cInfo[i][besitzer]!=sInfo[playerid][db_id])continue;
    if(cInfo[i][id_x] != GetPlayerVehicleID(playerid)) continue;
    GetVehiclePos(cInfo[i][id_x],cInfo[i][c_x],cInfo[i][c_y],cInfo[i][c_z]);
    GetVehicleZAngle(cInfo[i][id_x],cInfo[i][c_r]);
    new query[256];
    format(query,sizeof(query),"UPDATE autos SET x='%f',y='%f',z='%f',r='%f' WHERE id='%i'",cInfo[i][c_x],cInfo[i][c_y],cInfo[i][c_z],cInfo[i][c_r],cInfo[i][db_id]);
    mysql_function_query(dbhandle,query,false,"","");
    }

    Das
    SetVehicleParamsEx(vID,engine,lights,alarm,1,bonnet,boot,objective);
    wieder weg machen und bei deiner createPlayerCar Funktion hinschreiben, und zwar unter CreateVehicle:


    SetVehicleParamsEx(cInfo[i][id_x],engine,lights,alarm,1,bonnet,boot,objective);

    Wenn du den Spieler auch reinsetzen würdest, dann könntest du es so machen.


    Nein, kann er nicht, da auf Grund des Lags zwischen Spieler und Server GetPlayerVehicleID nicht direkt nach PutPlayerInVehicle funktioniert.


    Im Befehl muss also das
    if (GetPlayerVehicleID(playerid))
    {
    AddVehicleComponent(carid, 1010); // Nitro
    return 1;
    }
    Zu
    AddVehicleComponent(car, 1010);


    geändert werden. Die Abfrage muss weg!
    Die ist ja auch völlig sinnlos, da er ja zuvor in das Auto gesetzt wird.

    if(isSupp(playerid,1) || isAdmin(playerid,1))
    {
    //Ist Supporter oder Admin
    }
    else return SendClientMessage(playerid,ROT,"Du bist dazu nicht befugt!");


    oder so:
    if(!isSupp(playerid,1) && !isAdmin(playerid,1)) return SendClientMessage(playerid,ROT,"Du bist dazu nicht befugt!");
    //Code der nur von Supportern/Admins ausgeführt werden darf hier drunter.

    Danke. :P


    ocmd:carlock(playerid)
    {
    new engine, lights, alarm, doors, bonnet, boot, objective, vID, bool:privateVeh = false;
    if(!IsPlayerInAnyVehicle(playerid))
    {
    new Float:x, Float:y, Float:z;
    for(new i=0; i<MAX_VEHICLES; i++)
    {
    GetVehiclePos(i, x, y, z);
    if(IsPlayerInRangeOfPoint(playerid, 5.0, x, y, z))
    {
    vID = i;
    break;
    }
    }
    }
    else vID = GetPlayerVehicleID(playerid);
    if(vID == 0) return SendClientMessage(playerid, 0xFF0000FF, "Error: Du bist nicht in einem Auto, oder nahe genug an einem Auto.");
    for(new i=0; i<sizeof(cInfo); i++)
    {
    if(vID == cInfo[i][id_x])
    {
    privateVeh = true;
    break;
    }
    }
    if(!privateVeh) return SendClientMessage(playerid, 0xFF0000FF, "Error: Dieses Auto ist kein privates Auto.");
    GetVehicleParamsEx(vID,engine,lights,alarm,doors,bonnet,boot,objective);
    switch(doors)
    {
    case 1:
    {
    SetVehicleParamsEx(vID,engine,lights,alarm,0,bonnet,boot,objective);
    new string[144];
    format(string, sizeof(string), "{0xFFFFFFAA}Du hast soeben dein Fahrzeug (%s) {0xE10000FF}aufgeschlossen", GetVehicleFriendlyName(vID));
    SendClientMessage(playerid,weiß, string);
    }
    default:
    {
    SetVehicleParamsEx(vID,engine,lights,alarm,1,bonnet,boot,objective);
    new string[144];
    format(string, sizeof(string),"{0xFFFFFFAA}Du hast soeben dein Fahrzeug (%s) {0x00FF00FF}abgeschlossen", GetVehicleFriendlyName(vID));
    SendClientMessage(playerid,weiß, string);
    }
    }
    return 1;
    }

    Meh. 8|


    ocmd:carlock(playerid)
    {
    new engine, lights, alarm, doors, bonnet, boot, objective, vID;
    if(!IsPlayerInAnyVehicle(playerid))
    {
    new Float:x, Float:y, Float:z;
    for(new i=0; i<MAX_VEHICLES; i++)
    {
    GetVehiclePos(i, x, y, z);
    if(IsPlayerInRangeOfPoint(playerid, 5.0, x, y, z))
    {
    vID = i;
    break;
    }
    }
    }
    else vID = GetPlayerVehicleID(playerid);
    if(vID == 0) return SendClientMessage(playerid, 0xFF0000FF, "Error: Du bist nicht in einem Auto, oder nahe genug an einem Auto.");
    GetVehicleParamsEx(vID,engine,lights,alarm,doors,bonnet,boot,objective);
    switch(doors)
    {
    case 1:
    {
    SetVehicleParamsEx(vID,engine,lights,alarm,0,bonnet,boot,objective);
    new string[144];
    format(string, sizeof(string), "{0xFFFFFFAA}Du hast soeben dein Fahrzeug (%s) {0xE10000FF}aufgeschlossen", GetVehicleFriendlyName(vID));
    SendClientMessage(playerid,weiß, string);
    }
    default:
    {
    SetVehicleParamsEx(vID,engine,lights,alarm,1,bonnet,boot,objective);
    new string[144];
    format(string, sizeof(string),"{0xFFFFFFAA}Du hast soeben dein Fahrzeug (%s) {0x00FF00FF}abgeschlossen", GetVehicleFriendlyName(vID));
    SendClientMessage(playerid,weiß, string);
    }
    }
    return 1;
    }

    Einwandfrei, bloß blöd das schon bei 23% das Auto brennt.


    Dann mach es zu
    hp = (hp-250.0) / 7.5;
    Ich glaube ab 250 brennt es. Ansonsten musst das anpassen. Die 7.5 auch. (7.5 = (1000-250)/100))
    Also entsprechend auch da die 250 einfügen, dann kommst du auf den neuen Teiler.