]> git.lizzy.rs Git - Crafter.git/blobdiff - mods/mob/spawning.lua
Make chickens spawn
[Crafter.git] / mods / mob / spawning.lua
index d871503ccb8881df3913018b3dbc9c4498d1b408..ce289bc3307eee02d7ab5c8273a8dab6a270cc2e 100644 (file)
@@ -11,9 +11,10 @@ local find_node_height = 32
 --for debug testing to isolate mobs
 local spawn = true
 
-local spawn_table = {"pig"}
-local dark_spawn_table = {"creeper"}
-local nether_spawn_table = {"creeper"}
+local spawn_table = {"pig","chicken"}
+local snow_spawn_table = {"snowman"}
+local dark_spawn_table = {"creeper","spider","big_slime","medium_slime","small_slime"}
+local nether_spawn_table = {"nitro_creeper"}
 local aether_spawn_table = {"phyg"}
 
 local function spawn_mobs()
@@ -50,26 +51,27 @@ local function spawn_mobs()
                        --print(dump(spawner))
                        if table.getn(spawner) > 0 then
                                local mob_pos = spawner[1]
+                               mob_pos.y = mob_pos.y + 1
                                --aether spawning
                                if mob_pos.y >= 21000 then
-                                       mob_pos.y = mob_pos.y + 1
                                        local mob_spawning = aether_spawn_table[math.random(1,table.getn(aether_spawn_table))]
                                        print("Aether Spawning "..mob_spawning.." at: "..minetest.pos_to_string(mob_pos))
                                        minetest.add_entity(mob_pos,"mob:"..mob_spawning)
                                elseif mob_pos.y <= -10033 and mob_pos.y >= -20112 then
-                                       mob_pos.y = mob_pos.y + 1
                                        local mob_spawning = nether_spawn_table[math.random(1,table.getn(nether_spawn_table))]
                                        print("Nether Spawning "..mob_spawning.." at: "..minetest.pos_to_string(mob_pos))
                                        minetest.add_entity(mob_pos,"mob:"..mob_spawning)
                                else
                                        local light_level = minetest.get_node_light(spawner[1])
-                                       if light_level < 10 then
-                                               mob_pos.y = mob_pos.y + 1
+                                       if weather_type == 1 then
+                                               local mob_spawning = snow_spawn_table[math.random(1,table.getn(snow_spawn_table))]
+                                               print("Snow Spawning "..mob_spawning.." at: "..minetest.pos_to_string(mob_pos))
+                                               minetest.add_entity(mob_pos,"mob:"..mob_spawning)
+                                       elseif light_level < 10 then
                                                local mob_spawning = dark_spawn_table[math.random(1,table.getn(dark_spawn_table))]
                                                print("Dark Spawning "..mob_spawning.." at: "..minetest.pos_to_string(mob_pos))
                                                minetest.add_entity(mob_pos,"mob:"..mob_spawning)
                                        else
-                                               mob_pos.y = mob_pos.y + 1
                                                local mob_spawning = spawn_table[math.random(1,table.getn(spawn_table))]
                                                print("Light Spawning "..mob_spawning.." at: "..minetest.pos_to_string(mob_pos))
                                                minetest.add_entity(mob_pos,"mob:"..mob_spawning)