CreamyCewie
Bürger
jo so sollte das reichen.
oder du gibst dem palyer den Brief per getitem...
oder du gibst dem palyer den Brief per getitem...
Es erscheint keine Message, der Brief und der Container werden nicht gespawntscn 07bwkilled
Begin onDeath bwkiller
MessageBox "Ich habe den Mörder getötet, er ließ sich nicht festnemen! Ich sollte nach Dunkelwasser zurückkehren, um meine Belohnung zu suchen. Die daedrischen Steine kann ich auch mitnemen und verkaufen!","Ok"
aabwnote07.enable ; der brief im Haus (die Ref davon)
aabwbelohnungssack.enable ; Ein Container, der wo anders gespawnt werden soll
End
aabwnote07 und aabwbelonungssack sind refsscn 08bwkilled
Begin onDeath aabwkiller
MessageBox "Ich habe den Mörder getötet, er ließ sich nicht festnemen! Ich sollte nach Dunkelwasser zurückkehren, um meine Belohnung zu suchen. Die daedrischen Steine kann ich auch mitnemen und verkaufen!","Ok"
aabwnote07.enable
aabwbelohnungssack.enable
End
Hab hier wieder ein Problem.
Beschreibung :Code:scn aaDRCyra0AltLeg08SternentorAktivierung float AktivierTimer short Anwaehlwahl short Runde ;Legende für Runde ;0 = Anfangsstadium ;1 = Abfrage auf Aktivierung überprüfen Begin onActivate If (Runde == 0) let Anwaehlwahl := -1 let Runde := 1 MessageBox "Was willst du tun?", "Den Altar berühren", "Nichts" Endif End ;###################### Begin GameMode If (Runde == 0) Return Elseif (Runde == 1) let Anwaehlwahl := getButtonPressed If Anwaehlwahl == -1 return Elseif Anwaehlwahl == 0 Let Runde := 2 Let AktivierTimer:= GetSecondsPassed Else ;if Anwaehlwahl == 1 Return Let Runde := 0 Endif Elseif (Runde == 2) If (GetSecondsPassed - AktivierTimer >= 2) DRCyra0AltLeg08FeuerwegA1.enable DRCyra0AltLeg08FeuerwegB1.enable Elseif (GetSecondsPassed - AktivierTimer >= 4) DRCyra0AltLeg08FeuerwegA2.enable DRCyra0AltLeg08FeuerwegB2.enable Elseif (GetSecondsPassed - AktivierTimer >= 6) DRCyra0AltLeg08FeuerwegA3.enable DRCyra0AltLeg08FeuerwegB3.enable Elseif (GetSecondsPassed - AktivierTimer >= 8) DRCyra0AltLeg08FeuerwegA4.enable DRCyra0AltLeg08FeuerwegB4.enable Elseif (GetSecondsPassed - AktivierTimer >= 10) DRCyra0AltLeg08FeuerwegA5.enable DRCyra0AltLeg08FeuerwegB5.enable Elseif (GetSecondsPassed - AktivierTimer >= 12) DRCyra0AltLeg08FeuerwegA6.enable DRCyra0AltLeg08FeuerwegB6.enable Elseif (GetSecondsPassed - AktivierTimer >= 14) DRCyra0AltLeg08FeuerwegA7.enable DRCyra0AltLeg08FeuerwegB7.enable Elseif (GetSecondsPassed - AktivierTimer >= 16) DRCyra0AltLeg08FeuerwegA8.enable DRCyra0AltLeg08FeuerwegB8.enable Elseif (GetSecondsPassed - AktivierTimer >= 18) DRCyra0AltLeg08NebelA.enable DRCyra0AltLeg08NebelB.enable Elseif (GetSecondsPassed - AktivierTimer>= 20) Let Runde := 3 Let AktivierTimer := GetSecondsPassed Else ;Timerdifferenz < 2 Return Endif Elseif (Runde == 3) If (GetSecondsPassed - AktivierTimer >= 1) DRCyra0AltLeg08Nebelboden01.enable Elseif (GetSecondsPassed - AktivierTimer >= 2) DRCyra0AltLeg08Nebelboden02.enable Elseif (GetSecondsPassed - AktivierTimer >= 3) DRCyra0AltLeg08Nebelboden03.enable Elseif (GetSecondsPassed - AktivierTimer >= 4) DRCyra0AltLeg08Nebelboden04.enable Elseif (GetSecondsPassed - AktivierTimer >= 5) DRCyra0AltLeg08Nebelboden05.enable Elseif (GetSecondsPassed - AktivierTimer >= 6) DRCyra0AltLeg08Nebelboden06.enable Elseif (GetSecondsPassed - AktivierTimer >= 7) DRCyra0AltLeg08Nebelboden07.enable Elseif (GetSecondsPassed - AktivierTimer >= 8) DRCyra0AltLeg08Nebelboden08.enable Elseif (GetSecondsPassed - AktivierTimer >= 9) DRCyra0AltLeg08Nebelboden09.enable Elseif (GetSecondsPassed - AktivierTimer >= 10) DRCyra0AltLeg08Nebelboden10.enable Let Runde := 4 Let AktivierTimer := 0 Else ;weniger als 1 Sekunde Timerdifferenz Return Endif Elseif (Runde == 4) ;BlaBlaBla Endif end
Man aktiviert den Schalter und dann soll schrittweise folgendes passieren.
I.
2 Flammenreihen enablen mit je 2 Flammen à 2 Sekunden
II.
Nachdem die Flammen da sind, sollen zwei andere Objekte enabled werden
III.
Und nachdem die da sind, enablen 10 Nebelobjekte.
Leider passiert optisch gar nix.
Jemand ne Idee?
@Diarrhoe:
So hast du das doch mit dem Scriptaufbau gemeint oder?
Zumindest das GetButtonPressed geht doch oder? :?
scn aaDRCyra0ParentScript06Fackeln
ref FackelAusRef
ref FackelAnRef
Begin onActivate player
Let FackelAusRef := GetSelf
Let FackelAnRef := GetParentRef
If (player.IsTorchOut == 1)
FackelAusRef.disable
FackelAnRef.enable
Else ;player.IsTorchOut == 0
Return
Endif
End
scn aaDRCyra0AltLeg08SternentorAktivierung
float AktivierTimer
short Anwaehlwahl
short Runde
short count
;Legende für Runde
;0 = Anfangsstadium
;1 = Abfrage auf Aktivierung überprüfen
Begin onActivate
If (Runde == 0)
let Anwaehlwahl := -1
let Runde := 1
MessageBox "Was willst du tun?", "Den Altar berühren", "Nichts"
Endif
End
;######################
Begin GameMode
If (Runde == 0)
Return
Elseif (Runde == 1)
let Anwaehlwahl := getButtonPressed
If Anwaehlwahl == -1
return
Elseif Anwaehlwahl == 0
Let AktivierTimer := 2
Let Runde := 2
Else ;if Anwaehlwahl == 1
Let Runde := 0
Return
Endif
Elseif (Runde == 2)
if AktivierTimer > 0
let AktivierTimer := (AktivierTimer - getSecondsPassed)
return
else
if count == 0
DRCyra0AltLeg08FeuerwegA1.enable
DRCyra0AltLeg08FeuerwegB1.enable
elseif count == 1
DRCyra0AltLeg08FeuerwegA2.enable
DRCyra0AltLeg08FeuerwegB2.enable
elseif count == 2
DRCyra0AltLeg08FeuerwegA3.enable
DRCyra0AltLeg08FeuerwegB3.enable
elseif count == 3
DRCyra0AltLeg08FeuerwegA4.enable
DRCyra0AltLeg08FeuerwegB4.enable
elseif count == 4
DRCyra0AltLeg08FeuerwegA5.enable
DRCyra0AltLeg08FeuerwegB5.enable
elseif count == 5
DRCyra0AltLeg08FeuerwegA6.enable
DRCyra0AltLeg08FeuerwegB6.enable
elseif count == 6
DRCyra0AltLeg08FeuerwegA7.enable
DRCyra0AltLeg08FeuerwegB7.enable
elseif count == 7
DRCyra0AltLeg08FeuerwegA8.enable
DRCyra0AltLeg08FeuerwegB8.enable
elseif count == 8
DRCyra0AltLeg08NebelA.enable
DRCyra0AltLeg08NebelB.enable
; jetzt kommen die Nebelböden
elseif count == 9
DRCyra0AltLeg08Nebelboden01.enable
elseif count == 10
DRCyra0AltLeg08Nebelboden02.enable
elseif count == 11
DRCyra0AltLeg08Nebelboden03.enable
elseif count == 12
DRCyra0AltLeg08Nebelboden04.enable
elseif count == 13
DRCyra0AltLeg08Nebelboden05.enable
elseif count == 14
DRCyra0AltLeg08Nebelboden06.enable
elseif count == 15
DRCyra0AltLeg08Nebelboden07.enable
elseif count == 16
DRCyra0AltLeg08Nebelboden08.enable
elseif count == 17
DRCyra0AltLeg08Nebelboden09.enable
elseif count == 18
DRCyra0AltLeg08Nebelboden10.enable
endif
let count := (count + 1)
if count >= 19
let Runde := 3
let count := 0
elseif count <= 9
let AktivierTimer := 2
else
let AktivierTimer := 1
endif
return
endif
Elseif Runde == 3
;BlaBlaBla
Endif
end
Bitte noch mal für Dummys.2) Du kannst keine Objekte enablen oder disablen, die ein verlinktes Parent haben. Stattdessen kannst du afaik aber bei diesen Objekten einen Haken bei "set enable state to opposite of parent" und einfach nur das Parent enablen.
scn aaBwFire
short aabwtorch
begin OnActivate
If (aabwtorch == 0)
activate
bwsmoke.enable
befireopen.enable
set aabwtorch to 1
Elseif (aabwtorch == 1)
activate
bwsmoke.disable
befireopen.disable
set aabwtorch to 0
Endif
End
scn aaBwFire
short aabwtorch
short activated
float timer
begin OnActivate
If (aabwtorch == 0)
activate
bwsmoke.enable
befireopen.enable
set aabwtorch to 1
if activated == 0
set activated to 1
set timer to [COLOR="Red"]x ; hier beliebige Anzahl an Sekunden einfügen[/COLOR]
endif
Elseif (aabwtorch == 1)
activate
bwsmoke.disable
befireopen.disable
set aabwtorch to 0
Endif
End
Begin GameMode
if activated == 1
if timer > 0
set timer to (timer - getSecondsPassed)
else
set activated to 2
<Wache1-Ref>.enable
<Wache2-Ref>.enable
endif
endif
end
scn aaDRCyra0AltLeg08SchutzbannScript
Ref IchGeheDurch
Begin onTrigger
Let IchGeheDurch := GetActionRef
If (DRCyra0AltLeg08Schutzkristall01.GetDisabled == 1) && (DRCyra0AltLeg08Schutzkristall02.GetDisabled == 1)
Return
Else ;Irgendein Kristall ist noch da
IchGeheDurch.kill
Endif
End