[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,


    Habe folgendes Problem


    wen ich eins wähle Funktioniert das aber wen ich die 0 wähle erscheint der Dialog wieder?


  • Hey,


    Ich habe kurz eine frage mir wird beim spawnen die Message doppelt ausgegeben.
    Das Heißt wen ich spawne kommt die Message doppelt.


    -> Beispiel:



    SendClientMessage(playerid, COLOR_WHITE, "{8D8DFF}Der Müll staut sich bis an die Decke. | Du spawnest mit wenig Leben {ED5400}(-90){8D8DFF}.");
    SendClientMessage(playerid, COLOR_WHITE, "{8D8DFF}Der Müll staut sich bis an die Decke. | Du spawnest mit wenig Leben {ED5400}(-90){8D8DFF}.");


    Diese Nachricht erfolg beim spawnen Doppelt.
    Spawne ich den Spieler per Command bekommt er dies nur einmal.
    Connectet er und spawnt danach wird diese Message zweimal ausgegeben.


    Folgende Message ist betroffen:






  • Abgesehen davon, dass dein Code nur so vor Redundanz und Unübersichtlichkeit strotzt, liegt der Fehler vermutlich daran, dass du einfach 2x gespawnt wirst.


    Nach OnPlayerRequestClass wird er vermutlich gespawnt, das musst du abfangen, damit das nicht 2x aufgerufen wird.

    ast2ufdyxkb1.png


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

  • Moin!


    Ich habe in meinem Geldsystem Tausendertrennpunkte. Ist es irgendwie möglich, den Tausendertrennpunkt erst dann anzeigen z lassen, wenn es wirklich 1.000 sind? Momentan sieht es so aus bei zb. -100: wenn ich jemand Geld wegnehme: Spieler xy hat dir -.100 Euro gegeben.


    MfG


    Edit: So sind die Tausenderpunte definiert:

    Code
    stock FormatNumber(iNum, const szChar[] = ".")
    {
    	new string[16];
    	format(string, sizeof(string), "%d", iNum);
    	for(new iLen = strlen(string) - 3; iLen > 0; iLen -= 3)
    	{
    		strins(string, szChar, iLen);
    	}
    	return string;
    }
  • So sind die Tausenderpunte definiert:

    Schreibs mal so:


    C
    stock FormatNumber(geld, const szChar[] = ".")
    {
        new str[24],i;
        valstr(str,geld),i=(geld > 0) ? strlen(str)-3 : strlen(str)-4;
        for(; i>0; i-=3) strins(str,szChar,(geld > 0) ? i : i+1,sizeof(str));
        return str;
    }

    ast2ufdyxkb1.png


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

  • do.de - Domain-Offensive - Domains für alle und zu super Preisen
  • jedoch wird dieses nach einem rejoin nicht mehr angezeigt

    Dann machst du irgendwas falsch.


    Entweder du attachst es nochmal mit einer falschen id für den spieler oder du löschst es beim connect/disconnect.


    Tatsache ist, dass es serverseitig gesteuert wird, somit hat reconnecten keinen Einfluss auf das Label :)

    ast2ufdyxkb1.png


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

  • So wird es erstellt

    Code
    VehicleInfo[FrakFahrzeugInfo[i][frakfahrzeug_VehicleID]][KennungObj] = Create3DTextLabel(string, WEISS, 0, 0, 0, 10,-1,0);

    So wird es attached


    Code
    Attach3DTextLabelToVehicle(VehicleInfo[FrakFahrzeugInfo[i][frakfahrzeug_VehicleID]][KennungObj], FrakFahrzeugInfo[i][frakfahrzeug_VehicleID], -pos[0]/2.23, -pos[1]/2.23, 0.1);
  • Edit: Sobald man sich ausloggt, wird die Kennung destroyed

  • do.de - Domain-Offensive - Domains für alle und zu super Preisen