FANDOM


In DIE SIEDLER - Das Erbe der Könige wurden Briefings verwendet um die Handlung zu erzählen. Um diese Möglichkeit auch in DIE SIEDLER - Aufstieg eines Königreiches nutzbar zu machen, hat OldMacDonald diese Implementierung entwickelt. Vom Aufbau her ist sie eine Kombination aus Briefing und Cutscene.

Damit Briefings verwendet werden können, müssen die Funktionen aus den Abschnitten Funktionen globales Skript und Funktionen lokales Skript in die entsprechenden Skriptumgebungen kopiert werden.

Ein Briefing wird immer in der globalen Skriptumgebung erstellt.

Briefings für QSB 3.9Bearbeiten

AnwendungBearbeiten

Für gewöhnlich wird für jedes Briefing eine eigene Funktion erstellt. Zum Beispiel Intro().

Der Briefing-Table wird gewöhnlich lokal erstellt. Zum Einfügen der Seiten wird die Funktion AP() verwendet.

local briefing = {}
local AP = function(_page) table.insert(briefing, _page) return _page end

Will man den Nebel des Krieges ausblenden, muss man die Variable hideFoW verwenden.

local briefing = {hideFoW = true}
local AP = function(_page) table.insert(briefing, _page) return _page end

Das selbe in grün:

local briefing = {}
local AP = function(_page) table.insert(briefing, _page) return _page end
briefing.hideFoW = true

Alle möglichen Werte:Bearbeiten

  • hideFoW: Der „Nebel des Krieges“ wird während des Briefings nicht dargestellt. Typ: Boolean
  • restoreCamera: Die Kameraposition wird nach Ende des Briefings wiederhergestellt. Typ: Boolean
  • disableSkipping: Das Briefing kann nicht abgebrochen werden. Der „Überspringen“-Knopf wird versteckt. Typ: Boolean
  • skipAll: Das Briefing kann vom Benutzer nur vollständig übersprungen werden. Typ: Boolean
  • skipPerPage: Der Benutzer kann nur jede Seite einzeln überspringen. Typ: Boolean
  • finished: Funktion, die nach Beendigung des Briefings aufgerufen wird. Typ: Function
  • disableGlobalInvulnerability: Deaktiviert die globale Unverwundbarkeit, die ansonsten während des Briefings aktiviert würde. Typ: Boolean

Als nächstes werden die einzelnen Seiten erstellt:

AP{
	title = "Erzähler", 		-- Titel der Seite
	text = "Es war einmal...", 	-- Text der Seite
	followEntity = "hero", 		-- Die Einheit "hero" wird von der Kamera verfolgt
	dialogCamera = true, 		-- Es wird näher an die Einheit herangezoomt
	action = function() 		-- action() wird ausgeführt sobald die Seite antezeigt wird
		Move("Marcus", "posPreludeBriefingMarcus")
	end
}
AP{
	title = "Erzähler",
	text = "... vor langer Zeit...",
	position = "HQ1" -- Position der Kamera
}
AP{
	title = "Erzähler",
	text = "... in einem weit entfernten Land...",
	objectives = "Habt viel Spaß", -- dieses Feld dient der Anzeige von Missionszielen
	position = "HQ1"
}

Alle möglichen Werte:

  • title: Angezeigte Überschrift. Typ: String
  • text: Angezeigter Text.  Typ: String
  • objectives: Angezeigtes Missionsziel.  Typ: String
  • barStyle: Bestimmt die Darstellung des Balkens. Mögliche Werte: 'big', 'small', 'nobar'.  Typ: String
  • dialogCamera: Wechsel der Kamera in die Dialog-Ansicht. Typ: Boolean
  • action: Wird zu Beginn der Briefingsseite aufgerufen. Typ: Function
  • duration: Benutzerdefinierte Zeit, in der die Briefingsseite angezeigt wird. Typ: Number
  • flyTime: Zeit, in der von der Position der vorherigen Briefingseite zur Position dieser geflogen wird. Typ: Number
  • position: Position der Kamera, auch definierbar durch Einheit. Typ: String; Number oder Table
  • followEntity: Einheit, die von der Kamera verfolgt werden soll. Typ: String; Number
  • fadeIn: Lässt eine schwarze Maske in bestimmter Zeit verschwinden.  Typ: Number; Boolean
  • fadeOut: Lässt eine schwarze Maske in bestimmter Zeit erscheinen.  Typ: Number; Boolean
  • faderAlpha: Legt die Durchsichtigkeit der Maske während der ganzen Briefingseite fest. Wert zwischen 0 und 1.  Typ: Number
  • rotation: Benutzerdefinierte Kamera-Rotation.   Typ: Number
  • angle: Benutzerdefinierter Kamera-Winkel.  Typ: Number
  • zoom: Benutzerdefinierter Kamera-Abstand.  Typ: Number

Zum Schluss wird noch eine Funktion eingerichtet, die nach Beendigung des Briefings aufgerufen wird:

briefing.finished = function()
	NextQuest()
end

Mit dieser Funktion kann man den weiteren Verlauf der Mission steuern.

Jetzt kann das Briefing gestartet werden.

StartBriefing(briefing)

BeispielBearbeiten

Hier folgt ein Beispiel.


Funktionen globales und lokales SkriptBearbeiten

Diese Funktionen müssen in das globale Skript kopiert werden: Briefingfunktionen globales Skript.

Diese Funktionen müssen in das globale Skript kopiert werden: Briefingfunktionen lokales Skript.

Briefings für QSB4Bearbeiten

Für die Sprach-QSB (Version 4.0) wurde ein spezielles Briefingsystem geschrieben. Es ist auch für diejenigen interessant, die immer noch die Version 3.9 der QSB verwenden, da es auch ohne die neuste Version funktioniert. Neben durchsichtiger Briefingbar und der Möglichkeit eine Z-Koordinate anzugeben gibt es speziell für die Sprach-QSB die Möglichkeit Texte in 3 Sprachen zu verfassen.

AnwendungBearbeiten

Fixme

BeispielBearbeiten

Fixme

Funktionen globales und lokales ScriptBearbeiten

Diese Funktionen müssen in das globale Skript kopiert werden: Briefingfunktionen globales Skript.

Diese Funktionen müssen in das globale Skript kopiert werden: Briefingfunktionen lokales Skript.

Störung durch Adblocker erkannt!


Wikia ist eine gebührenfreie Seite, die sich durch Werbung finanziert. Benutzer, die Adblocker einsetzen, haben eine modifizierte Ansicht der Seite.

Wikia ist nicht verfügbar, wenn du weitere Modifikationen in dem Adblocker-Programm gemacht hast. Wenn du sie entfernst, dann wird die Seite ohne Probleme geladen.

Auch bei FANDOM

Zufälliges Wiki