master
Pinky 2016-01-19 10:42:33 -05:00
parent 1cdb90f5ac
commit 66c4d0a23a
19 changed files with 345 additions and 45 deletions

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.4 KiB

View File

@ -0,0 +1,12 @@
# Blender MTL File: 'characteroxen.blend'
# Material Count: 1
newmtl Character
Ns 96.078431
Ka 0.000000 0.000000 0.000000
Kd 0.640000 0.640000 0.640000
Ks 0.000000 0.000000 0.000000
Ni 1.000000
d 1.000000
illum 1
map_Kd /home/cg72/.cache/.fr-1NpCCr/epicnodedemo_game-master/mods/game/textures/default_obsidian.png

187
mods/game/models/horns.obj Normal file
View File

@ -0,0 +1,187 @@
# Blender v2.66 (sub 1) OBJ File: 'characteroxen.blend'
# www.blender.org
mtllib horns.mtl
o Player_Cube
v 1.764651 10.230301 -2.104668
v 1.767932 10.582121 -1.139558
v 1.858858 11.191244 -2.455288
v 1.862140 11.543064 -1.490178
v 1.876035 11.525629 -2.030556
v 1.815577 11.120611 -1.155704
v 1.750755 10.247734 -1.564289
v 1.811213 10.652750 -2.439142
v 1.813395 10.886681 -1.797423
v 2.768497 10.029202 -1.729846
v 2.692274 10.386005 -0.769583
v 2.891119 10.988369 -2.076512
v 2.814896 11.345173 -1.116249
v 2.873230 11.324955 -1.653553
v 2.741015 10.924437 -0.784552
v 2.710163 10.049417 -1.192543
v 2.842378 10.449942 -2.061544
v 5.153539 10.365211 -2.258484
v 4.018229 10.024544 -1.689352
v 3.968684 10.366405 -0.835896
v 3.987385 10.878138 -2.033058
v 3.937839 11.219999 -1.179601
v 3.957525 11.189842 -1.663013
v 3.945091 10.849581 -0.866999
v 3.998544 10.054701 -1.205940
v 4.010978 10.394962 -2.001955
v 5.420657 10.582563 -1.737275
v 5.009965 10.948978 -2.428342
v 5.277081 11.166330 -1.907133
v 5.119844 11.153929 -2.195750
v 5.392920 10.910292 -1.736248
v 5.310776 10.377613 -1.969867
v 5.037700 10.621250 -2.429368
v 6.016704 11.311415 -3.950320
v 5.850567 10.847176 -3.222586
v 6.114312 10.978712 -3.065877
v 5.727164 11.153379 -3.271905
v 5.990908 11.284912 -3.115195
v 5.838684 11.269644 -3.201684
v 6.096106 11.153505 -3.064692
v 6.002790 10.862448 -3.136099
v 5.745370 10.978588 -3.273089
v -1.794954 10.917217 -1.752750
v -1.792444 10.683289 -2.394467
v -1.732334 10.278278 -1.519587
v -1.797464 11.151148 -1.111031
v -1.857574 11.556154 -1.985912
v -1.843930 11.573593 -1.445528
v -1.840155 11.221775 -2.410636
v -1.749753 10.612661 -1.094864
v -1.745978 10.260843 -2.059972
v -2.749969 10.059607 -1.685613
v -2.674238 10.416420 -0.725315
v -2.872562 11.018759 -2.032336
v -2.796832 11.375572 -1.072038
v -2.854915 11.355347 -1.609368
v -2.723046 10.954845 -0.740307
v -2.691885 10.079832 -1.148283
v -2.823755 10.480337 -2.017345
v -5.134814 10.395290 -2.215350
v -3.999719 10.054779 -1.645695
v -3.950614 10.396645 -0.792217
v -3.968833 10.908377 -1.989387
v -3.919728 11.250242 -1.135907
v -3.939187 11.220087 -1.619328
v -3.927073 10.879824 -0.823308
v -3.980261 10.084936 -1.162274
v -3.992374 10.425200 -1.958295
v -5.402200 10.612606 -1.694265
v -4.991240 10.979078 -2.385142
v -5.258627 11.196390 -1.864057
v -5.101255 11.184011 -2.152601
v -5.374510 10.940336 -1.693225
v -5.292185 10.407669 -1.926806
v -5.018930 10.651344 -2.386181
v -5.997328 11.341375 -3.907584
v -5.831462 10.877161 -3.179774
v -6.095298 11.008657 -3.023187
v -5.708079 11.183378 -3.229036
v -5.971913 11.314877 -3.072448
v -5.819648 11.299627 -3.158866
v -6.077117 11.183456 -3.021993
v -5.983728 10.892408 -3.093356
v -5.726261 11.008583 -3.230228
vt 0.250036 0.500000
vt 0.500001 0.500000
vt 0.500001 0.000071
vt 0.250036 0.000071
vt 0.250036 0.999929
vt 0.500000 0.999929
vt 0.000071 0.999929
vt 0.000071 0.500000
vt 0.000071 0.000071
usemtl Character
s off
f 9/1 8/2 1/3 7/4
f 5/5 3/6 8/2 9/1
f 4/7 5/5 9/1 6/8
f 6/8 9/1 7/4 2/9
f 15/8 11/9 20/9 24/8
f 13/7 15/8 24/8 22/7
f 16/4 10/3 19/3 25/4
f 11/9 16/4 25/4 20/9
f 6/8 2/9 11/9 15/8
f 3/6 5/5 14/5 12/6
f 1/3 8/2 17/2 10/3
f 5/5 4/7 13/7 14/5
f 8/2 3/6 12/6 17/2
f 2/9 7/4 16/4 11/9
f 7/4 1/3 10/3 16/4
f 4/7 6/8 15/8 13/7
f 22/7 24/8 31/8 29/7
f 25/4 19/3 18/3 32/4
f 20/9 25/4 32/4 27/9
f 26/2 21/6 28/6 33/2
f 12/6 14/5 23/5 21/6
f 10/3 17/2 26/2 19/3
f 14/5 13/7 22/7 23/5
f 17/2 12/6 21/6 26/2
f 33/2 28/6 37/6 42/2
f 30/5 29/7 38/7 39/5
f 18/3 33/2 42/2 35/3
f 28/6 30/5 39/5 37/6
f 24/8 20/9 27/9 31/8
f 21/6 23/5 30/5 28/6
f 19/3 26/2 33/2 18/3
f 23/5 22/7 29/7 30/5
f 44/2 59/2 54/6 49/6
f 47/5 56/5 55/7 48/7
f 51/3 52/3 59/2 44/2
f 49/6 54/6 56/5 47/5
f 27/9 32/4 41/4 36/9
f 32/4 18/3 35/3 41/4
f 29/7 31/8 40/8 38/7
f 31/8 27/9 36/9 40/8
f 46/8 57/8 53/9 50/9
f 53/9 62/9 67/4 58/4
f 58/4 67/4 61/3 52/3
f 55/7 64/7 66/8 57/8
f 57/8 66/8 62/9 53/9
f 46/8 50/9 45/4 43/1
f 48/7 46/8 43/1 47/5
f 47/5 43/1 44/2 49/6
f 43/1 45/4 51/3 44/2
f 35/3 42/2 34/3
f 37/6 39/5 34/6
f 40/8 36/9 34/8
f 38/7 40/8 34/7
f 39/5 38/7 34/5
f 42/2 37/6 34/2
f 36/9 41/4 34/9
f 41/4 35/3 34/4
f 50/9 53/9 58/4 45/4
f 45/4 58/4 52/3 51/3
f 48/7 55/7 57/8 46/8
f 64/7 71/7 73/8 66/8
f 67/4 74/4 60/3 61/3
f 62/9 69/9 74/4 67/4
f 68/2 75/2 70/6 63/6
f 54/6 63/6 65/5 56/5
f 52/3 61/3 68/2 59/2
f 56/5 65/5 64/7 55/7
f 59/2 68/2 63/6 54/6
f 75/2 84/2 79/6 70/6
f 72/5 81/5 80/7 71/7
f 60/3 77/3 84/2 75/2
f 70/6 79/6 81/5 72/5
f 66/8 73/8 69/9 62/9
f 63/6 70/6 72/5 65/5
f 61/3 60/3 75/2 68/2
f 65/5 72/5 71/7 64/7
f 69/9 78/9 83/4 74/4
f 74/4 83/4 77/3 60/3
f 71/7 80/7 82/8 73/8
f 73/8 82/8 78/9 69/9
f 77/3 76/3 84/2
f 79/6 76/6 81/5
f 82/8 76/8 78/9
f 80/7 76/7 82/8
f 81/5 76/5 80/7
f 84/2 76/2 79/6
f 78/9 76/9 83/4
f 83/4 76/4 77/3

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 716 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 698 B

