The first part where you advance the quest based on approaching the marker is fine.
The second part has several problems. The number one thing you need to remember is that quest scripts fire continuously. The default is every 5 seconds. So you are continually resetting the currentDay variable.
if ( getStage socQuestJesan 60 ) && (
--- What's this? I'm not sure how this would even compile. Also it should be getStage socQuestJesan == 60. set currentDay to gameDaysPassed
set currentTime to gameHour
--- You need a doOnce variable or a new quest stage so this section doesn't keep firing.endif
--- this part should be fine once you fix the above, except it should be getStage socQuestJesan == 60.if ( getStage socQuestJesan 60 ) && ( gameDaysPassed >= currentDay + 1 )
if gameHour >= currentTime
socWarielRef.disable
socCaptainRef.enable
socCorruptSoldierARef.enable
socCorruptSoldierBRef.enable
setstage socQuestJesan 65
endif
endif
See my comments in yellow. Hopefully that will get you fixed up.
The damned code tags are messing up the formatting. >.<