Class default<DescriptionType, TypeType, EntityReferenceType, TagType>Abstract

Entity class that includes stats/status system. Note: We're assuming something with stats is also movable!

Type Parameters

Hierarchy

Implements

Constructors

Properties

Accessors

Methods

Constructors

Properties

_description?: DescriptionType
allowSmartMovementClientside?: boolean

Used for smart vehicle movement (minecarts) Note: This is clientside only.

anim?: number
attackAnimationData?: IAttackAnimationData

Used for attack animations. Note: This is clientside only.

direction?: default

undefined = Vector2.ZERO for this

entityType: EntityType
event: IEventEmitter<default<DescriptionType, TypeType, EntityReferenceType, TagType>, IEntityWithStatsEvents>
facingDirection?: East | North | West | South

undefined = Direction.None for this

fromX?: number

Note: This might not be a whole number.

fromY?: number

Note: This might not be a whole number.

historicalActions?: PartialRecord<ActionType, number>
id: number
isMoving?: boolean

Not guaranteed to be synced between the server and client for Human entities

islandId: `${number},${number}`
moveType?: MoveType
movementCompleteZ?: number

Only used for Human entities

movingData: IMovingData = {}

Used for movement animations. Note: This is clientside only.

persistentMarker: undefined | {
    guid: string;
    type: Tamed;
}

Notifier marker assigned to this entity

preventRendering?: boolean
referenceId?: number

