aboutsummaryrefslogtreecommitdiff
path: root/example/print-node.lua
diff options
context:
space:
mode:
authorElias Fleckenstein <eliasfleckenstein@web.de>2022-05-31 18:10:27 +0200
committerElias Fleckenstein <eliasfleckenstein@web.de>2022-05-31 18:10:27 +0200
commitea4263290b2e7d82b29cc9809d98bf33528b1c61 (patch)
tree74ae3a5c36f990ceeb272410413f0be2bcc40e07 /example/print-node.lua
parentfae336d1a2d613fd00640ed6ccbb9eb386086c82 (diff)
downloadhydra-dragonfire-ea4263290b2e7d82b29cc9809d98bf33528b1c61.tar.xz
Event system
Diffstat (limited to 'example/print-node.lua')
-rwxr-xr-xexample/print-node.lua17
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