alclient
Version:
A node client for interacting with Adventure Land - The Code MMORPG. This package extends the functionality of 'alclient' by managing a mongo database.
105 lines (104 loc) • 3.21 kB
TypeScript
import type { Character } from "./Character.js";
import type { SlotInfo, StatusInfo, TradeSlotType } from "./definitions/adventureland.js";
import type { CharacterType, CXData, DamageType, GData, MapName, NPCName, SkillName } from "./definitions/adventureland-data.js";
import type { ChannelInfo, PlayerData, QInfo } from "./definitions/adventureland-server.js";
import type { Entity } from "./Entity.js";
import { TradeItem } from "./TradeItem.js";
export declare class Player implements PlayerData {
protected G: GData;
afk?: boolean | "code";
id: string;
ctype: CharacterType;
abs: boolean;
angle?: number;
armor: number;
apiercing: number;
attack: number;
avoidance: number;
cid: number;
crit: number;
critdamage: number;
damage_type: DamageType;
evasion: number;
frequency: number;
going_x?: number;
going_y?: number;
heal: number;
level: number;
move_num: number;
moving: boolean;
name?: string;
party: string;
reflection: number;
resistance: number;
rpiercing: number;
target: string;
team?: string;
x: number;
y: number;
s: StatusInfo;
c: ChannelInfo;
cx: CXData;
focus?: string;
hp: number;
max_hp: number;
max_mp: number;
mp: number;
npc?: NPCName;
owner: string;
pdps: number;
q: QInfo;
range: number;
rip: boolean;
skin: string;
slots: SlotInfo;
speed: number;
stand?: boolean | "cstand" | "stand0";
tp?: boolean;
in: string;
map: MapName;
width: number;
height: number;
constructor(data: PlayerData, map: MapName, instance: string, g: GData);
updateData(data: PlayerData): void;
calculateDamageRange(defender: Character | Entity | Player, skill?: SkillName): [number, number];
/**
* Returns the items that the player is selling in their trade slots.
*
* @see getWantedItems for items the player is buying
*/
getItemsForSale(): Map<TradeSlotType, TradeItem>;
/**
* Returns the items that the player is purchasing in their trade slots
*
* @see getItemsForSale for items the player is selling
*/
getWantedItems(): Map<TradeSlotType, TradeItem>;
/**
* Returns true if the player is attacking us, or one of our party members
* @param player The player whose party to check if they are attacking
*/
isAttackingPartyMember(player: Character): boolean;
/**
* Returns true if they are attacking us specifically, false otherwise
* @param player The player to check if they are attacking
*/
isAttackingUs(player: Character): boolean;
/**
* If the player is disabled, they cannot move or attack
* @returns If the player is disabled
*/
isDisabled(): boolean;
/**
* Returns true if the player is "friendly", for example, if it's one of our characters, in our party, or in our friends list.
* @param character Our character (e.g.: bot.character)
*/
isFriendly(bot: Character): boolean;
/**
* Returns true if this player is an NPC.
*
* @return {*} {boolean}
* @memberof Player
*/
isNPC(): boolean;
}