Skip to main content

[NodeMod Core]

/ .. / default

Class: default

Defined in: src/enhanced/player.ts:118

Enhanced player management system providing comprehensive player operations and information. Handles player lookup, messaging, teleportation, moderation, and statistics.

Example​

// Get all connected players
const players = nodemodCore.player.getAll();
players.forEach(player => {
console.log(`${player.name}\: ${player.frags} kills, ${player.deaths} deaths`);
});

// Find a specific player
const admin = nodemodCore.player.getByName('AdminPlayer');
if (admin) {
admin.sendMessage('Welcome back, admin!');
admin.teleport([100, 200, 300]);
}

// Broadcast message to all players
nodemodCore.player.broadcast('Round starting in 10 seconds!', 'center');

// Get players near a position
const nearby = nodemodCore.player.getPlayersInRadius([0, 0, 0], 500);
nearby.forEach(player => {
player.sendMessage('You are near spawn!');
});

Constructors​

Constructor​

new default(utilService, msgService, soundService): NodemodPlayer

Defined in: src/enhanced/player.ts:133

Creates a new NodemodPlayer instance.

Parameters​

utilService​

default

Utility service for entity operations

msgService​

default

Message service for player communication

soundService​

default

Sound service for audio feedback

Returns​

NodemodPlayer

Properties​

util​

private util: default

Defined in: src/enhanced/player.ts:120

Utility service for entity operations

msg​

private msg: default

Defined in: src/enhanced/player.ts:122

Message service for player communication

sound​

private sound: default

Defined in: src/enhanced/player.ts:124

Sound service for audio feedback

Methods​

getAll()​

getAll(): PlayerInfo[]

Defined in: src/enhanced/player.ts:156

Gets all connected players with enhanced information.

Returns​

PlayerInfo[]

Array of PlayerInfo objects for all connected players

Example​

const players = nodemodCore.player.getAll();
console.log(`${players.length} players online`);

players.forEach(player => {
if (player.health < 25) {
player.sendMessage('Your health is low!', 'hud');
}
});

getById()​

getById(id): PlayerInfo | null

Defined in: src/enhanced/player.ts:174

Gets a player by their entity index.

Parameters​

id​

number

Entity index of the player

Returns​

PlayerInfo | null

PlayerInfo object or null if not found

Example​

const player = nodemodCore.player.getById(1);
if (player) {
console.log(`Player 1 is ${player.name}`);
}

getBySteamId()​

getBySteamId(steamId): PlayerInfo | null

Defined in: src/enhanced/player.ts:193

Gets a player by their Steam ID.

Parameters​

steamId​

string

Steam ID to search for

Returns​

PlayerInfo | null

PlayerInfo object or null if not found

Example​

const player = nodemodCore.player.getBySteamId('STEAM_0\:1\:12345');
if (player) {
console.log(`Found player\: ${player.name}`);
}

getByName()​

getByName(name): PlayerInfo | null

Defined in: src/enhanced/player.ts:212

Gets a player by their name.

Parameters​

name​

string

Player name to search for (exact match)

Returns​

PlayerInfo | null

PlayerInfo object or null if not found

Example​

const admin = nodemodCore.player.getByName('AdminPlayer');
if (admin) {
admin.sendMessage('Admin privileges detected');
}

getPlayerInfo()​

getPlayerInfo(entity): PlayerInfo | null

Defined in: src/enhanced/player.ts:218

Parameters​

entity​

Entity

Returns​

PlayerInfo | null

getPlayerTeam()​

getPlayerTeam(entity): number

Defined in: src/enhanced/player.ts:263

Parameters​

entity​

Entity

Returns​

number

sendMessage()​

sendMessage(entity, message, type): void

Defined in: src/enhanced/player.ts:287

Sends a message to a player using various display methods.

Parameters​

entity​

Entity

Target player entity

message​

string

Message text to send

type​

string = 'chat'

Message display type ('chat', 'hud', 'console', 'center')

Returns​

void

Example​

