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
JavaScript
"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;