I've done so by editing the quest script PlayerWerewolfChangeScript.psc as a test. So when the player feeds, the message shows up fine. Here's the part of the script I tweaked. It's only on the feed function:
Spoiler
Function Feed(Actor victim) float currentTimeFeed = GameDaysPassed.GetValue() float regressTimeFeed = PlayerWerewolfShiftBackTime.GetValue() float newShiftTime = PlayerWerewolfShiftBackTime.GetValue() + __feedExtensionTime float TotalSecondsLeft = (GameTimeDaysToRealTimeSeconds(newShiftTime - currentTimeFeed)) as Int ;*****ADDED AND WORKS***** Game.GetPlayer().PlayIdle(SpecialFeeding) ;This is for adding a spell that simulates bleeding BleedingFXSpell.Cast(victim,victim) if (!C03Rampage.IsRunning()) PlayerWerewolfShiftBackTime.SetValue(newShiftTime) PlayerWerewolfFeedMessage.Show() FeedBoost.Cast(Game.GetPlayer()) ; victim.SetActorValue("Variable08", 100); Debug.trace("WEREWOLF: Player feeding -- new regress day is " + newShiftTime) Debug.Notification("Still have " + TotalSecondsLeft + " seconds to go.") ; *****ADDED AND WORKS***** endif SetStage(10)EndFunction
Now what I'm tying to do is take that info and use it on an active magic effect. I created a new scripted effect and added that to the wolf howls. So when the player howls, they'll also be notified as to how long they have till returning human. Here's the script which is attached to the magic effect CSWerewolfTime. Which is added as an effect on the howls.
Spoiler
Scriptname CSWolfHowlScript extends ActiveMagicEffect {Used to tell the player how much time as a werewolf is left}PlayerWerewolfChangeScript property WolfTime AutoEvent OnEffectStart(Actor akTarget, Actor akCaster) Debug.Notification("Blah Blah Bipaty Bla Test Test Wee") ;<------ This works ) float fRealExtentionTime = WolfTime.RealTimeSecondsToGameTimeDays(wolfTime.FeedExtensionTimeSeconds) float currentTimeFeed = Wolftime.GameDaysPassed.GetValue() float regressTimeFeed = Wolftime.PlayerWerewolfShiftBackTime.GetValue() float newShiftTime = Wolftime.PlayerWerewolfShiftBackTime.GetValue() + fRealExtentionTime float TotalSecondsLeft = (Wolftime.GameTimeDaysToRealTimeSeconds(newShiftTime - currentTimeFeed)) as Int Debug.Notification("Still have " + TotalSecondsLeft + " seconds to go.") ;<---- This returns 000.00000 )EndEvent
You can see from the commented sections that the script works as far as displaying the notification, but it's not
getting the variables from the quest script. I've been working on this thing for the last two days and I'm at a loss here. Any help would be most appreciative.
-Mush-