Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Aim mode replacement #16557

Merged
merged 8 commits into from
Sep 29, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion code/modules/projectiles/ammo_types/ags_ammo.dm
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@
handful_amount = 1
ping = null //no bounce off.
sound_bounce = SFX_ROCKET_BOUNCE
ammo_behavior_flags = AMMO_TARGET_TURF|AMMO_SNIPER|AMMO_IFF
ammo_behavior_flags = AMMO_TARGET_TURF|AMMO_SNIPER
armor_type = BOMB
damage_falloff = 0.5
shell_speed = 2
Expand Down
2 changes: 1 addition & 1 deletion code/modules/projectiles/ammo_types/heavy_ammo.dm
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,7 @@
damage = 30
penetration = 35
sundering = 1
ammo_behavior_flags = AMMO_BALLISTIC|AMMO_IFF|AMMO_SNIPER
ammo_behavior_flags = AMMO_BALLISTIC|AMMO_SNIPER
damage_falloff = 1
accurate_range = 7
accuracy = 10
Expand Down
2 changes: 1 addition & 1 deletion code/modules/projectiles/ammo_types/mech_ammo.dm
Original file line number Diff line number Diff line change
Expand Up @@ -50,7 +50,7 @@

/datum/ammo/bullet/sniper/mech
name = "light anti-tank bullet"
ammo_behavior_flags = AMMO_BALLISTIC|AMMO_SNIPER|AMMO_IFF
ammo_behavior_flags = AMMO_BALLISTIC|AMMO_SNIPER
damage = 100
penetration = 35
sundering = 0
Expand Down
2 changes: 1 addition & 1 deletion code/modules/projectiles/ammo_types/miscellaneous_ammo.dm
Original file line number Diff line number Diff line change
Expand Up @@ -233,7 +233,7 @@

/datum/ammo/grenade_container/ags_grenade
name = "grenade shell"
ammo_behavior_flags = AMMO_TARGET_TURF|AMMO_IFF
ammo_behavior_flags = AMMO_TARGET_TURF
icon_state = "grenade_projectile"
hud_state = "grenade_he"
hud_state_empty = "grenade_empty"
Expand Down
2 changes: 1 addition & 1 deletion code/modules/projectiles/ammo_types/rocket_ammo.dm
Original file line number Diff line number Diff line change
Expand Up @@ -261,7 +261,7 @@
name = "low velocity chemical shell"
icon_state = "recoilless_rifle_smoke"
hud_state = "shell_le"
ammo_behavior_flags = AMMO_SNIPER|AMMO_IFF //We want this to specifically go farther than onscreen range and pass through friendlies.
ammo_behavior_flags = AMMO_SNIPER
accurate_range = 21
max_range = 21
damage = 10
Expand Down
2 changes: 1 addition & 1 deletion code/modules/projectiles/gun_system.dm
Original file line number Diff line number Diff line change
Expand Up @@ -1032,7 +1032,7 @@

simulate_recoil(dual_wield, firing_angle)

projectile_to_fire.fire_at(target, master_gun ? gun_user : null, src, projectile_to_fire.ammo.max_range, projectile_to_fire.projectile_speed, firing_angle, suppress_light = HAS_TRAIT(src, TRAIT_GUN_SILENCED))
projectile_to_fire.fire_at(target, gun_user, src, projectile_to_fire.ammo.max_range, projectile_to_fire.projectile_speed, firing_angle, suppress_light = HAS_TRAIT(src, TRAIT_GUN_SILENCED))
if(CHECK_BITFIELD(gun_features_flags, GUN_SMOKE_PARTICLES))
var/x_component = sin(firing_angle) * 40
var/y_component = cos(firing_angle) * 40
Expand Down
10 changes: 3 additions & 7 deletions code/modules/projectiles/guns/mounted.dm
Original file line number Diff line number Diff line change
Expand Up @@ -121,7 +121,6 @@
item_flags = IS_DEPLOYABLE|TWOHANDED
gun_features_flags = GUN_AMMO_COUNTER|GUN_DEPLOYED_FIRE_ONLY|GUN_WIELDED_FIRING_ONLY|GUN_SMOKE_PARTICLES
gun_firemode_list = list(GUN_FIREMODE_AUTOMATIC)
actions_types = list(/datum/action/item_action/aim_mode)
aim_time = 2 SECONDS
aim_fire_delay = 0.05 SECONDS

Expand Down Expand Up @@ -181,7 +180,7 @@
extra_delay = 1.5 SECONDS

