mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2026-07-20 04:26:03 +01:00
Buffs immersion, adds manual blinking and inhale/exhale checks (#47704)
* *blink *inhale *exhale *blink *inhale *blink *exhale * rapidly blinks * mass immersion * how was that even working * manual blinking today, manual breathing tomorrow * b * cleansed * more neatening * minus check * Update code/modules/admin/verbs/randomverbs.dm Co-Authored-By: Emmett Gaines <ninjanomnom@gmail.com> * un-nom's my code Co-Authored-By: Emmett Gaines <ninjanomnom@gmail.com> * un-nom's my code * less
This commit is contained in:
@@ -69,6 +69,8 @@
|
||||
<A href='?src=[REF(src)];[HrefToken()];secrets=changebombcap'>Change bomb cap</A><BR>
|
||||
<A href='?src=[REF(src)];[HrefToken()];secrets=masspurrbation'>Mass Purrbation</A><BR>
|
||||
<A href='?src=[REF(src)];[HrefToken()];secrets=massremovepurrbation'>Mass Remove Purrbation</A><BR>
|
||||
<A href='?src=[REF(src)];[HrefToken()];secrets=massimmerse'>Fully Immerse Everyone</A><BR>
|
||||
<A href='?src=[REF(src)];[HrefToken()];secrets=unmassimmerse'>Un-Fully Immerse Everyone</A><BR>
|
||||
"}
|
||||
|
||||
dat += "<BR>"
|
||||
@@ -595,6 +597,22 @@
|
||||
purrbation.")
|
||||
log_admin("[key_name(usr)] has removed everyone from purrbation.")
|
||||
|
||||
if("massimmerse")
|
||||
if(!check_rights(R_FUN))
|
||||
return
|
||||
mass_immerse()
|
||||
message_admins("[key_name_admin(usr)] has Fully Immersed \
|
||||
everyone!")
|
||||
log_admin("[key_name(usr)] has Fully Immersed everyone.")
|
||||
|
||||
if("unmassimmerse")
|
||||
if(!check_rights(R_FUN))
|
||||
return
|
||||
mass_immerse(remove=TRUE)
|
||||
message_admins("[key_name_admin(usr)] has Un-Fully Immersed \
|
||||
everyone!")
|
||||
log_admin("[key_name(usr)] has Un-Fully Immersed everyone.")
|
||||
|
||||
if("customportal")
|
||||
if(!check_rights(R_FUN))
|
||||
return
|
||||
|
||||
@@ -1020,6 +1020,20 @@ Traitors and the like can also be revived with the previous role mostly intact.
|
||||
dat += "<br><a href='?src=[REF(src)];[HrefToken()];add_station_goal=1'>Add New Goal</a>"
|
||||
usr << browse(dat, "window=goals;size=400x400")
|
||||
|
||||
/proc/immerse_player(mob/living/carbon/target, toggle=TRUE, remove=FALSE)
|
||||
var/list/immersion_components = list(/datum/component/manual_breathing, /datum/component/manual_blinking)
|
||||
|
||||
for(var/immersies in immersion_components)
|
||||
var/has_component = target.GetComponent(immersies)
|
||||
|
||||
if(has_component && (toggle || remove))
|
||||
qdel(has_component)
|
||||
else if(toggle || !remove)
|
||||
target.AddComponent(immersies)
|
||||
|
||||
/proc/mass_immerse(remove=FALSE)
|
||||
for(var/mob/living/carbon/M in GLOB.mob_list)
|
||||
immerse_player(M, toggle=FALSE, remove=remove)
|
||||
|
||||
/client/proc/toggle_hub()
|
||||
set category = "Server"
|
||||
@@ -1040,7 +1054,7 @@ Traitors and the like can also be revived with the previous role mostly intact.
|
||||
if(!check_rights(R_ADMIN) || !check_rights(R_FUN))
|
||||
return
|
||||
|
||||
var/list/punishment_list = list(ADMIN_PUNISHMENT_LIGHTNING, ADMIN_PUNISHMENT_BRAINDAMAGE, ADMIN_PUNISHMENT_GIB, ADMIN_PUNISHMENT_BSA, ADMIN_PUNISHMENT_FIREBALL, ADMIN_PUNISHMENT_ROD, ADMIN_PUNISHMENT_SUPPLYPOD_QUICK, ADMIN_PUNISHMENT_SUPPLYPOD, ADMIN_PUNISHMENT_MAZING)
|
||||
var/list/punishment_list = list(ADMIN_PUNISHMENT_LIGHTNING, ADMIN_PUNISHMENT_BRAINDAMAGE, ADMIN_PUNISHMENT_GIB, ADMIN_PUNISHMENT_BSA, ADMIN_PUNISHMENT_FIREBALL, ADMIN_PUNISHMENT_ROD, ADMIN_PUNISHMENT_SUPPLYPOD_QUICK, ADMIN_PUNISHMENT_SUPPLYPOD, ADMIN_PUNISHMENT_MAZING, ADMIN_PUNISHMENT_IMMERSE)
|
||||
|
||||
var/punishment = input("Choose a punishment", "DIVINE SMITING") as null|anything in sortList(punishment_list)
|
||||
|
||||
@@ -1100,11 +1114,12 @@ Traitors and the like can also be revived with the previous role mostly intact.
|
||||
plaunch.temp_pod.effectStun = TRUE
|
||||
plaunch.ui_interact(usr)
|
||||
return //We return here because punish_log() is handled by the centcom_podlauncher datum
|
||||
|
||||
if(ADMIN_PUNISHMENT_MAZING)
|
||||
if(!puzzle_imprison(target))
|
||||
to_chat(usr,"<span class='warning'>Imprisonment failed!</span>")
|
||||
return
|
||||
if(ADMIN_PUNISHMENT_IMMERSE)
|
||||
immerse_player(target)
|
||||
|
||||
punish_log(target, punishment)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user