changes...
This commit is contained in:
parent
502a8f8348
commit
5f5d2ea48e
@ -19,7 +19,7 @@
|
||||
- Removed a Bunch of Colored Blocks (Because I don't want to add that much dyes, flowers, and crafting recipes)
|
||||
- Added String and Dyes
|
||||
- Replaced Every Colored Block with \<COLOR\> Wool Block
|
||||
- Added Recipe for White, Red, Blue, Yellow, and Purple Wool Blocks
|
||||
- Added Recipe for White, Red, Blue, Yellow, and Purple Dye
|
||||
- Bring Back Old Dirt Functionality
|
||||
- Remove Coarse Dirt
|
||||
- Major Codebase Refactors
|
||||
@ -30,8 +30,11 @@
|
||||
- Removed Liquid Lootbox
|
||||
- Added Block Digging Sound
|
||||
- Added Monsters and Humans
|
||||
- Added Mimics
|
||||
- Remove aliases
|
||||
- "Decentralize" PyuTest APIs
|
||||
- This means that PyuTest APIs no longer assume blocks, entities, bla bla bla are being defined for the pyutest_core mod
|
||||
- Remove Colors from Lootboxes
|
||||
|
||||
## [Some Day I Don't Remember] Unnamed Minor Update
|
||||
|
||||
|
@ -141,7 +141,7 @@ PyuTestCore.make_building_blocks("pyutest_core:basalt", "Basalt", {"basalt.png"}
|
||||
PyuTestCore.make_building_blocks("pyutest_core:obsidian", "Obsidian", {"obsidian.png"}, nil, {block = PyuTestCore.BLOCK_BREAKABLE_VERYLONG})
|
||||
PyuTestCore.make_building_blocks("pyutest_core:haybale", "Haybale", {"haybale-top-bottom.png", "haybale-top-bottom.png", "haybale.png"}, nil)
|
||||
-- keeping old ID for backwards compatibility
|
||||
PyuTestCore.make_building_blocks("pyutest_core:crying_obsidian", "Enchanted Obsidian", {"crying-obsidian.png"}, nil, {block = PyuTestCore.BLOCK_BREAKABLE_VERYLONG})
|
||||
PyuTestCore.make_building_blocks("pyutest_core:crying_obsidian", "Enchanted Obsidian", {"enchanted-obsidian.png"}, nil, {block = PyuTestCore.BLOCK_BREAKABLE_VERYLONG})
|
||||
|
||||
PyuTestCore.make_node("pyutest_core:light", "Light", {
|
||||
block = PyuTestCore.BLOCK_BREAKABLE_INSTANT,
|
||||
@ -236,7 +236,6 @@ PyuTestCore.make_node("pyutest_core:flower4", "Lavender", {
|
||||
inventory_image = "flower4.png"
|
||||
})
|
||||
|
||||
|
||||
PyuTestCore.make_node("pyutest_core:deadbush", "Deadbush", {
|
||||
block = PyuTestCore.BLOCK_BREAKABLE_INSTANT
|
||||
}, {"deadbush.png"}, {
|
||||
|
@ -1,17 +1,9 @@
|
||||
PyuTestCore.LOOTBOX_USEFULLNESS = {
|
||||
USELESS = "purple",
|
||||
AVERAGE = "lightblue",
|
||||
USEFUL = "coral",
|
||||
AMAZING = "cyan"
|
||||
}
|
||||
|
||||
PyuTestCore.make_lootbox = function (type, dtype, items, usefullness)
|
||||
local id = "pyutest_core:"..type.."_lootbox"
|
||||
PyuTestCore.make_lootbox = function (name, dname, items)
|
||||
local id = name.."_lootbox"
|
||||
minetest.register_node(id, {
|
||||
description = Translate(dtype .. " Lootbox"),
|
||||
description = Translate(dname .. " Lootbox"),
|
||||
groups = {block = PyuTestCore.BLOCK_BREAKABLE_CHOPPY},
|
||||
tiles = {"crate.png"},
|
||||
color = usefullness,
|
||||
sounds = PyuTestCore.make_node_sounds(),
|
||||
on_rightclick = function (pos, _, clicker)
|
||||
if clicker == nil then return end
|
||||
@ -29,26 +21,26 @@ PyuTestCore.make_lootbox = function (type, dtype, items, usefullness)
|
||||
})
|
||||
end
|
||||
|
||||
PyuTestCore.make_lootbox("trash", "Trash", {
|
||||
PyuTestCore.make_lootbox("pyutest_core:trash", "Trash", {
|
||||
ItemStack("pyutest_core:deadbush 19"),
|
||||
ItemStack("pyutest_core:")
|
||||
}, PyuTestCore.LOOTBOX_USEFULLNESS.USELESS)
|
||||
})
|
||||
|
||||
PyuTestCore.make_lootbox("resource", "Resource", {
|
||||
PyuTestCore.make_lootbox("pyutest_core:resource", "Resource", {
|
||||
ItemStack("pyutest_core:gunpowder 3"),
|
||||
ItemStack("pyutest_core:stick 4"),
|
||||
ItemStack("pyutest_core:sugar 2"),
|
||||
ItemStack("pyutest_core:tree_sapling 3"),
|
||||
ItemStack("pyutest_core:apple 3"),
|
||||
ItemStack("pyutest_core:string 5")
|
||||
}, PyuTestCore.LOOTBOX_USEFULLNESS.AVERAGE)
|
||||
})
|
||||
|
||||
PyuTestCore.make_lootbox("griefer", "Griefer's Dream", {
|
||||
PyuTestCore.make_lootbox("pyutest_core:griefer", "Griefer's Dream", {
|
||||
ItemStack("pyutest_core:tnt 3"),
|
||||
ItemStack("pyutest_core:bomb 2")
|
||||
}, PyuTestCore.LOOTBOX_USEFULLNESS.USEFUL)
|
||||
})
|
||||
|
||||
PyuTestCore.make_lootbox("lighting", "Lighting", {
|
||||
PyuTestCore.make_lootbox("pyutest_core:lighting", "Lighting", {
|
||||
ItemStack("pyutest_core:light 2"),
|
||||
ItemStack("pyutest_core:torch 13")
|
||||
}, PyuTestCore.LOOTBOX_USEFULLNESS.AMAZING)
|
||||
})
|
||||
|
@ -21,6 +21,7 @@ PyuTestCore.make_spellbook = function (nsname, desc, color, craftitem, action)
|
||||
end
|
||||
|
||||
PyuTestCore.make_item(nsname, desc, {}, "spellbook.png", {
|
||||
stack_max = 1,
|
||||
color = color,
|
||||
on_use = function (itemstack, user, pointed_thing)
|
||||
local pos = user:get_pos()
|
||||
|
@ -2,6 +2,7 @@ PyuTestCore.ENTITY_BLOOD_AMOUNT = 6
|
||||
PyuTestCore.HUMAN_LIKE_CBOX = {-0.25, -1, -0.25, 0.25, 1, 0.25}
|
||||
|
||||
minetest.register_alias("mapgen_dirt", "pyutest_core:dirt_block")
|
||||
mobs.fallback_node = "pyutest_core:dirt_block"
|
||||
|
||||
mobs:register_mob("pyutest_core:monster", {
|
||||
type = "monster",
|
||||
@ -16,8 +17,6 @@ mobs:register_mob("pyutest_core:monster", {
|
||||
damage = 5.5,
|
||||
attack_chance = 1,
|
||||
attack_type = "dogfight",
|
||||
attack_players = true,
|
||||
attack_npcs = true,
|
||||
pathfinding = 1,
|
||||
visual = "upright_sprite",
|
||||
visual_size = {x = 1, y = 2},
|
||||
@ -34,16 +33,15 @@ mobs:register_mob("pyutest_core:monster", {
|
||||
}
|
||||
})
|
||||
mobs:register_egg("pyutest_core:monster", "Monster Spawn Egg", "egg.png", 0)
|
||||
-- mobs:spawn({
|
||||
-- name = "pyutest_core:monster",
|
||||
-- nodes = {"group:ground"},
|
||||
-- interval = 2,
|
||||
-- chance = 2,
|
||||
-- active_object_count = 15,
|
||||
-- min_light = 0,
|
||||
-- max_light = 7,
|
||||
-- on_map_load = true
|
||||
-- })
|
||||
mobs:spawn({
|
||||
name = "pyutest_core:monster",
|
||||
nodes = {"group:ground"},
|
||||
interval = 2,
|
||||
chance = 2,
|
||||
active_object_count = 8,
|
||||
min_light = 0,
|
||||
max_light = 9,
|
||||
})
|
||||
|
||||
mobs:register_mob("pyutest_core:human", {
|
||||
type = "npc",
|
||||
@ -52,7 +50,7 @@ mobs:register_mob("pyutest_core:human", {
|
||||
walk_velocity = 1,
|
||||
run_velocity = 3,
|
||||
armor = 100,
|
||||
passive = false,
|
||||
passive = true,
|
||||
walk_chance = 50,
|
||||
stand_chance = 50,
|
||||
damage = 3,
|
||||
@ -63,21 +61,55 @@ mobs:register_mob("pyutest_core:human", {
|
||||
collisionbox = PyuTestCore.HUMAN_LIKE_CBOX,
|
||||
textures = {"player.png", "player_back.png"},
|
||||
follow = {"pyutest_core:coin"},
|
||||
attack_monsters = true,
|
||||
group_attack = true,
|
||||
runaway = true,
|
||||
view_range = 15,
|
||||
reach = 2,
|
||||
fear_height = 7,
|
||||
blood_amount = PyuTestCore.ENTITY_BLOOD_AMOUNT,
|
||||
})
|
||||
mobs:register_egg("pyutest_core:human", "Human Spawn Egg", "egg.png", 0)
|
||||
-- mobs:spawn({
|
||||
-- name = "pyutest_core:human",
|
||||
-- nodes = {"group:ground"},
|
||||
-- interval = 3,
|
||||
-- chance = 4,
|
||||
-- active_object_count = 7,
|
||||
-- min_light = 9,
|
||||
-- max_light = 15,
|
||||
-- day_toggle = true,
|
||||
-- on_map_load = true
|
||||
-- })
|
||||
mobs:spawn({
|
||||
name = "pyutest_core:human",
|
||||
nodes = {"group:ground"},
|
||||
interval = 3,
|
||||
chance = 4,
|
||||
active_object_count = 5,
|
||||
min_light = 9,
|
||||
max_light = 15,
|
||||
day_toggle = true,
|
||||
})
|
||||
|
||||
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", 0)
|
||||
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,
|
||||
})
|
||||
|
@ -1,6 +1,10 @@
|
||||
-- player setup
|
||||
minetest.register_on_joinplayer(function (player)
|
||||
if player == nil then return end
|
||||
player:set_properties({
|
||||
hp_max = 30
|
||||
})
|
||||
|
||||
player:get_inventory():set_width("main", 8)
|
||||
player:get_inventory():set_size("main", 8 * 4)
|
||||
player:hud_set_hotbar_itemcount(9)
|
||||
|
Before Width: | Height: | Size: 339 B After Width: | Height: | Size: 339 B |
@ -68,6 +68,31 @@ minetest.register_decoration({
|
||||
flags = "place_center_x, place_center_z"
|
||||
})
|
||||
|
||||
-- turns out lsystems are not in minetest yet, maybe they will in 5.9.0?
|
||||
-- minetest.register_decoration({
|
||||
-- deco_type = "lsystem",
|
||||
-- place_on = {"pyutest_core:grass_block"},
|
||||
-- sidelen = 16,
|
||||
-- fill_ratio = 0.004,
|
||||
-- biomes = {"forest"},
|
||||
-- y_max = PyuTestCore_BiomeTops.grassland,
|
||||
-- y_min = 1,
|
||||
-- treedef = {
|
||||
-- axiom="FFFFFAFFBF",
|
||||
-- rules_a="[&&&FFFFF&&FFFF][&&&++++FFFFF&&FFFF][&&&----FFFFF&&FFFF]",
|
||||
-- rules_b="[&&&++FFFFF&&FFFF][&&&--FFFFF&&FFFF][&&&------FFFFF&&FFFF]",
|
||||
-- trunk="pyutest_core:wooden_block",
|
||||
-- leaves="pyutest_core:leaves_block",
|
||||
-- angle=30,
|
||||
-- iterations=2,
|
||||
-- random_level=0,
|
||||
-- trunk_type="single",
|
||||
-- thin_branches=true,
|
||||
-- fruit = "pyutest_core:leaves_block",
|
||||
-- fruit_chance = 10
|
||||
-- }
|
||||
-- })
|
||||
|
||||
minetest.register_decoration({
|
||||
deco_type = "schematic",
|
||||
place_on = {"pyutest_core:mycelium_block"},
|
||||
|
@ -3,7 +3,6 @@ PyuTestCore.create_explosion = function (pos, range, rm_pos, dmg, creator)
|
||||
minetest.remove_node(pos)
|
||||
end
|
||||
|
||||
|
||||
for dx = -range, range do
|
||||
for dz = -range, range do
|
||||
for dy = -range, range do
|
||||
@ -17,10 +16,11 @@ PyuTestCore.create_explosion = function (pos, range, rm_pos, dmg, creator)
|
||||
end
|
||||
end
|
||||
|
||||
|
||||
for _, v in pairs(minetest.get_objects_inside_radius(pos, range)) do
|
||||
if v ~= nil and v ~= creator then
|
||||
v:set_hp(v:get_hp() - dmg)
|
||||
v:punch(creator, nil, {
|
||||
damage_groups = {fleshy = dmg}
|
||||
}, nil)
|
||||
end
|
||||
end
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user