[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
  • Beitrag von Syno ()

    Dieser Beitrag wurde vom Autor aus folgendem Grund gelöscht: Kaliber war schneller ().
  • Hi, warum wird die zweite Nachricht nicht abgesendet :hm:
    ( SendClientMessage(playerid,-1,"Use {FF0000}/cmds{FFFFFF} to view all commands & {FF0000}/ach {FFFFFF} to view your achievements! Feel free to visit our forum! )



    new cQuery[528 + (MAX_PLAYER_NAME * 2)];



    if(playerspawned[playerid] == true)
    {
    format(cQuery, sizeof(cQuery),"Welcome {%06x}%s ! ", GetPlayerColor(playerid) >>> 8, GetName(playerid));
    SendClientMessage(playerid,-1,"Use {FF0000}/cmds{FFFFFF} to view all commands & {FF0000}/ach {FFFFFF} to view your achievements! Feel free to visit our forum! www.{FF0000}LnDSquad{FFFFFF}.com");
    SendClientMessage(playerid,-1, cQuery);
    playerspawned[playerid] = false;
    }


    Mit freundlichen Grüßen
    JustMe.77 8)

  • Moin.


    @Jeffry


    Ich möchte eine Funktion auf ihre Richtigkeit überprüfen.
    Allerdings ist mir bekannt wie das Resultalt aussehen soll.


    Den Test möchte ich hierfür einfach über die Main ausführen lassen. Doch dies geht nicht. Zumindest greift pawn.exe diese nicht.


    Wie bekomme ich das hin? Ich habe nicht gerade Lust für alles immer den Server anzumscheißen.
    Manches sind ja nur simple Funktionen und benötigen einfache Parameter Werte.

  • Ich verstehe nicht ganz worauf du hinaus willst.
    Willst du einen Code testen, ohne den Server zu starten? Das dürfte nicht ohne weiteres möglich sein, da die amx Dateien vom samp-server "abgespielt" werden.


    Aber du kannst dir einen zweiten Server-Ordner anlegen, in dem du einen Test-Gamemode hast, den du dann zum Ausprobieren von solchen Funktionen nutzen kannst.

  • Naja, es gibt ja in der Pawn.exe IDE auch die Option "Compile/Run".
    So wie ich das verstehe, führt das die Hauptfunktion aus.
    Genau wie bei normalen Anwendungen. Da gibt es ja auch immer eine Main Funktion. Die Funktion, die zu aller erst ausgeführt wird. Und genau hier will ich ansetzen und mir ein Test schreiben.


    EDIT:
    Ja gut, das mit dem Gamemode und da drin ist auch eine Option.

  • Naja, es gibt ja in der Pawn.exe IDE auch die Option "Compile/Run".

    Bis auf dass dieser Button die amx Datei direkt auf C:\ ablegt ist mir davon keine besondere Funktion bekannt.
    Ein direktes Ausführen geht mit pawno nicht. pawno ist vom Können her nicht vergleichbar mit anderen IDEs wie Visual Studio, Eclipse, NetBeans, ... .


    DIe main() Funktion wird durch den Gamemode beim Start des samp-server.exe's aufgerufen, vor OnGameModeInit.

  • Der Code mit dem gettime muss ja aber auch in einem Timer stehen, der gleich oft oder viel öfter aufgerufen wird. Das wäre nur eine extra Arbeit, da die Prüfung ob die Zeit vorbei ist durch den Timer ja ohnehin geregelt ist (der wird ja nicht vorher aufgerufen).

  • Sollte man, wenn man Textdraws erstellt die niedrigste Auflösung nehmen oder die höchste? Kriege, wenn ich die Auflösungen änder immer hässliche lücken die bei der Auflösung bei der ich die Textdraws erstellt habe nicht da waren..


    Mit freundlichen Grüßen
    JustMe.77 8)

  • Erstellst du sie mit der kleinsten Auflösung, dann passen sie bei der größten nicht, und andersherum.
    Prinzipiell wäre es am besten, ist eben ein ziemlicher Aufwand, wenn man den Spieler beim Registrieren fragt, welche Auflösung er nutzt, und dann entsprechend der Auflösung das eine oder das andere Textdraw anzeigt (hohe oder niedrige Auflösung).
    Man müsste dann eben jedes Textdraw doppelt erstellen, einmal auf der höchsten und einmal auf der niedrigsten Auflösung. Das würde dann wahrscheinlich alles abdecken.