Das "Set fQuestDelayTime to 0.01" setzt du am besten direkt am Anfang in einen GameMode-Block.
scn 00WaterLightQuest
short loaded
short underwater
[COLOR="Red"]float fQuestDelayTime[/COLOR]
Begin Gamemode
[COLOR="Red"]set fQuestDelayTime to 0.01[/COLOR]
;;game load
if getgameloaded
set loaded to 0
endif
;;reset
if loaded == 0
WaterlichtBlueReff.disable
set loaded to 1
endif
;;test Unterwasser
if player.isunderwater
set underwater to 1
else
set underwater to 0
endif
;;-------------------------------------------Lichtssteuerung
if underwater ==1
WaterlichtBlueReff.enable
else
WaterlichtBlueReff.disable
set underwater to 0
endif
End
scn ulbwfwatermistscript
Begin GameMode
if ( player.GetDistance ulbwfwatermistref01 < 10000 ) && ( player.GetDistance ulbwfwatermistref02 < 10000 );; Nur wenn der Spieler in der nähe ist (Performance!)
if ( GetCurrentTime <= 5 ) && ( GetCurrentTime >= 21 )
ulbwfwatermist01.enable
ulbwfwatermist02.enable
ulbwfwatermist04.enable
ulbwfwatermist05.enable
ulbwfwatermist06.enable
ulbwfwatermist08.enable
ulbwfwatermist09.enable
ulbwfwatermist10.enable
ulbwfwatermist11.enable
endif
if ( GetCurrentTime <= 3 ) && ( GetCurrentTime >= 24 )
ulbwfwatermist01.disable
ulbwfwatermist02.disable
ulbwfwatermist04.disable
ulbwfwatermist05.disable
ulbwfwatermist06.disable
ulbwfwatermist08.disable
ulbwfwatermist09.disable
ulbwfwatermist10.disable
ulbwfwatermist11.disable
endif
endif
End
scn OBNew013OblivionTowerPedestalSCRIPT
ref myTarget
ref mySelf
float Timer
begin onActivate
set myTarget to GetActionRef
set mySelf to getSelf
myTarget.pms effectDestruction
mySelf.pms effectDestruction
activate
end
Begin Gamemode
if Timer == 0
set Timer to 5
endif
if timer > 0
set timer to timer - getsecondspassed
endif
if Timer <=2
OBNew013Ped.enable
else
OBNew013Ped.disable
endif
end
scn ulbwfwatermistscript
Begin GameMode
if player.GetDistance ulbwfwatermistref01 < 10000 && player.GetDistance ulbwfwatermistref02 < 10000
if GameHour <= 7 && GameHour > 20
ulbwfwatermist01.enable
ulbwfwatermist02.enable
ulbwfwatermist04.enable
ulbwfwatermist05.enable
ulbwfwatermist06.enable
ulbwfwatermist08.enable
ulbwfwatermist09.enable
ulbwfwatermist10.enable
ulbwfwatermist11.enable
endif
if GameHour > 7 && GameHour <= 20
ulbwfwatermist01.disable
ulbwfwatermist02.disable
ulbwfwatermist04.disable
ulbwfwatermist05.disable
ulbwfwatermist06.disable
ulbwfwatermist08.disable
ulbwfwatermist09.disable
ulbwfwatermist10.disable
ulbwfwatermist11.disable
endif
endif
end
scn dftrigteleport
float timer
short triggered
ref mySelf
begin onTriggerActor
if triggered == 0
set mySelf to getactionref
myself.moveto dftriggermarker
set triggered to 1
set timer to 10
endif
end
Begin Gamemode
set timer to timer - GetSecondsPassed
if timer <= 0
set triggered to 0
endif
end
scn OBNew013OblivionTowerPedestalSCRIPT
ref myTarget
ref mySelf
float Timer
begin onActivate
set myTarget to GetActionRef
set mySelf to getSelf
myTarget.pms effectDestruction
mySelf.pms effectDestruction
activate
end
Begin Gamemode
if Timer <= 0
set Timer to 5
endif
if timer > 0
set timer to timer - getsecondspassed
endif
if Timer <=2 && timer > 0
OBNew013Ped.enable
else
OBNew013Ped.disable
endif
end
scn ulbwfwatermistscript
Begin GameMode
if (player.GetDistance ulbwfwatermistref01 < 10000) && (player.GetDistance ulbwfwatermistref02 < 10000)
if (GameHour <= 5) && (GameHour >= 21)
ulbwfwatermist01.enable
ulbwfwatermist02.enable
ulbwfwatermist04.enable
ulbwfwatermist05.enable
ulbwfwatermist06.enable
ulbwfwatermist08.enable
ulbwfwatermist09.enable
ulbwfwatermist10.enable
ulbwfwatermist11.enable
endif
if (GameHour <= 3 && (GameHour >= 24)
ulbwfwatermist01.disable
ulbwfwatermist02.disable
ulbwfwatermist04.disable
ulbwfwatermist05.disable
ulbwfwatermist06.disable
ulbwfwatermist08.disable
ulbwfwatermist09.disable
ulbwfwatermist10.disable
ulbwfwatermist11.disable
endif
endif
End
scn dftrigteleport
float timer
short triggered
ref mySelf
begin onTriggerActor
if triggered == 0
set mySelf to getactionref
set triggered to 1
set timer to 10
myself.moveto dftriggermarker
endif
end
Begin Gamemode
set timer to timer - GetSecondsPassed
if timer <= 0
set triggered to 0
endif
end
@roobsi:
@Unbekannter:
Wenn ich das richtig verstanden habe, willst du, dass eine "disabled"-Referenz nach dem Aktivieren für kurze Zeit auftaucht und danach wieder verschwindet? Dürfte nicht funktionieren, weil du keine Referenzen aktivieren kannst, die "disabled" geschaltet sind. Mach es stattdessen mit einem Script, dass diesen Gegnstand "enabled", sobald bestimmte Zustände eingetreten sind... (wie bei dem Script von/für roobsi)
@ Unbekannter: Was genau geht nicht? Er verschwindet nicht wieder? Probiere es hiermit:
Code:scn OBNew013OblivionTowerPedestalSCRIPT ref myTarget ref mySelf float Timer begin onActivate set myTarget to GetActionRef set mySelf to getSelf myTarget.pms effectDestruction mySelf.pms effectDestruction activate end Begin Gamemode if Timer <= 0 set Timer to 5 endif if timer > 0 set timer to timer - getsecondspassed endif if Timer <=2 && timer > 0 OBNew013Ped.enable else OBNew013Ped.disable endif end
scn ulbwfwatermistscript
Begin GameMode
if (player.GetDistance ulbwfwatermistref01 < 10000) && (player.GetDistance ulbwfwatermistref02 < 10000)
if (GameHour <= 5) && (GameHour >= 21)
ulbwfwatermist01.enable
ulbwfwatermist02.enable
ulbwfwatermist04.enable
ulbwfwatermist05.enable
ulbwfwatermist06.enable
ulbwfwatermist08.enable
ulbwfwatermist09.enable
ulbwfwatermist10.enable
ulbwfwatermist11.enable
endif
if (GameHour <= 21) && (GameHour >= 5)
ulbwfwatermist01.disable
ulbwfwatermist02.disable
ulbwfwatermist04.disable
ulbwfwatermist05.disable
ulbwfwatermist06.disable
ulbwfwatermist08.disable
ulbwfwatermist09.disable
ulbwfwatermist10.disable
ulbwfwatermist11.disable
endif
endif
End
scn ulbwfwatermistscript
ref myself
Begin GameMode
set myself to getself
if (myself.GetDistance player < 10000)
if (Gamehour <= 5) && (Gamehour >= 21)
myself.enable
Elseif (GameHour <= 3 && (GameHour >= 24)
myself.disable
endif
endif
End