const player = nodemodCore.player.getById(1);
if (player) {
// Different message types
nodemodCore.player.sendMessage(player.entity, 'Welcome!', 'chat');
nodemodCore.player.sendMessage(player.entity, 'Health\: 100', 'hud');
nodemodCore.player.sendMessage(player.entity, 'Debug info', 'console');
nodemodCore.player.sendMessage(player.entity, 'ROUND START!', 'center');
}

teleport()​

teleport(entity, origin, angles): boolean

Defined in: src/enhanced/player.ts:312

Parameters​

entity​

Entity

origin​

number[]

angles​

number[] | null

Returns​

boolean

kill()​

kill(entity): boolean

Defined in: src/enhanced/player.ts:330

Parameters​

entity​

Entity

Returns​

boolean

kick()​

kick(entity, reason): boolean

Defined in: src/enhanced/player.ts:338

Parameters​

entity​

Entity

reason​

string = 'Kicked by admin'

Returns​

boolean

ban()​

ban(entity, duration, reason): { steamId: string; duration: number; reason: string; } | null

Defined in: src/enhanced/player.ts:346

Parameters​

entity​

Entity

duration​

number = 0

reason​

string = 'Banned by admin'

Returns​

{ steamId: string; duration: number; reason: string; } | null

setHealth()​

setHealth(entity, health): number

Defined in: src/enhanced/player.ts:359

Parameters​

entity​

Entity

health​

number

Returns​

number

setArmor()​

setArmor(entity, armor): number

Defined in: src/enhanced/player.ts:366

Parameters​

entity​

Entity

armor​

number

Returns​

number

setFrags()​

setFrags(entity, frags): number

Defined in: src/enhanced/player.ts:373

Parameters​

entity​

Entity

frags​

number

Returns​

number

setMaxSpeed()​

setMaxSpeed(entity, speed): void

Defined in: src/enhanced/player.ts:381

Parameters​

entity​

Entity

speed​

number

Returns​

void

getDistance()​

getDistance(entity1, entity2): number

Defined in: src/enhanced/player.ts:388

Parameters​

entity1​

Entity

entity2​

Entity

Returns​

number

canSee()​

canSee(entity, target): boolean

Defined in: src/enhanced/player.ts:402

Parameters​

entity​

Entity

target​

Entity

Returns​

boolean

getStats()​

getStats(entity): PlayerStats | null

Defined in: src/enhanced/player.ts:420

Parameters​

entity​

Entity

Returns​

PlayerStats | null

findPlayers()​

findPlayers(criteria): PlayerInfo[]

Defined in: src/enhanced/player.ts:436

Parameters​

criteria​

Partial<PlayerInfo>

Returns​

PlayerInfo[]

getPlayersInRadius()​

getPlayersInRadius(origin, radius): PlayerInfo[]

Defined in: src/enhanced/player.ts:446

Parameters​

origin​

number[]

radius​

number

Returns​

PlayerInfo[]

broadcast()​

broadcast(message, type): void

Defined in: src/enhanced/player.ts:474

Broadcasts a message to all connected players.

Parameters​

message​

string

Message text to broadcast

type​

string = 'chat'

Message display type ('chat', 'hud', 'console', 'center')

Returns​

void

Example​

// Broadcast to all players
nodemodCore.player.broadcast('Server restarting in 5 minutes!', 'center');

// Chat message to all
nodemodCore.player.broadcast('Welcome to the server!', 'chat');

// HUD message for all
nodemodCore.player.broadcast('Round\: 3/10', 'hud');

createBot()​

createBot(name): PlayerInfo | null

Defined in: src/enhanced/player.ts:501

Creates a fake client (bot player) for testing or gameplay purposes.

Parameters​

name​

string = 'Bot'

Name for the bot player

Returns​

PlayerInfo | null

PlayerInfo object for the created bot, or null if creation failed

Example​

// Create a basic bot
const bot = nodemodCore.player.createBot('TestBot');
if (bot) {
console.log(`Created bot\: ${bot.name}`);
bot.teleport([0, 0, 0]);
}

// Create named bots
const bots = ['Bot1', 'Bot2', 'Bot3'].map(name =>
nodemodCore.player.createBot(name)
).filter(bot => bot !== null);