можно попробовать так:
Type Object
Field Tip
Field p.player, b.bot, t.thing
End Type
Const OBJ_PLAYER=1, OBJ_BOT=2, OBJ_THING=3
Type Player
Field mesh, healph, power...
End Type
Type Bot
Field mesh, healph, power, level
End Type
Type Thing
Field mesh, tip
End Type
For o.object = each Object
Select o\Tip
case OBJ_PLAYER
UpdatePlayer(o\p.player)
case OBJ_THING
UpdateThing(o\t.Thing)
case OBJ_BOT
UpdateBot(o\b.Bot)
End Select
Next
пусть и лишний тип создается, зато все навиду и компактно.