Background for Skyrim SE
Member of the Quest script
boolfunctionGetStageDone(intaiStage)

[DEV SERVER] Loading description...


Caveats

CK Wiki - Notes

  • IsStageDone returns true for the current quest stage, even while the quest fragment scripts for the current stage have not yet completed.
  • A stage is not considered "done" if it has not been explicitly visited, even if its stage number is lower than the current stage number.
  • Assume you have a quest with stages 0, 10, 20, 30, 40, 50, and 60. You call SetStage for stages 0, 40, 20, and 60, in that order. See the following table for the result that IsStageDone will return after the final SetStage (to stage 60) has been completed:
IsStageDoneResult
0true
10false
20true
30false
40true
50false
60true

Even though GetCurrentStageID() will return 60, IsStageDone will return false for stages 10, 30, and 50, because these stages have not yet been visited. If you subsequently call SetStage(30), the result of GetCurrentStageID will still be 60, but IsStageDone(30) will now return true.


Parameters

intaiStage

CK Wiki Description

The stage to check.


Examples

; is stage 20 done in the main quest?
bool mainQuestStage20Done = MainQuestProperty.IsStageDone(20)
; Prints a debug message if the side quest has completed stage 10
if (SideQuestProperty.GetStageDone(10))
  Debug.Trace("The side quest has finished stage 10!")
endIf

Auto-Generated Example

int myInt__aiStage

bool returnedValue = myQuest__toCallFunctionOn.GetStageDone(myInt__aiStage)

Related Pages


Additional References

View this function’s page on the Skyrim Creation Kit Wiki

Some data provided by the Skyrim Creation Kit Wiki. Licensed under the Creative Commons Attribution-ShareAlike license.