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

Modularizes the Laser Musket changes #257

Merged
merged 10 commits into from
Oct 23, 2023
41 changes: 0 additions & 41 deletions code/modules/cargo/markets/market_items/weapons.dm
Original file line number Diff line number Diff line change
Expand Up @@ -63,44 +63,3 @@
price_max = CARGO_CRATE_VALUE * 2
stock_max = 2
availability_prob = 50

//monke edits
/datum/market_item/weapon/smoothbore_disabler_prime
name = "Elite Smoothbore Disabler"
desc = "A rare and sought after disabler often used by Nanotrasen's high command, and historical LARPers."
item = /obj/item/gun/energy/disabler/smoothbore/prime

price_min = CARGO_CRATE_VALUE * 3
price_max = CARGO_CRATE_VALUE * 5
stock_max = 2
availability_prob = 40

/datum/market_item/weapon/pipegun_recipe
name = "Diary of a Dead Assistant"
desc = "Found this book in my Archives, had some barely legible scrabblings about making 'The perfect pipegun'. Figured someone here would buy this."
item = /obj/item/book/granter/crafting_recipe/maint_gun/pipegun_prime

price_min = CARGO_CRATE_VALUE * 4
price_max = CARGO_CRATE_VALUE * 5
stock_max = 1
availability_prob = 40

/datum/market_item/weapon/musket_recipe
name = "Journal of a Space Ranger"
desc = "An old banned book written by an eccentric space ranger, notable for its detailed description of how to make powerful improvised lasers."
item = /obj/item/book/granter/crafting_recipe/maint_gun/laser_musket_prime

price_min = CARGO_CRATE_VALUE * 4
price_max = CARGO_CRATE_VALUE * 5
stock_max = 2
availability_prob = 40

/datum/market_item/weapon/smoothbore_recipe
name = "Old Tome"
desc = "Ahoy Maties, I, Captain Whitebeard, have plundered the ol' Nanotrasen station, among the booty retreived was this here tome about smoothbores. Alas, I have no use for its knowlege, so I am droppin it off here."
item = /obj/item/book/granter/crafting_recipe/maint_gun/smoothbore_disabler_prime

price_min = CARGO_CRATE_VALUE * 6
price_max = CARGO_CRATE_VALUE * 8
stock_max = 1
availability_prob = 20
6 changes: 0 additions & 6 deletions code/modules/projectiles/ammunition/energy/laser.dm
Original file line number Diff line number Diff line change
Expand Up @@ -27,16 +27,10 @@
/obj/item/ammo_casing/energy/laser/musket
projectile_type = /obj/projectile/beam/laser/musket
e_cost = 1000
fire_sound = 'sound/weapons/lasercannonfire.ogg' //monke edit: sounds cooler

/obj/item/ammo_casing/energy/laser/musket/prime
projectile_type = /obj/projectile/beam/laser/musket/prime

/obj/item/ammo_casing/energy/laser/musket/syndicate//monke edit: syndicate laser musket
projectile_type = /obj/projectile/beam/laser/musket/syndicate
e_cost = 125
fire_sound = 'sound/weapons/laser2.ogg'

/obj/item/ammo_casing/energy/laser/practice
projectile_type = /obj/projectile/beam/practice
select_name = "practice"
Expand Down
23 changes: 2 additions & 21 deletions code/modules/projectiles/guns/energy/crank_guns.dm
Original file line number Diff line number Diff line change
Expand Up @@ -10,8 +10,9 @@
can_bayonet = TRUE
knife_x_offset = 22
knife_y_offset = 11
//monke edit:fully charges per crank because it was really confusing and unintuitive
//monke edit: fully charges per crank because it was really confusing and unintuitive
//monke edit: increased cooldown time to compensate for increased charge

/obj/item/gun/energy/laser/musket/Initialize(mapload)
. = ..()
AddComponent(/datum/component/two_handed, require_twohands = TRUE, force_wielded = 10)
Expand Down Expand Up @@ -43,26 +44,6 @@
charge_sound_cooldown_time = 1.8 SECONDS, \
)

/obj/item/gun/energy/laser/musket/syndicate
name = "syndicate laser musket"
desc = "A powerful laser(?) weapon, its 4 tetradimensional capacitors can hold 2 shots each, totaling to 8 shots. \
Putting your hand on the control panel gives you a strange tingling feeling, this is probably how you charge it."
icon_state = "musket_syndie"
inhand_icon_state = "musket_syndie"
worn_icon_state = "las_musket_syndie"
ammo_type = list(/obj/item/ammo_casing/energy/laser/musket/syndicate)
w_class = WEIGHT_CLASS_NORMAL
/obj/item/gun/energy/laser/musket/syndicate/Initialize(mapload) //it takes two hand slots and costs 12 tc, they deserve fast recharging
. = ..()
AddComponent( \
/datum/component/gun_crank, \
charging_cell = get_cell(), \
charge_amount = 250, \
cooldown_time = 1.5 SECONDS, \
charge_sound = 'sound/weapons/laser_crank.ogg', \
charge_sound_cooldown_time = 1.3 SECONDS, \
)

