aboutsummaryrefslogtreecommitdiff
path: root/clientmods/preview/init.lua
blob: c57a62155cca64d0a8af4092e91d6e9e3a418e47 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
local modname = core.get_current_modname() or "??"
local modstorage = core.get_mod_storage()

-- This is an example function to ensure it's working properly, should be removed before merge
core.register_on_shutdown(function()
	print("[PREVIEW] shutdown client")
end)

-- This is an example function to ensure it's working properly, should be removed before merge
core.register_on_receiving_chat_messages(function(message)
	print("[PREVIEW] Received message " .. message)
	return false
end)

-- This is an example function to ensure it's working properly, should be removed before merge
core.register_on_sending_chat_messages(function(message)
	print("[PREVIEW] Sending message " .. message)
	return false
end)

-- This is an example function to ensure it's working properly, should be removed before merge
core.register_on_hp_modification(function(hp)
	print("[PREVIEW] HP modified " .. hp)
end)

-- This is an example function to ensure it's working properly, should be removed before merge
core.register_on_damage_taken(function(hp)
	print("[PREVIEW] Damage taken " .. hp)
end)

-- This is an example function to ensure it's working properly, should be removed before merge
core.register_globalstep(function(dtime)
	-- print("[PREVIEW] globalstep " .. dtime)
end)

-- This is an example function to ensure it's working properly, should be removed before merge
core.register_chatcommand("dump", {
	func = function(param)
		return true, dump(_G)
	end,
})

core.register_chatcommand("colorize_test", {
	func = function(param)
		return true, core.colorize("red", param)
	end,
})

core.register_chatcommand("test_node", {
	func = function(param)
		core.display_chat_message(dump(core.get_node({x=0, y=0, z=0})))
		core.display_chat_message(dump(core.get_node_or_nil({x=0, y=0, z=0})))
	end,
})

local function preview_minimap()
	local minimap = core.ui.minimap
	minimap:set_mode(4)
	minimap:show()
	minimap:set_pos({x=5, y=50, z=5})
	minimap:toggle_shape()

	print("[PREVIEW] Minimap: mode => " .. dump(minimap:get_mode()) ..
			" position => " .. dump(minimap:get_pos()) ..
			" angle => " .. dump(minimap:get_angle()))
end

core.after(2, function()
	print("[PREVIEW] loaded " .. modname .. " mod")
	modstorage:set_string("current_mod", modname)
	print(modstorage:get_string("current_mod"))
	preview_minimap()
end)

core.after(5, function()
	core.ui.minimap:show()

	print("[PREVIEW] Day count: " .. core.get_day_count() ..
		" time of day " .. core.get_timeofday())

	print("[PREVIEW] Node level: " .. core.get_node_level({x=0, y=20, z=0}) ..
		" max level " .. core.get_node_max_level({x=0, y=20, z=0}))

	print("[PREVIEW] Find node near: " .. dump(core.find_node_near({x=0, y=20, z=0}, 10,
		{"group:tree", "default:dirt", "default:stone"})))
end)

core.register_on_dignode(function(pos, node)
	print("The local player dug a node!")
	print("pos:" .. dump(pos))
	print("node:" .. dump(node))
	return false
end)

core.register_on_punchnode(function(pos, node)
	print("The local player punched a node!")
	local itemstack = core.get_wielded_item()
	--[[
	-- getters
	print(dump(itemstack:is_empty()))
	print(dump(itemstack:get_name()))
	print(dump(itemstack:get_count()))
	print(dump(itemstack:get_wear()))
	print(dump(itemstack:get_meta()))
	print(dump(itemstack:get_metadata()
	print(dump(itemstack:is_known()))
	--print(dump(itemstack:get_definition()))
	print(dump(itemstack:get_tool_capabilities()))
	print(dump(itemstack:to_string()))
	print(dump(itemstack:to_table()))
	-- setters
	print(dump(itemstack:set_name("default:dirt")))
	print(dump(itemstack:set_count("95")))
	print(dump(itemstack:set_wear(934)))
	print(dump(itemstack:get_meta()))
	print(dump(itemstack:get_metadata()))
	--]]
	print(dump(itemstack:to_table()))
	print("pos:" .. dump(pos))
	print("node:" .. dump(node))
	return false
end)

-- This is an example function to ensure it's working properly, should be removed before merge
core.register_chatcommand("list_players", {
	func = function(param)
		core.display_chat_message(dump(core.get_player_names()))
	end
})