diff --git a/ModularTegustation/ego_weapons/_ego_weapon.dm b/ModularTegustation/ego_weapons/_ego_weapon.dm index b0c12da5d40e..0d2f24be2d4e 100644 --- a/ModularTegustation/ego_weapons/_ego_weapon.dm +++ b/ModularTegustation/ego_weapons/_ego_weapon.dm @@ -71,10 +71,13 @@ user.changeNext_move(CLICK_CD_MELEE * attack_speed) return TRUE -/obj/item/ego_weapon/attack(mob/living/M, mob/living/user) +/obj/item/ego_weapon/attack(mob/living/M, mob/living/carbon/human/user) . = ..() if(stuntime) - user.Immobilize(stuntime) + //You can remove a small amount of stuntime, about 30%, based off your fortitude + var/usedstun = stuntime*0.7 + min(get_attribute_level(user, FORTITUDE_ATTRIBUTE)/130, 1)*0.3 //This should help people hate spears and big weapons less. + + user.Immobilize(usedstun) //Visual stuff to give you better feedback new /obj/effect/temp_visual/weapon_stun(get_turf(user)) new /obj/effect/temp_visual/dir_setting/bloodsplatter(get_turf(M), pick(GLOB.alldirs)) diff --git a/ModularTegustation/ego_weapons/ranged/_ranged.dm b/ModularTegustation/ego_weapons/ranged/_ranged.dm index 9e5bd4f2af3a..c878802a3193 100644 --- a/ModularTegustation/ego_weapons/ranged/_ranged.dm +++ b/ModularTegustation/ego_weapons/ranged/_ranged.dm @@ -65,10 +65,10 @@ var/fire_delay = 0 //rate of fire for burst firing and semi auto var/firing_burst = 0 //Prevent the weapon from firing again while already firing var/semicd = 0 //cooldown handler - var/dual_wield_spread = 24 //additional spread when dual wielding + var/dual_wield_spread = 10 //additional spread when dual wielding var/forced_melee = FALSE //forced to melee attack. Currently only used for the ego_gun subtype - var/spread = 0 //Spread induced by the gun itself. + var/spread = 32 //Spread induced by the gun itself. var/randomspread = 1 //Set to 0 for shotguns. This is used for weapons that don't fire all their bullets at once. var/ammo_x_offset = 0 //used for positioning ammo count overlay on sprite @@ -94,6 +94,8 @@ /obj/item/ego_weapon/ranged/Initialize() . = ..() + if(pellets!=1) + randomspread = 0 if(pin) pin = new pin(src) build_zooming() @@ -135,6 +137,19 @@ if(2.51 to INFINITY) . += span_notice("This weapon has an extremely slow reload.") + switch(spread && pellets == 1) + if(0 to 20) + . += span_notice("This weapon is extremely accurate.") //Generally marksman rifles. + if(21 to 30) + . += span_notice("This weapon is accurate.") //Autorifles, Pistols. + if(31 to 35) + . += span_notice("This weapon is somewhat inaccurate.") //SMGs + else + . += span_notice("This weapon is inaccurate.") //Usually for special cases + + if(pellets!=1) + . += span_notice("This weapon fires [pellets] pellets.") + switch(weapon_weight) if(WEAPON_HEAVY) . += span_notice("This weapon requires both hands to fire.") @@ -191,7 +206,12 @@ is_reloading = TRUE to_chat(user,span_notice("You start loading a new magazine.")) playsound(src, 'sound/weapons/gun/general/slide_lock_1.ogg', 50, TRUE) - if(do_after(user, reloadtime, src)) //gotta reload + + //Get a bonus of up to 40% reload speed to fortitude + var/passreload = min((get_attribute_level(user, FORTITUDE_ATTRIBUTE)-20)/110, 1) + passreload = reloadtime - reloadtime/passreload*0.3 + + if(do_after(user, passreload, src)) //gotta reload playsound(src, 'sound/weapons/gun/general/bolt_rack.ogg', 50, TRUE) shotsleft = initial(shotsleft) forced_melee = FALSE //no longer forced to resort to melee @@ -311,6 +331,8 @@ if(weapon_weight == WEAPON_HEAVY && (user.get_inactive_held_item() || !other_hand)) to_chat(user, span_warning("You need two hands to fire [src]!")) return + + //DUAL (or more!) WIELDING var/bonus_spread = 0 var/loop_counter = 0 @@ -324,6 +346,14 @@ loop_counter++ addtimer(CALLBACK(G, TYPE_PROC_REF(/obj/item/ego_weapon/ranged, process_fire), target, user, TRUE, params, null, bonus_spread), loop_counter) + //Get a small scatter increase for doubling with melee and gun. I am directly nerfing MY playstyle here. + if(user.get_inactive_held_item()) + bonus_spread += spread*0.2 + + //And get a bonus to scatter up to about 40% less when you're at maximum prudence. Clerks get a scatter increase + var/scatter_reduction = min((get_attribute_level(user, PRUDENCE_ATTRIBUTE)-20)/110, 1) + bonus_spread -= scatter_reduction*0.4 + return process_fire(target, user, TRUE, params, null, bonus_spread) /obj/item/ego_weapon/ranged/can_trigger_gun(mob/living/user) diff --git a/ModularTegustation/ego_weapons/ranged/_ranged_projectile.dm b/ModularTegustation/ego_weapons/ranged/_ranged_projectile.dm index f58e1a8e060e..f2b24c6f09cc 100644 --- a/ModularTegustation/ego_weapons/ranged/_ranged_projectile.dm +++ b/ModularTegustation/ego_weapons/ranged/_ranged_projectile.dm @@ -20,6 +20,7 @@ projectile.def_zone = user.zone_selected projectile.suppressed = quiet + projectile.damage += projectile.damage*get_attribute_level(user, JUSTICE_ATTRIBUTE)/130*0.20 //Guns get a 20% bonus from justice projectile.damage *= projectile_damage_multiplier if(temporary_damage_multiplier) projectile.damage *= temporary_damage_multiplier diff --git a/ModularTegustation/ego_weapons/ranged/aleph.dm b/ModularTegustation/ego_weapons/ranged/aleph.dm index 0a38f9fad529..191f7dce4f64 100644 --- a/ModularTegustation/ego_weapons/ranged/aleph.dm +++ b/ModularTegustation/ego_weapons/ranged/aleph.dm @@ -15,7 +15,6 @@ projectile_path = /obj/projectile/ego_bullet/star weapon_weight = WEAPON_HEAVY - spread = 5 autofire = 0.25 SECONDS shotsleft = 333 @@ -58,6 +57,7 @@ force = 56 damtype = BLACK_DAMAGE + spread = 30 projectile_path = /obj/projectile/ego_bullet/adoration weapon_weight = WEAPON_HEAVY @@ -189,6 +189,7 @@ weapon_weight = WEAPON_HEAVY fire_sound = 'sound/abnormalities/armyinblack/pink.ogg' fire_delay = 9 + spread = 5 //small amount zoomable = TRUE zoom_amt = 10 zoom_out_amt = 13 @@ -264,7 +265,7 @@ force = 56 projectile_path = /obj/projectile/ego_bullet/arcadia weapon_weight = WEAPON_HEAVY - spread = 5 + spread = 18 recoil = 1.5 fire_sound = 'sound/weapons/gun/rifle/shot_atelier.ogg' vary_fire_sound = TRUE @@ -303,6 +304,7 @@ recoil = 2 fire_sound_volume = 30 fire_delay = 12 + spread = 32 shotsleft = 6 //Based off a colt Single Action Navy @@ -318,7 +320,6 @@ damtype = PALE_DAMAGE projectile_path = /obj/projectile/ego_bullet/ego_hookah weapon_weight = WEAPON_HEAVY - spread = 20 fire_sound = 'sound/effects/smoke.ogg' autofire = 0.04 SECONDS fire_sound_volume = 5 diff --git a/ModularTegustation/ego_weapons/ranged/he.dm b/ModularTegustation/ego_weapons/ranged/he.dm index fdb16fe0caf6..a38bb540d336 100644 --- a/ModularTegustation/ego_weapons/ranged/he.dm +++ b/ModularTegustation/ego_weapons/ranged/he.dm @@ -10,6 +10,7 @@ weapon_weight = WEAPON_HEAVY fire_delay = 5 shotsleft = 10 + spread = 18 reloadtime = 1.4 SECONDS fire_sound = 'sound/weapons/gun/rifle/shot_alt.ogg' attribute_requirements = list( @@ -30,6 +31,7 @@ vary_fire_sound = FALSE weapon_weight = WEAPON_HEAVY fire_sound_volume = 70 + spread = 32 //It's really heavy attribute_requirements = list( FORTITUDE_ATTRIBUTE = 40 ) @@ -48,6 +50,7 @@ fire_sound = 'sound/magic/wand_teleport.ogg' weapon_weight = WEAPON_MEDIUM fire_sound_volume = 70 + spread = 22 attribute_requirements = list( TEMPERANCE_ATTRIBUTE = 40 ) @@ -85,6 +88,7 @@ vary_fire_sound = FALSE weapon_weight = WEAPON_HEAVY fire_sound_volume = 70 + spread = 27 attribute_requirements = list( TEMPERANCE_ATTRIBUTE = 40 ) @@ -159,6 +163,7 @@ fire_sound_volume = 70 shotsleft = 18 reloadtime = 1.6 SECONDS + spread = 18 //I'm not evil. autofire = 0.35 SECONDS attribute_requirements = list( @@ -175,6 +180,7 @@ weapon_weight = WEAPON_HEAVY fire_delay = 5 shotsleft = 10 + spread = 18 reloadtime = 1.4 SECONDS fire_sound = 'sound/weapons/gun/rifle/shot_alt.ogg' attribute_requirements = list( @@ -193,7 +199,7 @@ weapon_weight = WEAPON_MEDIUM shotsleft = 32 reloadtime = 1.6 SECONDS - spread = 8 + spread = 32 autofire = 0.15 SECONDS attribute_requirements = list( PRUDENCE_ATTRIBUTE = 40 @@ -225,6 +231,7 @@ icon_state = "screamingwedge" inhand_icon_state = "screamingwedge" force = 20 + spread = 15 damtype = WHITE_DAMAGE projectile_path = /obj/projectile/ego_bullet/ego_wedge weapon_weight = WEAPON_HEAVY @@ -249,6 +256,7 @@ weapon_weight = WEAPON_HEAVY fire_delay = 5 shotsleft = 12 + spread = 32 reloadtime = 1.5 SECONDS fire_sound = 'sound/weapons/gun/pistol/shot.ogg' attribute_requirements = list( @@ -327,6 +335,7 @@ fire_delay = 10 shotsleft = 4 reloadtime = 2.1 SECONDS + spread = 18 attribute_requirements = list( FORTITUDE_ATTRIBUTE = 40 ) @@ -342,6 +351,7 @@ fire_delay = 8 shotsleft = 6 reloadtime = 1.3 SECONDS + spread = 24 fire_sound = 'sound/weapons/gun/revolver/shot_alt.ogg' vary_fire_sound = FALSE var/list/ammotypes = list( diff --git a/ModularTegustation/ego_weapons/ranged/special.dm b/ModularTegustation/ego_weapons/ranged/special.dm index b895cc73b57a..0495bebeb12e 100644 --- a/ModularTegustation/ego_weapons/ranged/special.dm +++ b/ModularTegustation/ego_weapons/ranged/special.dm @@ -7,6 +7,7 @@ projectile_path = /obj/projectile/ego_bullet/ego_soda/rifle weapon_weight = WEAPON_HEAVY fire_delay = 3 + spread = 18 fire_sound = 'sound/weapons/gun/rifle/shot.ogg' /obj/item/ego_weapon/ranged/sodashotty @@ -33,6 +34,7 @@ projectile_path = /obj/projectile/ego_bullet/ego_soda weapon_weight = WEAPON_HEAVY spread = 8 + spread = 32 fire_sound = 'sound/weapons/gun/smg/shot.ogg' autofire = 0.15 SECONDS diff --git a/ModularTegustation/ego_weapons/ranged/teth.dm b/ModularTegustation/ego_weapons/ranged/teth.dm index fb979c5db079..07383e0341be 100644 --- a/ModularTegustation/ego_weapons/ranged/teth.dm +++ b/ModularTegustation/ego_weapons/ranged/teth.dm @@ -15,6 +15,7 @@ weapon_weight = WEAPON_HEAVY fire_delay = 15 shotsleft = 8 + spread = 18 //It's a rocket launcher so it should be accurate reloadtime = 2.2 SECONDS fire_sound = 'sound/weapons/ego/cannon.ogg' @@ -27,7 +28,7 @@ force = 14 projectile_path = /obj/projectile/ego_bullet/ego_beak weapon_weight = WEAPON_MEDIUM - spread = 10 + spread = 32 shotsleft = 30 reloadtime = 1.3 SECONDS fire_sound = 'sound/weapons/gun/smg/mp7.ogg' @@ -47,7 +48,8 @@ fire_sound = 'sound/weapons/gun/revolver/shot_alt.ogg' vary_fire_sound = FALSE fire_sound_volume = 70 - dual_wield_spread = 0 + dual_wield_spread = -20 + spread = 18 /obj/item/ego_weapon/ranged/noise name = "noise" @@ -80,6 +82,7 @@ fire_sound = 'sound/weapons/gun/revolver/shot_light.ogg' vary_fire_sound = FALSE fire_sound_volume = 70 + spread = 18 /obj/item/ego_weapon/ranged/pistol/shy name = "todays expression" @@ -95,6 +98,7 @@ shotsleft = 20 reloadtime = 1.2 SECONDS autofire = 0.2 SECONDS + spread = 27 //little bit of a break /obj/item/ego_weapon/ranged/dream name = "engulfing dream" @@ -107,6 +111,7 @@ weapon_weight = WEAPON_HEAVY fire_sound = "dreamy_gun" autofire = 0.25 SECONDS + spread = 32 /obj/item/ego_weapon/ranged/page name = "page" @@ -119,6 +124,7 @@ weapon_weight = WEAPON_HEAVY fire_delay = 5 shotsleft = 10 + spread = 18 reloadtime = 1.4 SECONDS fire_sound = 'sound/weapons/gun/rifle/shot_alt.ogg' @@ -133,6 +139,7 @@ projectile_path = /obj/projectile/beam/snapshot weapon_weight = WEAPON_HEAVY fire_delay = 10 + spread = 18 fire_sound = 'sound/weapons/sonic_jackhammer.ogg' /obj/item/ego_weapon/ranged/wishing_cairn @@ -148,6 +155,7 @@ fire_delay = 3 burst_size = 2 fire_sound = 'sound/abnormalities/pagoda/throw.ogg' + spread = 26 //I guess throwing is inaccurate? var/ammo2 = /obj/projectile/ego_bullet/ego_wishing2 /obj/item/ego_weapon/ranged/wishing_cairn/proc/Ammo_Change() @@ -169,6 +177,7 @@ projectile_path = /obj/projectile/ego_bullet/ego_aspiration weapon_weight = WEAPON_HEAVY autofire = 0.5 SECONDS + spread = 18 fire_sound = 'sound/abnormalities/fragment/attack.ogg' /obj/item/ego_weapon/ranged/aspiration/before_firing(atom/target,mob/user) @@ -209,4 +218,5 @@ projectile_path = /obj/projectile/ego_bullet/ego_luckdraw weapon_weight = WEAPON_HEAVY autofire = 0.6 SECONDS + spread = 32 fire_sound = 'sound/items/handling/paper_pickup.ogg' //Mostly just using this for a lack of a better "card-flicking" noise diff --git a/ModularTegustation/ego_weapons/ranged/waw.dm b/ModularTegustation/ego_weapons/ranged/waw.dm index 1eed0e4cb2b5..aeda217eb183 100644 --- a/ModularTegustation/ego_weapons/ranged/waw.dm +++ b/ModularTegustation/ego_weapons/ranged/waw.dm @@ -34,6 +34,7 @@ fire_delay = 2 shotsleft = 10 reloadtime = 1.4 SECONDS + spread = 18 attribute_requirements = list( FORTITUDE_ATTRIBUTE = 80 ) @@ -52,6 +53,7 @@ weapon_weight = WEAPON_HEAVY fire_delay = 15 fire_sound = 'sound/abnormalities/hatredqueen/attack.ogg' + spread = 23//Made it about as accurate as an autorifle attribute_requirements = list( FORTITUDE_ATTRIBUTE = 60, @@ -87,6 +89,7 @@ projectile_path = /obj/projectile/ego_bullet/ego_magicbullet weapon_weight = WEAPON_HEAVY fire_delay = 30 //Put on the armor, jackass. + spread = 10//okay this should be very accurate shotsleft = 7 reloadtime = 2.1 SECONDS fire_sound = 'sound/abnormalities/freischutz/shoot.ogg' @@ -123,6 +126,7 @@ inhand_icon_state = "solemnlament" special = "Firing both solemn lament and solemn vow at the same time will increase damage by 1.5x" force = 17 + spread = 22 damtype = WHITE_DAMAGE projectile_path = /obj/projectile/ego_bullet/ego_solemnlament fire_delay = 5 @@ -160,6 +164,7 @@ inhand_icon_state = "solemnvow" special = "Firing both solemn lament and solemn vow at the same time will increase damage by 1.5x" force = 17 + spread = 22 damtype = BLACK_DAMAGE projectile_path = /obj/projectile/ego_bullet/ego_solemnvow fire_delay = 5 @@ -213,13 +218,14 @@ desc = "A pistol painted in black with a gold finish. Whenever this EGO is used, a faint scent of fillet mignon wafts through the air." icon_state = "executive" inhand_icon_state = "executive" - special = "This gun scales with justice." + special = "This gun scales significantly more with justice." force = 12 damtype = PALE_DAMAGE burst_size = 1 fire_delay = 5 shotsleft = 10 reloadtime = 0.7 SECONDS + spread = 22 fire_sound = 'sound/weapons/gun/pistol/shot.ogg' vary_fire_sound = FALSE fire_sound_volume = 70 @@ -232,6 +238,7 @@ if(!ishuman(user)) return ..() + //Fuck it, Double justice bonus var/userjust = get_attribute_level(user, JUSTICE_ATTRIBUTE) var/justicemod = 1 + userjust/100 temporary_damage_multiplier = justicemod @@ -284,6 +291,7 @@ inhand_icon_state = "executive" special = "This weapon fires IFF bullets." force = 28 + spread = 32 projectile_path = /obj/projectile/ego_bullet/ego_praetorian fire_sound = 'sound/weapons/gun/pistol/tp17.ogg' autofire = 0.12 SECONDS @@ -308,6 +316,7 @@ shotsleft = 7 reloadtime = 1.2 SECONDS fire_sound = 'sound/abnormalities/freischutz/shoot.ogg' + spread = 10 attribute_requirements = list( TEMPERANCE_ATTRIBUTE = 80 ) @@ -336,6 +345,7 @@ force = 17 projectile_path = /obj/projectile/ego_bullet/ego_laststop weapon_weight = WEAPON_HEAVY + spread = 12 //okay YOU can be extremely accurate fire_delay = 5 shotsleft = 2 reloadtime = 10 SECONDS @@ -352,7 +362,7 @@ force = 17 projectile_path = /obj/projectile/ego_bullet/ego_intention weapon_weight = WEAPON_MEDIUM - spread = 40 + spread = 32 fire_sound = 'sound/weapons/gun/smg/mp7.ogg' autofire = 0.07 SECONDS shotsleft = 50 @@ -368,6 +378,7 @@ icon_state = "aroma" inhand_icon_state = "aroma" force = 28 + spread = 18 damtype = WHITE_DAMAGE projectile_path = /obj/projectile/ego_bullet/ego_aroma weapon_weight = WEAPON_HEAVY @@ -385,6 +396,7 @@ inhand_icon_state = "assonance" special = "This weapon fires a hitscan beam. \nUpon hitting an enemy, this weapon heals a nearby Discord weapon user." force = 28 + spread = 18 damtype = WHITE_DAMAGE projectile_path = /obj/projectile/beam/assonance weapon_weight = WEAPON_HEAVY @@ -407,6 +419,7 @@ weapon_weight = WEAPON_HEAVY special = "This weapon is highly effective in melee." force = 42 + spread = 18 damtype = WHITE_DAMAGE fire_delay = 12 attribute_requirements = list( @@ -426,6 +439,7 @@ special = "Upon hit the targets RED vulnerability is increased by 0.2." damtype = RED_DAMAGE fire_delay = 30 //5 less than the Rend Armor status effect + spread = 18 //It's a launcher weapon fire_sound = 'sound/misc/moist_impact.ogg' attribute_requirements = list( FORTITUDE_ATTRIBUTE = 60, @@ -440,6 +454,7 @@ inhand_icon_state = "warring" special = "This weapon can unleash a special attack by loading a second arrow." force = 28 + spread = 22 //Cool weapon, give it less scatter damtype = BLACK_DAMAGE projectile_path = /obj/projectile/ego_bullet/ego_warring weapon_weight = WEAPON_HEAVY @@ -522,6 +537,7 @@ fire_delay = 13 shotsleft = 7 reloadtime = 1.6 SECONDS + spread = 18 fire_sound = 'sound/weapons/ego/cannon.ogg' attribute_requirements = list( FORTITUDE_ATTRIBUTE = 60, @@ -585,6 +601,7 @@ damtype = WHITE_DAMAGE projectile_path = /obj/projectile/ego_bullet/ego_bride weapon_weight = WEAPON_HEAVY + spread = 18 fire_delay = 5 shotsleft = 10 reloadtime = 1.4 SECONDS @@ -600,6 +617,7 @@ icon_state = "innocence_gun" inhand_icon_state = "innocence_gun" force = 17 + spread = 24 damtype = WHITE_DAMAGE projectile_path = /obj/projectile/ego_bullet/ego_innocence fire_sound = 'sound/abnormalities/orangetree/ding.ogg' @@ -621,6 +639,7 @@ special = "Use this weapon in hand to place a trap that inflicts \ 50 RED damage and alerts the user of the area it was triggered." force = 28 + spread = 18 damtype = WHITE_DAMAGE projectile_path = /obj/projectile/ego_bullet/ego_hypocrisy weapon_weight = WEAPON_HEAVY diff --git a/ModularTegustation/ego_weapons/ranged/zayin.dm b/ModularTegustation/ego_weapons/ranged/zayin.dm index 2a7a1669b91e..b5c53918407b 100644 --- a/ModularTegustation/ego_weapons/ranged/zayin.dm +++ b/ModularTegustation/ego_weapons/ranged/zayin.dm @@ -12,6 +12,7 @@ fire_sound = 'sound/weapons/gun/pistol/shot.ogg' vary_fire_sound = FALSE fire_sound_volume = 70 + spread = 22 var/pulse_cooldown var/pulse_cooldown_time = 60 SECONDS var/blast_delay = 3 SECONDS @@ -69,6 +70,7 @@ burst_size = 1 fire_delay = 5 shotsleft = 12 + spread = 22 reloadtime = 0.8 SECONDS fire_sound = 'sound/weapons/gun/pistol/shot.ogg' vary_fire_sound = FALSE @@ -117,6 +119,7 @@ vary_fire_sound = FALSE fire_sound_volume = 70 fire_delay = 12 + spread = 24 var/pulse_startup var/pulse_startup_time = 10 SECONDS @@ -172,6 +175,7 @@ projectile_path = /obj/projectile/ego_bullet/ego_nightshade burst_size = 1 fire_delay = 10 + spread = 12 fire_sound = 'sound/weapons/bowfire.ogg' vary_fire_sound = FALSE fire_sound_volume = 50 @@ -262,6 +266,7 @@ projectile_path = /obj/projectile/ego_bullet/ego_oceanic burst_size = 1 fire_delay = 5 + spread = 24 shotsleft = 7 reloadtime = 1.2 SECONDS fire_sound = 'sound/weapons/gun/pistol/shot.ogg' diff --git a/code/game/machinery/regenerator.dm b/code/game/machinery/regenerator.dm index 9736136fca1c..32e675f8fd5a 100644 --- a/code/game/machinery/regenerator.dm +++ b/code/game/machinery/regenerator.dm @@ -12,7 +12,7 @@ var/alert_icon = "regen_alert" /// How many HP and SP we restore on each process tick - var/regeneration_amount = 3 + var/regeneration_amount = 1.5 /// Pre-declared variable var/modified = FALSE // Whether or not the regenerator is currently undergoing modified action var/hp_bonus = 0 @@ -70,9 +70,11 @@ continue if(H.health < 0 && !critical_heal) continue - H.adjustBruteLoss(-H.maxHealth * ((regen_amt+hp_bonus)/100)) - H.adjustFireLoss(-H.maxHealth * ((regen_amt+hp_bonus)/1000)) //Heals at 1/10th speed. Supposed to be slower healing than brute and sanity - H.adjustSanityLoss(-H.maxSanity * ((regen_amt+sp_bonus)/100)) + var/prudence_healing = get_attribute_level(H, PRUDENCE_ATTRIBUTE)/50 //Give bonus healing based off your prudence. At about 75 prudence you have 5 healing + prudence_healing += regen_amt + H.adjustBruteLoss(-H.maxHealth * ((prudence_healing+hp_bonus)/100)) + H.adjustFireLoss(-H.maxHealth * ((prudence_healing+hp_bonus)/1000)) //Heals at 1/10th speed. Supposed to be slower healing than brute and sanity + H.adjustSanityLoss(-H.maxSanity * ((prudence_healing+sp_bonus)/100)) if(icon_state != "regen" && !Threat) icon_state = initial(icon_state) @@ -81,7 +83,7 @@ if(burst_cooldown) . += span_warning("[src] is currently offline!") return - . += span_info("[src] restores [regeneration_amount+hp_bonus]% HP and [regeneration_amount+sp_bonus]% SP every 2 seconds.") + . += span_info("[src] restores [regeneration_amount+hp_bonus]% HP and [regeneration_amount+sp_bonus]% SP every 2 seconds. This is increased by how much prudence the person being healed has.") /obj/machinery/regenerator/proc/ProduceIcon(Icon_Color, Type) //Used to be called ProduceGas but due to me using it for a button i had to change it. ProduceGas was a cooler name. -IP var/mutable_appearance/colored_overlay = mutable_appearance(icon, Type)