Beiträge von Kaliber

    @ Arendium & RFT


    Wenn ich dazu mal was anmerken dürfte, diese Variante querys per stock zu übertragen lassen ist schlecht, da dann jeder query einzeln geschickt wird un das bei sagen wir 100 Variablen das System denke ich mal zum leggen oder sogar zum crash bringen wird :S


    Aus diesem Grund würde ich einfach euch empfehlen eine lange query zu schreiben, die alle Variablen beinhaltet...das hätte halt den Vorteil, dass nur 1ne Query gesendet wird und nicht 100 ^^


    mfg. :thumbup:

    Schreibe es einfach so:


    for(new i; i < MAX_PLAYERS; i++)
    {
    if(!IsPlayerConnected(i)) continue;
    ShowPlayerNameTagForPlayer(playerid, i, false);
    }


    mfg. :thumbup:


    //Edit: Ups verschaut :whistling:

    Achso ocmd, jo hier:


    ocmd:kidnap(playerid, params[])
    {
    if(!IsACop(playerid)) return SendClientMessage(playerid,rot,"Du bist kein Cop !");//Anpassen falls nötig
    new pID;
    if(sscanf(params, "u", pID)) return SendClientMessage(playerid,rot,"Verwendung: /kidnap [spielerid]");
    if(!IsPlayerConnected(pID) || pID == playerid) return SendClientMessage(playerid,rot,"Diese Spielerid ist ungültig !");
    new Float: X, Float: Y, Float: Z;
    for(new v; v<MAX_VEHICLES; v++)
    {
    GetVehiclePos(v, X, Y, Z);
    if(!IsPlayerInRangeOfPoint(pID, 10.0, X, Y, Z)) continue;
    PutPlayerInVehicle(pID, v, 1);
    TogglePlayerControllable(pID, 0);
    break;
    }
    SendClientMessage(playerid,blau,"Du hast einen Spieler erfolgreich gekipnapt !");
    return 1;
    }


    Was die Funktionen machen steht doch da :huh:


    mfg. :thumbup:

    Nicht helfen ist eh nur ein Scriptkiddy der soll allein klar kommen.


    Also meiner Meinung nach, hättest du dafür eine Verwarnung kassiert !


    Da wendet sich ein User im Scripting Bereich an dieses Forum, weil er eine Sache nicht verstanden hat (dafür ist dieser Bereich da) und du schreibst so einen Mist !


    Ich scripte kein Pawno?


    Noch ein Grund mehr um einfach mal leise zu sein !


    @Threadersteller
    Lizenzen sind auch nur Variablen mit bestimmten Werten sowie das Geld oder auch dein Score !
    Schau einfach wie du sie abspeicherst und/oder lädst und mache es mit einer neuen Variable nach ;)


    mfg. :thumbup:

    Schreibe den Befehl mal so:


    ocmd:opark(playerid,params[])
    {
    if(!IsPlayerInAnyVehicle(playerid))return SendClientMessage(playerid,COLOR_RED,"Du musst im Towtruck sitzen!");
    new trailercar = GetVehicleTrailer(GetPlayerVehicleID(playerid));
    if(!IsTrailerAttachedToVehicle(GetPlayerVehicleID(playerid)))return SendClientMessage(playerid,COLOR_RED,"Du musst ein Fahrzeug am Towtruck haben!");
    GetVehiclePos(trailercar,PlayerAuto[trailercar][paX],PlayerAuto[trailercar][paY],PlayerAuto[trailercar][paZ]);
    GetVehicleZAngle(trailercar,PlayerAuto[trailercar][paA]);
    SendClientMessage(playerid,COLOR_GREEN,"Auto wurde nun hier abgestellt.");
    DetachTrailerFromVehicle(GetPlayerVehicleID(playerid));
    SetPVarInt(vkey,"towed",1);
    format(str,sizeof str,"autos/auto_%d.txt",trailercar);
    dini_FloatSet(str,"X",PlayerAuto[trailercar][paX]);
    dini_FloatSet(str,"Y",PlayerAuto[trailercar][paY]);
    dini_FloatSet(str,"Z",PlayerAuto[trailercar][paZ]);
    dini_FloatSet(str,"A",PlayerAuto[trailercar][paA]);
    return 1;
    }


    mfg. :thumbup:


    //Edit: Hatte ein i vergessen zu korrigieren :rolleyes:

    Da, kurz und knapp:


    if(!strcmp(cmd, "/kidnap", true))
    {
    if(!IsACop(playerid)) return SendClientMessage(playerid,rot,"Du bist kein Cop !");//Anpassen falls nötig
    tmp = strtok(cmdtext, idx);
    if(!strlen(tmp)) return SendClientMessage(playerid,rot,"Verwendung: /kidnap [spielerid]");
    new pID = strval(tmp);
    if(!IsPlayerConnected(pID) || pID == playerid) return SendClientMessage(playerid,rot,"Diese Spielerid ist ungültig !");
    new Float: X, Float: Y, Float: Z;
    for(new v; v<MAX_VEHICLES; v++)
    {
    GetVehiclePos(v, X, Y, Z);
    if(!IsPlayerInRangeOfPoint(pID, 10.0, X, Y, Z)) continue;
    PutPlayerInVehicle(pID, v, 1);
    TogglePlayerControllable(pID, 0);
    break;
    }
    SendClientMessage(playerid,blau,"Du hast einen Spieler erfolgreich gekipnapt !");
    return 1;
    }


    Einzelne Funktionen evtl anpassen ;)


    mfg. :thumbup:

    Beachte das nicht das kommt in jedem GF edit vor,


    Ja, daran sieht man wieder wie schlecht die gescriptet sind :rolleyes:


    Dieser Fehler bzw diese Information kann aus verschiedenen Gründen kommen, entweder man nutzt zu viele Variablen im Script oder man macht die Arrays von Variablen viel zu unnötig groß (was meistens der Verursacher dieser Information ist).


    Beheben kannst du dies halt, wenn du die Array Größen anpasst.


    Dennoch sollte dies kein Grund sein um Befehle zu blockieren, dafür sind eher Filterscripts verantwortlich ;)


    mfg. :thumbup:

    Du musst das so schreiben:


    SetPlayerCameraLookAt(playerid,22.1507,174.5281,2.4906);
    SetTimer(playerid,1000*20, 0);
    SetCameraBehindPlayer(playerid);
    SetPlayerPos(playerid,40.9774,222.5309,4.2078);


    mfg. :thumbup:

    Das konntest du mal besser -.-


    Wieso konnte ich nutze diese Directive doch gar nicht, aber für Anfänger ist es meistens einfacher so eine Zeile da in sein Script zu schreiben, also darüber nachzudenken, wie man das jetzt am besten einrückt ^^


    mfg. :thumbup: