Skip to content

Commit

Permalink
Ethebor gun tweaks (#2746)
Browse files Browse the repository at this point in the history
## About The Pull Request

With a PGF ship on the horizon, i have edited the PGF gun stats to be
more practical, after I ran a event one time and realized the guns
weren't very good against the 'inferior' frontier ballistics. This also
adds a PGF sidearm after cole asked me to.

Changes:
- Regular gunsword is balanced more like a SMG and is normal sized now.
30 shots per cell unless its the civillian variant, which has less
shots. Only the PGF variant has full-auto
- Both regular gunswords have a disable mode on request of cole.
Disablers have 20% AP now. The disable mode is semi-auto only.
- Riflesword is more balanced like an AR and is bulky sized now, letting
it fit into suit slots. It also has a DMR mode. 20 shots for the AR mode
and 10 shots for the DMR mode. Only the AR mode is full auto.
- Adds a Marksman version of the Riflesword, slower to wield and walk
with, but has a scope. Meant for ERTs rather than be available to
players

## Why It's Good For The Game

Makes the PGF and Kalixcis firearms more fleshed out and unique. Also
lorema requests, tada!

Also in additions should make use of disablers less salt-inducing


![image](https://github.com/shiptest-ss13/Shiptest/assets/58402542/9e1bc3da-3fbb-41d6-8ded-f18e1462bc6e)


## Changelog

:cl: ryerice
add: Adds a PGF sidearm
add: Adds a PGF Marksman rifle
balance: In general, the PGF weapons have been buffed, but also re
balanced somewhat
fix: All the PGF weapons should be correctly sized now
/:cl:

<!-- Both :cl:'s are required for the changelog to work! You can put
your name to the right of the first :cl: if you want to overwrite your
GitHub username as author ingame. -->
<!-- You can use multiple of the same prefix (they're only used for the
icon ingame) and delete the unneeded ones. Despite some of the tags,
changelogs should generally represent how a player might be affected by
the changes rather than a summary of the PR's contents. -->
  • Loading branch information
rye-rice authored Feb 22, 2024
1 parent 35e7430 commit 6bb4dd6
Show file tree
Hide file tree
Showing 21 changed files with 146 additions and 30 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -48,3 +48,7 @@
/obj/effect/projectile/impact/pgf
name = "beam impact"
icon_state = "impact_pgf"

/obj/effect/projectile/impact/pgf/rifle
name = "beam impact"
icon_state = "impact_pgf_rifle"
Original file line number Diff line number Diff line change
Expand Up @@ -33,8 +33,11 @@
/obj/effect/projectile/muzzle/wormhole
icon_state = "wormhole_g"

/obj/effect/projectile/muzzle/kalix
icon_state = "muzzle_kalix"

/obj/effect/projectile/muzzle/pgf
icon_state = "muzzle_pgf"

/obj/effect/projectile/muzzle/kalix
icon_state = "muzzle_kalix"
/obj/effect/projectile/muzzle/pgf/rifle
icon_state = "muzzle_pgf_rifle"
Original file line number Diff line number Diff line change
Expand Up @@ -71,8 +71,11 @@
/obj/effect/projectile/tracer/wormhole
icon_state = "wormhole_g"

/obj/effect/projectile/tracer/kalix
icon_state = "beam_kalix"

/obj/effect/projectile/tracer/pgf
icon_state = "beam_pgf"

/obj/effect/projectile/tracer/kalix
icon_state = "beam_kalix"
/obj/effect/projectile/tracer/pgf/rifle
icon_state = "beam_pgf_rifle"
1 change: 1 addition & 0 deletions code/modules/projectiles/ammunition/energy/laser.dm
Original file line number Diff line number Diff line change
Expand Up @@ -147,6 +147,7 @@
icon_state = "omnilaser"
hitscan = TRUE
damage = 20
armour_penetration = -20
damage_type = STAMINA
flag = "energy"
hitsound = 'sound/weapons/tap.ogg'
Expand Down
13 changes: 13 additions & 0 deletions code/modules/projectiles/guns/energy/energy_gun.dm
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,12 @@
flight_x_offset = 19
flight_y_offset = 13

wield_delay = 0.2 SECONDS
wield_slowdown = 0.15

spread = 2
spread_unwielded = 5

/obj/item/gun/energy/e_gun/mini/Initialize()
set_gun_light(new /obj/item/flashlight/seclite(src))
return ..()
Expand Down Expand Up @@ -193,6 +199,13 @@
ammo_x_offset = 2
charge_sections = 6
small_gun = TRUE

wield_delay = 0.2 SECONDS
wield_slowdown = 0.15

spread = 2
spread_unwielded = 5

ammo_type = list(/obj/item/ammo_casing/energy/disabler/hitscan, /obj/item/ammo_casing/energy/ion/cheap)
cell_type = /obj/item/stock_parts/cell/gun/mini

Expand Down
7 changes: 7 additions & 0 deletions code/modules/projectiles/guns/energy/laser.dm
Original file line number Diff line number Diff line change
Expand Up @@ -214,6 +214,13 @@
desc = "A very old laser weapon. Despite the extreme age of some of these weapons, they are sometimes preferred to newer, mass-produced Nanotrasen laser weapons."
icon_state = "e10"
w_class = WEIGHT_CLASS_SMALL

wield_delay = 0.2 SECONDS
wield_slowdown = 0.15

spread = 2
spread_unwielded = 5

ammo_type = list(/obj/item/ammo_casing/energy/lasergun/eoehoma)
manufacturer = MANUFACTURER_EOEHOMA

Expand Down
136 changes: 110 additions & 26 deletions code/modules/projectiles/guns/faction/gezena/energy_gunsword.dm
Original file line number Diff line number Diff line change
Expand Up @@ -7,15 +7,26 @@
lefthand_file = 'icons/obj/guns/faction/gezena/lefthand.dmi'
righthand_file = 'icons/obj/guns/faction/gezena/righthand.dmi'
mob_overlay_icon = 'icons/mob/clothing/faction/gezena/belt.dmi'
w_class = WEIGHT_CLASS_BULKY
w_class = WEIGHT_CLASS_NORMAL

cell_type = /obj/item/stock_parts/cell/gun/pgf
ammo_type = list(/obj/item/ammo_casing/energy/kalix)
modifystate = TRUE

wield_delay = 0.7 SECONDS
wield_slowdown = 0.35

cell_type = /obj/item/stock_parts/cell/gun/kalix
ammo_type = list(/obj/item/ammo_casing/energy/kalix, /obj/item/ammo_casing/energy/disabler/hitscan)

load_sound = 'sound/weapons/gun/gauss/pistol_reload.ogg'

manufacturer = MANUFACTURER_PGF

/obj/item/ammo_casing/energy/kalix
projectile_type = /obj/projectile/beam/hitscan/kalix
fire_sound = 'sound/weapons/gun/energy/kalixsmg.ogg'
e_cost = 666 //30 shots per cell
delay = 1

/obj/projectile/beam/hitscan/kalix
name = "concentrated energy"
tracer_type = /obj/effect/projectile/tracer/kalix
Expand All @@ -25,59 +36,132 @@
muzzle_flash_color_override = LIGHT_COLOR_ELECTRIC_CYAN
impact_light_color_override = LIGHT_COLOR_ELECTRIC_CYAN
range = 10

/obj/item/ammo_casing/energy/kalix
projectile_type = /obj/projectile/beam/hitscan/kalix
fire_sound = 'sound/weapons/gun/energy/laserpistol.ogg'
e_cost = 850
damage_constant = 0.8
damage = 25
armour_penetration = -10

/obj/item/gun/energy/kalix/pgf
name = "Etherbor BG-16"
desc = "An advanced variant of the BG-12, the BG-16 is the military-grade beam gun designed and manufactured by Etherbor Industries as the standard-issue weapon of the PGF."
desc = "An advanced variant of the BG-12, the BG-16 is the military-grade beam gun designed and manufactured by Etherbor Industries as the standard-issue close-range weapon of the PGF."
icon_state = "pgfgun"
item_state = "pgfgun"

cell_type = /obj/item/stock_parts/cell/gun/pgf
ammo_type = list(/obj/item/ammo_casing/energy/pgf)
ammo_type = list(/obj/item/ammo_casing/energy/pgf , /obj/item/ammo_casing/energy/disabler/hitscan)

/obj/item/gun/energy/kalix/pgf/ComponentInitialize()
. = ..()
AddComponent(/datum/component/automatic_fire, 0.16 SECONDS)

/obj/projectile/beam/hitscan/pgf
/obj/projectile/beam/hitscan/kalix/pgf
name = "concentrated energy"
tracer_type = /obj/effect/projectile/tracer/pgf
muzzle_type = /obj/effect/projectile/muzzle/pgf
impact_type = /obj/effect/projectile/impact/pgf
hitscan_light_color_override = LIGHT_COLOR_ELECTRIC_GREEN
muzzle_flash_color_override = LIGHT_COLOR_ELECTRIC_GREEN
impact_light_color_override = LIGHT_COLOR_ELECTRIC_GREEN
damage_constant = 0.9
damage = 25
range = 6

/obj/item/ammo_casing/energy/pgf
projectile_type = /obj/projectile/beam/hitscan/pgf
fire_sound = 'sound/weapons/gun/energy/laserpistol.ogg'
e_cost = 1000
projectile_type = /obj/projectile/beam/hitscan/kalix/pgf
fire_sound = 'sound/weapons/gun/energy/kalixsmg.ogg'
delay = 1

/obj/item/gun/energy/kalix/pistol //blue //todo: fix up belt_mirror.dmi, it's incomprehensible
name = "Etherbor SG-8"
desc = "Etherbor's current and sidearm offering. While intended for marines, it's also available for civillians"
icon_state = "kalixpistol"
item_state = "kalixpistol"
w_class = WEIGHT_CLASS_SMALL

modifystate = FALSE

wield_delay = 0.2 SECONDS
wield_slowdown = 0.15

spread = 2
spread_unwielded = 5

cell_type = /obj/item/stock_parts/cell/gun/kalix
ammo_type = list(/obj/item/ammo_casing/energy/kalix/pistol)


load_sound = 'sound/weapons/gun/gauss/pistol_reload.ogg'

/obj/item/ammo_casing/energy/kalix/pistol
fire_sound = 'sound/weapons/gun/energy/kalixpistol.ogg'
e_cost = 1250 //10 shots per cell
delay = 0

/obj/item/gun/energy/kalix/pgf/heavy
name = "Etherbor HBG-7"
desc = "For when a BG-16 doesn’t cut it, the far bulkier HBG-7, provided by your friends at Etherbor Industries, has the stopping power and fire rate to bring down any target where a smaller caliber weapon just wouldn't cut it."
desc = "The HBG-7 is the standard-issue rifle weapon of the PGF. If the stopping power and fire rate isn't enough, it comes with a DMR mode that has greater armor piercing for dealing with armored targets."
icon_state = "pgfheavy"
item_state = "pgfheavy"
icon = 'icons/obj/guns/faction/gezena/48x32.dmi'
mob_overlay_icon = 'icons/mob/clothing/faction/gezena/back.dmi'
w_class = WEIGHT_CLASS_HUGE
w_class = WEIGHT_CLASS_BULKY
slot_flags = ITEM_SLOT_BACK

modifystate = FALSE

wield_delay = 0.7 SECONDS
wield_slowdown = 0.6

spread = 0
spread_unwielded = 20

ammo_type = list(/obj/item/ammo_casing/energy/pgf/heavy)
ammo_type = list(/obj/item/ammo_casing/energy/pgf/assault, /obj/item/ammo_casing/energy/pgf/sniper)

/obj/projectile/beam/hitscan/pgf/heavy
damage = 35
/obj/item/gun/energy/kalix/pgf/heavy/ComponentInitialize()
. = ..()
AddComponent(/datum/component/automatic_fire, 0.2 SECONDS)

/obj/item/ammo_casing/energy/pgf/assault
select_name = "AR"
projectile_type = /obj/projectile/beam/hitscan/kalix/pgf/assault
fire_sound = 'sound/weapons/gun/energy/kalixrifle.ogg'
e_cost = 1000 //20 shots per cell
delay = 1

/obj/projectile/beam/hitscan/kalix/pgf/assault
tracer_type = /obj/effect/projectile/tracer/pgf/rifle
muzzle_type = /obj/effect/projectile/muzzle/pgf/rifle
impact_type = /obj/effect/projectile/impact/pgf/rifle
damage = 25 //bar
armour_penetration = 20
range = 12
damage_constant = 0.9

/obj/item/ammo_casing/energy/pgf/sniper
select_name = "DMR"
projectile_type = /obj/projectile/beam/hitscan/kalix/pgf/sniper
fire_sound = 'sound/weapons/gun/laser/heavy_laser.ogg'
e_cost = 2000 //20 shots per cell
delay = 6

/obj/projectile/beam/hitscan/kalix/pgf/sniper
tracer_type = /obj/effect/projectile/tracer/laser/emitter
muzzle_type = /obj/effect/projectile/muzzle/laser/emitter
impact_type = /obj/effect/projectile/impact/laser/emitter

damage = 35
armour_penetration = 40
range = 20
damage_constant = 1

/obj/item/gun/energy/kalix/pgf/heavy/sniper
name = "Etherbor HBG-7L"
desc = "HBG-7 with a longer barrel and scope. Intended to get the best use out of the DMR mode, it suffers if used normally from longer wield times and slowdown"
icon_state = "pgfheavy_sniper"
item_state = "pgfheavy_sniper"

zoomable = TRUE
zoom_amt = 10 //Long range, enough to see in front of you, but no tiles behind you.
zoom_out_amt = 5

spread = -5
spread_unwielded = 40

/obj/item/ammo_casing/energy/pgf/heavy
projectile_type = /obj/projectile/beam/hitscan/pgf/heavy
fire_sound = 'sound/weapons/gun/energy/lasersniper.ogg'
e_cost = 2000
wield_slowdown = 1
wield_delay = 1.3 SECONDS
1 change: 1 addition & 0 deletions code/modules/projectiles/projectile/beams.dm
Original file line number Diff line number Diff line change
Expand Up @@ -108,6 +108,7 @@
name = "disabler beam"
icon_state = "omnilaser"
damage = 30
armour_penetration = -20
damage_type = STAMINA
flag = "energy"
hitsound = 'sound/weapons/tap.ogg'
Expand Down
Binary file modified icons/mob/clothing/back.dmi
Binary file not shown.
Binary file modified icons/mob/clothing/belt_mirror.dmi
Binary file not shown.
Binary file modified icons/mob/clothing/faction/gezena/belt.dmi
Binary file not shown.
Binary file modified icons/obj/guns/faction/gezena/48x32.dmi
Binary file not shown.
Binary file modified icons/obj/guns/faction/gezena/energy.dmi
Binary file not shown.
Binary file modified icons/obj/guns/faction/gezena/lefthand.dmi
Binary file not shown.
Binary file modified icons/obj/guns/faction/gezena/righthand.dmi
Binary file not shown.
Binary file modified icons/obj/projectiles_impact.dmi
Binary file not shown.
Binary file modified icons/obj/projectiles_muzzle.dmi
Binary file not shown.
Binary file modified icons/obj/projectiles_tracer.dmi
Binary file not shown.
Binary file added sound/weapons/gun/energy/kalixpistol.ogg
Binary file not shown.
File renamed without changes.
File renamed without changes.

0 comments on commit 6bb4dd6

Please sign in to comment.