Benutzer-Werkzeuge

Webseiten-Werkzeuge


scripting:tutorials:level1:basis_script

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen der Seite angezeigt.

Link zu der Vergleichsansicht

Beide Seiten, vorherige ÜberarbeitungVorherige Überarbeitung
Nächste Überarbeitung
Vorherige Überarbeitung
scripting:tutorials:level1:basis_script [2023/07/17 15:07] fritz_98scripting:tutorials:level1:basis_script [2024/05/13 14:31] (aktuell) fritz_98
Zeile 3: Zeile 3:
 Um für dieses Tutorial einen einheitlichen Ausgangspunkt zu haben, reduzieren wir zuerst das Standardskript auf das minimal Notwendige. Alle Veränderungen am Skript nehmen wir mit Visual Studio Code vor. Im Mapeditor ist zwar ein Texteditor enthalten, der eignet sich aber nur für das Sichten des Skripts, nicht zum Bearbeiten. Um für dieses Tutorial einen einheitlichen Ausgangspunkt zu haben, reduzieren wir zuerst das Standardskript auf das minimal Notwendige. Alle Veränderungen am Skript nehmen wir mit Visual Studio Code vor. Im Mapeditor ist zwar ein Texteditor enthalten, der eignet sich aber nur für das Sichten des Skripts, nicht zum Bearbeiten.
  
-Dazu wird im ersten Schritt das automatisch generierte Skript aus dem Editor exportiert (Datei -> Skript bearbeiten, dann Skript -> Exportiere Skript...).+Dazu wird im ersten Schritt das automatisch generierte Skript aus dem Editor exportiert (Datei -> Skript bearbeiten, dann Skript -> Exportiere Skript...). Wir exportieren das Skript in das Verzeichnis ''C:\Scripts\'', das wir im [[ scripting:tutorials:visual_studio |Artikel zu Visual Studio Code]] angelegt haben.
  
 Im exportierten Skript können nun abhängig davon, was du im Skriptassistent ausgewählt hast, einige Funktionen bereits mit Inhalt befüllt sein. Diesen werden wir dennoch zunächst rausnehmen und dann Schritt für Schritt wieder aufbauen. Konkret bedeutet das, dass folgende Funktionen leer sein müssen: Im exportierten Skript können nun abhängig davon, was du im Skriptassistent ausgewählt hast, einige Funktionen bereits mit Inhalt befüllt sein. Diesen werden wir dennoch zunächst rausnehmen und dann Schritt für Schritt wieder aufbauen. Konkret bedeutet das, dass folgende Funktionen leer sein müssen:
Zeile 20: Zeile 20:
 Warum tun wir das? Einige dieser automatischen Funktionen werden schlicht nicht benötigt oder können einfacher ausgedrückt werden. Andere, wie zum Beispiel die //Quest Information// ist nur sehr eingeschränkt benutzbar, da man mit ihr nur eine einzige Quest anzeigen kann. Zu guter Letzt kann beispielsweise die automatische Niederlagebedingung sogar für Fehler sorgen, da sie den von uns im Editor gesetzten Namen für die Burg des Spielers überschreibt. Warum tun wir das? Einige dieser automatischen Funktionen werden schlicht nicht benötigt oder können einfacher ausgedrückt werden. Andere, wie zum Beispiel die //Quest Information// ist nur sehr eingeschränkt benutzbar, da man mit ihr nur eine einzige Quest anzeigen kann. Zu guter Letzt kann beispielsweise die automatische Niederlagebedingung sogar für Fehler sorgen, da sie den von uns im Editor gesetzten Namen für die Burg des Spielers überschreibt.
  
-Dabei ist es sehr einfach, alle diese Funktionalitäten selbst zu definieren, weshalb wir das in den nächsten Kapiteln auch tun werden. Nachdem du das komplette Skript "aufgeräumthast, sollte es so aussehen:+Dabei ist es sehr einfach, alle diese Funktionalitäten selbst zu definieren, weshalb wir das in den nächsten Kapiteln auch tun werden. Wie beim Kochen "weiß man dann, was drin ist". Nachdem du das komplette Skript aufgeräumt hast, sollte es so aussehen:
  
 <code lua> <code lua>
Zeile 80: Zeile 80:
 werden in jedem Skript benötigt und müssen deshalb immer erhalten bleiben! werden in jedem Skript benötigt und müssen deshalb immer erhalten bleiben!
  
-FIXME Fertiges Skript dann hier hochladen!+**Wichtig**: Der Editor schreibt beim Exportieren des Skripts immer das Sonderzeichen ''NUL'' ganz unten in die Datei. Das musst du in jedem Fall entfernen! 
 + 
 +Zum Mitlesen in den folgenden Kapiteln findest du {{ scripting:tutorials:level1:basis_script:mapscript.zip |hier}} das komplette Skript der Beispielkarte.
  
 ---- ----
scripting/tutorials/level1/basis_script.1689606476.txt.gz · Zuletzt geändert: 2023/07/17 15:07 von fritz_98