From 55233863bd0e5ef934b7819c94ed6c0a2419498f Mon Sep 17 00:00:00 2001 From: IamPyu Date: Sat, 28 Dec 2024 20:13:36 -0600 Subject: [PATCH] Added Guns alongside other changes --- CHANGELOG.md | 1 + mods/CORE/pyutest/sounds/pyutest_shoot.ogg | Bin 0 -> 4551 bytes mods/ENTITIES/pyutest_projectiles/api.lua | 18 +++++++- mods/ITEMS/pyutest_electricity/devices.lua | 4 +- mods/ITEMS/pyutest_electricity/mod.conf | 2 +- mods/ITEMS/pyutest_guns/api.lua | 47 +++++++++++++++++++++ mods/ITEMS/pyutest_guns/init.lua | 8 ++++ mods/ITEMS/pyutest_guns/mod.conf | 1 + mods/ITEMS/pyutest_mithril/init.lua | 15 +++++++ mods/ITEMS/pyutest_wood/init.lua | 12 +++++- mods/PLAYER/pyutest_cmds/api.lua | 9 ++-- mods/PLAYER/pyutest_inventory/mod.conf | 2 +- mods/WORLD/pyutest_overworld/biomes.lua | 42 ------------------ textures/pyutest-blunderbuss.png | Bin 0 -> 271 bytes textures/pyutest-bullet.png | Bin 0 -> 86 bytes textures/pyutest-flintlock.png | Bin 0 -> 245 bytes 16 files changed, 108 insertions(+), 53 deletions(-) create mode 100644 mods/CORE/pyutest/sounds/pyutest_shoot.ogg create mode 100644 mods/ITEMS/pyutest_guns/api.lua create mode 100644 mods/ITEMS/pyutest_guns/init.lua create mode 100644 mods/ITEMS/pyutest_guns/mod.conf create mode 100644 textures/pyutest-blunderbuss.png create mode 100644 textures/pyutest-bullet.png create mode 100644 textures/pyutest-flintlock.png diff --git a/CHANGELOG.md b/CHANGELOG.md index 89566a7..708fc89 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -15,6 +15,7 @@ Game Changes: - Cauldrons no longer drain its fuel. - Instant Health potions can now be brewed. - Added 3D model to players. +- Added guns Bugfixes: diff --git a/mods/CORE/pyutest/sounds/pyutest_shoot.ogg b/mods/CORE/pyutest/sounds/pyutest_shoot.ogg new file mode 100644 index 0000000000000000000000000000000000000000..9c7a433e3be1ea464c4abee45de63716dea28095 GIT binary patch literal 4551 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 literal 0 HcmV?d00001 diff --git a/mods/ENTITIES/pyutest_projectiles/api.lua b/mods/ENTITIES/pyutest_projectiles/api.lua index 6ecf97c..37edffb 100644 --- a/mods/ENTITIES/pyutest_projectiles/api.lua +++ b/mods/ENTITIES/pyutest_projectiles/api.lua @@ -6,17 +6,28 @@ local class = { function class:on_step(dtime, moveresult) local slowdown_speed = self._slowdown_speed or 0.98 local slowdown = self._slowdown + local godown = self._godown if slowdown == nil then slowdown = true end + if godown == nil then + godown = false + end + if slowdown then local vel = self.object:get_velocity() vel = vector.multiply(vel, slowdown_speed) self.object:set_velocity(vel) end + if godown and not slowdown then + local vel = self.object:get_velocity() + vel.y = vel.y - (5 * dtime) + self.object:set_velocity(vel) + end + for _, v in pairs(moveresult.collisions) do if v.type == "node" then self._collided = true @@ -55,9 +66,12 @@ PyuTest.make_projectile = function (name, properties, options, functions) }, options or {}), { __index = class })) end -PyuTest.shoot_projectile_from_object = function(name, object, velocity) +PyuTest.shoot_projectile_from_object = function(name, object, velocity, offset) local pos = object:get_pos() pos = vector.offset(pos, 0, 1.3, 0) + if offset ~= nil then + pos = vector.offset(pos, offset.x, offset.y, offset.z) + end local pvel = velocity or 30 @@ -68,7 +82,7 @@ PyuTest.shoot_projectile_from_object = function(name, object, velocity) local projectile = core.add_entity(pos, name) projectile:set_velocity(vector.multiply(dir, pvel)) - projectile:set_rotation(object:get_look_dir()) + -- projectile:set_rotation(object:get_look_dir()) projectile:get_luaentity()._owner = object return projectile diff --git a/mods/ITEMS/pyutest_electricity/devices.lua b/mods/ITEMS/pyutest_electricity/devices.lua index e172e88..d75d174 100644 --- a/mods/ITEMS/pyutest_electricity/devices.lua +++ b/mods/ITEMS/pyutest_electricity/devices.lua @@ -23,11 +23,11 @@ PyuTest.make_electricity_device("pyutest_electricity:heater_device", "Heater Dev if core.get_item_group(n.name, "thawable") ~= 0 then local def = core.registered_nodes[n.name] - local thaw_into = def.__thaw_into or "pyutest_blocks:water_source" + local thaw_into = def.__pyutest_thaw_into or "pyutest_blocks:water_source" core.set_node(p, { name = thaw_into }) elseif core.get_item_group(n.name, "heatable") ~= 0 then local def = core.registered_nodes[n.name] - local heat_into = def.__heat_into or "pyutest_blocks:lava_source" + local heat_into = def.__pyutest_heat_into or "pyutest_blocks:lava_source" core.set_node(p, { name = heat_into }) end end) diff --git a/mods/ITEMS/pyutest_electricity/mod.conf b/mods/ITEMS/pyutest_electricity/mod.conf index e3cefe3..215490a 100644 --- a/mods/ITEMS/pyutest_electricity/mod.conf +++ b/mods/ITEMS/pyutest_electricity/mod.conf @@ -1 +1 @@ -depends = pyutest_blocks,pyutest_cmds,pyutest_tools,pyutest_ores +depends = pyutest_blocks,pyutest_cmds,pyutest_tools,pyutest_ores,pyutest_mithril diff --git a/mods/ITEMS/pyutest_guns/api.lua b/mods/ITEMS/pyutest_guns/api.lua new file mode 100644 index 0000000..4f0b6cf --- /dev/null +++ b/mods/ITEMS/pyutest_guns/api.lua @@ -0,0 +1,47 @@ +PyuTest.make_gun = function(name, desc, texture, cooldown, damage) + local bullet_id = name .. "_bullet" + + local cd = cooldown or 1 + PyuTest.make_tool(name, desc, { + tool = 1, + gun = 1, + }, texture, { + stack_max = 1, + + on_use = function(itemstack, user, pointed_thing) + PyuTest.shoot_projectile_from_object(bullet_id, user, 35) + core.sound_play("pyutest_shoot", { + pos = user:get_pos() + }) + + return itemstack + end, + }) + + PyuTest.make_projectile(bullet_id, { + visual_size = {x = 0.2, y = 0.2}, + textures = { + "pyutest-bullet.png", + "pyutest-bullet.png", + "pyutest-bullet.png", + "pyutest-bullet.png", + "pyutest-bullet.png", + "pyutest-bullet.png", + } + }, { + _slowdown = false, + _godown = true, + }, { + on_hit_node = function(self, pos, node) end, + on_hit_object = function(self, object) + if not self._owner:is_valid() then + return + end + PyuTest.deal_damage(object, damage, { + type = "punch", + object = self._owner + }) + end + }) +end + diff --git a/mods/ITEMS/pyutest_guns/init.lua b/mods/ITEMS/pyutest_guns/init.lua new file mode 100644 index 0000000..40d8354 --- /dev/null +++ b/mods/ITEMS/pyutest_guns/init.lua @@ -0,0 +1,8 @@ +local modpath = core.get_modpath(core.get_current_modname()) + +dofile(modpath .. "/api.lua") + +PyuTest.make_gun("pyutest_guns:flintlock", "Flintlock", + "pyutest-flintlock.png", 2, 6) +PyuTest.make_gun("pyutest_guns:blunderbuss", "Blunderbuss", "pyutest-blunderbuss.png", + 5, 12) diff --git a/mods/ITEMS/pyutest_guns/mod.conf b/mods/ITEMS/pyutest_guns/mod.conf new file mode 100644 index 0000000..966733e --- /dev/null +++ b/mods/ITEMS/pyutest_guns/mod.conf @@ -0,0 +1 @@ +depends = pyutest_tools,pyutest_projectiles diff --git a/mods/ITEMS/pyutest_mithril/init.lua b/mods/ITEMS/pyutest_mithril/init.lua index d367c3c..946a851 100644 --- a/mods/ITEMS/pyutest_mithril/init.lua +++ b/mods/ITEMS/pyutest_mithril/init.lua @@ -20,6 +20,12 @@ PyuTest.make_ore_and_item("pyutest_mithril:mithril", "Mithril", "shard", "Shard" block_shiny = true, }) +PyuTest.make_item("pyutest_mithril:electricfied_mithril", "Electricfied Mithril", { + mineral = 1, +}, "pyutest-shard.png", { + color = "#82a8fe" +}) + PyuTest.make_tool("pyutest_mithril:mithril_pickaxe", "Mithril Pickaxe", { pickaxe = 1 }, "pyutest-mithril-pickaxe.png", { @@ -95,3 +101,12 @@ core.register_craft({ { "pyutest_tools:basalt_stick" } } }) + +core.register_craft({ + output = "pyutest_mithril:electrified_mithril", + recipe = { + "pyutest_ores:copper_ingot", + "pyutest_mithril:mithril_shard" + }, + type = "shapeless" +}) diff --git a/mods/ITEMS/pyutest_wood/init.lua b/mods/ITEMS/pyutest_wood/init.lua index 782f1b1..9e02df7 100644 --- a/mods/ITEMS/pyutest_wood/init.lua +++ b/mods/ITEMS/pyutest_wood/init.lua @@ -1,5 +1,5 @@ PyuTest.registered_wood = {} -PyuTest.make_wood = function(id, desc, ltiles, btiles) +PyuTest.make_wood = function(id, desc, ltiles, btiles, lbtiles) PyuTest.make_building_blocks(id .. "_log", desc .. " Log", ltiles, nil, { choppy = PyuTest.BLOCK_NORMAL, acid_vulnerable = 1, @@ -18,6 +18,16 @@ PyuTest.make_wood = function(id, desc, ltiles, btiles) is_ground_content = false }) + PyuTest.make_building_blocks(id .. "_full_log", desc .. " Full Log", lbtiles or + {ltiles[3]}, nil, { + choppy = PyuTest.BLOCK_NORMAL, + acid_vulnerable = 1, + flammable = 1, + _pyutest_blast_resistance = 2 + }, { + is_ground_content = false + }) + local log_id = id .. "_log_block" local planks_id = id .. "_wood_block" diff --git a/mods/PLAYER/pyutest_cmds/api.lua b/mods/PLAYER/pyutest_cmds/api.lua index abd6911..c0ac808 100644 --- a/mods/PLAYER/pyutest_cmds/api.lua +++ b/mods/PLAYER/pyutest_cmds/api.lua @@ -1,9 +1,9 @@ PyuTest.chatcommand_entity_selector = function(caller, param) local p_caller = core.get_player_by_name(caller) - -- if param == nil then - -- return {param} - -- end + if core.get_player_by_name(param) ~= nil then + return {param} + end if param == "@self" or param == "@s" then return {caller} @@ -69,7 +69,8 @@ PyuTest.parse_command_functions = function(runner, param) local str = param -- embed the output of command - str = str:gsub(".embed<([^%s]+)>", function(input) + str = str:gsub("$embed<([^%s]+)>", function(input) + core.log(input) return PyuTest.execute_as(runner, input) or "" end) diff --git a/mods/PLAYER/pyutest_inventory/mod.conf b/mods/PLAYER/pyutest_inventory/mod.conf index bd4f3a4..ce2ea26 100644 --- a/mods/PLAYER/pyutest_inventory/mod.conf +++ b/mods/PLAYER/pyutest_inventory/mod.conf @@ -1 +1 @@ -depends = unified_inventory,pyutest_blocks,pyutest_furniture,pyutest_ores,pyutest_wool,pyutest_wood,pyutest_flowers,pyutest_electricity +depends = unified_inventory,pyutest_blocks,pyutest_furniture,pyutest_ores,pyutest_wool,pyutest_wood,pyutest_flowers,pyutest_electricity,pyutest_guns,pyutest_mithril diff --git a/mods/WORLD/pyutest_overworld/biomes.lua b/mods/WORLD/pyutest_overworld/biomes.lua index 66ceabe..166b6f2 100644 --- a/mods/WORLD/pyutest_overworld/biomes.lua +++ b/mods/WORLD/pyutest_overworld/biomes.lua @@ -9,8 +9,6 @@ PyuTest.register_overworld_biome("Plains", PyuTest.BIOME_TYPES.NORMAL, { heat_point = 65, humidity_point = 40, - weight = PyuTest.BIOME_WEIGHTS.large, - _pyutest_biome_flowering = true, _pyutest_foliage_index = PyuTest.FOLIAGE_TYPES.NORMAL, }) @@ -25,8 +23,6 @@ PyuTest.register_overworld_biome("Forest", PyuTest.BIOME_TYPES.NORMAL, { heat_point = 50, humidity_point = 80, - weight = PyuTest.BIOME_WEIGHTS.big, - _pyutest_biome_flowering = true, _pyutest_foliage_index = PyuTest.FOLIAGE_TYPES.LUSH, }) @@ -41,8 +37,6 @@ PyuTest.register_overworld_biome("BirchForest", PyuTest.BIOME_TYPES.NORMAL, { heat_point = 50, humidity_point = 84, - weight = PyuTest.BIOME_WEIGHTS.big, - _pyutest_biome_flowering = true, _pyutest_foliage_index = PyuTest.FOLIAGE_TYPES.NORMAL, }) @@ -57,8 +51,6 @@ PyuTest.register_overworld_biome("OldGrowthBirchForest", PyuTest.BIOME_TYPES.NOR heat_point = 50, humidity_point = 87, - weight = PyuTest.BIOME_WEIGHTS.big, - _pyutest_biome_flowering = true, _pyutest_biome_flowering_extra = true, _pyutest_foliage_index = PyuTest.FOLIAGE_TYPES.NORMAL, @@ -75,8 +67,6 @@ PyuTest.register_overworld_biome("Meadow", PyuTest.BIOME_TYPES.NORMAL, { heat_point = 50, humidity_point = 83, - weight = PyuTest.BIOME_WEIGHTS.big, - _enable_beaches = false, _pyutest_biome_flowering = true, _pyutest_biome_flowering_extra = true, @@ -93,8 +83,6 @@ PyuTest.register_overworld_biome("CherryGrove", PyuTest.BIOME_TYPES.NORMAL, { heat_point = 50, humidity_point = 85, - weight = PyuTest.BIOME_WEIGHTS.small, - _enable_beaches = false, _pyutest_biome_flowering = true, _pyutest_biome_flowering_extra = true, @@ -115,8 +103,6 @@ PyuTest.register_overworld_biome("Desert", PyuTest.BIOME_TYPES.HOT, { heat_point = 80, humidity_point = 0, - weight = PyuTest.BIOME_WEIGHTS.vast, - _enable_beaches = false, _pyutest_foliage_index = PyuTest.FOLIAGE_TYPES.DRY, }) @@ -131,7 +117,6 @@ PyuTest.register_overworld_biome("Savanna", PyuTest.BIOME_TYPES.WARM, { heat_point = 75, humidity_point = 0, - weight = PyuTest.BIOME_WEIGHTS.large, _pyutest_foliage_index = PyuTest.FOLIAGE_TYPES.DRY, }) @@ -146,8 +131,6 @@ PyuTest.register_overworld_biome("MushroomFields", PyuTest.BIOME_TYPES.NORMAL, { heat_point = 50, humidity_point = 94, - weight = PyuTest.BIOME_WEIGHTS.tiny, - _enable_beaches = false, _pyutest_fog_distance = 60, _pyutest_foliage_index = PyuTest.FOLIAGE_TYPES.SWAMP, @@ -163,8 +146,6 @@ PyuTest.register_overworld_biome("LargeMushroomForest", PyuTest.BIOME_TYPES.NORM heat_point = 50, humidity_point = 95, - weight = PyuTest.BIOME_WEIGHTS.tiny, - _enable_beaches = false, _pyutest_fog_distance = 60, _pyutest_foliage_index = PyuTest.FOLIAGE_TYPES.SWAMP, @@ -180,8 +161,6 @@ PyuTest.register_overworld_biome("Swamp", PyuTest.BIOME_TYPES.WETLAND, { heat_point = 50, humidity_point = 100, - weight = PyuTest.BIOME_WEIGHTS.tiny, - _enable_beaches = false, _pyutest_fog_distance = 60, _pyutest_foliage_index = PyuTest.FOLIAGE_TYPES.SWAMP, @@ -198,8 +177,6 @@ PyuTest.register_overworld_biome("Taiga", PyuTest.BIOME_TYPES.CHILLY, { heat_point = 20, humidity_point = 72, - weight = PyuTest.BIOME_WEIGHTS.normal, - _pyutest_biome_flowering = true, _pyutest_foliage_index = PyuTest.FOLIAGE_TYPES.DARK, }) @@ -214,7 +191,6 @@ PyuTest.register_overworld_biome("OldGrowthPineTaiga", PyuTest.BIOME_TYPES.CHILL heat_point = 26, humidity_point = 73, - weight = PyuTest.BIOME_WEIGHTS.large, _pyutest_foliage_index = PyuTest.FOLIAGE_TYPES.DARK, }) @@ -228,8 +204,6 @@ PyuTest.register_overworld_biome("AspenForest", PyuTest.BIOME_TYPES.CHILLY, { heat_point = 19, humidity_point = 74, - weight = PyuTest.BIOME_WEIGHTS.small, - _pyutest_biome_flowering = true, _pyutest_fog_distance = 60, _pyutest_foliage_index = PyuTest.FOLIAGE_TYPES.ASPEN, @@ -245,8 +219,6 @@ PyuTest.register_overworld_biome("RedwoodForest", PyuTest.BIOME_TYPES.CHILLY, { heat_point = 23, humidity_point = 76, - weight = PyuTest.BIOME_WEIGHTS.small, - _pyutest_biome_flowering = true, _pyutest_fog_distance = 60, _pyutest_foliage_index = PyuTest.FOLIAGE_TYPES.DARK, @@ -262,8 +234,6 @@ PyuTest.register_overworld_biome("OminousForest", PyuTest.BIOME_TYPES.CHILLY, { heat_point = 19, humidity_point = 81, - weight = PyuTest.BIOME_WEIGHTS.tiny, - _pyutest_fog_distance = 45, _pyutest_foliage_index = PyuTest.FOLIAGE_TYPES.MAGIC, }) @@ -283,7 +253,6 @@ PyuTest.register_overworld_biome("FrozenPlains", PyuTest.BIOME_TYPES.COLD, { heat_point = 0, humidity_point = 73, - weight = PyuTest.BIOME_WEIGHTS.large, _pyutest_foliage_index = PyuTest.FOLIAGE_TYPES.SNOW, }) @@ -301,7 +270,6 @@ PyuTest.register_overworld_biome("SnowyForest", PyuTest.BIOME_TYPES.COLD, { heat_point = 0, humidity_point = 78, - weight = PyuTest.BIOME_WEIGHTS.large, _pyutest_foliage_index = PyuTest.FOLIAGE_TYPES.SNOW, }) @@ -318,8 +286,6 @@ PyuTest.register_overworld_biome("IceSpikes", PyuTest.BIOME_TYPES.COLD, { heat_point = 0, humidity_point = 75, - weight = PyuTest.BIOME_WEIGHTS.large, - _enable_beaches = false, _pyutest_foliage_index = PyuTest.FOLIAGE_TYPES.SNOW, }) @@ -337,8 +303,6 @@ PyuTest.register_overworld_biome("StonyPeaks", PyuTest.BIOME_TYPES.CHILLY, { vertical_blend = 8, - weight = PyuTest.BIOME_WEIGHTS.large, - _enable_beaches = false, _pyutest_foliage_index = PyuTest.FOLIAGE_TYPES.DRY, }) @@ -356,8 +320,6 @@ PyuTest.register_overworld_biome("FrozenPeaks", PyuTest.BIOME_TYPES.COLD, { vertical_blend = 8, - weight = PyuTest.BIOME_WEIGHTS.large, - _enable_beaches = false, _pyutest_foliage_index = PyuTest.FOLIAGE_TYPES.SNOW, }) @@ -374,8 +336,6 @@ PyuTest.register_overworld_biome("JaggedPeaks", PyuTest.BIOME_TYPES.COLD, { vertical_blend = 8, - weight = PyuTest.BIOME_WEIGHTS.large, - _enable_beaches = false, _pyutest_foliage_index = PyuTest.FOLIAGE_TYPES.SNOW, }) @@ -392,8 +352,6 @@ PyuTest.register_overworld_biome("Grove", PyuTest.BIOME_TYPES.COLD, { vertical_blend = 8, - weight = PyuTest.BIOME_WEIGHTS.large, - _enable_beaches = false, _pyutest_foliage_index = PyuTest.FOLIAGE_TYPES.SNOW, }) diff --git a/textures/pyutest-blunderbuss.png b/textures/pyutest-blunderbuss.png new file mode 100644 index 0000000000000000000000000000000000000000..84ed83fd82c29fd6ec6d7072ae95f2950c191a28 GIT binary patch literal 271 zcmV+q0r38bP)UU zwNSl|BnX1+u93inl~Sw~N!gqyaTJXNu}HJLyja)u{+)X zRD7f+EhZzI#3}SU!S-=s0MPv VWZkIdSCRk#002ovPDHLkV1lG{bT$A0 literal 0 HcmV?d00001 diff --git a/textures/pyutest-bullet.png b/textures/pyutest-bullet.png new file mode 100644 index 0000000000000000000000000000000000000000..ff30609b38ac44359a13d1937d0aefcee3431d6c GIT binary patch literal 86 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`vYsxEAr`&KfBv3)W6#Xm&?$6w jFa>C8@BTyFXU6*73b`njxgN@xNAW!M+9 literal 0 HcmV?d00001 diff --git a/textures/pyutest-flintlock.png b/textures/pyutest-flintlock.png new file mode 100644 index 0000000000000000000000000000000000000000..28920837d671f6f9e952f9d9c36b0f5d325a80a6 GIT binary patch literal 245 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`dpunnLo9le6C_F;{QTbSpEvJb zebQCqh1?t*90oN%J~TFpI2$y8M1x|TE=*wM7E3VYIm~TP@bZ$XTi2e+X_-Id@2cL2 zX}rujJ%3+H0uXF?kd`JOAONO!nAWppuG=6o>DT!K2Mz>0&--p475aOB`wXTwZV67w zNkHxYU(b%`$+xddz47rCV_TJ&(=68;Hzf7;*Pbl+bJuvyw1*{*b9dkUzx(?=qdV2V l<(8+hvDq|w^gKJr$nf+=P*!J?4$vD644$rjF6*2UngA(eW@i8Z literal 0 HcmV?d00001