diff --git a/mods/rangedweapons/m1991.lua b/mods/rangedweapons/m1991.lua new file mode 100644 index 00000000..58c06c64 --- /dev/null +++ b/mods/rangedweapons/m1991.lua @@ -0,0 +1,78 @@ + + +minetest.register_tool("rangedweapons:m1991_rld", { + stack_max= 1, + wield_scale = {x=1.1,y=1.1,z=1.05}, + description = "", + range = 0, + loaded_gun = "rangedweapons:m1991", + groups = {not_in_creative_inventory = 1}, + inventory_image = "rangedweapons_m1991_rld.png", +}) +minetest.register_tool("rangedweapons:m1991_r", { + stack_max= 1, + wield_scale = {x=1.1,y=1.1,z=1.05}, + description = "", + rw_next_reload = "rangedweapons:m1991_rr", + load_sound = "rangedweapons_handgun_mag_in", + range = 0, + groups = {not_in_creative_inventory = 1}, + inventory_image = "rangedweapons_m1991.png", +}) +minetest.register_tool("rangedweapons:m1991_rr", { + stack_max= 1, + wield_scale = {x=1.1,y=1.1,z=1.05}, + description = "", + rw_next_reload = "rangedweapons:m1991_rrr", + load_sound = "rangedweapons_reload_a", + range = 0, + groups = {not_in_creative_inventory = 1}, + inventory_image = "rangedweapons_m1991.png", +}) +minetest.register_tool("rangedweapons:m1991_rrr", { + stack_max= 1, + wield_scale = {x=1.1,y=1.1,z=1.05}, + description = "", + rw_next_reload = "rangedweapons:m1991", + load_sound = "rangedweapons_reload_b", + range = 0, + groups = {not_in_creative_inventory = 1}, + inventory_image = "rangedweapons_m1991_rld.png", +}) + +minetest.register_tool("rangedweapons:m1991", { + description = "" ..core.colorize("#35cdff","m1991\n") ..core.colorize("#FFFFFF", "Gun damage: 4\n")..core.colorize("#FFFFFF", "Accuracy: 92%\n") ..core.colorize("#FFFFFF", "gun knockback: 4\n") ..core.colorize("#FFFFFF", "Gun crit chance: 13%\n")..core.colorize("#FFFFFF", "Critical efficiency: 2.1x\n") ..core.colorize("#FFFFFF", "Reload delay: 1.0\n")..core.colorize("#FFFFFF", "Clip size: 8\n") ..core.colorize("#FFFFFF", "Ammunition: .45acp\n") ..core.colorize("#FFFFFF", "Rate of fire: 0.4\n") ..core.colorize("#FFFFFF", "Gun type: Handgun\n") ..core.colorize("#FFFFFF", "Bullet velocity: 25"), + wield_scale = {x=1.1,y=1.1,z=1.05}, + range = 0, + inventory_image = "rangedweapons_m1991.png", +RW_gun_capabilities = { + gun_damage = {fleshy=4,knockback=4}, + gun_crit = 15, + gun_critEffc = 2.1, + suitable_ammo = {{"rangedweapons:45acp",8}}, + gun_skill = {"handgun_skill",40}, + gun_magazine = "rangedweapons:handgun_mag_black", + gun_icon = "rangedweapons_m1991_icon.png", + gun_unloaded = "rangedweapons:m1991_r", + gun_cooling = "rangedweapons:m1991_rld", + gun_velocity = 25, + gun_accuracy = 92, + gun_cooldown = 0.4, + gun_reload = 1.0/4, + gun_projectiles = 1, + has_shell = 1, + gun_durability = 1000, + gun_smokeSize = 5, + gun_unload_sound = "rangedweapons_handgun_mag_out", + gun_sound = "rangedweapons_beretta", + }, + on_secondary_use = function(itemstack, user, pointed_thing) +rangedweapons_reload_gun(itemstack, user) +return itemstack +end, + on_use = function(itemstack, user, pointed_thing) +rangedweapons_shoot_gun(itemstack, user) +return itemstack + end, +}) + diff --git a/mods/rangedweapons/m200.lua b/mods/rangedweapons/m200.lua new file mode 100644 index 00000000..b1ac66a0 --- /dev/null +++ b/mods/rangedweapons/m200.lua @@ -0,0 +1,103 @@ + + +minetest.register_tool("rangedweapons:m200_uld", { + stack_max= 1, + wield_scale = {x=2.1,y=2.1,z=1.2}, + range = 0, + description = "" ..core.colorize("#35cdff","m200 intervention \n") ..core.colorize("#FFFFFF", "Ranged damage:22 + 75/sec of bullet lifetime\n")..core.colorize("#FFFFFF", "Accuracy: 100%\n") ..core.colorize("#FFFFFF", "knockback: 20\n") ..core.colorize("#FFFFFF", "Critical chance: 33%\n") ..core.colorize("#FFFFFF", "Critical efficiency: x3.25\n") ..core.colorize("#FFFFFF", "Ammunition: .408 chey tac\n") ..core.colorize("#FFFFFF", "Rate of fire: 1.5\n") ..core.colorize("#FFFFFF", "Reload time: 2.5\n") ..core.colorize("#FFFFFF", "Zoom: 15x\n") ..core.colorize("#be0d00", "Right-click to eject empty bullet shell\n") ..core.colorize("#FFFFFF", "Clip size: 7\n") ..core.colorize("#FFFFFF", "Enemy penetration:45%\n") ..core.colorize("#FFFFFF", "Block penetration:15%\n") ..core.colorize("#FFFFFF", "Gun type: Rifle\n") ..core.colorize("#FFFFFF", "Bullet velocity: 80"), + groups = {not_in_creative_inventory = 1}, + inventory_image = "rangedweapons_m200.png", + weapon_zoom = 7.5, + on_use = function(user) + minetest.sound_play("rangedweapons_empty", {user}) + end, +on_secondary_use = function(itemstack, user, pointed_thing) +eject_shell(itemstack,user,"rangedweapons:m200_rld",1.0,"rangedweapons_rifle_reload_a","rangedweapons:empty_shell") +return itemstack +end, +}) + + +minetest.register_tool("rangedweapons:m200_r", { + rw_next_reload = "rangedweapons:m200_rr", + load_sound = "rangedweapons_rifle_clip_in", + range = 0, + wield_scale = {x=2.1,y=2.1,z=1.2}, + description = "", + groups = {not_in_creative_inventory = 1}, + inventory_image = "rangedweapons_m200_noclip.png", +}) +minetest.register_tool("rangedweapons:m200_rr", { + rw_next_reload = "rangedweapons:m200_rrr", + load_sound = "rangedweapons_rifle_reload_a", + range = 0, + wield_scale = {x=2.1,y=2.1,z=1.2}, + description = "", + groups = {not_in_creative_inventory = 1}, + inventory_image = "rangedweapons_m200.png", +}) +minetest.register_tool("rangedweapons:m200_rrr", { + rw_next_reload = "rangedweapons:m200", + load_sound = "rangedweapons_rifle_reload_b", + range = 0, + wield_scale = {x=2.1,y=2.1,z=1.2}, + description = "", + groups = {not_in_creative_inventory = 1}, + inventory_image = "rangedweapons_m200_rld.png", +}) + + +minetest.register_tool("rangedweapons:m200_rld", { + stack_max= 1, + range = 0, + wield_scale = {x=2.1,y=2.1,z=1.2}, + description = "", + loaded_gun = "rangedweapons:m200", + loaded_sound = "rangedweapons_rifle_reload_b", + groups = {not_in_creative_inventory = 1}, + inventory_image = "rangedweapons_m200_rld.png", +}) + + +minetest.register_tool("rangedweapons:m200", { + description = "" ..core.colorize("#35cdff","m200 intervention \n") ..core.colorize("#FFFFFF", "Ranged damage:22 + 75/sec of bullet lifetime\n")..core.colorize("#FFFFFF", "Accuracy: 100%\n") ..core.colorize("#FFFFFF", "knockback: 20\n") ..core.colorize("#FFFFFF", "Critical chance: 33%\n") ..core.colorize("#FFFFFF", "Critical efficiency: x3.25\n") ..core.colorize("#FFFFFF", "Ammunition: .408 chey tac\n") ..core.colorize("#FFFFFF", "Rate of fire: 1.5\n") ..core.colorize("#FFFFFF", "Reload time: 2.5\n") ..core.colorize("#FFFFFF", "Zoom: 15x\n") ..core.colorize("#27a600", "The gun is loaded!\n") ..core.colorize("#FFFFFF", "Clip size: 7\n") ..core.colorize("#FFFFFF", "Enemy penetration:45%\n") ..core.colorize("#FFFFFF", "Block penetration:15%\n") ..core.colorize("#FFFFFF", "Gun type: Rifle\n") ..core.colorize("#FFFFFF", "Bullet velocity: 80"), + range = 0, + weapon_zoom = 6, + wield_scale = {x=2.1,y=2.1,z=1.2}, + inventory_image = "rangedweapons_m200.png", +RW_gun_capabilities = { + gun_damage = {fleshy=22,knockback=20}, + gun_crit = 33, + gun_critEffc = 3.25, + suitable_ammo = {{"rangedweapons:408cheytac",7}}, + gun_skill = {"rifle_skill",12}, + gun_magazine = "rangedweapons:rifle_mag", + gun_icon = "rangedweapons_m200_icon.png", + gun_unloaded = "rangedweapons:m200_r", + gun_cooling = "rangedweapons:m200_uld", + gun_velocity = 80, + gun_accuracy = 100, + gun_cooldown = 1.5, + gun_reload = 2.5/4, + gun_projectiles = 1, + has_shell = 0, + gun_durability = 900, + gun_smokeSize = 8, + gun_dps = 75, + gun_mob_penetration = 45, + gun_node_penetration = 15, + gun_unload_sound = "rangedweapons_rifle_clip_out", + gun_sound = "rangedweapons_rifle_b", + }, + on_secondary_use = function(itemstack, user, pointed_thing) +rangedweapons_reload_gun(itemstack, user) +return itemstack +end, + on_use = function(itemstack, user, pointed_thing) +rangedweapons_shoot_gun(itemstack, user) +return itemstack + end, + +}) + + diff --git a/mods/rangedweapons/makarov.lua b/mods/rangedweapons/makarov.lua new file mode 100644 index 00000000..52495f33 --- /dev/null +++ b/mods/rangedweapons/makarov.lua @@ -0,0 +1,82 @@ + + +minetest.register_tool("rangedweapons:makarov_rld", { + stack_max= 1, + wield_scale = {x=0.9,y=0.9,z=1.0}, + description = "", + range = 0, + loaded_gun = "rangedweapons:makarov", + groups = {not_in_creative_inventory = 1}, + inventory_image = "rangedweapons_makarov_rld.png", +}) +minetest.register_tool("rangedweapons:makarov_r", { + stack_max= 1, + wield_scale = {x=0.9,y=0.9,z=1.0}, + description = "", + range = 0, + rw_next_reload = "rangedweapons:makarov_rr", + load_sound = "rangedweapons_handgun_mag_in", + groups = {not_in_creative_inventory = 1}, + inventory_image = "rangedweapons_makarov.png", +}) + +minetest.register_tool("rangedweapons:makarov_rr", { + stack_max= 1, + wield_scale = {x=0.9,y=0.9,z=1.0}, + description = "", + range = 0, + rw_next_reload = "rangedweapons:makarov_rrr", + load_sound = "rangedweapons_reload_a", + groups = {not_in_creative_inventory = 1}, + inventory_image = "rangedweapons_makarov.png", +}) + +minetest.register_tool("rangedweapons:makarov_rrr", { + stack_max= 1, + wield_scale = {x=0.9,y=0.9,z=1.0}, + description = "", + range = 0, + groups = {not_in_creative_inventory = 1}, + rw_next_reload = "rangedweapons:makarov", + load_sound = "rangedweapons_reload_b", + inventory_image = "rangedweapons_makarov_rld.png", +}) + + +minetest.register_tool("rangedweapons:makarov", { + description = "" ..core.colorize("#35cdff","Makarov pistol\n") ..core.colorize("#FFFFFF", "Gun damage: 3\n")..core.colorize("#FFFFFF", "Accuracy: 90%\n") ..core.colorize("#FFFFFF", "gun knockback: 3\n") ..core.colorize("#FFFFFF", "Gun crit chance: 10%\n")..core.colorize("#FFFFFF", "Critical efficiency: 2x\n") ..core.colorize("#FFFFFF", "Reload delay: 1.1\n")..core.colorize("#FFFFFF", "Clip size: 8\n") ..core.colorize("#FFFFFF", "Ammunition: 9x19mm Parabellum\n") ..core.colorize("#FFFFFF", "Rate of fire: 0.5\n") ..core.colorize("#FFFFFF", "Gun type: Handgun\n") ..core.colorize("#FFFFFF", "Bullet velocity: 20"), + range = 0, + wield_scale = {x=0.9,y=0.9,z=1.0}, + inventory_image = "rangedweapons_makarov.png", + RW_gun_capabilities = { + gun_damage = {fleshy=3,knockback=3}, + gun_crit = 10, + gun_critEffc = 2.0, + suitable_ammo = {{"rangedweapons:9mm",8}}, + gun_skill = {"handgun_skill",40}, + gun_magazine = "rangedweapons:handgun_mag_black", + gun_icon = "rangedweapons_makarov_icon.png", + gun_unloaded = "rangedweapons:makarov_r", + gun_cooling = "rangedweapons:makarov_rld", + gun_velocity = 20, + gun_accuracy = 90, + gun_cooldown = 0.5, + gun_reload = 1.1/4, + gun_projectiles = 1, + gun_smokeSize = 5, + has_shell = 1, + gun_durability = 450, + gun_unload_sound = "rangedweapons_handgun_mag_out", + gun_sound = "rangedweapons_glock", + }, + on_secondary_use = function(itemstack, user, pointed_thing) +rangedweapons_reload_gun(itemstack, user) +return itemstack +end, + on_use = function(itemstack, user, pointed_thing) +rangedweapons_shoot_gun(itemstack, user) +return itemstack + end, +}) + + diff --git a/mods/rangedweapons/milkor.lua b/mods/rangedweapons/milkor.lua new file mode 100644 index 00000000..2afc9ce9 --- /dev/null +++ b/mods/rangedweapons/milkor.lua @@ -0,0 +1,47 @@ + +minetest.register_tool("rangedweapons:milkor_rld", { + stack_max= 1, + range = 0, + wield_scale = {x=1.75,y=1.75,z=2.0}, + description = "", + loaded_gun = "rangedweapons:milkor", + groups = {not_in_creative_inventory = 1}, + inventory_image = "rangedweapons_milkor_rld.png", +}) + + +minetest.register_tool("rangedweapons:milkor", { + description = "" ..core.colorize("#35cdff","Milkor MGL\n") ..core.colorize("#FFFFFF", "Direct contact damage: 15\n")..core.colorize("#FFFFFF", "Accuracy: 96%\n") ..core.colorize("#FFFFFF", "Direct contact knockback: 25\n") ..core.colorize("#FFFFFF", "Critical chance: 9%\n") ..core.colorize("#FFFFFF", "Critical efficiency: 3.0x\n") ..core.colorize("#FFFFFF", "Ammunition: 40mm grenades\n") ..core.colorize("#FFFFFF", "Reload time: 0.75\n") ..core.colorize("#FFFFFF", "Rate of fire: 0.35\n") ..core.colorize("#FFFFFF", "Gun gravity: 1\n") ..core.colorize("#FFFFFF", "Clip Size: 6\n")..core.colorize("#FFFFFF", "Gun type: grenade launcher\n") ..core.colorize("#FFFFFF", "Bullet velocity: 30"), + range = 0, + wield_scale = {x=1.75,y=1.75,z=2.0}, + inventory_image = "rangedweapons_milkor.png", +RW_gun_capabilities = { + gun_damage = {fleshy=15,knockback=25}, + gun_crit = 9, + gun_critEffc = 3.0, + suitable_ammo = {{"rangedweapons:40mm",6}}, + gun_skill = {"",1}, + gun_magazine = "rangedweapons:shell_grenadedrop", + gun_icon = "rangedweapons_milkor_icon.png", + gun_unloaded = "rangedweapons:milkor_rld", + gun_cooling = "rangedweapons:milkor", + gun_velocity = 30, + gun_accuracy = 96, + gun_cooldown = 0.35, + gun_reload = 0.75, + gun_projectiles = 1, + gun_durability = 225, + gun_smokeSize = 15, + gun_gravity = 1, + gun_unload_sound = "rangedweapons_shell_insert", + gun_sound = "rangedweapons_rocket", + }, + on_use = function(itemstack, user, pointed_thing) +rangedweapons_shoot_gun(itemstack, user) +return itemstack + end, + on_secondary_use = function(itemstack, user, pointed_thing) +rangedweapons_single_load_gun(itemstack, user) +return itemstack +end, +}) diff --git a/mods/rangedweapons/minigun.lua b/mods/rangedweapons/minigun.lua new file mode 100644 index 00000000..2a442a02 --- /dev/null +++ b/mods/rangedweapons/minigun.lua @@ -0,0 +1,52 @@ +if minetest.settings:get_bool("minigun_aswell") then + +minetest.register_tool("rangedweapons:minigun_r", { + stack_max= 1, + wield_scale = {x=3.0,y=3.0,z=3.0}, + description = "", + rw_next_reload = "rangedweapons:minigun", + load_sound = "rangedweapons_rifle_clip_in", + range = 0, + groups = {not_in_creative_inventory = 1}, + inventory_image = "rangedweapons_minigun_rld.png", +}) + + minetest.register_tool("rangedweapons:minigun", { + stack_max= 1, + wield_scale = {x=3.0,y=3.0,z=3.0}, + description = "" ..core.colorize("#35cdff","minigun\n") ..core.colorize("#FFFFFF", "Gun damage: 10\n") ..core.colorize("#FFFFFF", "accuracy: 50%\n") ..core.colorize("#FFFFFF", "Gun knockback: 8\n") ..core.colorize("#FFFFFF", "Gun Critical chance: 14%\n")..core.colorize("#FFFFFF", "Critical efficiency: 3.0x\n") ..core.colorize("#FFFFFF", "Reload delay: 2.0\n") ..core.colorize("#FFFFFF", "Clip size: 100\n") ..core.colorize("#FFFFFF", "Ammunition: 7.62mm rounds\n") ..core.colorize("#FFFFFF", "Rate of fire: 0.04(full-auto)\n") ..core.colorize("#FFFFFF", "Gun type: heavy machinegun\n") ..core.colorize("#FFFFFF", "Block penetration: 15%\n") +..core.colorize("#FFFFFF", "Enemy penetration: 33%\n") ..core.colorize("#FFFFFF", "Bullet velocity: 70"), + range = 0, + inventory_image = "rangedweapons_minigun.png", + RW_gun_capabilities = { + automatic_gun = 1, + gun_damage = {fleshy=10,knockback=8}, + gun_crit = 14, + gun_critEffc = 3.0, + suitable_ammo = {{"rangedweapons:762mm",200}}, + gun_skill = {"heavy_skill",100}, + gun_icon = "rangedweapons_minigun_icon.png", + gun_unloaded = "rangedweapons:minigun_r", + gun_velocity = 70, + gun_accuracy = 50, + gun_cooldown = 0.04, + gun_reload = 2.0, + gun_projectiles = 1, + has_shell = 1, + gun_gravity = 0, + gun_durability = 4000, + gun_smokeSize = 5, + gun_mob_penetration = 33, + gun_node_penetration = 15, + gun_unload_sound = "rangedweapons_rifle_clip_out", + gun_sound = "rangedweapons_machinegun", + }, + on_secondary_use = function(itemstack, user, pointed_thing) +rangedweapons_reload_gun(itemstack, user) +return itemstack +end, + + inventory_image = "rangedweapons_minigun.png", +}) + +end \ No newline at end of file