ScummVM API documentation
Saga2::GameObject Class Reference
Inheritance diagram for Saga2::GameObject:
Saga2::Actor Saga2::GameWorld

Public Member Functions

ObjectID thisID ()
 
 GameObject (const ResourceGameObject &res)
 
 GameObject (Common::InSaveFile *in)
 
void read (Common::InSaveFile *in, bool expandProto)
 
int32 archiveSize ()
 
void write (Common::MemoryWriteStreamDynamic *out, bool expandProto)
 
void deleteObject ()
 
void deleteObjectRecursive ()
 
GameObjectparent ()
 
GameObjectnext ()
 
GameObjectchild ()
 
ObjectID IDParent ()
 
ObjectID IDNext ()
 
ObjectID IDChild ()
 
GameWorldworld ()
 
int16 getMapNum ()
 
int16 sprNum (int16 state)
 
int32 getSprOffset (int16 num=-1)
 
void recharge ()
 
int16 getChargeType ()
 
bool deductCharge (ActorManaID manaID, uint16 manaCost)
 
bool hasCharge (ActorManaID manaID, uint16 manaCost)
 
void setLocation (const Location &loc)
 
void setLocation (const TilePoint &tp)
 
void move (const Location &loc)
 
void move (const Location &loc, int16 num)
 
void move (const TilePoint &tp)
 
void updateImage (ObjectID)
 
bool unstack ()
 
bool moveMerged (const Location &loc)
 
bool moveMerged (const Location &loc, int16 num=1)
 
bool moveMerged (const TilePoint &tp)
 
ObjectID extractMerged (const Location &loc, int16 num)
 
GameObjectextractMerged (int16 num)
 
void moveRandom (const TilePoint &minLoc, const TilePoint &maxLoc)
 
ObjectID copy (const Location &loc)
 
ObjectID copy (const Location &loc, int16 num)
 
ObjectID makeAlias (const Location &loc)
 
void move (int16 slot)
 
void activate ()
 
void deactivate ()
 
bool isAlias ()
 
bool canContain (ObjectID item)
 
bool isContaining (GameObject *item)
 
bool isContaining (ObjectTarget *objTarget)
 
bool hasProperty (const ObjectProperty &objProp)
 
TilePoint getFirstEmptySlot (GameObject *obj)
 
bool getAvailableSlot (GameObject *obj, TilePoint *slot, bool canMerge=false, GameObject **mergeObj=NULL)
 
bool placeObject (ObjectID enactor, ObjectID objID, bool canMerge=false, int16 num=1)
 
void dropInventoryObject (GameObject *obj, int16 count=1)
 
GameObjectgetIntangibleContainer (int containerType)
 
bool use (ObjectID enactor)
 
bool useOn (ObjectID enactor, ObjectID item)
 
bool useOn (ObjectID enactor, ActiveItem *item)
 
bool useOn (ObjectID enactor, Location &loc)
 
bool take (ObjectID enactor, int16 num=1)
 
bool drop (ObjectID enactor, const Location &l, int16 num=1)
 
bool dropOn (ObjectID enactor, ObjectID target, int16 num=1)
 
bool dropOn (ObjectID enactor, ActiveItem *target, const Location &loc, int16 num=1)
 
bool open (ObjectID enactor)
 
bool close (ObjectID enactor)
 
bool strike (ObjectID enactor, ObjectID item)
 
bool damage (ObjectID enactor, ObjectID target)
 
bool eat (ObjectID enactor)
 
bool insert (ObjectID enactor, ObjectID item)
 
bool remove (ObjectID enactor)
 
bool acceptDrop (ObjectID enactor, ObjectID droppedObj, int count)
 
bool acceptDamage (ObjectID enactor, int8 absDamage, effectDamageTypes dType=kDamageOther, int8 dice=0, uint8 sides=1, int8 perDieMod=0)
 
bool acceptHealing (ObjectID enactor, int8 absDamage, int8 dice=0, uint8 sides=1, int8 perDieMod=0)
 
bool acceptStrike (ObjectID enactor, ObjectID strikingObj, uint8 skillIndex)
 
bool acceptLockToggle (ObjectID enactor, uint8 keyCode)
 
bool acceptMix (ObjectID enactor, ObjectID mixObj)
 
bool acceptInsertion (ObjectID enactor, ObjectID item, int16 count)
 
bool acceptInsertionAt (ObjectID enactor, ObjectID item, const TilePoint &where, int16 num=1)
 
ObjectID possessor ()
 
ProtoObjproto ()
 
TilePoint getLocation () const
 
TilePoint getWorldLocation ()
 
bool getWorldLocation (Location &loc)
 
Location notGetLocation ()
 
Location notGetWorldLocation ()
 
const char * objName ()
 
void objCursorText (char nameBuf[], const int8 size, int16 count=-1)
 