item_flags = IS_DEPLOYABLE|TWOHANDED|DEPLOYED_NO_PICKUP|DEPLOY_ON_INITIALIZE
gun_features_flags = GUN_AMMO_COUNTER|GUN_DEPLOYED_FIRE_ONLY|GUN_WIELDED_FIRING_ONLY|GUN_IFF|GUN_SMOKE_PARTICLES
gun_features_flags = GUN_AMMO_COUNTER|GUN_DEPLOYED_FIRE_ONLY|GUN_WIELDED_FIRING_ONLY|GUN_SMOKE_PARTICLES
gun_firemode_list = list(GUN_FIREMODE_AUTOMATIC, GUN_FIREMODE_BURSTFIRE, GUN_FIREMODE_AUTOBURST)

attachable_allowed = list(/obj/item/attachable/scope/unremovable/standard_atgun)
Expand Down Expand Up @@ -451,7 +450,6 @@
gun_features_flags = GUN_AMMO_COUNTER|GUN_WIELDED_FIRING_ONLY|GUN_SMOKE_PARTICLES
deployable_item = /obj/machinery/deployable/mounted
gun_firemode_list = list(GUN_FIREMODE_AUTOMATIC)
actions_types = list(/datum/action/item_action/aim_mode)
aim_fire_delay = 0.05 SECONDS
aim_speed_modifier = 5
soft_armor = list(MELEE = 0, BULLET = 50, LASER = 50, ENERGY = 50, BOMB = 50, BIO = 100, FIRE = 0, ACID = 0)
Expand Down Expand Up @@ -562,7 +560,6 @@
gun_features_flags = GUN_AMMO_COUNTER|GUN_DEPLOYED_FIRE_ONLY|GUN_WIELDED_FIRING_ONLY|GUN_SMOKE_PARTICLES

gun_firemode_list = list(GUN_FIREMODE_SEMIAUTO)
actions_types = list(/datum/action/item_action/aim_mode)
aim_time = 6 SECONDS
reciever_flags = AMMO_RECIEVER_MAGAZINES|AMMO_RECIEVER_AUTO_EJECT
soft_armor = list(MELEE = 60, BULLET = 50, LASER = 50, ENERGY = 50, BOMB = 50, BIO = 100, FIRE = 0, ACID = 0)
Expand Down Expand Up @@ -637,7 +634,7 @@

/obj/item/weapon/gun/standard_agls
name = "\improper AGLS-37 Kauser automatic grenade launcher"
desc = "The AGLS-37 automatic grenade launching IFF capable system, it's too heavy to be wielded or operated without the tripod. On the back, it reads: \"The Explosions and Fragmentation from this weapon ARE NOT friendly fire capable. Kauser is not obligated to buy you new body parts for you or your friends if you lose them.\"\nCan be deployed with Crtl-Click. Can be repaired with a blowtorch once deployed."
desc = "The AGLS-37 automatic grenade launching system. It's too heavy to be wielded or operated without the tripod. On the back, it reads: \"Kauser is not obligated to buy you new body parts for you or your friends if you lose them.\"\nCan be deployed with Crtl-Click. Can be repaired with a blowtorch once deployed."
w_class = WEIGHT_CLASS_HUGE
equip_slot_flags = ITEM_SLOT_BACK
caliber = CALIBER_40MM
Expand All @@ -649,7 +646,7 @@
scatter = 0
fire_delay = 1.1 SECONDS
burst_amount = 0
accuracy_mult = 1.2 //it's got a bipod
accuracy_mult = 1.2
item_flags = IS_DEPLOYABLE|TWOHANDED
gun_features_flags = GUN_AMMO_COUNTER|GUN_DEPLOYED_FIRE_ONLY|GUN_WIELDED_FIRING_ONLY
gun_firemode_list = list(GUN_FIREMODE_AUTOMATIC)
Expand Down Expand Up @@ -718,7 +715,6 @@
item_flags = IS_DEPLOYABLE|TWOHANDED
gun_features_flags = GUN_AMMO_COUNTER|GUN_DEPLOYED_FIRE_ONLY|GUN_WIELDED_FIRING_ONLY|GUN_SMOKE_PARTICLES
gun_firemode_list = list(GUN_FIREMODE_AUTOMATIC)
actions_types = list(/datum/action/item_action/aim_mode)
aim_fire_delay = 0.05 SECONDS
aim_speed_modifier = 5

