So I reckon it was pretty silly to try and do this using a charScript in the first place. Made a gameScript to handle it instead. Now the activating script isn't a problem anymore, but it still doesn't quite work the way I want it to.
Code
EVENTS
	EVENT TestEvent
VARS
	CHARACTER:_Character
ON
	OnCharacterStatusApplied(_Character,SCRIPTTEST)
ACTIONS
CharacterAddActionPoints(_Character,2)
IF "c1"
	CharacterHasStatus(_Character,SCRIPTTEST)
THEN
	CharacterRemoveStatus(_Character,SCRIPTTEST)
	CharacterApplyStatus(_Character,SCRIPTWORKS,2,1)
ENDIF

I added the 'addActionPoints' to see if the game was even executing this. It was. But the entire IF part does not work so far. I'll see if I can figure this out on my own, but help would still be appreciated.