Construction Set Daedra-Schrein Redescript

Blacklands

Bürger
Ich suche ein Script das folgendes bewirkt:

Wenn der Player ein bestimmtes Objekt aktiviert, erscheint erstmal eine Messagebox. Danach hört er eine Stimme. Solange diese Stimme spricht, kann er sich nicht bewegen.

Das ganze soll in etwa so sein, wie bei den Daedra-Schreinen. Der Spieler aktiviert sie und sie labern ihm was vor und er kann erst wieder was machen wenn der Schrein fertig gelabert hat. Nur eben noch VOR der Konverstation mit einer Messagebox. :-D
 
Also der erste Block müsste dann natürlich mit "Begin OnActivate" beginnen. Es folgt der Scriptblock für die MessageBox, die einen (1) Button hat, der "Ok", "Fortfahren" oder so heißt... (darüber natürlich der Text)
Danach müsste ein Block kommen, der so oder so ähnlich lautet:

If PressedButton == 1
play.sound ID-DES-SOUNDS-MIT-DER-SPRACHAUFNAHME
player.disablecontrol

elseif
return


Es fehlt noch ein Teil für die Sekunden, nach den der Spieler die Kontrolle wieder erlangen soll, außerdem gibt es keine Garantie für die Befehle, ich bin kein Skripter und kenne die Abläufe und Befehle nur grob, aber das oben ist in etwas das, was gemacht werden muss.
1. Textbox öffnen lassen (OnActivate)
2. Bei Drücken des Buttons Ton abspielen, Kontrolle deaktivieren lassen
3. Timer laufen lassen
4. Kontrolle des Spielers nach Ablauf des Timers wiedererlangen lassen
 
  • Like
Reaktionen: Blacklands
Oh herje, warum muss immer alles so schwer sein. Aber danke, ich werde es mal versuchen (sobald ich mich mit der Sprachaufnahme befasst habe).
 
Code:
scn Name

short once
float timer
short choice

Begin OnActivate
if once == 0
MessageBox "Text", "AntwortText"
Set once to 1
endif
end

Begin GameMode
If once == 1
Set choice to GetButtonPressed
endif

If choice == 0 && once == 1
Playsound IddesSound
DisablePlayerControls
Set once to 2
set timer to LängedesSoundfiles
endif

If timer > 0
Set timer to timer - GetSecondsPassed

elseif timer <= 0 && once == 2
EnablePlayerControls
endif
end

Versuch es mal so
 
  • Like
Reaktionen: Blacklands
OK, das Script funktioniert, aber ich habe noch eine Frage:

Wie mache ich die Untertitel für das Gerede?

Die Sprachaufnahme habe ich jetzt, aber wie bekomme ich Untertitel dafür?
 
77 Hits und keiner weiß eine Antwort?

Wie ist das denn bei den Daedra-Schreinen gelöst? Da gibt es ja auch sowohl Untertitel (also die Sprache als Text) und Ton (also die Sprache also Ton).

Ich habe meine Sprache (also den Ton) ja schon aufgenommen. Aber wie erstelle ich jetzt einen Untertitel dazu (also wie mache ich die Sprache in Textform dabei?)?
 
Da musst du dir mal die Schrein anschauen. Bei normalen Gesprächen werden die Untertitel von alleine erstellt, was aber hier nicht gehen wird.
 
Idee! :idea:
Du kennst Ja die Gespräche der NPCs untereinander:
Du hörst mit und siehst im Untertitel was sie sagen.
Also wäre es eine möglichkeit das du im Schrein 2 NPCs verstckst die der spieler natürlich nicht sehen kann und wenn du den button gedrückt hast fangen die an zu reden.
Aber du mussd dann aufpassen das der zweite ja nich zurückredet, außer du willst es so machen wie beim schrein von calvanicus vile.:)
Das könnte mit dialogen ja gut funktionieren du müsstest nur einen Quest anlegen der sich auf eine gewisse stufe setzt sobald du auf die messagebox geantwortet hast.(neben bei schaltest du auf disableplayercontrols)
Bei den dialogen der NPCs gibts du dann als condition diese Queststage an.
Sobald er fertiggeredet hat setzt du die queststage weiter damit er nicht nocheinmal redet und gibst noch enableplayercontrols dazu.
Ich weiß, dass es so simpel kling das es schon wieder kompliziert ist aber so einfach kanns gehen.;)
Trisaster
 
Hiho,

Oblivion selbst nutzt Dummy-NPCs, die für die Stimmgebung zuständig sind und damit die Untertitel an den Daedraschreinen liefern. (z.B. DAMalacathVoice) Diese NPCs werden im Spiel selbst nicht eingefügt, sondern nur über Skript/Quest "angesprochen".
Es wäre mit Sicherheit am besten, sich einfach mal ein Skript eines Daedraschreins mit der Quest anzuschauen. Dort wird man mit Sicherheit fündig, wie das dann gestartet wird. :)

GreeZ,
Suchan