/obj/item/gun/energy/disabler/smoothbore
name = "smoothbore disabler"
desc = "A hand-crafted disabler, using a hard knock on an energy cell to fire the stunner laser. A lack of proper focusing means it has little accuracy."
Expand Down
16 changes: 4 additions & 12 deletions code/modules/projectiles/projectile/beams.dm
Original file line number Diff line number Diff line change
Expand Up @@ -58,24 +58,16 @@
name = "low-power laser"
icon_state = "laser_musket"
impact_effect_type = /obj/effect/temp_visual/impact_effect/purple_laser
damage = 30 //monke edit: damage changed from 25 to 30
stamina = 45 //monke edit: brought to disabler level as is on tg
damage = 25
stamina = 40
light_color = COLOR_STRONG_VIOLET
weak_against_armour = TRUE

/obj/projectile/beam/laser/musket/prime
name = "mid-power laser"
damage = 35 //monke edit: damage changed from 30 to 35
stamina = 60 //monke edit: damage changed from 45 to 60
weak_against_armour = FALSE

/obj/projectile/beam/laser/musket/syndicate //monke edit: syndicate laser musket
name = "resonant laser"
damage = 30
stamina = 65
stamina = 45
weak_against_armour = FALSE
armour_penetration = 25 //less powerful than armor piercing rounds
wound_bonus = 10

/obj/projectile/beam/weak
damage = 15
Expand Down Expand Up @@ -132,7 +124,7 @@
/obj/projectile/beam/disabler/smoothbore/prime
name = "focused disabler beam"
weak_against_armour = FALSE
stamina = 65 //monkie edit: changed from 35 to 65(Black market/ERT item only, even rarer is the book to make it)
stamina = 35

/obj/projectile/beam/pulse
name = "pulse"
Expand Down
11 changes: 0 additions & 11 deletions code/modules/uplink/uplink_items/dangerous.dm
Original file line number Diff line number Diff line change
Expand Up @@ -98,14 +98,3 @@
cost = 13
surplus = 50
purchasable_from = ~UPLINK_CLOWN_OPS

/datum/uplink_item/dangerous/laser_musket
name = "Syndicate Laser Musket"
desc = "An exprimental 'rifle' designed by Aethrofusion. This laser(probably) uses alien technology to fit 4 high energy capacitors \
into a small rifle which can be stored safely(?) in any backpack. To charge, simply press down on the main control panel. \
Rumors of this 'siphoning power off your lifeforce' are greatly exaggerated, and Aethrofusion assures safety for up to 2 years of use."
item = /obj/item/gun/energy/laser/musket/syndicate
progression_minimum = 30 MINUTES
cost = 12
surplus = 40
purchasable_from = ~UPLINK_CLOWN_OPS
Binary file modified icons/mob/inhands/weapons/guns_lefthand.dmi
Binary file not shown.
Binary file modified icons/mob/inhands/weapons/guns_righthand.dmi
Binary file not shown.
Binary file modified icons/obj/weapons/guns/energy.dmi
Binary file not shown.
49 changes: 49 additions & 0 deletions monkestation/code/game/objects/items/guns/crank_guns.dm
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
/obj/item/gun/energy/laser/musket/syndicate
name = "syndicate laser musket"
desc = "A powerful laser(?) weapon, its 4 tetradimensional capacitors can hold 2 shots each, totaling to 8 shots. \
Putting your hand on the control panel gives you a strange tingling feeling, this is probably how you charge it."
icon = 'monkestation/icons/obj/guns/guns.dmi'
icon_state = "musket_syndie"
inhand_icon_state = "musket_syndie"
lefthand_file = 'monkestation/icons/mob/inhands/weapons/guns_lefthand.dmi'
righthand_file = 'monkestation/icons/mob/inhands/weapons/guns_righthand.dmi'
worn_icon_state = "las_musket_syndie"
ammo_type = list(/obj/item/ammo_casing/energy/laser/musket/syndicate)
w_class = WEIGHT_CLASS_NORMAL
/obj/item/gun/energy/laser/musket/syndicate/Initialize(mapload) //it takes two hand slots and costs 12 tc, they deserve fast recharging
. = ..()
AddComponent( \
/datum/component/gun_crank, \
charging_cell = get_cell(), \
charge_amount = 250, \
cooldown_time = 1.5 SECONDS, \
charge_sound = 'sound/weapons/laser_crank.ogg', \
charge_sound_cooldown_time = 1.3 SECONDS, \
)

/obj/projectile/beam/laser/musket
damage = 30
stamina = 45

/obj/projectile/beam/laser/musket/prime
damage = 35
stamina = 60

/obj/projectile/beam/disabler/smoothbore/prime
stamina = 65

/obj/item/ammo_casing/energy/laser/musket
fire_sound = 'sound/weapons/lasercannonfire.ogg'

