Construction Set (CS) Dialog Problem(chen)

Prätorianer

Neuankömmling
Ok, die Überschrift ist irgendwie zu kompliziert, wusste mich aber nicht anders zu attikulieren.

Also, ich will einen NPC machen. Wenn mann will das mann jemanden anreden kann, der dann seinen Satz sagt und mann dann mit "Lebtwohl" abgewürgt wird ohne das mann noch mit dem reden kann, muß mann ja unter Results "Goodbye" eintragen. Das weiß ich. Doch den NPC denn ich jetzt amchen will soll einen schon beim vorbeigehen etwas sagen, so das mann gar keine Chance hat mit nicht ihm nicht zu reden. Danach soll mann ihn ganz normal anreden können, er soll aber trotzdem nur noch immer diesen einen Satz sagen und einen dann noch mit Lebtwohl abwürgen. Das soll er auch beim ersten mal machen, wenn er einen unaufgefordert anspricht (also das er einen dann abwürgt)

Wie arrangiere ich das ? :-D
 
Der passende Befehl heißt "ForceGreeting".

Ohne Script wird das Ganze lustig. Man könnte es nur per Dialog mit Journals und Hello machen. Ich würde aber ein Script nehmen. Leg das Script auf den NPC und erstelle ein Greeting0 für diesen NPC, denn das was du willst soll ja immer und unter allen umständen stattfinden.

In das Greeting kommt der Text und im Result das Goodbye. Das ist schon mal die halbe Miete.

Nun packst du ein Script auf den NPC, das so aussieht:

Code:
begin MyNPCForceGreet_SC
short done

IF ( done == 1 )
 return
endif

IF ( ( GetDistance, Player ) < [B][COLOR="Red"]X[/COLOR][/B] )
 set done to 1
 ForceGreeting
EndIF

end
Wenn der Spieler dem NPC zu nahe kommt, wird dieser einmalig automatisch angesprochen. Und er kann den NPC später von sich aus ansprechen. Anstelle des X mußt du natürlich die Distanz einstellen, die der NPC zum Spieler unterschreiten muß, ehe das Greeting kommt.
 
  • Like
Reaktionen: 1 Person
Der passende Befehl heißt "ForceGreeting".

Ohne Script wird das Ganze lustig. Man könnte es nur per Dialog mit Journals und Hello machen. Ich würde aber ein Script nehmen. Leg das Script auf den NPC und erstelle ein Greeting0 für diesen NPC, denn das was du willst soll ja immer und unter allen umständen stattfinden.

In das Greeting kommt der Text und im Result das Goodbye. Das ist schon mal die halbe Miete.

Nun packst du ein Script auf den NPC, das so aussieht:

Code:
begin MyNPCForceGreet_SC
short done

IF ( done == 1 )
 return
endif

IF ( ( GetDistance, Player ) < [B][COLOR="Red"]X[/COLOR][/B] )
 set done to 1
 ForceGreeting
EndIF

end
Wenn der Spieler dem NPC zu nahe kommt, wird dieser einmalig automatisch angesprochen. Und er kann den NPC später von sich aus ansprechen. Anstelle des X mußt du natürlich die Distanz einstellen, die der NPC zum Spieler unterschreiten muß, ehe das Greeting kommt.

Ah ja, das hilft mir weiter. Ich danke dir :good: