That's not wrong, because he is adding a negative and thus subtracting.
plraddhealth=-100 is right. (you overlooked his minus sign Sunflash

)
State=1 has an error.
The second colon is misplaced.
plraddhealth=-100 is an action, not a condition.
Try this instead.
;Artificial Intelligence Script
;Header
desc = withindeath
;Triggers
:state=0,plrdistwithin=50:state=1
:state=1:plraddhealth=-100,state=0
;End of Script
He may die twice though, because it is still taking away health while you are in your death sequence.
EDIT ( I tested it, and I was wrong about that. Disregard the following code: )
This will fix that:
;Artificial Intelligence Script
;Header
desc = withindeath
;Triggers
:state=0,plrdistwithin=50:state=1
:state=1:plraddhealth=-100,state=2
:state=2,plralive=0:state=3
:state=2,plralive=1:state=1
:state=3,plrwithinzone=0:state=0
;End of Script
Now, it should continue to take health until he is dead.
Once dead, it waits until the death sequence is over to reset it.
The only bug would be if you made his spawn at the wall, so don't.
I just wrote this off the top of my head, if it doesn't work then I will test and tweak.
Whatever you can imagine, you can animate. --- Walt Disney
All too easy. --- Darth Vader
Just do it! --- Nike