Expand Down
17 changes: 0 additions & 17 deletions code/modules/projectiles/guns/rifles.dm
Original file line number Diff line number Diff line change
Expand Up @@ -74,7 +74,6 @@
gun_firemode_list = list(GUN_FIREMODE_AUTOMATIC, GUN_FIREMODE_BURSTFIRE, GUN_FIREMODE_AUTOBURST)
starting_attachment_types = list(/obj/item/attachable/stock/t18stock)
attachable_offset = list("muzzle_x" = 30, "muzzle_y" = 16,"rail_x" = 5, "rail_y" = 19, "under_x" = 18, "under_y" = 14, "stock_x" = 0, "stock_y" = 13)
actions_types = list(/datum/action/item_action/aim_mode)
aim_fire_delay = 0.1 SECONDS
aim_speed_modifier = 2

Expand Down Expand Up @@ -161,7 +160,6 @@
gun_firemode_list = list(GUN_FIREMODE_AUTOMATIC, GUN_FIREMODE_BURSTFIRE, GUN_FIREMODE_AUTOBURST)
starting_attachment_types = list(/obj/item/attachable/stock/t12stock)
attachable_offset = list("muzzle_x" = 30, "muzzle_y" = 17,"rail_x" = 0, "rail_y" = 23, "under_x" = 17, "under_y" = 13, "stock_x" = 0, "stock_y" = 13)
actions_types = list(/datum/action/item_action/aim_mode)
aim_fire_delay = 0.1 SECONDS
aim_speed_modifier = 2

Expand Down Expand Up @@ -326,7 +324,6 @@
gun_firemode_list = list(GUN_FIREMODE_AUTOMATIC, GUN_FIREMODE_BURSTFIRE, GUN_FIREMODE_AUTOBURST)
starting_attachment_types = list(/obj/item/attachable/stock/t64stock, /obj/item/weapon/gun/grenade_launcher/underslung/battle_rifle, /obj/item/attachable/scope/mini)
attachable_offset = list("muzzle_x" = 44, "muzzle_y" = 19,"rail_x" = 18, "rail_y" = 23, "under_x" = 33, "under_y" = 13, "stock_x" = 11, "stock_y" = 14)
actions_types = list(/datum/action/item_action/aim_mode)
aim_fire_delay = 0.2 SECONDS
aim_speed_modifier = 3

Expand Down Expand Up @@ -728,7 +725,6 @@
gun_firemode_list = list(GUN_FIREMODE_AUTOMATIC)
attachable_offset = list("muzzle_x" = 32, "muzzle_y" = 17,"rail_x" = 22, "rail_y" = 17, "under_x" = 32, "under_y" = 14, "stock_x" = 13, "stock_y" = 9)
starting_attachment_types = list(/obj/item/attachable/stock/dpm)
actions_types = list(/datum/action/item_action/aim_mode)
aim_fire_delay = 0.25 SECONDS
aim_speed_modifier = 0.75

Expand Down Expand Up @@ -791,7 +787,6 @@
gun_features_flags = GUN_CAN_POINTBLANK|GUN_AMMO_COUNTER|GUN_SMOKE_PARTICLES
gun_firemode_list = list(GUN_FIREMODE_AUTOMATIC, GUN_FIREMODE_BURSTFIRE)
attachable_offset = list("muzzle_x" = 47, "muzzle_y" = 19,"rail_x" = 18, "rail_y" = 24, "under_x" = 29, "under_y" = 15, "stock_x" = 19, "stock_y" = 13)
actions_types = list(/datum/action/item_action/aim_mode)
aim_fire_delay = 0.2 SECONDS
aim_speed_modifier = 2.5

Expand Down Expand Up @@ -930,7 +925,6 @@
gun_skill_category = SKILL_HEAVY_WEAPONS
starting_attachment_types = list(/obj/item/attachable/stock/t42stock)
attachable_offset = list("muzzle_x" = 30, "muzzle_y" = 17,"rail_x" = 4, "rail_y" = 20, "under_x" = 16, "under_y" = 14, "stock_x" = 0, "stock_y" = 13)
actions_types = list(/datum/action/item_action/aim_mode)
aim_fire_delay = 0.1 SECONDS
aim_speed_modifier = 2