View File

@ -6,6 +6,27 @@
--------------------------------------------------------------------------------------------
--------------------------------------------------------------------------------------------
function game.effects(pos, texture, spread, amount)
if not pos.x or not pos.y or not pos.z or not texture then return end
amount = amount or 50
spread = spread or 0.5
minetest.add_particlespawner({
amount = amount,
time = 1,
minpos = {x = pos.x+spread, y = pos.y+spread, z = pos.z+spread},
maxpos = {x = pos.x-spread, y = pos.y-spread, z = pos.z-spread},
minvel = {x = 0, y = 1, z = 0},
maxvel = {x = 0, y = 1, z = 0},
minacc = {x = 0, y = 0, z = 0},
maxacc = {x = 0, y = 0, z = 0},
minexptime = 1.5,
maxexptime = 1.5,
minsize = 5,
maxsize = 5,
texture = texture,
})
end
function game.number_to_texturestring(num,color)
if not color then
color = "#ffffff:255"

View File

@ -30,4 +30,5 @@ dofile(game.runtimepath.."/mobs.lua")
dofile(game.runtimepath.."/fishing.lua")
dofile(game.runtimepath.."/fire.lua")
dofile(game.runtimepath.."/stairs.lua")
dofile(game.runtimepath.."/cmds.lua")
dofile(game.runtimepath.."/cmds.lua")
dofile(game.runtimepath.."/raid.lua")

