[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
  • Ich weiß es auch nicht ganz :)
    Ich denke du musst new name [MAX_players];
    Über deinen Code von vorhin schreiben.

  • Wo ist der Fehler darin?


    Schreibe den Code so:
    GetPlayerName(playerid,name,sizeof(name));
    if(!strcmp(name,"BANG3R",true))
    {
    //Name = BANG3R
    }
    Strings vergleicht man mit strcmp. :good:


    Mencent :thumbup:

  • Beitrag von Apokrate ()

    Dieser Beitrag wurde gelöscht, Informationen über den Löschvorgang sind nicht verfügbar.
  • Beitrag von Apokrate ()

    Dieser Beitrag wurde gelöscht, Informationen über den Löschvorgang sind nicht verfügbar.
  • tvID[playerid] = -1;
    tvbox[playerid] = CreatePlayerTextDraw(playerid,500.000, 250.000, "usebox");
    PlayerTextDrawUseBox(playerid,tvbox[playerid],1);
    PlayerTextDrawSetProportional(playerid,tvbox[playerid],1);
    PlayerTextDrawBoxColor(playerid,tvbox[playerid],0x00000067);
    PlayerTextDrawBackgroundColor(playerid,tvbox[playerid],0x00000067);
    PlayerTextDrawTextSize(playerid,tvbox[playerid],640,480);
    PlayerTextDrawLetterSize(playerid,tvbox[playerid],1.000000,-5.000000);
    PlayerTextDrawAlignment(playerid,tvbox[playerid],0);


    Irgendwie ist bei mir der Text, der angezeigt werden soll auf dem Kopf. Habe ich hier eventuell irgendwo einen Fehler drin, den ich nicht finde? xD

  • Hat wer eine Idee wie ich Offlinearrest per dini machen könnte?
    Hab schonmal so das er ein Pickup und ein Label da erstellt wo er Offline gegangen ist ist.

    Spoiler anzeigen
    new Float:x, Float:y, Float:z;
    if(WantedLevel[playerid] >= 1)
    {
    GetPlayerPos(playerid, x, y, z);
    CreatePickup(1247, 4, x, y, z, GetPlayerVirtualWorld(playerid));
    Create3DTextLabel("Tippe /Offline Arrest",COLOR_YELLOW,x,y,z,7.0,0,0);
    }
    und hier was passiert wenn er ins Pickup rein läuft:
    if(pickupid == 1247)
    {
    if(IsACop(playerid))
    {
    SendClientMessage(playerid,F_Gray,"Du hast das Pickup erreicht.");
    }
    else
    {
    SendClientMessage(playerid,F_Gray,"Du bist kein Beamter.");
    }
    }

    Brauche Anstoß

  • do.de - Domain-Offensive - Domains für alle und zu super Preisen
  • In deiner Datei einfach nur noch einen Wert speichern, ob jemand ins Pickup gelaufen ist (0 = nein, 1 = ja)
    Sollte der Wert 1 sein, wird er beim Connecten direkt ins Gefängnis gepackt, fertig.


    Mein CS:GO Server: 62.75.168.39:27016


    Ich bin so hungrig, dass ich vor lauter Durst nicht weiß, was ich rauchen soll - so müde bin ich!
    Freedom is just another word for 'Nothing left to lose'

  • Du musst dem PickUp nur einen Spieler zuweisen (über den Namen z.B.)
    Also ein Array mit PickUpId und zugehörigem Namen.


    Mein CS:GO Server: 62.75.168.39:27016


    Ich bin so hungrig, dass ich vor lauter Durst nicht weiß, was ich rauchen soll - so müde bin ich!
    Freedom is just another word for 'Nothing left to lose'

  • Ok ich mach das so das im Label Name und Wantedzahl steht und dann mit Dini in die Dateireinschreiben.
    Aber beim label kommt ein Fehler:
    new Float:x, Float:y, Float:z,name[MAX_PLAYER_NAME],string[128];
    if(WantedLevel[playerid] >= 1)
    {
    GetPlayerName(playerid, name, sizeof(name));
    GetPlayerPos(playerid, x, y, z);
    CreatePickup(1247, 4, x, y, z, GetPlayerVirtualWorld(playerid));
    format(string,sizeof,(string),"Tippe Spieler: %s | Wantedlevel: %d",name, WantedLevel[name]);//Fehler Zeile
    Create3DTextLabel(string,COLOR_YELLOW,x,y,z,7.0,0,0);
    }



    Weißt du was falsch ist ..

  • Guten Abend/Nachmittag liebe Leute,
    ich habe mal kurz eine Frage ob man irgentwie den Fehler vom Streamer beheben kann, dass manchmal das PickUp sowie das Label nicht gelöscht wird.
    Ich habe mir bei meinem Befehl schon jeweils Printen lass welche ID's ausgegben werden und es hat immer übereingestimmt jedoch wurde nicht immer beides gelöscht.

  • if(strcmp(cmd,"/wiederbeleben",true) == 0)
    {
    if(IsPlayerConnected(playerid))
    {
    tmp = strtok(cmdtext, idx);
    if(!strlen(tmp))
    {
    SendClientMessage(playerid,F_Gray,"Befehl: /wiederbeleben [SpielerID/Name]");
    return 1;
    }
    new para1;
    para1 = ReturnUser(tmp);
    if(PlayerInfo[playerid][pMember] >= 4 || PlayerInfo[playerid][pLeader] >= 4)
    {
    if(IsPlayerConnected(para1))
    {
    if(para != INVALID_PLAYER_ID)
    {
    new Float:x, Float:y, Float:z,string[128];
    GetPlayerPos(para1, x, y, z);
    if(IsPlayerInRangeOfPoint(2, x, y, z)
    {
    PlayerInfo[para1][pTot] = 0;
    SetPlayerSpawn(para1);
    format(string,sizeof,(string),"Du hast Spieler %s wiederbelebt.",para1);//31818
    SendClientMessage(playerid,COLOR_GREEN,string);
    GivePlayerMoney(playerid, 600);
    }
    else
    {
    SendClientMessage(playerid,F_Gray,"Du bist nicht beim Opfer.");
    }
    }
    }
    }
    else
    {
    SendClientMessage(playerid,F_Red,"Du bist kein Sanitäter!");
    }
    }
    return 1;
    }


    Fehlercode:

  • new pname[MAX_PLAYER_NAME];GetPlayerName(para1, pname, sizeof(pname));
    format(string,sizeof(string),"Du hast Spieler %s wiederbelebt.",pname);//31818


    So wird auch der Name richtig angezeigt.

    > 85.214.137.30:7777 <