I found a little issue with this: If you're standing very close to a wall (hugging the wall), and you use the item, the creature successfully spawns, but you two become stuck in each other and are unable to move.
Now, this could be put as "don't do it", but still, I think it's better to address it while we can. And I happen to come up with a solution, which seems to work well enough for the case at hand:
Code:
Death:
FAMS AA 4 bright
SpawnCheck:
FAMS A 4 bright
TNT1 A 0 A_JumpIfCloser(40, "SpawnCheck")
TNT1 A 0 A_SpawnItemEx("Familiar", 0, 0, 0, 0, 0, 0, 0, SXF_NOCHECKPOSITION)
TNT1 A 0 A_SpawnItemEx("FamiliarSmoke", 0, 0, 0, 0, 0, 0, 0, SXF_NOCHECKPOSITION)
Stop
The above code is for the FamiliarSummonThrown actor (i.e the projectile thrown by the player upon the item's use). It checks the distance between you, the player, and itself. If it's safe to spawn the familiar, then it does so. Otherwise, it keeps on checking until it's.