UNPKG

rock-mod

Version:

Rock-Mod is a powerful framework designed for creating and managing mods for Grand Theft Auto (GTA) games.

139 lines (138 loc) 4.57 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.RagePlayer = void 0; const RageEntity_1 = require("../entity/RageEntity"); const RockMod_1 = require("../../../RockMod"); const Math_1 = require("../../../../shared/common/utils/math/Math"); class RagePlayer extends RageEntity_1.RageEntity { get name() { return this.mpEntity.name; } get socialClub() { return this.mpEntity.socialClub; } get heading() { return this.mpEntity.heading; } get health() { return this.mpEntity.health; } get armour() { return this.mpEntity.armour; } get isDead() { return this.mpEntity.health <= 0; } get ip() { return this.mpEntity.ip; } get serial() { return this.mpEntity.serial; } get vehicle() { const mpVehicle = this.mpEntity.vehicle; if (!mpVehicle) { return null; } return RockMod_1.RockMod.instance.vehicles.getByID(mpVehicle.id); } get seat() { return this.mpEntity.seat; } get weapon() { return this.mpEntity.weapon; } get weaponAmmo() { return this.mpEntity.weaponAmmo; } get eyeColor() { return this.mpEntity.eyeColor; } get streamedPlayers() { const players = []; for (const mpEntity of this.mpEntity.streamedPlayers) { players.push(RockMod_1.RockMod.instance.players.getByID(mpEntity.id)); } return players; } constructor(options) { super(options); } emitEvent(eventName, ...args) { return RockMod_1.RockMod.instance.net.events.emitClient(this, eventName, ...args); } emitRPC(rpcName, ...args) { return RockMod_1.RockMod.instance.net.rpc.emitClient(this, rpcName, ...args); } spawn(position) { return this.mpEntity.spawn(new mp.Vector3(position)); } setName(name) { this.mpEntity.name = name; } setHeading(value) { this.mpEntity.heading = value; } setHealth(value) { this.mpEntity.health = (0, Math_1.MathClamp)(value, 0, 100); } setArmour(value) { this.mpEntity.armour = (0, Math_1.MathClamp)(value, 0, 100); } setWeaponAmmo(weapon, ammo) { return this.mpEntity.setWeaponAmmo(mp.joaat(weapon), ammo); } giveWeapon(weapon, ammo) { return this.mpEntity.giveWeapon(mp.joaat(weapon), ammo); } removeWeapon(weapon) { return this.mpEntity.removeWeapon(mp.joaat(weapon)); } enableVoiceTo(player) { const mpPlayer = mp.players.at(player.id); return this.mpEntity.enableVoiceTo(mpPlayer); } disableVoiceTo(player) { const mpPlayer = mp.players.at(player.id); return this.mpEntity.disableVoiceTo(mpPlayer); } putIntoVehicle(vehicle, seat) { const mpVehicle = mp.vehicles.at(vehicle.id); return this.mpEntity.putIntoVehicle(mpVehicle, seat || 0); } ejectFromVehicle() { return this.mpEntity.removeFromVehicle(); } setCustomization(data) { const { gender, shapeFirst, shapeSecond, shapeThird, skinFirst, skinSecond, skinThird, shapeMix, skinMix, thirdMix, eyeColor, hairColor, highlightColor, faceFeatures, } = data; return this.mpEntity.setCustomization(gender, shapeFirst, shapeSecond, shapeThird, skinFirst, skinSecond, skinThird, shapeMix, skinMix, thirdMix, eyeColor, hairColor, highlightColor, faceFeatures); } setHeadOverlay(overlayID, index, opacity, firstColor, secondColor) { return this.mpEntity.setHeadOverlay(overlayID, [index, opacity, firstColor, secondColor]); } setEyeColor(colorID) { this.mpEntity.eyeColor = colorID; } setProp(propID, drawableID, textureID) { return this.mpEntity.setProp(propID, drawableID, textureID); } setClothes(componentID, drawableID, textureID, paletteID) { return this.mpEntity.setClothes(componentID, drawableID, textureID, paletteID); } setHairColor(colorID, highlightColorID) { return this.mpEntity.setHairColor(colorID, highlightColorID); } kick(reason) { return this.mpEntity.kick(reason ?? ""); } playAnimation(dictionary, name, speed, flag) { return this.mpEntity.playAnimation(dictionary, name, speed, flag); } stopAnimation() { return this.mpEntity.stopAnimation(); } removeFromVehicle() { return this.mpEntity.removeFromVehicle(); } } exports.RagePlayer = RagePlayer;