mirror of
https://github.com/KabKebab/GS13.git
synced 2026-07-11 07:59:08 +01:00
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)
This commit is contained in:
@@ -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."
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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, "<span class='notice'>The glittering orange liquid disappears instantly as you touch it. You feel a strange, warm sensation inside, growing stronger the more you move...</span>")
|
||||
curse_given = 1
|
||||
|
||||
@@ -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"
|
||||
@@ -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
|
||||
|
||||
Binary file not shown.
|
Before Width: | Height: | Size: 38 KiB After Width: | Height: | Size: 38 KiB |
+3
-2
@@ -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"
|
||||
|
||||
Reference in New Issue
Block a user