Multiple fixes and optipng textures

* Fix bugs with pots, (splash) potions, scrolls etc.
* Fix warnings caused by deprecated functions and definitions
* Add mod.conf
* Clean and indent code
* Remove the stack limit of 3 glass bottles
* Optimize textures with optipng
This commit is contained in:
bri cassa 2021-03-14 20:48:55 +01:00
parent efe57c3137
commit 11f39382ef
101 changed files with 1796 additions and 2073 deletions

View File

@ -13,7 +13,7 @@ minetest.register_node("witchcraft:brewing_stand", {
"witchcraft_brewing_stand_side.png" "witchcraft_brewing_stand_side.png"
}, },
drawtype = "nodebox", drawtype = "nodebox",
use_texture_alpha = true, use_texture_alpha = "blend",
paramtype = "light", paramtype = "light",
drop = { drop = {
items = { items = {
@ -36,7 +36,7 @@ minetest.register_node("witchcraft:brewing_stand", {
} }
}, },
on_rightclick = function(pos, node, clicker, item, _) on_rightclick = function(pos, node, clicker, item, _)
local wield_item = clicker:get_wielded_item():get_name() local wield_item = item:get_name()
local new_item = wield_item.."_2" local new_item = wield_item.."_2"
if minetest.get_item_group(wield_item, "potion") ~= 0 then if minetest.get_item_group(wield_item, "potion") ~= 0 then
minetest.set_node(pos, {name="witchcraft:brewing_stand_active", param2=node.param2}) minetest.set_node(pos, {name="witchcraft:brewing_stand_active", param2=node.param2})
@ -59,7 +59,7 @@ minetest.register_node("witchcraft:brewing_stand_active", {
"witchcraft_brewing_stand_side.png" "witchcraft_brewing_stand_side.png"
}, },
drawtype = "nodebox", drawtype = "nodebox",
use_texture_alpha = true, use_texture_alpha = "blend",
paramtype = "light", paramtype = "light",
light_source = 1, light_source = 1,
drop = { drop = {
@ -96,7 +96,7 @@ minetest.register_node("witchcraft:brewing_stand_unready", {
}, },
inventory_image = "witchcraft_brewing_stand_inv.png", inventory_image = "witchcraft_brewing_stand_inv.png",
drawtype = "nodebox", drawtype = "nodebox",
use_texture_alpha = true, use_texture_alpha = "blend",
paramtype = "light", paramtype = "light",
light_source = 1, light_source = 1,
drop = { drop = {
@ -120,7 +120,7 @@ minetest.register_node("witchcraft:brewing_stand_unready", {
} }
}, },
on_rightclick = function(pos, node, clicker, item, _) on_rightclick = function(pos, node, clicker, item, _)
local wield_item = clicker:get_wielded_item():get_name() local wield_item = item:get_name()
if wield_item == "default:mese_crystal_fragment" then if wield_item == "default:mese_crystal_fragment" then
minetest.set_node(pos, {name="witchcraft:brewing_stand", param2=node.param2}) minetest.set_node(pos, {name="witchcraft:brewing_stand", param2=node.param2})
item:take_item() item:take_item()

2290
init.lua

File diff suppressed because it is too large Load Diff

3
mod.conf Normal file
View File

@ -0,0 +1,3 @@
name = witchcraft
depends = default,vessels,tnt,fire,playereffects
optional_depends = player_monoids,farming,lightning,pmobs,hud_hunger,hunger_ng,moreplants,horror

View File

@ -1,6 +1,5 @@
--scrolls --scrolls
minetest.register_craftitem("witchcraft:scroll_day", { minetest.register_craftitem("witchcraft:scroll_day", {
description = "Scroll of day", description = "Scroll of day",
inventory_image = "witchcraft_scroll.png^witchcraft_sun_over.png", inventory_image = "witchcraft_scroll.png^witchcraft_sun_over.png",
@ -29,8 +28,8 @@ minetest.register_craftitem("witchcraft:scroll_wild", {
inventory_image = "witchcraft_scroll.png^witchcraft_dark_over.png", inventory_image = "witchcraft_scroll.png^witchcraft_dark_over.png",
stack_max = 1, stack_max = 1,
on_use = function(item, placer) on_use = function(item, placer)
local pos = placer:getpos(); local pos = placer:get_pos()
minetest.env:add_entity(pos, "pmobs:dog") minetest.add_entity(pos, "pmobs:dog")
item:take_item() item:take_item()
return item return item
end, end,
@ -41,17 +40,21 @@ minetest.register_craftitem("witchcraft:scroll_fireball", {
description = "Scroll of fireball", description = "Scroll of fireball",
inventory_image = "witchcraft_scroll.png^witchcraft_fire_over.png", inventory_image = "witchcraft_scroll.png^witchcraft_fire_over.png",
stack_max = 1, stack_max = 1,
on_use = function(item, placer, pos) on_use = function(item, placer, pointed_thing)
local dir = placer:get_look_dir(); local dir = placer:get_look_dir()
local playerpos = placer:getpos(); local playerpos = placer:get_pos()
local obj = minetest.env:add_entity({x=playerpos.x+dir.x*1.5,y=playerpos.y+1.5+dir.y,z=playerpos.z+0+dir.z}, "witchcraft:fireball") local entities = {}
local obj2 = minetest.env:add_entity({x=playerpos.x+dir.x*1.5,y=playerpos.y+1.5+dir.y,z=playerpos.z+0+dir.z}, "witchcraft:fireball") for i=1,4 do
local obj3 = minetest.env:add_entity({x=playerpos.x+dir.x*1.5,y=playerpos.y+1.5+dir.y,z=playerpos.z+0+dir.z}, "witchcraft:fireball") entities[i] = minetest.add_entity({
local obj4 = minetest.env:add_entity({x=playerpos.x+dir.x*1.5,y=playerpos.y+1.5+dir.y,z=playerpos.z+0+dir.z}, "witchcraft:fireball") x=playerpos.x+dir.x*1.5,
obj2:setvelocity({x=dir.x*7+0.5,y=dir.y*7,z=dir.z*7+0.5}) y=playerpos.y+1.5+dir.y,
obj3:setvelocity({x=dir.x*7-0.5,y=dir.y*7,z=dir.z*7-0.5}) z=playerpos.z+0+dir.z
obj4:setvelocity({x=dir.x*7,y=dir.y*7-0.5,z=dir.z*7}) }, "witchcraft:fireball")
obj:setvelocity({x=dir.x*7,y=dir.y*7+0.5,z=dir.z*7}) end
entities[2]:set_velocity({x=dir.x*7+0.5,y=dir.y*7,z=dir.z*7+0.5})
entities[3]:set_velocity({x=dir.x*7-0.5,y=dir.y*7,z=dir.z*7-0.5})
entities[4]:set_velocity({x=dir.x*7,y=dir.y*7-0.5,z=dir.z*7})
entities[1]:set_velocity({x=dir.x*7,y=dir.y*7+0.5,z=dir.z*7})
item:take_item() item:take_item()
return item return item
end, end,
@ -62,9 +65,9 @@ minetest.register_craftitem("witchcraft:scroll_lightning", {
description = "Scroll of lightning", description = "Scroll of lightning",
inventory_image = "witchcraft_scroll.png^witchcraft_thunder_over.png", inventory_image = "witchcraft_scroll.png^witchcraft_thunder_over.png",
stack_max = 1, stack_max = 1,
on_use = function(item, placer, pos) on_use = function(item, placer, pointed_thing)
local playerpos = placer:getpos(); local playerpos = placer:get_pos()
local dir = placer:get_look_dir(); local dir = placer:get_look_dir()
lightning.strike({x=playerpos.x+dir.x*2,y=playerpos.y+0+dir.y,z=playerpos.z+dir.z*2}) lightning.strike({x=playerpos.x+dir.x*2,y=playerpos.y+0+dir.y,z=playerpos.z+dir.z*2})
item:take_item() item:take_item()
return item return item
@ -76,34 +79,47 @@ minetest.register_craftitem("witchcraft:scroll_icicle", {
description = "Scroll of icicle", description = "Scroll of icicle",
inventory_image = "witchcraft_scroll.png^witchcraft_ice_over.png", inventory_image = "witchcraft_scroll.png^witchcraft_ice_over.png",
stack_max = 1, stack_max = 1,
on_use = function(item, placer, pos) on_use = function(item, placer, pointed_thing)
local dir = placer:get_look_dir(); local dir = placer:get_look_dir()
local playerpos = placer:getpos(); local playerpos = placer:get_pos()
local vec = {x=dir.x*7,y=dir.y*7,z=dir.z*7} local vec = {x=dir.x*7,y=dir.y*7,z=dir.z*7}
local obj = minetest.env:add_entity({x=playerpos.x+dir.x*1.5,y=playerpos.y+1.5+dir.y,z=playerpos.z+0+dir.z}, "witchcraft:ice") local obj = minetest.add_entity({
local obj2 = minetest.env:add_entity({x=playerpos.x+dir.x*1.5,y=playerpos.y+1.5+dir.y,z=playerpos.z+1+dir.z}, "witchcraft:ice") x=playerpos.x+dir.x*1.5,
local obj3 = minetest.env:add_entity({x=playerpos.x+1+dir.x*1.5,y=playerpos.y+1.5+dir.y,z=playerpos.z+0+dir.z}, "witchcraft:ice") y=playerpos.y+1.5+dir.y,
obj:setvelocity(vec) z=playerpos.z+0+dir.z
obj2:setvelocity(vec) }, "witchcraft:ice")
obj3:setvelocity(vec) local obj2 = minetest.add_entity({
x=playerpos.x+dir.x*1.5,
y=playerpos.y+1.5+dir.y,
z=playerpos.z+1+dir.z
}, "witchcraft:ice")
local obj3 = minetest.add_entity({
x=playerpos.x+1+dir.x*1.5,
y=playerpos.y+1.5+dir.y,
z=playerpos.z+0+dir.z
}, "witchcraft:ice")
obj:set_velocity(vec)
obj2:set_velocity(vec)
obj3:set_velocity(vec)
item:take_item() item:take_item()
return item return item
end, end,
}) })
minetest.register_craftitem("witchcraft:scroll_nature", { minetest.register_craftitem("witchcraft:scroll_nature", {
description = "Scroll of nature", description = "Scroll of nature",
inventory_image = "witchcraft_scroll.png^witchcraft_leaf_over.png", inventory_image = "witchcraft_scroll.png^witchcraft_leaf_over.png",
stack_max = 1, stack_max = 1,
on_use = function(item, placer, pos) on_use = function(item, placer, pointed_thing)
local dir = placer:get_look_dir(); local dir = placer:get_look_dir()
local playerpos = placer:getpos(); local playerpos = placer:get_pos()
local vec = {x=dir.x*6,y=dir.y*6,z=dir.z*6} local vec = {x=dir.x*6,y=dir.y*6,z=dir.z*6}
local obj = minetest.env:add_entity({x=playerpos.x+dir.x*1.5,y=playerpos.y+1.5+dir.y,z=playerpos.z+0+dir.z}, "witchcraft:tree") local obj = minetest.add_entity({
obj:setvelocity(vec) x=playerpos.x+dir.x*1.5,
y=playerpos.y+1.5+dir.y,
z=playerpos.z+0+dir.z
}, "witchcraft:tree")
obj:set_velocity(vec)
item:take_item() item:take_item()
return item return item
end, end,
@ -118,12 +134,9 @@ minetest.register_craftitem("witchcraft:scroll_recipe", {
description = "Recipe Scroll", description = "Recipe Scroll",
inventory_image = "witchcraft_scroll.png^witchcraft_writing_over.png", inventory_image = "witchcraft_scroll.png^witchcraft_writing_over.png",
on_use = function(itemstack, user, pointed_thing) on_use = function(itemstack, user, pointed_thing)
local formspec = "size[10,9]".. local formspec = "size[10,9]"..
"background[-0.6,-0.5;11.5,10.4;witchcraft_recipes.png]"; "background[-0.6,-0.5;11.5,10.4;witchcraft_recipes.png]"
minetest.show_formspec(user:get_player_name(), "witchcraft:scroll", formspec)
minetest.show_formspec(user:get_player_name(), "witchcraft:scroll", formspec);
end, end,
}) })
@ -135,7 +148,6 @@ minetest.register_craft({
{'witchcraft:scroll'}, {'witchcraft:scroll'},
} }
}) })
end end
minetest.register_craft({ minetest.register_craft({
@ -199,7 +211,6 @@ minetest.register_craft({
} }
}) })
minetest.register_craft({ minetest.register_craft({
output = 'witchcraft:scroll_lightning', output = 'witchcraft:scroll_lightning',
recipe = { recipe = {
@ -209,7 +220,6 @@ minetest.register_craft({
} }
}) })
--scroll powers --scroll powers
minetest.register_entity("witchcraft:fireball", { minetest.register_entity("witchcraft:fireball", {
@ -221,16 +231,19 @@ minetest.register_entity("witchcraft:fireball", {
local remove = minetest.after(2, function() local remove = minetest.after(2, function()
self.object:remove() self.object:remove()
end) end)
local pos = self.object:getpos() local pos = self.object:get_pos()
local objs = minetest.get_objects_inside_radius({x=pos.x,y=pos.y,z=pos.z}, 2) local objs = minetest.get_objects_inside_radius({x=pos.x,y=pos.y,z=pos.z}, 2)
for k, obj in pairs(objs) do for k, obj in pairs(objs) do
if obj:get_luaentity() ~= nil then if obj:get_luaentity() then
if obj:get_luaentity().name ~= "witchcraft:fireball" and obj:get_luaentity().name ~= "__builtin:item" then if obj:get_luaentity().name ~= "witchcraft:fireball"
and obj:get_luaentity().name ~= "__builtin:item"
and obj:get_luaentity().name ~= "gauges:hp_bar" then
obj:punch(self.object, 1.0, { obj:punch(self.object, 1.0, {
full_punch_interval=1.0, full_punch_interval=1.0,
damage_groups={fleshy=3}, damage_groups={fleshy=3},
}, nil) }, nil)
self.object:remove() self.object:remove()
return
end end
end end
end end
@ -239,10 +252,10 @@ minetest.register_entity("witchcraft:fireball", {
for dz=0,1 do for dz=0,1 do
local p = {x=pos.x+dx, y=pos.y, z=pos.z+dz} local p = {x=pos.x+dx, y=pos.y, z=pos.z+dz}
local t = {x=pos.x+dx, y=pos.y+dy, z=pos.z+dz} local t = {x=pos.x+dx, y=pos.y+dy, z=pos.z+dz}
local n = minetest.env:get_node(p).name local n = minetest.get_node(p).name
if n ~= "witchcraft:fireball" and n ~="default:dirt_with_grass" and n ~="default:dirt_with_dry_grass" and n ~="default:stone" then if n ~= "witchcraft:fireball" and n ~="default:dirt_with_grass" then
if minetest.registered_nodes[n].groups.flammable --[[or math.random(1, 100) <= 1]] then if minetest.registered_nodes[n].groups.flammable then
minetest.env:set_node(t, {name="fire:basic_flame"}) minetest.set_node(t, {name="fire:basic_flame"})
self.object:remove() self.object:remove()
return return
end end
@ -250,49 +263,27 @@ minetest.register_entity("witchcraft:fireball", {
end end
end end
end end
hit_node = function(self, pos, node)
-- local pos = self.object:getpos()
for dx=-4,4 do
for dy=-4,4 do
for dz=-4,4 do
local p = {x=pos.x+dx, y=pos.y+dy, z=pos.z+dz}
local t = {x=pos.x+dx, y=pos.y+dy, z=pos.z+dz}
local n = minetest.env:get_node(pos).name
if math.random(1, 50) <= 35 then
minetest.env:remove_node(p)
end
if minetest.registered_nodes[n].groups.flammable or math.random(1, 100) <=5 then
minetest.env:set_node(t, {name="fire:basic_flame"})
end
end
end
end
end
local apos = self.object:getpos()
local vec = self.object:getvelocity()
local part = minetest.add_particlespawner(
6, --amount
0.3, --time
{x=apos.x-0.3, y=apos.y-0.3, z=apos.z-0.3}, --minpos
{x=apos.x+0.3, y=apos.y+0.3, z=apos.z+0.3}, --maxpos
{x=-0, y=-0, z=-0}, --minvel
{x=0, y=0, z=0}, --maxvel
{x=0,y=-0.5,z=0}, --minacc
{x=-vec.x,y=-vec.y,z=-vec.z}, --maxacc
0.1, --minexptime
0.3, --maxexptime
1, --minsize
2, --maxsize
false, --collisiondetection
"witchcraft_flame.png" --texture
)
local vec = self.object:get_velocity()
minetest.add_particlespawner({
amount = 6,
time = 0.3,
minpos = {x=pos.x-0.3, y=pos.y-0.3, z=pos.z-0.3},
maxpos = {x=pos.x+0.3, y=pos.y+0.3, z=pos.z+0.3},
minvel = {x=-0, y=-0, z=-0},
maxvel = {x=0, y=0, z=0},
minacc = {x=0,y=-0.5,z=0},
maxacc = {x=-vec.x,y=-vec.y,z=-vec.z},
minexptime = 0.1,
maxexptime = 0.3,
minsize = 1,
maxsize = 2,
collisiondetection = false,
texture = "witchcraft_flame.png"
})
end, end,
}) })
minetest.register_entity("witchcraft:tree", { minetest.register_entity("witchcraft:tree", {
textures = {"witchcraft_skin.png"}, textures = {"witchcraft_skin.png"},
velocity = 1, velocity = 1,
@ -302,59 +293,43 @@ minetest.register_entity("witchcraft:tree", {
local remove = minetest.after(2, function() local remove = minetest.after(2, function()
self.object:remove() self.object:remove()
end) end)
local pos = self.object:getpos() local pos = self.object:get_pos()
local objs = minetest.get_objects_inside_radius({x=pos.x,y=pos.y,z=pos.z}, 2) local objs = minetest.get_objects_inside_radius({x=pos.x,y=pos.y,z=pos.z}, 2)
for k, obj in pairs(objs) do for k, obj in pairs(objs) do
if obj:get_luaentity() ~= nil then if obj:get_luaentity() then
if obj:get_luaentity().name ~= "witchcraft:tree" and obj:get_luaentity().name ~= "__builtin:item" then if obj:get_luaentity().name ~= "witchcraft:tree"
and obj:get_luaentity().name ~= "__builtin:item"
and obj:get_luaentity().name ~= "gauges:hp_bar" then
obj:remove() obj:remove()
local treepos = self.object:getpos() default.grow_new_jungle_tree(pos)
default.grow_new_jungle_tree(treepos)
self.object:remove()
end
end
end
for dx=0,1 do
for dy=0,1 do
for dz=0,1 do
local p = {x=pos.x+dx, y=pos.y, z=pos.z+dz}
local t = {x=pos.x+dx, y=pos.y+dy, z=pos.z+dz}
local n = minetest.env:get_node(p).name
if n ~= "witchcraft:tree" and n ~="air" then
local treepos = self.object:getpos()
default.grow_new_jungle_tree(treepos)
self.object:remove()
elseif n == "default:wood" or n =="default:tree" or n =="default:dirt_with_grass" or n =="default:dirt_with_dry_grass" then
self.hit_node(self, pos, node)
self.object:remove() self.object:remove()
return return
end end
end end
end end
end
hit_node = function(self, pos, node) local n = minetest.get_node(pos).name
local treepos = self.object:getpos() if n ~= "witchcraft:tree" and n ~="air" then
default.grow_new_jungle_tree(treepos) default.grow_new_jungle_tree(pos)
self.object:remove()
end end
local apos = self.object:getpos() minetest.add_particlespawner({
local part = minetest.add_particlespawner( amount = 6,
6, --amount time = 0.3,
0.3, --time minpos = {x=pos.x-0.3, y=pos.y-0.3, z=pos.z-0.3},
{x=apos.x-0.3, y=apos.y-0.3, z=apos.z-0.3}, --minpos maxpos = {x=pos.x+0.3, y=pos.y+0.3, z=pos.z+0.3},
{x=apos.x+0.3, y=apos.y+0.3, z=apos.z+0.3}, --maxpos minvel = {x=-0, y=-0, z=-0},
{x=-0, y=-0, z=-0}, --minvel maxvel = {x=0, y=0, z=0},
{x=0, y=0, z=0}, --maxvel minacc = {x=0,y=-0.5,z=0},
{x=0,y=-0.5,z=0}, --minacc maxacc = {x=0.5,y=0.5,z=0.5},
{x=0.5,y=0.5,z=0.5}, --maxacc minexptime = 0.1,
0.1, --minexptime maxexptime = 0.3,
0.3, --maxexptime minsize = 1,
1, --minsize maxsize = 2,
2, --maxsize collisiondetection = false,
false, --collisiondetection texture = "witchcraft_leaf_over.png"
"witchcraft_leaf_over.png" --texture })
)
end, end,
}) })
@ -372,55 +347,66 @@ minetest.register_entity("witchcraft:ice", {
local remove = minetest.after(10, function() local remove = minetest.after(10, function()
self.object:remove() self.object:remove()
end) end)
local pos = self.object:getpos() local pos = self.object:get_pos()
local objs = minetest.get_objects_inside_radius({x=pos.x,y=pos.y,z=pos.z}, 2) local objs = minetest.get_objects_inside_radius({x=pos.x,y=pos.y,z=pos.z}, 2)
for k, obj in pairs(objs) do for k, obj in pairs(objs) do
if obj:get_luaentity() ~= nil then if obj:get_luaentity() ~= nil then
if obj:get_luaentity().name ~= "witchcraft:ice" and obj:get_luaentity().name ~= "__builtin:item" then if obj:get_luaentity().name ~= "witchcraft:ice"
and obj:get_luaentity().name ~= "__builtin:item"
and obj:get_luaentity().name ~= "gauges:hp_bar" then
obj:punch(self.object, 1.0, { obj:punch(self.object, 1.0, {
full_punch_interval=1.0, full_punch_interval=1.0,
damage_groups={fleshy=1}, damage_groups={fleshy=1},
}, nil) }, nil)
self.object:remove() self.object:remove()
end
end
for dx=0,1 do
for dy=0,1 do
for dz=0,1 do
local p = {x=pos.x+dx, y=pos.y, z=pos.z+dz}
local t = {x=pos.x+dx, y=pos.y+dy, z=pos.z+dz}
local n = minetest.env:get_node(p).name
if n == "default:water_source" or n =="default:river_water_source" then
local pos = self.object:getpos()
minetest.set_node(pos, {name="default:ice"})
self.object:remove()
elseif n ~= "air" then
local velo = self.object:getvelocity()
self.object:setvelocity({x=velo.x*-1, y=velo.y*0, z=velo.z*1})
--self.object:remove()
return return
end end
end end
end end
local velo = self.object:get_velocity()
local hit = {
{ p = {x=pos.x+1, y=pos.y, z=pos.z},
v = {x=math.abs(velo.x)*-1, y=velo.y, z=velo.z}}, -- x
{ p = {x=pos.x-1, y=pos.y, z=pos.z},
v = {x=math.abs(velo.x), y=velo.y, z=velo.z}},
{ p = {x=pos.x, y=pos.y+1, z=pos.z},
v = {x=velo.x, y=math.abs(velo.y)*-1, z=velo.z}}, -- y
{ p = {x=pos.x, y=pos.y-1, z=pos.z},
v = {x=velo.x, y=math.abs(velo.y), z=velo.z}},
{ p = {x=pos.x, y=pos.y, z=pos.z+1},
v = {x=velo.x, y=velo.y, z=math.abs(velo.z)*-1}}, -- z
{ p = {x=pos.x, y=pos.y, z=pos.z-1},
v = {x=velo.x, y=velo.y, z=math.abs(velo.z)}}
}
for _,h in pairs(hit) do
local n = minetest.get_node(h.p).name
if n ~= "air" and n~= "witchcraft:ice" then
if n == "default:water_source" or n =="default:river_water_source" then
minetest.set_node(h.p, {name="default:ice"})
h.v.y = 0
end
self.object:set_velocity(h.v)
break
end
end end
local apos = self.object:getpos() minetest.add_particlespawner({
local part = minetest.add_particlespawner( amount = 10,
10, --amount time = 0.3,
0.3, --time minpos = {x=pos.x-0.3, y=pos.y-0.3, z=pos.z-0.3},
{x=apos.x-0.3, y=apos.y-0.3, z=apos.z-0.3}, --minpos maxpos = {x=pos.x+0.3, y=pos.y+0.3, z=pos.z+0.3},
{x=apos.x+0.3, y=apos.y+0.3, z=apos.z+0.3}, --maxpos minvel = {x=-0, y=-0, z=-0},
{x=-0, y=-0, z=-0}, --minvel maxvel = {x=0, y=0, z=0},
{x=0, y=0, z=0}, --maxvel minacc = {x=0,y=-0.5,z=0},
{x=0,y=-0.5,z=0}, --minacc maxacc = {x=0.5,y=0.5,z=0.5},
{x=0.5,y=0.5,z=0.5}, --maxacc minexptime = 0.1,
0.1, --minexptime maxexptime = 0.3,
0.3, --maxexptime minsize = 0.2,
0.2, --minsize maxsize = 0.5,
0.5, --maxsize collisiondetection = false,
false, --collisiondetection texture = "witchcraft_light_over.png"
"witchcraft_light_over.png" --texture })
)
end
end end
}) })

Binary file not shown.

Before

Width:  |  Height:  |  Size: 175 B

After

Width:  |  Height:  |  Size: 159 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 217 B

After

Width:  |  Height:  |  Size: 163 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 266 B

After

Width:  |  Height:  |  Size: 185 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 228 B

After

Width:  |  Height:  |  Size: 172 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 493 B

After

Width:  |  Height:  |  Size: 333 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 458 B

After

Width:  |  Height:  |  Size: 297 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 127 B

After

Width:  |  Height:  |  Size: 124 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 162 B

After

Width:  |  Height:  |  Size: 142 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 167 B

After

Width:  |  Height:  |  Size: 142 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 683 B

After

Width:  |  Height:  |  Size: 434 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 155 B

After

Width:  |  Height:  |  Size: 127 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 227 B

After

Width:  |  Height:  |  Size: 177 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 258 B

After

Width:  |  Height:  |  Size: 176 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 193 B

After

Width:  |  Height:  |  Size: 159 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 255 B

After

Width:  |  Height:  |  Size: 196 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 137 B

After

Width:  |  Height:  |  Size: 127 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 401 B

After

Width:  |  Height:  |  Size: 225 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 338 B

After

Width:  |  Height:  |  Size: 202 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 352 B

After

Width:  |  Height:  |  Size: 204 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 143 B

After

Width:  |  Height:  |  Size: 129 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 277 B

After

Width:  |  Height:  |  Size: 233 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 230 B

After

Width:  |  Height:  |  Size: 178 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 414 B

After

Width:  |  Height:  |  Size: 296 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 438 B

After

Width:  |  Height:  |  Size: 218 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.4 KiB

After

Width:  |  Height:  |  Size: 218 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.9 KiB

After

Width:  |  Height:  |  Size: 4.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 679 B

After

Width:  |  Height:  |  Size: 340 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 698 B

After

Width:  |  Height:  |  Size: 341 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 665 B

After

Width:  |  Height:  |  Size: 340 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 86 B

After

Width:  |  Height:  |  Size: 83 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 694 B

After

Width:  |  Height:  |  Size: 340 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 683 B

After

Width:  |  Height:  |  Size: 341 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 667 B

After

Width:  |  Height:  |  Size: 340 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1017 B

After

Width:  |  Height:  |  Size: 548 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 961 B

After

Width:  |  Height:  |  Size: 561 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.1 KiB

After

Width:  |  Height:  |  Size: 838 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 968 B

After

Width:  |  Height:  |  Size: 544 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 981 B

After

Width:  |  Height:  |  Size: 570 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 693 B

After

Width:  |  Height:  |  Size: 340 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 698 B

After

Width:  |  Height:  |  Size: 340 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 674 B

After

Width:  |  Height:  |  Size: 340 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 661 B

After

Width:  |  Height:  |  Size: 340 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 658 B

After

Width:  |  Height:  |  Size: 340 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 657 B

After

Width:  |  Height:  |  Size: 340 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 643 B

After

Width:  |  Height:  |  Size: 340 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 689 B

After

Width:  |  Height:  |  Size: 340 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 285 B

After

Width:  |  Height:  |  Size: 238 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 664 B

After

Width:  |  Height:  |  Size: 361 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 351 B

After

Width:  |  Height:  |  Size: 251 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 665 B

After

Width:  |  Height:  |  Size: 340 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 679 B

After

Width:  |  Height:  |  Size: 340 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 349 B

After

Width:  |  Height:  |  Size: 218 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 356 B

After

Width:  |  Height:  |  Size: 218 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 350 B

After

Width:  |  Height:  |  Size: 218 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 354 B

After

Width:  |  Height:  |  Size: 218 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 355 B

After

Width:  |  Height:  |  Size: 218 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 351 B

After

Width:  |  Height:  |  Size: 218 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 374 B

After

Width:  |  Height:  |  Size: 272 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 378 B

After

Width:  |  Height:  |  Size: 272 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 365 B

After

Width:  |  Height:  |  Size: 295 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 375 B

After

Width:  |  Height:  |  Size: 271 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 377 B

After

Width:  |  Height:  |  Size: 272 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 349 B

After

Width:  |  Height:  |  Size: 218 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 351 B

After

Width:  |  Height:  |  Size: 218 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 342 B

After

Width:  |  Height:  |  Size: 218 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 350 B

After

Width:  |  Height:  |  Size: 218 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 349 B

After

Width:  |  Height:  |  Size: 218 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 349 B

After

Width:  |  Height:  |  Size: 218 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 345 B

After

Width:  |  Height:  |  Size: 218 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 354 B

After

Width:  |  Height:  |  Size: 218 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 359 B

After

Width:  |  Height:  |  Size: 289 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 352 B

After

Width:  |  Height:  |  Size: 218 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 347 B

After

Width:  |  Height:  |  Size: 218 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 465 KiB

After

Width:  |  Height:  |  Size: 300 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 216 KiB

After

Width:  |  Height:  |  Size: 200 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 409 B

After

Width:  |  Height:  |  Size: 374 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 242 B

After

Width:  |  Height:  |  Size: 177 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 176 B

After

Width:  |  Height:  |  Size: 154 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.2 KiB

After

Width:  |  Height:  |  Size: 814 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 421 B

After

Width:  |  Height:  |  Size: 339 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 428 B

After

Width:  |  Height:  |  Size: 333 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 422 B

After

Width:  |  Height:  |  Size: 339 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 423 B

After

Width:  |  Height:  |  Size: 339 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 423 B

After

Width:  |  Height:  |  Size: 345 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 425 B

After

Width:  |  Height:  |  Size: 336 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 385 B

After

Width:  |  Height:  |  Size: 315 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 403 B

After

Width:  |  Height:  |  Size: 337 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 393 B

After

Width:  |  Height:  |  Size: 316 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 406 B

After

Width:  |  Height:  |  Size: 340 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 390 B

After

Width:  |  Height:  |  Size: 337 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 425 B

After

Width:  |  Height:  |  Size: 336 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 388 B

After

Width:  |  Height:  |  Size: 318 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 307 B

After

Width:  |  Height:  |  Size: 271 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 122 B

After

Width:  |  Height:  |  Size: 119 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 246 B

After

Width:  |  Height:  |  Size: 194 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 272 B

After

Width:  |  Height:  |  Size: 233 B

Some files were not shown because too many files have changed in this diff Show More