Fix crash when placing cable plates (#534)

All coordinates can be equal if pointed_thing.above is identical
to pointed_thing.under.
This commit is contained in:
coil 2020-03-15 12:27:36 -04:00 committed by GitHub
父節點 fbc4cc8511
當前提交 0e10e8360d
沒有發現已知的金鑰在資料庫的簽署中
GPG Key ID: 4AEE18F83AFDEB23
共有 1 個文件被更改,包括 2 次插入2 次删除

查看文件

@ -215,7 +215,7 @@ function technic.register_cable(tier, size)
if i == 1 then
def.on_place = function(itemstack, placer, pointed_thing)
local pointed_thing_diff = vector.subtract(pointed_thing.above, pointed_thing.under)
local num
local num = 1
local changed
for k, v in pairs(pointed_thing_diff) do
if v ~= 0 then
@ -225,7 +225,7 @@ function technic.register_cable(tier, size)
end
end
local crtl = placer:get_player_control()
if (crtl.aux1 or crtl.sneak) and not (crtl.aux1 and crtl.sneak) then
if (crtl.aux1 or crtl.sneak) and not (crtl.aux1 and crtl.sneak) and changed then
local fine_pointed = minetest.pointed_thing_to_face_pos(placer, pointed_thing)
fine_pointed = vector.subtract(fine_pointed, pointed_thing.above)
fine_pointed[changed] = nil