# NOTE BLOCK HANDLERS furniture_world_noteblock: debug: false type: world events: on player places note_block: - if > 0: - define noteblock ]> - if <[noteblock]> != null: - modifyblock <[noteblock]> no_physics - stop - adjustblock note:0 - adjustblock instrument:piano - adjustblock switched:false on player right clicks note_block: - if !: - determine cancelled on player breaks block: - if : - run furniture_world_note_block_undo_update def.at: - if : - run furniture_world_note_block_undo_update def.at: on player places block: - if : - run furniture_world_note_block_undo_update def.at: - if : - run furniture_world_note_block_undo_update def.at: furniture_world_note_block_undo_update: debug: false type: task definitions: at script: - define old_material <[at].material> - modifyblock <[at]> <[old_material]> no_physics delayed # CUSTOM BLOCK HANDLERS furniture_world_custom_block: debug: false type: world events: on player right clicks block: - if ! && !: - stop - if : - stop - if !|]>: - stop - ratelimit 5t - determine cancelled passively # - define cursor_solid - if <[cursor_solid]> == null: - stop - define block_face_normal ;fluids=false;nonsolids=false]> - define target_block <[cursor_solid].add[<[block_face_normal]>]> - if <[target_block].material.is_solid>: - stop # - define material [custom_model_data=] # - define pitch ].pass[0].fail[180]> - define yaw - if <[yaw]> == 1: - define yaw 90 - if <[yaw]> == 2: - define yaw 180 - if <[yaw]> == 3: - define yaw -90 - if <[yaw]> == 4: - define yaw 0 # - define collision_block |]> - modifyblock <[target_block]> <[collision_block]> no_physics # - run custom_block_create def.at:<[target_block]> def.material:<[material]> def.pitch:<[pitch]> def.yaw:<[yaw]> - animate animation:ARM_SWING - playsound sound:BLOCK_STONE_PLACE sound_category:blocks pitch:0.7 on player breaks block: - if ]> == null: - stop - if ! && !: - determine cancelled passively - stop - run custom_block_destroy def.at: # # WORLDEDIT COMPATIBILITY # on custom event id:worldedit_edit: - announce to_ops "Actor: ; Locations: " # COLLISION BLOCK HANDLERS furniture_world_collision_block: debug: false type: world events: on player right clicks block bukkit_priority:high: - if == null: - stop - if ! && !: - stop - if : - stop - if ].if_null[false]>: - determine cancelled