Expand Down Expand Up @@ -1000,7 +994,6 @@
starting_attachment_types = list(/obj/item/attachable/stock/t60stock)
gun_skill_category = SKILL_HEAVY_WEAPONS
attachable_offset = list("muzzle_x" = 42, "muzzle_y" = 21,"rail_x" = 6, "rail_y" = 23, "under_x" = 26, "under_y" = 15, "stock_x" = 8, "stock_y" = 13)
actions_types = list(/datum/action/item_action/aim_mode)
aim_fire_delay = 0.15 SECONDS
aim_speed_modifier = 5.3

Expand Down Expand Up @@ -1070,7 +1063,6 @@
gun_firemode_list = list(GUN_FIREMODE_AUTOMATIC, GUN_FIREMODE_BURSTFIRE, GUN_FIREMODE_AUTOBURST)
gun_skill_category = SKILL_HEAVY_WEAPONS
attachable_offset = list("muzzle_x" = 42, "muzzle_y" = 19,"rail_x" = 17, "rail_y" = 21, "under_x" = 31, "under_y" = 15, "stock_x" = 18, "stock_y" = 15)
actions_types = list(/datum/action/item_action/aim_mode)
aim_fire_delay = 0.15 SECONDS
aim_speed_modifier = 2

Expand Down Expand Up @@ -1145,7 +1137,6 @@
gun_features_flags = GUN_CAN_POINTBLANK|GUN_AMMO_COUNTER|GUN_SMOKE_PARTICLES
attachable_offset = list("muzzle_x" = 41, "muzzle_y" = 19,"rail_x" = 18, "rail_y" = 24, "under_x" = 34, "under_y" = 16, "stock_x" = 19, "stock_y" = 13)
gun_firemode_list = list(GUN_FIREMODE_BURSTFIRE, GUN_FIREMODE_AUTOBURST)
actions_types = list(/datum/action/item_action/aim_mode)
aim_fire_delay = 0.15 SECONDS
aim_speed_modifier = 2

Expand Down Expand Up @@ -1626,7 +1617,6 @@
gun_firemode_list = list(GUN_FIREMODE_AUTOMATIC, GUN_FIREMODE_BURSTFIRE, GUN_FIREMODE_AUTOBURST)
starting_attachment_types = list(/obj/item/attachable/stock/tx11, /obj/item/attachable/scope/mini/tx11)
attachable_offset = list("muzzle_x" = 31, "muzzle_y" = 17,"rail_x" = 6, "rail_y" = 20, "under_x" = 20, "under_y" = 12, "stock_x" = 17, "stock_y" = 14)
actions_types = list(/datum/action/item_action/aim_mode)
aim_fire_delay = 0.15 SECONDS

fire_delay = 0.25 SECONDS
Expand Down Expand Up @@ -1708,7 +1698,6 @@
gun_features_flags = GUN_CAN_POINTBLANK|GUN_AMMO_COUNTER|GUN_SMOKE_PARTICLES
gun_firemode_list = list(GUN_FIREMODE_AUTOMATIC)
attachable_offset = list("muzzle_x" = 46, "muzzle_y" = 16,"rail_x" = 18, "rail_y" = 19, "under_x" = 34, "under_y" = 13, "stock_x" = 0, "stock_y" = 13)
actions_types = list(/datum/action/item_action/aim_mode)
aim_fire_delay = 0.15 SECONDS
aim_speed_modifier = 2.5

Expand Down Expand Up @@ -2034,7 +2023,6 @@

gun_firemode_list = list(GUN_FIREMODE_SEMIAUTO)
attachable_offset = list("muzzle_x" = 40, "muzzle_y" = 19,"rail_x" = 9, "rail_y" = 22, "under_x" = 33, "under_y" = 16, "stock_x" = 0, "stock_y" = 11)
actions_types = list(/datum/action/item_action/aim_mode)
aim_fire_delay = 1.25 SECONDS

starting_attachment_types = list(
Expand Down Expand Up @@ -2099,7 +2087,6 @@
/obj/item/weapon/gun/shotgun/micro_grenade,
)
attachable_offset = list("muzzle_x" = 45, "muzzle_y" = 16,"rail_x" = 23, "rail_y" = 24, "under_x" = 33, "under_y" = 11, "stock_x" = -1, "stock_y" = 17)
actions_types = list(/datum/action/item_action/aim_mode)

wield_delay = 0.8 SECONDS

Expand Down Expand Up @@ -2282,7 +2269,6 @@
starting_attachment_types = list(/obj/item/attachable/stock/som_mg_stock)
gun_skill_category = SKILL_HEAVY_WEAPONS
attachable_offset = list("muzzle_x" = 53, "muzzle_y" = 19,"rail_x" = 14, "rail_y" = 23, "under_x" = 41, "under_y" = 14, "stock_x" = -32, "stock_y" = 0)
actions_types = list(/datum/action/item_action/aim_mode)
aim_fire_delay = 0.2 SECONDS
aim_slowdown = 1.2

