Modding:Effects

Effect Types
All effects inherit a virtual method called  which seems to return a nonsense integer. It's actually a set of binary flags compressed into an integer. If this is not set, it will default to 1, which is just the generic category. Effects.cs helpfully notes which digit represents what flag and what the following table is based off:

There are other masks that check the classifications of bits instead:

There are also separate checks in Effect.cs which is checked every time Apply Event Effect is called. Objects that are considered solid will always return true.

Methods of masking
Effects have two methods of checking these masks: These checks are done by running a bitwise AND(&) operation on them.
 * bool  - returns true if ANY of the specified digits are true
 * bool  - returns true if ALL of the specified digits are true

Example
This is a simplified version of something already in GameObject.cs: where  in binary is , any effect of type 3, 4, 5, 11, 13.