public SimpleApplication() { guiNode = new Node(); camera = new Camera(); flyByCamera = new FlyByCamera(); assetManager = new AssetManager(); viewPort = new ViewPort(); stateManager = new StateManager(); rootNode = new Node(); inputManager = new InputManager(); }
public void NextCinematicCamera() { // Sanity check for active camera set if (m_activeCinematic == null || m_activeCinematicCameraIndex >= m_activeCinematic.Camera.Length) { return; } uint cinematicCameraId = m_activeCinematic.Camera[++m_activeCinematicCameraIndex]; if (cinematicCameraId == 0) { return; } var flyByCameras = M2Storage.GetFlyByCameras(cinematicCameraId); if (!flyByCameras.Empty()) { // Initialize diff, and set camera m_cinematicDiff = 0; m_cinematicCamera = flyByCameras; if (!m_cinematicCamera.Empty()) { FlyByCamera firstCamera = m_cinematicCamera.FirstOrDefault(); Position pos = new(firstCamera.locations.X, firstCamera.locations.Y, firstCamera.locations.Z, firstCamera.locations.W); if (!pos.IsPositionValid()) { return; } player.GetMap().LoadGrid(firstCamera.locations.X, firstCamera.locations.Y); m_CinematicObject = player.SummonCreature(1, pos.posX, pos.posY, pos.posZ, 0.0f, TempSummonType.TimedDespawn, 5 * Time.Minute * Time.InMilliseconds); if (m_CinematicObject) { m_CinematicObject.SetActive(true); player.SetViewpoint(m_CinematicObject, true); } // Get cinematic length m_cinematicLength = m_cinematicCamera.LastOrDefault().timeStamp; } } }