Version 0.0.2
681 downloads
This is a tool for using cameras.
ONLY CLIENTSIDE;
Using:
const camerasManager = require('./camerasManager.js');
//creating camera
/**
@param {String} - camera name
@param {String} - type camera
@param {Vector3} - position
@param {Vector3} - rotation
@param {Number} - fov
*/
const kemperrr_camera = camerasManager.createCamera('kemperrr_the_best?', 'default', new mp.Vector3(0, 0, 100), new mp.Vector3(), 50);
//destroy camera
/**
@param {Camera} - destroyed camera
*/
camerasManager.destroyCamera(kemperrr_camera);
//get camera by name
/**
@param {String} camera name
*/
const kemperrr_camera = camerasManager.getCamera('kemperrr_the_best?');
//activate camera
/**
@param {Camera} - camera to activate
@param {Boolean} - toggle
*/
camerasManager.setActiveCamera(kemperrr_camera, true);
//deactivate camera
/**
@param {Camera} - camera to activate
@param {Boolean} - toggle
*/
camerasManager.setActiveCamera(kemperrr_camera, false);
//activate with interpolation
/**
@param {Camera} - camera to activate
@param {Vector3} - where the camera will fly
@param {Vector3} - New camera rotation
@param {Number} - The time for which the camera will fly by
@param {Number} - hz
@param {Number} - hz
*/
camerasManager.setActiveCameraWithInterp(kemperrr_camera, new mp.Vector3(100, 200, 100), new mp.Vector3(0, 0, 90), 5000, 0, 0);
//get gameplay camera
const gameplayCamera = camerasManager.gameplayCam;
mp.game.notify(JSON.stringify(gameplayCamera.getDirection()));
//get current active camera
const activeCamera = camerasManager.activeCamera;
mp.game.notify(JSON.stringify(activeCamera.getCoord()));
//events
//an event is triggered when any camera starts interpolating
camerasManager.on('startInterp', (camera) => {
mp.game.notify(JSON.stringify(camera.getCoord()));
});
//the event is triggered when any camera has completed interpolation
camerasManager.on('stopInterp', (camera) => {
mp.game.notify(JSON.stringify(camera.getCoord()));
});