Response Typescript
EntitiesRooms, Mobiles, Objects

    This trigger fires when a mobile dies and can be caught by the room in
which they die or by any mobiles or objects present in the room.

@n, @attacker - The attacker, if any, that killed the mob.

@t, @victim - The mob that has died, just before it is purged.

@o, @corpse - The corpse object that is created for the death.
Note: inventory and equipment are still on the
mobile when this trigger fires.

@x, @victimName - The name of the mobile that died.

@deathType - The manner of death occurring.

Corpses contain a small amount of useful information about what they were
when alive; however, without copying the entire mobile structure they
cannot keep track of all the information. For this reason the
catch_death_act passes the soon to be purged mob pointer in @n. Thus your
script can retrieve any information about the mob provided a protected
block exists at the beginning of the script in which any necessary
information is saved to variables. If you do not use a protected block
then there is no guarantee how far along your script will get before the
@n becomes a null pointer. When @n becomes null, all attempts to retrieve
data will also return null.

The type of death occuring can be determined by the value of @deathType.
So far the following values exist:

airLack - this occurs when the mobile drowns

damage - this generally occurs in combat

deathtrap - sucker hit a deathtrap

fall - this occurs when fly wear off

gladiator - gladiator mode death

noPenalty - no panalty death (noobs usually)

pkill - killed by another player

rebirth - player has enabled rebirth

slay - npcslay or one of the other slay commands

sunlight - this occurs when vampires get roasted in the sun

waterLack - this occurs when a waterOnly mobile is out of water