Suchergebnisse

Suchergebnisse 61-80 von insgesamt 180.

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • fehlermeldung :unknown varable

    cafaxo - - Technische Fragen

    Beitrag

    Hast du die Variable auch richtig initialisiert, bzw. ihr einen Wert zugewiesen?

  • Dafür dient die instance_nearest Funktion: GML-Quellcode (1 Zeile)

  • Ich habe dir schnell ein Skript geschrieben, welches Scores und Namen (jeweils Arrays) anhand der Punktezahl sortiert: rank_sort(scores, names); (Versteckter Text) Um die Erforderlichkeit eines Swaps zwischen der Namen der Spieler im Array zu ermitteln, reicht es aus, iteriert in einer for - Schleife, mit einem simplen if - Statement zuerst auf zwei gleiche Scores und danach auf die Prioritäten zu überprüfen. Doch dies bleibt der Übung halber dir überlassen. PS.: Eine Anwendung meines Skript kan…

  • Ach - ich hab mich wohl etwas verdacht. Du willst wissen ob hinter der eingegebenen IP Adresse auch ein gültiger Client/Server steckt, oder? Am verlässlichsten wär es einfach eine Nachricht mit einem Verfizierungscode von dem Client/Server der anderen Seite zu "echoen" lassen. Nun einfach warten (Timeout nicht vergessen!) ob die Nachricht richtig, falsch oder erst garnicht zurückgesendet wurde.

  • Die Funktion mplay_connect_status gibt einfach nicht zurück, ob die Verbindung erfolgreich herstellt worden ist, sondern lediglich welcher Verbindungstyp gerade verwendet wird. Ob die Verbindung erfolgreich war, lässt sich ganz einfach mit dem boolschen Rückgabewert der Funktion mplay_init_tcpip überprüfen: GML-Quellcode (7 Zeilen)

  • Entlang einer Seite laufen

    luky300 - - Technische Fragen

    Beitrag

    Mit der Kombination der Funktionen lengthdir_x und lengthdir_y lässt sich die "Geschwindigkeit" anhand eines vorgegebenen Winkels eigentlich ziemlich einfach ermitteln.

  • Ich frage mich (nicht das Problem betreffend), wieso du eigentlich sprite_create_from_screen zur Lösung deiner Problemstellung herangezogen hast. Könntest du bitte die erwünschte Funktion nochmals detaillierter ausführen, um dir möglicherweise eine elegantere Lösung darbieten zu können. Deine bisherigen Erläuterungen der Problemstellung würde der Lösung von MewX (siehe letzter Thread) wohl am besten entsprechen, nähmlich einfach die Position der Spielers (bzw. des Mauszeigers) und die dem Spiel …

  • Nach der Deaktivierung des Rahmens, musst du direkt vor dem Aufruf der Funktion sprite_create_from_screen den Bildschirm mit Hilfe screen_refresh neu zeichnen. Erst nach dem Aufruf dieser Funktion werden nähmlich jegliche Änderungen, die etwas mit Zeichnen zu tun haben "aktualisiert" und so "verschwindet" dein Rahmen Objekt erst danach aus der Bildfläche.

  • Dies ist ein bereits bekannter Bug in der neuesten Game Maker Version 8.1.141. Die Funktion display_set_all darf nicht mehr in einem Create Event ausgeführt werden, jedoch stellt die Ausführung in einem Room Start Event den derzeit einfachsten Workaround dar.

  • Ich hab dir schnell ein Skript geschrieben, welches die Ähnlichkeit zweier Sprites zurückgibt. Der minimale Rückgabewert "0" bedeutet das die zwei Sprites völlig identisch und der maximale Rückgabewert "1" das sie völlig verschieden sind. Um den Ausschnitt eines Sprites zu prüfen, einfach schnell ein Surface erstellen, mit draw_sprite_part den Ausschnitt des Sprites darauf zeichnen und mit sprite_create_from_surface den daraus resultierenden Sprite meinem Skript übergeben. sprites_get_similiarit…

  • Da dein ursprünglicher Aufruf des Skritps lediglich den Wert übergibt, wäre die einfachste Lösung dies: GML-Quellcode (3 Zeilen) GML-Quellcode (3 Zeilen) bzw. in deinem Fall: GML-Quellcode (3 Zeilen)

  • Objecte umranden lassen

    luky300 - - Technische Fragen

    Beitrag

    Dies wäre eine elegantere Variante: GML-Quellcode (9 Zeilen) Wenn du etwas mehr Genauigkeit erwünscht, (erkennbar an den runden/eckigen Kanten) einfach die Zahl der Iterationen der for - Schleife, durch die Verminderungen des Summanden wessen per Iteration der Variable i hinzugefügt wird, erhöhen. Von Vorteil wäre wahrscheinlich auch, das Ganze in ein Skript zu packen. Einen Abstand zwischen dem Sprite und der Outline in einer zufriedenstellenden Qualität herzustellen ist meines Wissen nach auss…

  • Einfach mit der Funktion point_direction(x1, y1, x2, y2) den Winkel zwischen dem zu überprüfenden Objekt und dem Spieler berechnen, und mit einer einfachen (if-) Kondition das Objekt je nach Ergebnis deaktivieren, aktivieren oder unverändert belassen.

  • Ein paar Fragen [Sammelpost]

    luky300 - - Technische Fragen

    Beitrag

    1.) folgende Funktion wäre hier ratsam: GML-Quellcode (1 Zeile) Dies gibt die ID der nähesten Instanz eines Objekts zurück. Über diese lässt sich ganz einfach auf die Koordinaten zugreifen. 2.) Da die Erweiterung GMThreads nicht mehr mit Game Maker 8.1 funktioniert, bleibt nur noch eine Lösung: Du kannst immer zwischen dem Laden zweier Resourcen Stücke von Code ausführen, was aber für Animationen zum Beispiel viel zu Langsam wäre, doch z.B. der Ladefortschritt ließe sich anzeigen. Ich empfehle z…

  • Komplexe Abfrage einfach machen

    luky300 - - Technische Fragen

    Beitrag

    Ich versuche es dir Schritt für Schritt zu erklären. GML-Quellcode (1 Zeile) Dies deklariert die Variablen size, index_end und i lokal in unserem Skript. GML-Quellcode (2 Zeilen) Als nächstes erfassen wir mit dieser einfachen while Schleife die Größe des mitgegebenen Arrays. Die Variable size wird dabei hochgezählt, bis im Aufruf unseres Arrays kein Wert mehr (false) zurückgegeben wird. GML-Quellcode (3 Zeilen) Da alle Parameter, ausgenommen das zu überprüfende Array optional sind, setzt dieses …

  • Komplexe Abfrage einfach machen

    luky300 - - Technische Fragen

    Beitrag

    Also ich würde die Waffen in ein Array reinpacken und dann folgendes, von mir aus dem Kopf verfasstes Skript verwenden: GML-Quellcode (27 Zeilen) Kurz gesagt, es iteriert alle Werte in deinem Array durch und checkt obs die Statements erfüllt. Es gibt dann den nächsteren Index der diese erfüllt zurück. Wenn Erkärung erwünscht, einfach nachfragen.

  • Wenn du die notwendigen Grundbegriffe verstanden hast, und dir verständlicherweise nicht mehr mit dem WinAPI Kram herumschlagen willst, empfehle ich einfach mal eine Idee für ein eigenes Projekt zu entwickeln. Um dabei möglichst platformunabhängig zu bewegen sollte man beim Implementieren vorzugsweise auf die Standart Bibliotheken setzen. Um beim Implementieren nicht unzälige Male das Rad neu zu erfinden, sollte man sich im Internet die Passenden Open Source Bibliotheken suchen. Dabei solltest d…

  • Also so ein "Variablenverbund" gibt es im Game Maker sehr wohl, anstatt verschiedener Typen wie class, enum, struct usw... beschränkt sich hier jedoch alles ausschließlich auf Objekte. Als Beispiel erstelle man ein Objekt "msgcontrl". In jenem Objekt lege man standartmäßig, beispielsweise im Create Event einige lokale Variablen fest. Diese Variablen kann man in anderen Objekten mit der simplen Syntax "msgcontrl.var1" (hier als Beispiel var1) auslesen bzw. verändern. @famous: Ich bin zwar kein Mo…

  • Hardware ID auslesen

    luky300 - - Technische Fragen

    Beitrag

    Zu der Software Piraterie hat Notch mal einen sehr interessanten Artikel verfasst: notch.tumblr.com/post/1121596044/how-piracy-works BITTE glaub ja nicht, irgendeine solche Verifizierung wär vollkommen sicher. Sehe es besser ein und nutze die Zeit, neue Features (usw...) in dein Spiel einzubauen, anstatt 5min eines Dummköpfchen zu vergeuden, der Ahnung vom Disassemlen hat.

  • Zuerst muss man dazu wissen, dass GM-Spiele gar nicht richtig kompiliert werden. Nach meinem Wissen, werden beim "Kompilieren" eines GM-Spiels, einfach Codes und Ressourcen verschlüsselt in die exe gepackt. Dazu kommt auch noch der Interpreter. Dieser führt, ähnlich wie .Net Programme, den Code beim Starten eines Spiels in Echtzeit aus. Für einen Decompiler, also eigentlich "Unpacker", müsste man nur die Verschlüsselung analysieren und die Struktur der exe herausfinden. Das Problem dabei ist nic…