[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
  • Hey,
    Wenn ich meine Datenbank öffne und dann auf Operation gehe kommt das
    Einige Fehler wurden auf dem Server entdeckt.
    Bitte schauen sie am Unteren ende dieses Fensters und dort steht.



    in .\tbl_operations.php#337
    Undefined variable: pack_keys


    Ich wollte mal fragen was das heißt ?

  • Wie bekomme ich das Zeichen weg ohne das die schwarze Box verschwindet?


    http://imgur.com/a/svcGD



    HintereBox[playerid] = CreatePlayerTextDraw(playerid,189.000000, 391.000000, "T");
    PlayerTextDrawBackgroundColor(playerid,HintereBox[playerid], 255);
    PlayerTextDrawFont(playerid,HintereBox[playerid], 0);
    PlayerTextDrawLetterSize(playerid,HintereBox[playerid], -3.519998, -30.200000);
    PlayerTextDrawColor(playerid,HintereBox[playerid], -1);
    PlayerTextDrawSetOutline(playerid,HintereBox[playerid], 1);
    PlayerTextDrawSetProportional(playerid,HintereBox[playerid], 0);
    PlayerTextDrawUseBox(playerid,HintereBox[playerid], 1);
    PlayerTextDrawBoxColor(playerid,HintereBox[playerid], 255);
    PlayerTextDrawTextSize(playerid,HintereBox[playerid], 466.000000, 400.000000);
    PlayerTextDrawHide(playerid, HintereBox[playerid]);
    PlayerTextDrawUseBox(playerid, HintereBox[playerid], 1);


    Wenn ich das "T" rausmache, dann verschwindet die gesamte Box

    Mit freundlichen Grüßen,
    Dachdecker

  • Hat jemand eine Lösung bzw. Ahnung warum die optionalen Parameter bei "sscanf2 2.8.2" nicht funktionieren?
    if(sscanf(params, "dD(-1)D(-1)", pin0, pin1, pin2)

    Was heißt sie funktionieren nicht? Wird nicht -1 benutzt, oder wird IMMER nur -1 genutzt?

  • Beitrag von Zim30 ()

    Dieser Beitrag wurde vom Autor gelöscht ().
  • do.de - Domain-Offensive - Domains für alle und zu super Preisen
  • Hey ich habe mal eine frage warum wird mir beides Geprintet ?


    Zur zeit der Abfrage sind meine Varriablen so
    pLeader = 1
    pMember = 0

    Code
    IsPlayerInFrak(playerid,fID)
    {
    if(pInfo[playerid][pLeader] == fID || pInfo[playerid][pMember] == fID)
    {
    printf("True");
    return 1;
    }
    printf("FALSE");
    return 0;
    }

    Nutzung

    Code
    if(!IsPlayerInFrak(playerid,1) || !IsPlayerInFrak(playerid,2) || !IsPlayerInFrak(playerid,3)) return SendClientMessage(playerid,ROT,"Du bist in keiner Fraktion und darfst diesen Befehl nicht nutzen.");
    
    
    oder 
    
    
    if(!IsPlayerInFrak(pID,0)) return SendClientMessage(playerid,ROT,"Der Spieler ist in einer Fraktion.");
  • if(!IsPlayerInFrak(playerid,1) || !IsPlayerInFrak(playerid,2) || !IsPlayerInFrak(playerid,3)) return SendClientMessage(playerid,ROT,"Du bist in keiner Fraktion und darfst diesen Befehl nicht nutzen.");
    Hier kann es durchaus sein, dass bis zu 3x geprintet wird.


    Korrekt sollte das aber so aussehen:


    if(!IsPlayerInFrak(playerid,1) && !IsPlayerInFrak(playerid,2) && !IsPlayerInFrak(playerid,3)) return SendClientMessage(playerid,ROT,"Du bist in keiner Fraktion und darfst diesen Befehl nicht nutzen.");
    Dennoch kann bis zu 3x geprintet werden, da du die Funktion ja 3x aufrufst.


    Oder so:
    if(IsPlayerInFrak(playerid,0)) return SendClientMessage(playerid,ROT,"Du bist in keiner Fraktion und darfst diesen Befehl nicht nutzen.");
    Dann wird es nur einmal aufgerufen.

  • Jeffry:
    Ok stimmt.
    Habe noch ein Problem wenn ich das so nutze kommt trotzdem ich in einer Fraktion bin nicht die Nachricht.
    Wenn ich das ! vorne wegnehme dann kommt immer die Nachricht ob ich in einer Fraktion bin oder nicht.

    Code
    if(!IsPlayerInFrak(pID,0)) return SendClientMessage(playerid,ROT,"Der Spieler ist in einer Fraktion.");
  • Ich glaube ich sollte heute aufhören zu scripten.
    Mir fällt nicht ein wie ich mit einem teil eines namens den ganzen Namen anzeigen lassen kann

    Du kannst sscanf benutzen wenn dus nicht zu umständlich haben magst.


    z.B.
    Ralf heißt der Spieler auf dem Server.
    Du gibst aber nur "Ra" ein, und nun soll er daraus den ganzen Namen finden:


    Code
    new pID, name[MAX_PLAYER_NAME+1];
    sscanf("Ra", "u", pID);
    GetPlayerName(pID, name, sizeof(name));

    Einmal editiert, zuletzt von Zim30 ()

  • Hey, wen ich 2 hacken eingebe wird der Hackvorgang: 30 nicht runtergezählt bleibt einfach stehn und der GameText verschwindet wider an was liegt das?

  • Du kannst sscanf benutzen wenn dus nicht zu umständlich haben magst.
    z.B.
    Ralf heißt der Spieler auf dem Server.
    Du gibst aber nur "Ra" ein, und nun soll er daraus den ganzen Namen finden:


    Code
    new pID, name[MAX_PLAYER_NAME+1];
    sscanf("Ra", "u", pID);
    GetPlayerName(pID, name, sizeof(name));

    Und wie mach ich das nochmal, wenn ich zB /id Edw eingebe und dann jeder Name der mit Edw anfängt auf gelistet wird?