[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

  • new Text3D:BizLabel[MAX_BIZ][3]
    ,Text3D:HausLabel[MAX_HAUS]
    ,Text3D:TotenLabel[MAX_TOTEN]
    ,Text3D:WarLabel[MAX_GWZONES][3]
    ,Text3D:BlitzerLabel[MAX_BLITZER]
    ,Text3D:buspriceinfo[MAX_VEHICLES]
    ,Text3D:taxipriceinfo[MAX_VEHICLES]
    ,Text3D:aDuty[MAX_PLAYERS]
    ,Text3D:fSCHULleher[MAX_PLAYERS]
    ,Text3D:eventveh3Dtext[MAX_EVENTVEHS]
    ,Text3D:adminveh3Dtext[MAX_ADMINVEHS]
    ,Text3D:TankenLabel[MAX_VEHICLES]
    ,Text3D:supmobil3Dtext[MAX_VEHICLES]
    ,Text3D:PBdeathtext[MAX_PLAYERS]
    ,Text3D:OfflineInfo3Dtext[MAX_OFFLINEPICKUPS]
    ,Text3D:GamblingLabel
    ,Text3D:AD3DText[4]
    ,Text3D:WeapLic3Dtext
    ,Text3D:Newspapertext[2]
    ,Text3D:VehicleMeldeText
    ,Text3D:EisenLagerLabel
    ,Text3D:Label_Elevator
    ,Text3D:Label_Floors[21]
    ,Text3D:ZollSchrankeLabel[MAX_ZOLL]
    ,Text3D:ParkSchrankeLabel[MAX_PARK]
    ,Text3D:Fraktionsbase3DText[MAX_FBASES][2]
    ,Text3D:SmarktLabel[MAX_SMARKETS]
    ,Text3D:SmartkWaffenLabel[MAX_SMARKETS][12]
    ,Text3D:KofferLabel[MAX_KOFFER]
    ,Text3D:AFKLabel[MAX_PLAYERS]
    ,Text3D:ReportLabel[MAX_PLAYERS]
    ,Text3D:garageLabel[MAX_GARAGES]
    ,Text3D:kartonLabel[MAX_KARTONS]
    ,Text3D:bot_name[16]
    ,Text3D:DrugLabel[MAX_DRUGS]
    ,PlayerText3D:UserText3D;

  • C:\Users\tobi\Desktop\Happy edit\gamemodes\reallife.pwn(11213) : error 059: function argument may not have a default value (variable "reset")
    C:\Users\tobi\Desktop\Happy edit\gamemodes\reallife.pwn(11214) : error 059: function argument may not have a default value (variable "reset")


    forward ext_CreateVehicleEx(vehicletype, Float:x, Float:y, Float:z, Float:rotation, color1, color2, respawn_delay, bool:reset=false);
    public ext_CreateVehicleEx(vehicletype, Float:x, Float:y, Float:z, Float:rotation, color1, color2, respawn_delay, bool:reset=false) return CreateVehicleEx(vehicletype, x, y, z, rotation, color1, color2, respawn_delay, reset);

  • So, diesmal will ich abfragen ob ein Spieler in der Nähe ist mit einer bestimmten Variable.
    Sprich if(IsPlayerInRangeOfPoint....
    und dann wenn dieser Spieler sagen wir die Variable pInfo[playerid][pBöse] == 1 hat


    Nur eben ohne das die Playerid dafür was machen muss (Taste drücken/Befehl eingeben etc).
    Weiß jemand ob das machbar ist?

  • Beitrag von Fernando_Jizuya ()

    Dieser Beitrag wurde gelöscht, Informationen über den Löschvorgang sind nicht verfügbar.
  • Ich wollte eine Abfrage erstellen aber leider spinnt es.


    Da habe ich einmal:
    forward SpielerinnaeheTextZwei(Float:radi, Float:x, Float:y, Float:z, string[],col1,col2,col3,col4,col5);
    und dann:
    SpielerinnaeheTextZwei(20.0, 2217.448242,-1146.404785,1025.796875, string2, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
    Beim Compilen kommt dann folgende Meldung:
    error 004: function "SpielerinnaeheTextZwei" is not implemented

  • @Jorska: Hast du auch das Public im Script ?


    public SpielerinnaeheTextZwei(Float:radi, Float:x, Float:y, Float:z, string[],col1,col2,col3,col4,col5)
    {
    return 1;
    }


    //edit bzw. wenn es eine Abfrage werden soll brauchst du kein forward sondern einen 'stock'
    Wie soll die Funktion den Funktionieren, bzw. was soll Sie machen ?


  • Was soll die Funktion genau können?

  • Hi,
    ich wollte Sonderzeichen aus einem String Entfernen lassen, klappt leider nicht ganz.


    Code:
    RemoveSpecialCharacter(text[])
    {
    print(text);
    for (new i = 0; i < strlen(text); i++)
    {
    if (strfind(text[i], "/", true) != -1) strdel(text[i], strfind(text, "/"), strfind(text[i], "/")+1);
    else if (strfind(text[i], "\", true) != -1) strdel(text[i], strfind(text, "\"), strfind(text[i], "\")+1);
    else if (strfind(text[i], """, true) != 1) strdel(text[i], strfind(text, """), strfind(text[i], """)+1);
    else if (strfind(text[i], "|", true) != -1) strdel(text[i], strfind(text, "|"), strfind(text[i], "|")+1);
    else if (strfind(text[i], "<", true) != -1) strdel(text[i], strfind(text, "<"), strfind(text[i], "<")+1);
    else if (strfind(text[i], ">", true) != -1) strdel(text[i], strfind(text, ">"), strfind(text[i], ">")+1);
    else if (strfind(text[i], "*", true) != -1) strdel(text[i], strfind(text, "*"), strfind(text[i], "*")+1);
    else if (strfind(text[i], ":", true) != -1) strdel(text[i], strfind(text, ":"), strfind(text[i], ":")+1);
    else if (strfind(text[i], "?", true) != -1) strdel(text[i], strfind(text, "?"), strfind(text[i], "?")+1);
    }
    print(text);
    return strlen(text);
    }


    Debug code:

    Code
    [22:00:45] AmiabLe v8 - | Levitate | // Das ist der richtige text
    [22:00:45] ibev   eiae|  // Das kommt am ende raus
  • RemoveSpecialCharacter(text[])
    {
    print(text);
    for (new i = 0; i < strlen(text); i++)
    {
    switch(text[i])
    {
    case '/', '?', '>':
    {
    strdel(text, i, i+1);
    i--;
    }
    }
    }
    print(text);
    return strlen(text);
    }


    Zum Case kannst du dann alle Zeichen hinzufügen, die entfernt werden sollen.



    @xCurry: Versuche es in einem leeren Filterscript, das sollte schon gehen.

  • Wenn es im leeren Filterscript geht, dann hast du in deinem anderen Code etwas falsch gemacht. Vergleiche beide Varianten mal und suche gegebenenfalls nach CallRemoteFunction, wo das überall steht, wo es im leeren Filterscript nicht steht.
    Nicht, dass du es irgendwo nochmals definiert hast.

  • Wenn es im leeren Filterscript geht, dann hast du in deinem anderen Code etwas falsch gemacht. Vergleiche beide Varianten mal und suche gegebenenfalls nach CallRemoteFunction, wo das überall steht, wo es im leeren Filterscript nicht steht.
    Nicht, dass du es irgendwo nochmals definiert hast.


    da benutze ich die Funktion schonmal


    stock GetCurrentStat(id,playerid)
    {
    return CallRemoteFunction("CurrentStat","dd",id,playerid);
    }