CreateNpc
NPC
ElementeBeschreibung
nameName of Npc Entity
briefings5lua_g to briefing table that will be shown
vanishPosPosition/entity name where the npc is moving to vanish after briefing done vanishing position should be unexplored else npc will not be removed
heroNameThe npc is talking only to this hero
wrongHeroMessageString with wrong hero message
followIf true/false npc will follow nearest hero If name of an entity, serf will only follow this entity
local npc	       = {}
npc.name	       = "bishop" --Name des Npc
npc.briefing	       = NpcBriefing --Briefing
npc.heroName	       = "dario" --Name des Helden mit dem der NPC nur spricht
npc.wrongHeroMessage = "Ich rede nicht mir dir @cr Mach dich vom Acker." -- Meldung bei falschen Ansprechpartner 
npc.follow           = "dario" -- Startet vom Startpunkt und bewegt sich zum anzusprechenden Npc
CreateNPC(npc)

In NPC Briefings ist es meist nicht möglich, die Kameraposition auf den ansprechenden Helden zu setzen, da die Briefings schon viel früher erstellt wurden und somit die Position des Heldens höchstwahrscheinlich am anderen Ende der Karte war. Dafür gibt es einen kleinen Workaround. Statt einem Briefing erhält der NPC eine Callback Funktion, die dann erst das Briefing erstellt und startet.

function CreateNpcHorst()
    local npc = {
        name     = "horst",
        callback = BriefingHorst,
    }
    CreateNPC(npc)
end
 
function BriefingHorst()
    local briefing = {}
    local AP = ...
 
    AP{
        title           = "Held",
        text            = "Hi Horst",
        position        = GetPosition("held"), -- Die Position des Helden wird jetzt korrekt angezeigt
        dialogCamera    = true,
    }
 
    AP{
        title           = "Horst",
        text            = "Hallo mein Held.",
        position        = GetPosition("horst"),
        dialogCamera    = true,
    }
 
    StartBriefing(briefing)
end
Siehe auch


FIXME Der Schreibstil der NPC-Erstellung sollte gleichlautend mit dem Workaround sein, ist sonst irritierend. Ninobi

Zur Tutorial-Übersicht