View File

@ -128,7 +128,12 @@ set_animation = function(self, type)
x = self.animation.run_start,
y = self.animation.run_end},
self.animation.speed_run, 0)
self.animation.current = "run"
else
self.object:set_animation({
x = self.animation.walk_start,
y = self.animation.walk_end},
self.animation.speed_normal, 0)
self.animation.current = "run"
end
@ -665,7 +670,7 @@ function day_docile(self)
end
-- register mob function
function mobs:register_mob(name, def)
function mobs.register_mob(name, def)
minetest.register_entity(":"..name, {
@ -673,7 +678,10 @@ minetest.register_entity(":"..name, {
name = name,
aname = def.aname or name,
lvl = def.lvl or 1,
boss = def.boss or false,
particles = def.particles or nil,
type = def.type,
exp = def.exp or 0,
attack_type = def.attack_type,
fly = def.fly,
fly_in = def.fly_in or "air",
@ -731,6 +739,7 @@ minetest.register_entity(":"..name, {
env_damage_timer = 0, -- only used when state = "attack"
tamed = false,
pause_timer = 0,
particle_timer = 0,
horny = false,
hornytimer = 0,
child = false,
@ -747,6 +756,14 @@ minetest.register_entity(":"..name, {
local pos = self.object:getpos()
local yaw = self.object:getyaw() or 0
self.particle_timer = self.particle_timer + dtime
if self.particle_timer > 1 then
if self.particles ~= nil then
local p_pos = {x=pos.x, y=pos.y+self.particles.y_adj,z=pos.z}
game.effects(p_pos, self.particles.texture, 1.5, 50)
end
self.particle_timer = 0
end
self.nametag = "[lvl"..self.lvl.."] "..self.aname.."\n("..self.object:get_hp().." / "..self.hp_max..")"
self.nametag_color = "#ffffff"
@ -754,6 +771,7 @@ minetest.register_entity(":"..name, {
-- when lifetimer expires remove mob (except npc and tamed)
if self.type ~= "npc"
and not self.boss
and not self.tamed
and self.state ~= "attack" then
@ -1427,7 +1445,7 @@ minetest.register_entity(":"..name, {
pos.y = pos.y - 1
mobs:explosion(pos, 2, 0, 1, self.sounds.explode)
mobs.explosion(pos, 2, 0, 1, self.sounds.explode)
self.object:remove()
@ -1458,6 +1476,7 @@ minetest.register_entity(":"..name, {
y = 1 * self.walk_velocity,
z = v.z
})
set_animation(self, "walk")
elseif me_y > p_y then
@ -1466,6 +1485,7 @@ minetest.register_entity(":"..name, {
y = -1 * self.walk_velocity,
z = v.z
})
set_animation(self, "walk")
end
else
if me_y < p_y then
@ -1475,6 +1495,7 @@ minetest.register_entity(":"..name, {
y = 0.01,
z = v.z
})
set_animation(self, "walk")
elseif me_y > p_y then
@ -1483,6 +1504,7 @@ minetest.register_entity(":"..name, {
y = -0.01,
z = v.z
})
set_animation(self, "walk")
end
end
@ -1649,7 +1671,7 @@ minetest.register_entity(":"..name, {
return
end
--local ent = minetest.add_entity(self.object:getpos(), "mobs:bar") --new bar for hp and shit
--local ent = minetest.add_entity(self.object:getpos(), "mobs.bar") --new bar for hp and shit
--server_tools.set_pvp(plname, "disabled")
--if ent ~= nil then
--ent:set_attach(self.object, "", {x = 0, y = 9, z = 0}, {x = 0, y = 0, z = 0})
@ -1903,13 +1925,13 @@ minetest.register_entity(":"..name, {
end,
})
end -- END mobs:register_mob function
end -- END mobs.register_mob function
-- global functions
mobs.spawning_mobs = {}
function mobs:spawn_specific(name, nodes, neighbors, min_light, max_light,
function mobs.spawn_specific(name, nodes, neighbors, min_light, max_light,
interval, chance, active_object_count, min_height, max_height)
mobs.spawning_mobs[name] = true
@ -1988,9 +2010,9 @@ function mobs:spawn_specific(name, nodes, neighbors, min_light, max_light,
end
-- compatibility with older mob registration
function mobs:register_spawn(name, nodes, max_light, min_light, chance, active_object_count, max_height)
function mobs.register_spawn(name, nodes, max_light, min_light, chance, active_object_count, max_height)
mobs:spawn_specific(name, nodes, {"air"}, min_light, max_light, 30,
mobs.spawn_specific(name, nodes, {"air"}, min_light, max_light, 30,
chance, active_object_count, -31000, max_height)
end
@ -2002,7 +2024,7 @@ local c_brick = minetest.get_content_id("game:obsidianbrick")
local c_chest = minetest.get_content_id("game:chest_locked")
-- explosion (cannot break protected or unbreakable nodes)
function mobs:explosion(pos, radius, fire, smoke, sound)
function mobs.explosion(pos, radius, fire, smoke, sound)
radius = radius or 0
fire = fire or 0
@ -2100,7 +2122,7 @@ function mobs:explosion(pos, radius, fire, smoke, sound)
end
-- register arrow for shoot attack
function mobs:register_arrow(name, def)
function mobs.register_arrow(name, def)
if not name or not def then return end -- errorcheck
@ -2193,7 +2215,7 @@ function mobs:register_arrow(name, def)
end
-- Spawn Egg
function mobs:register_egg(mob, desc, background, addegg)
function mobs.register_egg(mob, desc, background, addegg)
local invimg = background
@ -2224,24 +2246,25 @@ function mobs:register_egg(mob, desc, background, addegg)
ent.owner = placer:get_player_name()
ent.tamed = true
end
if not ent.boss then
ent.lvl = math.random(1,60)
if minetest.is_singleplayer() then
ent.lvl = math.random(game.stats.lvl["singleplayer"], game.stats.lvl["singleplayer"]+4)
if ent.lvl < 1 then
ent.lvl = 1
elseif ent.lvl > 60 then
ent.lvl = 60
if minetest.is_singleplayer() then
ent.lvl = math.random(game.stats.lvl["singleplayer"], game.stats.lvl["singleplayer"]+4)
if ent.lvl < 1 then
ent.lvl = 1
elseif ent.lvl > 60 then
ent.lvl = 60
end
end
ent.hp_min = game.adjust_to_lvl(ent.hp_min, ent.lvl, ent.hp_max)
ent.hp_max = game.adjust_to_lvl(ent.hp_max, ent.lvl, ent.hp_max)
ent.damage = game.adjust_to_lvl(ent.damage, ent.lvl, ent.damage*4)
ent.exp = game.adjust_to_lvl(10, ent.lvl, (10+(ent.lvl/10)))
ent.visual_size = {x = 1+(ent.lvl/50), y = 1+(ent.lvl/50)}
ent.run_velocity = ent.run_velocity+(ent.lvl/75)-0.2
ent.collisionbox = {-0.3*((ent.lvl/25)+1), -0.01, -0.3*((ent.lvl/25)+1), 0.3*((ent.lvl/25)+1), 0.8*((ent.lvl/25)+1), 0.3*((ent.lvl/25)+1)}
end
ent.hp_min = game.adjust_to_lvl(ent.hp_min, ent.lvl, ent.hp_max)
ent.hp_max = game.adjust_to_lvl(ent.hp_max, ent.lvl, ent.hp_max)
ent.damage = game.adjust_to_lvl(ent.damage, ent.lvl, ent.damage*4)
ent.exp = game.adjust_to_lvl(10, ent.lvl, (10+(ent.lvl/10)))
ent.visual_size = {x = 1+(ent.lvl/50), y = 1+(ent.lvl/50)}
ent.object:set_hp(math.random(ent.hp_min, ent.hp_max))
ent.run_velocity = ent.run_velocity+(ent.lvl/75)-0.2
ent.collisionbox = {-0.3*((ent.lvl/25)+1), -0.01, -0.3*((ent.lvl/25)+1), 0.3*((ent.lvl/25)+1), 0.8*((ent.lvl/25)+1), 0.3*((ent.lvl/25)+1)}
-- if not in creative then take item
if not minetest.setting_getbool("creative_mode") then
itemstack:take_item()
@ -2254,7 +2277,7 @@ function mobs:register_egg(mob, desc, background, addegg)
end
-- capture critter (thanks to blert2112 for idea)
function mobs:capture_mob(self, clicker, chance_hand, chance_net, chance_lasso, force_take, replacewith)
function mobs.capture_mob(self, clicker, chance_hand, chance_net, chance_lasso, force_take, replacewith)
if not self.child
and clicker:is_player()
@ -2297,7 +2320,7 @@ function mobs:capture_mob(self, clicker, chance_hand, chance_net, chance_lasso,
if tool:is_empty() then
chance = chance_hand
elseif tool:get_name() == "mobs:net" then
elseif tool:get_name() == "mobs.net" then
chance = chance_net
@ -2305,7 +2328,7 @@ function mobs:capture_mob(self, clicker, chance_hand, chance_net, chance_lasso,
clicker:set_wielded_item(tool)
elseif tool:get_name() == "mobs:magic_lasso" then
elseif tool:get_name() == "mobs.magic_lasso" then
chance = chance_lasso
@ -2334,7 +2357,7 @@ local mob_obj = {}
local mob_sta = {}
-- feeding, taming and breeding (thanks blert2112)
function mobs:feed_tame(self, clicker, feed_count, breed, tame)
function mobs.feed_tame(self, clicker, feed_count, breed, tame)
if not self.follow then
return false
@ -2418,7 +2441,7 @@ function mobs:feed_tame(self, clicker, feed_count, breed, tame)
local item = clicker:get_wielded_item()
-- if mob has been tamed you can name it with a nametag
if item:get_name() == "mobs:nametag"
if item:get_name() == "mobs.nametag"
and clicker:get_player_name() == self.owner then
local name = clicker:get_player_name()
@ -2483,7 +2506,7 @@ end)
-- Warthog by KrupnoPavel and Pinkysnow
mobs:register_mob("game:wartus", {
mobs.register_mob("game:wartus", {
type = "monster",
aname = "Wartus beast",
passive = false,
@ -2529,14 +2552,14 @@ mobs:register_mob("game:wartus", {
punch_end = 100,
},
on_rightclick = function(self, clicker)
mobs:feed_tame(self, clicker, 8, true, true)
mobs:capture_mob(self, clicker, 0, 5, 50, false, nil)
mobs.feed_tame(self, clicker, 8, true, true)
mobs.capture_mob(self, clicker, 0, 5, 50, false, nil)
end,
})
mobs:register_spawn("game:wartus", {"ethereal:mushroom_dirt", "default:dirt_with_dry_grass"}, 20, 10, 15000, 2, 31000)
mobs.register_spawn("game:wartus", {"ethereal:mushroom_dirt", "default:dirt_with_dry_grass"}, 20, 10, 15000, 2, 31000)
mobs:register_egg("game:wartus", "Wartus", "default_snow.png", 1)
mobs.register_egg("game:wartus", "Wartus", "default_snow.png", 1)
-- raw porkchop
minetest.register_craftitem("game:pork_raw", {

View File

@ -175,7 +175,7 @@ function game.percent(player, stat_type, value)
elseif stat_type == "exp" then
local pl_c_lvl = game.stats.lvl[name]
local pl_exp = game.stats.exp[name]*10
local next_exp = ((8*pl_c_lvl) + game.exp_diff(pl_c_lvl))*(45 + (5*pl_c_lvl))
local next_exp = math.floor((((8*pl_c_lvl) + game.exp_diff(pl_c_lvl))*(45 + (5*pl_c_lvl)))/100)*100
return ((pl_exp/next_exp)*100)
elseif stat_type == "hp" then
if game.stats.hp[name] == "dead" then
@ -310,10 +310,10 @@ function game.add_lvl(player, lvl)
name = player:get_player_name()
end
if not game.stats.lvl[name] then return false, "Error "..name.." doesnt have any lvl yet!!!" end
lvl = game.stats.lvl[name] + lvl
if lvl > 60 then lvl = 60 end
game.stats.lvl[name] = lvl
game.stats.hp[name] = (game.adjust_to_lvl(20, game.stats.lvl[name],40)*(game.percent(player, "hp")/100))
lvl = game.stats.lvl[name] + lvl
if lvl > 60 then lvl = 60 end
game.stats.lvl[name] = lvl
game.stats.hp[name] = (game.adjust_to_lvl(20, game.stats.lvl[name],40)*(game.percent(player, "hp")/100))
return true, name.." had lvl added!"
end
@ -369,9 +369,10 @@ function game.is_next_lvl(name)
local next_exp = math.floor((((8*pl_c_lvl) + game.exp_diff(pl_c_lvl))*(45 + (5*pl_c_lvl)))/100)*100
if pl_exp >= next_exp then
game.stats.total_exp[name] = game.stats.total_exp[name] + (next_exp/10)
game.stats.exp[name] = pl_exp - next_exp
game.stats.exp[name] = (pl_exp - next_exp)/10
game.add_lvl(name, 1)
game.is_next_lvl(name)
minetest.chat_send_player(name, "You have leveled up!")
return game.add_lvl(name, 1)
end
end
@ -469,8 +470,7 @@ end
minetest.register_globalstep(function(dtime)
game.timer = game.timer + dtime
game.save_timer = game.save_timer + dtime
game.save_timer = game.save_timer + dtime
if game.save_timer >= 60 then
game.save_timer = 0
minetest.log(game.save_stats())

View File

@ -0,0 +1,56 @@
--------------------------------------------------------------------------------------------
------------------------------- EpicNode Game ver: 0.1 :D ----------------------------------
--------------------------------------------------------------------------------------------
--Mod by Pinkysnowman --
--(c)2015 GNU LGPL v2.1 --
--------------------------------------------------------------------------------------------
--------------------------------------------------------------------------------------------
mobs.register_mob("game:ignitus", {
type = "monster",
boss = true,
lvl = 60,
exp = 2400,
aname = "Ignitus",
passive = false,
attack_type = "dogfight",
group_attack = false,
reach = 8,
damage = 0,
hp_min = 60,
hp_max = 60,
armor = 100,
collisionbox = {-01.0, -1, -01.0, 01.0, 3.8, 01.0}, --??????
visual_size = {x = 1, y = 1},
visual = "mesh",
mesh = "ignitus.b3d",
textures = {
{"game_fireaxe.png", "ignitus.png", "ignitus_fire.png"},
},
particles = {y_adj=2.5,texture="ignitus_fire.png",},
makes_footstep_sound = false,
sounds = {
--random = "mobs_pig",
--attack = "mobs_pig_angry",
},
walk_velocity = 1,
run_velocity = 1,
view_range = 18,
drops = {
{name = "",
chance = 1, min = 1, max = 3},
},
animation = {
speed_normal = 15,
stand_start = 0,
stand_end = 79,
walk_start = 168,
walk_end = 187,
punch_start = 189,
punch_end = 198,
},
})
mobs.register_egg("game:ignitus", "Ignitus", "ignitus_fire.png", 1)
print("Ignitus loaded")

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 716 B