landsandboat/scripts/specs/test/CClientEntityPair.lua
sruon 6b4ef12dca xi_test: LSB test framework
Co-Authored-By: KnowOne134 <35616771+KnowOne134@users.noreply.github.com>
Co-Authored-By: InoUno <774909+InoUno@users.noreply.github.com>
Co-Authored-By: Corey <2593549+cocosolos@users.noreply.github.com>
2025-09-06 00:03:15 -06:00

58 lines
1.9 KiB
Lua

---@meta
-- Test player that combines client and entity functionality
-- luacheck: ignore 241
---@class CClientEntityPair : CTestEntity
---@field actions CClientEntityPairActions Action helper methods
---@field bcnm CClientEntityPairBCNM BCNM helper methods
---@field events CClientEntityPairEvents Event helper methods
---@field entities CClientEntityPairEntities Entity helper methods
---@field packets CClientEntityPairPackets Packet helper methods
local CClientEntityPair = {}
---@class ZonePosition
---@field x number X coordinate
---@field y number Y coordinate
---@field z number Z coordinate
---@field rot? integer Rotation (0-255)
---@field rotation? integer Rotation (0-255) - alternative to rot
---Process incoming packets and update client state
---@return nil
function CClientEntityPair:tick()
end
---Go to a specific zone with optional position
---@param zoneId xi.zone Zone ID to go to
---@param pos? ZonePosition Optional position table
---@return nil
function CClientEntityPair:gotoZone(zoneId, pos)
end
---Check if the client is currently waiting for a zone change
---@nodiscard
---@return boolean
function CClientEntityPair:isPendingZone()
end
---Get the inventory slot of an item with the specified quantity.
---@nodiscard
---@param itemId integer Item ID to search for
---@param quantity integer Minimum quantity needed
---@return integer? slotId Slot ID if found, nil otherwise
function CClientEntityPair:getItemInvSlot(itemId, quantity)
end
---Claim and kill a mob, handling death and despawn
---@param mobQuery CBaseEntity|string|integer Mob entity, name, or ID
---@param params? {expectDeath?: boolean, waitForDespawn?: boolean} Optional parameters
---@return nil
function CClientEntityPair:claimAndKillMob(mobQuery, params)
end
---Kill multiple mobs in sequence
---@param ... CBaseEntity|string|integer Mob queries
---@return nil
function CClientEntityPair:claimAndKillMobs(...)
end