From e68fe87ea2a0b794f7a7220ad88a74fc4be3c3c2 Mon Sep 17 00:00:00 2001 From: ANAND Date: Wed, 22 Apr 2020 07:31:27 +0530 Subject: [PATCH] Add sniper_rifles mod (#453) --- mods/ctf/ctf_classes/classes.lua | 2 + mods/ctf/ctf_crafting/init.lua | 18 +++ mods/ctf/ctf_treasure/init.lua | 3 + mods/other/random_messages/init.lua | 1 + mods/pvp/sniper_rifles/LICENSE | 22 ++++ mods/pvp/sniper_rifles/README.md | 13 +++ mods/pvp/sniper_rifles/init.lua | 104 ++++++++++++++++++ mods/pvp/sniper_rifles/mod.conf | 3 + mods/pvp/sniper_rifles/rifles.lua | 37 +++++++ .../sounds/sniper_rifles_rifle.ogg | Bin 0 -> 41486 bytes .../textures/sniper_rifles_rifle_762.png | Bin 0 -> 707 bytes .../textures/sniper_rifles_rifle_magnum.png | Bin 0 -> 1063 bytes 12 files changed, 203 insertions(+) create mode 100644 mods/pvp/sniper_rifles/LICENSE create mode 100644 mods/pvp/sniper_rifles/README.md create mode 100644 mods/pvp/sniper_rifles/init.lua create mode 100644 mods/pvp/sniper_rifles/mod.conf create mode 100644 mods/pvp/sniper_rifles/rifles.lua create mode 100644 mods/pvp/sniper_rifles/sounds/sniper_rifles_rifle.ogg create mode 100644 mods/pvp/sniper_rifles/textures/sniper_rifles_rifle_762.png create mode 100644 mods/pvp/sniper_rifles/textures/sniper_rifles_rifle_magnum.png diff --git a/mods/ctf/ctf_classes/classes.lua b/mods/ctf/ctf_classes/classes.lua index 76698b3..718b04e 100644 --- a/mods/ctf/ctf_classes/classes.lua +++ b/mods/ctf/ctf_classes/classes.lua @@ -45,6 +45,8 @@ ctf_classes.register("shooter", { "shooter_guns:rifle", "shooter_guns:machine_gun", "shooter_guns:shotgun", + "sniper_rifles:rifle_762", + "sniper_rifles:rifle_magnum" }, shooter_multipliers = { diff --git a/mods/ctf/ctf_crafting/init.lua b/mods/ctf/ctf_crafting/init.lua index d4ef1de..a509841 100644 --- a/mods/ctf/ctf_crafting/init.lua +++ b/mods/ctf/ctf_crafting/init.lua @@ -150,6 +150,24 @@ crafting.register_recipe({ level = 1, }) +-- 7.62mm sniper rifle (unloaded) +crafting.register_recipe({ + type = "inv", + output = "sniper_rifles:rifle_762", + items = { "default:steelblock", "default:bronze_ingot 5", "default:mese_crystal", "default:wood" }, + always_known = true, + level = 1 +}) + +-- Magnum sniper rifle (unloaded) +crafting.register_recipe({ + type = "inv", + output = "sniper_rifles:rifle_magnum", + items = { "default:steelblock", "default:bronzeblock", "default:diamond", "default:wood" }, + always_known = true, + level = 1, +}) + -- Wooden ladder x4 crafting.register_recipe({ type = "inv", diff --git a/mods/ctf/ctf_treasure/init.lua b/mods/ctf/ctf_treasure/init.lua index 0a4542b..4041f2d 100644 --- a/mods/ctf/ctf_treasure/init.lua +++ b/mods/ctf/ctf_treasure/init.lua @@ -24,6 +24,9 @@ function ctf_treasure.get_default_treasures() { "shooter:ammo", 0.3, 2, { 1, 10 } }, { "shooter:arrow_white", 0.5, 2, { 2, 18 } }, + { "sniper_rifles:rifle_762_loaded", 0.1, 2, 1 }, + { "sniper_rifles:rifle_magnum_loaded", 0.01, 2, 1 }, + { "medkits:medkit", 0.8, 5, 2 }, } end diff --git a/mods/other/random_messages/init.lua b/mods/other/random_messages/init.lua index 3c62b70..52f25f4 100644 --- a/mods/other/random_messages/init.lua +++ b/mods/other/random_messages/init.lua @@ -77,6 +77,7 @@ function random_messages.read_messages() "Change your class in your base by right clicking the home flag or typing /class.", "Medics cause troops within 10 metres to regenerate health faster.", "Hitting your enemy does more damage than not hitting them.", + "Press right mouse button or double-tap the screen to activate scope while wielding a sniper rifle." } end diff --git a/mods/pvp/sniper_rifles/LICENSE b/mods/pvp/sniper_rifles/LICENSE new file mode 100644 index 0000000..d26fb25 --- /dev/null +++ b/mods/pvp/sniper_rifles/LICENSE @@ -0,0 +1,22 @@ +MIT License + +Code : Copyright (c) 2019 Anand S, ClobberXD +Textures: Copyright (c) 2020 LoneWolfHT + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/mods/pvp/sniper_rifles/README.md b/mods/pvp/sniper_rifles/README.md new file mode 100644 index 0000000..8eb56b2 --- /dev/null +++ b/mods/pvp/sniper_rifles/README.md @@ -0,0 +1,13 @@ +# Sniper Rifles + +This mod adds sniper rifles which behave like over-powered rifles, with the addition of the ability to toggle scoping using RMB (by default). + +## Licenses + +- Code license: MIT +- Media license: CC0 1.0 + +### Attributions + +- `sniper_rifles_rifle.ogg` (`CC0 1.0`) + - Converted from [Battle Rifle.wav](https://freesound.org/people/morganpurkis/sounds/391725/) by [morganpurkis](https://freesound.org/people/morganpurkishttps://freesound.org/people/morganpurkis/sounds/391725/). diff --git a/mods/pvp/sniper_rifles/init.lua b/mods/pvp/sniper_rifles/init.lua new file mode 100644 index 0000000..03db7ca --- /dev/null +++ b/mods/pvp/sniper_rifles/init.lua @@ -0,0 +1,104 @@ +------------------ +-- Private data -- +------------------ + +-- Keep track of players who are scoping in, and their wielded item +local scoped = {} + +-- Timer for scope-check globalstep +local timer = 0.2 + +------------- +-- Helpers -- +------------- + +local function show_scope(name, item_name, fov_mult) + local player = minetest.get_player_by_name(name) + if not player then + return + end + + scoped[name] = item_name + -- e.g. if fov_mult == 8, then FOV = 1/8 * current_FOV, a.k.a 8x zoom + player:set_fov(1 / fov_mult, true) + player:hud_set_flags({ wielditem = false }) +end + +local function hide_scope(name) + local player = minetest.get_player_by_name(name) + if not player then + return + end + + scoped[name] = nil + player:set_fov(0) + player:hud_set_flags({ wielditem = true }) +end + +local function on_rclick(item, placer, pointed_thing) + if pointed_thing.type == "object" then + return + end + + local name = placer:get_player_name() + if scoped[name] then + hide_scope(name) + else + -- Remove _loaded suffix added to item name by shooter + local item_name = item:get_name():gsub("_loaded", "") + local fov_mult = shooter.registered_weapons[item_name].fov_mult + show_scope(name, item_name, fov_mult) + end +end + +------------------ +-- Sccope-check -- +------------------ + +-- Hide scope if currently wielded item is not the same item +-- player wielded when scoping + +local time = 0 +minetest.register_globalstep(function(dtime) + time = time + dtime + if time < timer then + return + end + + time = 0 + for name, original_item in pairs(scoped) do + local player = minetest.get_player_by_name(name) + if not player then + scoped[name] = nil + else + local wielded_item = player:get_wielded_item():get_name():gsub("_loaded", "") + if wielded_item ~= original_item then + hide_scope(name) + end + end + end +end) + +---------------------------- +-- Rifle registration API -- +---------------------------- + +sniper_rifles = {} + +function sniper_rifles.register_rifle(name, def) + assert(def.fov_mult, "Rifle definition must contain FOV multiplier (fov_mult)!") + + shooter.register_weapon(name, def) + + -- Manually add extra fields to itemdef that shooter doesn't allow + -- Also modify the _loaded variant + local overrides = { + on_secondary_use = on_rclick, + wield_scale = vector.new(2, 2, 1.5) + } + minetest.override_item(name, overrides) + minetest.override_item(name .. "_loaded", overrides) + +end + +dofile(minetest.get_modpath(minetest.get_current_modname()) .. "/rifles.lua") diff --git a/mods/pvp/sniper_rifles/mod.conf b/mods/pvp/sniper_rifles/mod.conf new file mode 100644 index 0000000..fb2ce85 --- /dev/null +++ b/mods/pvp/sniper_rifles/mod.conf @@ -0,0 +1,3 @@ +name = sniper_rifles +depends = shooter +description = This mod adds a couple of sniper rifles that make use of the zoom_fov player property to scope in. diff --git a/mods/pvp/sniper_rifles/rifles.lua b/mods/pvp/sniper_rifles/rifles.lua new file mode 100644 index 0000000..0b2c4ad --- /dev/null +++ b/mods/pvp/sniper_rifles/rifles.lua @@ -0,0 +1,37 @@ +-- Basic 7.62mm rifle +sniper_rifles.register_rifle("sniper_rifles:rifle_762", { + description = "Sniper rifle (7.62mm)", + inventory_image = "sniper_rifles_rifle_762.png", + fov_mult = 4, + spec = { + rounds = 30, + range = 300, + step = 30, + tool_caps = { full_punch_interval = 1.5, damage_groups = { fleshy = 12 } }, + sounds = { shot = "sniper_rifles_rifle" }, + particle = "shooter_bullet.png", + groups = { + cracky = 3, snappy = 2, crumbly = 2, choppy = 2, + fleshy = 1, oddly_breakable_by_hand = 1 + } + } +}) + +-- Magnum rifle +sniper_rifles.register_rifle("sniper_rifles:rifle_magnum", { + description = "Sniper rifle (Magnum)", + inventory_image = "sniper_rifles_rifle_magnum.png", + fov_mult = 8, + spec = { + rounds = 20, + range = 400, + step = 30, + tool_caps = { full_punch_interval = 2, damage_groups = { fleshy = 16 } }, + sounds = { shot = "sniper_rifles_rifle" }, + particle = "shooter_bullet.png", + groups = { + cracky = 2, snappy = 1, crumbly = 1, choppy = 1, + fleshy = 1, oddly_breakable_by_hand = 1 + } + } +}) diff --git a/mods/pvp/sniper_rifles/sounds/sniper_rifles_rifle.ogg b/mods/pvp/sniper_rifles/sounds/sniper_rifles_rifle.ogg new file mode 100644 index 0000000000000000000000000000000000000000..56758d3e24af9399c58669517a9886f28c70477b GIT binary patch literal 41486 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

    PPLejH-%$tdb`jH(QcV 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 literal 0 HcmV?d00001 diff --git a/mods/pvp/sniper_rifles/textures/sniper_rifles_rifle_762.png b/mods/pvp/sniper_rifles/textures/sniper_rifles_rifle_762.png new file mode 100644 index 0000000000000000000000000000000000000000..ae7b16f0ab1e3712efde8a8c1c77da5a8a75f5f3 GIT binary patch literal 707 zcmV;!0zCbRP)F`2pTI@68`z;=waFe*pi$ zGszxE@YKV`G{kt?V7Aekt)(F2L5H-ZP{6kMojQ~0_db1RzHbWr525Qi48u5zwg3Q% zqQJK8qd*7%V45Z5+M=+;}XiXx&v6+kJ)r|WA1 z0OyScb6ppbB#~G5f2Ml~Ur>r?&GKp-gpg%@N2rtq1-|ubAcX>5|xDP;3+;v@$@tE9Q)ERJsUTul~bOu?L82~c9xgp;i z=Z{cY4h)Aw!o|nqF#&)#AHR^h#jlVPkD5(Zt<};wguBM;i+ZR!g3Ss5EX(?L2ew7j z3EQ?oDP^hL1^YtWdW#iASM%AXuTLF-xAlQjSV83KK;Z5mQLuMU8`%R`mW7HU5`JF* zKt&PJ)qK{U3b7EGIPe!DH1|aKfjEdv0QiCA5EVs4y(F_Zh)e)3uO^BA7MTIWiE}6F pC3&r4GTVZvc(m(UmIYnc@f$KmH`*C}51s%3002ovPDHLkV1m;}DYXCq literal 0 HcmV?d00001 diff --git a/mods/pvp/sniper_rifles/textures/sniper_rifles_rifle_magnum.png b/mods/pvp/sniper_rifles/textures/sniper_rifles_rifle_magnum.png new file mode 100644 index 0000000000000000000000000000000000000000..ac9987751249213103ec9d47f85e390dc447ee6e GIT binary patch literal 1063 zcmV+?1laqDP)DV_tDPR~S+CZTBCD?RF4~>l<@cL! z-g`3=zVG9@F3n~WfUT`9E;1~~acDN1+I3ycYY0mz#jy!o*VVr7 zBp}R%@B288qm@!7C&V~8Q7M=E?)O`*fzQo&{(UQZ^Eya~{J{O?CBARTu}S1-l#i8# z8Khlc{ds$M4&>vDa(HeeYO~Y4U2%pJ$Y=aoHA$}rk;q2SXaL|JH>%fp=}w`=aHmj;mt8V#xo3%Xb=^7pf60^sg7 z@9ceG+ws_TMt}I(REyPer;mgY>vp>-iHQh&>K@JbrA!9Sesh0Ucj6w4vmTcmn+FZ6 zkA!7e8o-b^D+O!VgU$V2{cG@#?!-N&>;li*0edQDt(x?a_{xiglrkl8?@4fW0xxC4 zOnBmD-cuUjMc{~!-l?P%-uD*7o{F_0F+Dw)6gnD>;P z_mrNp3%m#%0r2x5`xx=GW5$}bYC;r60F+84ykNVJ#JH6qZY@^$SlRsMhWct#o~rdf ztC7wd_%WK-pXgn(B#Ol%?RHzt&d%yA39|>7elwK7DDkUJDdMNCR9s5QPvVUD#i?dBY`?gB%^Tl< zF#(|K^;F!%t4!n#n4A!2?cLW0jNQp3)}D$rkS6A8xx;#Es?S9B*d`{~K(Zz_GAF5H z1FW~E^omqS+oEI_IE;I#2@~doWldsWBlipRCDw{m=>!ks9wocLYPmCT$FwKiMmGkG z?WveBP6i5<>;gBe0}b#fnM+S%f^&|q-&@oG(za6Jqun(`9$$xXk4MRzn0N_Bg|sap zZA*+22gD8Q;J+=wI2+yOet1mdL|obhkuh@qO91fghcy6p+7W<0p>rbsfmizf3}pZA ht(H4kGXSYLz`yBE75{)nhQ9y+002ovPDHLkV1ffY`1Sw* literal 0 HcmV?d00001