yl_speak_up/mobs.lua

354 lines
8.3 KiB
Lua

-- assing ID at spawning (not at first talk) and log it
function yl_speak_up.on_spawn(self)
--Let's protect it
self.protected = true
self.tamed = true
self.object:set_armor_groups({immortal = 100})
--Let's assign an ID (usually this happens at first talk)
self = yl_speak_up.initialize_npc(self)
if(not(self) or not(self.yl_speak_up) or not(self.yl_speak_up.id)) then
-- something went very wrong
return false
end
yl_speak_up.log_change("-", "n_"..self.yl_speak_up.id,
"spawned at "..minetest.pos_to_string(self.object:get_pos()), "action")
--Let's do it only once
return true
end
mobs:register_mob("yl_speak_up:human", {
type = "npc",
passive = true,
damage = 9,
attack_type = "dogfight",
attacks_monsters = true,
attack_npcs = false,
owner_loyal = false,
pathfinding = false,
hp_min = 60,
hp_max = 100,
armor = 0,
collisionbox = {-0.3, 0.0, -0.3, 0.3, 1.7, 0.3},
visual = "mesh",
visual_size = {x = 1, y = 1},
mesh = "skinsdb_3d_armor_character_5.b3d",
drawtype = "front",
textures = {{
"blank.png", -- cape?
"yl_speak_up_main_default.png", -- 64x64 skin
"3d_armor_trans.png", -- shield?!
"3d_armor_trans.png", -- item right hand
}},
makes_footstep_sound = true,
sounds = {},
walk_velocity = 2,
run_velocity = 3,
jump = false,
water_damage = 0,
lava_damage = 0,
light_damage = 0,
view_range = 4,
owner = "Haven",
order = "stand",
fear_height = 3,
animation = {
speed_normal = 30,
speed_run = 30,
stand_start = 0,
stand_end = 79,
walk_start = 168,
walk_end = 187,
run_start = 168,
run_end = 187,
punch_start = 200,
punch_end = 219,
},
on_rightclick = yl_speak_up.mobs_on_rightclick,
on_spawn = yl_speak_up.on_spawn,
after_activate = yl_speak_up.mobs_after_activate
})
mobs:register_egg("yl_speak_up:human", "Human", "wool_blue.png", 1)
mobs:register_mob("yl_speak_up:elf", {
type = "npc",
passive = true,
damage = 9,
attack_type = "dogfight",
attacks_monsters = true,
attack_npcs = false,
owner_loyal = false,
pathfinding = false,
hp_min = 60,
hp_max = 100,
armor = 0,
collisionbox = {-0.25, 0.0, -0.25, 0.25, 1.9, 0.25},
visual = "mesh",
visual_size = {x = 0.9, y = 1.1},
mesh = "skinsdb_3d_armor_character_5.b3d",
drawtype = "front",
textures = {{
"blank.png", -- cape?
"yl_speak_up_main_default.png", -- 64x64 skin
"3d_armor_trans.png", -- shield?!
"3d_armor_trans.png", -- item right hand
}},
makes_footstep_sound = true,
sounds = {},
walk_velocity = 2,
run_velocity = 3,
jump = false,
water_damage = 0,
lava_damage = 0,
light_damage = 0,
view_range = 4,
owner = "Haven",
order = "stand",
fear_height = 3,
animation = {
speed_normal = 30,
speed_run = 30,
stand_start = 0,
stand_end = 79,
walk_start = 168,
walk_end = 187,
run_start = 168,
run_end = 187,
punch_start = 200,
punch_end = 219,
},
on_rightclick = yl_speak_up.mobs_on_rightclick,
on_spawn = yl_speak_up.on_spawn,
after_activate = yl_speak_up.mobs_after_activate
})
mobs:register_egg("yl_speak_up:elf", "Elf", "wool_cyan.png", 1)
mobs:register_mob("yl_speak_up:dwarf", {
type = "npc",
passive = true,
damage = 9,
attack_type = "dogfight",
attacks_monsters = true,
attack_npcs = false,
owner_loyal = false,
pathfinding = false,
hp_min = 60,
hp_max = 100,
armor = 0,
collisionbox = {-0.35, 0.0, -0.35, 0.35, 1.4, 0.35},
visual = "mesh",
visual_size = {x = 1.1, y = 0.8},
mesh = "skinsdb_3d_armor_character_5.b3d",
drawtype = "front",
textures = {{
"blank.png", -- cape?
"yl_speak_up_main_default.png", -- 64x64 skin
"3d_armor_trans.png", -- shield?!
"3d_armor_trans.png", -- item right hand
}},
makes_footstep_sound = true,
sounds = {},
walk_velocity = 2,
run_velocity = 3,
jump = false,
water_damage = 0,
lava_damage = 0,
light_damage = 0,
view_range = 4,
owner = "Haven",
order = "stand",
fear_height = 3,
animation = {
speed_normal = 30,
speed_run = 30,
stand_start = 0,
stand_end = 79,
walk_start = 168,
walk_end = 187,
run_start = 168,
run_end = 187,
punch_start = 200,
punch_end = 219,
},
on_rightclick = yl_speak_up.mobs_on_rightclick,
on_spawn = yl_speak_up.on_spawn,
after_activate = yl_speak_up.mobs_after_activate
})
mobs:register_egg("yl_speak_up:dwarf", "Dwarf", "wool_red.png", 1)
mobs:register_mob("yl_speak_up:goblin", {
type = "npc",
passive = true,
damage = 9,
attack_type = "dogfight",
attacks_monsters = true,
attack_npcs = false,
owner_loyal = false,
pathfinding = false,
hp_min = 60,
hp_max = 100,
armor = 0,
collisionbox = {-0.25, 0.0, -0.25, 0.25, 1.4, 0.25},
visual = "mesh",
visual_size = {x = 0.7, y = 0.8},
mesh = "skinsdb_3d_armor_character_5.b3d",
drawtype = "front",
textures = {{
"blank.png", -- cape?
"yl_speak_up_main_default.png", -- 64x64 skin
"3d_armor_trans.png", -- shield?!
"3d_armor_trans.png", -- item right hand
}},
makes_footstep_sound = true,
sounds = {},
walk_velocity = 2,
run_velocity = 3,
jump = false,
water_damage = 0,
lava_damage = 0,
light_damage = 0,
view_range = 4,
owner = "Haven",
order = "stand",
fear_height = 3,
animation = {
speed_normal = 30,
speed_run = 30,
stand_start = 0,
stand_end = 79,
walk_start = 168,
walk_end = 187,
run_start = 168,
run_end = 187,
punch_start = 200,
punch_end = 219,
},
on_rightclick = yl_speak_up.mobs_on_rightclick,
on_spawn = yl_speak_up.on_spawn,
after_activate = yl_speak_up.mobs_after_activate
})
mobs:register_egg("yl_speak_up:goblin", "Goblin", "wool_yellow.png", 1)
mobs:register_mob("yl_speak_up:orc", {
type = "npc",
passive = true,
damage = 9,
attack_type = "dogfight",
attacks_monsters = true,
attack_npcs = false,
owner_loyal = false,
pathfinding = false,
hp_min = 60,
hp_max = 100,
armor = 0,
collisionbox = {-0.35, 0.0, -0.35, 0.35, 1.9, 0.35},
visual = "mesh",
visual_size = {x = 1.1, y = 1.1},
mesh = "skinsdb_3d_armor_character_5.b3d",
drawtype = "front",
textures = {{
"blank.png", -- cape?
"yl_speak_up_main_default.png", -- 64x64 skin
"3d_armor_trans.png", -- shield?!
"3d_armor_trans.png", -- item right hand
}},
makes_footstep_sound = true,
sounds = {},
walk_velocity = 2,
run_velocity = 3,
jump = false,
water_damage = 0,
lava_damage = 0,
light_damage = 0,
view_range = 4,
owner = "Haven",
order = "stand",
fear_height = 3,
animation = {
speed_normal = 30,
speed_run = 30,
stand_start = 0,
stand_end = 79,
walk_start = 168,
walk_end = 187,
run_start = 168,
run_end = 187,
punch_start = 200,
punch_end = 219,
},
on_rightclick = yl_speak_up.mobs_on_rightclick,
on_spawn = yl_speak_up.on_spawn,
after_activate = yl_speak_up.mobs_after_activate
})
mobs:register_egg("yl_speak_up:orc", "Orc", "wool_dark_green.png", 1)
-- ###
-- Test
-- ###
mobs:register_mob("yl_speak_up:npc", {
type = "npc",
passive = true,
damage = 9,
attack_type = "dogfight",
attacks_monsters = true,
attack_npcs = false,
owner_loyal = false,
pathfinding = false,
hp_min = 60,
hp_max = 100,
armor = 0,
collisionbox = {-0.35, 0.0, -0.35, 0.35, 1.9, 0.35},
visual = "mesh",
visual_size = {x = 1.1, y = 1.1},
mesh = "skinsdb_3d_armor_character_5.b3d",
drawtype = "front",
textures = {{
"blank.png", -- cape? wenn 64x32, dann 56,20 - 63,31, wenn 128x64, dann 111,39 - 127,63, rest invis
"yl_speak_up_main_default.png", -- 64x64 skin oder auch 128x128?
"blank.png", -- shield?! 64x32
"3d_armor_trans.png", -- item right hand (16x16)
}},
makes_footstep_sound = true,
sounds = {},
walk_velocity = 2,
run_velocity = 3,
jump = false,
water_damage = 0,
lava_damage = 0,
light_damage = 0,
view_range = 4,
owner = "Haven",
order = "stand",
fear_height = 3,
animation = {
speed_normal = 30,
speed_run = 30,
stand_start = 0,
stand_end = 79,
walk_start = 168,
walk_end = 187,
run_start = 168,
run_end = 187,
punch_start = 200,
punch_end = 219,
},
on_rightclick = yl_speak_up.mobs_on_rightclick,
on_spawn = yl_speak_up.on_spawn,
after_activate = yl_speak_up.mobs_after_activate
})
mobs:register_egg("yl_speak_up:npc", "NPC", "wool_black.png", 1)