Beiträge von [LSD]KillerRatte

    Schaut wirklich sehr gut aus NeRoTeX :)


    Bei mir geht soweit alles außer:



    ocmd:test(playerid,params[])
    {
    new Float:x, Float:y, Float:z;
    GetPlayerPos(playerid, x, y, z);
    CreateImmo(GetFreeImmoID(), "Neue Immobilie", 50000, 5000, x, y, z);
    return 1;
    }


    InGame sagt mir der Server: SERVER: Unknown command
    Weiß vllt jemand woran es liegen könnte? :D. Der Ordner "IMMO_FILES" ist auch vorhanden.
    Inc wird ohne Fehler geladen. Ich weiß gerade nicht woran es liegen könnte ?(...

    Guten Tag,


    Ich habe gerade ein Problem...
    Die Spieler bekommen Waffen per "GivePlayerWeaponEx".
    Wenn ich z.B aus einem Heli aussteige, dann werde ich gebannt wegen Weaponhack!. Der Grund dafür ist, dass man ein Fallschirm per GivePlayerWeapon bekommt. Ist ja standardmäßig so drine.
    Meine Frage ist nun, wie kann man es verhindern bzw bei dem aussteigen von z.B einem Flugzeug per GivePlayerWeaponEx den Fallschirm zu geben?




    forward GivePlayerWeaponEx(playerid,weaponid,ammo);
    public GivePlayerWeaponEx(playerid,weaponid,ammo)
    {
    Weapon[playerid][weaponid] = true;
    return GivePlayerWeapon(playerid,weaponid,ammo);
    }


    foreach(Player, i)
    {
    new weap = GetPlayerWeapon(i);
    if(weap > 0 && Weapon[i][weap] == false)
    {
    if(GetPlayerState(i) == 1 || GetPlayerState(i) == 2 || GetPlayerState(i) == 3)
    {


    }
    }
    }


    Oder wie könnte ich jetzt z.B die WaffenID: 46 von der Abfrage ausschließen? So das nur die WaffenID: 46 per GivePlayerWeapon erlaubt ist?
    Ich hoffe um paar Tipps etc, da ich was versucht hatte was sehr fail geworden ist ^^.
    Also ich weiß gerade nicht so ganz weiter :D

    Okay, danke dir Sonic :thumbup:
    Also bei mir klappt jetzt alles.
    Für die anderen die es wissen möchten:



    new var;
    for(new i=0; i<sizeof(Healpoints); i++)
    {
    if(IsPlayerInRangeOfPoint(playerid,4, Healpoints[i][0], Healpoints[i][1], Healpoints[i][2]))
    {
    Befehl
    var++;
    }
    }
    if(!var)
    {
    Message: Du bist nicht an einem Punkt
    }
    Usw halt...

    Heyhoo liebe Community,


    Ich bräuchte mal eine kleine Hilfe von euch :) .
    Mein kleines Problem ist:



    new Float:Healpoints[][3] = {
    {369.4221,-6.5150,1001.8516},
    {375.8002,-119.5068,1001.4995},
    {1266.4929,-1353.8770,13.5077},
    {1516.4467,-1658.5867,13.5392},
    {2401.1782,-1739.9053,13.5469}
    };


    Beisp.
    Command: /heal
    if(IsPlayerInRangeOfPoint(playerid,4, Healpoints[0][0], Healpoints[2][1], Healpoints[4][2]))
    {
    SetPlayerHealth...
    }
    else du bist nicht an einem Punkt...


    So in etwa könnt ihr es euch vorstellen. Ich weiß nicht was man hier "Healpoints[0][0]" eintragen soll ?(
    Wenn ich z.B Healpoints[4][0], Healpoints[4][1], Healpoints[4][2] mache. Dann kann man sich nur an der Letzten Coordination healen :pinch: .
    Ich denke einer von euch hat da sicher einen Tipp für mich :D .
    Bedanke mich im voraus 8)


    Edit:
    Hab's nun endlich gefunden ;) .
    Wem es noch interessieren sollte:

    for(new i=0; i<sizeof(Healpoints); i++)
    {
    if(IsPlayerInRangeOfPoint(playerid,4, Healpoints[i][0], Healpoints[i][1], Healpoints[i][2]))
    {
    Befehl
    }
    else{
    Message: Du bist nicht an einem Punkt
    }
    }

    Nur mit der Nachricht "Du bist nicht an einem Punkt" gibt es noch Probleme...
    Da er die Nachricht durch die Schleife 5x sendet :D

    Danke für deine Antwort Sonic 8)
    Allerdings weiß ich jetzt nicht wirklich wie ich es nun umsetzten muss ?(
    Ich muss dazu noch erwähnen, dass ich nicht sehr gut in MySQL bin ...
    Könntest du mir einen kleinen Tipp geben wie ich am besten anfangen muss?


    Edit: Hab es nun geschaft 8)

    Guten Tag liebe Leute :)


    Ich habe ein Problem, ich versuche seit 2 Stunden eine String aus einer MySQL Tabelle zu benutzen / lesen...
    Ich Speichere ein Datum in die Tabelle ab. Und möchte Sie nun wieder auslesen.
    Nur habe ich das Problem, dass ich nicht richtig weiß wie ich sowas machen kann ?(
    Gespeichert wird das Datum folgendermaßen:


    date
    Name: Datum
    Type: varchar



    new query[256];
    format(query, sizeof(query), "SELECT `db` FROM `date` WHERE Datum = '%s'");
    mysql_query(query);
    mysql_store_result();
    SendClientMessage(playerid,0xFFFFFFFF, Hier ein neuer String? oder der Query);


    Ich hoffe einer von euch kann mir dort etwas helfen. Ich wäre euch da wirklich sehr dankbar :thumbup:

    Schönen guten Tag,


    Ich habe folgendes Problem:
    Ich speichere die IP eines Spielers in dessen Account ab. Ich habe einmal die RegisterIP Und die LastIP.
    Das Problem ist nun, das wenn z.B 2 Leute auf dem Server sind. Wird nur eine IP gespeichert ?(
    Beisp:


    User A connected
    User B connected
    User B disconnected
    Und die IP wird von User A in dem Account von User B gespeichert. Da User A als erstes connected ist.
    Ich hoffe ihr könnt es so halbwegs verstehen :D


    Ich habe es so versucht gehabt:

    Ganz oben beides probiert...
    new discIP[MAX_PLAYERS];
    new discIP[64];


    public OnPlayerConnect(playerid)
    GetPlayerIp(playerid, discIP, sizeof(discIP));


    public OnPlayerDisconnect(playerid, reason)
    LastIP(playerid);


    stock LastIP(playerid)
    {
    new query[128];
    format(query, 128, "UPDATE `accounts` SET LastIP = '%s' WHERE name = '%s'",discIP,SpielerName(playerid));
    mysql_query(query);
    }


    Ich wollte es nun so haben. Das jede IP des Spieler gemerkt wird, der neu auf dem Server connected. Und beim disconnecten gespeichert wird.
    Sprich es soll seine IP gespeichert werden und nicht die von einem anderen Spieler 8|
    Ich hoffe einer von euch kann mir da etwas weiter helfen :thumbup:
    Bedanke mich schon mal im voraus :)

    @ Douq
    Nach der Registration werden die Daten in die Datenbank geschrieben.
    Ich habe es so gemacht:

    CreateAccount(playerid, inputtext);
    SetPVarInt(playerid,"Eingeloggt",1);
    SpielerInfo[playerid][pAdminlevel] = 0;
    SavePlayer(playerid);
    LoadPlayer(playerid);


    Der Grund für das Speichern und wieder Laden ist der, dass wenn man sich Registriert. Und sich z.B 2x killt, dann Disconnected. So werden die Tode nicht abgespeichert. Es würde nur dann gehen, wenn man sich registriert -> dann disconnected -> und wieder einloggt. Erst dann werden die Tode in der Datenbank geschrieben. Und daher nutze ich das Speichern und das Laden wieder, da so die Tode ab dem ersten Connecten in die Datenbank geschrieben werden.


    @RedJoker
    Also unter "OnPlayerConnect" habe ich nix stehen was die Werte auf 0 setzen tut :huh:
    Aber ich werde gleich mal gucken wie ich dass am besten umsetzen könnte :D

    Guten Tag zusammen,


    Habe da mal eine kleine Frage ...
    Ich bin dabei auf MySQL umzusteigen. Vorher nutzte ich DINI.
    Ich benutze dazu das Tutorial von: Maddin


    Mein Problem:´
    Wenn man sich neu registriert, dann ist das Adminlevel = 1
    Ich habe vom Tutorial das "Level" in "Adminlevel" geändert.



    Laden:
    SpielerInfo[playerid][pAdminlevel] = mysql_GetInt("accounts", "Adminlevel", "Name", SpielerInfo[playerid][sName]);
    Speichern:
    mysql_SetInt("accounts", "Adminlevel", SpielerInfo[playerid][pAdminlevel], "Name", SpielerInfo[playerid][sName]);


    Ich hatte unter "stock CreateAccount(playerid, pass[])" mal folgendes versucht gehabt: SetPlayerScore(playerid,SpielerInfo[playerid][pAdminlevel] = 0);. Doch dies brachte leider auch nix ...
    Aber alles andere wird mit einer 0 gespeichert! Wie z.B Tode = 0.
    Ich hoffe einer von euch hat ein kleinen tipp für mich ;).
    Ich wäre sehr dankbar 8)

    Guten Tag,


    Ich wollte mal wissen welche Funktionen man braucht um abzufragen wie lange ein Spieler auf der selben Stelle steht?
    z.B: Der Spieler steht seit 5 Min. auf einer Stelle. Dann soll er z.B gekickt werden.
    Ich bedanke mich schon mal im voraus :)


    ocmd:carrespawnall(playerid,params[])
    {
    for(new i = 0; i < MAX_VEHICLES; i++)
    {
    if(GetVehicleDriver(i) == -1)
    {
    SetVehicleToRespawn(i);
    }
    }
    return 1;
    }


    stock GetVehicleDriver(vehicleid)
    {
    new i;
    for(;i!=MAX_PLAYERS;i++) if(IsPlayerConnected(i) && GetPlayerState(i) == PLAYER_STATE_DRIVER && GetPlayerVehicleID(i) == vehicleid) return i;
    return INVALID_PLAYER_ID;
    }


    Normal sollten jz ja alle Fahrzeuge respawnen...
    Doch es tut sich nix! Wo soll denn dort der Fehler sein ?(

    Danke für eure schnelle Antwort. ;)


    @ Nikolas
    Ich hatte hier im Forum nach "GetVehicleDriver" geschaut.
    Und dabei ein stock gefunden:

    stock GetVehicleDriver(vehicleid)
    {
    new i;
    for(;i!=MAX_PLAYERS;i++) if(IsPlayerConnected(i) && GetPlayerState(i) == PLAYER_STATE_DRIVER && GetPlayerVehicleID(i) == vehicleid) return i;
    return INVALID_PLAYER_ID;
    }


    Das Problem ist nun das er keine Fahrzeuge respawt ?(