Beiträge von .Kevin


    Hm, aber warum sollte ich eine Extra Funktion dafür schreiben, ich meine bei meinem ATM & Telefonzellensystem funktioniert das auch ohne -.- ... da habe ich das ganze ähnlich aufgebaut:


    ocmd:deltele(playerid,params[])
    {
    new string[64];
    for(new i; i<MAX_TELE; i++)
    {
    if(!IsPlayerInRangeOfPoint(playerid,1.0,Telefonzelle[i][x2],Telefonzelle[i][y2],Telefonzelle[i][z2]))continue;
    SetPVarInt(playerid,"Telezelle",i);
    format(string,sizeof(string),"Telefonzelle ID: %d",i);
    return ShowPlayerDialog(playerid,DIALOG_ETELE,DIALOG_STYLE_LIST,string,"Telefonzelle Löschen","Auswahl","Abbrechen");
    }
    return SendClientMessage(playerid,Weiss,"Du bist an keiner Telefonzelle!");
    }

    //Edit: Vielleicht auch mal definieren,was cID genau sein soll. Soll es die vehicleid sein,die auch von SA:MP Server vergeben wird oder eine einzigartige ID die von der Datenbank vergeben wird.


    Es soll eine Einzigartite ID sein, damit die Datenbank genau weiß wenn ich ein Fahrzeug lösche, welches ich meine.


    Beim Laden gibt er das aus:
    [13:11:42] Car ID 0 geladen
    [13:11:42] Car ID 1 geladen


    Edit: Also liegt hier der Fehler ?


    for(new i; i<MAX_AHC; i++)
    {
    if(!IstAHC(vehicleid))continue;
    format(string,sizeof(string),"ID: {FFAA00}%d{FEFEFE} Kosten: {FFAA00}%d${FEFEFE}",AutoHausCar[i][cID],AutoHausCar[i][Kosten]);
    return ShowPlayerDialog(playerid,DIALOG_EAHC,DIALOG_STYLE_LIST,string,"Fahrzeug Umparken","Auswahl","Abbrechen");
    }

    Schönen guten Abend,


    ich schreibe grade ein Dynamisches Carsystem... Laden/Speichern/Erstellen funktioniert soweit, nur beim auslesen habe ich ein kleines Problemchen.
    Undzwar ist die ID des Fahrzeuges immer 0.. dabei steht in der Datenbank was anderes. Sprich er nimmt immer das Fahrzeug 0 aus der Datenbank...



    ganz oben

    MAX_AHC 75



    new AutoHausCar[MAX_AHC][KaufCar],
    AHC[MAX_AHC];



    Unter OnPlayerStateChange


    for(new i; i<MAX_AHC; i++)
    {
    if(!IstAHC(vehicleid))continue;
    format(string,sizeof(string),"ID: {FFAA00}%d{FEFEFE} Kosten: {FFAA00}%d${FEFEFE}",AutoHausCar[i][cID],AutoHausCar[i][Kosten]);
    return ShowPlayerDialog(playerid,DIALOG_EAHC,DIALOG_STYLE_LIST,string,"Fahrzeug Umparken","Auswahl","Abbrechen");
    }


    wie ich die Fahrzeuge Lade:


    stock LoadAHC()
    {
    new query[128];
    mysql_query("SELECT * FROM `AutoHausCars`");
    mysql_store_result();
    for(new i; i<mysql_num_rows(); i++)
    {
    if(i>=MAX_AHC)break;
    mysql_retrieve_row();
    mysql_fetch_field_row(query,"cID"); AutoHausCar[i][cID] = strval(query);
    mysql_fetch_field_row(query,"Modelid"); AutoHausCar[i][Modelid] = strval(query);
    mysql_fetch_field_row(query,"Kosten"); AutoHausCar[i][Kosten] = strval(query);
    mysql_fetch_field_row(query,"posx"); AutoHausCar[i][posx] = floatstr(query);
    mysql_fetch_field_row(query,"posy"); AutoHausCar[i][posy] = floatstr(query);
    mysql_fetch_field_row(query,"posz"); AutoHausCar[i][posz] = floatstr(query);
    mysql_fetch_field_row(query,"posr"); AutoHausCar[i][posr] = floatstr(query);
    AHC[i] = CreateVehicle(AutoHausCar[i][Modelid],AutoHausCar[i][posx],AutoHausCar[i][posy],AutoHausCar[i][posz],AutoHausCar[i][posr],0,0,5000);
    }
    mysql_free_result();
    }


    stock IstAHC


    stock IstAHC(vehicleid)
    {
    for(new a; a<(sizeof(AHC)); a++)
    {
    if(AHC[a] != vehicleid)continue;
    {
    return 1;
    }
    }
    return 0;
    }


    Wo ist bitte der Fehler ? -.-

    Schmeiß die Abfrage unter dem SetPlayerCheckpoint raus, geht unter OnPlayerEnterCheckpoint und mach es so:


    DisablePlayerCheckpoint(playerid);
    if(IsPlayerInRangeOfPoint(playerid,5.0,2030.0256,1341.8086,10.8203))
    {
    GivePlayerMoney(playerid,1000);
    return 1;
    }

    okay jaa denkfehler is ja in ner schleife^^ aber sonst nur zu empfehlen.
    probiere es mal mit ner spieler/globalen variable also ohne pvar


    Bitte was sollte das bringen, der PVar wird nirgendswo vertauscht, also ist Sinn und Zweck das gleiche ^^
    Ich habe mir das ganze schon lange genug angeschaut und rumversucht aber nichts ..

    Warum machst du das alles in einem Befehl ? .
    Der erste Befehl ist ja Okay, danach geh unter OnPlayerEnterCheckpoint und frage dort die Positionen ab und gut ist 8)


    Edit:


    das hier unter OnPlayerEnterCheckpoint:


    if(IsPlayerInRangeOfPoint(playerid,5.0,1479.7335,-1743.7852,13.5469))
    {
    SendClientMessage(playerid,COLOR_ORANGE2," ");
    SendClientMessage(playerid,COLOR_ORANGE2," ");
    SendClientMessage(playerid,COLOR_ORANGE2," ");
    SendClientMessage(playerid,COLOR_ORANGE2,"|______________________ Stadthalle ______________________|");
    SendClientMessage(playerid,COLOR_WHITE,"Dies ist der Stadthalle von unserem Server,");
    SendClientMessage(playerid,COLOR_WHITE,"dort kannst du dir einen Personalausweiß holen.");
    SetPlayerCheckpoint(playerid,1536.3737,-1674.7948,13.3828,5.0);
    }
    if(IsPlayerInRangeOfPoint(playerid,5.0,1536.3737,-1674.7948,13.3828))
    {
    SendClientMessage(playerid,COLOR_ORANGE2," ");
    SendClientMessage(playerid,COLOR_ORANGE2," ");
    SendClientMessage(playerid,COLOR_ORANGE2," ");
    SendClientMessage(playerid,COLOR_ORANGE2,"|______________________ San Andreas Police Department ______________________|");
    SendClientMessage(playerid,COLOR_WHITE,"Dies ist das SAPD von Los Santos, sie Jagen Verbrecher solltest du mal in eine");
    SendClientMessage(playerid,COLOR_WHITE,"Schlägerrei etc. gelangen kannst du sie mit /call - 911 anrufen.");
    }


    Befehl:


    if(strcmp(cmd, "/tutorial", true) == 0)
    {
    if(GetPVarInt(playerid,"Neu")== 1 && PlayerInfo[playerid][pLevel] > 1)return SendClientMessage(playerid, ROT, "Du bist kein Neuling mehr!");
    if(IsPlayerInRangeOfPoint(playerid,5.0,1174.5861,-1682.6865,22.2344))
    {
    SendClientMessage(playerid,COLOR_ORANGE2," ");
    SendClientMessage(playerid,COLOR_ORANGE2," ");
    SendClientMessage(playerid,COLOR_ORANGE2," ");
    SendClientMessage(playerid,COLOR_ORANGE2,"|______________________ Tutorial anfang ______________________|");
    SendClientMessage(playerid,COLOR_WHITE,"Dies ist der anfang von dem Server dir werden nun Orte gezeigt,");
    SendClientMessage(playerid,COLOR_WHITE,"die dir als Neuling Helfen auf den Server einzufingen.");
    SetPlayerCheckpoint(playerid,1479.7335,-1743.7852,13.5469,5.0);
    }
    }