Skip to content

BeatPulse

Bops its entity on the beat of a BeatClock: it’s drawn bigger by Size as each beat lands and shrinks back before the next, ahead by the player’s visual offset so it’s seen on the beat that’s heard. Speakers, dancers, a title, the lights. Only how it’s drawn changes (its children with it); its transform and collider stay as they are.

Works with: BeatClock (somewhere in the scene, keeping the beat)

Changes how its entity is drawn (a tint, a shake or drawing it on top).

Each is listed as its key in the scene file and the MCP tools, then its kind of value, its default and what it does.

  • size: a number = 0.15. How much bigger it’s drawn on the beat: 0.15 is 15% bigger. Below 0 shrinks it instead. (Field: a number.)
  • every: a whole number = 1. Bops every this many beats: 1 on every beat, 2 on every other, 4 once a bar of four. (Field: a number.)
  • clock: text = null. The entity whose BeatClock it follows. Empty follows the first in the scene. (Names an entity.) (Field: an entity’s name.)

Not saved with the scene; scripts read them, and entity_get shows them as live while the game plays.

  • scale: a number. How big it’s drawn right now, from 1 up to 1 + Size as a beat lands; set by the game.

Scripts use it as BeatPulse: its methods, events and values that aren’t saved with the scene.