From b63d973f416bd48a45c41f680c997db19cf5f5c5 Mon Sep 17 00:00:00 2001 From: evilew Date: Fri, 8 Mar 2024 00:06:24 +0100 Subject: [PATCH] tweaks + metabolism gun - added AL-T-Ray, a raygun that changes the targets weight gain and loss rates - added ALTR to NutriTech Weapons research node - the calorite fountain's curse now lasts 2000 steps - fatoray gun projectiles can now reflect off reflective surfaces (like titanium) --- .../modules/research/designs/nutri_designs.dm | 17 ++- .../research/techweb/nutritech_nodes.dm | 2 +- GainStation13/code/obj/structure/fountain.dm | 2 +- GainStation13/code/obj/weapons/alter_rays.dm | 144 ++++++++++++++++++ GainStation13/code/obj/weapons/fatoray.dm | 4 + icons/obj/guns/energy.dmi | Bin 39138 -> 39172 bytes tgstation.dme | 5 +- 7 files changed, 168 insertions(+), 6 deletions(-) create mode 100644 GainStation13/code/obj/weapons/alter_rays.dm diff --git a/GainStation13/code/modules/research/designs/nutri_designs.dm b/GainStation13/code/modules/research/designs/nutri_designs.dm index f62e6a00..fa28e3d5 100644 --- a/GainStation13/code/modules/research/designs/nutri_designs.dm +++ b/GainStation13/code/modules/research/designs/nutri_designs.dm @@ -2,11 +2,13 @@ ///GS13 designs / nutri designs ///////////////////////////////////////// + +//nutritech weapons /datum/design/fatoray_weak name = "Basic Fatoray" id = "fatoray_weak" build_type = PROTOLATHE - materials = list(MAT_METAL = 8000, MAT_GLASS = 6000, MAT_CALORITE = 20000) + materials = list(MAT_METAL = 8000, MAT_GLASS = 6000, MAT_CALORITE = 10000) construction_time = 75 build_path = /obj/item/gun/energy/fatoray/weak category = list("Weapons") @@ -16,12 +18,23 @@ name = "Cannonshot Fatoray" id = "fatoray_cannon_weak" build_type = PROTOLATHE - materials = list(MAT_METAL = 10000, MAT_GLASS = 8000, MAT_CALORITE = 30000) + materials = list(MAT_METAL = 10000, MAT_GLASS = 8000, MAT_CALORITE = 20000) construction_time = 200 build_path = /obj/item/gun/energy/fatoray/cannon_weak category = list("Weapons") departmental_flags = DEPARTMENTAL_FLAG_MEDICAL | DEPARTMENTAL_FLAG_SCIENCE | DEPARTMENTAL_FLAG_SECURITY +/datum/design/alter_ray + name = "AL-T-Ray: Metabolism" + id = "alter_ray" + build_type = PROTOLATHE + materials = list(MAT_METAL = 10000, MAT_GLASS = 8000, MAT_CALORITE = 26000) + construction_time = 200 + build_path = /obj/item/gun/energy/laser/alter_ray/gainrate + category = list("Weapons") + departmental_flags = DEPARTMENTAL_FLAG_MEDICAL | DEPARTMENTAL_FLAG_SCIENCE | DEPARTMENTAL_FLAG_SECURITY + +//nutritech tools /datum/design/calorite_collar name = "Calorite Collar" desc = "A collar that amplifies caloric intake of the wearer." diff --git a/GainStation13/code/modules/research/techweb/nutritech_nodes.dm b/GainStation13/code/modules/research/techweb/nutritech_nodes.dm index 8434df4f..72931afc 100644 --- a/GainStation13/code/modules/research/techweb/nutritech_nodes.dm +++ b/GainStation13/code/modules/research/techweb/nutritech_nodes.dm @@ -16,7 +16,7 @@ display_name = "Nutri-Tech Weapons" description = "Ever wanted to reach your daily caloric intake in just 5 seconds?" prereq_ids = list("biotech", "adv_engi") - design_ids = list("fatoray_weak", "fatoray_cannon_weak") + design_ids = list("fatoray_weak", "fatoray_cannon_weak", "alter_ray") research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 5000) boost_item_paths = list(/obj/item/gun/energy/fatoray, /obj/item/gun/energy/fatoray/cannon, /obj/item/trash/fatoray_scrap1, /obj/item/trash/fatoray_scrap2) export_price = 10000 diff --git a/GainStation13/code/obj/structure/fountain.dm b/GainStation13/code/obj/structure/fountain.dm index ab18274e..b7623248 100644 --- a/GainStation13/code/obj/structure/fountain.dm +++ b/GainStation13/code/obj/structure/fountain.dm @@ -22,7 +22,7 @@ return if (ishuman(user) && user.has_dna()) user.cursed_fat = 1 - user.fattening_steps_left += 100 + user.fattening_steps_left += 2000 icon_state = "empty" to_chat(user, "The glittering orange liquid disappears instantly as you touch it. You feel a strange, warm sensation inside, growing stronger the more you move...") curse_given = 1 diff --git a/GainStation13/code/obj/weapons/alter_rays.dm b/GainStation13/code/obj/weapons/alter_rays.dm new file mode 100644 index 00000000..9c232095 --- /dev/null +++ b/GainStation13/code/obj/weapons/alter_rays.dm @@ -0,0 +1,144 @@ +/////GS13 - rayguns for metabolism and breasts/ass manipulation + +//this is pretty wonky code, but ig it works + +/obj/item/gun/energy/laser/alter_ray + name = "alter-ray" + icon = 'icons/obj/guns/energy.dmi' + icon_state = "lasernew" + desc = "This weapon is capable of altering one's body capabilities." + item_state = null + selfcharge = EGUN_SELFCHARGE + charge_delay = 5 + ammo_x_offset = 2 + clumsy_check = 1 + +/obj/item/gun/energy/laser/alter_ray/gainrate + name = "AL-T-Ray: Metabolism" + desc = "This weapon is capable of altering one's body capabilities. This model appears to be capable of altering one's weight gain and loss rate by 10%." + ammo_type = list(/obj/item/ammo_casing/energy/laser/gainrate_decrease, /obj/item/ammo_casing/energy/laser/gainrate_increase, /obj/item/ammo_casing/energy/laser/lossrate_decrease, /obj/item/ammo_casing/energy/laser/lossrate_increase) + + +// /obj/item/gun/energy/laser/alter_ray/assbreasts //genius name, I know +// name = "AL-T-Ray: Voluptousness" +// desc = "This weapon is capable of altering one's body capabilities. This model appears to be capable of altering the size's of one's breasts or buttocks." +// ammo_type = list(/obj/item/ammo_casing/energy/laser/shrinkray, /obj/item/ammo_casing/energy/laser/growthray) + + +/obj/item/projectile/alter_ray + name = "sizeray beam" + icon_state = "omnilaser" + hitsound = null + damage = 0 + damage_type = STAMINA + flag = "laser" + pass_flags = PASSTABLE | PASSGLASS | PASSGRILLE + ricochets_max = 50 + ricochet_chance = 80 + is_reflectable = TRUE + var/ratechange_amount = 0.1 + + +//projectile biz + +/obj/item/projectile/alter_ray/gainrate_decrease + icon_state="bluelaser" + +/obj/item/projectile/alter_ray/gainrate_increase + icon_state="laser" + +/obj/item/projectile/alter_ray/lossrate_decrease + icon_state="bluelaser" + +/obj/item/projectile/alter_ray/lossrate_increase + icon_state="laser" + +// /obj/item/projectile/alter_ray/breast_decrease +// icon_state="bluelaser" + +// /obj/item/projectile/alter_ray/breast_increase +// icon_state="laser" + +// /obj/item/projectile/alter_ray/butt_decrease +// icon_state="bluelaser" + +// /obj/item/projectile/alter_ray/butt_increase +// icon_state="laser" + +//laser hitting / changing code + +//wg rate increase +/obj/item/projectile/alter_ray/gainrate_increase/on_hit(atom/target, blocked) + . = ..() + + var/mob/living/carbon/gainer = target + + if(iscarbon(gainer)) + if(gainer.weight_gain_rate <= 3) + gainer.weight_gain_rate += ratechange_amount + return TRUE + return FALSE + + return FALSE + + +//wg rate decrease +/obj/item/projectile/alter_ray/gainrate_decrease/on_hit(atom/target, blocked) + . = ..() + + var/mob/living/carbon/gainer = target + + if(iscarbon(gainer)) + if(gainer.weight_gain_rate >= 0.11) + gainer.weight_gain_rate -= ratechange_amount + return TRUE + if(gainer.weight_gain_rate <= 0.1) + return FALSE + + return FALSE + +//wl rate increase +/obj/item/projectile/alter_ray/lossrate_increase/on_hit(atom/target, blocked) + . = ..() + + var/mob/living/carbon/gainer = target + + if(iscarbon(gainer)) + if(gainer.weight_loss_rate <= 3) + gainer.weight_loss_rate += ratechange_amount + return TRUE + return FALSE + + return FALSE + +//wl rate decrease +/obj/item/projectile/alter_ray/lossrate_decrease/on_hit(atom/target, blocked) + . = ..() + + var/mob/living/carbon/gainer = target + + if(iscarbon(gainer)) + if(gainer.weight_loss_rate >= 0.11) + gainer.weight_loss_rate -= ratechange_amount + return TRUE + if(gainer.weight_loss_rate <= 0.1) + return FALSE + + return FALSE + +//ammo casings - these are needed to allow guns to switch between firing modes +/obj/item/ammo_casing/energy/laser/gainrate_increase + projectile_type = /obj/item/projectile/alter_ray/gainrate_increase + select_name = "Weight Gain Increase" + +/obj/item/ammo_casing/energy/laser/gainrate_decrease + projectile_type = /obj/item/projectile/alter_ray/gainrate_decrease + select_name = "Weight Gain Decrease" + +/obj/item/ammo_casing/energy/laser/lossrate_increase + projectile_type = /obj/item/projectile/alter_ray/lossrate_increase + select_name = "Weight Loss Increase" + +/obj/item/ammo_casing/energy/laser/lossrate_decrease + projectile_type = /obj/item/projectile/alter_ray/lossrate_decrease + select_name = "Weight Loss Decrease" diff --git a/GainStation13/code/obj/weapons/fatoray.dm b/GainStation13/code/obj/weapons/fatoray.dm index 21b78e11..8de22d38 100644 --- a/GainStation13/code/obj/weapons/fatoray.dm +++ b/GainStation13/code/obj/weapons/fatoray.dm @@ -30,8 +30,12 @@ is_reflectable = TRUE light_range = 2 light_color = LIGHT_COLOR_ORANGE + ricochets_max = 50 + ricochet_chance = 80 + is_reflectable = TRUE ///How much fat is added to the target mob? var/fat_added = 100 + ////// Fatoray - cannon variant, strong but can be charged diff --git a/icons/obj/guns/energy.dmi b/icons/obj/guns/energy.dmi index 4c0c9180ebf4686cb5967f2a311b522e28b4804b..7f5b0543bb8c4b1a7f8aeb0532d3c77d3273f670 100644 GIT binary patch delta 18375 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 M07*qoM6N<$g4cAh-T(jq diff --git a/tgstation.dme b/tgstation.dme index 3e2b8a80..9950ebb3 100644 --- a/tgstation.dme +++ b/tgstation.dme @@ -3095,8 +3095,8 @@ #include "GainStation13\code\modules\food_and_drinks\drinks.dm" #include "GainStation13\code\modules\food_and_drinks\food.dm" #include "GainStation13\code\modules\food_and_drinks\recipes_bigpizza.dm" -#include "GainStation13\code\modules\food_and_drinks\recipes\recipes_ported.dm" #include "GainStation13\code\modules\food_and_drinks\objects\candy_flora.dm" +#include "GainStation13\code\modules\food_and_drinks\recipes\recipes_ported.dm" #include "GainStation13\code\modules\mob\living\emote.dm" #include "GainStation13\code\modules\reagents\chemistry\reagents\consumable_reagents.dm" #include "GainStation13\code\modules\reagents\chemistry\reagents\dwarverndrinks.dm" @@ -3117,8 +3117,9 @@ #include "GainStation13\code\obj\structure\fountain.dm" #include "GainStation13\code\obj\structure\gsstatues.dm" #include "GainStation13\code\obj\structure\scale.dm" -#include "GainStation13\code\obj\weapons\fatoray.dm" +#include "GainStation13\code\obj\weapons\alter_rays.dm" #include "GainStation13\code\obj\weapons\fatbeam.dm" +#include "GainStation13\code\obj\weapons\fatoray.dm" #include "hyperstation\code\__DEFINES\economy.dm" #include "hyperstation\code\__DEFINES\wendigo.dm" #include "hyperstation\code\controllers\subsystem\economy.dm"