[[http://www.siedler-games.de|{{:sg-link.jpg|}}]]
[[http://www.siedler-portal.de/vb3/member.php?u=1971|Peermanent]] & [[http://www.siedler-portal.de/vb3/member.php?u=2109|Tenji]]
======Kurzbriefings======
Durch diese Kurzbriefings könnt ihr ohne viel Aufwand Seiten einem Briefing hinzufügen! \\
Um ein Kurzbriefing aufzurufen müssen eine Comfort Function im Script-Code eingebunden werden: [[tutorials:Umlaute]] \\
Die KurzBriefing-Seite:
ASP( _entity, _title, _text); -- oder:
ASP( _entity, _title, _text, _dialog); -- die "Nahsicht" ist aktiviert, wenn für _dialog "true" eingesetzt wird
Hier werden die Parameter //
_entity, _titel, _text //
übergeben, und wenn bei //_dialog// "true" steht, dann ist die "Nahsicht"("DialogCamera") für diese Seite aktiviert!
===== Erstellung eines Kurzbriefings durch eine AP-Funktion =====
function SpecialBriefing()
-- Das lokale Briefing
local briefing = {};
-- AddPage / AddShortPage Funktion
local AP, ASP = AddPages(briefing);
-- ASP( _name, _title, _text, _dialog); _dialog "true" -> Nahsicht - ansonsten einfach weg lassen!
ASP("scout","Scout","Ich habe gehört das ihr den Turm zerstört habt?", true);
ASP("erec","Erec","Aber sicher, das war so geplant.");
ASP("scout","Scout","Na, dann ist´s ja gut!", true);
-- .. hier könnt ihr beliebig viele Seiten hinzufügen!
StartBriefing(briefing);
end
AP = AddPage: Fügt eine normale Briefingseite hinzu \\
ASP = AddShortPage: Fügt eine Kurzbriefingseite hinzu \\
\\
Und, Dank der kleinen Zeile "local AP, ASP = AddPages(briefing);" können wir im selben Briefing auch \\
normale Briefingseiten einbauen:
function SpecialBriefing()
local briefing = {};
local AP, ASP = AddPages(briefing);
ASP("scout","Scout","Ich habe gehört das ihr den Turm zerstört habt?", true);
ASP("erec","Erec","Aber sicher, das war so geplant.");
AP{
text = "Kuck mal da!",
position = GetPosition("Pos5"),
explore = 1500,
};
ASP("scout","Scout","Oh, wenn das so ist, ...", true);
StartBriefing(briefing);
end
\\
===== Damit das funktioniert, müsst ihr diese zwei Code nur in euer Skript einfügen: =====
1. wegen dem Aufruf oben "local AP, ABP = AddPages(briefing);" diese kleine Funktion:
function AddPages( _briefing )
local AP = function(_page) table.insert(_briefing, _page); return _page; end
local ASP = function(_entity, _title, _text, _dialog) return AP(CreateShortPage(_entity, _title, _text, _dialog)); end
return AP, ASP;
end
2. die zugehörige "CreatePage"-Funktion namens "CreateShortPage" ebenfalls einfügen:
function CreateShortPage( _entity, _title, _text, _dialog)
local page = {
title = _title,
text = _text,
position = GetPosition( _entity ),
dialogCamera = _dialog
};
return page;
end
\\
===== Beispiele =====
**Beispiel:** Aufruf eines Kurzbriefing über einem SimpleJob
function TurmDead()
if IsDead("turmOne") then
local briefing = {};
local AP, ASP = AddPages(briefing);
ASP("scout","Scout","Ich habe gehört das ihr den Turm zerstört habt?", true);
ASP("erec","Erec","Aber sicher, das war so geplant.");
StartBriefing(briefing);
return true
end
end
\\
\\
Eine weiter Möglichkeit wäre das Kurzbriefing über die //Questhandling// Funktion zu starten \\
//(mehr über Questhandling Functionen siehe hier://[[tutorials:questhandling_vereinfachen_selbstgebaut|Questhandling selbstgebaut]])\\
Der Vorteil ist, das sie ohne //SimpleJobs// auskommen. \\
\\
**Beispiel:** Aufruf eines Kurzbriefing über einen Quest-Callback:
function StarteErecScout()
local quest = {
EntityName = "erec",
TargetName = "scout",
Distance = 500,
Callback = Callback_QuestExploreScout
};
SetupExpedition( _quest )
end
------------------------------------
function Callback_QuestExploreScout( _quest )
local briefing = {};
local AP, ASP = AddPages(briefing);
ASP("scout","Scout","Ich habe gehört das ihr den Turm zerstört habt?", true);
ASP("erec","Erec","Aber sicher, das war so geplant.");
StartBriefing(briefing);
end
Bei fragen bitte [[http://www.siedler-portal.de/vb3/forumdisplay.php?f=95|hier]] im Forum melden! Tenji
==Siehe auch==
* [[reference:briefing]]
* [[tutorials:vergleich_briefings]]
* [[tutorials:briefings-erweiterungen]]
* [[tutorials:briefings_mit_auswahlmoeglichkeit]]
* [[reference:createnpc|CreateNPC]]
\\
FIXME
\\
\\
[[:tutorials:index|Zur Tutorial-Übersicht]]