|
@ -22,29 +22,18 @@ tags
|
|||
!tags/
|
||||
gtags.files
|
||||
|
||||
## Files related to MultiCraft development cycle
|
||||
/*.patch
|
||||
# GNU Patch reject file
|
||||
*.rej
|
||||
|
||||
|
||||
## Non-static MultiCraft directories or symlinks to these
|
||||
/bin/
|
||||
/games/*
|
||||
!/games/MultiCraft_game/
|
||||
/cache
|
||||
/textures/*
|
||||
!/textures/base/
|
||||
/screenshots
|
||||
/sounds
|
||||
/mods/*
|
||||
!/mods/minetest/
|
||||
/mods/minetest/*
|
||||
!/mods/minetest/mods_here.txt
|
||||
/world/
|
||||
|
||||
## Configuration/log files
|
||||
minetest.conf
|
||||
debug.txt
|
||||
|
||||
## Doxygen files
|
||||
|
@ -83,4 +72,4 @@ build/android/obj
|
|||
build/android/path.cfg
|
||||
build/android/and_env
|
||||
build/android/AndroidManifest.xml
|
||||
timestamp
|
||||
timestamp
|
After Width: | Height: | Size: 294 B |
After Width: | Height: | Size: 301 B |
After Width: | Height: | Size: 297 B |
After Width: | Height: | Size: 297 B |
After Width: | Height: | Size: 297 B |
After Width: | Height: | Size: 295 B |
After Width: | Height: | Size: 295 B |
After Width: | Height: | Size: 295 B |
After Width: | Height: | Size: 289 B |
After Width: | Height: | Size: 295 B |
After Width: | Height: | Size: 297 B |
After Width: | Height: | Size: 297 B |
After Width: | Height: | Size: 206 B |
After Width: | Height: | Size: 209 B |
After Width: | Height: | Size: 209 B |
After Width: | Height: | Size: 208 B |
After Width: | Height: | Size: 337 B |
After Width: | Height: | Size: 332 B |
After Width: | Height: | Size: 208 B |
After Width: | Height: | Size: 207 B |
After Width: | Height: | Size: 207 B |
After Width: | Height: | Size: 210 B |
After Width: | Height: | Size: 209 B |
After Width: | Height: | Size: 206 B |
After Width: | Height: | Size: 129 B |
After Width: | Height: | Size: 123 B |
After Width: | Height: | Size: 170 B |
After Width: | Height: | Size: 281 B |
After Width: | Height: | Size: 314 B |
After Width: | Height: | Size: 285 B |
After Width: | Height: | Size: 298 B |
After Width: | Height: | Size: 285 B |
After Width: | Height: | Size: 246 B |
After Width: | Height: | Size: 246 B |
After Width: | Height: | Size: 271 B |
After Width: | Height: | Size: 243 B |
After Width: | Height: | Size: 283 B |
After Width: | Height: | Size: 246 B |
After Width: | Height: | Size: 288 B |
After Width: | Height: | Size: 246 B |
After Width: | Height: | Size: 340 B |
After Width: | Height: | Size: 321 B |
|
@ -7,10 +7,10 @@ Copyright (C) 2012 Perttu Ahola (celeron55) <celeron55@gmail.com>
|
|||
|
||||
This program is free software; you can redistribute it and/or modify
|
||||
it under the terms of the GNU Lesser General Public License as published by
|
||||
the Free Software Foundation; either version 3.0 of the License, or
|
||||
the Free Software Foundation; either version 2.1 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
http://www.gnu.org/licenses/lgpl-3.0.html
|
||||
http://www.gnu.org/licenses/lgpl-2.1.html
|
||||
|
||||
License of media (textures and sounds)
|
||||
--------------------------------------
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
--basic settings
|
||||
item_drop_settings = {} --settings table
|
||||
item_drop_settings.age = 1
|
||||
item_drop_settings.radius_magnet = 2
|
||||
item_drop_settings.radius_collect = 0.5
|
||||
item_drop_settings.age = 1 --how old an item has to be before collecting
|
||||
item_drop_settings.radius_magnet = 2.5 --radius of item magnet
|
||||
item_drop_settings.radius_collect = 0.2 --radius of collection
|
||||
item_drop_settings.player_collect_height = 1.5 --added to their pos y value
|
||||
item_drop_settings.collection_safety = true --do this to prevent items from flying away on laggy servers
|
||||
item_drop_settings.collect_by_default = true --make item entities automatically collect in the item entity code
|
||||
|
@ -50,32 +50,19 @@ minetest.register_globalstep(function(dtime)
|
|||
|
||||
--modified simplemobs api
|
||||
|
||||
local s = object:getpos()
|
||||
local p = {x=pos.x,y=pos.y + item_drop_settings.player_collect_height,z=pos.z}
|
||||
local pos1 = pos
|
||||
--pos1.y = pos1.y+item_drop_settings.player_collect_height
|
||||
local pos2 = object:getpos()
|
||||
local vec = {x=pos1.x-pos2.x, y=(pos1.y+item_drop_settings.player_collect_height)-pos2.y, z=pos1.z-pos2.z}
|
||||
--vec.x = vec.x
|
||||
--vec.y = vec.y
|
||||
--vec.z = vec.z
|
||||
|
||||
p.y = p.y + item_drop_settings.player_collect_height --since the absolute pos of player is the bottom of the collision
|
||||
--box this raises it up to their center so it appears they are sucking the
|
||||
--item into their character's body
|
||||
vec.x = pos2.x + (vec.x/3)
|
||||
vec.y = pos2.y + (vec.y/3)
|
||||
vec.z = pos2.z + (vec.z/3)
|
||||
object:moveto(vec)
|
||||
|
||||
local dist = ((p.x-s.x)^2 + (p.y-s.y)^2 + (p.z-s.z)^2)^0.5
|
||||
local vec = {x=p.x-s.x, y=p.y-s.y, z=p.z-s.z}
|
||||
local yaw = math.atan(vec.z/vec.x)+math.pi/2
|
||||
|
||||
--local pitch = math.atan(vec.y)+math.pi/2
|
||||
--if s.y > p.y then
|
||||
-- pitch = pitch * -1
|
||||
--end
|
||||
|
||||
if p.x > s.x then
|
||||
yaw = yaw+math.pi
|
||||
end
|
||||
local x = math.sin(yaw) * -5
|
||||
local z = math.cos(yaw) * 5
|
||||
|
||||
local y = vec.y*2-2
|
||||
|
||||
|
||||
object:setvelocity({x=x, y=y, z=z})
|
||||
|
||||
|
||||
object:get_luaentity().physical_state = false
|
||||
|
@ -83,32 +70,41 @@ minetest.register_globalstep(function(dtime)
|
|||
physical = false
|
||||
})
|
||||
|
||||
--this is a safety to prevent items flying away on laggy servers
|
||||
--fix eternally falling items
|
||||
minetest.after(0, function()
|
||||
object:setacceleration({x=0, y=0, z=0})
|
||||
end)
|
||||
|
||||
|
||||
--this is a safety to prevent items flying away on laggy servers
|
||||
if item_drop_settings.collection_safety == true then
|
||||
minetest.after(1, function(args)
|
||||
local lua = object:get_luaentity()
|
||||
if object == nil or lua == nil or lua.itemstring == nil then
|
||||
return
|
||||
end
|
||||
if inv:room_for_item("main", ItemStack(object:get_luaentity().itemstring)) then
|
||||
inv:add_item("main", ItemStack(object:get_luaentity().itemstring))
|
||||
if object:get_luaentity().itemstring ~= "" then
|
||||
minetest.sound_play("item_drop_pickup", {
|
||||
pos = pos,
|
||||
max_hear_distance = 100,
|
||||
gain = 10.0,
|
||||
if object:get_luaentity().init ~= true then
|
||||
object:get_luaentity().init = true
|
||||
minetest.after(1, function(args)
|
||||
local lua = object:get_luaentity()
|
||||
if object == nil or lua == nil or lua.itemstring == nil then
|
||||
return
|
||||
end
|
||||
if inv:room_for_item("main", ItemStack(object:get_luaentity().itemstring)) then
|
||||
inv:add_item("main", ItemStack(object:get_luaentity().itemstring))
|
||||
if object:get_luaentity().itemstring ~= "" then
|
||||
minetest.sound_play("item_drop_pickup", {
|
||||
pos = pos,
|
||||
max_hear_distance = 100,
|
||||
gain = 10.0,
|
||||
})
|
||||
end
|
||||
object:get_luaentity().itemstring = ""
|
||||
object:remove()
|
||||
else
|
||||
object:setvelocity({x=0,y=0,z=0})
|
||||
object:get_luaentity().physical_state = true
|
||||
object:get_luaentity().object:set_properties({
|
||||
physical = true
|
||||
})
|
||||
end
|
||||
object:get_luaentity().itemstring = ""
|
||||
object:remove()
|
||||
else
|
||||
object:setvelocity({x=0,y=0,z=0})
|
||||
object:get_luaentity().physical_state = true
|
||||
object:get_luaentity().object:set_properties({
|
||||
physical = true
|
||||
})
|
||||
end
|
||||
end, {player, object})
|
||||
end, {player, object})
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
@ -147,7 +143,7 @@ function minetest.handle_node_drops(pos, drops, digger)
|
|||
z = -z
|
||||
end
|
||||
obj:setvelocity({x=1/x, y=obj:getvelocity().y, z=1/z})
|
||||
|
||||
obj:get_luaentity().age = 0.6
|
||||
-- FIXME this doesnt work for deactiveted objects
|
||||
if minetest.setting_get("remove_items") and tonumber(minetest.setting_get("remove_items")) then
|
||||
minetest.after(tonumber(minetest.setting_get("remove_items")), function(obj)
|
||||
|
@ -172,9 +168,9 @@ function minetest.item_drop(itemstack, dropper, pos)
|
|||
local item = itemstack:take_item(cs)
|
||||
local obj = core.add_item(p, item)
|
||||
if obj then
|
||||
v.x = v.x*2
|
||||
v.y = v.y*2 + 2
|
||||
v.z = v.z*2
|
||||
v.x = v.x*4
|
||||
v.y = v.y*4 + 2
|
||||
v.z = v.z*4
|
||||
obj:setvelocity(v)
|
||||
obj:get_luaentity().collect = true
|
||||
return itemstack
|
||||
|
@ -447,4 +443,4 @@ core.register_entity(":__builtin:item", {
|
|||
self.itemstring = ''
|
||||
self.object:remove()
|
||||
end,
|
||||
})
|
||||
})
|
|
@ -0,0 +1,54 @@
|
|||
|
||||
-- Kitten by Jordach / BFD
|
||||
|
||||
mobs:register_mob("mobs:kitten", {
|
||||
type = "animal",
|
||||
passive = true,
|
||||
reach = 2,
|
||||
hp_min = 5,
|
||||
hp_max = 10,
|
||||
armor = 100,
|
||||
collisionbox = {-0.3, -0.3, -0.3, 0.3, 0.1, 0.3},
|
||||
visual = "mesh",
|
||||
visual_size = {x = 0.5, y = 0.5},
|
||||
mesh = "mobs_kitten.b3d",
|
||||
textures = {
|
||||
{"mobs_kitten_striped.png"},
|
||||
{"mobs_kitten_splotchy.png"},
|
||||
{"mobs_kitten_ginger.png"},
|
||||
{"mobs_kitten_sandy.png"},
|
||||
},
|
||||
makes_footstep_sound = false,
|
||||
sounds = {
|
||||
random = "mobs_kitten",
|
||||
},
|
||||
walk_velocity = 0.6,
|
||||
jump = false,
|
||||
drops = {
|
||||
{name = "farming:string",
|
||||
chance = 1, min = 1, max = 1},
|
||||
},
|
||||
water_damage = 1,
|
||||
lava_damage = 5,
|
||||
animation = {
|
||||
speed_normal = 42,
|
||||
stand_start = 97,
|
||||
stand_end = 192,
|
||||
walk_start = 0,
|
||||
walk_end = 96,
|
||||
},
|
||||
follow = {"mobs:rat"},
|
||||
view_range = 8,
|
||||
on_rightclick = function(self, clicker)
|
||||
mobs:feed_tame(self, clicker, 4, true, true)
|
||||
mobs:capture_mob(self, clicker, 50, 50, 90, false, nil)
|
||||
end
|
||||
})
|
||||
|
||||
--name, nodes, neighbors, min_light, max_light, interval, chance, active_object_count, min_height, max_height
|
||||
mobs:spawn_specific("mobs:kitten",
|
||||
{"default:dirt", "default:sand", "default:snowblock", "default:dirt_with_snow", "default:dirt_with_grass"},
|
||||
{"air"},
|
||||
5, 20, 0, 5000, 1, 1, 31000
|
||||
)
|
||||
mobs:register_egg("mobs:kitten", "Kitten", "mobs_kitten_inv.png", 0)
|
After Width: | Height: | Size: 1017 B |
After Width: | Height: | Size: 360 B |
After Width: | Height: | Size: 1.0 KiB |
After Width: | Height: | Size: 1.1 KiB |
After Width: | Height: | Size: 1.2 KiB |
|
@ -0,0 +1,14 @@
|
|||
PlayerPlus mod for minetest
|
||||
|
||||
This mod lets the player walk faster when walking on ice, slows down the player when waling on snow or in water, and makes touching a cactus hurt... enjoy
|
||||
|
||||
https://forum.minetest.net/viewtopic.php?t=10090&p=153667
|
||||
|
||||
- 0.1 - Initial release
|
||||
- 0.2 - 3d_armor mod compatibility
|
||||
- 0.3 - Optimized code
|
||||
- 0.4 - Added suffocation when inside nodes
|
||||
- 0.5 - Slow down when walking in water
|
||||
- 0.6 - Code tidy and tweak, increased damage by cactus and suffocation
|
||||
|
||||
Released under WTFPL
|
|
@ -7,10 +7,10 @@ Copyright (C) 2011-2012 celeron55, Perttu Ahola <celeron55@gmail.com>
|
|||
|
||||
This program is free software; you can redistribute it and/or modify
|
||||
it under the terms of the GNU Lesser General Public License as published by
|
||||
the Free Software Foundation; either version 3.0 of the License, or
|
||||
the Free Software Foundation; either version 2 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
http://www.gnu.org/licenses/lgpl-3.0.html
|
||||
http://www.gnu.org/licenses/lgpl-2.1.html
|
||||
|
||||
License of media (textures and sounds)
|
||||
--------------------------------------
|
||||
|
|
|
@ -0,0 +1,11 @@
|
|||
Wool mod for Minetest
|
||||
|
||||
by TenPlus1
|
||||
|
||||
Yep, it's a simple replacement for the wool mod that allows you to dye any
|
||||
wool any colour including white, and I've also added a wool sound when walking
|
||||
on top of the wool blocks to replace the leaves sound.
|
||||
|
||||
Textures are from Gambit's PixelBox texture pack.
|
||||
|
||||
Sound is from freeSFX.co.uk and has a creative-commons license
|
After Width: | Height: | Size: 562 B |
After Width: | Height: | Size: 676 B |
After Width: | Height: | Size: 588 B |
After Width: | Height: | Size: 650 B |
After Width: | Height: | Size: 573 B |
After Width: | Height: | Size: 578 B |
After Width: | Height: | Size: 691 B |
After Width: | Height: | Size: 650 B |
After Width: | Height: | Size: 693 B |
After Width: | Height: | Size: 602 B |
After Width: | Height: | Size: 718 B |
After Width: | Height: | Size: 666 B |
After Width: | Height: | Size: 696 B |
After Width: | Height: | Size: 625 B |
After Width: | Height: | Size: 680 B |