rock-mod
Version:
Rock-Mod is a powerful framework designed for creating and managing mods for Grand Theft Auto (GTA) games.
145 lines (144 loc) • 4.12 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.MockPlayer = void 0;
const MockEntity_1 = require("../entity/MockEntity");
const RockMod_1 = require("../../../RockMod");
const Math_1 = require("../../../../shared/common/utils/math/Math");
class MockPlayer extends MockEntity_1.MockEntity {
_playerData;
get name() {
return this._playerData.name;
}
get socialClub() {
return this._playerData.socialClub;
}
get heading() {
return this._playerData.heading;
}
get health() {
return this._playerData.health;
}
get armour() {
return this._playerData.armour;
}
get isDead() {
return this.health <= 0;
}
get ip() {
return this._playerData.ip;
}
get serial() {
return this._playerData.serial;
}
get vehicle() {
return null;
}
get seat() {
return -1;
}
get weapon() {
return this._playerData.weapon;
}
get weaponAmmo() {
return this._playerData.weaponAmmo;
}
get eyeColor() {
return 0;
}
get streamedPlayers() {
return [];
}
constructor(options) {
super(options);
const { name = "Mock Player", socialClub = "mock_club", health = 100, heading = 0, armour = 0, weapon = 0, weaponAmmo = 0, ip = "127.0.0.1", serial = "mock_serial", } = options;
this._playerData = {
name,
socialClub,
health,
heading,
armour,
weapon,
weaponAmmo,
ip,
serial,
};
}
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) {
this.setPosition(position);
this._playerData.health = 100;
}
setName(name) {
this._playerData.name = name;
}
setHeading(value) {
this._playerData.heading = value;
}
setHealth(value) {
this._playerData.health = (0, Math_1.MathClamp)(value, 0, 100);
}
setArmour(value) {
this._playerData.armour = (0, Math_1.MathClamp)(value, 0, 100);
}
setWeaponAmmo(weapon, ammo) {
this._playerData.weapon = RockMod_1.RockMod.instance.utils.hash(weapon);
this._playerData.weaponAmmo = ammo;
}
giveWeapon(weapon, ammo) {
this.setWeaponAmmo(weapon, ammo);
}
removeWeapon(weapon) {
if (this._playerData.weapon === RockMod_1.RockMod.instance.utils.hash(weapon)) {
this._playerData.weapon = 0;
this._playerData.weaponAmmo = 0;
}
}
enableVoiceTo(player) {
throw new Error(`${player.name}: Not implemented: enableVoiceTo`);
}
disableVoiceTo(player) {
throw new Error(`${player.name}: Not implemented: disableVoiceTo`);
}
putIntoVehicle(vehicle, seat) {
throw new Error(`${this.name}: ${vehicle.id} ${seat} putIntoVehicle`);
}
ejectFromVehicle() {
throw new Error("Not implemented: ejectFromVehicle");
}
setCustomization() {
throw new Error("Not implemented: setCustomization");
}
setHeadOverlay() {
throw new Error("Not implemented: setHeadOverlay");
}
setEyeColor() {
throw new Error("Not implemented: setEyeColor");
}
setProp() {
throw new Error("Not implemented: setProp");
}
setClothes() {
throw new Error("Not implemented: setClothes");
}
setHairColor() {
throw new Error("Not implemented: setHairColor");
}
kick() {
throw new Error("Not implemented: kick");
}
playAnimation() {
throw new Error("Not implemented: playAnimation");
}
stopAnimation() {
throw new Error("Not implemented: stopAnimation");
}
removeFromVehicle() {
throw new Error("Not implemented removeFromVehicle");
}
}
exports.MockPlayer = MockPlayer;