mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2026-08-27 07:08:00 +01:00
Merge pull request #18810 from coiax/vital-changes
Butterflies and cats
This commit is contained in:
+13
-18
@@ -902,30 +902,25 @@ body
|
||||
if(!istype(H))
|
||||
usr << "This can only be done to instances of type /mob/living/carbon/human"
|
||||
return
|
||||
if(!ishumanbasic(H))
|
||||
usr << "This can only be done to the basic human species \
|
||||
at the moment."
|
||||
return
|
||||
|
||||
if(!H)
|
||||
usr << "Mob doesn't exist anymore"
|
||||
return
|
||||
|
||||
if(("tail_human" in H.dna.species.mutant_bodyparts) && ("ears" in H.dna.species.mutant_bodyparts))
|
||||
if(H.dna.features["tail_human"] == "None" || H.dna.features["ears"] == "None")
|
||||
usr << "Put [H] on purrbation."
|
||||
H << "Something is nya~t right."
|
||||
log_admin("[key_name(usr)] has put [key_name(H)] on purrbation.")
|
||||
message_admins("<span class='notice'>[key_name(usr)] has put [key_name(H)] on purrbation.</span>")
|
||||
H.dna.features["tail_human"] = "Cat"
|
||||
H.dna.features["ears"] = "Cat"
|
||||
else
|
||||
usr << "Removed [H] from purrbation."
|
||||
H << "You are no longer a cat."
|
||||
log_admin("[key_name(usr)] has removed [key_name(H)] from purrbation.")
|
||||
message_admins("<span class='notice'>[key_name(usr)] has removed [key_name(H)] from purrbation.</span>")
|
||||
H.dna.features["tail_human"] = "None"
|
||||
H.dna.features["ears"] = "None"
|
||||
H.regenerate_icons()
|
||||
return
|
||||
var/success = purrbation_toggle(H)
|
||||
if(success)
|
||||
usr << "Put [H] on purrbation."
|
||||
log_admin("[key_name(usr)] has put [key_name(H)] on purrbation.")
|
||||
message_admins("<span class='notice'>[key_name(usr)] has put [key_name(H)] on purrbation.</span>")
|
||||
|
||||
usr << "You can only put humans on purrbation."
|
||||
else
|
||||
usr << "Removed [H] from purrbation."
|
||||
log_admin("[key_name(usr)] has removed [key_name(H)] from purrbation.")
|
||||
message_admins("<span class='notice'>[key_name(usr)] has removed [key_name(H)] from purrbation.</span>")
|
||||
|
||||
else if(href_list["adjustDamage"] && href_list["mobToDamage"])
|
||||
if(!check_rights(0))
|
||||
|
||||
@@ -64,6 +64,8 @@
|
||||
<A href='?src=\ref[src];secrets=floorlava'>The floor is lava! (DANGEROUS: extremely lame)</A><BR>
|
||||
<BR>
|
||||
<A href='?src=\ref[src];secrets=changebombcap'>Change bomb cap</A><BR>
|
||||
<A href='?src=\ref[src];secrets=masspurrbation'>Mass Purrbation</A><BR>
|
||||
<A href='?src=\ref[src];secrets=massremovepurrbation'>Mass Remove Purrbation</A><BR>
|
||||
"}
|
||||
|
||||
dat += "<BR>"
|
||||
@@ -573,6 +575,20 @@
|
||||
CTF.TellGhost()
|
||||
message_admins("[key_name_admin(usr)] has [ctf_enabled? "enabled" : "disabled"] CTF!")
|
||||
notify_ghosts("CTF has been [ctf_enabled? "enabled" : "disabled"]!",'sound/effects/ghost2.ogg')
|
||||
if("masspurrbation")
|
||||
if(!check_rights(R_FUN))
|
||||
return
|
||||
mass_purrbation()
|
||||
message_admins("[key_name_admin(usr)] has put everyone on \
|
||||
purrbation!")
|
||||
log_admin("[key_name(usr)] has put everyone on purrbation.")
|
||||
if("massremovepurrbation")
|
||||
if(!check_rights(R_FUN))
|
||||
return
|
||||
mass_remove_purrbation()
|
||||
message_admins("[key_name_admin(usr)] has removed everyone from \
|
||||
purrbation.")
|
||||
log_admin("[key_name(usr)] has removed everyone from purrbation.")
|
||||
|
||||
if(E)
|
||||
E.processing = 0
|
||||
|
||||
@@ -1062,3 +1062,50 @@ var/list/datum/outfit/custom_outfits = list() //Admin created outfits
|
||||
wabbajack(M)
|
||||
|
||||
message_admins("Mass polymorph started by [who_did_it] is complete.")
|
||||
|
||||
#define ON_PURRBATION(H) (!(H.dna.features["tail_human"] == "None" && H.dna.features["ears"] == "None"))
|
||||
|
||||
/proc/mass_purrbation()
|
||||
for(var/M in mob_list)
|
||||
if(ishumanbasic(M))
|
||||
purrbation_apply(M)
|
||||
CHECK_TICK
|
||||
|
||||
/proc/mass_remove_purrbation()
|
||||
for(var/M in mob_list)
|
||||
if(ishumanbasic(M))
|
||||
purrbation_remove(M)
|
||||
CHECK_TICK
|
||||
|
||||
/proc/purrbation_toggle(mob/living/carbon/human/H)
|
||||
if(!ishumanbasic(H))
|
||||
return
|
||||
if(!ON_PURRBATION(H))
|
||||
purrbation_apply(H)
|
||||
. = TRUE
|
||||
else
|
||||
purrbation_remove(H)
|
||||
. = FALSE
|
||||
|
||||
/proc/purrbation_apply(mob/living/carbon/human/H)
|
||||
if(!ishuman(H))
|
||||
return
|
||||
if(ON_PURRBATION(H))
|
||||
return
|
||||
H << "Something is nya~t right."
|
||||
H.dna.features["tail_human"] = "Cat"
|
||||
H.dna.features["ears"] = "Cat"
|
||||
H.regenerate_icons()
|
||||
playsound(get_turf(H), 'sound/effects/meow1.ogg', 50, 1, -1)
|
||||
|
||||
/proc/purrbation_remove(mob/living/carbon/human/H)
|
||||
if(!ishuman(H))
|
||||
return
|
||||
if(!ON_PURRBATION(H))
|
||||
return
|
||||
H << "You are no longer a cat."
|
||||
H.dna.features["tail_human"] = "None"
|
||||
H.dna.features["ears"] = "None"
|
||||
H.regenerate_icons()
|
||||
|
||||
#undef ON_PURRBATION
|
||||
|
||||
@@ -8,6 +8,7 @@
|
||||
response_help = "shoos"
|
||||
response_disarm = "brushes aside"
|
||||
response_harm = "squashes"
|
||||
speak_emote = list("flutters")
|
||||
maxHealth = 2
|
||||
health = 2
|
||||
harm_intent_damage = 1
|
||||
@@ -18,6 +19,10 @@
|
||||
ventcrawler = 2
|
||||
mob_size = MOB_SIZE_TINY
|
||||
gold_core_spawnable = 2
|
||||
verb_say = "flutters"
|
||||
verb_ask = "flutters inquisitively"
|
||||
verb_exclaim = "flutters intensely"
|
||||
verb_yell = "flutters intensely"
|
||||
|
||||
/mob/living/simple_animal/butterfly/New()
|
||||
..()
|
||||
|
||||
Binary file not shown.
Reference in New Issue
Block a user