#camera shake function

1 messages · Page 1 of 1 (latest)

tired pier
#

couldnt find a built in function to apply camerashake to a player so i made this one

//--copperCompilerFileType:lib
//--copperCompilerRef:libs/dsmlStdLib.cc
import { TicksPerSecond, world } from "@minecraft/server"

/**
 * Converts an amount of ticks to seconds
* @param {number} ticks Number of ticks to convert to seconds
* @returns {number} Number of seconds that equate to given ticks
*/
export function ticksToSecs(ticks) {
    return ticks / TicksPerSecond;
}

//--copperCompilerObjType:enum
export const CamShakeType = {
    Positional: "positional",
    Rotational: "rotational"
}

/**
* @param {Player} player
* @param {number} intensity
* @param {number} ticks
* @param {CamShakeType} shakeType
*/
//--copperCompilerExtend:Player
export function camShake(player, intensity, ticks, shakeType) {
    let gamerule = world.gameRules.sendCommandFeedback; // record the already set value

    world.gameRules.sendCommandFeedback = false;
    player.dimension.runCommand("camerashake add \"" + player.name + "\" " + intensity + " " + ticksToSecs(ticks) + " " + shakeType);
    world.gameRules.sendCommandFeedback = gamerule; // preserve it
}
rugged harbor
modest gorge
#

why not just using player.runCommand instead of an entire function?

bleak quiver
#

yeah just use player.runCommand

barren snow
#

ye

tired pier