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): null | PlayerInfo

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

Gets a player by their entity index.

Parameters

id

number

Entity index of the player

Returns

null | PlayerInfo

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): null | PlayerInfo

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

Gets a player by their Steam ID.

Parameters

steamId

string

Steam ID to search for

Returns

null | PlayerInfo

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): null | PlayerInfo

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

Gets a player by their name.

Parameters

name

string

Player name to search for (exact match)

Returns

null | PlayerInfo

PlayerInfo object or null if not found

Example

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

getPlayerInfo()

getPlayerInfo(entity): null | PlayerInfo

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

Parameters

entity

Entity

Returns

null | PlayerInfo

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

null | number[]

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): null | { steamId: string; duration: number; reason: string; }

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

Parameters

entity

Entity

duration

number = 0

reason

string = 'Banned by admin'

Returns

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

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): null | PlayerStats

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

Parameters

entity

Entity

Returns

null | PlayerStats

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): null | PlayerInfo

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

null | PlayerInfo

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);