diff options
author | Elias Fleckenstein <eliasfleckenstein@web.de> | 2022-05-31 18:10:27 +0200 |
---|---|---|
committer | Elias Fleckenstein <eliasfleckenstein@web.de> | 2022-05-31 18:10:27 +0200 |
commit | ea4263290b2e7d82b29cc9809d98bf33528b1c61 (patch) | |
tree | 74ae3a5c36f990ceeb272410413f0be2bcc40e07 /example/print-node.lua | |
parent | fae336d1a2d613fd00640ed6ccbb9eb386086c82 (diff) | |
download | hydra-dragonfire-ea4263290b2e7d82b29cc9809d98bf33528b1c61.tar.xz |
Event system
Diffstat (limited to 'example/print-node.lua')
-rwxr-xr-x | example/print-node.lua | 17 |
1 files changed, 9 insertions, 8 deletions
diff --git a/example/print-node.lua b/example/print-node.lua index 3cf514e..d72f474 100755 --- a/example/print-node.lua +++ b/example/print-node.lua @@ -1,20 +1,21 @@ #!/usr/bin/env hydra-dragonfire local client = require("client")() -client:enable("map") -client:subscribe("move_player") +client:enable("pkts", "map") +client.pkts:subscribe("move_player") + client:connect() local pos -while not hydra.canceled() do - local pkt, interrupted = client:poll(1) +while true do + local evt = client:poll(1) - if pkt then - pos = (pkt.pos / hydra.BS + vec3(0, -1, 0)):round() - elseif not interrupted then + if not evt or evt.type == "disconnect" or evt.type == "interrupt" then break - elseif pos then + elseif evt.type == "pkt" then + pos = (evt.pkt_data.pos / hydra.BS + vec3(0, -1, 0)):round() + elseif evt.type == "timeout" and pos then local node = client.map:node(pos) print(pos, node and node.param0) end |