mirror of
https://github.com/CHOMPStation2/CHOMPStation2.git
synced 2025-12-11 18:53:06 +00:00
Merge branch 'master' into dev-freeze
Conflicts: html/changelog.html
This commit is contained in:
@@ -126,17 +126,20 @@ datum/mind
|
|||||||
var/mob/living/carbon/human/H = current
|
var/mob/living/carbon/human/H = current
|
||||||
if (istype(current, /mob/living/carbon/human) || istype(current, /mob/living/carbon/monkey))
|
if (istype(current, /mob/living/carbon/human) || istype(current, /mob/living/carbon/monkey))
|
||||||
/** Impanted**/
|
/** Impanted**/
|
||||||
|
if(istype(current, /mob/living/carbon/human))
|
||||||
if(H.is_loyalty_implanted(H))
|
if(H.is_loyalty_implanted(H))
|
||||||
text = "Loyalty Implant:<a href='?src=\ref[src];implant=remove'>Remove</a>|<b>Implanted</b></br>"
|
text = "Loyalty Implant:<a href='?src=\ref[src];implant=remove'>Remove</a>|<b>Implanted</b></br>"
|
||||||
else
|
else
|
||||||
text = "Loyalty Implant:<b>No Implant</b>|<a href='?src=\ref[src];implant=add'>Implant him!</a></br>"
|
text = "Loyalty Implant:<b>No Implant</b>|<a href='?src=\ref[src];implant=add'>Implant him!</a></br>"
|
||||||
|
else
|
||||||
|
text = "Loyalty Implant: Don't implant that monkey!</br>"
|
||||||
sections["implant"] = text
|
sections["implant"] = text
|
||||||
/** REVOLUTION ***/
|
/** REVOLUTION ***/
|
||||||
text = "revolution"
|
text = "revolution"
|
||||||
if (ticker.mode.config_tag=="revolution")
|
if (ticker.mode.config_tag=="revolution")
|
||||||
text += uppertext(text)
|
text += uppertext(text)
|
||||||
text = "<i><b>[text]</b></i>: "
|
text = "<i><b>[text]</b></i>: "
|
||||||
if (H.is_loyalty_implanted(H))
|
if (istype(current, /mob/living/carbon/monkey) || H.is_loyalty_implanted(H))
|
||||||
text += "<b>LOYAL EMPLOYEE</b>|headrev|rev"
|
text += "<b>LOYAL EMPLOYEE</b>|headrev|rev"
|
||||||
else if (src in ticker.mode.head_revolutionaries)
|
else if (src in ticker.mode.head_revolutionaries)
|
||||||
text = "<a href='?src=\ref[src];revolution=clear'>employee</a>|<b>HEADREV</b>|<a href='?src=\ref[src];revolution=rev'>rev</a>"
|
text = "<a href='?src=\ref[src];revolution=clear'>employee</a>|<b>HEADREV</b>|<a href='?src=\ref[src];revolution=rev'>rev</a>"
|
||||||
@@ -166,7 +169,7 @@ datum/mind
|
|||||||
if (ticker.mode.config_tag=="cult")
|
if (ticker.mode.config_tag=="cult")
|
||||||
text = uppertext(text)
|
text = uppertext(text)
|
||||||
text = "<i><b>[text]</b></i>: "
|
text = "<i><b>[text]</b></i>: "
|
||||||
if (H.is_loyalty_implanted(H))
|
if (istype(current, /mob/living/carbon/monkey) || H.is_loyalty_implanted(H))
|
||||||
text += "<B>LOYAL EMPLOYEE</B>|cultist"
|
text += "<B>LOYAL EMPLOYEE</B>|cultist"
|
||||||
else if (src in ticker.mode.cult)
|
else if (src in ticker.mode.cult)
|
||||||
text += "<a href='?src=\ref[src];cult=clear'>employee</a>|<b>CULTIST</b>"
|
text += "<a href='?src=\ref[src];cult=clear'>employee</a>|<b>CULTIST</b>"
|
||||||
|
|||||||
@@ -199,6 +199,27 @@
|
|||||||
name = "agent card"
|
name = "agent card"
|
||||||
access = list(access_maint_tunnels, access_syndicate, access_external_airlocks)
|
access = list(access_maint_tunnels, access_syndicate, access_external_airlocks)
|
||||||
origin_tech = "syndicate=3"
|
origin_tech = "syndicate=3"
|
||||||
|
var/registered_user=null
|
||||||
|
|
||||||
|
/obj/item/weapon/card/id/syndicate/New(mob/user as mob)
|
||||||
|
..()
|
||||||
|
var/t = reject_bad_name(input(user, "What name would you like to put on this card?\nNode: You can change this later by clicking on the ID card while it's in your hand.", "Agent card name", ishuman(user) ? user.real_name : user.name))
|
||||||
|
if(!t)
|
||||||
|
alert("Invalid name.")
|
||||||
|
if(!registered_name)
|
||||||
|
registered_name = ishuman(user) ? user.real_name : user.name
|
||||||
|
else
|
||||||
|
registered_name = t
|
||||||
|
var/u = copytext(sanitize(input(user, "What occupation would you like to put on this card?\nNote: This will not grant any access levels other than Maintenance.", "Agent card job assignment", "Assistant")),1,MAX_MESSAGE_LEN)
|
||||||
|
if(!u)
|
||||||
|
alert("Invalid assignment.")
|
||||||
|
assignment = "Assistant"
|
||||||
|
else
|
||||||
|
assignment = u
|
||||||
|
name = "[registered_name]'s ID Card ([assignment])"
|
||||||
|
user << "\blue You successfully forge the ID card."
|
||||||
|
registered_user = user
|
||||||
|
|
||||||
|
|
||||||
/obj/item/weapon/card/id/syndicate/afterattack(var/obj/item/weapon/O as obj, mob/user as mob, proximity)
|
/obj/item/weapon/card/id/syndicate/afterattack(var/obj/item/weapon/O as obj, mob/user as mob, proximity)
|
||||||
if(!proximity) return
|
if(!proximity) return
|
||||||
@@ -209,7 +230,6 @@
|
|||||||
if(user.mind.special_role)
|
if(user.mind.special_role)
|
||||||
usr << "\blue The card's microscanners activate as you pass it over the ID, copying its access."
|
usr << "\blue The card's microscanners activate as you pass it over the ID, copying its access."
|
||||||
|
|
||||||
/obj/item/weapon/card/id/syndicate/var/mob/registered_user = null
|
|
||||||
/obj/item/weapon/card/id/syndicate/attack_self(mob/user as mob)
|
/obj/item/weapon/card/id/syndicate/attack_self(mob/user as mob)
|
||||||
if(!src.registered_name)
|
if(!src.registered_name)
|
||||||
//Stop giving the players unsanitized unputs! You are giving ways for players to intentionally crash clients! -Nodrak
|
//Stop giving the players unsanitized unputs! You are giving ways for players to intentionally crash clients! -Nodrak
|
||||||
@@ -228,7 +248,10 @@
|
|||||||
src.name = "[src.registered_name]'s ID Card ([src.assignment])"
|
src.name = "[src.registered_name]'s ID Card ([src.assignment])"
|
||||||
user << "\blue You successfully forge the ID card."
|
user << "\blue You successfully forge the ID card."
|
||||||
registered_user = user
|
registered_user = user
|
||||||
else if(registered_user == user)
|
else if(!registered_user || registered_user == user)
|
||||||
|
|
||||||
|
if(!registered_user) registered_user = user // First one to pick it up is the owner if there is ever a wild case New() doens't work.
|
||||||
|
|
||||||
switch(alert("Would you like to display the ID, or retitle it?","Choose.","Rename","Show"))
|
switch(alert("Would you like to display the ID, or retitle it?","Choose.","Rename","Show"))
|
||||||
if("Rename")
|
if("Rename")
|
||||||
var t = copytext(sanitize(input(user, "What name would you like to put on this card?", "Agent card name", ishuman(user) ? user.real_name : user.name)),1,26)
|
var t = copytext(sanitize(input(user, "What name would you like to put on this card?", "Agent card name", ishuman(user) ? user.real_name : user.name)),1,26)
|
||||||
|
|||||||
@@ -97,7 +97,7 @@
|
|||||||
"/obj/item/device/flashlight/pen",
|
"/obj/item/device/flashlight/pen",
|
||||||
"/obj/item/clothing/mask/surgical",
|
"/obj/item/clothing/mask/surgical",
|
||||||
"/obj/item/clothing/gloves/latex",
|
"/obj/item/clothing/gloves/latex",
|
||||||
"/obj/item/weapon/reagent_containers/hypospray/autoinjector"
|
"/obj/item/weapon/reagent_containers/hypospray"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -194,6 +194,11 @@
|
|||||||
playsound(user, fire_sound, 10, 1)
|
playsound(user, fire_sound, 10, 1)
|
||||||
else
|
else
|
||||||
playsound(user, fire_sound, 50, 1)
|
playsound(user, fire_sound, 50, 1)
|
||||||
|
if(istype(in_chamber, /obj/item/projectile/beam/lastertag))
|
||||||
|
user.show_message("<span class = 'warning'>You feel rather silly, trying to commit suicide with a toy.</span>")
|
||||||
|
mouthshoot = 0
|
||||||
|
return
|
||||||
|
|
||||||
in_chamber.on_hit(M)
|
in_chamber.on_hit(M)
|
||||||
if (in_chamber.damage_type != HALLOSS)
|
if (in_chamber.damage_type != HALLOSS)
|
||||||
user.apply_damage(in_chamber.damage*2.5, in_chamber.damage_type, "head", used_weapon = "Point blank shot in the mouth with \a [in_chamber]")
|
user.apply_damage(in_chamber.damage*2.5, in_chamber.damage_type, "head", used_weapon = "Point blank shot in the mouth with \a [in_chamber]")
|
||||||
|
|||||||
@@ -2821,8 +2821,8 @@ datum
|
|||||||
if (adj_drowsy) M.drowsyness = max(0,M.drowsyness + adj_drowsy)
|
if (adj_drowsy) M.drowsyness = max(0,M.drowsyness + adj_drowsy)
|
||||||
if (adj_sleepy) M.sleeping = max(0,M.sleeping + adj_sleepy)
|
if (adj_sleepy) M.sleeping = max(0,M.sleeping + adj_sleepy)
|
||||||
|
|
||||||
if(!src.data) data = 1
|
if(!src.data || (!isnum(src.data) && src.data.len)) data = 1 //if it doesn't exist we set it. if it's a list we're going to set it to 1 as well. This is to
|
||||||
src.data += boozepwr
|
src.data += boozepwr //avoid a runtime error associated with drinking blood mixed in drinks (demon's blood).
|
||||||
|
|
||||||
var/d = data
|
var/d = data
|
||||||
|
|
||||||
@@ -3370,7 +3370,6 @@ datum
|
|||||||
description = "AHHHH!!!!"
|
description = "AHHHH!!!!"
|
||||||
color = "#820000" // rgb: 130, 0, 0
|
color = "#820000" // rgb: 130, 0, 0
|
||||||
boozepwr = 3
|
boozepwr = 3
|
||||||
|
|
||||||
ethanol/vodkatonic
|
ethanol/vodkatonic
|
||||||
name = "Vodka and Tonic"
|
name = "Vodka and Tonic"
|
||||||
id = "vodkatonic"
|
id = "vodkatonic"
|
||||||
|
|||||||
@@ -35,7 +35,7 @@ Header Section
|
|||||||
<table align='center' class="top">
|
<table align='center' class="top">
|
||||||
<tr>
|
<tr>
|
||||||
<td valign='top'>
|
<td valign='top'>
|
||||||
<font size='2'><b>Code:</b> Abi79, Aryn, Cael_Aislinn, Chinsky, cib, CompactNinja, DopeGhoti, Erthilo, Hawk_v3, Head, Ispil, Lexusjjss, Melonstorm, Miniature, Mloc, NerdyBoy1104, SkyMarshal, Snapshot, Spectre, Strumpetplaya, Sunfall, Tastyfish, Uristqwerty<br></font>
|
<font size='2'><b>Code:</b> Abi79, Aryn, Cael_Aislinn, Ccomp5950,Chinsky, cib, CompactNinja, DopeGhoti, Erthilo, Hawk_v3, Head, Ispil, Lexusjjss, Melonstorm, Miniature, Mloc, NerdyBoy1104, SkyMarshal, Snapshot, Spectre, Strumpetplaya, Sunfall, Tastyfish, Uristqwerty<br></font>
|
||||||
<font size='2'><b>Sprites:</b> Apple_Master, Arcalane, Chinsky, CompactNinja, Deus Dactyl, Erthilo, Flashkirby, Miniature, Searif, Xenone, faux<br></font>
|
<font size='2'><b>Sprites:</b> Apple_Master, Arcalane, Chinsky, CompactNinja, Deus Dactyl, Erthilo, Flashkirby, Miniature, Searif, Xenone, faux<br></font>
|
||||||
<font size='2'><b>Sounds:</b> Aryn<br></font>
|
<font size='2'><b>Sounds:</b> Aryn<br></font>
|
||||||
<font size='2'><b>Thanks To:</b> /tg/ station, Goonstation, Animus Station, Daedalus, and original Spacestation 13 devs. Skibiliano for the IRC bot.</font>
|
<font size='2'><b>Thanks To:</b> /tg/ station, Goonstation, Animus Station, Daedalus, and original Spacestation 13 devs. Skibiliano for the IRC bot.</font>
|
||||||
@@ -56,6 +56,18 @@ should be listed in the changelog upon commit though. Thanks. -->
|
|||||||
|
|
||||||
<!-- DO NOT REMOVE, MOVE, OR COPY THIS COMMENT! THIS MUST BE THE LAST NON-EMPTY LINE BEFORE THE LOGS #ADDTOCHANGELOGMARKER# -->
|
<!-- DO NOT REMOVE, MOVE, OR COPY THIS COMMENT! THIS MUST BE THE LAST NON-EMPTY LINE BEFORE THE LOGS #ADDTOCHANGELOGMARKER# -->
|
||||||
|
|
||||||
|
|
||||||
|
<div class='commit sansserif'>
|
||||||
|
<h2 class='date'>23 November 2013</h2>
|
||||||
|
<h3 class='author'>Ccomp5950 updated:</h3>
|
||||||
|
<ul class='changes bgimages16'>
|
||||||
|
<li class='bugfix'>Players are now no longer able to commit suicide with a lasertag gun, and will feel silly for doing so.</li>
|
||||||
|
<li class='bugfix'>Ghosts hit with the cult book shall now actually become visible.</li>
|
||||||
|
<li class='bugfix'>The powercells spawned with Exosuits will now properly be named to not confuse bearded roboticists.</li>
|
||||||
|
<li class='bugfix'>Blindfolded players will now no longer require eye surgery to repair their sight, removing the blindfold will be sufficient.</li>
|
||||||
|
<li class='rscadd'>Atmospheric Technicians will now have access to Exterior airlocks.</li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
|
||||||
<div class='commit sansserif'>
|
<div class='commit sansserif'>
|
||||||
<h2 class='date'>24 November 2013</h2>
|
<h2 class='date'>24 November 2013</h2>
|
||||||
|
|||||||
Reference in New Issue
Block a user