Merge branch 'development2' of https://github.com/NPXcoot/nssm into development2
Forgot to pull before pushing
This commit is contained in:
commit
19e251efc6
22
darts.lua
22
darts.lua
@ -377,6 +377,28 @@ mobs:register_arrow("nssm:pumpkid_bomb", {
|
||||
end
|
||||
})
|
||||
|
||||
--Lava_block bomb
|
||||
|
||||
mobs:register_arrow("nssm:lava_block_bomb", {
|
||||
visual = "cube",
|
||||
visual_size = {x = 1, y = 1},
|
||||
textures = {"default_lava.png","default_lava.png", "default_lava.png", "default_lava.png", "default_lava.png", "default_lava.png"},
|
||||
velocity = 8,
|
||||
-- direct hit
|
||||
hit_player = function(self, player)
|
||||
local p = player:getpos()
|
||||
if not minetest.is_protected(p, "") or not minetest.get_item_group(minetest.get_node(p).name, "unbreakable") == 1 then
|
||||
minetest.set_node(p, {name="default:lava_source"})
|
||||
end
|
||||
end,
|
||||
|
||||
hit_node = function(self, pos, node)
|
||||
if not minetest.is_protected(pos, "") or not minetest.get_item_group(minetest.get_node(pos).name, "unbreakable") == 1 then
|
||||
minetest.set_node(pos, {name="default:lava_source"})
|
||||
end
|
||||
end
|
||||
})
|
||||
|
||||
--
|
||||
mobs:register_arrow("nssm:roar_of_the_dragon", {
|
||||
visual = "sprite",
|
||||
|
1
init.lua
1
init.lua
@ -67,6 +67,7 @@ dofile(path.."/mobs/tartacacia.lua")
|
||||
dofile(path.."/mobs/uloboros.lua")
|
||||
dofile(path.."/mobs/werewolf.lua")
|
||||
dofile(path.."/mobs/white_werewolf.lua")
|
||||
dofile(path.."/mobs/salamander.lua")
|
||||
|
||||
--Final Boss
|
||||
dofile(path.."/mobs/mese_dragon.lua")
|
||||
|
@ -53,7 +53,7 @@ mobs:register_mob("nssm:black_scorpion", {
|
||||
die_end = 210,
|
||||
},
|
||||
custom_attack = function (self)
|
||||
if math.random(1,100) == 1 then
|
||||
if math.random(1,30) == 1 then
|
||||
set_animation(self, "punch2")
|
||||
self.attack:punch(self.object, 1.0, {
|
||||
full_punch_interval = 1.0,
|
||||
|
@ -48,9 +48,8 @@ mobs:register_mob("nssm:phoenix", {
|
||||
blood_amount=50,
|
||||
on_rightclick = nil,
|
||||
fly = true,
|
||||
attack_type = "shoot",
|
||||
arrow = "nssm:phoenix_arrow",
|
||||
reach = 1,
|
||||
attack_type = "dogfight",
|
||||
reach = 15,
|
||||
shoot_interval = 4,
|
||||
animation = {
|
||||
speed_normal = 25,
|
||||
@ -65,5 +64,68 @@ mobs:register_mob("nssm:phoenix", {
|
||||
punch_end = 110,
|
||||
shoot_start = 80,
|
||||
shoot_end = 110,
|
||||
}
|
||||
},
|
||||
custom_attack = function(self)
|
||||
local p = self.attack:getpos()
|
||||
local s = self.object:getpos()
|
||||
local vel = vector.subtract(p,s)
|
||||
|
||||
minetest.add_particlespawner(
|
||||
125, --amount
|
||||
0.5, --time
|
||||
s, --minpos
|
||||
s, --maxpos
|
||||
vector.multiply(vel, 0.5), --minvel
|
||||
vector.multiply(vel, 1.4), --maxvel
|
||||
{x=0,y=0,z=0}, --minacc
|
||||
{x=0,y=0,z=0}, --maxacc
|
||||
2, --minexptime
|
||||
4, --maxexptime
|
||||
10, --minsize
|
||||
20, --maxsize
|
||||
true, --collisiondetection
|
||||
"phoenix_fire.png" --texture
|
||||
)
|
||||
|
||||
|
||||
--local dir = placer:get_look_dir()
|
||||
--local playerpos = placer:getpos()
|
||||
local obj = minetest.add_entity(s, "nssm:phoenix_dart")
|
||||
local ran = math.random(7,14)/10
|
||||
local vec = vector.multiply(vel, ran)
|
||||
obj:setvelocity(vec)
|
||||
|
||||
minetest.after(0.5, function()
|
||||
local p = self.attack:getpos()
|
||||
local vel = vector.subtract(p,s)
|
||||
local obj = minetest.add_entity(s, "nssm:phoenix_dart")
|
||||
local ran = math.random(7,14)/10
|
||||
local vec = vector.multiply(vel, ran)
|
||||
obj:setvelocity(vec)
|
||||
end)
|
||||
|
||||
end,
|
||||
})
|
||||
|
||||
|
||||
minetest.register_entity("nssm:phoenix_dart", {
|
||||
textures = {"transparent.png"},
|
||||
on_step = function(self, dtime)
|
||||
self.timer = (self.timer) or os.time()
|
||||
self.attack = (self.attack) or os.time()
|
||||
if os.time() - self.timer > 4 then
|
||||
self.object:remove()
|
||||
end
|
||||
local all_objects = minetest.get_objects_inside_radius(self.object:getpos(), 1)
|
||||
local players = {}
|
||||
local _,obj
|
||||
for _,obj in ipairs(all_objects) do
|
||||
if obj:is_player() then
|
||||
obj:punch(self.object, 1.0, {
|
||||
full_punch_interval = 1.0,
|
||||
damage_groups = {fleshy = 1}
|
||||
}, nil)
|
||||
end
|
||||
end
|
||||
end,
|
||||
})
|
||||
|
77
mobs/salamander.lua
Normal file
77
mobs/salamander.lua
Normal file
@ -0,0 +1,77 @@
|
||||
mobs:register_mob("nssm:salamander", {
|
||||
type = "monster",
|
||||
hp_max = 35,
|
||||
hp_min = 24,
|
||||
collisionbox = {-0.6, -0.8, -0.6, 0.6, 0.4, 0.5},
|
||||
visual = "mesh",
|
||||
rotate = 270,
|
||||
mesh = "salamander.x",
|
||||
textures = {{"salamander.png"}},
|
||||
visual_size = {x=12, y=12},
|
||||
fear_height = 4,
|
||||
makes_footstep_sound = true,
|
||||
view_range = 24,
|
||||
walk_velocity = 2,
|
||||
run_velocity = 4,
|
||||
damage = 6,
|
||||
jump = true,
|
||||
drops = {
|
||||
{name = "nssm:life_energy",
|
||||
chance = 1,
|
||||
min = 1,
|
||||
max = 2,},
|
||||
{name = "nssm:duck_legs",
|
||||
chance = 1,
|
||||
min = 1,
|
||||
max = 8,},
|
||||
{name = "nssm:silk_gland",
|
||||
chance = 2,
|
||||
min = 1,
|
||||
max = 2,},
|
||||
{name = "nssm:black_duck_feather",
|
||||
chance = 3,
|
||||
min = 1,
|
||||
max = 4,},
|
||||
{name = "nssm:duck_beak",
|
||||
chance = 5,
|
||||
min = 1,
|
||||
max = 1,},
|
||||
},
|
||||
armor = 80,
|
||||
drawtype = "front",
|
||||
water_damage = 2,
|
||||
lava_damage = 5,
|
||||
light_damage = 0,
|
||||
group_attack=true,
|
||||
attack_animals=true,
|
||||
knock_back=2,
|
||||
blood_texture="nssm_blood.png",
|
||||
stepheight=1.5,
|
||||
on_rightclick = nil,
|
||||
dogshoot_switch = true,
|
||||
attack_type = "dogshoot",
|
||||
arrow = "nssm:lava_block_bomb",
|
||||
reach = 2,
|
||||
shoot_interval = 2,
|
||||
shoot_offset = 2,
|
||||
animation = {
|
||||
speed_normal = 25,
|
||||
speed_run = 35,
|
||||
stand_start = 0,
|
||||
stand_end = 80,
|
||||
walk_start = 110,
|
||||
walk_end = 150,
|
||||
run_start = 110,
|
||||
run_end = 150,
|
||||
punch_start = 160,
|
||||
punch_end = 180,
|
||||
shoot_start = 200,
|
||||
shoot_end = 250,
|
||||
die_start = 80,
|
||||
die_end = 100,
|
||||
--[[
|
||||
swim_start = 260,
|
||||
swim_end = 300,
|
||||
]]
|
||||
}
|
||||
})
|
@ -1901,7 +1901,9 @@ function nssm_register_egg (name, descr)
|
||||
core.after(0.1, function()
|
||||
minetest.add_entity(pos1, "nssm:".. name)
|
||||
end)
|
||||
if not minetest.setting_getbool("creative_mode") then
|
||||
itemstack:take_item()
|
||||
end
|
||||
return itemstack
|
||||
end,
|
||||
})
|
||||
@ -1917,7 +1919,9 @@ function nssm_register_egg2 (name, descr) --mobs you can't catch
|
||||
core.after(0.1, function()
|
||||
minetest.add_entity(pos1, "nssm:".. name)
|
||||
end)
|
||||
if not minetest.setting_getbool("creative_mode") then
|
||||
itemstack:take_item()
|
||||
end
|
||||
return itemstack
|
||||
end,
|
||||
})
|
||||
@ -1985,6 +1989,7 @@ nssm_register_egg2 ('morgut', 'Morgut')
|
||||
nssm_register_egg2 ('morde', 'Morde')
|
||||
nssm_register_egg2 ('morlu', 'Morlu')
|
||||
nssm_register_egg2 ('morwa', 'Morwa')
|
||||
nssm_register_egg ('salamander', 'Salamander')
|
||||
--nssm_register_egg ('morvalar', 'Morvalar')
|
||||
|
||||
minetest.register_craftitem("nssm:mese_egg", {
|
||||
@ -2013,7 +2018,9 @@ minetest.register_craftitem("nssm:mese_egg", {
|
||||
core.after(0.4, function()
|
||||
minetest.add_entity(pos1, "nssm:mese_dragon")
|
||||
end)
|
||||
if not minetest.setting_getbool("creative_mode") then
|
||||
itemstack:take_item()
|
||||
end
|
||||
return itemstack
|
||||
end,
|
||||
})
|
||||
|
11
todo.txt
11
todo.txt
@ -1,20 +1,16 @@
|
||||
Codice:
|
||||
- Mantis deve diventare invisibile se non sta attaccando/correndo (texture e animazioni Emmo) -> semifatto
|
||||
- Scorpione deve fare un colpo letale con il pungiglione -> fatto (probabilità 1 su 30 Fra)
|
||||
- Il Berinhog danneggia con i suoi aculei chi lo attacca -> fatto
|
||||
- Icelizard ha un raggio d'azione troppo ampio! -> dimezzato il raggio dell'esplosione
|
||||
- Mantis problema animazioni (fra)
|
||||
- I Pumboom droppano gli oggetti quando esplodono! (Controllare se anche quelli di tenplus, Fra)
|
||||
- Attacco tartacacia: ti pianta nel terreno facendo danno o apre una voragine sotto di te. -> Iniziato Fra
|
||||
- Attacco lanciafango del chog
|
||||
- Nuovo modo di attaccare della Fenice
|
||||
- Nuovo modo di attaccare della Fenice ->semifatto
|
||||
- Icelamander lagga malissimo (controllare anche i suoi amici)
|
||||
- Mese Dragon da rifare (lagga, più piccolo, non attacca)
|
||||
- Envy sword scambia life energy
|
||||
- Uova in modalità creativa
|
||||
- Mantis beast
|
||||
- Ahuizotl (?)
|
||||
- Albino Spider
|
||||
- Salamander (dogshootta lava (un blocco))
|
||||
- Salamander (dogshootta lava (un blocco)) ->semifatto
|
||||
- Flust mangia le armature di metallo e non viene danneggiato dalle armi di metallo
|
||||
- Spawn
|
||||
- Togliere il coccodrillo e la swimming duck dai fiumi
|
||||
@ -28,7 +24,6 @@ Emmo vorrebbe:
|
||||
|
||||
|
||||
Modelli:
|
||||
-Animazioni Salamandra
|
||||
-Animazioni Ahuizotl
|
||||
-Animazioni Albino Spider
|
||||
-Flust
|
||||
|
Loading…
x
Reference in New Issue
Block a user