package action type Action struct { Type string TargetID string TargetName string Step int WaitLeft int Data map[string]any } func (a *Action) Advance() bool { if a.WaitLeft > 0 { a.WaitLeft-- return false } return true } type DropEntry struct { ItemID string `yaml:"item_id"` Table string `yaml:"table"` Weight int `yaml:"weight"` Quantity int `yaml:"quantity"` Depletes bool `yaml:"depletes"` Message string `yaml:"message"` Level int `yaml:"level"` XP int `yaml:"xp"` } type DropTableDef struct { ID string `yaml:"id"` Drops []DropEntry `yaml:"drops"` }