Expand Down Expand Up @@ -2428,7 +2414,6 @@
gun_features_flags = GUN_CAN_POINTBLANK|GUN_AMMO_COUNTER|GUN_SMOKE_PARTICLES
gun_firemode_list = list(GUN_FIREMODE_AUTOMATIC)
attachable_offset = list("muzzle_x" = 44, "muzzle_y" = 19,"rail_x" = 20, "rail_y" = 23, "under_x" = 33, "under_y" = 13, "stock_x" = 0, "stock_y" = 13)
actions_types = list(/datum/action/item_action/aim_mode)
aim_fire_delay = 0.25 SECONDS
aim_speed_modifier = 1.65

Expand Down Expand Up @@ -2491,7 +2476,6 @@
gun_features_flags = GUN_CAN_POINTBLANK|GUN_AMMO_COUNTER|GUN_SMOKE_PARTICLES
gun_firemode_list = list(GUN_FIREMODE_AUTOMATIC)
attachable_offset = list("muzzle_x" = 48, "muzzle_y" = 18,"rail_x" = 24, "rail_y" = 26, "under_x" = 36, "under_y" = 14, "stock_x" = 0, "stock_y" = 13)
actions_types = list(/datum/action/item_action/aim_mode)
aim_fire_delay = 0.3 SECONDS
aim_speed_modifier = 2.5

Expand Down Expand Up @@ -2669,7 +2653,6 @@
gun_firemode_list = list(GUN_FIREMODE_AUTOMATIC)
gun_skill_category = SKILL_HEAVY_WEAPONS
attachable_offset = list("muzzle_x" = 42, "muzzle_y" = 21,"rail_x" = 6, "rail_y" = 23, "under_x" = 26, "under_y" = 15, "stock_x" = 8, "stock_y" = 13)
actions_types = list(/datum/action/item_action/aim_mode)
aim_fire_delay = 0.15 SECONDS
aim_speed_modifier = 5

Expand Down
2 changes: 0 additions & 2 deletions code/modules/projectiles/guns/shotguns.dm
Original file line number Diff line number Diff line change
Expand Up @@ -550,7 +550,6 @@

gun_features_flags = GUN_CAN_POINTBLANK|GUN_AMMO_COUNTER|GUN_SMOKE_PARTICLES
attachable_offset = list("muzzle_x" = 45, "muzzle_y" = 23,"rail_x" = 17, "rail_y" = 25, "under_x" = 19, "under_y" = 14, "stock_x" = 15, "stock_y" = 12)
actions_types = list(/datum/action/item_action/aim_mode)
aim_slowdown = 0.35
aim_time = 0.5 SECONDS

Expand Down Expand Up @@ -685,7 +684,6 @@
)
attachable_offset = list ("muzzle_x" = 45, "muzzle_y" = 23,"rail_x" = 21, "rail_y" = 23, "under_x" = 19, "under_y" = 14, "stock_x" = 15, "stock_y" = 12)
gun_features_flags = GUN_CAN_POINTBLANK|GUN_AMMO_COUNTER|GUN_SMOKE_PARTICLES
actions_types = list(/datum/action/item_action/aim_mode)
aim_fire_delay = 0.3 SECONDS
aim_speed_modifier = 2

Expand Down
5 changes: 0 additions & 5 deletions code/modules/projectiles/guns/smgs.dm
Original file line number Diff line number Diff line change
Expand Up @@ -129,7 +129,6 @@
gun_features_flags = GUN_CAN_POINTBLANK|GUN_AMMO_COUNTER|GUN_SMOKE_PARTICLES
gun_firemode_list = list(GUN_FIREMODE_AUTOMATIC)
attachable_offset = list("muzzle_x" = 32, "muzzle_y" = 15,"rail_x" = 22, "rail_y" = 22, "under_x" = 17, "under_y" = 15, "stock_x" = 24, "stock_y" = 10)
actions_types = list(/datum/action/item_action/aim_mode)
aim_fire_delay = 0.1 SECONDS
aim_speed_modifier = 0.55
accuracy_mult = 1.05
Expand Down Expand Up @@ -194,7 +193,6 @@
)

