[SAMMELTHREAD] Kleine Scripting Fragen

Dein Problem konnte durch einen User gelöst werden? Bedank dich bei ihm indem du seinen Beitrag als Hilfreich markierst sowie einen Daumen oben dalässt
Wichtiger Hinweis: Bitte ändert nicht manuell die Schriftfarbe auf schwarz sondern belasst es bei der Standardeinstellung. Somit tragt ihr dazu bei dass euer Text auch bei Verwendung unseren dunklen Forenstils noch lesbar ist!

Tipp: Ihr wollt längere Codeausschnitte oder Logfiles bereitstellen? Benutzt unseren eigenen PasteBin-Dienst Link
  • Wie kann ich genau abfragen ob ein Spieler etwas in den Chat geschrieben hat? Wollte gerne ein Anti Spam System machen.

    "Dem wird befohlen, der sich nicht selbst gehorchen kann" - Friedrich Nietzsche

  • Hallöchen


    Ich brauch mal eure hilfe


    Ich wollte mein Register Login system via Forum laufen lassen sprich nur name und PW


    Wie mach ich das mit den Hash das er das PW annimmt?


    Hoffe auf hilfe

  • Noch eine Frage:


    Ich habe mir eine neue Uhr gescriptet (Textdraw). Jetzt ist mir aufgefallen das anscheinend die original Uhr noch
    im Hintergrund ist.


    Wie bekomme ich die original Uhr weg sodass man nur die neue sieht?

    Hast du als Textdraw auch das hier reingeschrieben und keine Zahlen ? ---> --:-- <---



  • Keiner ne Idee?


    Brauche das dringend

  • Was ist an den beiden Befehlen falsch?


    ocmd:makeleader(playerid,params[])
    {
    if(!isPlayerAnAdmin(playerid,3))return SendClientMessage(playerid,ROT,"Rang zu Niedrig.");
    new pID,fID;
    if(sscanf(params,"ui",pID,fID))return SendClientMessage(playerid,BLAU,"/makeleader [playerid] [fraktionsid]");
    SetPVarInt(pID,"Fraktion",fID);
    SendClientMessage(playerid,Grau,"Du hast %s zum Leader der Fraktion %s gemacht",SpielerName(pID),fID;
    return 1;
    }
    ocmd:setadmin(playerid,params[])
    {
    if(!isPlayerAnAdmin(playerid,4))return SendClientMessage(playerid,Grau,"Dazu bist du nicht befugt.");
    new pID, rank;
    if(sscanf(params,"ui",pID,rank))return SendClientMessage(playerid,Weis,"Nutze: /setadmin [ID/Teilname] [AdminLevel]");
    if(rank<1||rank>5)return SendClientMessage(playerid,Grau,"Bitte gültigen Rang angeben.");
    SetPVarInt(pID,"Adminlevel",rank);
    SpielerSpeichern(pID);
    SendClientMessage(pID,"Du wurdest von %s zum Admin Rank %s gemacht",SpielerName(playerid),rank);
    return 1;
    }


    C:\Users\Alex\Desktop\Selfmade!\gamemodes\tutorial.pwn(162) : warning 202: number of arguments does not match definition
    C:\Users\Alex\Desktop\Selfmade!\gamemodes\tutorial.pwn(162) : warning 202: number of arguments does not match definition
    C:\Users\Alex\Desktop\Selfmade!\gamemodes\tutorial.pwn(162) : error 001: expected token: ",", but found ";"
    Ich hoffe ihr könnt mir helfen.



  • //edit


    du musst dabei ein String erstellen daher kommen auch die Warnings.


    new string[128];


    Format(string,sizeof(string),"Du hast %s zum Leader der Fraktion %s gemacht",SpielerName(pID),fID);


    und dann


    SendClientMessage(pID,GRAU,string);

  • Guten Tag!


    Ich habe eine kleine Frage! Und zwar geht es um das Thema sscanf! Ich möchte einen Blitzer befehl aufbauen, arbeite mit dcmd und sscanf.



    dcmd_blitzer(playerid,params[])
    {
    if(PlayerInfo[playerid][pMember] != 1 && PlayerInfo[playerid][pLeader] != 1 && PlayerInfo[playerid][pMember] != 5 && PlayerInfo[playerid][pLeader] != 5) return SendClientMessage(playerid, COLOR_GRAU, "Du bist kein Beamter!");
    if(PlayerInfo[playerid][pDienst] == 0) return SendClientMessage(playerid, COLOR_GRAU, "Du bist nicht im Dienst!");
    new string[128], funktion[28], radius, speed;
    if(sscanf(params,"s",funktion))
    {
    SendClientMessage(playerid, COLOR_GRAU, "Benutze: /blitzer [Funktion]");
    SendClientMessage(playerid, COLOR_GRAU, "Verfügbare Funktionen: add, remove, removeall, count");
    return 1;
    }
    if(strcmp(funktion,"add", true) == 0)
    {
    if(PlayerInfo[playerid][pRang] < 2) return SendClientMessage(playerid, COLOR_GRAU, "Du brauchst mindestens Rang 2, um einen Blitzer aufstellen zu können!");
    if(GetPlayerInterior(playerid) != 0) return SendClientMessage(playerid, COLOR_GRAU, "Du kannst keinen Blitzer in einem Gebäude aufstellen!");
    new blitzer = 0;
    for(new idx = 0; idx < sizeof(BlitzerInfo) ; idx++)
    {
    if(BlitzerInfo[idx][bErstellt] == 1)
    {
    blitzer += 1;
    }
    }
    if(blitzer >= MAX_BLITZER) return SendClientMessage(playerid, COLOR_GRAU, "Es sind bereits 10 Blitzer aufgestellt worden!");
    if(sscanf(params,"sdd",funktion, radius, speed))
    {
    SendClientMessage(playerid, COLOR_GRAU, "Benutze: /blitzer add [Radius] [Geschwindigkeit]");
    return 1;
    }
    if(speed < 50 || speed > 150) return SendClientMessage(playerid, COLOR_GRAU, "Geschwindigkeit: Gehe nicht unter 50 und nicht über 150 km/h!");
    if(radius < 20 || radius > 90) return SendClientMessage(playerid, COLOR_GRAU, "Radius: Gehe nicht unter 20 und nicht über 90 Meter!");
    CreateBlitzer(playerid, radius, speed);
    format(string, sizeof(string), "[HQ] %s hat einen Blitzer mit einer Geschwindigkeitsbegrenzung von %d aufgestellt!",PlayerInfo[playerid][pName], speed);
    SendRadioMessage(1,COLOR_BLUE, string);
    SendRadioMessage(5,COLOR_BLUE, string);
    }
    return 1;
    }


    Doch er funktioniert nicht, warum? Ich möchte nur, wenn der Spieler bei "funkion" "add" eingiebt, das er dann auch noch 2 Daten mehr angeben muss!


    Ich hoffe mir kann jemand helfen! :)


    MFG,


    Scriptor!

    Einmal editiert, zuletzt von Shanon ()

  • Weiß einer wie ich meine IsPlayerInRangeOfPoint Abfrage verbessere?


    Momentan muss ich GENAU Punkt GENAU Richtig sein ,weiß einer wie ich das in einem Radio definiere? Danke im vorraus, heißt dann wenn ich 30 Meter entfernt bin, dass immernoch nutzen kann.


    So sieht meins momentan aus:


    if(IsPlayerInRangeOfPoint(playerid,2695.6880, -1704.6300, 11.8438))


    Tut mir leid bin nicht der beste im Abfragen



    EDIT: Verbesserung
    E2: Erledigt

  • Ich stehe grade ein bisschen auf'm Schlauch ...
    Ich hatte ja schonmal gefragt wie man die "original" Uhr abstellen kann. Mir wurde gesagt:
    TogglePlayerClock(playerid, 0);
    Das hatte auch zuerst geklappt, dachte ich ^^ Leider ist die Uhr immer noch hinter meiner neuen Textdrawuhr.


    Was gibt es noch für eine Möglichkeit?

  • Eigentlich nicht.

    Die besten Zitate aus dem sa-mp.de Forum

    Zitat

    -Wenn hier die sache nicht drine ist aber sie brachen es vlt kann ich es und dann mache ich es für sie!)

    Zitat

    Die Prüfungen(Fahrprüfungen), welche sehr realitätsnah entworfen sind, kann jeder Spieler allein absolvieren ohne auf andere angewiesen zu sein.

    Zitat

    Features: Ausgeprägte und leicht verständliche Serverregeln!

    Zitat

    aber wer dumme Antworten gibt bekommt eine Dumme zurück ... und chill mal dein Leben!

    Zitat

    Ich bin für Luca, wieso weiß ich nicht, aber der andere hat so hässlige Haare..

    Zitat

    Ich habe mir eig. immer nur die Castings angesehen, weil die da immer Runtergemacht wurden.

    Zitat

    Unknown processor
    übersetzt (by google translator)
    unbekannten Prozessor

    Zitat

    Verkaufe Minecraft Keys
    Nur für 20,-€ PaySafeCard.
    Unfassbar in mindestens 5 Minuten hast du dein Key!