diff --git a/code/game/objects/items/weapons/shields.dm b/code/game/objects/items/weapons/shields.dm index a12d8fc5515..60b8c76e6dd 100644 --- a/code/game/objects/items/weapons/shields.dm +++ b/code/game/objects/items/weapons/shields.dm @@ -7,11 +7,11 @@ icon = 'icons/obj/weapons.dmi' icon_state = "riot" slot_flags = SLOT_BACK - force = 5.0 - throwforce = 5.0 + force = 8 + throwforce = 5 throw_speed = 2 - throw_range = 4 - w_class = 4.0 + throw_range = 3 + w_class = 4 g_amt = 7500 m_amt = 1000 origin_tech = "materials=2" @@ -38,13 +38,13 @@ /obj/item/weapon/shield/energy name = "energy combat shield" - desc = "A shield capable of stopping most projectile and melee attacks. Energy projectiles are reflected. It can be retracted, expanded, and stored anywhere." + desc = "A shield capable of stopping most melee attacks. Protects user from almost all energy projectiles. It can be retracted, expanded, and stored anywhere." icon = 'icons/obj/weapons.dmi' icon_state = "eshield0" // eshield1 for expanded - force = 3.0 - throwforce = 5.0 - throw_speed = 2 - throw_range = 4 + force = 3 + throwforce = 3 + throw_speed = 3 + throw_range = 5 w_class = 1 origin_tech = "materials=4;magnets=3;syndicate=4" attack_verb = list("shoved", "bashed") @@ -64,6 +64,8 @@ if(active) force = 10 + throwforce = 8 + throw_speed = 2 icon_state = "eshield[active]" w_class = 4 playsound(user, 'sound/weapons/saberon.ogg', 35, 1) @@ -71,9 +73,50 @@ reflect_chance = 40 else force = 3 + throwforce = 3 + throw_speed = 3 icon_state = "eshield[active]" w_class = 1 playsound(user, 'sound/weapons/saberoff.ogg', 35, 1) user << "[src] can now be concealed." reflect_chance = 0 add_fingerprint(user) + +/obj/item/weapon/shield/riot/tele + name = "telescopic shield" + desc = "An advanced riot shield made of lightweight materials that collapses for easy storage." + icon = 'icons/obj/weapons.dmi' + icon_state = "teleriot0" + slot_flags = null + force = 3 + throwforce = 3 + throw_speed = 3 + throw_range = 4 + w_class = 3 + var/active = 0 + +/obj/item/weapon/shield/riot/tele/IsShield() + return (active) + +/obj/item/weapon/shield/riot/tele/attack_self(mob/living/user) + active = !active + + if(active) + force = 8 + throwforce = 5 + throw_speed = 2 + icon_state = "teleriot[active]" + w_class = 4 + slot_flags = SLOT_BACK + playsound(src.loc, 'sound/weapons/batonextend.ogg', 50, 1) + user << "You extend the [src]." + else + force = 3 + throwforce = 3 + throw_speed = 3 + icon_state = "teleriot[active]" + w_class = 3 + slot_flags = null + playsound(src.loc, 'sound/weapons/batonextend.ogg', 50, 1) + user << "[src] can now be concealed." + add_fingerprint(user) diff --git a/code/game/objects/structures/crates_lockers/closets/secure/security.dm b/code/game/objects/structures/crates_lockers/closets/secure/security.dm index 2cf32731138..893cf5816d2 100644 --- a/code/game/objects/structures/crates_lockers/closets/secure/security.dm +++ b/code/game/objects/structures/crates_lockers/closets/secure/security.dm @@ -75,9 +75,9 @@ new /obj/item/weapon/cartridge/hos(src) new /obj/item/device/radio/headset/heads/hos/alt(src) new /obj/item/clothing/glasses/hud/security/sunglasses(src) - new /obj/item/weapon/shield/riot(src) - new /obj/item/clothing/mask/gas/sechailer/hos(src) new /obj/item/weapon/storage/lockbox/loyalty(src) + new /obj/item/weapon/shield/riot/tele(src) + new /obj/item/clothing/mask/gas/sechailer/hos(src) new /obj/item/weapon/storage/box/flashbangs(src) new /obj/item/device/flash(src) new /obj/item/weapon/melee/baton/loaded(src) diff --git a/code/modules/research/designs/weapon_designs.dm b/code/modules/research/designs/weapon_designs.dm index d21aef0bc15..83c4768ad28 100644 --- a/code/modules/research/designs/weapon_designs.dm +++ b/code/modules/research/designs/weapon_designs.dm @@ -23,6 +23,16 @@ datum/design/stunrevolver build_path = /obj/item/weapon/gun/energy/stunrevolver locked = 1 +datum/design/tele_shield + name = "Telescopic Riot Shield" + desc = "An advanced riot shield made of lightweight materials that collapses for easy storage." + id = "tele_shield" + req_tech = list("combat" = 4, "materials" = 3, "engineering" = 3) + build_type = PROTOLATHE + materials = list("$metal" = 4000, "$glass" = 5000, "$silver" = 300) + build_path = /obj/item/weapon/shield/riot/tele + locked = 1 + datum/design/lasercannon name = "Laser Cannon" desc = "A heavy duty laser cannon." diff --git a/icons/mob/back.dmi b/icons/mob/back.dmi index 23555098a29..47646c4af6d 100644 Binary files a/icons/mob/back.dmi and b/icons/mob/back.dmi differ diff --git a/icons/mob/items_lefthand.dmi b/icons/mob/items_lefthand.dmi index 0fda9281665..2aa06ab0332 100644 Binary files a/icons/mob/items_lefthand.dmi and b/icons/mob/items_lefthand.dmi differ diff --git a/icons/mob/items_righthand.dmi b/icons/mob/items_righthand.dmi index 93fca77115c..5b78981a7b8 100644 Binary files a/icons/mob/items_righthand.dmi and b/icons/mob/items_righthand.dmi differ diff --git a/icons/obj/weapons.dmi b/icons/obj/weapons.dmi index 6a6b44c5b1b..74cb74a795e 100644 Binary files a/icons/obj/weapons.dmi and b/icons/obj/weapons.dmi differ