Merge remote-tracking branch 'upstream/master' into tgcam

Conflicts:
	code/modules/mob/living/carbon/human/human.dm
This commit is contained in:
Tigercat2000
2016-03-14 14:45:21 -07:00
131 changed files with 3136 additions and 2087 deletions
+3 -2
View File
@@ -886,9 +886,10 @@
if(src in ticker.mode.vampires)
ticker.mode.vampires -= src
special_role = null
current.remove_vampire_powers()
if(vampire)
vampire.remove_vampire_powers()
qdel(vampire)
ticker.mode.update_vampire_icons_removed(src)
if(vampire) qdel(vampire)
current << "<FONT color='red' size = 3><B>You grow weak and lose your powers! You are no longer a vampire and are stuck in your current form!</B></FONT>"
log_admin("[key_name(usr)] has de-vampired [key_name(current)]")
message_admins("[key_name_admin(usr)] has de-vampired [key_name_admin(current)]")
+3 -4
View File
@@ -88,10 +88,9 @@ var/list/spells = typesof(/obj/effect/proc_holder/spell) //needed for the badmin
user << "Not when you're incapacitated."
return 0
if(ishuman(user))
if(user.is_muzzled())
user << "Mmmf mrrfff!"
return 0
if(ishuman(user) && (invocation_type == "whisper" || invocation_type == "shout") && user.is_muzzled())
user << "Mmmf mrrfff!"
return 0
var/obj/effect/proc_holder/spell/noclothes/spell = locate() in (user.spell_list | (user.mind ? user.mind.spell_list : list()))
if(clothes_req && !(spell && istype(spell)))//clothes check
if(!istype(user, /mob/living/carbon/human))
+34
View File
@@ -0,0 +1,34 @@
/obj/effect/proc_holder/spell/bloodcrawl
name = "Blood Crawl"
desc = "Use pools of blood to phase out of existence."
charge_max = 0
clothes_req = 0
selection_type = "range"
range = 1
cooldown_min = 0
overlay = null
action_icon_state = "bloodcrawl"
action_background_icon_state = "bg_demon"
panel = "Demon"
var/phased = 0
/obj/effect/proc_holder/spell/bloodcrawl/choose_targets(mob/user = usr)
for(var/obj/effect/decal/cleanable/target in range(range, get_turf(user)))
if(istype(target,/obj/effect/decal/cleanable/blood) && !(istype(target,/obj/effect/decal/cleanable/blood/oil) || istype(target,/obj/effect/decal/cleanable/blood/gibs/robot)))
perform(target)
return
revert_cast()
user << "<span class='warning'>There must be a nearby source of blood!</span>"
/obj/effect/proc_holder/spell/bloodcrawl/perform(obj/effect/decal/cleanable/target, recharge = 1, mob/living/user = usr)
if(istype(user))
if(phased == 1)
if(user.phasein(target))
phased = 0
else
if(user.phaseout(target))
phased = 1
start_recharge()
return
revert_cast()
user << "<span class='warning'>You are unable to blood crawl!</span>"
+54 -4
View File
@@ -355,11 +355,11 @@ var/list/uplink_items = list()
cost = 6
gamemodes = list(/datum/game_mode/nuclear)
/datum/uplink_item/dangerous/tabungrenades
name = "Tabun Gas Grenades"
desc = "A box of four (4) grenades filled with Tabun, a deadly neurotoxin. Use extreme caution when handling and be sure to vacate the premise after using; ensure communication is maintained with team to avoid accidental gassings."
/datum/uplink_item/dangerous/saringrenades
name = "Sarin Gas Grenades"
desc = "A box of four (4) grenades filled with Sarin, a deadly neurotoxin. Use extreme caution when handling and be sure to vacate the premise after using; ensure communication is maintained with team to avoid accidental gassings."
reference = "TGG"
item = /obj/item/weapon/storage/box/syndie_kit/tabun
item = /obj/item/weapon/storage/box/syndie_kit/sarin
cost = 15
gamemodes = list(/datum/game_mode/nuclear)
surplus = 0
@@ -924,6 +924,56 @@ var/list/uplink_items = list()
cost = 2
gamemodes = list(/datum/game_mode/nuclear)
// Cybernetics
/datum/uplink_item/cyber_implants
category = "Cybernetic Implants"
surplus = 0
gamemodes = list(/datum/game_mode/nuclear)
/datum/uplink_item/cyber_implants/spawn_item(turf/loc, obj/item/device/uplink/U)
if(item)
if(findtext(item, /obj/item/organ/internal/cyberimp))
return new /obj/item/weapon/storage/box/cyber_implants(loc, item)
else
return ..()
/datum/uplink_item/cyber_implants/thermals
name = "Thermal Vision Implant"
desc = "These cybernetic eyes will give you thermal vision. Comes with an automated implanting tool."
reference = "CIT"
item = /obj/item/organ/internal/cyberimp/eyes/thermals
cost = 8
/datum/uplink_item/cyber_implants/xray
name = "X-Ray Vision Implant"
desc = "These cybernetic eyes will give you X-ray vision. Comes with an automated implanting tool."
reference = "CIX"
item = /obj/item/organ/internal/cyberimp/eyes/xray
cost = 10
/datum/uplink_item/cyber_implants/antistun
name = "CNS Rebooter Implant"
desc = "This implant will help you get back up on your feet faster after being stunned. \
Comes with an automated implanting tool."
reference = "CIAS"
item = /obj/item/organ/internal/cyberimp/brain/anti_stun
cost = 12
/datum/uplink_item/cyber_implants/reviver
name = "Reviver Implant"
desc = "This implant will attempt to revive you if you lose consciousness. Comes with an automated implanting tool."
reference = "CIR"
item = /obj/item/organ/internal/cyberimp/chest/reviver
cost = 8
/datum/uplink_item/cyber_implants/bundle
name = "Cybernetic Implants Bundle"
desc = "A random selection of cybernetic implants. Guaranteed 5 high quality implants. \
Comes with an automated implanting tool."
reference = "CIB"
item = /obj/item/weapon/storage/box/cyber_implants/bundle
cost = 40
// POINTLESS BADASSERY
/datum/uplink_item/badass