From a3308e440418e1eee935969fd65569a851b2ba35 Mon Sep 17 00:00:00 2001 From: Misael Roman Date: Mon, 26 Nov 2012 17:21:16 -0600 Subject: [PATCH] Added SMGS added all the machine guns....all of them shoot there own ammo --- mtduty/README.txt | 1 + mtduty_smg/README.txt | 1 + mtduty_smg/depends.txt | 1 + mtduty_smg/init.lua | 470 ++++++++++++++++++++ mtduty_smg/textures/ak74u.png | Bin 0 -> 303 bytes mtduty_smg/textures/ak74u_ammo.png | Bin 0 -> 264 bytes mtduty_smg/textures/kiparis.png | Bin 0 -> 326 bytes mtduty_smg/textures/kiparis_ammo.png | Bin 0 -> 268 bytes mtduty_smg/textures/mac11.png | Bin 0 -> 356 bytes mtduty_smg/textures/mac11_ammo.png | Bin 0 -> 243 bytes mtduty_smg/textures/mp5k.png | Bin 0 -> 327 bytes mtduty_smg/textures/mp5k_ammo.png | Bin 0 -> 243 bytes mtduty_smg/textures/mpl.png | Bin 0 -> 358 bytes mtduty_smg/textures/mpl_ammo.png | Bin 0 -> 268 bytes mtduty_smg/textures/mtduty_bullet1.png | Bin 0 -> 306 bytes mtduty_smg/textures/mtduty_bullet1_back.png | Bin 0 -> 187 bytes mtduty_smg/textures/mtduty_ironstick.png | Bin 0 -> 255 bytes mtduty_smg/textures/mtduty_rawbullet1.png | Bin 0 -> 281 bytes mtduty_smg/textures/mtduty_usedbullet1.png | Bin 0 -> 293 bytes mtduty_smg/textures/pm63.png | Bin 0 -> 332 bytes mtduty_smg/textures/pm63_ammo.png | Bin 0 -> 243 bytes mtduty_smg/textures/skorpion.png | Bin 0 -> 317 bytes mtduty_smg/textures/skorpion_ammo.png | Bin 0 -> 246 bytes mtduty_smg/textures/spectre.png | Bin 0 -> 345 bytes mtduty_smg/textures/spectre_ammo.png | Bin 0 -> 236 bytes mtduty_smg/textures/uzi.png | Bin 0 -> 356 bytes mtduty_smg/textures/uzi_ammo.png | Bin 0 -> 243 bytes 27 files changed, 473 insertions(+) create mode 100644 mtduty/README.txt create mode 100644 mtduty_smg/README.txt create mode 100644 mtduty_smg/depends.txt create mode 100644 mtduty_smg/init.lua create mode 100644 mtduty_smg/textures/ak74u.png create mode 100644 mtduty_smg/textures/ak74u_ammo.png create mode 100644 mtduty_smg/textures/kiparis.png create mode 100644 mtduty_smg/textures/kiparis_ammo.png create mode 100644 mtduty_smg/textures/mac11.png create mode 100644 mtduty_smg/textures/mac11_ammo.png create mode 100644 mtduty_smg/textures/mp5k.png create mode 100644 mtduty_smg/textures/mp5k_ammo.png create mode 100644 mtduty_smg/textures/mpl.png create mode 100644 mtduty_smg/textures/mpl_ammo.png create mode 100644 mtduty_smg/textures/mtduty_bullet1.png create mode 100644 mtduty_smg/textures/mtduty_bullet1_back.png create mode 100644 mtduty_smg/textures/mtduty_ironstick.png create mode 100644 mtduty_smg/textures/mtduty_rawbullet1.png create mode 100644 mtduty_smg/textures/mtduty_usedbullet1.png create mode 100644 mtduty_smg/textures/pm63.png create mode 100644 mtduty_smg/textures/pm63_ammo.png create mode 100644 mtduty_smg/textures/skorpion.png create mode 100644 mtduty_smg/textures/skorpion_ammo.png create mode 100644 mtduty_smg/textures/spectre.png create mode 100644 mtduty_smg/textures/spectre_ammo.png create mode 100644 mtduty_smg/textures/uzi.png create mode 100644 mtduty_smg/textures/uzi_ammo.png diff --git a/mtduty/README.txt b/mtduty/README.txt new file mode 100644 index 0000000..da7d2bf --- /dev/null +++ b/mtduty/README.txt @@ -0,0 +1 @@ +THIS FOLDER CONTAINS ALL PISTOLS OF THE MOD \ No newline at end of file diff --git a/mtduty_smg/README.txt b/mtduty_smg/README.txt new file mode 100644 index 0000000..a2e300b --- /dev/null +++ b/mtduty_smg/README.txt @@ -0,0 +1 @@ +THIS FOLDER CONTAINS ALL SMGS OF THE MOD \ No newline at end of file diff --git a/mtduty_smg/depends.txt b/mtduty_smg/depends.txt new file mode 100644 index 0000000..331d858 --- /dev/null +++ b/mtduty_smg/depends.txt @@ -0,0 +1 @@ +default \ No newline at end of file diff --git a/mtduty_smg/init.lua b/mtduty_smg/init.lua new file mode 100644 index 0000000..93b46d1 --- /dev/null +++ b/mtduty_smg/init.lua @@ -0,0 +1,470 @@ +-- Call of Duty Mod by LandMine! + +--AMMO (Bullet properties) + +MP5K_AMMO_DAMAGE=2 +MP5K_AMMO_GRAVITY=9 +MP5K_AMMO_VELOCITY=20 + +MAC11_AMMO_DAMAGE=3 +MAC11_AMMO_GRAVITY=7 +MAC11_AMMO_VELOCITY=20 + +SPECTRE_AMMO_DAMAGE=3 +SPECTRE_AMMO_GRAVITY=5 +SPECTRE_AMMO_VELOCITY=22 + +SKORPION_AMMO_DAMAGE=5 +SKORPION_AMMO_GRAVITY=5 +SKORPION_AMMO_VELOCITY=25 + +AK74U_AMMO_DAMAGE=4 +AK74U_AMMO_GRAVITY=5 +AK74U_AMMO_VELOCITY=25 + +MPL_AMMO_DAMAGE=2 +MPL_AMMO_GRAVITY=9 +MPL_AMMO_VELOCITY=20 + +UZI_AMMO_DAMAGE=3 +UZI_AMMO_GRAVITY=7 +UZI_AMMO_VELOCITY=20 + +PM63_AMMO_DAMAGE=3 +PM63_AMMO_GRAVITY=5 +PM63_AMMO_VELOCITY=22 + +KIPARIS_AMMO_DAMAGE=5 +KIPARIS_AMMO_GRAVITY=5 +KIPARIS_AMMO_VELOCITY=25 + +----MP5K AMMO---- +mtduty_shoot_mp5k_ammo=function (item, player, pointed_thing) + -- Check if bullets in Inventory and remove one of them + if player:get_inventory():contains_item("main", "mtduty_smg:mp5k_ammo") then + player:get_inventory():remove_item("main", "mtduty_smg:mp5k_ammo") + + -- Shoot bullet + local playerpos=player:getpos() + local obj=minetest.env:add_entity({x=playerpos.x,y=playerpos.y+1.5,z=playerpos.z}, "mtduty_smg:mp5k_ammo_entity") + local dir=player:get_look_dir() + obj:setvelocity({x=dir.x*MP5K_AMMO_VELOCITY, y=dir.y*MP5K_AMMO_VELOCITY, z=dir.z*MP5K_AMMO_VELOCITY}) + obj:setacceleration({x=dir.x*-3, y=-MP5K_AMMO_GRAVITY, z=dir.z*-3}) + -- Bullet shot, leave loop that checks for bullets in inventory + end + return +end + +----END OF MP5K AMMO--- + +----MAC11 AMMO---- +mtduty_shoot_mac11_ammo=function (item, player, pointed_thing) + -- Check if bullets in Inventory and remove one of them + if player:get_inventory():contains_item("main", "mtduty_smg:mac11_ammo") then + player:get_inventory():remove_item("main", "mtduty_smg:mac11_ammo") + + -- Shoot bullet + local playerpos=player:getpos() + local obj=minetest.env:add_entity({x=playerpos.x,y=playerpos.y+1.5,z=playerpos.z}, "mtduty_smg:mac11_ammo_entity") + local dir=player:get_look_dir() + obj:setvelocity({x=dir.x*MAC11_AMMO_VELOCITY, y=dir.y*MAC11_AMMO_VELOCITY, z=dir.z*MAC11_AMMO_VELOCITY}) + obj:setacceleration({x=dir.x*-3, y=-MAC11_AMMO_GRAVITY, z=dir.z*-3}) + -- Bullet shot, leave loop that checks for bullets in inventory + end + return +end + +----END OF MAC11 AMMO--- + +----SPECTRE AMMO---- +mtduty_shoot_spectre_ammo=function (item, player, pointed_thing) + -- Check if bullets in Inventory and remove one of them + if player:get_inventory():contains_item("main", "mtduty_smg:spectre_ammo") then + player:get_inventory():remove_item("main", "mtduty_smg:spectre_ammo") + + -- Shoot bullet + local playerpos=player:getpos() + local obj=minetest.env:add_entity({x=playerpos.x,y=playerpos.y+1.5,z=playerpos.z}, "mtduty_smg:spectre_ammo_entity") + local dir=player:get_look_dir() + obj:setvelocity({x=dir.x*SPECTRE_AMMO_VELOCITY, y=dir.y*SPECTRE_AMMO_VELOCITY, z=dir.z*SPECTRE_AMMO_VELOCITY}) + obj:setacceleration({x=dir.x*-3, y=-SPECTRE_AMMO_GRAVITY, z=dir.z*-3}) + -- Bullet shot, leave loop that checks for bullets in inventory + end + return +end + +----END OF SPECTRE AMMO--- + +----SKORPION AMMO---- +mtduty_shoot_skorpion_ammo=function (item, player, pointed_thing) + -- Check if bullets in Inventory and remove one of them + if player:get_inventory():contains_item("main", "mtduty_smg:skorpion_ammo") then + player:get_inventory():remove_item("main", "mtduty_smg:skorpion_ammo") + + -- Shoot bullet + local playerpos=player:getpos() + local obj=minetest.env:add_entity({x=playerpos.x,y=playerpos.y+1.5,z=playerpos.z}, "mtduty_smg:skorpion_ammo_entity") + local dir=player:get_look_dir() + obj:setvelocity({x=dir.x*SKORPION_AMMO_VELOCITY, y=dir.y*SKORPION_AMMO_VELOCITY, z=dir.z*SKORPION_AMMO_VELOCITY}) + obj:setacceleration({x=dir.x*-3, y=-SKORPION_AMMO_GRAVITY, z=dir.z*-3}) + -- Bullet shot, leave loop that checks for bullets in inventory + end + return +end + +----END OF SKORPION AMMO--- + +----AK74U AMMO---- +mtduty_shoot_ak74u_ammo=function (item, player, pointed_thing) + -- Check if bullets in Inventory and remove one of them + if player:get_inventory():contains_item("main", "mtduty_smg:ak74u_ammo") then + player:get_inventory():remove_item("main", "mtduty_smg:ak74u_ammo") + + -- Shoot bullet + local playerpos=player:getpos() + local obj=minetest.env:add_entity({x=playerpos.x,y=playerpos.y+1.5,z=playerpos.z}, "mtduty_smg:ak74u_ammo_entity") + local dir=player:get_look_dir() + obj:setvelocity({x=dir.x*AK74U_AMMO_VELOCITY, y=dir.y*AK74U_AMMO_VELOCITY, z=dir.z*AK74U_AMMO_VELOCITY}) + obj:setacceleration({x=dir.x*-3, y=-AK74U_AMMO_GRAVITY, z=dir.z*-3}) + -- Bullet shot, leave loop that checks for bullets in inventory + end + return +end + +----END OF AK74U AMMO--- + +----MPL AMMO---- +mtduty_shoot_mpl_ammo=function (item, player, pointed_thing) + -- Check if bullets in Inventory and remove one of them + if player:get_inventory():contains_item("main", "mtduty_smg:mpl_ammo") then + player:get_inventory():remove_item("main", "mtduty_smg:mpl_ammo") + + -- Shoot bullet + local playerpos=player:getpos() + local obj=minetest.env:add_entity({x=playerpos.x,y=playerpos.y+1.5,z=playerpos.z}, "mtduty_smg:mpl_ammo_entity") + local dir=player:get_look_dir() + obj:setvelocity({x=dir.x*MPL_AMMO_VELOCITY, y=dir.y*MPL_AMMO_VELOCITY, z=dir.z*MPL_AMMO_VELOCITY}) + obj:setacceleration({x=dir.x*-3, y=-MPL_AMMO_GRAVITY, z=dir.z*-3}) + -- Bullet shot, leave loop that checks for bullets in inventory + end + return +end + +----END OF MPL AMMO--- + +----UZI AMMO---- +mtduty_shoot_uzi_ammo=function (item, player, pointed_thing) + -- Check if bullets in Inventory and remove one of them + if player:get_inventory():contains_item("main", "mtduty_smg:uzi_ammo") then + player:get_inventory():remove_item("main", "mtduty_smg:uzi_ammo") + + -- Shoot bullet + local playerpos=player:getpos() + local obj=minetest.env:add_entity({x=playerpos.x,y=playerpos.y+1.5,z=playerpos.z}, "mtduty_smg:uzi_ammo_entity") + local dir=player:get_look_dir() + obj:setvelocity({x=dir.x*UZI_AMMO_VELOCITY, y=dir.y*UZI_AMMO_VELOCITY, z=dir.z*UZI_AMMO_VELOCITY}) + obj:setacceleration({x=dir.x*-3, y=-UZI_AMMO_GRAVITY, z=dir.z*-3}) + -- Bullet shot, leave loop that checks for bullets in inventory + end + return +end + +----END OF UZI AMMO--- + +----PM63 AMMO---- +mtduty_shoot_pm63_ammo=function (item, player, pointed_thing) + -- Check if bullets in Inventory and remove one of them + if player:get_inventory():contains_item("main", "mtduty_smg:pm63_ammo") then + player:get_inventory():remove_item("main", "mtduty_smg:pm63_ammo") + + -- Shoot bullet + local playerpos=player:getpos() + local obj=minetest.env:add_entity({x=playerpos.x,y=playerpos.y+1.5,z=playerpos.z}, "mtduty_smg:pm63_ammo_entity") + local dir=player:get_look_dir() + obj:setvelocity({x=dir.x*PM63_AMMO_VELOCITY, y=dir.y*PM63_AMMO_VELOCITY, z=dir.z*PM63_AMMO_VELOCITY}) + obj:setacceleration({x=dir.x*-3, y=-PM63_AMMO_GRAVITY, z=dir.z*-3}) + -- Bullet shot, leave loop that checks for bullets in inventory + end + return +end + +----END OF PM63 AMMO--- + +----KIPARIS AMMO---- +mtduty_shoot_kiparis_ammo=function (item, player, pointed_thing) + -- Check if bullets in Inventory and remove one of them + if player:get_inventory():contains_item("main", "mtduty_smg:kiparis_ammo") then + player:get_inventory():remove_item("main", "mtduty_smg:kiparis_ammo") + + -- Shoot bullet + local playerpos=player:getpos() + local obj=minetest.env:add_entity({x=playerpos.x,y=playerpos.y+1.5,z=playerpos.z}, "mtduty_smg:kiparis_ammo_entity") + local dir=player:get_look_dir() + obj:setvelocity({x=dir.x*KIPARIS_AMMO_VELOCITY, y=dir.y*KIPARIS_AMMO_VELOCITY, z=dir.z*KIPARIS_AMMO_VELOCITY}) + obj:setacceleration({x=dir.x*-3, y=-KIPARIS_AMMO_GRAVITY, z=dir.z*-3}) + -- Bullet shot, leave loop that checks for bullets in inventory + end + return +end + +----END OF KIPARIS AMMO--- + +------------------------------------------- +------------------------------------------- + +----SMGS +minetest.register_craftitem("mtduty_smg:mp5k", { + image = "mp5k.png", + on_place_on_ground = minetest.craftitem_place_item, + on_use = mtduty_shoot_mp5k_ammo, + description = "Mp5k SMG" +}) +minetest.register_craftitem("mtduty_smg:mac11", { + image = "mac11.png", + on_place_on_ground = minetest.craftitem_place_item, + on_use = mtduty_shoot_mac11_ammo, + description = "Mac11 SMG" +}) + +minetest.register_craftitem("mtduty_smg:spectre", { + image = "spectre.png", + on_place_on_ground = minetest.craftitem_place_item, + on_use = mtduty_shoot_spectre_ammo, + description = "Spectre SMG" +}) + +minetest.register_craftitem("mtduty_smg:skorpion", { + image = "skorpion.png", + on_place_on_ground = minetest.craftitem_place_item, + on_use = mtduty_shoot_skorpion_ammo, + description = "Skorpion SMG" +}) + +minetest.register_craftitem("mtduty_smg:ak74u", { + image = "ak74u.png", + on_place_on_ground = minetest.craftitem_place_item, + on_use = mtduty_shoot_ak74u_ammo, + description = "Ak74u SMG" +}) + +minetest.register_craftitem("mtduty_smg:mpl", { + image = "mpl.png", + on_place_on_ground = minetest.craftitem_place_item, + on_use = mtduty_shoot_mpl_ammo, + description = "Mpl SMG" +}) + +minetest.register_craftitem("mtduty_smg:uzi", { + image = "uzi.png", + on_place_on_ground = minetest.craftitem_place_item, + on_use = mtduty_shoot_uzi_ammo, + description = "Uzi SMG" +}) + +minetest.register_craftitem("mtduty_smg:pm63", { + image = "pm63.png", + on_place_on_ground = minetest.craftitem_place_item, + on_use = mtduty_shoot_pm63_ammo, + description = "Pm63 SMG" +}) + +minetest.register_craftitem("mtduty_smg:kiparis", { + image = "kiparis.png", + on_place_on_ground = minetest.craftitem_place_item, + on_use = mtduty_shoot_kiparis_ammo, + description = "Kiparis SMG" +}) + +----End Of SMGS + +------------------------------------------- +------------------------------------------- + +----Ammo Register +minetest.register_craftitem("mtduty_smg:mp5k_ammo", { + image = "mp5k_ammo.png", + on_place_on_ground = minetest.craftitem_place_item, + description = "Mp5k Ammo" +}) + +minetest.register_craftitem("mtduty_smg:mac11_ammo", { + image = "mac11_ammo.png", + on_place_on_ground = minetest.craftitem_place_item, + description = "Mac11 Ammo" +}) + +minetest.register_craftitem("mtduty_smg:spectre_ammo", { + image = "spectre_ammo.png", + on_place_on_ground = minetest.craftitem_place_item, + description = "Spectre Ammo" +}) + +minetest.register_craftitem("mtduty_smg:skorpion_ammo", { + image = "skorpion_ammo.png", + on_place_on_ground = minetest.craftitem_place_item, + description = "Skorpion Ammo" +}) + +minetest.register_craftitem("mtduty_smg:ak74u_ammo", { + image = "ak74u_ammo.png", + on_place_on_ground = minetest.craftitem_place_item, + description = "Ak74u Ammo" +}) + +minetest.register_craftitem("mtduty_smg:mpl_ammo", { + image = "mpl_ammo.png", + on_place_on_ground = minetest.craftitem_place_item, + description = "Mpl Ammo" +}) + +minetest.register_craftitem("mtduty_smg:uzi_ammo", { + image = "uzi_ammo.png", + on_place_on_ground = minetest.craftitem_place_item, + description = "Uzi Ammo" +}) + +minetest.register_craftitem("mtduty_smg:pm63_ammo", { + image = "pm63_ammo.png", + on_place_on_ground = minetest.craftitem_place_item, + description = "Pm63 Ammo" +}) + +minetest.register_craftitem("mtduty_smg:kiparis_ammo", { + image = "kiparis_ammo.png", + on_place_on_ground = minetest.craftitem_place_item, + description = "Kiparis Ammo" +}) + +----End of Ammo Register + +------------------------------------------- +------------------------------------------- + +minetest.register_craftitem("mtduty_smg:ironstick", { + image = "mtduty_ironstick.png", + on_place_on_ground = minetest.craftitem_place_item, + description = "Iron Stick" +}) +minetest.register_craftitem("mtduty_smg:usedbullet1", { + image = "mtduty_usedbullet1.png", + on_place_on_ground = minetest.craftitem_place_item, + description = "Useless Bullet" +}) +minetest.register_craftitem("mtduty_smg:rawbullet1", { + image = "mtduty_rawbullet1.png", + on_place_on_ground = minetest.craftitem_place_item, + description = "Raw Bullet" +}) +minetest.register_craft({ + type = "cooking", + output = "mtduty_smg:mp5k_ammo", + recipe = "mtduty_smg:rawbullet1", +}) +--cookresult_itemstring = 'mtduty_smg:mp5k_ammo 1', + +------------------------------------------- +------------------------------------------- + +-- The Bullet Entity + +MTDUTY_BULLET_ENTITY={ + physical = false, + timer=0, + textures = {"mtduty_bullet1_back.png"}, + lastpos={}, + collisionbox = {0,0,0,0,0,0}, +} + +------------------------------------------- +------------------------------------------- + +-- Arrow_entity.on_step()--> called when bullet is moving +MTDUTY_BULLET_ENTITY.on_step = function(self, dtime) + self.timer=self.timer+dtime + local pos = self.object:getpos() + local node = minetest.env:get_node(pos) + +------------------------------------------- +------------------------------------------- + + -- When bullet is away from player (after 0.2 seconds): Cause damage to mobs and players + if self.timer>0.2 then + local objs = minetest.env:get_objects_inside_radius({x=pos.x,y=pos.y,z=pos.z}, 2) + for k, obj in pairs(objs) do + if obj:get_entity_name() ~= "mtduty_smg:mp5k_ammo_entity" then + obj:set_hp(obj:get_hp()-MP5K_AMMO_DAMAGE) + + else if obj:get_entity_name() ~= "mtduty_smg:mac11_ammo_entity" then + obj:set_hp(obj:get_hp()-MAC11_AMMO_DAMAGE) + + else if obj:get_entity_name() ~= "mtduty_smg:spectre_ammo_entity" then + obj:set_hp(obj:get_hp()-SPECTRE_AMMO_DAMAGE) + + else if obj:get_entity_name() ~= "mtduty_smg:skorpion_ammo_entity" then + obj:set_hp(obj:get_hp()-SKORPION_AMMO_DAMAGE) + + else if obj:get_entity_name() ~= "mtduty_smg:ak74u_ammo_entity" then + obj:set_hp(obj:get_hp()-AK74U_AMMO_DAMAGE) + + else if obj:get_entity_name() ~= "mtduty_smg:mpl_ammo_entity" then + obj:set_hp(obj:get_hp()-MPL_AMMO_DAMAGE) + + else if obj:get_entity_name() ~= "mtduty_smg:uzi_ammo_entity" then + obj:set_hp(obj:get_hp()-UZI_AMMO_DAMAGE) + + else if obj:get_entity_name() ~= "mtduty_smg:pm63_ammo_entity" then + obj:set_hp(obj:get_hp()-PM63_AMMO_DAMAGE) + + else if obj:get_entity_name() ~= "mtduty_smg:kiparis_ammo_entity" then + obj:set_hp(obj:get_hp()-KIPARIS_AMMO_DAMAGE) + + if obj:get_hp()<=0 then + obj:remove() + end + self.object:remove() + end + end + end + end + end + end + end + end + end + end + end + + +------------------------------------------- +------------------------------------------- + + -- Become item when hitting a node + if self.lastpos.x~=nil then --If there is no lastpos for some reason + if node.name ~= "air" then + minetest.env:add_item(self.lastpos, 'mtduty_smg:usedbullet1 1') + self.object:remove() + end + end + self.lastpos={x=pos.x, y=pos.y, z=pos.z} -- Set lastpos-->Item will be added at last pos outside the node +end + +------------------------------------------- +------------------------------------------- + +minetest.register_entity("mtduty_smg:mp5k_ammo_entity", MTDUTY_BULLET_ENTITY) +minetest.register_entity("mtduty_smg:mac11_ammo_entity", MTDUTY_BULLET_ENTITY) +minetest.register_entity("mtduty_smg:spectre_ammo_entity", MTDUTY_BULLET_ENTITY) +minetest.register_entity("mtduty_smg:skorpion_ammo_entity", MTDUTY_BULLET_ENTITY) +minetest.register_entity("mtduty_smg:ak74u_ammo_entity", MTDUTY_BULLET_ENTITY) +minetest.register_entity("mtduty_smg:mpl_ammo_entity", MTDUTY_BULLET_ENTITY) +minetest.register_entity("mtduty_smg:uzi_ammo_entity", MTDUTY_BULLET_ENTITY) +minetest.register_entity("mtduty_smg:pm63_ammo_entity", MTDUTY_BULLET_ENTITY) +minetest.register_entity("mtduty_smg:kiparis_ammo_entity", MTDUTY_BULLET_ENTITY) + +------------------------------------------- +------------------------------------------- + +--CRAFTS + + +print ("[mtduty_smg] Loaded!") diff --git a/mtduty_smg/textures/ak74u.png b/mtduty_smg/textures/ak74u.png new file mode 100644 index 0000000000000000000000000000000000000000..9c25a1754b9a5ea1bc2d1e8e943b500454b4ea34 GIT binary patch literal 303 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`Ea{HEjtmSN`?>!lvI6;>1s;*b z3=DjSK$uZf!>a)($X?><>&kwcjgyCwQ8Ah2Do{wO#5JNMI6tkVJh3R1As{g`uSCz! zHAJDzSkF|?(7@nJ(L$iA8J;eVAr}5iCo}RjC~&yu#-3SRDYV|}(I39RjxcF&>Hi;{ zeO#vea}n=fuKRn}{>6sEvp*yiYPM=7o(S`FQd+P$)IllF$Kl*efqBB4BXyV-T+8}) z^sSk~A8oNGq6d#n7@0?J4Z2wZh>8$LQ1oDF>Vn!S)lT*e11%3tX0G+o^+n@ s`{51d|8FrC9iDz{SH^sX_Q_uS>EEljv&T;WI+20F)78&qol`;+0En_?p#T5? literal 0 HcmV?d00001 diff --git a/mtduty_smg/textures/ak74u_ammo.png b/mtduty_smg/textures/ak74u_ammo.png new file mode 100644 index 0000000000000000000000000000000000000000..4312860db0b7985c7d3a42cfee368ed7f621c399 GIT binary patch literal 264 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`Ea{HEjtmSN`?>!lvI6;>1s;*b z3=DjSK$uZf!>a)($X?><>&kwcjgyCw{RG3p2S6dI64!{5;QX|b^2DN4hJeJ(yb?V> z*ARs=V?9$nLj!{^MGJwd3O!vMLoEFFP7dTdpupj5Ddqn7Sb%7 literal 0 HcmV?d00001 diff --git a/mtduty_smg/textures/kiparis.png b/mtduty_smg/textures/kiparis.png new file mode 100644 index 0000000000000000000000000000000000000000..07ebe83788ec548f1028de4509323a6a6f4d5cf7 GIT binary patch literal 326 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`Ea{HEjtmSN`?>!lvI6;>1s;*b z3=Dh+L6~vJ#O${~LG}_)Usv|qY@9rdjEc!DSAjxOC9V-A!TD(=<%vb93;~Imc_n&& zt|1C##(JiDh6V;-iWUM@t@m_s46*QEI@yu0L4k+GwC+InJ)2MB_6apD=6~z8*6KAX z1ugbeo<2A4i=n^|9oA%((}c;R^9IFscBtPjz*^a*M3r1*Vg0g|9fNT z+&xS>6CSZWSj1KttEf=3QNlewPxQc}9bej<_`aOlz{`7JmUEbZ3JbezN%(U$C)LEu z4U=NU3>lLCzju+2cK@DpPWv^df(@g0jA7gxg`LdYDrM7mZ0qROzZmR4gExU?no{jH Qpwk&VUHx3vIVCg!0B#&|vj6}9 literal 0 HcmV?d00001 diff --git a/mtduty_smg/textures/kiparis_ammo.png b/mtduty_smg/textures/kiparis_ammo.png new file mode 100644 index 0000000000000000000000000000000000000000..1eadbe504a0bfd4857d2d80b898a585eedb5ae11 GIT binary patch literal 268 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`Ea{HEjtmSN`?>!lvI6;>1s;*b z3=Dh+L6~vJ#O${~LG}_)Usv|qY@9rd>?ar&J^%_ymAFQf1m~xflqVLYG6W=M=9TFA zxrQi|8S9zq85$UTDOw0rRqE;D7-Hd{{Nw+BduG)cN@o?iGxHgkFYuN0yh&}+W5^5( zoywZ*=xDbg@ryCT&9X_c4n1jeHa4u2oc>mV?SPZCSjG<~ez6H3A`YZ!+s)>bV(2o; zx!5-EP2eTQ6QU=iE!lvI6;>1s;*b z3=DjGK$vmro+3}6AbW|YuPgg)HclQ!M#W^7t3V;C64!{5;QX|b^2DN4hJeJ(yb?V> z*ARs=V?9$nLj!{^MGJwd&U(5yhFJI?oxGR#u!4Y_=MtVLr%ZMjty@sg{6g{ocLhWK z!$AES_2z<>q&aFH%l#GZUViM)b66qC_Q?9j3=8H8CEx#E7QB%1Mg#t{zmyfL6`fLyH$9usxF-}@b zEus})Udf!7J}Ic^TkZKshkf_>;|nouorw)t!0GlgwkE wt`Tms@taoM3rVBC#U58T9bd&{cQyW)^s3c$X~(bWfkKbL)78&qol`;+0O+QMe*gdg literal 0 HcmV?d00001 diff --git a/mtduty_smg/textures/mac11_ammo.png b/mtduty_smg/textures/mac11_ammo.png new file mode 100644 index 0000000000000000000000000000000000000000..4f933174ba9f4f6a4a8f252f0ff10bf3c7b82641 GIT binary patch literal 243 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`Ea{HEjtmSN`?>!lvI6;>1s;*b z3=DjGL736~_k^`TLG}_)Usv|qY@9rdjEc!DSAjxOC9V-A!TD(=<%vb93;~Imc_n&& zt|1C##(JiDh6V;-iWUM@#dx|nhFJI~|M>sko>_H<(piP>%xnhc3pFV{XIEFmGF-ZI z;lc-d0|S8^fm+^%n||B4C(QMqCf@PU{#=I2wVx5Z3a-X+;txKX7nMBnVc+pc)>ij| hnWpe$Z_P4B29KRbez9?LtpnP_;OXk;vd$@?2>?I9OjQ5? literal 0 HcmV?d00001 diff --git a/mtduty_smg/textures/mp5k.png b/mtduty_smg/textures/mp5k.png new file mode 100644 index 0000000000000000000000000000000000000000..b6a0cba12077b2fd4c21799618f07f2490f91d90 GIT binary patch literal 327 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`Ea{HEjtmSN`?>!lvI6;>1s;*b z3=DkxK$!8B)5ZfpLG}_)Usv|qY@9rdjEc!DSAjxOC9V-A!TD(=<%vb93;~Imc_n&& zt|1C##(JiDh6V;-iWUM@ZSZt)46*Q^I@yu0L4k+m;%0YY{$EmujeGw8XT8*>svY7W zX$8PKQbY7IYYs{X3qyLN0RS1`MhDwcH9)h`R!i_gTmh1p_)&U z{&HW8TA8NHKH>MiP3rMko0?osRZn5^_>`*W7YI+{e{30fB2?$>| zl60)eD}8?Tn9%~CJf$_xFh~t S`VXMn89ZJ6T-G@yGywnrkai3J literal 0 HcmV?d00001 diff --git a/mtduty_smg/textures/mp5k_ammo.png b/mtduty_smg/textures/mp5k_ammo.png new file mode 100644 index 0000000000000000000000000000000000000000..17d05da2ec1318addbedc55beb3daaedc2fbe083 GIT binary patch literal 243 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`Ea{HEjtmSN`?>!lvI6;>1s;*b z3=DkxK$!8B)5ZfpLG}_)Usv|qY@9rdjEc!DSAjxOC9V-A!TD(=<%vb93;~Imc_n&& zt|1C##(JiDh6V;-iWUM@#dx|nhFJI~|M>sko>_H<(piP>%xnhc3pFV{XIEFmGF)1- zYSo|kpdh9kfm+^%n||B4C(QMqCf@PU{#=I2wVx5Z3a-X+;txKX7nMBnVc+pc)>ij| hnWpe$Z_P4BhA#zMyg#wqEdtuZ;OXk;vd$@?2>@8eO%DJ7 literal 0 HcmV?d00001 diff --git a/mtduty_smg/textures/mpl.png b/mtduty_smg/textures/mpl.png new file mode 100644 index 0000000000000000000000000000000000000000..22da16f56f86e8e14d5546132e8d249441c76c30 GIT binary patch literal 358 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`Ea{HEjtmSN`?>!lvI6;>1s;*b z3=Dh+L6~vJ#O${~LG}_)Usv|qY@9rdjEc!DSAjxOC9V-A!TD(=<%vb93;~Imc_n&& zt|1C##(JiDh6V;-iWUM@o%eKc46*Q^I{BcWlOm5x;+tc_>i%*X2Zi?BWDD>9kR&Vi z@NUwg&Kw_se+T9#wi(pRpJrncWbF~C__aFynbJD>*mLT76-Oc^7_|1?U&j?$HX&%y z<3#@kALciP5*wHPAdvDbxb#lo%|P7yXNGyGnh`x<1aKD(hT{Yn9&`&}NkM-g6yeXr^R@B9CraX~AL y_sFc-2ez%#zLmLPSMha6ezkx5^}qR_d7Yo3Y@C;ob?!gVYYd*QelF{r5}E+)%!h~o literal 0 HcmV?d00001 diff --git a/mtduty_smg/textures/mpl_ammo.png b/mtduty_smg/textures/mpl_ammo.png new file mode 100644 index 0000000000000000000000000000000000000000..ed3af41c657aaa0508ec1ae06ebb3eec64edb8c5 GIT binary patch literal 268 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`Ea{HEjtmSN`?>!lvI6;>1s;*b z3=Dh+L6~vJ#O${~LG}_)Usv|qY@9rd>?ar&J^%_ymAFQf1m~xflqVLYG6W=M=9TFA zxrQi|8S9zq85$UTDOw0rRqE;D7-Hd{{Nw+BduG)cN@o?iGxHgkFYuN0yh&}+W61RL z=U{le#UOY?;um9vn`M(?9eUE{Y;0I3IsL5!+W{wOv5X%~{9+S6L>x%dwwui<#n5Gx zbFppSo4`wqCqz$3U3@GPJ@23agBahDG=nD1i4z<}q!}2}V;2Rb@tgwrmBG{1&t;uc GLK6UIja0}0 literal 0 HcmV?d00001 diff --git a/mtduty_smg/textures/mtduty_bullet1.png b/mtduty_smg/textures/mtduty_bullet1.png new file mode 100644 index 0000000000000000000000000000000000000000..071284ac2d088d8338756ab2ae50dad34f0699c7 GIT binary patch literal 306 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=fdzmUKs7M+SzC{oH>NS%G}c0*}aI z1_r)^Ak4U9V)k30pj3%#L`iUdT1k0gQ7S_~VrE{6o}X)oLYc9ish**M!Iz?iKvnBJ zT^vIq+}}=R66BDt0WL^1mdKI;Vst09@K_9smFU literal 0 HcmV?d00001 diff --git a/mtduty_smg/textures/mtduty_bullet1_back.png b/mtduty_smg/textures/mtduty_bullet1_back.png new file mode 100644 index 0000000000000000000000000000000000000000..02f68a4182aa552dda73b93a95582fbd66ffb527 GIT binary patch literal 187 zcmeAS@N?(olHy`uVBq!ia0vp^f*{Pn1|+R>-G2comUKs7M+SzC{oH>NS%G}c0*}aI z1_q%b5N3=^jeZOilqzwJC<)F_D=AMbN@WO0%*-p%^K%VRC^ObG)iX3O_)@eGsLI^a z#WBRfKl#u9|MtvB8B#cw&PZZDV7Ks!sPb8Xge%RD!lvI6;>1s;*b z3=Dh+L6~vJ#O${~L8%hgh?3y^w370~qEv=}#LT=BJwMkFg)(D3Q$0figD*u3fvT!K zT^vI!{FhF?&3izB!}WIVjYE=m4oKdxUwBW=G)d&(tPhoaHu-`(>ufocCI(HKvw2F8 zR+xSNfd&TWCJxTD4bdB#Vw?EY7ELRQ-*%Jvz!@Fw8)ptM>$ApHXx+GK(--?yfonC7 w-vc#^)~N@irfz+g&;RRg-<`H>;qpW5dw)$$k^i9719S$1r>mdKI;Vst08R~A`2YX_ literal 0 HcmV?d00001 diff --git a/mtduty_smg/textures/mtduty_rawbullet1.png b/mtduty_smg/textures/mtduty_rawbullet1.png new file mode 100644 index 0000000000000000000000000000000000000000..2cfff0f1536387cf43b10928c23a76206dd9a88e GIT binary patch literal 281 zcmeAS@N?(olHy`uVBq!ia0vp^A|TAc1|)ksWqE-VV{wqX6T`Z5GB1G~mUKs7M+SzC z{oH>NS%G|oWRD45bDP46hOx7_4S6Fo+k-*%fF5l;AAz zh%9Dc;5!V$jK}j=qyPn_N?apKg7ec#$`gxH83GbB^GfvmTtgJfjP*?Q3=Isv6fFd* zit%)D46*P}{`3F8J##4I35TqtRZ?uw&P4bRqPCp;#6U)3(PBVnpIq9;zkLzopr02m2Ud;kCd literal 0 HcmV?d00001 diff --git a/mtduty_smg/textures/mtduty_usedbullet1.png b/mtduty_smg/textures/mtduty_usedbullet1.png new file mode 100644 index 0000000000000000000000000000000000000000..6e552af041901b84c04026adabb108247f103e45 GIT binary patch literal 293 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=fdzmUKs7M+SzC{oH>NS%G}c0*}aI z1_r+UAk1jN8ms~olqzwJC<)F_D=AMbN@WO0%*-p%^K%VRC^ObG)iX3O_)@eGsA{37 zi(^QH``f7(IS(lCu)g)t)8JDoVQ4=gc2~{R$z_SXXD0I`rv*Pgzni;Fu0z5{o@s;3 z!lvI6;>1s;*b z3=Dj`L74IQk1J+CLG}_)Usv|qY@9rdjEc!DSAjxOC9V-A!TD(=<%vb93;~Imc_n&& zt|1C##(JiDh6V;-iWUM@ZS{0<46*P(I{6^)VFe!7xvRKKM8q6qEH=pq8)zLB+m`dl zY|C_)O^aCmoqm41Q9`-L>cRbNrht1hFGk%y&U=9Qs3Hr?7ezPoHy#VZU6>3~c3nIl zUKJ&Ng6X!-f8mOi!DKY!A^J1=O_C#%Enudb2k z6Fe_kEW>MlDu}DpvDR@t_YB6g_;Zpw<`}PAXEVK_e#!Kcv)JENep>OqPovfH_13O? Yd5!bp&D*wA06oCq>FVdQ&MBb@02OO`tN;K2 literal 0 HcmV?d00001 diff --git a/mtduty_smg/textures/pm63_ammo.png b/mtduty_smg/textures/pm63_ammo.png new file mode 100644 index 0000000000000000000000000000000000000000..4f933174ba9f4f6a4a8f252f0ff10bf3c7b82641 GIT binary patch literal 243 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`Ea{HEjtmSN`?>!lvI6;>1s;*b z3=DjGL736~_k^`TLG}_)Usv|qY@9rdjEc!DSAjxOC9V-A!TD(=<%vb93;~Imc_n&& zt|1C##(JiDh6V;-iWUM@#dx|nhFJI~|M>sko>_H<(piP>%xnhc3pFV{XIEFmGF-ZI z;lc-d0|S8^fm+^%n||B4C(QMqCf@PU{#=I2wVx5Z3a-X+;txKX7nMBnVc+pc)>ij| hnWpe$Z_P4B29KRbez9?LtpnP_;OXk;vd$@?2>?I9OjQ5? literal 0 HcmV?d00001 diff --git a/mtduty_smg/textures/skorpion.png b/mtduty_smg/textures/skorpion.png new file mode 100644 index 0000000000000000000000000000000000000000..33e6f442700dbda8e254b912c978ee4d5bf9345a GIT binary patch literal 317 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`Ea{HEjtmSN`?>!lvI6;>1s;*b z3=Dh+K$tP>S|=w^kiEpy*OmP?8z&DVqhd14RiKbmiEBhjaDG}zd16s2LqK9?UWuNc zYluRbv7V`(p@G4dqJ=W@A3!#uCMZQ_I)ZJ zYtpc-KU31#<(dB^8y-IXYq-|!lvI6;>1s;*b z3=DkxL735kHCP2G$X?><>&kwcjgyCwQ8Ah2Do{wO#5JNMI6tkVJh3R1As{g`uSCz! zHAJDzSkF|?(7@nJ(L$iAcuyC{5DWk0AOHW`Gpo)}I;+r~na#j_p(ds0?COeGhD&cA zKmHsa9xk3EP|NGEZLW^Eg7ktFD?E0IcYL%zm!Wd4Yz^ClMUv~eKm3%ov?^T29P_bn ko><20DV-;mitGk@D}QJH>V}QWfmShiy85}Sb4q9e06wfvpa1{> literal 0 HcmV?d00001 diff --git a/mtduty_smg/textures/spectre.png b/mtduty_smg/textures/spectre.png new file mode 100644 index 0000000000000000000000000000000000000000..1486067b95a143efa0ea1175d471f7d197dc843b GIT binary patch literal 345 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`Ea{HEjtmSN`?>!lvI6;>1s;*b z3=DkxL735kHCP2G$X?><>&kwcjgyCwQ8Ah2Do{wO#5JNMI6tkVJh3R1As{g`uSCz! zHAJDzSkF|?(7@nJ(L$iAL!K^9`DnK zkCBVO;nvm)gR`%T>@Mzds*pY3$s`ds`?%bZFo#o|7t*UwrL2&1sb0X*9~L9Kb?VDQ zPgg1)Td~~Ogzcr}Mm`n;;rsdFZv~~Zt{=0X&DwEUaoYz~1{M)vgBtV6$Co^;Oj>zs kjb}#X`lWYy!tNas-xuPZ{Pkm_H_$f>p00i_>zopr05J7^7XSbN literal 0 HcmV?d00001 diff --git a/mtduty_smg/textures/spectre_ammo.png b/mtduty_smg/textures/spectre_ammo.png new file mode 100644 index 0000000000000000000000000000000000000000..d41ca96d5fce32cd12eedcf4af086fedde12db1d GIT binary patch literal 236 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`Ea{HEjtmSN`?>!lvI6;>1s;*b z3=DkxK$!8B)5ZfpLG}_)Usv|qY@9rdjEc!DSAjxOC9V-A!TD(=<%vb93;~Imc_n&& zt|1C##(JiDh6V;-iWUM@g?hR;hFJI~|M>sko>_H<(piP>%xnhc3pFV{XIEFmGF*xY z7G*lJE}{8FHp8JZqgaPf=7OK{=_W$i)?v&Z7kw_U{+Pqp9W>`!lvI6;>1s;*b z3=DjGK$vmro+3}6AbW|YuPgg)HclQ!M#W^7t3V;C64!{5;QX|b^2DN4hJeJ(yb?V> z*ARs=V?9$nLj!{^MGJwd&U(5yhFJI?oxGR#u!4Y_=MtVLr%ZMjty@sg{6g{ocLhWK z!$AES_2z<>q&aFH%l#GZUViM)b66qC_Q?9j3=8H8CEx#E7QB%1Mg#t{zmyfL6`fLyH$9usxF-}@b zEus})Udf!7J}Ic^TkZKshkf_>;|nouorw)t!0GlgwkE wt`Tms@taoM3rVBC#U58T9bd&{cQyW)^s3c$X~(bWfkKbL)78&qol`;+0O+QMe*gdg literal 0 HcmV?d00001 diff --git a/mtduty_smg/textures/uzi_ammo.png b/mtduty_smg/textures/uzi_ammo.png new file mode 100644 index 0000000000000000000000000000000000000000..4f933174ba9f4f6a4a8f252f0ff10bf3c7b82641 GIT binary patch literal 243 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`Ea{HEjtmSN`?>!lvI6;>1s;*b z3=DjGL736~_k^`TLG}_)Usv|qY@9rdjEc!DSAjxOC9V-A!TD(=<%vb93;~Imc_n&& zt|1C##(JiDh6V;-iWUM@#dx|nhFJI~|M>sko>_H<(piP>%xnhc3pFV{XIEFmGF-ZI z;lc-d0|S8^fm+^%n||B4C(QMqCf@PU{#=I2wVx5Z3a-X+;txKX7nMBnVc+pc)>ij| hnWpe$Z_P4B29KRbez9?LtpnP_;OXk;vd$@?2>?I9OjQ5? literal 0 HcmV?d00001