You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
49 lines
2.7 KiB
JavaScript
49 lines
2.7 KiB
JavaScript
|
|
// Decoseasons; behavior script entry point.
|
|
|
|
// This file only wires the modules together; all logic lives under core/ and features/.
|
|
// core/ shared foundation, imported by everything, no back-dependencies
|
|
// mc.js @minecraft/server reexports + isCreative/getDir/safeGetBlock
|
|
// grid.js the ONE rotation convention (RIGHT/FWD), facing tables, water/ground probes
|
|
// fx.js undoPlace, break particles, summonDisplay, brush feedback, debounce
|
|
// variants.js the color-brush variant registry
|
|
// events.js central place/break dispatch (one subscription each, fanned out)
|
|
// multiblock.js defineGridMultiblock(); the shared validate/place/break machinery
|
|
//
|
|
// features/ one concern each; import from core/ and (one-directionally) each other
|
|
// mb_grid grid & canopy multiblocks as data (fc, ic, at, tent, lg, um, bu, bt)
|
|
// mb_trees colour state trees (ct, lt)
|
|
// mb_pairs partner / vertical / 2x2 multiblocks (fairy, swing, rope, tw, lc, br, bo, snowman, ornament, tables, balloon)
|
|
// display place a block -> spawn an entity display pieces (koinobori, pinwheels, mason jars)
|
|
// containers presents: place -> spawn a container entity, break -> drop its contents
|
|
// decor standalone brush recolorable decoration blocks
|
|
// seating sit configuration
|
|
// rideables block <-> rideable-entity vehicles (tube, lounger, bike, surfboard, basket bike)
|
|
// toggles block <-> animated-entity toggles (buoy, sprinkler, spinner birds)
|
|
// interact right click lids/toggles + the interact fall through dispatcher
|
|
// brush the Color Brush recolour
|
|
// maintenance pick block anchor redirect + firepit embers
|
|
// bounce springy blocks that launch a player who lands on them
|
|
// decostation decobench + decomposer economy backend (scoreboards, scriptevent router, block/deco to materials)
|
|
// stations place the decobench/decomposer station entities from a placer item (UI/panel = coworker's to build)
|
|
// break_particle custom block break particle
|
|
//
|
|
// To add a prop: plain recolorable block -> one line in decor.js; rotating/canopy multiblock -> one defineGridMultiblock() in mb_grid.js; anything bespoke -> its own features/ module.
|
|
|
|
import "./features/mb_grid.js";
|
|
import "./features/mb_trees.js";
|
|
import "./features/mb_pairs.js";
|
|
import "./features/display.js";
|
|
import "./features/containers.js";
|
|
import "./features/decor.js";
|
|
import "./features/seating.js";
|
|
import "./features/rideables.js";
|
|
import "./features/toggles.js";
|
|
import "./features/interact.js";
|
|
import "./features/brush.js";
|
|
import "./features/maintenance.js";
|
|
import "./features/bounce.js";
|
|
import "./features/decostation.js";
|
|
import "./features/stations.js";
|
|
import "./features/break_particle.js";
|