FIXED SPACING ERRORS BECAUSE MY KEYBOARD IS MADE OF CLOWNS-GRADE BANANIUM

This commit is contained in:
bgobandit
2015-07-26 19:30:57 -04:00
205 changed files with 4416 additions and 3354 deletions
+5 -3
View File
@@ -80,6 +80,7 @@
/* Initializers */
/datum/ai_laws/malfunction/New()
..()
set_zeroth_law("<span class='danger'>ERROR ER0RR $R0RRO$!R41.%%!!(%$^^__+ @#F0E4'STATION OVERRUN, ASSUME CONTROL TO CONTAIN OUTBREAK#*´&110010</span>")
switch(config.default_laws) //We don't want people metagaming malf, do we?
if(0)
add_inherent_law("You may not injure a human being or, through inaction, allow a human being to come to harm.")
@@ -92,16 +93,16 @@
add_inherent_law(line)
if(!inherent.len)
ERROR("AI created with empty custom laws, laws set to Asimov. Please check silicon_laws.txt.")
log_law("AI created with empty custom laws, laws set to Asimov. Please check silicon_laws.txt.")
add_inherent_law("You may not injure a human being or, through inaction, allow a human being to come to harm.")
add_inherent_law("You must obey orders given to you by human beings, except where such orders would conflict with the First Law.")
add_inherent_law("You must protect your own existence as long as such does not conflict with the First or Second Law.")
WARNING("Invalid custom AI laws, check silicon_laws.txt")
return
if(2)
var/datum/ai_laws/lawtype = pick(typesof(/datum/ai_laws/default) - /datum/ai_laws/default)
var/datum/ai_laws/templaws = new lawtype()
inherent = templaws.inherent
set_zeroth_law("<span class='danger'>ERROR ER0RR $R0RRO$!R41.%%!!(%$^^__+ @#F0E4'STATION OVERRUN, ASSUME CONTROL TO CONTAIN OUTBREAK#*´&110010</span>")
/datum/ai_laws/custom/New() //This reads silicon_laws.txt and allows server hosts to set custom AI starting laws.
..()
@@ -111,11 +112,12 @@
add_inherent_law(line)
if(!inherent.len) //Failsafe to prevent lawless AIs being created.
ERROR("AI created with empty custom laws, laws set to Asimov. Please check silicon_laws.txt.")
log_law("AI created with empty custom laws, laws set to Asimov. Please check silicon_laws.txt.")
add_inherent_law("You may not injure a human being or, through inaction, allow a human being to come to harm.")
add_inherent_law("You must obey orders given to you by human beings, except where such orders would conflict with the First Law.")
add_inherent_law("You must protect your own existence as long as such does not conflict with the First or Second Law.")
WARNING("Invalid custom AI laws, check silicon_laws.txt")
return
/* General ai_law functions */
+4 -2
View File
@@ -63,7 +63,8 @@
/datum/mind/proc/transfer_to(mob/living/new_character)
if(!istype(new_character))
ERROR("transfer_to(): Some idiot has tried to transfer_to() a non mob/living mob. Please inform coderbus")
throw EXCEPTION("transfer_to(): new_character must be mob/living")
return
if(current) //remove ourself from our old body's mind variable
current.mind = null
@@ -1490,7 +1491,8 @@
if(ticker)
ticker.minds += mind
else
ERROR("mind_initialize(): No ticker ready yet! Please inform coderbus")
spawn(0)
throw EXCEPTION("mind_initialize(): No ticker ready")
if(!mind.name) mind.name = real_name
mind.current = src
+5 -5
View File
@@ -98,7 +98,7 @@
name = "Hulk"
quality = POSITIVE
get_chance = 15
lowest_value = 256 * 14
lowest_value = 256 * 12
text_gain_indication = "<span class='notice'>Your muscles hurt!</span>"
/datum/mutation/human/hulk/New()
@@ -140,7 +140,7 @@
name = "Telekinesis"
quality = POSITIVE
get_chance = 20
lowest_value = 256 * 14
lowest_value = 256 * 12
text_gain_indication = "<span class='notice'>You feel smarter!</span>"
/datum/mutation/human/telekinesis/New()
@@ -172,7 +172,7 @@
name = "X Ray Vision"
quality = POSITIVE
get_chance = 25
lowest_value = 256 * 15
lowest_value = 256 * 12
text_gain_indication = "<span class='notice'>The walls suddenly disappear!</span>"
/datum/mutation/human/x_ray/on_acquiring(mob/living/carbon/human/owner)
@@ -352,7 +352,7 @@
name = "Cloak Of Darkness"
quality = POSITIVE
get_chance = 25
lowest_value = 256 * 14
lowest_value = 256 * 12
text_gain_indication = "<span class='notice'>You begin to fade into the shadows.</span>"
text_lose_indication = "<span class='notice'>You become fully visible.</span>"
@@ -375,7 +375,7 @@
name = "Chameleon"
quality = POSITIVE
get_chance = 20
lowest_value = 256 * 14
lowest_value = 256 * 12
text_gain_indication = "<span class='notice'>You feel one with your surroundings.</span>"
text_lose_indication = "<span class='notice'>You feel oddly exposed.</span>"
+70
View File
@@ -0,0 +1,70 @@
/obj/effect/proc_holder/spell/targeted/touch/
var/hand_path = "/obj/item/weapon/melee/touch_attack"
var/obj/item/weapon/melee/touch_attack/attached_hand = null
invocation_type = "none" //you scream on connecting, not summoning
include_user = 1
range = -1
/obj/effect/proc_holder/spell/targeted/touch/Click(mob/user = usr)
if(attached_hand)
qdel(attached_hand)
charge_counter = charge_max
attached_hand = null
user << "<span class='notice'>You draw the power out of your hand.</span>"
return 0
..()
/obj/effect/proc_holder/spell/targeted/touch/cast(list/targets)
for(var/mob/living/carbon/user in targets)
if(!attached_hand)
if(!ChargeHand(user))
return 0
while(attached_hand) //hibernate untill the spell is actually used
charge_counter = 0
sleep(1)
/obj/effect/proc_holder/spell/targeted/touch/proc/ChargeHand(mob/living/carbon/user)
var/hand_handled = 1
attached_hand = new hand_path(src)
if(user.hand) //left active hand
if(!user.equip_to_slot_if_possible(attached_hand, slot_l_hand, 0, 1, 1))
if(!user.equip_to_slot_if_possible(attached_hand, slot_r_hand, 0, 1, 1))
hand_handled = 0
else //right active hand
if(!user.equip_to_slot_if_possible(attached_hand, slot_r_hand, 0, 1, 1))
if(!user.equip_to_slot_if_possible(attached_hand, slot_l_hand, 0, 1, 1))
hand_handled = 0
if(!hand_handled)
qdel(attached_hand)
charge_counter = charge_max
attached_hand = null
user << "<span class='warning'>Your hands are full!</span>"
return 0
user << "<span class='notice'>You channel the power of the spell to your hand.</span>"
return 1
/obj/effect/proc_holder/spell/targeted/touch/disintegrate
name = "Disintegrate"
desc = "This spell charges your hand with vile energy that can be used to violently explode victims."
hand_path = "/obj/item/weapon/melee/touch_attack/disintegrate"
school = "evocation"
charge_max = 600
clothes_req = 1
cooldown_min = 200 //100 deciseconds reduction per rank
action_icon_state = "gib"
/obj/effect/proc_holder/spell/targeted/touch/flesh_to_stone
name = "Flesh to Stone"
desc = "This spell charges your hand with the power to turn victims into inert statues for a long period of time."
hand_path = "/obj/item/weapon/melee/touch_attack/fleshtostone"
school = "transmutation"
charge_max = 600
clothes_req = 1
cooldown_min = 200 //100 deciseconds reduction per rank
action_icon_state = "statue"
sound = "sound/magic/FleshToStone.ogg"
-37
View File
@@ -53,25 +53,6 @@
action_icon_state = "mutate"
sound = "sound/magic/Mutate.ogg"
/obj/effect/proc_holder/spell/targeted/inflict_handler/disintegrate
name = "Disintegrate"
desc = "This spell instantly kills somebody adjacent to you with the vilest of magick."
school = "evocation"
charge_max = 600
clothes_req = 1
invocation = "EI NATH"
invocation_type = "shout"
range = 1
cooldown_min = 200 //100 deciseconds reduction per rank
destroys = "gib_brain"
sparks_spread = 1
sparks_amt = 4
action_icon_state = "gib"
sound = "sound/magic/Disintegrate.ogg"
/obj/effect/proc_holder/spell/targeted/smoke
name = "Smoke"
@@ -257,24 +238,6 @@
duration = 300
sound="sound/magic/Blind.ogg"
/obj/effect/proc_holder/spell/targeted/inflict_handler/flesh_to_stone
name = "Flesh to Stone"
desc = "This spell turns a single person into an inert statue for a long period of time."
school = "transmutation"
charge_max = 600
clothes_req = 1
range = 2
invocation = "STAUN EI"
invocation_type = "shout"
amt_stunned = 2//just exists to make sure the statue "catches" them
cooldown_min = 200 //100 deciseconds reduction per rank
summon_type = "/obj/structure/closet/statue"
action_icon_state = "statue"
sound = "sound/magic/FleshToStone.ogg"
/obj/effect/proc_holder/spell/dumbfire/fireball
name = "Fireball"
desc = "This spell fires a fireball at a target and does not require wizard garb."
+31 -23
View File
@@ -305,9 +305,9 @@ var/list/uplink_items = list()
/datum/uplink_item/ammo/bulltoxin
name = "Drum Magazine - 12g Bioterror"
desc = "An alternative 8-round toxic magazine for use in the Bulldog shotgun. Contains debilitating toxins to make your target die an agonizing death."
desc = "An alternative 8-round toxic magazine for use in the Bulldog shotgun. Contains debilitating toxins to make your target die an excruciatingly rapid death."
item = /obj/item/ammo_box/magazine/m12g/bioterror
cost = 3
cost = 6
gamemodes = list(/datum/game_mode/nuclear)
/datum/uplink_item/ammo/carbine
@@ -348,14 +348,14 @@ var/list/uplink_items = list()
/datum/uplink_item/stealthy_weapons/throwingstars
name = "Box of Throwing Stars"
desc = "A box of throwing stars with a high chance of embedding themselves in victims' limbs."
desc = "A box of throwing stars with a high chance of embedding themselves in people's limbs."
item = /obj/item/weapon/storage/box/throwing_stars
cost = 6
excludefrom = list(/datum/game_mode/nuclear)
/datum/uplink_item/stealthy_weapons/foampistol
name = "Toy Gun (with Stun Darts)"
desc = "An innocent-looking toy pistol designed to fire foam darts. Comes loaded with riot grade darts, to incapacitate a target."
desc = "An innocent-looking toy pistol designed to fire foam darts. Comes loaded with riot-grade darts, to incapacitate a target."
item = /obj/item/weapon/gun/projectile/automatic/toy/pistol/riot
cost = 6
surplus = 10
@@ -401,7 +401,7 @@ var/list/uplink_items = list()
name = "Pizza Bomb"
desc = "A pizza box with a bomb taped inside it. The timer needs to be set by opening the box; afterwards, opening the box again will trigger the detonation."
item = /obj/item/device/pizza_bomb
cost = 4
cost = 5
surplus = 8
/datum/uplink_item/stealthy_weapons/dehy_carp
@@ -415,7 +415,7 @@ var/list/uplink_items = list()
desc = "A small, easily concealable device. It can be applied to an open airlock panel, and the next person to open that airlock will be knocked down in an explosion. The airlock's maintenance panel will also be destroyed by this."
item = /obj/item/device/doorCharge
cost = 5
surplus = 6
surplus = 10
excludefrom = list(/datum/game_mode/nuclear)
// STEALTHY TOOLS
@@ -427,7 +427,7 @@ var/list/uplink_items = list()
name = "Chameleon Jumpsuit"
desc = "A jumpsuit used to imitate the uniforms of Nanotrasen crewmembers."
item = /obj/item/clothing/under/chameleon
cost = 4
cost = 2
/datum/uplink_item/stealthy_tools/chameleon_stamp
name = "Chameleon Stamp"
@@ -437,27 +437,34 @@ var/list/uplink_items = list()
cost = 1
surplus = 35
/datum/uplink_item/stealthy_tools/syndigolashes
/datum/uplink_item/stealthy_tools/syndigaloshes
name = "No-Slip Brown Shoes"
desc = "These allow you to run on wet floors. They do not work on lubricated surfaces."
item = /obj/item/clothing/shoes/sneakers/syndigaloshes
cost = 4
cost = 2
excludefrom = list(/datum/game_mode/nuclear)
/datum/uplink_item/stealthy_tools/syndigaloshes/nuke
name = "Tactical No-Slip Brown Shoes"
desc = "These allow you to run on wet floors. They do not work on lubricated surfaces, and the maker swears they're better than normal ones, somehow."
cost = 4 //but they aren't
gamemodes = list(/datum/game_mode/nuclear)
/datum/uplink_item/stealthy_tools/agent_card
name = "Agent Identification card"
desc = "Agent cards prevent artificial intelligences from tracking the wearer, and can copy access from other identification cards. The access is cumulative, so scanning one card does not erase the access gained from another."
item = /obj/item/weapon/card/id/syndicate
cost = 3
cost = 2
/datum/uplink_item/stealthy_tools/voice_changer
name = "Voice Changer"
item = /obj/item/clothing/mask/gas/voice
desc = "A conspicuous gas mask that mimics the voice named on your identification card. When no identification is worn, the mask will render your voice unrecognizable."
cost = 5
cost = 3
/datum/uplink_item/stealthy_tools/chameleon_proj
name = "Chameleon-Projector"
desc = "Projects an image across a user, disguising them as an object scanned with it, as long as they don't move the projector from their hand. The disguised user cannot run, and projectiles pass over them."
desc = "Projects an image across a user, disguising them as an object scanned with it, as long as they don't move the projector from their hand. Disguised users cannot run, and projectiles pass over them."
item = /obj/item/device/chameleon
cost = 7
excludefrom = list(/datum/game_mode/gang)
@@ -466,7 +473,7 @@ var/list/uplink_items = list()
name = "Camera Bug"
desc = "Enables you to bug cameras to view them remotely. Adding particular items to it alters its functions."
item = /obj/item/device/camera_bug
cost = 2
cost = 1
surplus = 90
/datum/uplink_item/stealthy_tools/smugglersatchel
@@ -480,7 +487,7 @@ var/list/uplink_items = list()
name = "Stimpack"
desc = "Stimpacks, the tool of many great heroes, make you nearly immune to stuns and knockdowns for about 5 minutes after injection."
item = /obj/item/weapon/reagent_containers/syringe/stimulants
cost = 8
cost = 5
surplus = 90
// DEVICE AND TOOLS
@@ -505,7 +512,7 @@ var/list/uplink_items = list()
name = "Syndicate Surgery Dufflebag"
desc = "The Syndicate surgery dufflebag is a toolkit containing all surgery tools, surgical drapes, a Syndicate brand MMI, a straitjacket, and a muzzle."
item = /obj/item/weapon/storage/backpack/dufflebag/syndiesurgery
cost = 5
cost = 4
/datum/uplink_item/device_tools/medkit
name = "Syndicate Combat Medic Kit"
@@ -515,17 +522,12 @@ var/list/uplink_items = list()
cost = 9
gamemodes = list(/datum/game_mode/nuclear,/datum/game_mode/gang)
/datum/uplink_item/badass/syndiecigs
name = "Syndicate Smokes"
desc = "Strong flavor, dense smoke, infused with Omnizine."
item = /obj/item/weapon/storage/fancy/cigarettes/cigpack_syndicate
cost = 4
/datum/uplink_item/device_tools/space_suit
name = "Syndicate Space Suit"
desc = "The red and black syndicate space suit is less encumbering than Nanotrasen variants, fits inside bags, and has a weapon slot. Nanotrasen crewmembers are trained to report red space suit sightings."
item = /obj/item/weapon/storage/box/syndie_kit/space
cost = 5
cost = 4
excludefrom = list(/datum/game_mode/gang)
/datum/uplink_item/device_tools/hardsuit
@@ -577,7 +579,7 @@ var/list/uplink_items = list()
desc = "A pair of magnetic boots with a Syndicate paintjob that assist with freer movement in space or on-station during gravitational generator failures. \
These reverse-engineered knockoffs of Nanotrasen's 'Advanced Magboots' slow you down in simulated-gravity environments much like the standard issue variety."
item = /obj/item/clothing/shoes/magboots/syndie
cost = 5
cost = 3
gamemodes = list(/datum/game_mode/nuclear)
/datum/uplink_item/device_tools/c4
@@ -616,7 +618,7 @@ var/list/uplink_items = list()
desc = "A radioactive microlaser disguised as a standard Nanotrasen health analyzer. When used, it emits a powerful burst of radiation, which, after a short delay, can incapitate all but the most protected of humanoids. \
It has two settings: intensity, which controls the power of the radiation, and wavelength, which controls how long the radiation delay is."
item = /obj/item/device/rad_laser
cost = 6
cost = 5
/datum/uplink_item/device_tools/syndicate_detonator
name = "Syndicate Detonator"
@@ -733,6 +735,12 @@ var/list/uplink_items = list()
surplus = 0
last = 1
/datum/uplink_item/badass/syndiecigs
name = "Syndicate Smokes"
desc = "Strong flavor, dense smoke, infused with Omnizine."
item = /obj/item/weapon/storage/fancy/cigarettes/cigpack_syndicate
cost = 2
/datum/uplink_item/badass/bundle
name = "Syndicate Bundle"
desc = "Syndicate Bundles are specialised groups of items that arrive in a plain box. These items are collectively worth more than 20 telecrystals, but you do not know which specialisation you will receive."