Server actually ticks
This commit is contained in:
@@ -4,8 +4,16 @@ import type { ServerContext } from "bworld/server";
|
||||
export function setup(ctx: ServerContext) {
|
||||
// used by blocks/example_block.json, which passes { message } as params
|
||||
ctx.components.register_block<{ message: string }>("example_mod:announce", {
|
||||
on_interact(_block, params, player) {
|
||||
player.send_message(params.message);
|
||||
// block data is saved with the world. on_tick and on_second only run for blocks that have some
|
||||
on_create(block) {
|
||||
block.data = { age: 0 };
|
||||
},
|
||||
// on_tick runs 20 times a second, on_second once, while a player is nearby
|
||||
on_second(block) {
|
||||
block.data.age += 1;
|
||||
},
|
||||
on_interact(block, params, player) {
|
||||
player.send_message(`${params.message} It's been here for ${block.data?.age ?? 0} seconds.`);
|
||||
// handled, so right clicking it doesn't place a block
|
||||
return true;
|
||||
},
|
||||
|
||||
Reference in New Issue
Block a user