Beiträge von Indec

    Hallo liebe Community,


    ich habe einen Fehler in meinem umgeschriebenden GetPlayerName (als Include)
    ( Ich weiß das das ganze so nicht funktionieren kann, allerdings habe ich auch gerade keine Ahnung, wie es funktionieren soll )


    stock NC_GetPlayeName(playerid)
    {
    new name[MAX_PLAYER_NAME];
    GetPlayerName(playerid,name,sizeof(name));
    return name;
    }
    #define GetPlayerName NC_GetPlayerName


    Dies ist der Code. Kann mir jemand diesen so umschreiben, das er funktionsfähig ist?

    Mit freundlichen Grüßen

    Abend liebe Com,

    ich habe einen ziemlich schwierigen Fehler und zwar, das die Tankstellen nicht richtig geladen werden.
    Abgespeichert werden sie richtig.


    stock SaveTanken()
    {
    new str[60];
    for(new i = 0; i<MAX_TANKEN; i++)
    {
    format(str, sizeof str, "/Tankstellen/%d.ini", i);
    if(dini_Exists(str))
    {
    dini_Set(str, "Beschreibung", TankenInfo[i][tDescr]);
    dini_FloatSet(str, "PoxX", TankenInfo[i][tPosX]);
    dini_FloatSet(str, "PosY", TankenInfo[i][tPosY]);
    dini_FloatSet(str, "PosZ", TankenInfo[i][tPosZ]);
    dini_IntSet(str, "Benzin", TankenInfo[i][tLiter]);
    }
    }
    print("Tankstellen wurden gespeichert!");
    return 1;
    }


    stock LoadTanken()
    {
    new str[508];
    for(new i = 0; i<MAX_TANKEN; i++)
    {
    format(str, sizeof str, "/Tankstellen/%d.ini", i);
    if(dini_Exists(str))
    {

    format(TankenInfo[i][tDescr], 50, "%s", dini_Get(str, "Beschreibung"));
    TankenInfo[i][tPosX] = dini_Float(str, "PosX");
    TankenInfo[i][tPosY] = dini_Float(str, "PosY");
    TankenInfo[i][tPosZ] = dini_Float(str, "PosX");
    TankenInfo[i][tLiter] = dini_Int(str, "Benzin");
    TankenInfo[i][tPick] = CreateDynamicPickup(1273, 1,TankenInfo[i][tPosX], TankenInfo[i][tPosY], TankenInfo[i][tPosZ]);
    printf("Geladen: %s Tankstelle | Position: %f.%f.%f",TankenInfo[i][tDescr],TankenInfo[i][tPosX],TankenInfo[i][tPosY],TankenInfo[i][tPosZ]);
    }
    }
    }






    Das passiert laut Log:



    Geladen: Burger Shot North Tankstelle | Position: 0.000000.-933.372375.0.000000


    Die Abspeicherung funktioniert richtig, ich hoffe jemand weiß einen Rat.



    MfG

    Ich weiß nicht was ich sagen soll...


    0815 ist es sry, und es ist auch so da das Script einfach zu downloaden ist und noch nicht einmal die Rechtschreibfehler rausgenommen wurden.

    Zum Anti-Cheat:


    SCHRECKLICH! Sogar noch der Bug mit dem man jedem unendlich Wanteds geben kann.
    Falls ihr ein Anti-Cheat braucht könnt ihr euch ja mal bei mir melden, aber das finde ich schon richtig heftig.


    Und man kann nicht alle Administratoren unter /admins sehen.


    Man soll Server ja nicht nach dem Script bewerten, desshalb: Ok.
    Und mein Supportticket wurde nicht angenommen! (10 Minuten Wartezeit, dafür gibt es keine Ausflüchte)


    MfG

    Bewertung von mir:


    - Persönlich finde ich das ihr euch bei dem Server kaum Mühe gegeben habt.
    Das German Reallife Zocker Script gab es doch erst seid kurzem zum Download?
    Gameserver: 1/10


    - Teamspeak: Kann ich jetzt nichts zu sagen.


    - Forum ist wiederum besser dank der Vollversion von WBB.
    Aber, WTF:



    Zurzeit sind neben Ihnen 3 Benutzer in diesem Forum unterwegs:



    1 Mitglied
    und 2 Besucher



    Legende: Serverleitung, CommunityLeitung, Administratoren, Russen Mafia, Supporter



    Fazit:
    Kein geplantes Projekt ==> Server closen | Das bringt eh nichts. Da steht ja sogar noch im Tutorial "GEZ"

    Dessweiteren nimmt ihr jede Supporterbewerbung an. ?(


    Aha, bedarf keiner Erklärung. |>> 0/10 da Testen nicht möglich | <<

    Forum finde ich nicht gut da es keine so gute Software hat. (Finde ich nicht gut aufgebaut.)


    Da aber das Forum aber GUT strukturiert ist: 2/10

    Ich finde am Script keine Features. :(



    Gesammt... Nicht ... Nicht gut.. da das spielen leider nicht möglich ist. 8|

    Wenn du dich in der Nähe dieser Objekte befindest ist das sicherlich auch kein Wunder.


    Deswegen nutzt man das auch normaler weise in OnPlayerConnect, sprich odrt wo es auch nur einmal ausgeführt wird.
    Denn das was einmal entfernt wurde, kommt auch ohne reconnect nicht wieder zurück.


    Wenn du jetzt mehrmals Objekte entfernst die bereits entfernt wurden kann, muss aber nicht, zu Problemen kommen,
    ebenso, wenn man Objekte entfernt, die noch eingestreamt sind


    Nein ich habe sie ja bei Connect eingefügt, und auch nicht doppelt removed.

    Hallo Leute seid heute tritt es auf wenn ich immer wieder neue RemoveBuildings reinmache, das man sich dann einfach nicht mehr bewegen kann.
    Wenn man lange auf W drückt bewegt sich der Char im einen Zentimeter nach vorne.
    Gibt es eine RemoveBuildingForPlayer Begrenzung?

    //Infobox (Bei Ban)
    for(new i; i<MAX_PLAYERS;i++){

    InfoBox[i] = TextDrawCreate(219.000000, 170.000000, "Grund: X");
    TextDrawBackgroundColor(InfoBox[i], 255);
    TextDrawFont(InfoBox[i], 1);
    TextDrawLetterSize(InfoBox[i], 0.480000, 1.599999);
    TextDrawColor(InfoBox[i], -16776961);
    TextDrawSetOutline(InfoBox[i], 1);
    TextDrawSetProportional(InfoBox[i], 1);
    TextDrawSetShadow(InfoBox[i], 1);
    TextDrawUseBox(InfoBox[i], 1);
    TextDrawBoxColor(InfoBox[i], 80);
    }





    Bei /ban



    new reason2[1200],Tag,Monat,Jahr;
    getdate(Jahr, Monat, Tag);
    format(reason2,sizeof(reason2)," ~r~ Du wurdest gebannt!~n~~n~~r~Grund: ~y~%s~n~~r~Von: ~y~%s~n~~r~Datum: ~y~%02d/%02d/%d~n~~r~Dauer: ~y~Permanent~n~~n~~w~Solltest du der Meinung sein,~n~dass dieser Ban ungerecht war,~n~erstelle bitte im Forum einen Entbannantrag! ",(result),Spielername(playerid),Tag,Monat,Jahr);
    TextDrawSetString(InfoBox[giveplayerid],reason2);
    TextDrawShowForPlayer(giveplayerid,InfoBox[giveplayerid]);

    Hallo, liebe Com ich versuche schon seid heute morgen dieses Textdraw beim /ban hinzubekommen.


    Leider funkt es nicht und sieht dumm aus, mit der Box.





    Gibt es eine Textdraw Funktion mit der man mehr Zeilen hinzufügen kann und eine die die Box einrückt?


    Danke im Vorraus :)

    if(strcmp(cmd, "/tanken", true) == 0)
    {
    for(new i = 0; i<MAX_TANKEN; i++) //Hier die Schleife
    {
    if(IsPlayerInRangeOfPoint(playerid, 8.0, TankenInfo[i][tPosX], TankenInfo[i][tPosY], TankenInfo[i][tPosZ])) //Ist der Spieler bei der Tanke?
    {
    //if(IsANoTachoVehicle(GetPlayerVehicleID(playerid)))
    //{
    // SendClientMessage(playerid,COLOR_RED,"* Ein Fahrrad hat keinen Tank!"); //Erstmal entfernt.
    //}
    //else
    //{
    new VID;
    new FillUp;
    new string[256];
    VID = GetPlayerVehicleID(i);
    FillUp = GetGasMax(GetVehicleModel(VID)) - Gas[VID];
    if(GetPlayerMoney(i) >= FillUp+4)
    {
    SetTimer("Fillup",RefuelWait,0);
    Refueling[playerid] = 1;
    FreezePlayer(playerid);
    TankenInfo[i][tLiter] -= FillUp;
    UpdateTankenLabel(i);
    format(string, sizeof(string), "* Tankstelle: {FFFFFF}Du betankst dein Fahrzeug an der %s Tankstelle!", TankenInfo[i][tDescr]);
    SendClientMessage(playerid,COLOR_LIGHTBLUE,string);
    SendClientMessage(playerid,COLOR_LIGHTBLUE,"* Tankstelle: {FFFFFF}Bitte warte bis es aufgetankt wurde!");
    return 1;
    }
    else
    {
    format(string,sizeof(string),"* Du hast nicht genug Geld zum Tanken auf der Hand! Kosten: %d$",FillUp);
    return SendClientMessage(i,COLOR_LIGHTGREEN,string);
    }
    }
    }
    //SendClientMessage(playerid,COLOR_RED,"* Du befindest dich an keiner Tankstelle!");
    //return 1;
    GameTextForPlayer(playerid,"~r~DU BIST AN KEINER TANKSTELLE!",4000,3); //Kommt immer bei der zweiten Tanke die ich erstelle.
    }



    So habe ich das jetzt macht aber keinen Unterschied... bei der ersten erstellten Tanke gehts immer bei der zweiten nicht..

    Hallo, liebe Breadfish Community.


    Ich habe einen Fehler in meinem Tankstellen-System. Das heißt nicht das man es nicht compilen kann sondern Ingame.

    if(strcmp(cmd, "/tanken", true) == 0)
    {
    if(IsPlayerConnected(playerid))
    {
    for(new i = 0; i<MAX_TANKEN; i++) //Hier die Schleife
    {
    if(IsPlayerInRangeOfPoint(playerid, 8.0, TankenInfo[i][tPosX], TankenInfo[i][tPosY], TankenInfo[i][tPosZ])) //Ist der Spieler bei der Tanke?
    {
    //if(IsANoTachoVehicle(GetPlayerVehicleID(playerid)))
    //{
    // SendClientMessage(playerid,COLOR_RED,"* Ein Fahrrad hat keinen Tank!"); //Erstmal entfernt.
    //}
    //else
    //{
    new VID;
    new FillUp;
    new string[256];
    VID = GetPlayerVehicleID(i);
    FillUp = GetGasMax(GetVehicleModel(VID)) - Gas[VID];
    if(GetPlayerMoney(i) >= FillUp+4)
    {
    SetTimer("Fillup",RefuelWait,0);
    Refueling[playerid] = 1;
    FreezePlayer(playerid);
    TankenInfo[i][tLiter] -= FillUp;
    UpdateTankenLabel(i);
    format(string, sizeof(string), "* Tankstelle: {FFFFFF}Du betankst dein Fahrzeug an der %s Tankstelle!", TankenInfo[i][tDescr]);
    SendClientMessage(playerid,COLOR_LIGHTBLUE,string);
    SendClientMessage(playerid,COLOR_LIGHTBLUE,"* Tankstelle: {FFFFFF}Bitte warte bis es aufgetankt wurde!");
    return 1;
    }
    else
    {
    format(string,sizeof(string),"* Du hast nicht genug Geld zum Tanken auf der Hand! Kosten: %d$",FillUp);
    SendClientMessage(i,COLOR_LIGHTGREEN,string);
    }


    }
    else
    {
    //SendClientMessage(playerid,COLOR_RED,"* Du befindest dich an keiner Tankstelle!");
    //return 1;
    GameTextForPlayer(playerid,"~r~DU BIST AN KEINER TANKSTELLE!",4000,3); //Kommt immer bei der zweiten Tanke die ich erstelle.
    }
    }
    }

    }




    Fehlermeldung:


    Immer wenn ich die erste Tankstelle mit einem Ingame Command erstelle (siehe unten), funktioniert es. Bei der zweiten Tanke die ich aber erstelle kommt immer:
    "Du bist an keiner Tankstelle"


    Ich wäre unheimlich dankbar wenn jemand den Fehler findet.



    ==> /createtanke Befehl:


    ocmd:createtanke(playerid,params[])
    {
    new tstring[500];
    if(!IsAAdmin(playerid))return SendClientMessage(playerid,COLOR_RED,"Du bist kein Admin!");
    new Name[300],string[128];
    if(sscanf(params,"s",Name))return SendClientMessage(playerid,COLOR_GREY,"Verwende: /createtanke [Name]");
    format(tstring, sizeof(tstring), "Administrator %s hat eine Tankstelle erstellt! Name: %s", Spielername(playerid), Name);
    TBroadCast(COLOR_LIGHTBLUE, tstring);
    new i = GetTankenID(); if(i == -1) return SendClientMessage(playerid, COLOR_GREY, "Error: Maximale Anzahl an Tankstellen erreicht!");
    format(string, sizeof string, "/Tankstellen/%d.ini", i);
    dini_Create(string);
    TankenInfo[i][tPosX] = GetX(playerid);
    TankenInfo[i][tPosY] = GetY(playerid);
    TankenInfo[i][tPosZ] = GetZ(playerid);
    TankenInfo[i][tLiter] = 500;
    format(TankenInfo[i][tDescr], 50, "%s", Name);
    format(string, sizeof string, "{0087FF}|Tankstelle|\n{FFFFFF}%s\nVerfügare Liter: {00A500}%d/500", TankenInfo[i][tDescr], TankenInfo[i][tLiter]);
    TankenInfo[i][tLabel] = CreateDynamic3DTextLabel(string, COLOR_WHITE, TankenInfo[i][tPosX], TankenInfo[i][tPosY], TankenInfo[i][tPosZ], 15, INVALID_PLAYER_ID, INVALID_VEHICLE_ID, 1, -1, -1, -1, 15);
    TankenInfo[i][tPick] = CreateDynamicPickup(1650, 1, TankenInfo[i][tPosX], TankenInfo[i][tPosY], TankenInfo[i][tPosZ]);
    return 1;
    }




    Mit freundlichen Grüßen


    DirectX

    if(strcmp(cmdtext,"/abschleppen",true)==0)
    {
    //Wer soll abschleppen können?
    {
    if(IsPlayerInAnyVehicle(playerid))
    {
    if (GetVehicleModel(GetPlayerVehicleID(playerid)) == 525)
    {
    if(GetPlayerState(playerid)==2)
    {
    new Float:pX,Float:pY,Float:pZ;
    GetPlayerPos(playerid,pX,pY,pZ);
    new Float:vX,Float:vY,Float:vZ;
    new Found=0;
    new vid=0;
    while((vid<MAX_VEHICLES)&&(!Found))
    {
    vid++;
    GetVehiclePos(vid,vX,vY,vZ);
    if ((floatabs(pX-vX)<7.0)&&(floatabs(pY-vY)<7.0)&&(floatabs(pZ-vZ)<7.0)&&(vid!=GetPlayerVehicleID(playerid)))
    {
    Found=1;
    if(IsTrailerAttachedToVehicle(GetPlayerVehicleID(playerid)))
    {
    DetachTrailerFromVehicle(GetPlayerVehicleID(playerid));
    }
    else
    {
    AttachTrailerToVehicle(vid,GetPlayerVehicleID(playerid));
    }
    }
    }
    if(!Found)
    {
    SendClientMessage(playerid,0xFFFF00AA,"Es ist kein Auto in Reichweite.");
    }
    }
    else
    {
    SendClientMessage(playerid,0xFFFF00AA, "Du musst der Fahrer des Towtrucks sein!");
    return 1;
    }
    }
    else
    {
    SendClientMessage(playerid,0x0041FFFF, "Du bist in keinen Abschleppwagen!");
    return 1;
    }
    }
    else
    {
    SendClientMessage(playerid,0xFFFF00AA, "Du musst in einem Fahrzeug sein, um Autos abzuschleppen!");
    return 1;
    }
    }
    else
    {
    SendClientMessage(playerid,0xFFFF00AA,"Du darfst diesen Befehl nicht benutzen!");
    return 1;
    }
    return 1;
    }