dsekai
World engine for retrocomputers.
Loading...
Searching...
No Matches
Modules | Macros
Mobile Object Flags

Flags controlling MOBILE object behavior. More...

Collaboration diagram for Mobile Object Flags:

Modules

 Mobile Object Type Flags
 Types instructing the engine how to handle a MOBILE.
 

Macros

#define MOBILE_ICOUNT_MASK   0xf000
 Bitmask defining bits in MOBILE::flags used to indicate the number of Scripting Interactions this mobile has had. Please see that section for details.
 
#define MOBILE_DIR_MASK   0x0007
 Bitmask defining bits in MOBILE::flags used to indicate which of the Cardinal Directions a mobile is currently facing.
 
#define MOBILE_TYPE_MASK   0x0018
 Bitmask defining bits in MOBILE::flags used to indicate Mobile Object Type Flags.
 
#define MOBILE_FLAG_ACTIVE   0x0100
 MOBILE::flags indicating that this mobile is extant and active.
 
#define MOBILE_FLAG_PLAYER   0x0200
 MOBILE::flags indicating that this is a player MOBILE.
 
#define MOBILE_FLAG_DISABLED   0x0400
 MOBILE::flags indicating this mobile is not responding to interation.
 
#define MOBILE_FLAG_NOT_LAST   0x0800
 MOBILE::flags indicating this mobile is not the last used mobile slot.
 

Detailed Description

Flags controlling MOBILE object behavior.

Macro Definition Documentation

◆ MOBILE_FLAG_NOT_LAST

#define MOBILE_FLAG_NOT_LAST   0x0800

MOBILE::flags indicating this mobile is not the last used mobile slot.

This is an optimization measure: The allocation always sets this bit, dying doesn't unset it, reallocation can use mobile slots with this bit set, and iteration loops can break early when they no longer see it.