digraph G { node [shape=record,style=dashed,color="white",fontcolor="white"]; edge [color="white"]; rankdir="BT"; size="11,11"; bgcolor="black"; entity [label="{ENTITY|id\ngame-context\nmax-hit-points\ndamage-points\npoints\nstatus\ninitial-sparks\nadditional-sparks\nauto-finish-construction}"]; ephemeral [label="{EPHEMERAL|ttl\nttl-max}"]; location [style=bold,label="{LOCATION|x\ny\ndx\ndy}"]; frame [label="{FRAME|}"]; shape [label="{SHAPE|primitives}"]; drawable [label="{DRAWABLE|}"]; collidable [label="{COLLIDABLE|radius}"]; digit [style=bold,label="{DIGIT|}"]; spark [style=bold,label="{SPARK|}"]; brain [label="{BRAIN|until-next-action}"]; powerup [style=bold,label="{POWERUP|powerup-main-gun\npowerup-passive-gun\npowerup-main-shield\nhealth-level}"]; ship [label="{SHIP|ship-main-gun\nship-passive-gun\nship-main-shield}"]; player [style=bold,label="{PLAYER|}"]; enemy [label="{ENEMY|}"]; enemy_1 [style=bold,label="{ENEMY-1|}"]; enemy_2 [style=bold,label="{ENEMY-2|}"]; enemy_3 [style=bold,label="{ENEMY-3|}"]; weapon [label="{WEAPON|}"]; shot [label="{SHOT|}"]; simple_shot [style=bold,label="{SIMPLE-SHOT|}"]; hardnose_shot [style=bold,label="{HARDNOSE-SHOT|}"]; super_shot [style=bold,label="{SUPER-SHOT|}"]; mine [label="{MINE|}"]; proximity_mine [style=bold,label="{PROXIMITY-MINE|}"]; field_mine [style=bold,label="{FIELD-MINE|}"]; shield [label="{SHIELD|shots-absorbed}"]; shot_shield [style=bold,label="{SHOT-SHIELD|}"]; ship_shield [style=bold,label="{SHIP-SHIELD|}"]; fieldpath [style=bold,label="{FIELDPATH|steps\npath}"]; pathcontact [style=bold,label="{PATHCONTACT|number-of-contacts\npath-ids}"]; field [label="{FIELD|range\nnum-paths\npaths\nentity-contacts}"]; tesla_field [style=bold,label="{TESLA-FIELD|power-range\npower-lines}"]; game [style=bold,label="{GAME|players\nplayer-shots\nenemy-mines\nenemies\nenemy-shots\nsparks\npower-ups\nscore\nscore-board\nhighscore\nhighscore-board\nenemy-spawn-timer\npaused}"]; fieldpath; pathcontact; field; game; frame -> ephemeral; frame -> location; drawable -> entity; drawable -> frame; drawable -> shape; collidable -> drawable; digit -> drawable; spark -> drawable; brain -> collidable; powerup -> brain; ship -> brain; player -> ship; enemy -> ship; enemy_1 -> enemy; enemy_2 -> enemy; enemy_3 -> enemy; weapon -> brain; shot -> weapon; simple_shot -> shot; hardnose_shot -> shot; super_shot -> shot; mine -> weapon; proximity_mine -> mine; field_mine -> mine; shield -> brain; shot_shield -> shield; ship_shield -> shield; tesla_field -> field; tesla_field -> weapon; }