From 1b7ac0d8f08ecba604b9c143b1dfe9aeee80a968 Mon Sep 17 00:00:00 2001 From: Thomas Rudin Date: Thu, 14 Jun 2018 14:54:21 +0200 Subject: [PATCH] mod --- integration/docker-compose.yml | 1 + tileserver_mod/modpack.txt | 0 tileserver_mod/tileserver/depends.txt | 1 + tileserver_mod/tileserver/init.lua | 9 ++ tileserver_mod/tileserver/poi.lua | 95 ++++++++++++++++++ .../tileserver/textures/tileserver_poi.png | Bin 0 -> 313 bytes 6 files changed, 106 insertions(+) create mode 100644 tileserver_mod/modpack.txt create mode 100644 tileserver_mod/tileserver/depends.txt create mode 100644 tileserver_mod/tileserver/init.lua create mode 100644 tileserver_mod/tileserver/poi.lua create mode 100644 tileserver_mod/tileserver/textures/tileserver_poi.png diff --git a/integration/docker-compose.yml b/integration/docker-compose.yml index 3f0430a..aa457de 100644 --- a/integration/docker-compose.yml +++ b/integration/docker-compose.yml @@ -8,6 +8,7 @@ services: - "postgres" volumes: - "./minetest:/data" + - "../tileserver_mod:/data/world/worldmods/tileserver_mod" command: minetestserver --config /data/minetest.conf --world /data/world/ ports: - "30000:30000/udp" diff --git a/tileserver_mod/modpack.txt b/tileserver_mod/modpack.txt new file mode 100644 index 0000000..e69de29 diff --git a/tileserver_mod/tileserver/depends.txt b/tileserver_mod/tileserver/depends.txt new file mode 100644 index 0000000..4ad96d5 --- /dev/null +++ b/tileserver_mod/tileserver/depends.txt @@ -0,0 +1 @@ +default diff --git a/tileserver_mod/tileserver/init.lua b/tileserver_mod/tileserver/init.lua new file mode 100644 index 0000000..e2977b8 --- /dev/null +++ b/tileserver_mod/tileserver/init.lua @@ -0,0 +1,9 @@ + +tileserver = { +} + +local MP = minetest.get_modpath("tileserver") + +dofile(MP.."/poi.lua") + +print("[OK] Tileserver") \ No newline at end of file diff --git a/tileserver_mod/tileserver/poi.lua b/tileserver_mod/tileserver/poi.lua new file mode 100644 index 0000000..961bf31 --- /dev/null +++ b/tileserver_mod/tileserver/poi.lua @@ -0,0 +1,95 @@ + +local update_formspec = function(meta) + local inv = meta:get_inventory() + + local active = meta:get_int("active") == 1 + local state = "Inactive" + + if active then + state = "Active" + end + + local name = meta:get_string("name") + local category = meta:get_string("category") + meta:set_string("infotext", "POI: " .. name .. ", " .. category .. " (" .. state .. ")") + + meta:set_string("formspec", "size[8,3;]" .. + -- col 1 + "field[0,1;4,1;name;Name;" .. name .. "]" .. + "button_exit[4,1;4,1;save;Save]" .. + + -- col 2 + "field[0,2.5;4,1;category;Category;" .. category .. "]" .. + "button_exit[4,2;4,1;toggle;Toggle]" .. + "") + +end + + +minetest.register_node("tileserver:poi", { + description = "Tileserver POI", + tiles = { + "tileserver_poi.png", + "tileserver_poi.png", + "tileserver_poi.png", + "tileserver_poi.png", + "tileserver_poi.png", + "tileserver_poi.png" + }, + groups = {cracky=3,oddly_breakable_by_hand=3}, + sounds = default.node_sound_glass_defaults(), + + can_dig = function(pos, player) + local meta = minetest.env:get_meta(pos) + local owner = meta:get_string("owner") + + return player and player:get_player_name() == owner + end, + + after_place_node = function(pos, placer) + local meta = minetest.get_meta(pos) + meta:set_string("owner", placer:get_player_name() or "") + end, + + on_construct = function(pos) + local meta = minetest.get_meta(pos) + + meta:set_string("name", "") + meta:set_string("category", "main") + meta:set_int("active", 0) + + update_formspec(meta) + end, + + on_receive_fields = function(pos, formname, fields, sender) + local meta = minetest.get_meta(pos) + local playername = sender:get_player_name() + + if playername == meta:get_string("owner") then + -- owner + if fields.save then + + local name = fields.name + meta:set_string("name", fields.name) + + + end + + if fields.toggle then + if meta:get_int("active") == 1 then + meta:set_int("active", 0) + else + meta:set_int("active", 1) + end + end + + else + -- non-owner + end + + + update_formspec(meta) + end + + +}) \ No newline at end of file diff --git a/tileserver_mod/tileserver/textures/tileserver_poi.png b/tileserver_mod/tileserver/textures/tileserver_poi.png new file mode 100644 index 0000000000000000000000000000000000000000..f2e92b63fe049ecb645ac7dcbc86951ba041962a GIT binary patch literal 313 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1SJ1Ryj={W*pj^6T^N)ZtQlVXJli(`D8gCb z5n0T@z;_sg8IR|$NC676mw5WRvOi+u<54$zvdBjXD0Ixz#WBR=cydWWK|)$ungaKq zzrUw1kP>5KV~dWCX1mqE%+6=v`1YaTl64mgm=}uu`T1$yF0li=DM