|
MFMv2.0.10
Movable Feast Machine Simulator 2.0.10
|
#include <Element_Indexed.h>
Public Types | |
| enum | { ELT_VERSION = 1, BITS_IN_INDEX = 24 } |
|
typedef BitVector < P::BITS_PER_ATOM > | BVA |
|
typedef BitField< BVA, VD::U32, BITS_IN_INDEX,(P3Atom< P > ::P3_STATE_BITS_POS+7)/8 *8 > | AFIndex |
Public Member Functions | |
| virtual u32 | PercentMovable (const T &you, const T &me, const SPoint &offset) const |
| virtual u32 | DefaultPhysicsColor () const |
| virtual u32 | DefaultLowlightColor () const |
| virtual u32 | LocalPhysicsColor (const T &atom, u32 selector) const |
| virtual const char * | GetDescription () const |
| virtual void | Behavior (EventWindow< CC > &window) const |
| virtual const T & | GetDefaultAtom () const |
Public Member Functions inherited from MFM::Element< CC > | |
| Element (const UUID &uuid) | |
| void | AllocateType () |
| u32 | GetType () const |
| const char * | GetAtomicSymbol () const |
| const char * | GetName () const |
| virtual void | AppendDescription (const T *atom, OString64 &desc) const |
| bool | IsType (u32 type) const |
| const UUID & | GetUUID () const |
| virtual u32 | PhysicsColor () const |
| void | ToggleLowlightPhysicsColor () |
| virtual u32 | Diffusability (EventWindow< CC > &ew, SPoint nowAt, SPoint maybeAt) const |
| u32 | NoDiffusability (EventWindow< CC > &ew, SPoint nowAt, SPoint maybeAt) const |
| const ElementParameters< CC > & | GetElementParameters () const |
| ElementParameters< CC > & | GetElementParameters () |
| const AtomicParameters< CC > & | GetAtomicParameters () const |
| AtomicParameters< CC > & | GetAtomicParameters () |
Static Public Member Functions | |
| static const u32 | TYPE () |
Static Public Attributes | |
| static Element_Indexed | THE_INSTANCE |
Static Public Attributes inherited from MFM::Element< CC > | |
| static const u32 | COMPLETE_DIFFUSABILITY = 1000 |
Additional Inherited Members | |
Protected Member Functions inherited from MFM::Element< CC > | |
| virtual T | BuildDefaultAtom () const |
| const BitVector < P::BITS_PER_ATOM > & | GetBits (const T &atom) const |
| BitVector< P::BITS_PER_ATOM > & | GetBits (T &atom) const |
| bool | IsValidAtomicSymbol (const char *symbol) |
| void | SetAtomicSymbol (const char *symbol) |
| void | SetName (const char *name) |
| void | Diffuse (EventWindow< CC > &window) const |
An element with an index number to help in tracking.
|
inlinevirtual |
Describes the behavior of this Element. This is invoked when an Atom of this Element is chosen as the center of an EventWindow for an Event, which is given as a parameter.
| window | The EventWindow describing the Event which is currently being executed. |
Implements MFM::Element< CC >.
|
inlinevirtual |
Gets the 32-bit ARGB formatted color that all Atoms of this Element will be drawn with when they have lowlight drawing enabled.
Reimplemented from MFM::Element< CC >.
|
inlinevirtual |
Gets the 32-bit ARGB formatted color that all Atoms of this Element will be drawn with.
Implements MFM::Element< CC >.
|
inlinevirtual |
Gets the default Atom of this Element . If this Element has not been assigned a type through AllocateType() , this will FAIL with ILLEGAL_STATE. NOTE: The defaultAtom returned here will have been constructed by Element::BuildDefaultAtom, which leaves all state bits zero. If this is not desirable, element subclasses should override this to provide their own default atom initialization.
Reimplemented from MFM::Element< CC >.
|
inlinevirtual |
Gets a string of a short description of the behavior of this Element . This will be displayed in some way when a user needs help with this Element . This string must not include newlines; they will be added when they are needed.
Reimplemented from MFM::Element< CC >.
|
inlinevirtual |
Used during rendering, will select a color for any Atom of this Element to be rendered with. This should be overridden if wanting to use a gradient or some other variable color based on the body of the specified Atom .
| atom | The Atom of this element of which to find a color for. |
| selector | An additional argument which may be used to determine the color of which to render atom |
atom with. Reimplemented from MFM::Element< CC >.
|
inlinevirtual |
Determines how likely an Atom of this type is to be swapped with during diffusal.
Implements MFM::Element< CC >.
1.8.6