[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
  • Habe da immer noch so mein Problem "sHouse" ist für die Staatsfraktion "gHouse" Ist für die Gangs.


    So aber "Staatsfraktionen haben ja im Interior den eigenen Ausruestungspoint.
    damit kommt das Script nicht klar das er es nicht annimmt! wie schreib ich das jetzt am besten um.


    -> was ich mir gedacht habe das ich das Shouse und ghouse lösche und jede base den eingang save und da die kords angebe wäre das einfacher oder mehr aufwand?

    Ja es wird aufwendiger da es umfangreich ist und schon nicht mehr zu kleinen scripting passt ^^


  • C:\Users\Medion\Desktop\Daten Medion\GTA SA Datein\GTA Scripts\German\gamemodes\German.pwn(25786) : error 017: undefined symbol "tmp"
    C:\Users\Medion\Desktop\Daten Medion\GTA SA Datein\GTA Scripts\German\gamemodes\German.pwn(25786) : error 017: undefined symbol "strtok"
    C:\Users\Medion\Desktop\Daten Medion\GTA SA Datein\GTA Scripts\German\gamemodes\German.pwn(25787) : error 017: undefined symbol "tmp"
    C:\Users\Medion\Desktop\Daten Medion\GTA SA Datein\GTA Scripts\German\gamemodes\German.pwn(25792) : error 017: undefined symbol "giveplayerid"
    C:\Users\Medion\Desktop\Daten Medion\GTA SA Datein\GTA Scripts\German\gamemodes\German.pwn(25792) : error 017: undefined symbol "ReturnUser"
    C:\Users\Medion\Desktop\Daten Medion\GTA SA Datein\GTA Scripts\German\gamemodes\German.pwn(25793) : error 017: undefined symbol "tmp"
    C:\Users\Medion\Desktop\Daten Medion\GTA SA Datein\GTA Scripts\German\gamemodes\German.pwn(25793) : error 017: undefined symbol "strtok"
    C:\Users\Medion\Desktop\Daten Medion\GTA SA Datein\GTA Scripts\German\gamemodes\German.pwn(25794) : error 017: undefined symbol "tmp"
    C:\Users\Medion\Desktop\Daten Medion\GTA SA Datein\GTA Scripts\German\gamemodes\German.pwn(25799) : error 017: undefined symbol "tmp"
    C:\Users\Medion\Desktop\Daten Medion\GTA SA Datein\GTA Scripts\German\gamemodes\German.pwn(25800) : error 017: undefined symbol "giveplayer"
    C:\Users\Medion\Desktop\Daten Medion\GTA SA Datein\GTA Scripts\German\gamemodes\German.pwn(25801) : error 017: undefined symbol "GetDistanceBetweenPlayers"
    C:\Users\Medion\Desktop\Daten Medion\GTA SA Datein\GTA Scripts\German\gamemodes\German.pwn(25803) : error 017: undefined symbol "giveplayerid"
    C:\Users\Medion\Desktop\Daten Medion\GTA SA Datein\GTA Scripts\German\gamemodes\German.pwn(25808) : error 017: undefined symbol "giveplayerid"
    C:\Users\Medion\Desktop\Daten Medion\GTA SA Datein\GTA Scripts\German\gamemodes\German.pwn(25818) : error 017: undefined symbol "giveplayerid"
    C:\Users\Medion\Desktop\Daten Medion\GTA SA Datein\GTA Scripts\German\gamemodes\German.pwn(25821) : error 017: undefined symbol "giveplayerid"
    C:\Users\Medion\Desktop\Daten Medion\GTA SA Datein\GTA Scripts\German\gamemodes\German.pwn(25821) : error 017: undefined symbol "giveplayer"
    C:\Users\Medion\Desktop\Daten Medion\GTA SA Datein\GTA Scripts\German\gamemodes\German.pwn(25821) : error 029: invalid expression, assumed zero
    C:\Users\Medion\Desktop\Daten Medion\GTA SA Datein\GTA Scripts\German\gamemodes\German.pwn(25821) : fatal error 107: too many error messages on one line

  • ...kopieren ohne Gehirn funktioniert halt nicht immer :rolleyes:


    ast2ufdyxkb1.png


    Leute, lernt scripten und versucht mal lieber etwas selber zu schreiben, als es aus einem GF zu kopieren. :S

  • Hey,


    Wen ein anderer User /service macht kann ich den Service nicht annehmen kommt der spieler benötigt kein Wheelman warum?

  • Huhu,


    wie ist es mögliche eine längere Zahl mit Punkten zu versehen?


    Zum Beispiel:



    5000000 ( 5 Millionen )


    Zu: 5.000.000


    Und dies dann wiederzugeben per Stock oder so..

    Mit freundlichen Grüßen,


    Keslo

  • AddThousandsSeparators(number, const separator[] = ",")
    {
    new output[15];
    format(output, sizeof(output), "%d", number);

    for(new i = strlen(output) - 3; i > 0 && output[i-1] != '-'; i -= 3)
    {
    strins(output, separator, i);
    }

    return output;
    }

  • Hey,


    Ich versuche derzeit ein /hacken befehl zu machen nur Funktioniert er nicht richtig.




    Wheelman = GangZoneCreate(1905.4333,-1342.0233,1174.9628,-1888.9697); // Die Zone



    Code
    stock IsPlayerInArea(playerid, Float:MinX, Float:MinY, Float:MaxX, Float:MaxY)
    {
    	new Float:X, Float:Y, Float:Z;
        GetPlayerPos(playerid, X, Y, Z);
        if(X >= MinX && X <= MaxX && Y >= MinY && Y <= MaxY)
        {
       	return 1;
        }
    	return 0;
    }

    Der stock für IsPlayerInArea


    wen ich jetzt /hacken eingebe funktioniert der GameTextForPlayer nicht er zählt 1 sekunde runter dann ist der Gametext weg.
    So normal sollten nach 30 Sekunden 1 Wanted gelöscht werden für den "Spieler der den Wheelman" benötigt.
    Aber das Funktioniert auch nicht weil er mir das Ganze sendet.??
    Hat da jemand eine idee wie man das ändern könnte

  • Probier mal so. Rück das aber richtig ein, bekomme das im Browser nicht so gut hin.


  • Probier mal so. Rück das aber richtig ein, bekomme das im Browser nicht so gut hin.

    werde ich versuchen.



    forward WantedHacken(playerid);
    public WantedHacken(playerid)
    {
    new pID, string[128], wanteds;
    OnWantedChange(pID, Spieler[pID][pWanteds], (Spieler[pID][pWanteds]-wanteds));
    Spieler[pID][pWanteds] -= wanteds;
    if(Spieler[pID][pWanteds] <= 0)Spieler[pID][pWanteds] = 0;
    UpdateWantedTD(pID);
    format(string, sizeof(string), "Dein aktuelles Wanted Level: %d", Spieler[pID][pWanteds]);
    SendClientMessage(pID, COLOR_YELLOW, string);
    Spieler[playerid][pWheelTime] = 0;
    return 1;
    }


    das ist mein Timer, normal sollte er nach 30 Sekunden Einen Wanted löschen wen der Wheelman hackt in der Zone.
    Aber leider klappt das irgendwie nicht die Wanteds bleiben gleich

  • Wenn das im compiler steht, funktionieren die Befehle nicht mehr... but i dont know why


    Was ist das Problem?

    Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase



    Header size: 5060 bytes
    Code size: 99552 bytes
    Data size: 149800 bytes
    Stack/heap size: 16384 bytes; estimated max. usage=4529 cells (18116 bytes)
    Total requirements: 270796 bytes

    Mit freundlichen Grüßen,
    Dachdecker

  • do.de - Domain-Offensive - Domains für alle und zu super Preisen
  • Wenn das im compiler steht, funktionieren die Befehle nicht mehr... but i dont know why


    Was ist das Problem?
    Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhaseHeader size: 5060 bytesCode size: 99552 bytesData size: 149800 bytesStack/heap size: 16384 bytes; estimated max. usage=4529 cells (18116 bytes)Total requirements: 270796 bytes

    Kleiner Tipp:


    #pragma dynamic 10000


  • Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase



    Hast du das nicht mehr stehn was unnötig ist ->




    • Header size: 5060 bytes
    • Code size: 99552 bytes
    • Data size: 149800 bytes
    • Stack/heap size: 16384 bytes; estimated max. usage=4529 cells (18116 bytes)
    • Total requirements: 270796 bytes
  • Okei, aber wieso kommt das erst und wieso funktionieren die Befehle dann nicht mehr?

    Mit freundlichen Grüßen,
    Dachdecker

  • Habe hier nochmal mein kleines FS was ich noch anpassen muss


    Mir ist 1. aufgefallen:
    Warum finden voids in PAWN bzw. in SA-MP Scripts nie Verwendung? Sind doch super praktisch.
    Warum wird der Iterator in der for Schleife in SAMP Scripts immer mit "new" erstellt, und nicht wie bei mir mit for(int bla bla ) statt for(new zahl) ?

  • Was ist das Problem?

    Dein Stack ist nur begrenzt groß.


    Wenn du Speicher in einer Funktion (auch ein Befehl steht in einer Funktion) reservierst mit z.B. new test[5000]; werden 5000*4 Bytes im Stack alloziiert. Und dann kann es zu einer Stack / Heap Kollission kommen.
    Deshalb #pragma dynamic was deinen Stack & deinen Heap um eine bestimmte Anzahl an Bytes vergrößert :)


    Allerdings sollte das nicht notwendig sein...schau doch mal wo du große Arrays stehen hast..eventuell hast du sie unnötig groß gemacht bzw dich um eine 0 oder so vertippt ^^


    Warum finden voids in PAWN bzw. in SA-MP Scripts nie Verwendung? Sind doch super praktisch.

    Es gibt weder void noch int in Pawn.


    Das führt er bei dir nur aus, weil es vom Compiler ignoriert wird, da das in der Sektion #if defined filterscript steht und dies nirgends definiert wurde, also wird der komplette Codeblock ignoriert ^^


    Zudem gibt es leider nicht direkte Pointer in Pawn ^^


    ast2ufdyxkb1.png


    Leute, lernt scripten und versucht mal lieber etwas selber zu schreiben, als es aus einem GF zu kopieren. :S