53 if (!cinematicCameraId)
56 if (std::vector<FlyByCamera>
const* flyByCameras =
GetFlyByCameras(cinematicCameraId))
117 nextPosition.
Relocate(cam.locations);
118 nextTimestamp = cam.timeStamp;
121 lastPosition.
Relocate(cam.locations);
122 lastTimestamp = cam.timeStamp;
127 angle += 2 * float(
M_PI);
138 workDiff = endItr->timeStamp;
147 if (
static_cast<int32>(cam.timeStamp) >= workDiff)
149 nextPosition.
Relocate(cam.locations);
150 nextTimestamp = cam.timeStamp;
153 lastPosition.
Relocate(cam.locations);
154 lastTimestamp = cam.timeStamp;
158 if (workDiff >
static_cast<int32>(nextTimestamp))
159 workDiff =
static_cast<int32>(nextTimestamp);
162 uint32 timeDiff = nextTimestamp - lastTimestamp;
163 uint32 interDiff = workDiff - lastTimestamp;
168 (yDiff * (
float(interDiff) /
float(timeDiff))), lastPosition.
m_positionZ + (zDiff * (
float(interDiff) /
float(timeDiff))));
#define CINEMATIC_LOOKAHEAD
std::vector< FlyByCamera > const * GetFlyByCameras(uint32 cinematicCameraId)
@ TEMPSUMMON_TIMED_DESPAWN
std::vector< FlyByCamera > const * m_cinematicCamera
CinematicSequencesEntry const * m_activeCinematic
uint32 m_lastCinematicCheck
int32 m_activeCinematicCameraIndex
CinematicMgr(Player *playerref)
TempSummon * m_CinematicObject
void NextCinematicCamera()
Position m_remoteSightPosition
void UpdateCinematicLocation(uint32 diff)
void LoadGridForActiveObject(float x, float y, WorldObject const *object)
void SetViewpoint(WorldObject *target, bool apply)
WorldObject * GetViewpoint() const
void MonsterMoveWithSpeed(float x, float y, float z, float speed, bool generatePath=false, bool forceDestination=false)
TempSummon * SummonCreature(uint32 entry, Position const &pos, TempSummonType despawnType=TEMPSUMMON_MANUAL_DESPAWN, Milliseconds despawnTime=0s, uint32 vehId=0, uint32 spellId=0, ObjectGuid privateObjectOwner=ObjectGuid::Empty)
void setActive(bool isActiveObject)
void AddObjectToRemoveList()
constexpr std::size_t size()
std::array< uint16, 8 > Camera
constexpr float GetPositionX() const
constexpr float GetPositionY() const
float GetAbsoluteAngle(float x, float y) const
bool IsPositionValid() const
constexpr void Relocate(float x, float y)
constexpr float GetOrientation() const