From f8d9eecec5cff0b7687ba79349ff15ebf774a383 Mon Sep 17 00:00:00 2001 From: sarcoph <83266791+sarcoph@users.noreply.github.com> Date: Wed, 4 May 2022 15:38:46 -0800 Subject: [PATCH] fixing arousal% redundancy + butt sprite --- .../code/modules/arousal/arousalhud.dm | 16 ++--- hyperstation/icons/obj/genitals/butt.dmi | Bin 2723 -> 2632 bytes .../code/modules/arousal/arousal.dm | 55 +++++------------- 3 files changed, 22 insertions(+), 49 deletions(-) diff --git a/hyperstation/code/modules/arousal/arousalhud.dm b/hyperstation/code/modules/arousal/arousalhud.dm index 802f43c90..264735710 100644 --- a/hyperstation/code/modules/arousal/arousalhud.dm +++ b/hyperstation/code/modules/arousal/arousalhud.dm @@ -140,7 +140,7 @@ T.toggle_visibility(picked_visibility) if(href_list["masturbate"]) - if (H.arousalloss >= (H.max_arousal / 100) * 33) //requires 33% arousal. + if (H.arousalloss >= H.isPercentAroused(33)) //requires 33% arousal. H.solomasturbate() return else @@ -148,7 +148,7 @@ return if(href_list["container"]) - if (H.arousalloss >= (H.max_arousal / 100) * 33) //requires 33% arousal. + if (H.arousalloss >= H.isPercentAroused(33)) //requires 33% arousal. H.cumcontainer() return else @@ -156,7 +156,7 @@ return if(href_list["clothesplosion"]) - if (H.arousalloss >= (H.max_arousal / 100) * 33) //Requires 33% arousal. + if (H.arousalloss >= H.isPercentAroused(33)) //Requires 33% arousal. H.clothesplosion() return else @@ -164,7 +164,7 @@ return if(href_list["climaxself"]) - if (H.arousalloss >= (H.max_arousal / 100) * 33) //requires 33% arousal. + if (H.arousalloss >= H.isPercentAroused(33)) //requires 33% arousal. H.climaxself() return else @@ -172,7 +172,7 @@ return if(href_list["climax"]) - if (H.arousalloss >= (H.max_arousal / 100) * 33) //requires 33% arousal. + if (H.arousalloss >= H.isPercentAroused(33)) //requires 33% arousal. H.climaxalone(FALSE) return else @@ -180,7 +180,7 @@ return if(href_list["climaxover"]) - if (H.arousalloss >= (H.max_arousal / 100) * 33) //requires 33% arousal. + if (H.arousalloss >= H.isPercentAroused(33)) //requires 33% arousal. H.climaxover(usr.pulling) return else @@ -188,7 +188,7 @@ return if(href_list["climaxwith"]) - if (H.arousalloss >= (H.max_arousal / 100) * 33) //requires 33% arousal. + if (H.arousalloss >= H.isPercentAroused(33)) //requires 33% arousal. H.climaxwith(usr.pulling) return else @@ -196,7 +196,7 @@ return if(href_list["impreg"]) - if (H.arousalloss >= (H.max_arousal / 100) * 33) //requires 33% arousal. + if (H.arousalloss >= H.isPercentAroused(33)) //requires 33% arousal. H.impregwith(usr.pulling) return else diff --git a/hyperstation/icons/obj/genitals/butt.dmi b/hyperstation/icons/obj/genitals/butt.dmi index 55f746287107b430642fff05e2deb7ac3e4c76b4..186dfffbdb6901e95ddf5a6bf07b4a189f64db8c 100644 GIT binary patch delta 2502 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 ((max_arousal / 100) * 33)) + if(getArousalLoss() >= isPercentAroused(33)) G.aroused_state = TRUE else G.aroused_state = FALSE @@ -166,41 +167,13 @@ return FALSE else if(hud_used.arousal) - if(stat == DEAD) - hud_used.arousal.icon_state = "arousal0" - return TRUE - if(getArousalLoss() == max_arousal) - hud_used.arousal.icon_state = "arousal100" - return TRUE - if(getArousalLoss() >= (max_arousal / 100) * 90)//M O D U L A R , W O W - hud_used.arousal.icon_state = "arousal90" - return TRUE - if(getArousalLoss() >= (max_arousal / 100) * 80)//M O D U L A R , W O W - hud_used.arousal.icon_state = "arousal80" - return TRUE - if(getArousalLoss() >= (max_arousal / 100) * 70)//M O D U L A R , W O W - hud_used.arousal.icon_state = "arousal70" - return TRUE - if(getArousalLoss() >= (max_arousal / 100) * 60)//M O D U L A R , W O W - hud_used.arousal.icon_state = "arousal60" - return TRUE - if(getArousalLoss() >= (max_arousal / 100) * 50)//M O D U L A R , W O W - hud_used.arousal.icon_state = "arousal50" - return TRUE - if(getArousalLoss() >= (max_arousal / 100) * 40)//M O D U L A R , W O W - hud_used.arousal.icon_state = "arousal40" - return TRUE - if(getArousalLoss() >= (max_arousal / 100) * 30)//M O D U L A R , W O W - hud_used.arousal.icon_state = "arousal30" - return TRUE - if(getArousalLoss() >= (max_arousal / 100) * 20)//M O D U L A R , W O W - hud_used.arousal.icon_state = "arousal10" - return TRUE - if(getArousalLoss() >= (max_arousal / 100) * 10)//M O D U L A R , W O W - hud_used.arousal.icon_state = "arousal10" - return TRUE - else - hud_used.arousal.icon_state = "arousal0" + var/arousal_state = "arousal0" + if(!stat == DEAD) + var/arousal_percent = getPercentAroused() + var/arousal_rounded = FLOOR(arousal_percent, 10) + arousal_state = "arousal[arousal_rounded]" + hud_used.arousal.icon_state = arousal_state + return TRUE /obj/screen/arousal name = "arousal" @@ -227,12 +200,12 @@ if(mb_cd_timer <= world.time) //start the cooldown even if it fails mb_cd_timer = world.time + mb_cd_length - if(getArousalLoss() >= ((max_arousal / 100) * 33))//33% arousal or greater required + if(getArousalLoss() >= isPercentAroused(33))//33% arousal or greater required src.visible_message("[src] starts masturbating!", \ - "You start masturbating.") + "You start masturbating.") if(do_after(src, 30, target = src)) src.visible_message("[src] relieves [p_them()]self!", \ - "You have relieved yourself.") + "You have relieved yourself.") SEND_SIGNAL(src, COMSIG_ADD_MOOD_EVENT, "orgasm", /datum/mood_event/orgasm) setArousalLoss(min_arousal) else