From 9081b5b7732ed824687a650c20cc164abd082a92 Mon Sep 17 00:00:00 2001 From: Ghommie Date: Mon, 8 Jul 2019 07:17:49 +0200 Subject: [PATCH 1/2] Revert "Fixes rocket launchers, buffing their accuracy etc." This reverts commit 1c6156dd0ebc7fff1d494fc95ca9e53b56f5f954. --- .../machinery/computer/arcade/minesweeper.dm | 10 ++--- .../projectiles/ammunition/caseless/rocket.dm | 2 +- .../boxes_magazines/internal/grenade.dm | 2 +- code/modules/projectiles/gun.dm | 13 +------ .../projectiles/guns/ballistic/launchers.dm | 39 +++++++++---------- .../projectiles/projectile/special/rocket.dm | 1 - .../code/modules/projectiles/gun.dm | 10 +++++ 7 files changed, 37 insertions(+), 40 deletions(-) diff --git a/code/game/machinery/computer/arcade/minesweeper.dm b/code/game/machinery/computer/arcade/minesweeper.dm index e90e05966c..fe69860f76 100644 --- a/code/game/machinery/computer/arcade/minesweeper.dm +++ b/code/game/machinery/computer/arcade/minesweeper.dm @@ -250,11 +250,11 @@ itemname = "a syndicate bomb beacon" new /obj/item/sbeacondrop/bomb(loc) if(2) - itemname = "a rocket launcher" - new /obj/item/gun/ballistic/rocketlauncher/unrestricted(loc) - new /obj/item/ammo_casing/caseless/rocket(loc) - new /obj/item/ammo_casing/caseless/rocket(loc) - new /obj/item/ammo_casing/caseless/rocket(loc) + itemname = "a grenade launcher" + new /obj/item/gun/ballistic/revolver/grenadelauncher/unrestricted(loc) + new /obj/item/ammo_casing/a40mm(loc) + new /obj/item/ammo_casing/a40mm(loc) + new /obj/item/ammo_casing/a40mm(loc) if(3) itemname = "two bags of c4" new /obj/item/storage/backpack/duffelbag/syndie/c4(loc) diff --git a/code/modules/projectiles/ammunition/caseless/rocket.dm b/code/modules/projectiles/ammunition/caseless/rocket.dm index bc693d96bc..9d6befce53 100644 --- a/code/modules/projectiles/ammunition/caseless/rocket.dm +++ b/code/modules/projectiles/ammunition/caseless/rocket.dm @@ -9,7 +9,7 @@ name = "\improper PM-9HEDP" desc = "An 84mm High Explosive Dual Purpose rocket. Pointy end toward mechs." caliber = "84mm" - icon_state = "84mm-hedp" + icon_state = "s-casing-live" projectile_type = /obj/item/projectile/bullet/a84mm /obj/item/ammo_casing/caseless/a75 diff --git a/code/modules/projectiles/boxes_magazines/internal/grenade.dm b/code/modules/projectiles/boxes_magazines/internal/grenade.dm index 79a005ee8a..352d1eb951 100644 --- a/code/modules/projectiles/boxes_magazines/internal/grenade.dm +++ b/code/modules/projectiles/boxes_magazines/internal/grenade.dm @@ -11,7 +11,7 @@ max_ammo = 1 /obj/item/ammo_box/magazine/internal/rocketlauncher - name = "rocket launcher internal magazine" + name = "grenade launcher internal magazine" ammo_type = /obj/item/ammo_casing/caseless/rocket caliber = "84mm" max_ammo = 1 diff --git a/code/modules/projectiles/gun.dm b/code/modules/projectiles/gun.dm index fb3ed19f82..98fd774d63 100644 --- a/code/modules/projectiles/gun.dm +++ b/code/modules/projectiles/gun.dm @@ -32,10 +32,9 @@ var/fire_delay = 0 //rate of fire for burst firing and semi auto var/firing_burst = 0 //Prevent the weapon from firing again while already firing var/semicd = 0 //cooldown handler - var/weapon_weight = WEAPON_LIGHT //currently only used for inaccuracy + var/weapon_weight = WEAPON_LIGHT var/spread = 0 //Spread induced by the gun itself. var/randomspread = 1 //Set to 0 for shotguns. This is used for weapons that don't fire all their bullets at once. - var/inaccuracy_modifier = 1 lefthand_file = 'icons/mob/inhands/weapons/guns_lefthand.dmi' righthand_file = 'icons/mob/inhands/weapons/guns_righthand.dmi' @@ -539,13 +538,3 @@ if(A == chambered) chambered = null update_icon() - -/obj/item/gun/proc/getinaccuracy(mob/living/user) - if(!iscarbon(user)) - return FALSE - else - var/mob/living/carbon/holdingdude = user - if(istype(holdingdude) && holdingdude.combatmode) - return (max((holdingdude.lastdirchange + weapon_weight * 25) - world.time,0) * inaccuracy_modifier) - else - return ((weapon_weight * 25) * inaccuracy_modifier) diff --git a/code/modules/projectiles/guns/ballistic/launchers.dm b/code/modules/projectiles/guns/ballistic/launchers.dm index f6356dce99..eea4e1bc0b 100644 --- a/code/modules/projectiles/guns/ballistic/launchers.dm +++ b/code/modules/projectiles/guns/ballistic/launchers.dm @@ -86,7 +86,6 @@ pin = /obj/item/firing_pin/implant/pindicate burst_size = 1 fire_delay = 0 - inaccuracy_modifier = 0.7 casing_ejector = FALSE weapon_weight = WEAPON_HEAVY magazine_wording = "rocket" @@ -109,34 +108,34 @@ /obj/item/gun/ballistic/rocketlauncher/can_shoot() return chambered?.BB +/obj/item/gun/ballistic/rocketlauncher/process_chamber() + if(chambered) + chambered = null + if(magazine) + QDEL_NULL(magazine) + update_icon() + /obj/item/gun/ballistic/rocketlauncher/attack_self_tk(mob/user) return //too difficult to remove the rocket with TK /obj/item/gun/ballistic/rocketlauncher/attack_self(mob/living/user) if(magazine) - var/obj/item/ammo_casing/AC = chambered - if(AC) - if(!user.put_in_hands(AC)) - AC.bounce_away(FALSE, NONE) - to_chat(user, "You remove \the [AC] from \the [src]!") - playsound(src, 'sound/weapons/gun_magazine_remove_full.ogg', 70, TRUE) + if(chambered) + chambered.forceMove(magazine) + magazine.stored_ammo.Insert(1, chambered) chambered = null else - to_chat(user, "There's no [magazine_wording] in [src].") + stack_trace("Removed [magazine] from [src] without a chambered round") + magazine.forceMove(drop_location()) + if(user.is_holding(src)) + user.put_in_hands(magazine) + playsound(src, 'sound/weapons/gun_magazine_remove_full.ogg', 70, TRUE) + to_chat(user, "You work the [magazine] out from [src].") + magazine = null + else + to_chat(user, "There's no rocket in [src].") update_icon() -/obj/item/gun/ballistic/rocketlauncher/attackby(obj/item/A, mob/user, params) - if(magazine && istype(A, /obj/item/ammo_casing)) - if(user.temporarilyRemoveItemFromInventory(A)) - if(!chambered) - to_chat(user, "You load a new [A] into \the [src].") - playsound(src, "gun_insert_full_magazine", 70, 1) - chamber_round() - update_icon() - return TRUE - else - to_chat(user, "You cannot seem to get \the [A] out of your hands!") - /obj/item/gun/ballistic/rocketlauncher/update_icon() icon_state = "[initial(icon_state)]-[chambered ? "1" : "0"]" diff --git a/code/modules/projectiles/projectile/special/rocket.dm b/code/modules/projectiles/projectile/special/rocket.dm index e15810c6bb..a62fa25f7d 100644 --- a/code/modules/projectiles/projectile/special/rocket.dm +++ b/code/modules/projectiles/projectile/special/rocket.dm @@ -16,7 +16,6 @@ var/anti_armour_damage = 200 armour_penetration = 100 dismemberment = 100 - ricochets_max = 0 /obj/item/projectile/bullet/a84mm/on_hit(atom/target, blocked = FALSE) ..() diff --git a/modular_citadel/code/modules/projectiles/gun.dm b/modular_citadel/code/modules/projectiles/gun.dm index 317f68b4c4..ea8af7c74c 100644 --- a/modular_citadel/code/modules/projectiles/gun.dm +++ b/modular_citadel/code/modules/projectiles/gun.dm @@ -9,3 +9,13 @@ return 0 else return ..() + +/obj/item/gun/proc/getinaccuracy(mob/living/user) + if(!iscarbon(user)) + return 0 + else + var/mob/living/carbon/holdingdude = user + if(istype(holdingdude) && holdingdude.combatmode) + return max((holdingdude.lastdirchange + weapon_weight * 25) - world.time,0) + else + return weapon_weight * 25 From 222334deaab694d746d1bded2f13d0841bb96a6a Mon Sep 17 00:00:00 2001 From: Ghommie Date: Mon, 8 Jul 2019 07:33:49 +0200 Subject: [PATCH 2/2] Changes the :b: emoji icon. --- icons/emoji.dmi | Bin 41239 -> 41183 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/icons/emoji.dmi b/icons/emoji.dmi index 089c0ff3f8717ea92141ef756f90d48b26a9995e..925b072a5fee19248644c099bfe255d8b43c27f3 100644 GIT binary patch delta 4338 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 delta 4395 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