Do not use this property directly, instead use `game.references.getReference()

renamed?: string | ISerializedTranslation
shouldSkipNextMovement?: true
shouldSkipNextUpdate?: true
slipping?: ISlippingData
stat: default<default<DescriptionType, TypeType, EntityReferenceType, TagType>> = ...
stats: IStats
status: IStatus
tileUpdateType: TileUpdateType
type: TypeType
x: number
y: number
z: WorldZ

Accessors

  • get asCorpse(): undefined | default
  • Returns undefined | default

  • get asCreature(): undefined | default
  • Returns undefined | default

  • get asDoodad(): undefined | default
  • Returns undefined | default

  • get asEntity(): default<DescriptionType, TypeType, EntityReferenceType, TagType>
  • Returns default<DescriptionType, TypeType, EntityReferenceType, TagType>

  • get asEntityMovable(): default<DescriptionType, TypeType, EntityReferenceType, TagType>
  • Returns default<DescriptionType, TypeType, EntityReferenceType, TagType>

  • get asEntityWithStats(): default<DescriptionType, TypeType, EntityReferenceType, TagType>
  • Returns default<DescriptionType, TypeType, EntityReferenceType, TagType>

  • get asHuman(): undefined | default<unknown, number, NPC | Player>
  • Returns undefined | default<unknown, number, NPC | Player>

  • get asItem(): undefined | default
  • Returns undefined | default

  • get asLoaded(): undefined | this
  • undefined if this entity's island is not loaded, this if it is

    Returns undefined | this

  • get asLocalPlayer(): undefined | default
  • Returns undefined | default

  • get asNPC(): undefined | default
  • Returns undefined | default

  • get asNotLocalPlayer(): undefined | this
  • Returns undefined | this

  • get asPlayer(): undefined | default
  • Returns undefined | default

  • get asTile(): undefined | default
  • Returns undefined | default

  • get asTileEvent(): undefined | default
  • Returns undefined | default

  • get description(): undefined | Readonly<DescriptionType>
  • Get the entities description

    Returns undefined | Readonly<DescriptionType>

  • get facingTile(): default
  • Regular entities don't have a direction so this will be the same as getTile()

    Returns default

  • get fromTile(): undefined | default
  • Tile the entity is moving from

    Returns undefined | default

  • get humansVisible(): default<unknown, number, NPC | Player>[]
  • Returns humans within this entities fov & that they can see

    Returns default<unknown, number, NPC | Player>[]

  • get isFlying(): boolean
  • Returns boolean

  • get isLoaded(): boolean
  • Whether this entity's island is loaded

    Returns boolean

  • get isLocalPlayer(): boolean
  • Returns boolean

  • get isOnFire(): FireType
  • Returns FireType

  • get isValid(): boolean
  • Returns boolean

  • get isWithinHumanBounds(): boolean
  • Checks if the entity is within the viewport bounds of one or more humans

    Returns boolean

  • get island(): default
  • Returns default

  • get point(): undefined | IVector3
  • Location of the entity on the world. Parent classes will probably mark this as always defined

    Returns undefined | IVector3

  • get reference(): undefined | Reference<EntityReferenceType>
  • Returns undefined | Reference<EntityReferenceType>

  • get slippingData(): undefined | ISlippingData
  • Returns undefined | ISlippingData

  • get tile(): undefined | default
  • Tile the entity is on in the world. Parent classes will probably mark this as always defined

    Returns undefined | default

  • get tilesAround(): undefined | default[]
  • Returns undefined | default[]

Methods

  • Parameters

    Returns void

  • Adds a referenceId to the entity if it doesn't already have one

    Returns void

  • Parameters

    • tag: TagType

    Returns void

  • Animates the entity between a specific set of positions

    Parameters

    • fromX: number
    • fromY: number
    • toX: number
    • toY: number
    • delay: Delay

    Returns void

  • Parameters

    Returns void

  • Faces the target and animates a bump into effect

    Parameters

    Returns void

  • Parameters

    • type: TypeType

    Returns undefined | default<DescriptionType, TypeType, EntityReferenceType, TagType>

  • Parameters

    • type: CanASeeBType
    • islandId: `${number},${number}`
    • x: number
    • y: number
    • z: number
    • fieldOfView: undefined | FieldOfView = renderer.fieldOfView
    • Optional customRadius: number

    Returns boolean

  • Returns void

  • Generator for status effects on the entity.

    Returns default[]

  • Returns undefined | Set<StatusType>

  • Gets a data

    Returns

    Data value or undefined if it wasn't found

    Type Parameters

    • T

    Parameters

    • key: string

      Data key

    Returns undefined | T

  • Called when filling out the entities description for the first time

    Returns undefined | DescriptionType

  • Returns number

  • Gets movement progress and moves the state machine forward when the movement is completed

    Parameters

    • timeStamp: number

    Returns number

  • Gets the temperature produced by this object. Positive values are "heat", negative values are "cold". Refer to the values of the Temperature enum to see the possible range. If this method is not implemented, or it returns undefined, Temperature.Neutral is used.

    Returns undefined | number

  • Returns the handler for this status effect, whether or not this entity currently has the effect.

    Type Parameters

    Parameters

    Returns undefined | S

  • Returns the handler for this status effect, whether or not this entity currently has the effect.

    Parameters

    Returns number

  • Generator for status effects on the entity.

    Returns default[]

  • Parameters

    • defaultChance: number

    Returns undefined | number

  • Returns undefined | number

  • Parameters

    • defaultChance: number

    Returns undefined | number

  • Parameters

    • defaultChance: number

    Returns undefined | number

  • Check if a data was set

    Returns

    True if the data exists, false if it doesn't

    Parameters

    • key: string

      Data key

    Returns boolean

  • Returns whether the entity has the given StatusType

    Parameters

    Returns number

  • Parameters

    • tag: TagType

    Returns boolean

  • Called when loading the human

    Returns void

  • Parameters

    • type: SfxType
    • Optional delay: number
    • Optional speed: number

    Returns void

  • Parameters

    • type: SfxType
    • Optional delay: number
    • Optional speed: number

    Returns void

  • Returns void

  • Removes a data

    Returns

    True when the data is removed. False if the key wasn't set

    Parameters

    • key: string

      Data key

    Returns boolean

  • Returns void

  • Parameters

    • tag: TagType

    Returns void

  • Sets a data

    Rturns

    The value

    Type Parameters

    • T

    Parameters

    • key: string

      Data key

    • value: T

      Data value

    Returns T

  • Parameters

    • fromX: number = ...
    • fromY: number = ...

    Returns void

  • Parameters

    • fromX: number
    • fromY: number
    • Optional toZ: number
    • Optional options: IMoveToOptions

    Returns void

  • Immediately move the entity to the tile

    Parameters

    Returns void

  • Sets whether the entity has the given StatusType. Emits EntityEvent.StatusChange.

    Parameters

    • status: StatusType

      The status to change

    • level: number | boolean

      Whether the entity will have the status.
      If given false/0, removes the status. If given true/1+, raises the status to the given level.

    • reason: StatusChangeReason

      The reason for the change

    • force: boolean = false

      Forces the status to be set to the given value, even if the current effect is being lowered.

    Returns boolean

  • Skips the next movement for this creature / npc

    Returns void

  • Skips the next update for this creature / npc

    Returns void

  • Returns void

  • Returns string

  • Called when the entity is about to move to another tile. This should update relevant properties on the tile and return true

    Returns

    False to block the move

    Parameters

    • fromTile: default

      Tile the entity was on

    • toTile: default

      Tile the entity is moving onto

    Returns boolean

  • Updates the world renderer & flow field state for the tile

    Parameters

    • tileUpdateType: TileUpdateType = ...
    • Optional updateNeighbors: boolean
    • Optional skipFlowFieldUpdate: boolean

    Returns void

Generated using TypeDoc