bool isTrueSkill ()
 
uint16 getNameIndex ()
 
void setNameIndex (uint16 n)
 
const char * protoName ()
 
void updateState ()
 
bool isOpen ()
 
bool isLocked ()
 
bool isImportant ()
 
bool isGhosted ()
 
bool isInvisible ()
 
bool isMoving ()
 
bool isActivated ()
 
void setScavengable (bool val)
 
bool isScavengable ()
 
void setObscured (bool val)
 
bool isObscured ()
 
void setTriggeringTAG (bool val)
 
bool isTriggeringTAG ()
 
void setOnScreen (bool val)
 
bool isOnScreen ()
 
void setSightedByCenter (bool val)
 
bool isSightedByCenter ()
 
bool isMissile ()
 
SpritegetIconSprite ()
 
SpritegetGroundSprite ()
 
uint16 containmentSet ()
 
uint16 scriptClass ()
 
uint16 getScript ()
 
void setScript (uint16 scr)
 
void setFlags (uint8 newval, uint8 changeMask)
 
uint8 getHitPoints ()
 
void setHitPoints (uint8 hp)
 
void getColorTranslation (ColorTable map)
 
int32 getProtoNum ()
 
void setProtoNum (int32 nProto)
 
uint16 getExtra ()
 
void setExtra (uint16 x)
 
void evalEnchantments ()
 
bool makeSavingThrow ()
 
bool inRange (const TilePoint &tp, uint16 range)
 
bool isCarryable ()
 
bool isMergeable ()
 
void timerTick (TimerID timer)
 
void senseObject (SensorID sensor, ObjectID sensedObj)
 
void senseEvent (SensorID sensor, int16 type, ObjectID directObject, ObjectID indirectObject)
 
bool addTimer (TimerID id)
 
bool addTimer (TimerID id, int16 frameInterval)
 
void removeTimer (TimerID id)
 
void removeAllTimers ()
 
bool addProtaganistSensor (SensorID id, int16 range)
 
bool addSpecificActorSensor (SensorID id, int16 range, Actor *a)
 
bool addSpecificObjectSensor (SensorID id, int16 range, ObjectID obj)
 
bool addActorPropertySensor (SensorID id, int16 range, ActorPropertyID prop)
 
bool addObjectPropertySensor (SensorID id, int16 range, ObjectPropertyID prop)
 
bool addEventSensor (SensorID id, int16 range, int16 eventType)
 
void removeSensor (SensorID id)
 
void removeAllSensors ()
 
bool canSenseProtaganist (SenseInfo &info, int16 range)
 
bool canSenseSpecificActor (SenseInfo &info, int16 range, Actor *a)
 
bool canSenseSpecificObject (SenseInfo &info, int16 range, ObjectID obj)
 
bool canSenseActorProperty (SenseInfo &info, int16 range, ActorPropertyID prop)
 
bool canSenseObjectProperty (SenseInfo &info, int16 range, ObjectPropertyID prop)
 
bool merge (ObjectID enactor, ObjectID objToMergeID, int16 count)
 
bool stack (ObjectID enactor, ObjectID objToStackID)
 
bool canFitBulkwise (GameObject *obj)
 
bool canFitMasswise (GameObject *obj)
 
uint16 totalContainedMass ()
 
uint16 totalContainedBulk ()
 
uint16 totalMass ()
 
uint16 totalBulk ()
 
uint16 massCapacity ()
 
uint16 bulkCapacity ()
 

Static Public Member Functions

static const char * nameText (uint16 index)
 
static GameObjectobjectAddress (ObjectID id)
 
static ProtoObjprotoAddress (ObjectID id)
 
static int32 nameIndexToID (uint16 ind)
 
static Common::Array< ObjectID > nameToID (Common::String name)
 
static GameObjectnewObject ()
 
static int32 canStackOrMerge (GameObject *dropObj, GameObject *target)
 
static void mergeWith (GameObject *dropObj, GameObject *target, int16 count)
 

Public Attributes

ObjectData _data
 
uint _index
 
bool _godmode
 

Protected Member Functions

void remove ()
 
void append (ObjectID newParent)
 
void insert (ObjectID newPrev)
 

Static Protected Member Functions

static ObjectID * getHeadPtr (ObjectID parentID, TilePoint &l)
 

Protected Attributes

ProtoObj_prototype
 

Friends

void initWorlds ()
 
void cleanupWorlds ()
 
void initObjects ()
 
void saveObjects (Common::OutSaveFile *out)
 
void loadObjects (Common::InSaveFile *in)
 
void cleanupObjects ()
 
void buildDisplayList ()
 
void drawDisplayList ()
 
void setMindContainer (int NewContainerClass, IntangibleContainerWindow &cw)
 
bool Enchantment (ObjectID, ObjectID)
 

The documentation for this class was generated from the following file: