Update game screenshot
[Pixture/pixture_revival.git] / mods / rp_jewels / jewels.lua
blobe799e9e82bde0dce021ec6be1288598ff443f967
1 --
2 -- Jeweled tool defs
3 --
5 local S = minetest.get_translator("rp_jewels")
7 -- Automatic jeweling on specific tools
9 -- Adjectives:
10 -- * Swift: lower dig speed
11 -- * Harming: more damage
12 -- * Durable: more uses
13 -- * Ranged: higher range
15 local tool_types = {
16 pick = {
17 steel = {
18 digspeed = {
19 description = S("Swift Jewel Steel Pickaxe"),
20 digspeed = -0.1,
22 damage = {
23 description = S("Harming Jewel Steel Pickaxe"),
24 overlay = "jewels_jeweled_pick_damage.png",
25 fleshy = 1,
27 uses = {
28 description = S("Durable Jewel Steel Pickaxe"),
29 uses = 3,
32 carbon_steel = {
33 digspeed = {
34 description = S("Swift Jewel Carbon Steel Pickaxe"),
35 digspeed = -0.13,
37 damage = {
38 description = S("Harming Jewel Carbon Steel Pickaxe"),
39 overlay = "jewels_jeweled_pick_damage.png",
40 fleshy = 2,
42 uses = {
43 description = S("Durable Jewel Carbon Steel Pickaxe"),
44 uses = 5,
47 bronze = {
48 digspeed = {
49 description = S("Swift Jewel Bronze Pickaxe"),
50 digspeed = -0.14,
52 damage = {
53 description = S("Harming Jewel Bronze Pickaxe"),
54 overlay = "jewels_jeweled_pick_damage.png",
55 fleshy = 3,
57 uses = {
58 description = S("Durable Jewel Bronze Pickaxe"),
59 uses = 6,
63 shovel = {
64 steel = {
65 digspeed = {
66 description = S("Swift Jewel Steel Shovel"),
67 digspeed = -0.1,
69 damage = {
70 description = S("Harming Jewel Steel Shovel"),
71 overlay = "jewels_jeweled_shovel_damage.png",
72 fleshy = 1,
74 uses = {
75 description = S("Durable Jewel Steel Shovel"),
76 uses = 3,
79 carbon_steel = {
80 digspeed = {
81 description = S("Swift Jewel Carbon Steel Shovel"),
82 digspeed = -0.13,
84 damage = {
85 description = S("Harming Jewel Carbon Steel Shovel"),
86 overlay = "jewels_jeweled_shovel_damage.png",
87 fleshy = 2,
89 uses = {
90 description = S("Durable Jewel Carbon Steel Shovel"),
91 uses = 5,
94 bronze = {
95 digspeed = {
96 description = S("Swift Jewel Bronze Shovel"),
97 digspeed = -0.14,
99 damage = {
100 description = S("Harming Jewel Bronze Shovel"),
101 overlay = "jewels_jeweled_shovel_damage.png",
102 fleshy = 3,
104 uses = {
105 description = S("Durable Jewel Bronze Shovel"),
106 uses = 6,
110 axe = {
111 steel = {
112 digspeed = {
113 description = S("Swift Jewel Steel Axe"),
114 digspeed = -0.1,
116 damage = {
117 description = S("Harming Jewel Steel Axe"),
118 overlay = "jewels_jeweled_axe_damage.png",
119 fleshy = 2,
121 uses = {
122 description = S("Durable Jewel Steel Axe"),
123 uses = 3,
126 carbon_steel = {
127 digspeed = {
128 description = S("Swift Jewel Carbon Steel Axe"),
129 digspeed = -0.13,
131 damage = {
132 description = S("Harming Jewel Carbon Steel Axe"),
133 overlay = "jewels_jeweled_axe_damage.png",
134 fleshy = 3,
136 uses = {
137 description = S("Durable Jewel Carbon Steel Axe"),
138 uses = 5,
141 bronze = {
142 digspeed = {
143 description = S("Swift Jewel Bronze Axe"),
144 digspeed = -0.14,
146 damage = {
147 description = S("Harming Jewel Bronze Axe"),
148 overlay = "jewels_jeweled_axe_damage.png",
149 fleshy = 4,
151 uses = {
152 description = S("Durable Jewel Bronze Axe"),
153 uses = 6,
157 spear = {
158 steel = {
159 reach = {
160 overlay = "jewels_jeweled_spear_reach.png",
161 overlay_wield = "jewels_jeweled_spear_reach.png^[transformR90",
162 description = S("Extended Jewel Steel Spear"),
163 range = 1,
165 damage = {
166 overlay = "jewels_jeweled_spear_damage.png",
167 overlay_wield = "jewels_jeweled_spear_damage.png^[transformR90",
168 description = S("Harming Jewel Steel Spear"),
169 fleshy = 3,
171 uses = {
172 overlay = "jewels_jeweled_handle_uses.png",
173 overlay_wield = "jewels_jeweled_handle_uses.png^[transformR90",
174 description = S("Durable Jewel Steel Spear"),
175 uses = 3,
178 carbon_steel = {
179 reach = {
180 description = S("Extended Jewel Carbon Steel Spear"),
181 overlay = "jewels_jeweled_spear_reach.png",
182 overlay_wield = "jewels_jeweled_spear_reach.png^[transformR90",
183 range = 2,
185 damage = {
186 description = S("Harming Jewel Carbon Steel Spear"),
187 overlay = "jewels_jeweled_spear_damage.png",
188 overlay_wield = "jewels_jeweled_spear_damage.png^[transformR90",
189 fleshy = 4,
191 uses = {
192 description = S("Durable Jewel Carbon Steel Spear"),
193 overlay = "jewels_jeweled_handle_uses.png",
194 overlay_wield = "jewels_jeweled_handle_uses.png^[transformR90",
195 uses = 5,
198 bronze = {
199 reach = {
200 description = S("Extended Jewel Bronze Spear"),
201 overlay = "jewels_jeweled_spear_reach.png",
202 overlay_wield = "jewels_jeweled_spear_reach.png^[transformR90",
203 range = 2,
205 damage = {
206 description = S("Harming Jewel Bronze Spear"),
207 overlay = "jewels_jeweled_spear_damage.png",
208 overlay_wield = "jewels_jeweled_spear_damage.png^[transformR90",
209 fleshy = 5,
211 uses = {
212 description = S("Durable Jewel Bronze Spear"),
213 overlay = "jewels_jeweled_handle_uses.png",
214 overlay_wield = "jewels_jeweled_handle_uses.png^[transformR90",
215 uses = 6,
219 shears = {
220 steel = {
221 digspeed = {
222 overlay = "jewels_jeweled_shears_digspeed.png",
223 overlay_wield = "jewels_jeweled_shears_digspeed.png^[transformR90",
224 description = S("Swift Jewel Steel Shears"),
225 digspeed = -0.1,
227 uses = {
228 overlay = "jewels_jeweled_shears_uses.png",
229 overlay_wield = "jewels_jeweled_shears_uses.png^[transformR90",
230 description = S("Durable Jewel Steel Shears"),
231 uses = 3,
234 carbon_steel = {
235 digspeed = {
236 overlay = "jewels_jeweled_shears_digspeed.png",
237 overlay_wield = "jewels_jeweled_shears_digspeed.png^[transformR90",
238 description = S("Swift Jewel Carbon Steel Shears"),
239 digspeed = -0.13,
241 uses = {
242 overlay = "jewels_jeweled_shears_uses.png",
243 overlay_wield = "jewels_jeweled_shears_uses.png^[transformR90",
244 description = S("Durable Jewel Carbon Steel Shears"),
245 uses = 5,
248 bronze = {
249 digspeed = {
250 overlay = "jewels_jeweled_shears_digspeed.png",
251 overlay_wield = "jewels_jeweled_shears_digspeed.png^[transformR90",
252 description = S("Swift Jewel Bronze Shears"),
253 digspeed = -0.14,
255 uses = {
256 overlay = "jewels_jeweled_shears_uses.png",
257 overlay_wield = "jewels_jeweled_shears_uses.png^[transformR90",
258 description = S("Durable Jewel Bronze Shears"),
259 uses = 6,
265 for tool_name, tool_def in pairs(tool_types) do
266 for material_name, material_def in pairs(tool_def) do
267 for jewel_name, jewel_def in pairs(material_def) do
268 local description = jewel_def.description
269 local overlay = jewel_def.overlay
270 local overlay_wield = jewel_def.overlay_wield
271 jewel_def.description = nil
272 jewel_def.overlay = nil
273 jewel_def.overlay_wield = nil
274 if not overlay then
275 if jewel_name == "damage" then
276 overlay = "jewels_jeweled_handle_damage.png"
277 elseif jewel_name == "uses" then
278 overlay = "jewels_jeweled_handle_uses.png"
281 jewels.register_jewel(
282 "rp_default:" .. tool_name .. "_" .. material_name,
283 "rp_jewels:" .. tool_name .. "_" .. material_name .. "_" .. jewel_name,
285 stats = jewel_def,
286 description = description,
287 overlay = overlay,
288 overlay_wield = overlay_wield,
295 -- Broadswords
297 jewels.register_jewel(
298 "rp_default:broadsword",
299 "rp_jewels:broadsword_jeweled_pommel",
301 description = S("Pommel Jewel Broadsword"),
302 overlay = "jewels_jeweled_pommel.png",
303 stats = {
304 fleshy = 2,
308 jewels.register_jewel(
309 "rp_jewels:broadsword_jeweled_pommel",
310 "rp_jewels:broadsword_jeweled_pommel_and_guard",
312 description = S("Pommel&Guard Jewel Broadsword"),
313 overlay = "jewels_jeweled_guard.png",
314 stats = {
315 range = 1,
319 jewels.register_jewel(
320 "rp_jewels:broadsword_jeweled_pommel_and_guard",
321 "rp_jewels:serrated_broadsword",
323 description = S("Serrated Jewel Broadsword"),
324 overlay = "jewels_jeweled_blade.png",
325 stats = {
326 fleshy = 2,
327 range = 1,