So basically a single transaction and then check @@Error after each statement as in...
BEGIN TRAN
UPDATE
IF @@ERROR <> 0 GOTO ERR_HANDLER
DELETE
IF @@ERROR <> 0 GOTO ERR_HANDLER
DESTROY WORLD
IF @@ERROR <> 0 GOTO ERR_HANDLER
INSERT
IF @@ERROR <> 0 GOTO ERR_HANDLER
COMMIT TRAN
RETURN 0
ERR_HANDLER:
KILL KENNY
ROLLBACK
RETURN 1