JcHARP Posted April 16, 2014 Share Posted April 16, 2014 Scriptname PnPQuest10Sit extends ObjectReference ObjectReference Property Player Auto Quest Property PnPQuest00 Auto Actor Property PlayerREF Auto Topic Property PnPQuest00Topic00AB Auto ReferenceAlias Property PnPBossProposition Auto Event OnTriggerEnter(ObjectReference akActionRef) If akActionRef == PlayerRef && PnPQuest00.GetStage() == 5 && Game.GetPlayer().GetSitState() >=3 debug.trace(akActionRef + " has entered the trig") PnPBossProposition.GetActorRef().Say(PnPQuest00Topic00AB, none, 1) EndIf EndEvent So that's the code but, I think I am using the GetSitState() wrong :(. What I'd like to happen is when all three conditions are met, you enter the trigger, the stage is equal to 5 and you are sitting. My NPC tells the player the topic of my choice without activating said NPC and the quest progresses from there. Does anyone know what I am doing wrong? Any help would be greatly appreciated. Link to comment Share on other sites More sharing options...
IsharaMeradin Posted April 16, 2014 Share Posted April 16, 2014 The problem is that you are checking for the player to be seated when they enter the trigger box. That is impossible. You may be better off making the chair an alias and giving it a script that runs when the player sits down. Link to comment Share on other sites More sharing options...
JcHARP Posted April 16, 2014 Author Share Posted April 16, 2014 The problem is that you are checking for the player to be seated when they enter the trigger box. That is impossible. You may be better off making the chair an alias and giving it a script that runs when the player sits down.What Event should I use? I've looked at OnSit, that deals with an actor though and as far as I know I cannot put a script directly on the player themselves so that wouldn't work. Could you potentially explain a bit more I just can't seem to figure it out :( Link to comment Share on other sites More sharing options...
IsharaMeradin Posted April 16, 2014 Share Posted April 16, 2014 Using OnSit, you would need to make a quest with the player alias. The player alias would have a script which uses the OnSit event. Otherwise using the chair as an alias the script it has would use the OnActivate event coupled with GetSitState for the one that activated the chair. Link to comment Share on other sites More sharing options...
JcHARP Posted April 16, 2014 Author Share Posted April 16, 2014 (edited) Okay so for instance I use this new script I remade. Event OnActivate(ObjectReference akActorActivate) If akActorActivate == Game.GetPlayer() && PnPQuest00.GetStage() == 5 && Game.GetPlayer().GetSitState() != 0 debug.trace("You sat on me!") PnPBossProposition.GetActorRef().Say(PnPQuest00Topic00AB, none, 1) EndIf EndEvent And I attach that to my chair of interest? Unless I scripted it wrong or don't understand what you mean xD. Does that look like it would work? EDIT: That worked like a charm! Thanks for the hints xD <3 With your help I figured it out :DDDDDDDDDDDDDDDDDDDD Edited April 16, 2014 by JcHARP Link to comment Share on other sites More sharing options...
Recommended Posts