25 #ifndef ENGINES_KOTOR_AREA_H 26 #define ENGINES_KOTOR_AREA_H 124 bool testCollision(
const glm::vec3 &orig,
const glm::vec3 &dest)
const;
137 void getCameraStyle(
float &distance,
float &pitch,
float &height)
const;
263 void click(
int x,
int y);
276 #endif // ENGINES_KOTOR_AREA_H void loadSounds(const Aurora::GFF3List &list)
Common::UString _musicDay
Music that plays by day.
void stopAmbientSound()
Stop the ambient sound.
void loadCameraStyle(uint32 id)
const std::vector< Common::UString > & getRoomsVisibleFrom(const Common::UString &room) const
std::vector< Creature * > _creatures
KotOR::Object * getObjectByTag(const Common::UString &tag)
Common::PtrList< Room > RoomList
void playAmbientMusic(Common::UString music="")
Play the specified music (or the area's default) as ambient music.
void processEventQueue()
Process the current event queue.
void loadPlaceables(const Aurora::GFF3List &list)
A class holding an UTF-8 string.
uint32 _musicDayTrack
Music track ID that plays by day.
Aurora::VISFile _vis
The area's inter-room visibility description.
void playAmbientSound(Common::UString sound="")
Play the specified sound (or the area's default) as ambient sound.
An LYT, BioWare's Layout Format.
void loadObject(KotOR::Object &object)
void getMapPoint1(float &x, float &y)
Get the first map point.
Common::Mutex _mutex
Mutex securing access to the area.
Area(Module &module, const Common::UString &resRef)
Common::UString _musicNight
Music that plays by night.
RoomList _rooms
All rooms in the area.
Common::UString _resRef
The area's resref (resource ID).
void getCameraStyle(float &distance, float &pitch, float &height) const
void setMusicDayTrack(uint32 track)
Set the music track ID playing by day.
ObjectMap _objectMap
Map of all non-static objects in the area.
void loadWaypoints(const Aurora::GFF3List &list)
void loadDoors(const Aurora::GFF3List &list)
void showAllRooms()
'—
A list storing pointer to objects, with automatic deletion.
const Common::UString & getResRef()
Return the area's resref (resource ID).
Trigger in a Star Wars: Knights of the Old Republic area.
bool testCollision(const glm::vec3 &orig, const glm::vec3 &dest) const
uint32 _musicBattleTrack
Music track ID that plays in battle.
void highlightAll(bool enabled)
void processCreaturesActions(float dt)
Module * _module
The module this area is in.
void getWorldPoint1(float &x, float &y)
Get the first world point.
void hide()
Hide the object's model(s).
void removeFocus()
Forcibly remove the focus from the currently highlighted object.
Sound::ChannelHandle _ambientMusic
Sound handle of the currently playing music.
void evaluateTriggers(float x, float y)
CameraStyle _cameraStyle
'—
void setMusicBattleTrack(uint32 track)
Set the music track ID playing in battle.
void loadGIT(const Aurora::GFF3Struct &git)
void stopAmbientMusic()
Stop the ambient music.
Room * getRoomAt(float x, float y) const
uint32 _musicNightTrack
Music track ID that plays by night.
Handling BioWare's VISs (Visibility files).
A class that can be notified by the NotificationManager.
void stopSound()
Stop all sounds.
Common::UString _ambientNight
Ambient sound that plays by night.
An area in Star Wars: Knights of the Old Republic, holding all objects and rooms within, as well as general area properties like the current background music and ambient sounds.
void setActive(KotOR::Object *object)
KotOR::Object * getActiveObject()
Aurora::LYTFile _lyt
The area's layout description.
bool _highlightAll
Are we currently highlighting all objects?
Common::UString _displayName
The area's localized display name.
std::vector< const GFF3Struct * > GFF3List
bool _visible
Is the area currently visible?
A VIS, BioWare's Visibility Format.
KotOR::Object * getObjectAt(int x, int y)
Sound::ChannelHandle _ambientSound
Sound handle of the currently playing sound.
void getMapPoint2(float &x, float &y)
Get the second map point.
uint32 getMusicBattleTrack() const
Return the music track ID playing in battle.
Basic type definitions to handle files used in BioWare's Aurora engine.
void addEvent(const Events::Event &event)
Add a single event for consideration into the area event queue.
void toggleTriggers()
.— Triggers
void loadTriggers(const Aurora::GFF3List &list)
int getNorthAxis()
Get the north axis id.
std::list< Events::Event > _eventQueue
The event queue.
A handle to a sound channel.
float _ambientNightVol
Night ambient sound volume.
float evaluateElevation(Object *object, float x, float y, bool doHighlight=true)
void show()
Show the object's model(s).
std::vector< Common::UString > _musicBattleStinger
Battle music stingers.
uint32 getMusicDayTrack() const
Return the music track ID playing by day.
KotOR::Object * _activeObject
The currently active (highlighted) object.
void removeObject(KotOR::Object *object)
std::vector< Trigger * > _triggers
.— Triggers
Common::PtrList< KotOR::Object > ObjectList
An object in a Star Wars: Knights of the Old Republic area.
void loadCreatures(const Aurora::GFF3List &list)
ObjectList _objects
List of all objects in the area.
uint32 getMusicNightTrack() const
Return the music track ID playing by night.
void getWorldPoint2(float &x, float &y)
Get the second world point.
float _ambientDayVol
Day ambient sound volume.
Common::UString _ambientDay
Ambient sound that plays by day.
Common::UString _musicBattle
Music that plays in battle.
void loadProperties(const Aurora::GFF3Struct &props)
void notifyObjectMoved(Object &o)
void loadARE(const Aurora::GFF3Struct &are)
void setMusicNightTrack(uint32 track)
Set the music track ID playing by night.
std::map< uint32, KotOR::Object * > ObjectMap
void checkActive(int x=-1, int y=-1)
std::list< Situated * > _situatedObjects
Handling BioWare's LYTs (Layout files).