Cleanup
authorPilzAdam <pilzadam@minetest.net>
Sun, 7 Dec 2014 11:23:43 +0000 (12:23 +0100)
committerPilzAdam <pilzadam@minetest.net>
Fri, 12 Dec 2014 15:14:25 +0000 (16:14 +0100)
* Remove unused variables
* Fix wearing out of screwdriver
* Move magic numbers into constants
* Scale down texture

mods/screwdriver/init.lua
mods/screwdriver/textures/screwdriver.png

index 59c00443cc93bb1e99e364353e2f663a5d7be7ed..4aadaa0a2bf578b09b33e367431f9a24d1f99ceb 100644 (file)
@@ -6,6 +6,10 @@ local function nextrange(x, max)
        return x
 end
 
+local ROTATE_FACE = 1
+local ROTATE_AXIS = 2
+local USES = 10
+
 -- Handles rotation
 local function screwdriver_handler(itemstack, user, pointed_thing, mode)
        if pointed_thing.type ~= "node" then
@@ -13,8 +17,6 @@ local function screwdriver_handler(itemstack, user, pointed_thing, mode)
        end
 
        local pos = pointed_thing.under
-       local keys = user:get_player_control()
-       local player_name = user:get_player_name()
 
        if minetest.is_protected(pos, user:get_player_name()) then
                minetest.record_protection_violation(pos, user:get_player_name())
@@ -34,22 +36,19 @@ local function screwdriver_handler(itemstack, user, pointed_thing, mode)
        local n = node.param2
        local axisdir = math.floor(n / 4)
        local rotation = n - axisdir * 4
-       if mode == 1 then
+       if mode == ROTATE_FACE then
                n = axisdir * 4 + nextrange(rotation, 3)
-       elseif mode == 3 then
+       elseif mode == ROTATE_AXIS then
                n = nextrange(axisdir, 5) * 4
        end
 
        node.param2 = n
        minetest.swap_node(pos, node)
 
-       local item_wear = tonumber(itemstack:get_wear())
-       item_wear = item_wear + 300 -- was 327
-       if item_wear > 65535 then
-               itemstack:clear()
-               return itemstack
+       if not minetest.setting_getbool("creative_mode") then
+               itemstack:add_wear(65535 / (USES - 1))
        end
-       itemstack:set_wear(item_wear)
+
        return itemstack
 end
 
@@ -58,11 +57,11 @@ minetest.register_tool("screwdriver:screwdriver", {
        description = "Screwdriver (left-click rotates face, right-click rotates axis)",
        inventory_image = "screwdriver.png",
        on_use = function(itemstack, user, pointed_thing)
-               screwdriver_handler(itemstack, user, pointed_thing, 1)
+               screwdriver_handler(itemstack, user, pointed_thing, ROTATE_FACE)
                return itemstack
        end,
        on_place = function(itemstack, user, pointed_thing)
-               screwdriver_handler(itemstack, user, pointed_thing, 3)
+               screwdriver_handler(itemstack, user, pointed_thing, ROTATE_AXIS)
                return itemstack
        end,
 })
index f471756d4239d51092fb9bbe957a78fe6275b639..33cb83f71a4fa6a4398a84cfe13e0ac49de28137 100644 (file)
Binary files a/mods/screwdriver/textures/screwdriver.png and b/mods/screwdriver/textures/screwdriver.png differ