Beiträge von Hofgreith

    Hallo, ich hab für mich so ein Markierungssystem gescriptet, wo die Positionen in einer Datei abgespeichert werden sollen, um irgendwann später wieder ausgelesen zu werden und sich dorthinzu porten.


    Hier, die Auszüge aus dem Script
    enum UserInfo
    {
    Float:MarkPosX_1,
    Float:MarkPosY_1,
    Float:MarkPosZ_1,
    MarkInt_1,
    Float:MarkPosX_2,
    Float:MarkPosY_2,
    Float:MarkPosZ_2,
    MarkInt_2,
    Float:MarkPosX_3,
    Float:MarkPosY_3,
    Float:MarkPosZ_3,
    MarkInt_3,
    };
    new User[MAX_PLAYERS][UserInfo];

    das hier sind die enums, auf die dann die Positionen und das Interior draufgespeichert werden solln




    else if(zeile == 66) { User[playerid][MarkPosX_1] = strval(string); } // Markierung 1 PosX
    else if(zeile == 67) { User[playerid][MarkPosY_1] = strval(string); } // Markierung 1 PosY
    else if(zeile == 68) { User[playerid][MarkPosZ_1] = strval(string); } // Markierung 1 PosZ
    else if(zeile == 69) { User[playerid][MarkInt_1] = strval(string); } // Markierung 1 Interior
    else if(zeile == 70) { User[playerid][MarkPosX_2] = strval(string); } // Markierung 2 PosX
    else if(zeile == 71) { User[playerid][MarkPosY_2] = strval(string); } // Markierung 2 PosY
    else if(zeile == 72) { User[playerid][MarkPosZ_2] = strval(string); } // Markierung 2 PosZ
    else if(zeile == 73) { User[playerid][MarkInt_2] = strval(string); } // Markierung 2 Interior
    else if(zeile == 74) { User[playerid][MarkPosX_3] = strval(string); } // Markierung 3 PosX
    else if(zeile == 75) { User[playerid][MarkPosY_3] = strval(string); } // Markierung 3 PosY
    else if(zeile == 76) { User[playerid][MarkPosZ_3] = strval(string); } // Markierung 3 PosZ
    else if(zeile == 77) { User[playerid][MarkInt_3] = strval(string); } // Markierung 3 Interior

    dann, hier, wo sicher das Problem liegt, das ist unter OnUserEinloggen drinnen, also, wenn sich der Spieler einloggt
    Die datei wird ausgelesen, und das, was dann in der Zeile steht sollte dann dort draufgespeichert werden, aber, das Problem ist, dass ich nur ganze Zahlen habe, ohne komma, also statt zB.: 659.4572 hab ich dann nur 659.0000




    format(eintrag, sizeof(eintrag), "%f\n\r", User[playerid][MarkPosX_1]); fwrite(userdatei, eintrag); // Markierung 1 PosX
    format(eintrag, sizeof(eintrag), "%f\n\r", User[playerid][MarkPosY_1]); fwrite(userdatei, eintrag); // Markierung 1 PosY
    format(eintrag, sizeof(eintrag), "%f\n\r", User[playerid][MarkPosZ_1]); fwrite(userdatei, eintrag); // Markierung 1 PosZ
    format(eintrag, sizeof(eintrag), "%d\n\r", User[playerid][MarkInt_1]); fwrite(userdatei, eintrag); // Markierung 1 Interior
    format(eintrag, sizeof(eintrag), "%f\n\r", User[playerid][MarkPosX_2]); fwrite(userdatei, eintrag); // Markierung 2 PosX
    format(eintrag, sizeof(eintrag), "%f\n\r", User[playerid][MarkPosY_2]); fwrite(userdatei, eintrag); // Markierung 2 PosY
    format(eintrag, sizeof(eintrag), "%f\n\r", User[playerid][MarkPosZ_2]); fwrite(userdatei, eintrag); // Markierung 2 PosZ
    format(eintrag, sizeof(eintrag), "%d\n\r", User[playerid][MarkInt_2]); fwrite(userdatei, eintrag); // Markierung 2 Interior
    format(eintrag, sizeof(eintrag), "%f\n\r", User[playerid][MarkPosX_3]); fwrite(userdatei, eintrag); // Markierung 3 PosX
    format(eintrag, sizeof(eintrag), "%f\n\r", User[playerid][MarkPosY_3]); fwrite(userdatei, eintrag); // Markierung 3 PosY
    format(eintrag, sizeof(eintrag), "%f\n\r", User[playerid][MarkPosZ_3]); fwrite(userdatei, eintrag); // Markierung 3 PosZ
    format(eintrag, sizeof(eintrag), "%d\n\r", User[playerid][MarkInt_3]); fwrite(userdatei, eintrag); // Markierung 3 Interior

    das ist der abschnitt, wie das ganze dann in den Dateien abgespeichert wird



    So sieht das dann in der Datei aus, ich hab hier einfach mal auf alle 3 die gleichen Positionen drauf




    if(strcmp(cmd, "/mark1", true) == 0)
    {
    if(IsPlayerAdmin(playerid))
    {
    if(IsPlayerInAnyVehicle(playerid))
    {
    new Auto;
    Auto = GetPlayerVehicleID(playerid);
    GetVehiclePos(Auto, User[playerid][MarkPosX_1], User[playerid][MarkPosY_1], User[playerid][MarkPosZ_1]);
    User[playerid][MarkInt_1] GetPlayerInterior(playerid);
    }
    else
    {
    GetPlayerPos(playerid, User[playerid][MarkPosX_1], User[playerid][MarkPosY_1], User[playerid][MarkPosZ_1]);
    User[playerid][MarkInt_1] GetPlayerInterior(playerid);
    }
    SendClientMessage(playerid, GRUEN, "-| Du hast diese Position unter Markierung 1 gespeichert. |-");
    PlayerPlaySound(playerid, 1056, 0.0, 0.0, 0.0);
    }
    else { SendClientMessage(playerid, ELSE_ROT, "Du bist kein Admin !"); }
    return 1;
    }
    if(strcmp(cmd, "/mark2", true) == 0)
    {
    if(IsPlayerAdmin(playerid))
    {
    if(IsPlayerInAnyVehicle(playerid))
    {
    new Auto;
    Auto = GetPlayerVehicleID(playerid);
    GetVehiclePos(Auto, User[playerid][MarkPosX_2], User[playerid][MarkPosY_2], User[playerid][MarkPosZ_2]);
    User[playerid][MarkInt_2] GetPlayerInterior(playerid);
    }
    else
    {
    GetPlayerPos(playerid, User[playerid][MarkPosX_2], User[playerid][MarkPosY_2], User[playerid][MarkPosZ_2]);
    User[playerid][MarkInt_2] GetPlayerInterior(playerid);
    }
    SendClientMessage(playerid, GRUEN, "-| Du hast diese Position unter Markierung 2 gespeichert. |-");
    PlayerPlaySound(playerid, 1056, 0.0, 0.0, 0.0);
    }
    else { SendClientMessage(playerid, ELSE_ROT, "Du bist kein Admin !"); }
    return 1;
    }
    if(strcmp(cmd, "/mark3", true) == 0)
    {
    if(IsPlayerAdmin(playerid))
    {
    if(IsPlayerInAnyVehicle(playerid))
    {
    new Auto;
    Auto = GetPlayerVehicleID(playerid);
    GetVehiclePos(Auto, User[playerid][MarkPosX_3], User[playerid][MarkPosY_3], User[playerid][MarkPosZ_3]);
    User[playerid][MarkInt_3] GetPlayerInterior(playerid);
    }
    else
    {
    GetPlayerPos(playerid, User[playerid][MarkPosX_3], User[playerid][MarkPosY_3], User[playerid][MarkPosZ_3]);
    User[playerid][MarkInt_3] GetPlayerInterior(playerid);
    }
    SendClientMessage(playerid, GRUEN, "-| Du hast diese Position unter Markierung 3 gespeichert. |-");
    PlayerPlaySound(playerid, 1056, 0.0, 0.0, 0.0);
    }
    else { SendClientMessage(playerid, ELSE_ROT, "Du bist kein Admin !"); }
    return 1;
    }

    das sind die Befehle, mit denen dann die Positionen auf den enums abgespeichert werden




    if(strcmp(cmd, "/gehzumark1", true) == 0)
    {
    if(IsPlayerAdmin(playerid))
    {
    if(IsPlayerInAnyVehicle(playerid))
    {
    new Auto;
    Auto = GetPlayerVehicleID(playerid);
    SetVehiclePos(Auto, User[playerid][MarkPosX_1], User[playerid][MarkPosY_1], User[playerid][MarkPosZ_1]);
    SetPlayerInterior(playerid, User[playerid][MarkInt_1]);
    LinkVehicleToInterior(playerid, User[playerid][MarkInt_1]);
    }
    else
    {
    SetPlayerPos(playerid, User[playerid][MarkPosX_1], User[playerid][MarkPosY_1], User[playerid][MarkPosZ_1]);
    SetPlayerInterior(playerid, User[playerid][MarkInt_1]);
    }
    SendClientMessage(playerid, GRUEN, "-| Du hast dich zu deiner Markierung 1 geportet. |-");
    PlayerPlaySound(playerid, 1056, 0.0, 0.0, 0.0);
    }
    else { SendClientMessage(playerid, ELSE_ROT, "Du bist kein Admin !"); }
    return 1;
    }
    if(strcmp(cmd, "/gehzumark2", true) == 0)
    {
    if(IsPlayerAdmin(playerid))
    {
    if(IsPlayerInAnyVehicle(playerid))
    {
    new Auto;
    Auto = GetPlayerVehicleID(playerid);
    SetVehiclePos(Auto, User[playerid][MarkPosX_2], User[playerid][MarkPosY_2], User[playerid][MarkPosZ_2]);
    SetPlayerInterior(playerid, User[playerid][MarkInt_2]);
    LinkVehicleToInterior(playerid, User[playerid][MarkInt_2]);
    }
    else
    {
    SetPlayerPos(playerid, User[playerid][MarkPosX_2], User[playerid][MarkPosY_2], User[playerid][MarkPosZ_2]);
    SetPlayerInterior(playerid, User[playerid][MarkInt_2]);
    }
    SendClientMessage(playerid, GRUEN, "-| Du hast dich zu deiner Markierung 1 geportet. |-");
    PlayerPlaySound(playerid, 1056, 0.0, 0.0, 0.0);
    }
    else { SendClientMessage(playerid, ELSE_ROT, "Du bist kein Admin !"); }
    return 1;
    }
    if(strcmp(cmd, "/gehzumark3", true) == 0)
    {
    if(IsPlayerAdmin(playerid))
    {
    if(IsPlayerInAnyVehicle(playerid))
    {
    new Auto;
    Auto = GetPlayerVehicleID(playerid);
    SetVehiclePos(Auto, User[playerid][MarkPosX_3], User[playerid][MarkPosY_3], User[playerid][MarkPosZ_3]);
    SetPlayerInterior(playerid, User[playerid][MarkInt_3]);
    LinkVehicleToInterior(playerid, User[playerid][MarkInt_3]);
    }
    else
    {
    SetPlayerPos(playerid, User[playerid][MarkPosX_3], User[playerid][MarkPosY_3], User[playerid][MarkPosZ_3]);
    SetPlayerInterior(playerid, User[playerid][MarkInt_3]);
    }
    SendClientMessage(playerid, GRUEN, "-| Du hast dich zu deiner Markierung 1 geportet. |-");
    PlayerPlaySound(playerid, 1056, 0.0, 0.0, 0.0);
    }
    else { SendClientMessage(playerid, ELSE_ROT, "Du bist kein Admin !"); }
    return 1;
    }

    und hier sind die Befehle, mit denen man sich dann wieder zu den Positionen porten kann




    das ist das ganze System, wär cool, wenn mir das jmd so machen kann, dass das dann richtig funktioniert, würde mich freuen
    solltet Ihr noch ein paar Auszüge brauchen, dann Bitte melden und sagen, was noch benötigt wird



    Mit freundlichen Grüßen


    Hofgreith

    hi, ich hab einen BOT erstellt, der eig. mit einem Truck und einem Trailer fährt, aber, der fährt immer ohne Trailer, kannmir jmd pls erklären, wie ich es schaff, dass der mit dem Trailer fährt (( falls nötig, künnt ihr auhc die scriptauszüge bekommen ))



    wär cool, wenn mir da jmd weiterhelfen könnte :)



    MFG

    hi, ich hätt da mal eine Frage: gibt es eine Script-funktion, mit der man mit einem Befehl die tab-liste geöffnet wird,


    zB bei /GibFührerschein. wenn ich das so eingebe, das sich dann die Tab-Liste öffnet und dann dort einen spieler auswählt, den anklicken, dann wollt ich im OnPlayerClickPlayer reinmachen, dass, wenn das jez zB eingegeben hat und einen spieler ausgewählt hat das GUI-Auswahlmenü kommt, wo man dann den Auswählen kann, welchen schein man dem geben will ( führerschien, waffenschein, flugschein, etc ... ) das mit dem GUi weis ich ja, das hab ich ja schon, nur beim anderen rätsel ich schon die längste Zeit rum, wär cool, wenn mich da jmd helfen könnte :)



    MFG Hofgreith