/obj/item/ammo_casing/energy/laser/musket/syndicate
projectile_type = /obj/projectile/beam/laser/musket/syndicate
e_cost = 125
fire_sound = 'sound/weapons/laser2.ogg'

/obj/projectile/beam/laser/musket/syndicate
name = "resonant laser"
damage = 30
stamina = 65
weak_against_armour = FALSE
armour_penetration = 25 //less powerful than armor piercing rounds
wound_bonus = 10
11 changes: 11 additions & 0 deletions monkestation/code/modules/antagonists/uplink_items/weapons.dm
Original file line number Diff line number Diff line change
Expand Up @@ -4,3 +4,14 @@
made out of hardlight that the user can use to wreak havoc."
item = /obj/item/storage/box/syndie_kit/imp_hard_spear
cost = 10

/datum/uplink_item/dangerous/laser_musket
name = "Syndicate Laser Musket"
desc = "An exprimental 'rifle' designed by Aetherofusion. This laser(probably) uses alien technology to fit 4 high energy capacitors \
into a small rifle which can be stored safely(?) in any backpack. To charge, simply press down on the main control panel. \
Rumors of this 'siphoning power off your lifeforce' are greatly exaggerated, and Aetherofusion assures safety for up to 2 years of use."
item = /obj/item/gun/energy/laser/musket/syndicate
progression_minimum = 30 MINUTES
cost = 12
surplus = 40
purchasable_from = ~UPLINK_CLOWN_OPS
39 changes: 39 additions & 0 deletions monkestation/code/modules/cargo/markets/market_items.dm
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
/datum/market_item/weapon/smoothbore_disabler_prime
name = "Elite Smoothbore Disabler"
desc = "A rare and sought after disabler often used by Nanotrasen's high command, and historical LARPers."
item = /obj/item/gun/energy/disabler/smoothbore/prime

price_min = CARGO_CRATE_VALUE * 3
price_max = CARGO_CRATE_VALUE * 5
stock_max = 2
availability_prob = 40

/datum/market_item/weapon/pipegun_recipe
name = "Diary of a Dead Assistant"
desc = "Found this book in my Archives, had some barely legible scrabblings about making 'The perfect pipegun'. Figured someone here would buy this."
item = /obj/item/book/granter/crafting_recipe/maint_gun/pipegun_prime

price_min = CARGO_CRATE_VALUE * 4
price_max = CARGO_CRATE_VALUE * 5
stock_max = 1
availability_prob = 40

/datum/market_item/weapon/musket_recipe
name = "Journal of a Space Ranger"
desc = "An old banned book written by an eccentric space ranger, notable for its detailed description of how to make powerful improvised lasers."
item = /obj/item/book/granter/crafting_recipe/maint_gun/laser_musket_prime

price_min = CARGO_CRATE_VALUE * 4
price_max = CARGO_CRATE_VALUE * 5
stock_max = 2
availability_prob = 40

/datum/market_item/weapon/smoothbore_recipe
name = "Old Tome"
desc = "Ahoy Maties, I, Captain Whitebeard, have plundered the ol' Nanotrasen station, among the booty retreived was this here tome about smoothbores. Alas, I have no use for its knowlege, so I am droppin it off here."
item = /obj/item/book/granter/crafting_recipe/maint_gun/smoothbore_disabler_prime

price_min = CARGO_CRATE_VALUE * 6
price_max = CARGO_CRATE_VALUE * 8
stock_max = 1
availability_prob = 20
Binary file modified monkestation/icons/mob/inhands/weapons/guns_lefthand.dmi
Binary file not shown.
Binary file modified monkestation/icons/mob/inhands/weapons/guns_righthand.dmi
Binary file not shown.
Binary file modified monkestation/icons/obj/guns/guns.dmi
Binary file not shown.
2 changes: 2 additions & 0 deletions tgstation.dme
Original file line number Diff line number Diff line change
Expand Up @@ -5530,6 +5530,7 @@
#include "monkestation\code\game\objects\items\effects\washing_machine.dm"
#include "monkestation\code\game\objects\items\food\spaghetti.dm"
#include "monkestation\code\game\objects\items\grenades\monkey_barrel.dm"
#include "monkestation\code\game\objects\items\guns\crank_guns.dm"
#include "monkestation\code\game\objects\items\guns\shotguns.dm"
#include "monkestation\code\game\objects\items\guns\SRN.dm"
#include "monkestation\code\game\objects\items\implants\hardlight.dm"
Expand Down Expand Up @@ -5753,6 +5754,7 @@
#include "monkestation\code\modules\cargo\crates\science.dm"
#include "monkestation\code\modules\cargo\crates\security.dm"
#include "monkestation\code\modules\cargo\crates\service.dm"
#include "monkestation\code\modules\cargo\markets\market_items.dm"
#include "monkestation\code\modules\cargoborg\code\cargo_module.dm"
#include "monkestation\code\modules\cargoborg\code\cargo_teleporter.dm"
#include "monkestation\code\modules\cargoborg\code\cargoborg_items.dm"
Expand Down