Jump to content

Scripting with Quests


theuseless

Recommended Posts

I have a somewhat technical but simple question. I have recently figured out that I can force some scripts to work with by activating a quest. The quest is initially disabled, and has a line of code to end the quest upon full completion. So my question is whether this is a good thing or a bad thing for performance? It seems to work smoothly with a .5 second delay. For an example, I have included some bits of my code:

 

 

On the Display Case itself:

scn tUL665tharnstGuestLivingContainerScript

short doOnce

Begin OnActivate

if (tUL665TharnsteinMain.diningCases == 0)
startquest tUL665tharnstGuestLivingContainerQuest
set tUL665tharnstGuestLivingContainerQuest.busy to 1
set tUL665tharnstGuestLivingContainerQuest.fQuestDelayTime to 0.1
set tUL665TharnsteinMain.diningCases to 0
elseif (tUL665TharnsteinMain.diningCases == 1) && (doOnce ==0)
activate
set doOnce to 1
elseif (tUL665TharnsteinMain.diningCases == 1) && (doOnce ==1)
activate
set doOnce to 0
set tUL665TharnsteinMain.diningCases to 0
endif

end

 

To end the quest:

Scn tUL665tharnstGuestLivingContainerQuestScript


short busy
short pause
short opener
short word
short word2
short clicked
short correctCount
short moneyclip
float fQuestDelayTime

begin gameMode

;================================

if (busy == 1)
	set pause to -1
	set busy to 0
endif

if (pause == 0)
	stopquest tUL665tharnstGuestLivingContainerQuest
	;reset conditions here (re-initialize)	
	set busy to 0
	set pause to 0
	set opener to 0
	set word to 0
	set word2 to 0
	set clicked to 0
	set correctCount to 0
	set moneyclip to 0

	return
;------------------------------------------------

elseif (pause == -1)
; This is where I set the rest of the container's effects.  Once the effects are complete, I reset busy and pause to 0  

 

If you were able to decipher this, I might be able to reword my original question. Is this a waste of resources for an activated item? It is so much smoother on my computer, but I don't know if that is the case in general. I have a ... wonderfully finicky ... computer.

 

Also, a second question. Does this script actually only start when I activate it? I know that begin.GameMode means it runs every couple of seconds. Do these scripts run when the quest is inactive? Am I closing the quest properly?

 

If anybody reads this far, thanks

theuseless

Link to comment
Share on other sites

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...