attachable_offset = list("muzzle_x" = 43, "muzzle_y" = 19,"rail_x" = 22, "rail_y" = 23, "under_x" = 32, "under_y" = 14, "stock_x" = 24, "stock_y" = 16)
actions_types = list(/datum/action/item_action/aim_mode)
aim_fire_delay = 0.1 SECONDS

aim_slowdown = 0.25
Expand Down Expand Up @@ -426,7 +424,6 @@

gun_features_flags = GUN_CAN_POINTBLANK|GUN_AMMO_COUNTER|GUN_SMOKE_PARTICLES
attachable_offset = list("muzzle_x" = 38, "muzzle_y" = 19,"rail_x" = 13, "rail_y" = 21, "under_x" = 26, "under_y" = 15, "stock_x" = 19, "stock_y" = 13)
actions_types = list(/datum/action/item_action/aim_mode)
aim_fire_delay = 0.15 SECONDS
aim_speed_modifier = 2.5

Expand Down Expand Up @@ -688,7 +685,6 @@
starting_attachment_types = list(/obj/item/attachable/stock/icc_pdw)

attachable_offset = list("muzzle_x" = 30, "muzzle_y" = 17,"rail_x" = 13, "rail_y" = 20, "under_x" = 31, "under_y" = 13, "stock_x" = 9, "stock_y" = 10)
actions_types = list(/datum/action/item_action/aim_mode)
aim_fire_delay = 0.1 SECONDS
aim_speed_modifier = 0.55

Expand Down Expand Up @@ -752,7 +748,6 @@
)

attachable_offset = list("muzzle_x" = 30, "muzzle_y" = 18,"rail_x" = 14, "rail_y" = 21, "under_x" = 24, "under_y" = 15, "stock_x" = 24, "stock_y" = 16)
actions_types = list(/datum/action/item_action/aim_mode)
aim_fire_delay = 0.1 SECONDS

aim_slowdown = 0.25
Expand Down
2 changes: 0 additions & 2 deletions code/modules/projectiles/guns/specialist.dm
Original file line number Diff line number Diff line change
Expand Up @@ -405,7 +405,6 @@ Note that this means that snipers will have a slowdown of 3, due to the scope
gun_firemode_list = list(GUN_FIREMODE_AUTOMATIC)
attachable_allowed = list(/obj/item/attachable/flashlight, /obj/item/attachable/magnetic_harness)
attachable_offset = list("muzzle_x" = 33, "muzzle_y" = 19,"rail_x" = 10, "rail_y" = 21, "under_x" = 24, "under_y" = 14, "stock_x" = 24, "stock_y" = 12)
actions_types = list(/datum/action/item_action/aim_mode)
aim_fire_delay = 0.1 SECONDS
aim_speed_modifier = 12

Expand Down Expand Up @@ -522,7 +521,6 @@ Note that this means that snipers will have a slowdown of 3, due to the scope
starting_attachment_types = list(/obj/item/weapon/gun/flamer/hydro_cannon/pepperball)

gun_firemode_list = list(GUN_FIREMODE_AUTOMATIC)
actions_types = list(/datum/action/item_action/aim_mode)
aim_fire_delay = 0.1 SECONDS
aim_speed_modifier = 0.1

Expand Down
10 changes: 6 additions & 4 deletions code/modules/projectiles/projectile.dm
Original file line number Diff line number Diff line change
Expand Up @@ -831,7 +831,7 @@ So if we are on the 32th absolute pixel coordinate we are on tile 1, but if we a
return ..()

/mob/living/carbon/human/projectile_hit(obj/projectile/proj, cardinal_move, uncrossing)
if(wear_id?.iff_signal & proj.iff_signal)
if((wear_id?.iff_signal & proj.iff_signal) || (proj?.firer?.faction == faction && proj.original_target != src && Adjacent(proj.firer)))
proj.damage -= proj.damage*proj.damage_marine_falloff
return FALSE
return ..()
Expand All @@ -848,10 +848,12 @@ So if we are on the 32th absolute pixel coordinate we are on tile 1, but if we a
return FALSE
return ..()


///visual and audio feedback for hits
/obj/projectile/proc/play_damage_effect(mob/M)
if(ammo.sound_hit) playsound(M, ammo.sound_hit, 50, 1)
if(M.stat != DEAD) animation_flash_color(M)
if(ammo.sound_hit)
playsound(M, ammo.sound_hit, 50, 1)
if(M.stat != DEAD)
animation_flash_color(M)

//----------------------------------------------------------
// \\
Expand Down
Loading