Skip to main content
Apocalypse Rising 2 only. Guard with if handle.x then before calling on other games.

Handle methods

MethodReturnsWhat it tells you
getAmmo()number?Rounds in their current weapon. nil if unknown or empty-handed.
getMaxAmmo()number?Magazine capacity of their current weapon. nil if unknown.
getVelocity()Vector3Their current velocity.
isHealing()booleantrue while they use a medical or consumable item.
AR2 notes: getWeapon() and getWeaponName() both return the weapon item name (a string), not a table. getTeam() is always nil and isBlind() / isScoped() are always false (the game has no such state to read for other players). Other players’ health is predicted, not exact, so treat getHealth() as an estimate.

Signals

Call :Connect(callback) on these; your callback gets player first. They get cleaned up when your script unloads.
SignalYour callback receives
onAmmoChanged(player, rounds, maxRounds)
onHealingChanged(player, healing)

Example

if api.players.onHealingChanged then
    api.players.onHealingChanged:Connect(function(player, healing)
        if healing then
            print(player.Name, "is healing")
        end
    end)
end