Change Update Topic, More Changes
12
CHANGELOG.md
@ -1,17 +1,14 @@
|
||||
# Changelog
|
||||
|
||||
## [Jul 18th - **STILL UNDERDEVELOPMENT** 2024] Update: Aquatic Caves
|
||||
## [Jul 18th - **STILL UNDERDEVELOPMENT** 2024] Major Update: The Unnamed Update
|
||||
|
||||
This update contains breaking changes!
|
||||
The main theme of this update was to revamp oceans and caves, but this update adds a bit of everything!
|
||||
|
||||
- Revamped caves *again*
|
||||
- Revamped oceans
|
||||
- Revamped wood
|
||||
- Removed huts
|
||||
- Added crystal lanterns
|
||||
- New monster and player/human textures
|
||||
- Added a lot of biomes inspired by the Minecraft mod [Biomes O' Plenty](https://www.curseforge.com/minecraft/mc-mods/biomes-o-plenty)
|
||||
- Added some biomes inspired by the Minecraft mod [Biomes O' Plenty](https://www.curseforge.com/minecraft/mc-mods/biomes-o-plenty)
|
||||
- Added Aspen Forest
|
||||
- Added Redwood Forests
|
||||
- Added stone and wooden swords
|
||||
@ -20,6 +17,11 @@ The main theme of this update was to revamp oceans and caves, but this update ad
|
||||
- New snow texture
|
||||
- Add snowman boss battle :0
|
||||
- Make magic shards more common
|
||||
- Change humidity and heat of each biome
|
||||
- Removed wastelands
|
||||
- Added wind warrior boss battle
|
||||
- Added windballs
|
||||
- Added ocean ruins
|
||||
|
||||
## [Jul 17th 2024] Unnamed Minor Update
|
||||
|
||||
|
@ -209,6 +209,12 @@ PyuTestCore.make_building_blocks("pyutest_core:aspen_grass", "Aspen Grass", {"as
|
||||
grass = 1
|
||||
})
|
||||
|
||||
PyuTestCore.make_building_blocks("pyutest_core:jungle_grass", "Jungle Grass", {"jungle-grass.png"}, nil, {
|
||||
ground = 1,
|
||||
acid_vulnerable = 1,
|
||||
grass = 1
|
||||
})
|
||||
|
||||
PyuTestCore.make_building_blocks("pyutest_core:dirt", "Dirt", {"dirt.png"}, nil, {
|
||||
ground = 1,
|
||||
acid_vulnerable = 1
|
||||
|
@ -78,3 +78,20 @@ PyuTestCore.make_node("pyutest_core:vines", "Vines", {
|
||||
},
|
||||
inventory_image = "vines.png"
|
||||
})
|
||||
|
||||
PyuTestCore.make_flower("pyutest_core:kelp", "Kelp", "kelp.png", "pyutest_core:green_dye", true, "plantlike_rooted", {
|
||||
paramtype2 = "leveled",
|
||||
place_param2 = 128,
|
||||
wield_image = "kelp.png",
|
||||
special_tiles = {
|
||||
{
|
||||
image = "kelp.png",
|
||||
tileable_vertical = true
|
||||
},
|
||||
},
|
||||
tiles = {
|
||||
"gravel.png"
|
||||
},
|
||||
|
||||
walkable = true
|
||||
})
|
||||
|
@ -39,7 +39,6 @@ dofile(PyuTestCore_Path.."/player.lua")
|
||||
dofile(PyuTestCore_Path.."/lootboxes.lua")
|
||||
dofile(PyuTestCore_Path.."/ores.lua")
|
||||
dofile(PyuTestCore_Path.."/abms.lua")
|
||||
dofile(PyuTestCore_Path.."/mobs.lua")
|
||||
dofile(PyuTestCore_Path.."/combat.lua")
|
||||
dofile(PyuTestCore_Path.."/magic.lua")
|
||||
dofile(PyuTestCore_Path.."/crafts.lua")
|
||||
|
@ -20,7 +20,7 @@ PyuTestCore.make_leaves = function (id, desc, tiles)
|
||||
},
|
||||
|
||||
{
|
||||
items = {"pyutest_core:leaves_block"}
|
||||
items = {leaves_id}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -1,245 +0,0 @@
|
||||
PyuTestCore.ENTITY_BLOOD_AMOUNT = 6
|
||||
PyuTestCore.HUMAN_LIKE_CBOX = {-0.25, -1, -0.25, 0.25, 1, 0.25}
|
||||
|
||||
mobs.fallback_node = "pyutest_core:dirt_block"
|
||||
|
||||
local snowball_hit_player = function (self, player)
|
||||
player:punch(self.object, nil, {
|
||||
damage_groups = {fleshy = 9}
|
||||
}, nil)
|
||||
end
|
||||
|
||||
mobs:register_arrow("pyutest_core:arrow_snowball", {
|
||||
visual = "sprite",
|
||||
visual_size = {x = 1, y = 1},
|
||||
textures = {"snowball.png"},
|
||||
hit_node = function (self, pos)
|
||||
PyuTestCore.create_explosion(pos, 1, false, 9, self.object, false)
|
||||
end,
|
||||
hit_player = snowball_hit_player,
|
||||
hit_mob = snowball_hit_player,
|
||||
velocity = 9,
|
||||
collisionbox = {
|
||||
-1.5, -1.5, -1.5, 1.5, 1.5, 1.5
|
||||
}
|
||||
})
|
||||
|
||||
mobs:register_mob("pyutest_core:monster", {
|
||||
type = "monster",
|
||||
hp_max = 20,
|
||||
hp_min = 20,
|
||||
walk_velocity = 1,
|
||||
run_velocity = 3,
|
||||
armor = 100,
|
||||
passive = false,
|
||||
walk_chance = 0,
|
||||
stand_chance = 25,
|
||||
damage = 2.7,
|
||||
attack_chance = 1,
|
||||
attack_type = "dogfight",
|
||||
pathfinding = 1,
|
||||
visual = "upright_sprite",
|
||||
visual_size = {x = 1, y = 2},
|
||||
collisionbox = PyuTestCore.HUMAN_LIKE_CBOX,
|
||||
physical = true,
|
||||
blood_amount = PyuTestCore.ENTITY_BLOOD_AMOUNT,
|
||||
view_range = 30,
|
||||
reach = 2,
|
||||
jump = 1,
|
||||
group_attack = true,
|
||||
makes_footstep_sound = true,
|
||||
|
||||
textures = {
|
||||
"monster.png", "monster_back.png"
|
||||
}
|
||||
})
|
||||
mobs:register_egg("pyutest_core:monster", "Monster Spawn Egg", "egg.png^[multiply:darkgreen", 0)
|
||||
|
||||
mobs:register_mob("pyutest_core:human", {
|
||||
type = "npc",
|
||||
hp_max = 20,
|
||||
hp_min = 20,
|
||||
walk_velocity = 1,
|
||||
run_velocity = 6,
|
||||
armor = 100,
|
||||
passive = true,
|
||||
walk_chance = 50,
|
||||
stand_chance = 50,
|
||||
damage = 3,
|
||||
attack_type = "dogfight",
|
||||
pathfinding = 1,
|
||||
visual = "upright_sprite",
|
||||
visual_size = {x = 1, y = 2},
|
||||
collisionbox = PyuTestCore.HUMAN_LIKE_CBOX,
|
||||
textures = {"player.png", "player_back.png"},
|
||||
follow = {"pyutest_core:coin"},
|
||||
runaway = true,
|
||||
view_range = 15,
|
||||
reach = 2,
|
||||
fear_height = 7,
|
||||
blood_amount = PyuTestCore.ENTITY_BLOOD_AMOUNT,
|
||||
makes_footstep_sound = true,
|
||||
})
|
||||
mobs:register_egg("pyutest_core:human", "Human Spawn Egg", "egg.png^[multiply:peachpuff", 0)
|
||||
|
||||
mobs:register_mob("pyutest_core:mimic", {
|
||||
type = "monster",
|
||||
hp_max = 15,
|
||||
hp_min = 15,
|
||||
walk_velocity = 1,
|
||||
run_velocity = 3,
|
||||
armor = 100,
|
||||
passive = false,
|
||||
stand_chance = 1,
|
||||
walk_chance = 0,
|
||||
damage = 4,
|
||||
attack_type = "dogfight",
|
||||
pathfinding = 1,
|
||||
visual = "cube",
|
||||
visual_size = {x = 1, y = 1, z = 1},
|
||||
collisionbox = {
|
||||
-0.25, -0.5, -0.25, 0.25, 0.5, 0.25
|
||||
},
|
||||
textures = {"crate.png", "crate.png", "crate.png", "crate.png", "crate.png", "crate.png"},
|
||||
view_range = 12,
|
||||
blood_amount = PyuTestCore.ENTITY_BLOOD_AMOUNT,
|
||||
reach = 2
|
||||
})
|
||||
mobs:register_egg("pyutest_core:mimic", "Mimic Spawn Egg", "egg.png^[multiply:brown", 0)
|
||||
|
||||
mobs:register_mob("pyutest_core:firefly", {
|
||||
type = "animal",
|
||||
hp_max = 3,
|
||||
hp_min = 3,
|
||||
walk_velocity = 1,
|
||||
run_velocity = 3,
|
||||
armor = 100,
|
||||
passive = true,
|
||||
stand_chance = 0,
|
||||
walk_chance = 100,
|
||||
fly = true,
|
||||
keep_flying = true,
|
||||
visual = "sprite",
|
||||
visual_size = {x = 0.05, y = 0.05},
|
||||
collisionbox = {
|
||||
-0.0, -0.0, -0.0, 0.0, 0.0, 0.0
|
||||
},
|
||||
textures = {"firefly.png"},
|
||||
blood_amount = PyuTestCore.ENTITY_BLOOD_AMOUNT,
|
||||
glow = 7,
|
||||
})
|
||||
mobs:register_egg("pyutest_core:firefly", "Firefly Spawn Egg", "egg.png^[multiply:yellow", 0)
|
||||
|
||||
mobs:register_mob("pyutest_core:snowman", {
|
||||
type = "monster",
|
||||
hp_max = 450,
|
||||
hp_min = 450,
|
||||
walk_velocity = 1,
|
||||
run_velocity = 4,
|
||||
armor = 100,
|
||||
passive = false,
|
||||
walk_chance = 1,
|
||||
stand_chance = 2,
|
||||
damage = 9,
|
||||
attack_chance = 1,
|
||||
attack_type = "dogshoot",
|
||||
arrow = "pyutest_core:arrow_snowball",
|
||||
shoot_interval = 1.2,
|
||||
shoot_offset = 2,
|
||||
pathfinding = 1,
|
||||
visual = "upright_sprite",
|
||||
visual_size = {x = 1, y = 2},
|
||||
collisionbox = PyuTestCore.HUMAN_LIKE_CBOX,
|
||||
physical = true,
|
||||
blood_amount = PyuTestCore.ENTITY_BLOOD_AMOUNT,
|
||||
view_range = 35,
|
||||
reach = 2,
|
||||
jump = 1,
|
||||
group_attack = false,
|
||||
makes_footstep_sound = true,
|
||||
dogshoot_switch = 2,
|
||||
dogshoot_count_max = 3,
|
||||
dogshoot_count2_max = 6,
|
||||
|
||||
textures = {
|
||||
"snowman.png", "snowman_back.png"
|
||||
},
|
||||
|
||||
drops = {
|
||||
{
|
||||
name = "pyutest_core:magic_shards",
|
||||
min = 2,
|
||||
max = 5,
|
||||
chance = 1
|
||||
},
|
||||
|
||||
{
|
||||
name = "pyutest_core:snowball",
|
||||
min = 4,
|
||||
max = 9,
|
||||
chance = 1
|
||||
}
|
||||
}
|
||||
})
|
||||
mobs:register_egg("pyutest_core:snowman", "Snowman Spawn Egg", "egg.png^[multiply:skyblue", 0)
|
||||
|
||||
local mapgen = minetest.get_mapgen_params().mgname or "???"
|
||||
if mapgen ~= "flat" and mapgen ~= "singlenode" then
|
||||
mobs:spawn({
|
||||
name = "pyutest_core:monster",
|
||||
nodes = {"group:ground"},
|
||||
interval = 6,
|
||||
chance = 4,
|
||||
active_object_count = 3,
|
||||
min_light = 0,
|
||||
max_light = 8,
|
||||
y_max = PyuTestCore_WorldTop,
|
||||
y_min = PyuTestCore_SurfaceBottom
|
||||
})
|
||||
|
||||
mobs:spawn({
|
||||
name = "pyutest_core:monster",
|
||||
nodes = {"group:ground"},
|
||||
interval = 2,
|
||||
chance = 2,
|
||||
active_object_count = 6,
|
||||
min_light = 0,
|
||||
max_light = 8,
|
||||
y_max = PyuTestCore_DeepOceanMin - 1,
|
||||
y_min = PyuTestCore_WorldBottom
|
||||
})
|
||||
|
||||
mobs:spawn({
|
||||
name = "pyutest_core:human",
|
||||
nodes = {"group:ground"},
|
||||
interval = 3,
|
||||
chance = 4,
|
||||
active_object_count = 3,
|
||||
min_light = 9,
|
||||
max_light = 15,
|
||||
min_height = PyuTestCore_SurfaceBottom,
|
||||
day_toggle = true,
|
||||
})
|
||||
|
||||
mobs:spawn({
|
||||
name = "pyutest_core:mimic",
|
||||
nodes = {"group:ground"},
|
||||
interval = 3,
|
||||
chance = 18,
|
||||
active_object_count = 2,
|
||||
min_light = 0,
|
||||
max_light = 15,
|
||||
day_toggle = true,
|
||||
})
|
||||
|
||||
mobs:spawn({
|
||||
name = "pyutest_core:firefly",
|
||||
nodes = {"group:ground"},
|
||||
interval = 3,
|
||||
chance = 3,
|
||||
active_object_count = 4,
|
||||
min_light = 0,
|
||||
max_light = 9,
|
||||
day_toggle = false,
|
||||
})
|
||||
end
|
@ -1,2 +1 @@
|
||||
name = pyutest_core
|
||||
depends = mobs
|
||||
|
@ -37,7 +37,7 @@ minetest.register_globalstep(function(dtime)
|
||||
for p=1, #players do
|
||||
local ctrl = players[p]:get_player_control()
|
||||
if ctrl.aux1 then
|
||||
set_player_speed(players[p], 1.70)
|
||||
set_player_speed(players[p], 1.55)
|
||||
else
|
||||
set_player_speed(players[p], 1)
|
||||
end
|
||||
|
Before Width: | Height: | Size: 179 B |
Before Width: | Height: | Size: 254 B |
@ -63,8 +63,6 @@ PyuTestCore.make_wood("pyutest_core:birch", "Birch", {
|
||||
"birch-wood.png"
|
||||
})
|
||||
|
||||
|
||||
|
||||
PyuTestCore.make_wood("pyutest_core:cherry", "Cherry", {
|
||||
"cherry-log-top-bottom.png",
|
||||
"cherry-log-top-bottom.png",
|
||||
@ -80,3 +78,11 @@ PyuTestCore.make_wood("pyutest_core:redwood", "Redwood", {
|
||||
}, {
|
||||
"redwood.png"
|
||||
})
|
||||
|
||||
PyuTestCore.make_wood("pyutest_core:jungle", "Jungle", {
|
||||
"jungle-log-top-bottom.png",
|
||||
"jungle-log-top-bottom.png",
|
||||
"jungle-log.png"
|
||||
}, {
|
||||
"jungle-wood.png"
|
||||
})
|
||||
|
@ -17,21 +17,21 @@ unified_inventory.register_category("pyutest_inventory:blocks", {
|
||||
symbol = "pyutest_core:stone_block",
|
||||
label = "Blocks",
|
||||
index = 3,
|
||||
items = get_items_from_group("block")
|
||||
items = get_items_from_group("block")
|
||||
})
|
||||
|
||||
unified_inventory.register_category("pyutest_inventory:tools", {
|
||||
symbol = "pyutest_core:iron_pickaxe",
|
||||
label = "Tools",
|
||||
index = 4,
|
||||
items = get_items_from_group("tool")
|
||||
items = get_items_from_group("tool")
|
||||
})
|
||||
|
||||
unified_inventory.register_category("pyutest_inventory:furniture", {
|
||||
symbol = "pyutest_core:wooden_chair",
|
||||
symbol = "pyutest_core:wooden_wood_chair",
|
||||
label = "Furniture",
|
||||
index = 5,
|
||||
items = get_items_from_group("furniture")
|
||||
items = get_items_from_group("furniture")
|
||||
})
|
||||
|
||||
unified_inventory.register_category("pyutest_inventory:minerals", {
|
||||
|
3
mods/pyutest/pyutest_mapgen/README.md
Normal file
@ -0,0 +1,3 @@
|
||||
# pyutest_mapgen
|
||||
|
||||
Map generation
|
@ -164,7 +164,7 @@ PyuTestCore.register_biome("grassland", PyuTestCore.BIOME_TYPES.NORMAL, {
|
||||
y_min = PyuTestCore_SurfaceBottom,
|
||||
|
||||
heat_point = 53,
|
||||
humidity_point = 46,
|
||||
humidity_point = 78,
|
||||
|
||||
_pyutest_biome_flowering = true
|
||||
})
|
||||
@ -177,7 +177,7 @@ PyuTestCore.register_biome("forest", PyuTestCore.BIOME_TYPES.NORMAL, {
|
||||
y_min = PyuTestCore_SurfaceBottom,
|
||||
|
||||
heat_point = 50,
|
||||
humidity_point = 63,
|
||||
humidity_point = 86,
|
||||
_pyutest_biome_flowering = true
|
||||
})
|
||||
|
||||
@ -200,7 +200,7 @@ PyuTestCore.register_biome("desert", PyuTestCore.BIOME_TYPES.DESERT, {
|
||||
y_max = PyuTestCore_BiomeTops.desert,
|
||||
y_min = PyuTestCore_SurfaceBottom,
|
||||
|
||||
heat_point = 78,
|
||||
heat_point = 84,
|
||||
humidity_point = 4
|
||||
})
|
||||
|
||||
@ -211,8 +211,8 @@ PyuTestCore.register_biome("desert_mountains", PyuTestCore.BIOME_TYPES.DESERT, {
|
||||
y_max = PyuTestCore_BiomeTops.mountains,
|
||||
y_min = PyuTestCore_BiomeTops.desert,
|
||||
|
||||
heat_point = 65,
|
||||
humidity_point = 8
|
||||
heat_point = 83,
|
||||
humidity_point = 6
|
||||
})
|
||||
|
||||
PyuTestCore.register_biome("snowy_mountains", PyuTestCore.BIOME_TYPES.COLD, {
|
||||
@ -223,7 +223,7 @@ PyuTestCore.register_biome("snowy_mountains", PyuTestCore.BIOME_TYPES.COLD, {
|
||||
y_min = PyuTestCore_BiomeTops.frozen_plains,
|
||||
|
||||
heat_point = 6,
|
||||
humidity_point = 23
|
||||
humidity_point = 56
|
||||
})
|
||||
|
||||
PyuTestCore.register_biome("frozen_plains", PyuTestCore.BIOME_TYPES.COLD, {
|
||||
@ -239,17 +239,7 @@ PyuTestCore.register_biome("frozen_plains", PyuTestCore.BIOME_TYPES.COLD, {
|
||||
depth_water_top = 5,
|
||||
|
||||
heat_point = 9,
|
||||
humidity_point = 32
|
||||
})
|
||||
|
||||
PyuTestCore.register_biome("wasteland", PyuTestCore.BIOME_TYPES.WASTELAND, {
|
||||
node_top = "pyutest_core:dirt_block",
|
||||
node_filler = "pyutest_core:dirt_block",
|
||||
|
||||
y_max = PyuTestCore_BiomeTops.frozen_plains,
|
||||
y_min = PyuTestCore_SurfaceBottom,
|
||||
heat_point = 9,
|
||||
humidity_point = 9
|
||||
humidity_point = 53
|
||||
})
|
||||
|
||||
PyuTestCore.register_biome("mushroom_fields", PyuTestCore.BIOME_TYPES.CHILLY, {
|
||||
@ -260,7 +250,7 @@ PyuTestCore.register_biome("mushroom_fields", PyuTestCore.BIOME_TYPES.CHILLY, {
|
||||
y_min = PyuTestCore_SurfaceBottom,
|
||||
|
||||
heat_point = 34,
|
||||
humidity_point = 76
|
||||
humidity_point = 96
|
||||
})
|
||||
|
||||
PyuTestCore.register_biome("ice_spikes", PyuTestCore.BIOME_TYPES.COLD, {
|
||||
@ -274,7 +264,7 @@ PyuTestCore.register_biome("ice_spikes", PyuTestCore.BIOME_TYPES.COLD, {
|
||||
depth_water_top = 5,
|
||||
|
||||
heat_point = 9,
|
||||
humidity_point = 34
|
||||
humidity_point = 57
|
||||
})
|
||||
|
||||
PyuTestCore.register_biome("meadow", PyuTestCore.BIOME_TYPES.NORMAL, {
|
||||
@ -285,8 +275,8 @@ PyuTestCore.register_biome("meadow", PyuTestCore.BIOME_TYPES.NORMAL, {
|
||||
y_max = PyuTestCore_BiomeTops.mountains,
|
||||
y_min = PyuTestCore_SurfaceBottom,
|
||||
|
||||
heat_point = 32,
|
||||
humidity_point = 69,
|
||||
heat_point = 41,
|
||||
humidity_point = 83,
|
||||
|
||||
_pyutest_biome_flowering = true,
|
||||
_pyutest_biome_flowering_extra = true
|
||||
@ -299,8 +289,8 @@ PyuTestCore.register_biome("old_growth_forest", PyuTestCore.BIOME_TYPES.NORMAL,
|
||||
y_max = PyuTestCore_BiomeTops.forest,
|
||||
y_min = PyuTestCore_SurfaceBottom,
|
||||
|
||||
heat_point = 38,
|
||||
humidity_point = 66,
|
||||
heat_point = 45,
|
||||
humidity_point = 92,
|
||||
|
||||
_pyutest_biome_flowering = true
|
||||
})
|
||||
@ -316,7 +306,7 @@ PyuTestCore.register_biome("snowy_forest", PyuTestCore.BIOME_TYPES.COLD, {
|
||||
depth_water_top = 5,
|
||||
|
||||
heat_point = 8,
|
||||
humidity_point = 28
|
||||
humidity_point = 49
|
||||
})
|
||||
|
||||
PyuTestCore.register_biome("savanna", PyuTestCore.BIOME_TYPES.WARM, {
|
||||
@ -326,7 +316,7 @@ PyuTestCore.register_biome("savanna", PyuTestCore.BIOME_TYPES.WARM, {
|
||||
y_max = PyuTestCore_BiomeTops.grassland,
|
||||
y_min = PyuTestCore_SurfaceBottom,
|
||||
|
||||
heat_point = 58,
|
||||
heat_point = 72,
|
||||
humidity_point = 19
|
||||
})
|
||||
|
||||
@ -350,8 +340,8 @@ PyuTestCore.register_biome("birch_forest", PyuTestCore.BIOME_TYPES.NORMAL, {
|
||||
y_max = PyuTestCore_BiomeTops.forest,
|
||||
y_min = PyuTestCore_SurfaceBottom,
|
||||
|
||||
heat_point = 40,
|
||||
humidity_point = 70,
|
||||
heat_point = 48,
|
||||
humidity_point = 85,
|
||||
|
||||
_pyutest_biome_flowering = true
|
||||
})
|
||||
@ -363,8 +353,8 @@ PyuTestCore.register_biome("cherry_grove", PyuTestCore.BIOME_TYPES.NORMAL, {
|
||||
y_max = PyuTestCore_BiomeTops.forest,
|
||||
y_min = PyuTestCore_SurfaceBottom,
|
||||
|
||||
heat_point = 36,
|
||||
humidity_point = 64,
|
||||
heat_point = 46,
|
||||
humidity_point = 92,
|
||||
|
||||
_pyutest_biome_flowering = true,
|
||||
_pyutest_biome_flowering_extra = true
|
||||
@ -378,7 +368,7 @@ PyuTestCore.register_biome("swamp", PyuTestCore.BIOME_TYPES.WETLAND, {
|
||||
y_min = PyuTestCore_SurfaceBottom,
|
||||
|
||||
heat_point = 30,
|
||||
humidity_point = 81,
|
||||
humidity_point = 88,
|
||||
})
|
||||
|
||||
PyuTestCore.register_biome("old_growth_birch_forest", PyuTestCore.BIOME_TYPES.NORMAL, {
|
||||
@ -388,8 +378,8 @@ PyuTestCore.register_biome("old_growth_birch_forest", PyuTestCore.BIOME_TYPES.NO
|
||||
y_max = PyuTestCore_BiomeTops.forest,
|
||||
y_min = PyuTestCore_SurfaceBottom,
|
||||
|
||||
heat_point = 38,
|
||||
humidity_point = 74,
|
||||
heat_point = 47,
|
||||
humidity_point = 80,
|
||||
|
||||
_pyutest_biome_flowering = true,
|
||||
_pyutest_biome_flowering_extra = true
|
||||
@ -403,7 +393,7 @@ PyuTestCore.register_biome("aspen_forest", PyuTestCore.BIOME_TYPES.CHILLY, {
|
||||
y_min = PyuTestCore_SurfaceBottom,
|
||||
|
||||
heat_point = 34,
|
||||
humidity_point = 62,
|
||||
humidity_point = 52,
|
||||
|
||||
_pyutest_biome_flowering = true
|
||||
})
|
||||
@ -416,7 +406,21 @@ PyuTestCore.register_biome("redwood_forest", PyuTestCore.BIOME_TYPES.CHILLY, {
|
||||
y_min = PyuTestCore_SurfaceBottom,
|
||||
|
||||
heat_point = 28,
|
||||
humidity_point = 48,
|
||||
humidity_point = 54,
|
||||
|
||||
_pyutest_biome_flowering = true
|
||||
})
|
||||
|
||||
PyuTestCore.register_biome("jungle", PyuTestCore.BIOME_TYPES.WARM, {
|
||||
node_top = "pyutest_core:jungle_grass_block",
|
||||
node_filler = "pyutest_core:dirt_block",
|
||||
|
||||
y_max = PyuTestCore_BiomeTops.forest,
|
||||
y_min = PyuTestCore_SurfaceBottom,
|
||||
|
||||
heat_point = 48,
|
||||
humidity_point = 100,
|
||||
|
||||
_pyutest_biome_flowering = true,
|
||||
_pyutest_biome_flowering_extra = true
|
||||
})
|
||||
|
BIN
mods/pyutest/pyutest_mapgen/schematics/jbush.mts
Normal file
BIN
mods/pyutest/pyutest_mapgen/schematics/tree14.mts
Normal file
BIN
mods/pyutest/pyutest_mapgen/schematics/tree15.mts
Normal file
@ -37,17 +37,21 @@ minetest.register_decoration({
|
||||
})
|
||||
|
||||
PyuTestMapgen.register_structure("ice_spike", "icespike", {
|
||||
fill_ratio = 0.0004,
|
||||
fill_ratio = 0.0008,
|
||||
place_on = {
|
||||
"pyutest_core:ice_block",
|
||||
"pyutest_core:stone_block"
|
||||
},
|
||||
biomes = {
|
||||
"ice_spikes",
|
||||
"ice_spikes_ocean",
|
||||
"ice_spikes_cave"
|
||||
},
|
||||
y_max = PyuTestCore_BiomeTops.ice_spikes,
|
||||
y_min = PyuTestCore_WorldBottom,
|
||||
-- place_offset_y = -1,
|
||||
spawn_by = {"air"},
|
||||
num_spawn_by = 2
|
||||
})
|
||||
|
||||
PyuTestMapgen.register_structure("obsidian_mound", "obsidian-mound", {
|
||||
@ -58,7 +62,6 @@ PyuTestMapgen.register_structure("obsidian_mound", "obsidian-mound", {
|
||||
},
|
||||
y_max = PyuTestCore_BiomeTops.mushroom_fields,
|
||||
y_min = PyuTestCore_SurfaceBottom,
|
||||
place_offset_y = 1
|
||||
})
|
||||
|
||||
PyuTestMapgen.register_structure("ocean_ruins", "ocean_ruins", {
|
||||
@ -67,7 +70,6 @@ PyuTestMapgen.register_structure("ocean_ruins", "ocean_ruins", {
|
||||
biomes = PyuTestCore.get_biomes_from_type(PyuTestCore.BIOME_TYPES.OCEAN),
|
||||
y_max = PyuTestCore_DeepOceanMax + 4,
|
||||
y_min = PyuTestCore_DeepOceanMin,
|
||||
place_offset_y = 1,
|
||||
spawn_by = {"pyutest_core:water_source"},
|
||||
num_spawn_by = 2
|
||||
})
|
||||
|
@ -103,7 +103,6 @@ minetest.register_decoration({
|
||||
schematic = PyuTestCore.get_schem_path("tree"),
|
||||
rotation = "random",
|
||||
flags = "place_center_x, place_center_z",
|
||||
place_offset_y = 1
|
||||
})
|
||||
|
||||
minetest.register_decoration({
|
||||
@ -117,7 +116,6 @@ minetest.register_decoration({
|
||||
schematic = PyuTestCore.get_schem_path("tree2"),
|
||||
rotation = "random",
|
||||
flags = "place_center_x, place_center_z",
|
||||
place_offset_y = 1
|
||||
})
|
||||
|
||||
minetest.register_decoration({
|
||||
@ -184,7 +182,6 @@ minetest.register_decoration({
|
||||
schematic = PyuTestCore.get_schem_path("tree3"),
|
||||
rotation = "random",
|
||||
flags = "place_center_x, place_center_z",
|
||||
place_offset_y = 1
|
||||
})
|
||||
|
||||
minetest.register_decoration({
|
||||
@ -198,7 +195,6 @@ minetest.register_decoration({
|
||||
schematic = PyuTestCore.get_schem_path("tree5"),
|
||||
rotation = "random",
|
||||
flags = "place_center_x, place_center_z",
|
||||
place_offset_y = 1
|
||||
})
|
||||
|
||||
minetest.register_decoration({
|
||||
@ -212,7 +208,6 @@ minetest.register_decoration({
|
||||
schematic = PyuTestCore.get_schem_path("tree6"),
|
||||
rotation = "random",
|
||||
flags = "place_center_x, place_center_z",
|
||||
place_offset_y = 1
|
||||
})
|
||||
|
||||
minetest.register_decoration({
|
||||
@ -226,7 +221,6 @@ minetest.register_decoration({
|
||||
schematic = PyuTestCore.get_schem_path("tree7"),
|
||||
rotation = "random",
|
||||
flags = "place_center_x, place_center_z",
|
||||
place_offset_y = 1
|
||||
})
|
||||
|
||||
minetest.register_decoration({
|
||||
@ -240,7 +234,6 @@ minetest.register_decoration({
|
||||
schematic = PyuTestCore.get_schem_path("tree8"),
|
||||
rotation = "random",
|
||||
flags = "place_center_x, place_center_z",
|
||||
place_offset_y = 1
|
||||
})
|
||||
|
||||
minetest.register_decoration({
|
||||
@ -254,7 +247,6 @@ minetest.register_decoration({
|
||||
schematic = PyuTestCore.get_schem_path("stree"),
|
||||
rotation = "random",
|
||||
flags = "place_center_x, place_center_z",
|
||||
place_offset_y = 1
|
||||
})
|
||||
|
||||
minetest.register_decoration({
|
||||
@ -268,7 +260,6 @@ minetest.register_decoration({
|
||||
schematic = PyuTestCore.get_schem_path("stree2"),
|
||||
rotation = "random",
|
||||
flags = "place_center_x, place_center_z",
|
||||
place_offset_y = 1
|
||||
})
|
||||
|
||||
minetest.register_decoration({
|
||||
@ -282,7 +273,6 @@ minetest.register_decoration({
|
||||
schematic = PyuTestCore.get_schem_path("tree9"),
|
||||
rotation = "random",
|
||||
flags = "place_center_x, place_center_z",
|
||||
place_offset_y = 1
|
||||
})
|
||||
|
||||
minetest.register_decoration({
|
||||
@ -296,7 +286,6 @@ minetest.register_decoration({
|
||||
schematic = PyuTestCore.get_schem_path("tree10"),
|
||||
rotation = "random",
|
||||
flags = "place_center_x, place_center_z",
|
||||
place_offset_y = 1
|
||||
})
|
||||
|
||||
minetest.register_decoration({
|
||||
@ -310,7 +299,6 @@ minetest.register_decoration({
|
||||
schematic = PyuTestCore.get_schem_path("tree11"),
|
||||
rotation = "random",
|
||||
flags = "place_center_x, place_center_z",
|
||||
place_offset_y = 1
|
||||
})
|
||||
|
||||
minetest.register_decoration({
|
||||
@ -324,7 +312,6 @@ minetest.register_decoration({
|
||||
schematic = PyuTestCore.get_schem_path("tree12"),
|
||||
rotation = "random",
|
||||
flags = "place_center_x, place_center_z",
|
||||
place_offset_y = 1
|
||||
})
|
||||
|
||||
minetest.register_decoration({
|
||||
@ -338,5 +325,43 @@ minetest.register_decoration({
|
||||
schematic = PyuTestCore.get_schem_path("tree13"),
|
||||
rotation = "random",
|
||||
flags = "place_center_x, place_center_z",
|
||||
place_offset_y = 1
|
||||
})
|
||||
|
||||
minetest.register_decoration({
|
||||
deco_type = "schematic",
|
||||
place_on = {"pyutest_core:jungle_grass_block"},
|
||||
sidelen = 16,
|
||||
fill_ratio = 0.010,
|
||||
biomes = {"jungle"},
|
||||
y_max = PyuTestCore_WorldTop,
|
||||
y_min = 1,
|
||||
schematic = PyuTestCore.get_schem_path("tree14"),
|
||||
rotation = "random",
|
||||
flags = "place_center_x, place_center_z",
|
||||
})
|
||||
|
||||
minetest.register_decoration({
|
||||
deco_type = "schematic",
|
||||
place_on = {"pyutest_core:jungle_grass_block"},
|
||||
sidelen = 16,
|
||||
fill_ratio = 0.008,
|
||||
biomes = {"jungle"},
|
||||
y_max = PyuTestCore_WorldTop,
|
||||
y_min = 1,
|
||||
schematic = PyuTestCore.get_schem_path("tree15"),
|
||||
rotation = "random",
|
||||
flags = "place_center_x, place_center_z",
|
||||
})
|
||||
|
||||
minetest.register_decoration({
|
||||
deco_type = "schematic",
|
||||
place_on = {"pyutest_core:jungle_grass_block"},
|
||||
sidelen = 16,
|
||||
fill_ratio = 0.008,
|
||||
biomes = {"jungle"},
|
||||
y_max = PyuTestCore_WorldTop,
|
||||
y_min = 1,
|
||||
schematic = PyuTestCore.get_schem_path("jbush"),
|
||||
rotation = "random",
|
||||
flags = "place_center_x, place_center_z",
|
||||
})
|
||||
|
105
mods/pyutest/pyutest_mobs/basic.lua
Normal file
@ -0,0 +1,105 @@
|
||||
mobs:register_mob("pyutest_mobs:monster", {
|
||||
type = "monster",
|
||||
hp_max = 20,
|
||||
hp_min = 20,
|
||||
walk_velocity = 1,
|
||||
run_velocity = 3,
|
||||
armor = 100,
|
||||
passive = false,
|
||||
walk_chance = 0,
|
||||
stand_chance = 25,
|
||||
damage = 2.7,
|
||||
attack_chance = 1,
|
||||
attack_type = "dogfight",
|
||||
pathfinding = 1,
|
||||
visual = "upright_sprite",
|
||||
visual_size = {x = 1, y = 2},
|
||||
collisionbox = PyuTestMobs.HUMAN_LIKE_CBOX,
|
||||
physical = true,
|
||||
blood_amount = PyuTestMobs.ENTITY_BLOOD_AMOUNT,
|
||||
view_range = 30,
|
||||
reach = 2,
|
||||
jump = 1,
|
||||
group_attack = true,
|
||||
makes_footstep_sound = true,
|
||||
|
||||
textures = {
|
||||
"monster.png", "monster_back.png"
|
||||
}
|
||||
})
|
||||
mobs:register_egg("pyutest_mobs:monster", "Monster Spawn Egg", "egg.png^[multiply:darkgreen", 0)
|
||||
|
||||
mobs:register_mob("pyutest_mobs:human", {
|
||||
type = "npc",
|
||||
hp_max = 20,
|
||||
hp_min = 20,
|
||||
walk_velocity = 1,
|
||||
run_velocity = 6,
|
||||
armor = 100,
|
||||
passive = true,
|
||||
walk_chance = 50,
|
||||
stand_chance = 50,
|
||||
damage = 3,
|
||||
attack_type = "dogfight",
|
||||
pathfinding = 1,
|
||||
visual = "upright_sprite",
|
||||
visual_size = {x = 1, y = 2},
|
||||
collisionbox = PyuTestMobs.HUMAN_LIKE_CBOX,
|
||||
textures = {"player.png", "player_back.png"},
|
||||
follow = {"pyutest_mobs:coin"},
|
||||
runaway = true,
|
||||
view_range = 15,
|
||||
reach = 2,
|
||||
fear_height = 7,
|
||||
blood_amount = PyuTestMobs.ENTITY_BLOOD_AMOUNT,
|
||||
makes_footstep_sound = true,
|
||||
})
|
||||
mobs:register_egg("pyutest_mobs:human", "Human Spawn Egg", "egg.png^[multiply:peachpuff", 0)
|
||||
|
||||
mobs:register_mob("pyutest_mobs:mimic", {
|
||||
type = "monster",
|
||||
hp_max = 15,
|
||||
hp_min = 15,
|
||||
walk_velocity = 1,
|
||||
run_velocity = 3,
|
||||
armor = 100,
|
||||
passive = false,
|
||||
stand_chance = 1,
|
||||
walk_chance = 0,
|
||||
damage = 4,
|
||||
attack_type = "dogfight",
|
||||
pathfinding = 1,
|
||||
visual = "cube",
|
||||
visual_size = {x = 1, y = 1, z = 1},
|
||||
collisionbox = {
|
||||
-0.25, -0.5, -0.25, 0.25, 0.5, 0.25
|
||||
},
|
||||
textures = {"crate.png", "crate.png", "crate.png", "crate.png", "crate.png", "crate.png"},
|
||||
view_range = 12,
|
||||
blood_amount = PyuTestMobs.ENTITY_BLOOD_AMOUNT,
|
||||
reach = 2
|
||||
})
|
||||
mobs:register_egg("pyutest_mobs:mimic", "Mimic Spawn Egg", "egg.png^[multiply:brown", 0)
|
||||
|
||||
mobs:register_mob("pyutest_mobs:firefly", {
|
||||
type = "animal",
|
||||
hp_max = 3,
|
||||
hp_min = 3,
|
||||
walk_velocity = 1,
|
||||
run_velocity = 3,
|
||||
armor = 100,
|
||||
passive = true,
|
||||
stand_chance = 0,
|
||||
walk_chance = 100,
|
||||
fly = true,
|
||||
keep_flying = true,
|
||||
visual = "sprite",
|
||||
visual_size = {x = 0.05, y = 0.05},
|
||||
collisionbox = {
|
||||
-0.0, -0.0, -0.0, 0.0, 0.0, 0.0
|
||||
},
|
||||
textures = {"firefly.png"},
|
||||
blood_amount = PyuTestMobs.ENTITY_BLOOD_AMOUNT,
|
||||
glow = 7,
|
||||
})
|
||||
mobs:register_egg("pyutest_mobs:firefly", "Firefly Spawn Egg", "egg.png^[multiply:yellow", 0)
|
72
mods/pyutest/pyutest_mobs/init.lua
Normal file
@ -0,0 +1,72 @@
|
||||
PyuTestMobs_Path = minetest.get_modpath("pyutest_mobs")
|
||||
PyuTestMobs = {}
|
||||
|
||||
PyuTestMobs.ENTITY_BLOOD_AMOUNT = 6
|
||||
PyuTestMobs.HUMAN_LIKE_CBOX = {-0.25, -1, -0.25, 0.25, 1, 0.25}
|
||||
|
||||
mobs.fallback_node = "pyutest_core:dirt_block"
|
||||
|
||||
dofile(PyuTestMobs_Path.."/basic.lua") -- Humans, Monsters, Mimics, Fireflies and future basic mobs
|
||||
dofile(PyuTestMobs_Path.."/snowman.lua") -- Snowman
|
||||
dofile(PyuTestMobs_Path.."/wind_warrior.lua") -- Wind Warrior
|
||||
|
||||
local mapgen = minetest.get_mapgen_params().mgname or "???"
|
||||
if mapgen ~= "flat" and mapgen ~= "singlenode" then
|
||||
mobs:spawn({
|
||||
name = "pyutest_mobs:monster",
|
||||
nodes = {"group:ground"},
|
||||
interval = 6,
|
||||
chance = 4,
|
||||
active_object_count = 3,
|
||||
min_light = 0,
|
||||
max_light = 8,
|
||||
y_max = PyuTestCore_WorldTop,
|
||||
y_min = PyuTestCore_SurfaceBottom
|
||||
})
|
||||
|
||||
mobs:spawn({
|
||||
name = "pyutest_mobs:monster",
|
||||
nodes = {"group:ground"},
|
||||
interval = 2,
|
||||
chance = 2,
|
||||
active_object_count = 6,
|
||||
min_light = 0,
|
||||
max_light = 8,
|
||||
y_max = PyuTestCore_DeepOceanMin - 1,
|
||||
y_min = PyuTestCore_WorldBottom
|
||||
})
|
||||
|
||||
mobs:spawn({
|
||||
name = "pyutest_mobs:human",
|
||||
nodes = {"group:ground"},
|
||||
interval = 3,
|
||||
chance = 4,
|
||||
active_object_count = 3,
|
||||
min_light = 9,
|
||||
max_light = 15,
|
||||
min_height = PyuTestCore_SurfaceBottom,
|
||||
day_toggle = true,
|
||||
})
|
||||
|
||||
mobs:spawn({
|
||||
name = "pyutest_mobs:mimic",
|
||||
nodes = {"group:ground"},
|
||||
interval = 3,
|
||||
chance = 18,
|
||||
active_object_count = 2,
|
||||
min_light = 0,
|
||||
max_light = 15,
|
||||
day_toggle = true,
|
||||
})
|
||||
|
||||
mobs:spawn({
|
||||
name = "pyutest_mobs:firefly",
|
||||
nodes = {"group:ground", "air"},
|
||||
interval = 3,
|
||||
chance = 3,
|
||||
active_object_count = 4,
|
||||
min_light = 0,
|
||||
max_light = 9,
|
||||
day_toggle = false,
|
||||
})
|
||||
end
|
2
mods/pyutest/pyutest_mobs/mod.conf
Normal file
@ -0,0 +1,2 @@
|
||||
name = pyutest_mobs
|
||||
depends = pyutest_core,mobs,pyutest_mapgen
|
75
mods/pyutest/pyutest_mobs/snowman.lua
Normal file
@ -0,0 +1,75 @@
|
||||
local snowball_hit_player = function (self, player)
|
||||
player:punch(self.object, nil, {
|
||||
damage_groups = {fleshy = 9}
|
||||
}, nil)
|
||||
end
|
||||
|
||||
mobs:register_arrow("pyutest_mobs:arrow_snowball", {
|
||||
visual = "sprite",
|
||||
visual_size = {x = 1, y = 1},
|
||||
textures = {"snowball.png"},
|
||||
hit_node = function (self, pos)
|
||||
PyuTestCore.create_explosion(pos, 1, false, 9, self.object, false)
|
||||
end,
|
||||
hit_player = snowball_hit_player,
|
||||
hit_mob = snowball_hit_player,
|
||||
velocity = 9,
|
||||
collisionbox = {
|
||||
-1.5, -1.5, -1.5, 1.5, 1.5, 1.5
|
||||
}
|
||||
})
|
||||
|
||||
|
||||
mobs:register_mob("pyutest_mobs:snowman", {
|
||||
type = "monster",
|
||||
hp_max = 450,
|
||||
hp_min = 450,
|
||||
walk_velocity = 1,
|
||||
run_velocity = 4,
|
||||
armor = 100,
|
||||
passive = false,
|
||||
walk_chance = 1,
|
||||
stand_chance = 2,
|
||||
damage = 9,
|
||||
attack_chance = 1,
|
||||
attack_type = "dogshoot",
|
||||
arrow = "pyutest_mobs:arrow_snowball",
|
||||
shoot_interval = 0.75,
|
||||
shoot_offset = 2,
|
||||
homing = true,
|
||||
pathfinding = 1,
|
||||
visual = "upright_sprite",
|
||||
visual_size = {x = 1, y = 2},
|
||||
collisionbox = PyuTestMobs.HUMAN_LIKE_CBOX,
|
||||
physical = true,
|
||||
blood_amount = PyuTestMobs.ENTITY_BLOOD_AMOUNT,
|
||||
view_range = 35,
|
||||
reach = 2,
|
||||
jump = 1,
|
||||
group_attack = false,
|
||||
makes_footstep_sound = true,
|
||||
dogshoot_switch = 2,
|
||||
dogshoot_count_max = 3,
|
||||
dogshoot_count2_max = 6,
|
||||
|
||||
textures = {
|
||||
"snowman.png", "snowman_back.png"
|
||||
},
|
||||
|
||||
drops = {
|
||||
{
|
||||
name = "pyutest_core:magic_shards",
|
||||
min = 2,
|
||||
max = 5,
|
||||
chance = 1
|
||||
},
|
||||
|
||||
{
|
||||
name = "pyutest_core:snowball",
|
||||
min = 4,
|
||||
max = 9,
|
||||
chance = 1
|
||||
}
|
||||
}
|
||||
})
|
||||
mobs:register_egg("pyutest_mobs:snowman", "Snowman Spawn Egg", "egg.png^[multiply:skyblue", 0)
|
71
mods/pyutest/pyutest_mobs/wind_warrior.lua
Normal file
@ -0,0 +1,71 @@
|
||||
local windball_hit_player = function (self, player)
|
||||
player:punch(self.object, nil, {
|
||||
damage_groups = {fleshy = 3}
|
||||
}, nil)
|
||||
|
||||
math.randomseed(os.time())
|
||||
player:add_velocity({
|
||||
x = 0,
|
||||
z = 0,
|
||||
y = math.random(18, 25)
|
||||
})
|
||||
end
|
||||
|
||||
mobs:register_arrow("pyutest_mobs:arrow_windball", {
|
||||
visual = "sprite",
|
||||
visual_size = {x = 1, y = 1},
|
||||
textures = {"windball.png"},
|
||||
hit_player = windball_hit_player,
|
||||
hit_mob = windball_hit_player,
|
||||
velocity = 9,
|
||||
collisionbox = {
|
||||
-1.5, -1.5, -1.5, 1.5, 1.5, 1.5
|
||||
}
|
||||
})
|
||||
|
||||
mobs:register_mob("pyutest_mobs:wind_warrior", {
|
||||
type = "monster",
|
||||
hp_max = 350,
|
||||
hp_min = 350,
|
||||
walk_velocity = 1,
|
||||
run_velocity = 4,
|
||||
armor = 100,
|
||||
passive = false,
|
||||
walk_chance = 1,
|
||||
stand_chance = 2,
|
||||
damage = 9,
|
||||
attack_chance = 1,
|
||||
attack_type = "dogshoot",
|
||||
arrow = "pyutest_mobs:arrow_windball",
|
||||
shoot_interval = 0.75,
|
||||
shoot_offset = 2,
|
||||
homing = true,
|
||||
pathfinding = 1,
|
||||
visual = "upright_sprite",
|
||||
visual_size = {x = 1, y = 2},
|
||||
collisionbox = PyuTestMobs.HUMAN_LIKE_CBOX,
|
||||
physical = true,
|
||||
blood_amount = PyuTestMobs.ENTITY_BLOOD_AMOUNT,
|
||||
view_range = 35,
|
||||
reach = 2,
|
||||
jump = 1,
|
||||
group_attack = false,
|
||||
makes_footstep_sound = true,
|
||||
dogshoot_switch = 1,
|
||||
dogshoot_count_max = 3,
|
||||
dogshoot_count2_max = 6,
|
||||
|
||||
textures = {
|
||||
"wind-warrior.png", "wind-warrior_back.png"
|
||||
},
|
||||
|
||||
drops = {
|
||||
{
|
||||
name = "pyutest_core:magic_shards",
|
||||
min = 4,
|
||||
max = 7,
|
||||
chance = 1
|
||||
}
|
||||
}
|
||||
})
|
||||
mobs:register_egg("pyutest_mobs:wind_warrior", "Wind Warrior Spawn Egg", "egg.png^[multiply:navy", 0)
|
Before Width: | Height: | Size: 258 B After Width: | Height: | Size: 258 B |
Before Width: | Height: | Size: 280 B After Width: | Height: | Size: 280 B |
Before Width: | Height: | Size: 230 B After Width: | Height: | Size: 230 B |
Before Width: | Height: | Size: 259 B After Width: | Height: | Size: 259 B |
Before Width: | Height: | Size: 287 B After Width: | Height: | Size: 287 B |
Before Width: | Height: | Size: 187 B After Width: | Height: | Size: 187 B |
Before Width: | Height: | Size: 246 B After Width: | Height: | Size: 246 B |
Before Width: | Height: | Size: 185 B After Width: | Height: | Size: 185 B |
Before Width: | Height: | Size: 187 B After Width: | Height: | Size: 187 B |
Before Width: | Height: | Size: 146 B After Width: | Height: | Size: 146 B |
Before Width: | Height: | Size: 205 B After Width: | Height: | Size: 205 B |
Before Width: | Height: | Size: 193 B After Width: | Height: | Size: 193 B |
Before Width: | Height: | Size: 168 B After Width: | Height: | Size: 168 B |
Before Width: | Height: | Size: 211 B After Width: | Height: | Size: 211 B |
Before Width: | Height: | Size: 185 B After Width: | Height: | Size: 185 B |
Before Width: | Height: | Size: 357 B After Width: | Height: | Size: 357 B |
Before Width: | Height: | Size: 340 B After Width: | Height: | Size: 340 B |
Before Width: | Height: | Size: 179 B After Width: | Height: | Size: 179 B |
Before Width: | Height: | Size: 235 B After Width: | Height: | Size: 235 B |
Before Width: | Height: | Size: 147 B After Width: | Height: | Size: 147 B |
Before Width: | Height: | Size: 269 B After Width: | Height: | Size: 269 B |
Before Width: | Height: | Size: 209 B After Width: | Height: | Size: 209 B |
Before Width: | Height: | Size: 175 B After Width: | Height: | Size: 175 B |
Before Width: | Height: | Size: 220 B After Width: | Height: | Size: 220 B |
Before Width: | Height: | Size: 206 B After Width: | Height: | Size: 206 B |
Before Width: | Height: | Size: 258 B After Width: | Height: | Size: 258 B |
Before Width: | Height: | Size: 276 B After Width: | Height: | Size: 276 B |
Before Width: | Height: | Size: 182 B After Width: | Height: | Size: 182 B |
Before Width: | Height: | Size: 172 B After Width: | Height: | Size: 172 B |
Before Width: | Height: | Size: 277 B After Width: | Height: | Size: 277 B |
Before Width: | Height: | Size: 239 B After Width: | Height: | Size: 239 B |
Before Width: | Height: | Size: 381 B After Width: | Height: | Size: 381 B |
Before Width: | Height: | Size: 152 B After Width: | Height: | Size: 152 B |
Before Width: | Height: | Size: 212 B After Width: | Height: | Size: 212 B |
Before Width: | Height: | Size: 339 B After Width: | Height: | Size: 339 B |
Before Width: | Height: | Size: 303 B After Width: | Height: | Size: 303 B |
Before Width: | Height: | Size: 245 B After Width: | Height: | Size: 245 B |
Before Width: | Height: | Size: 191 B After Width: | Height: | Size: 191 B |
Before Width: | Height: | Size: 74 B After Width: | Height: | Size: 74 B |
Before Width: | Height: | Size: 197 B After Width: | Height: | Size: 197 B |
Before Width: | Height: | Size: 161 B After Width: | Height: | Size: 161 B |
Before Width: | Height: | Size: 144 B After Width: | Height: | Size: 144 B |
Before Width: | Height: | Size: 160 B After Width: | Height: | Size: 160 B |
Before Width: | Height: | Size: 230 B After Width: | Height: | Size: 230 B |
Before Width: | Height: | Size: 134 B After Width: | Height: | Size: 134 B |
Before Width: | Height: | Size: 110 B After Width: | Height: | Size: 110 B |
Before Width: | Height: | Size: 170 B After Width: | Height: | Size: 170 B |
Before Width: | Height: | Size: 156 B After Width: | Height: | Size: 156 B |
Before Width: | Height: | Size: 305 B After Width: | Height: | Size: 305 B |
Before Width: | Height: | Size: 253 B After Width: | Height: | Size: 253 B |
Before Width: | Height: | Size: 304 B After Width: | Height: | Size: 304 B |
Before Width: | Height: | Size: 237 B After Width: | Height: | Size: 237 B |
Before Width: | Height: | Size: 153 B After Width: | Height: | Size: 153 B |
Before Width: | Height: | Size: 217 B After Width: | Height: | Size: 217 B |
Before Width: | Height: | Size: 216 B After Width: | Height: | Size: 216 B |
Before Width: | Height: | Size: 258 B After Width: | Height: | Size: 258 B |
Before Width: | Height: | Size: 180 B After Width: | Height: | Size: 180 B |
Before Width: | Height: | Size: 279 B After Width: | Height: | Size: 279 B |
Before Width: | Height: | Size: 235 B After Width: | Height: | Size: 235 B |
BIN
textures/jungle-grass.png
Normal file
After Width: | Height: | Size: 260 B |
BIN
textures/jungle-log-top-bottom.png
Normal file
After Width: | Height: | Size: 179 B |
BIN
textures/jungle-log.png
Normal file
After Width: | Height: | Size: 236 B |
BIN
textures/jungle-wood.png
Normal file
After Width: | Height: | Size: 146 B |
BIN
textures/kelp.png
Normal file
After Width: | Height: | Size: 208 B |
Before Width: | Height: | Size: 173 B After Width: | Height: | Size: 173 B |
Before Width: | Height: | Size: 313 B After Width: | Height: | Size: 313 B |
Before Width: | Height: | Size: 285 B After Width: | Height: | Size: 285 B |
Before Width: | Height: | Size: 251 B After Width: | Height: | Size: 251 B |
Before Width: | Height: | Size: 203 B After Width: | Height: | Size: 203 B |
BIN
textures/log-top-bottom.png
Normal file
After Width: | Height: | Size: 179 B |
Before Width: | Height: | Size: 234 B After Width: | Height: | Size: 234 B |
Before Width: | Height: | Size: 175 B After Width: | Height: | Size: 175 B |
Before Width: | Height: | Size: 274 B After Width: | Height: | Size: 274 B |
Before Width: | Height: | Size: 230 B After Width: | Height: | Size: 230 B |
Before Width: | Height: | Size: 218 B After Width: | Height: | Size: 218 B |
Before Width: | Height: | Size: 204 B After Width: | Height: | Size: 204 B |