UNPKG

@jsprismarine/prismarine

Version:

Dedicated Minecraft Bedrock Edition server written in TypeScript

74 lines 2.33 kB
import { default as BinaryStream } from '../../../../jsbinaryutils/src/index.ts'; import { Vector3 } from '../../../../math/src/index.ts'; import { Item } from '../../item/Item'; import { default as BlockPosition } from '../../world/BlockPosition'; import { default as DataPacket } from './DataPacket'; export declare enum UseItemAction { CLICK_BLOCK = 0, CLICK_AIR = 1, BREAK_BLOCK = 2 } export declare enum TransactionType { NORMAL = 0, MISMATCH = 1, USE_ITEM = 2, USE_ITEM_ON_ENTITY = 3, RELASE_ITEM = 4 } export declare class LegacySlotChange { containerId: number; slots: number[]; constructor(containerId: number, slots: number[]); static fromNetwork(stream: BinaryStream): LegacySlotChange; toNetwork(stream: BinaryStream): void; } export declare enum ActionSource { INVALID = -1, CONTAINER = 0, GLOBAL = 1, WORLD = 2, CREATIVE = 3, UNTRACKED_INTERACTION_UI = 100, NON_IMPLEMENTED_TODO = 99999 } export declare class InventoryAction { sourceType: number; windowId: number | null; sourceFlags: number | null; targetSlot: number; oldItem: Item; newItem: Item; constructor(sourceType: number, windowId: number | null, sourceFlags: number | null, targetSlot: number, oldItem: Item, newItem: Item); static fromNetwork(stream: BinaryStream): InventoryAction; toNetwork(stream: BinaryStream): void; } export interface TransactionData { actionType: number; hotbarSlot: number; itemInHand: Item; } export interface UseItemData extends TransactionData { blockPosition: BlockPosition; blockFace: number; playerPosition: Vector3; clickPosition: Vector3; blockRuntimeId: number; } export interface UseItemOnEntityData extends TransactionData { entityRuntimeId: bigint; playerPosition: Vector3; clickPosition: Vector3; } export interface RelaseItemData extends TransactionData { headRotation: Vector3; } export default class InventoryTransactionPacket extends DataPacket { static NetID: number; legacyRequestId: number; legacySlotChanges: LegacySlotChange[]; transactionType: TransactionType; inventoryActions: InventoryAction[]; transactionData: TransactionData; decodePayload(): void; } //# sourceMappingURL=InventoryTransactionPacket.d.ts.map