Sgwobysmall
Based on game build 714014 | Last updated: 2026-03-08
Overview
SGwobysmall defines the complete state machine for the small form of Woby, a pet creature in DST. It extends SGCritter_common to inherit standard critter behaviors (idle, walk, sleep, eat, etc.) and adds specialized states for transformation to big Woby, interactable actions (pickup, give, dolongaction), sitting, and rack appearance. This state graph integrates with the locomotor component for movement control, wobyrack and container components for item storage interactions, and the pickable component for object harvesting.
Usage example
local inst = CreateEntity()
inst:AddTag("woby")
inst:AddComponent("locomotor")
inst:AddComponent("wobyrack")
inst:AddComponent("container")
inst:AddComponent("pickable")
-- ... other setup ...
inst.sg = StateGraph("wobysmall", states, events, "idle", actionhandlers)
inst.sg:GoToState("idle")
Dependencies & tags
Components used: locomotor, container, pickable, wobyrack, pet_hunger_classified (via inst.pet_hunger_classified)
Tags: Adds/removes: busy, jumping, nointerrupt, sitting, transforming, canrotate; checks: moving, idle
Properties
Not applicable
Main functions
This file is a state graph definition and does not expose standalone functions beyond returning the constructed StateGraph object.
Events & listeners
- Listens to:
transform– triggers transition to"transform"state.showrack– triggers"rack_appear"state unless blocked by tags.showalignmentchange– triggers"emote_cute"and stops movement.start_sitting– triggers"sitting"state if not already sitting or busy.animover,animqueueover– internal animation completion events to transition between states.playernewstate,ontimeout,locomote,hop,sink,voidfall,oneat,onavoidcombat,ontraitchanged,onwakeex,onsleepex– inherited fromSGCritterEventsandCommonHandlers.
- Pushes: Standard state events (
onenter,onexit) per state; events triggered viainst:PushEvent(...)are not explicitly listed but follow standard DST conventions.