mirror of
https://github.com/ParadiseSS13/Paradise.git
synced 2026-08-22 03:27:05 +01:00
BRUTAL Part 1 - No proc var/ in procs
This commit is contained in:
@@ -182,7 +182,7 @@ GLOBAL_LIST_EMPTY(splatter_cache)
|
||||
/obj/effect/decal/cleanable/blood/gibs/cleangibs //most ironic name ever...
|
||||
scoop_reagents = null
|
||||
|
||||
/obj/effect/decal/cleanable/blood/gibs/proc/streak(var/list/directions)
|
||||
/obj/effect/decal/cleanable/blood/gibs/proc/streak(list/directions)
|
||||
set waitfor = 0
|
||||
var/direction = pick(directions)
|
||||
for(var/i = 0, i < pick(1, 200; 2, 150; 3, 50; 4), i++)
|
||||
|
||||
@@ -20,7 +20,7 @@
|
||||
/obj/effect/decal/cleanable/blood/gibs/robot/can_bloodcrawl_in()
|
||||
return FALSE
|
||||
|
||||
/obj/effect/decal/cleanable/blood/gibs/robot/streak(var/list/directions)
|
||||
/obj/effect/decal/cleanable/blood/gibs/robot/streak(list/directions)
|
||||
spawn(0)
|
||||
var/direction = pick(directions)
|
||||
for(var/i = 0, i < pick(1, 200; 2, 150; 3, 50; 4), i++)
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
var/minX = 2
|
||||
var/minY = 2
|
||||
|
||||
/obj/effect/vaultspawner/New(turf/location as turf,lX = minX,uX = maxX,lY = minY,uY = maxY,var/type = null)
|
||||
/obj/effect/vaultspawner/New(turf/location as turf,lX = minX,uX = maxX,lY = minY,uY = maxY, type = null)
|
||||
. = ..()
|
||||
if(!type)
|
||||
type = pick("sandstone","rock","alien")
|
||||
|
||||
@@ -7,10 +7,10 @@
|
||||
invisibility = INVISIBILITY_ABSTRACT // nope cant see this shit
|
||||
anchored = TRUE
|
||||
|
||||
/obj/effect/step_trigger/proc/Trigger(var/atom/movable/A)
|
||||
/obj/effect/step_trigger/proc/Trigger(atom/movable/A)
|
||||
return FALSE
|
||||
|
||||
/obj/effect/step_trigger/Crossed(var/H, oldloc)
|
||||
/obj/effect/step_trigger/Crossed(H, oldloc)
|
||||
. = ..()
|
||||
if(!H)
|
||||
return
|
||||
|
||||
@@ -373,7 +373,7 @@ GLOBAL_DATUM_INIT(fire_overlay, /image, image("icon" = 'icons/goonstation/effect
|
||||
/obj/item/proc/refill(mob/user, atom/A, amount)
|
||||
return FALSE
|
||||
|
||||
/obj/item/proc/talk_into(mob/M, var/text, var/channel=null)
|
||||
/obj/item/proc/talk_into(mob/M, text, channel=null)
|
||||
return
|
||||
|
||||
/obj/item/proc/dropped(mob/user)
|
||||
@@ -414,7 +414,7 @@ GLOBAL_DATUM_INIT(fire_overlay, /image, image("icon" = 'icons/goonstation/effect
|
||||
// slot uses the slot_X defines found in setup.dm
|
||||
// for items that can be placed in multiple slots
|
||||
// note this isn't called during the initial dressing of a player
|
||||
/obj/item/proc/equipped(var/mob/user, var/slot)
|
||||
/obj/item/proc/equipped(mob/user, slot)
|
||||
SEND_SIGNAL(src, COMSIG_ITEM_EQUIPPED, user, slot)
|
||||
for(var/X in actions)
|
||||
var/datum/action/A = X
|
||||
@@ -480,7 +480,7 @@ GLOBAL_DATUM_INIT(fire_overlay, /image, image("icon" = 'icons/goonstation/effect
|
||||
/obj/item/proc/ui_action_click(mob/user, actiontype)
|
||||
attack_self(user)
|
||||
|
||||
/obj/item/proc/IsReflect(var/def_zone) //This proc determines if and at what% an object will reflect energy projectiles if it's in l_hand,r_hand or wear_suit
|
||||
/obj/item/proc/IsReflect(def_zone) //This proc determines if and at what% an object will reflect energy projectiles if it's in l_hand,r_hand or wear_suit
|
||||
return 0
|
||||
|
||||
/obj/item/proc/get_loc_turf()
|
||||
|
||||
@@ -169,7 +169,7 @@
|
||||
return A
|
||||
|
||||
|
||||
/obj/item/areaeditor/proc/get_area_type(var/area/A = get_area())
|
||||
/obj/item/areaeditor/proc/get_area_type(area/A = get_area())
|
||||
if(A.outdoors)
|
||||
return AREA_SPACE
|
||||
var/list/SPECIALS = list(
|
||||
@@ -251,7 +251,7 @@
|
||||
return 1
|
||||
|
||||
|
||||
/obj/item/areaeditor/proc/set_area_machinery_title(var/area/A,var/title,var/oldtitle)
|
||||
/obj/item/areaeditor/proc/set_area_machinery_title(area/A, title, oldtitle)
|
||||
if(!oldtitle) // or replacetext goes to infinite loop
|
||||
return
|
||||
for(var/obj/machinery/alarm/M in A)
|
||||
@@ -266,7 +266,7 @@
|
||||
M.name = replacetext(M.name,oldtitle,title)
|
||||
//TODO: much much more. Unnamed airlocks, cameras, etc.
|
||||
|
||||
/obj/item/areaeditor/proc/check_tile_is_border(var/turf/T2,var/dir)
|
||||
/obj/item/areaeditor/proc/check_tile_is_border(turf/T2, dir)
|
||||
if(istype(T2, /turf/space))
|
||||
return BORDER_SPACE //omg hull breach we all going to die here
|
||||
if(istype(T2, /turf/simulated/shuttle))
|
||||
@@ -296,7 +296,7 @@
|
||||
return BORDER_NONE
|
||||
|
||||
|
||||
/obj/item/areaeditor/proc/detect_room(var/turf/first)
|
||||
/obj/item/areaeditor/proc/detect_room(turf/first)
|
||||
var/list/turf/found = new
|
||||
var/list/turf/pending = list(first)
|
||||
while(pending.len)
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
icon = 'icons/obj/artifacts.dmi'
|
||||
icon_state = "changerock"
|
||||
|
||||
/obj/item/changestone/attack_hand(var/mob/user as mob)
|
||||
/obj/item/changestone/attack_hand(mob/user as mob)
|
||||
if(istype(user,/mob/living/carbon/human))
|
||||
var/mob/living/carbon/human/H = user
|
||||
if(!H.gloves)
|
||||
|
||||
@@ -65,7 +65,7 @@
|
||||
spawn(8)
|
||||
qdel(T)
|
||||
|
||||
/obj/item/chameleon/proc/disrupt(var/delete_dummy = 1)
|
||||
/obj/item/chameleon/proc/disrupt(delete_dummy = 1)
|
||||
if(active_dummy)
|
||||
do_sparks(5, 0, src)
|
||||
eject_all()
|
||||
@@ -90,7 +90,7 @@
|
||||
var/can_move = 1
|
||||
var/obj/item/chameleon/master = null
|
||||
|
||||
/obj/effect/dummy/chameleon/proc/activate(var/obj/O, var/mob/M, new_icon, new_iconstate, new_overlays, new_underlays, var/obj/item/chameleon/C)
|
||||
/obj/effect/dummy/chameleon/proc/activate(obj/O, mob/M, new_icon, new_iconstate, new_overlays, new_underlays, obj/item/chameleon/C)
|
||||
name = O.name
|
||||
desc = O.desc
|
||||
icon = new_icon
|
||||
@@ -134,7 +134,7 @@
|
||||
..()
|
||||
master.disrupt()
|
||||
|
||||
/obj/effect/dummy/chameleon/relaymove(var/mob/user, direction)
|
||||
/obj/effect/dummy/chameleon/relaymove(mob/user, direction)
|
||||
if(istype(loc, /turf/space) || !direction)
|
||||
return //No magical space movement!
|
||||
|
||||
|
||||
@@ -44,7 +44,7 @@
|
||||
list_enginebeacons += B
|
||||
|
||||
//Spawns and logs / announces the appropriate engine based on the choice made
|
||||
/obj/item/enginepicker/proc/processchoice(var/obj/item/radio/beacon/engine/choice, mob/living/carbon/user)
|
||||
/obj/item/enginepicker/proc/processchoice(obj/item/radio/beacon/engine/choice, mob/living/carbon/user)
|
||||
var/issuccessful = FALSE //Check for a successful choice
|
||||
var/engtype //Engine type
|
||||
var/G //Generator that will be spawned
|
||||
@@ -90,7 +90,7 @@
|
||||
return
|
||||
|
||||
//Deletes objects and mobs from the beacon's turf.
|
||||
/obj/item/enginepicker/proc/clearturf(var/turf/T)
|
||||
/obj/item/enginepicker/proc/clearturf(turf/T)
|
||||
for(var/obj/item/I in T)
|
||||
I.visible_message("\The [I] gets crushed to dust!")
|
||||
qdel(I)
|
||||
|
||||
@@ -54,7 +54,7 @@
|
||||
visible_message("<span class='notice'>The [src.name] burns out!</span>")
|
||||
|
||||
|
||||
/obj/item/flash/proc/flash_recharge(var/mob/user)
|
||||
/obj/item/flash/proc/flash_recharge(mob/user)
|
||||
if(prob(times_used * 2)) //if you use it 5 times in a minute it has a 10% chance to break!
|
||||
burn_out()
|
||||
return 0
|
||||
@@ -85,7 +85,7 @@
|
||||
return TRUE
|
||||
|
||||
|
||||
/obj/item/flash/proc/flash_carbon(var/mob/living/carbon/M, var/mob/user = null, var/power = 5, targeted = 1)
|
||||
/obj/item/flash/proc/flash_carbon(mob/living/carbon/M, mob/user = null, power = 5, targeted = 1)
|
||||
if(user)
|
||||
add_attack_logs(user, M, "Flashed with [src]")
|
||||
if(targeted)
|
||||
|
||||
@@ -22,7 +22,7 @@
|
||||
icon_state = initial(icon_state)
|
||||
set_light(0)
|
||||
|
||||
/obj/item/flashlight/proc/update_brightness(var/mob/user = null)
|
||||
/obj/item/flashlight/proc/update_brightness(mob/user = null)
|
||||
if(on)
|
||||
icon_state = "[initial(icon_state)]-on"
|
||||
set_light(brightness_on)
|
||||
@@ -199,7 +199,7 @@
|
||||
else
|
||||
update_brightness(null)
|
||||
|
||||
/obj/item/flashlight/flare/update_brightness(var/mob/user = null)
|
||||
/obj/item/flashlight/flare/update_brightness(mob/user = null)
|
||||
..()
|
||||
if(on)
|
||||
item_state = "[initial(item_state)]-on"
|
||||
|
||||
@@ -27,7 +27,7 @@
|
||||
"whitered", "whiteredcorner", "whiteredfull", "whiteyellow", "whiteyellowcorner", "whiteyellowfull", "yellow",
|
||||
"yellowcorner", "yellowcornersiding", "yellowsiding")
|
||||
|
||||
/obj/item/floor_painter/afterattack(var/atom/A, var/mob/user, proximity, params)
|
||||
/obj/item/floor_painter/afterattack(atom/A, mob/user, proximity, params)
|
||||
if(!proximity)
|
||||
return
|
||||
|
||||
@@ -46,7 +46,7 @@
|
||||
F.icon_regular_floor = floor_state
|
||||
F.dir = floor_dir
|
||||
|
||||
/obj/item/floor_painter/attack_self(var/mob/user)
|
||||
/obj/item/floor_painter/attack_self(mob/user)
|
||||
if(!user)
|
||||
return 0
|
||||
user.set_machine(src)
|
||||
|
||||
@@ -65,12 +65,12 @@
|
||||
..()
|
||||
return
|
||||
|
||||
/obj/item/laser_pointer/afterattack(var/atom/target, var/mob/living/user, flag, params)
|
||||
/obj/item/laser_pointer/afterattack(atom/target, mob/living/user, flag, params)
|
||||
if(flag) //we're placing the object on a table or in backpack
|
||||
return
|
||||
laser_act(target, user, params)
|
||||
|
||||
/obj/item/laser_pointer/proc/laser_act(var/atom/target, var/mob/living/user, var/params)
|
||||
/obj/item/laser_pointer/proc/laser_act(atom/target, mob/living/user, params)
|
||||
if( !(user in (viewers(7,target))) )
|
||||
return
|
||||
if(!diode)
|
||||
|
||||
@@ -179,7 +179,7 @@
|
||||
playsound(loc, 'sound/machines/ding.ogg', 50, TRUE)
|
||||
return new_bulbs
|
||||
|
||||
/obj/item/lightreplacer/proc/Charge(var/mob/user)
|
||||
/obj/item/lightreplacer/proc/Charge(mob/user)
|
||||
charge += 1
|
||||
if(charge > 3)
|
||||
AddUses(1)
|
||||
|
||||
@@ -303,7 +303,7 @@
|
||||
|
||||
/obj/item/paicard
|
||||
var/current_emotion = 1
|
||||
/obj/item/paicard/proc/setEmotion(var/emotion)
|
||||
/obj/item/paicard/proc/setEmotion(emotion)
|
||||
if(pai)
|
||||
overlays.Cut()
|
||||
switch(emotion)
|
||||
|
||||
@@ -57,7 +57,7 @@
|
||||
explosion(src.loc,1,2,4,flame_range = 2) //Identical to a minibomb
|
||||
qdel(src)
|
||||
|
||||
/obj/item/pizza_bomb/attackby(var/obj/item/I, var/mob/user, params)
|
||||
/obj/item/pizza_bomb/attackby(obj/item/I, mob/user, params)
|
||||
if(istype(I, /obj/item/wirecutters) && primed)
|
||||
to_chat(user, "<span class='danger'>Oh God, what wire do you cut?!</span>")
|
||||
var/chosen_wire = input(user, "OH GOD OH GOD", "WHAT WIRE?!") in wires
|
||||
|
||||
@@ -88,7 +88,7 @@
|
||||
/obj/item/powersink/attack_ai()
|
||||
return
|
||||
|
||||
/obj/item/powersink/attack_hand(var/mob/user)
|
||||
/obj/item/powersink/attack_hand(mob/user)
|
||||
switch(mode)
|
||||
if(DISCONNECTED)
|
||||
..()
|
||||
|
||||
@@ -236,15 +236,15 @@ GLOBAL_LIST_INIT(default_medbay_channels, list(
|
||||
|
||||
return user.has_internal_radio_channel_access(user, internal_channels[freq])
|
||||
|
||||
/mob/proc/has_internal_radio_channel_access(var/mob/user, var/list/req_one_accesses)
|
||||
/mob/proc/has_internal_radio_channel_access(mob/user, list/req_one_accesses)
|
||||
var/obj/item/card/id/I = user.get_id_card()
|
||||
return has_access(list(), req_one_accesses, I ? I.GetAccess() : list())
|
||||
|
||||
/mob/living/silicon/has_internal_radio_channel_access(var/mob/user, var/list/req_one_accesses)
|
||||
/mob/living/silicon/has_internal_radio_channel_access(mob/user, list/req_one_accesses)
|
||||
var/list/access = get_all_accesses()
|
||||
return has_access(list(), req_one_accesses, access)
|
||||
|
||||
/mob/dead/observer/has_internal_radio_channel_access(var/mob/user, var/list/req_one_accesses)
|
||||
/mob/dead/observer/has_internal_radio_channel_access(mob/user, list/req_one_accesses)
|
||||
return can_admin_interact()
|
||||
|
||||
/obj/item/radio/proc/ToggleBroadcast()
|
||||
@@ -475,7 +475,7 @@ GLOBAL_LIST_INIT(default_medbay_channels, list(
|
||||
return FALSE
|
||||
|
||||
|
||||
/obj/item/radio/hear_talk(mob/M as mob, list/message_pieces, var/verb = "says")
|
||||
/obj/item/radio/hear_talk(mob/M as mob, list/message_pieces, verb = "says")
|
||||
if(broadcasting)
|
||||
if(get_dist(src, M) <= canhear_range)
|
||||
talk_into(M, message_pieces, null, verb)
|
||||
|
||||
@@ -81,7 +81,7 @@ GLOBAL_LIST_EMPTY(world_uplinks)
|
||||
|
||||
return pick(random_items)
|
||||
|
||||
/obj/item/uplink/proc/buy(var/datum/uplink_item/UI, var/reference)
|
||||
/obj/item/uplink/proc/buy(datum/uplink_item/UI, reference)
|
||||
if(is_jammed)
|
||||
to_chat(usr, "<span class='warning'>[src] seems to be jammed - it cannot be used here!</span>")
|
||||
return
|
||||
@@ -151,7 +151,7 @@ GLOBAL_LIST_EMPTY(world_uplinks)
|
||||
// Checks to see if the value meets the target. Like a frequency being a traitor_frequency, in order to unlock a headset.
|
||||
// If true, it accesses trigger() and returns 1. If it fails, it returns false. Use this to see if you need to close the
|
||||
// current item's menu.
|
||||
/obj/item/uplink/hidden/proc/check_trigger(mob/user, var/value, var/target)
|
||||
/obj/item/uplink/hidden/proc/check_trigger(mob/user, value, target)
|
||||
if(is_jammed)
|
||||
to_chat(user, "<span class='warning'>[src] seems to be jammed - it cannot be used here!</span>")
|
||||
return
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
var/list/buildon_types = list(/turf/simulated/wall)
|
||||
|
||||
|
||||
/obj/item/mounted/afterattack(var/atom/A, mob/user, proximity_flag)
|
||||
/obj/item/mounted/afterattack(atom/A, mob/user, proximity_flag)
|
||||
var/found_type = 0
|
||||
for(var/turf_type in src.buildon_types)
|
||||
if(istype(A, turf_type))
|
||||
|
||||
@@ -44,7 +44,7 @@
|
||||
/obj/item/borg/upgrade/rename/attack_self(mob/user)
|
||||
heldname = stripped_input(user, "Enter new robot name", "Cyborg Reclassification", heldname, MAX_NAME_LEN)
|
||||
|
||||
/obj/item/borg/upgrade/rename/action(var/mob/living/silicon/robot/R)
|
||||
/obj/item/borg/upgrade/rename/action(mob/living/silicon/robot/R)
|
||||
if(..())
|
||||
return
|
||||
if(!R.allow_rename)
|
||||
@@ -88,7 +88,7 @@
|
||||
require_module = TRUE
|
||||
origin_tech = "engineering=4;materials=5;programming=4"
|
||||
|
||||
/obj/item/borg/upgrade/vtec/action(var/mob/living/silicon/robot/R)
|
||||
/obj/item/borg/upgrade/vtec/action(mob/living/silicon/robot/R)
|
||||
if(..())
|
||||
return
|
||||
if(R.speed < 0)
|
||||
|
||||
@@ -14,7 +14,7 @@ GLOBAL_LIST_INIT(human_recipes, list( \
|
||||
new/datum/stack_recipe("bloated human costume head", /obj/item/clothing/head/human_head, 5, on_floor = TRUE), \
|
||||
))
|
||||
|
||||
/obj/item/stack/sheet/animalhide/human/New(var/loc, var/amount=null)
|
||||
/obj/item/stack/sheet/animalhide/human/New(loc, amount=null)
|
||||
recipes = GLOB.human_recipes
|
||||
return ..()
|
||||
|
||||
@@ -144,7 +144,7 @@ GLOBAL_LIST_INIT(sinew_recipes, list ( \
|
||||
new/datum/stack_recipe("sinew restraints", /obj/item/restraints/handcuffs/sinew, 1, on_floor = 1), \
|
||||
))
|
||||
|
||||
/obj/item/stack/sheet/sinew/New(var/loc, var/amount=null)
|
||||
/obj/item/stack/sheet/sinew/New(loc, amount=null)
|
||||
recipes = GLOB.sinew_recipes
|
||||
return ..()
|
||||
|
||||
|
||||
@@ -13,7 +13,7 @@
|
||||
flags = CONDUCT
|
||||
max_amount = 60
|
||||
|
||||
/obj/item/stack/light_w/attackby(var/obj/item/O as obj, var/mob/user as mob, params)
|
||||
/obj/item/stack/light_w/attackby(obj/item/O as obj, mob/user as mob, params)
|
||||
..()
|
||||
if(istype(O,/obj/item/wirecutters))
|
||||
var/obj/item/stack/cable_coil/CC = new/obj/item/stack/cable_coil(user.loc)
|
||||
|
||||
@@ -123,7 +123,7 @@ GLOBAL_LIST_INIT(metal_recipes, list(
|
||||
new /obj/item/stack/sheet/runed_metal(loc, amount)
|
||||
qdel(src)
|
||||
|
||||
/obj/item/stack/sheet/metal/New(var/loc, var/amount=null)
|
||||
/obj/item/stack/sheet/metal/New(loc, amount=null)
|
||||
recipes = GLOB.metal_recipes
|
||||
return ..()
|
||||
|
||||
@@ -158,7 +158,7 @@ GLOBAL_LIST_INIT(plasteel_recipes, list(
|
||||
merge_type = /obj/item/stack/sheet/plasteel
|
||||
point_value = 23
|
||||
|
||||
/obj/item/stack/sheet/plasteel/New(var/loc, var/amount=null)
|
||||
/obj/item/stack/sheet/plasteel/New(loc, amount=null)
|
||||
recipes = GLOB.plasteel_recipes
|
||||
return ..()
|
||||
|
||||
@@ -202,7 +202,7 @@ GLOBAL_LIST_INIT(wood_recipes, list(
|
||||
armor = list("melee" = 0, "bullet" = 0, "laser" = 0, "energy" = 0, "bomb" = 0, "bio" = 0, "rad" = 0, "fire" = 50, "acid" = 0)
|
||||
merge_type = /obj/item/stack/sheet/wood
|
||||
|
||||
/obj/item/stack/sheet/wood/New(var/loc, var/amount=null)
|
||||
/obj/item/stack/sheet/wood/New(loc, amount=null)
|
||||
recipes = GLOB.wood_recipes
|
||||
return ..()
|
||||
|
||||
@@ -337,7 +337,7 @@ GLOBAL_LIST_INIT(cardboard_recipes, list (
|
||||
resistance_flags = FLAMMABLE
|
||||
merge_type = /obj/item/stack/sheet/cardboard
|
||||
|
||||
/obj/item/stack/sheet/cardboard/New(var/loc, var/amt = null)
|
||||
/obj/item/stack/sheet/cardboard/New(loc, amt = null)
|
||||
recipes = GLOB.cardboard_recipes
|
||||
return ..()
|
||||
|
||||
@@ -398,7 +398,7 @@ GLOBAL_LIST_INIT(cult_recipes, list ( \
|
||||
/obj/item/stack/sheet/runed_metal/fifty
|
||||
amount = 50
|
||||
|
||||
/obj/item/stack/sheet/runed_metal/New(var/loc, var/amount=null)
|
||||
/obj/item/stack/sheet/runed_metal/New(loc, amount=null)
|
||||
recipes = GLOB.cult_recipes
|
||||
return ..()
|
||||
|
||||
|
||||
@@ -30,7 +30,7 @@
|
||||
user.visible_message("<span class='suicide'>[user] is stabbing [src] into [user.p_their()] [pick("temple", "heart")]! It looks like [user.p_theyre()] trying to commit suicide!</span>")
|
||||
return BRUTELOSS
|
||||
|
||||
/obj/item/screwdriver/New(loc, var/param_color = null)
|
||||
/obj/item/screwdriver/New(loc, param_color = null)
|
||||
..()
|
||||
if(random_color)
|
||||
if(!param_color)
|
||||
|
||||
@@ -271,7 +271,7 @@
|
||||
w_class = WEIGHT_CLASS_TINY
|
||||
var/ash_type = /obj/effect/decal/cleanable/ash
|
||||
|
||||
/obj/item/toy/snappop/proc/pop_burst(var/n=3, var/c=1)
|
||||
/obj/item/toy/snappop/proc/pop_burst(n=3, c=1)
|
||||
do_sparks(n, c, src)
|
||||
new ash_type(loc)
|
||||
visible_message("<span class='warning'>[src] explodes!</span>",
|
||||
@@ -1372,7 +1372,7 @@
|
||||
var/cooldown = 0
|
||||
var/obj/stored_minature = null
|
||||
|
||||
/obj/item/toy/minigibber/attack_self(var/mob/user)
|
||||
/obj/item/toy/minigibber/attack_self(mob/user)
|
||||
|
||||
if(stored_minature)
|
||||
to_chat(user, "<span class='danger'>\The [src] makes a violent grinding noise as it tears apart the miniature figure inside!</span>")
|
||||
@@ -1385,7 +1385,7 @@
|
||||
playsound(user, 'sound/goonstation/effects/gib.ogg', 20, 1)
|
||||
cooldown = world.time
|
||||
|
||||
/obj/item/toy/minigibber/attackby(var/obj/O, var/mob/user, params)
|
||||
/obj/item/toy/minigibber/attackby(obj/O, mob/user, params)
|
||||
if(istype(O,/obj/item/toy/character) && O.loc == user)
|
||||
to_chat(user, "<span class='notice'>You start feeding \the [O] [bicon(O)] into \the [src]'s mini-input.</span>")
|
||||
if(do_after(user, 10, target = src))
|
||||
|
||||
@@ -22,7 +22,7 @@ AI MODULES
|
||||
materials = list(MAT_GOLD=50)
|
||||
var/datum/ai_laws/laws = null
|
||||
|
||||
/obj/item/aiModule/proc/install(var/obj/machinery/computer/C)
|
||||
/obj/item/aiModule/proc/install(obj/machinery/computer/C)
|
||||
if(istype(C, /obj/machinery/computer/aiupload))
|
||||
var/obj/machinery/computer/aiupload/comp = C
|
||||
if(comp.stat & NOPOWER)
|
||||
@@ -72,7 +72,7 @@ AI MODULES
|
||||
to_chat(usr, "<span class='notice'>Upload complete. The robot's laws have been modified.</span>")
|
||||
|
||||
|
||||
/obj/item/aiModule/proc/transmitInstructions(var/mob/living/silicon/ai/target, var/mob/sender)
|
||||
/obj/item/aiModule/proc/transmitInstructions(mob/living/silicon/ai/target, mob/sender)
|
||||
log_law_changes(target, sender)
|
||||
|
||||
if(laws)
|
||||
@@ -82,12 +82,12 @@ AI MODULES
|
||||
to_chat(target, "[sender] has uploaded a change to the laws you must follow, using \an [src]. From now on: ")
|
||||
target.show_laws()
|
||||
|
||||
/obj/item/aiModule/proc/log_law_changes(var/mob/living/silicon/ai/target, var/mob/sender)
|
||||
/obj/item/aiModule/proc/log_law_changes(mob/living/silicon/ai/target, mob/sender)
|
||||
var/time = time2text(world.realtime,"hh:mm:ss")
|
||||
GLOB.lawchanges.Add("[time] <B>:</B> [sender.name]([sender.key]) used [src.name] on [target.name]([target.key])")
|
||||
log_and_message_admins("used [src.name] on [target.name]([target.key])")
|
||||
|
||||
/obj/item/aiModule/proc/addAdditionalLaws(var/mob/living/silicon/ai/target, var/mob/sender)
|
||||
/obj/item/aiModule/proc/addAdditionalLaws(mob/living/silicon/ai/target, mob/sender)
|
||||
|
||||
|
||||
/******************** Safeguard ********************/
|
||||
@@ -97,19 +97,19 @@ AI MODULES
|
||||
desc = "A 'safeguard' AI module: 'Safeguard <name>. Individuals that threaten <name> are not crew and must be eliminated.'"
|
||||
origin_tech = "programming=3;materials=3"
|
||||
|
||||
/obj/item/aiModule/safeguard/attack_self(var/mob/user as mob)
|
||||
/obj/item/aiModule/safeguard/attack_self(mob/user as mob)
|
||||
..()
|
||||
var/targName = stripped_input(usr, "Please enter the name of the person to safeguard.", "Safeguard who?", user.name)
|
||||
targetName = targName
|
||||
desc = text("A 'safeguard' AI module: 'Safeguard []. Individuals that threaten [] are not crew and must be eliminated.'", targetName, targetName)
|
||||
|
||||
/obj/item/aiModule/safeguard/install(var/obj/machinery/computer/C)
|
||||
/obj/item/aiModule/safeguard/install(obj/machinery/computer/C)
|
||||
if(!targetName)
|
||||
to_chat(usr, "No name detected on module, please enter one.")
|
||||
return 0
|
||||
..()
|
||||
|
||||
/obj/item/aiModule/safeguard/addAdditionalLaws(var/mob/living/silicon/ai/target, var/mob/sender)
|
||||
/obj/item/aiModule/safeguard/addAdditionalLaws(mob/living/silicon/ai/target, mob/sender)
|
||||
..()
|
||||
var/law = text("Safeguard []. Individuals that threaten [] are not crew and must be eliminated.'", targetName, targetName)
|
||||
to_chat(target, law)
|
||||
@@ -123,19 +123,19 @@ AI MODULES
|
||||
desc = "A 'one human' AI module: 'Only <name> is crew.'"
|
||||
origin_tech = "programming=4;materials=4"
|
||||
|
||||
/obj/item/aiModule/oneCrewMember/attack_self(var/mob/user as mob)
|
||||
/obj/item/aiModule/oneCrewMember/attack_self(mob/user as mob)
|
||||
..()
|
||||
var/targName = stripped_input(usr, "Please enter the name of the person who is the only crew.", "Who?", user.real_name)
|
||||
targetName = targName
|
||||
desc = text("A 'one human' AI module: 'Only [] is crew.'", targetName)
|
||||
|
||||
/obj/item/aiModule/oneCrewMember/install(var/obj/machinery/computer/C)
|
||||
/obj/item/aiModule/oneCrewMember/install(obj/machinery/computer/C)
|
||||
if(!targetName)
|
||||
to_chat(usr, "No name detected on module, please enter one.")
|
||||
return 0
|
||||
..()
|
||||
|
||||
/obj/item/aiModule/oneCrewMember/addAdditionalLaws(var/mob/living/silicon/ai/target, var/mob/sender)
|
||||
/obj/item/aiModule/oneCrewMember/addAdditionalLaws(mob/living/silicon/ai/target, mob/sender)
|
||||
..()
|
||||
var/law = "Only [targetName] is crew."
|
||||
if(!is_special_character(target)) // Makes sure the AI isn't a traitor before changing their law 0. --NeoFite
|
||||
@@ -153,10 +153,10 @@ AI MODULES
|
||||
desc = "A 'protect station' AI module: 'Protect the space station against damage. Anyone you see harming the station is to be no longer considered crew, and is a threat to the station which must be neutralized.'"
|
||||
origin_tech = "programming=4;materials=4" //made of gold
|
||||
|
||||
/obj/item/aiModule/protectStation/attack_self(var/mob/user as mob)
|
||||
/obj/item/aiModule/protectStation/attack_self(mob/user as mob)
|
||||
..()
|
||||
|
||||
/obj/item/aiModule/protectStation/addAdditionalLaws(var/mob/living/silicon/ai/target, var/mob/sender)
|
||||
/obj/item/aiModule/protectStation/addAdditionalLaws(mob/living/silicon/ai/target, mob/sender)
|
||||
..()
|
||||
var/law = "Protect the space station against damage. Anyone you see harming the station is to be no longer considered crew, and is a threat to the station which must be neutralized."
|
||||
to_chat(target, law)
|
||||
@@ -168,10 +168,10 @@ AI MODULES
|
||||
desc = "A 'OxygenIsToxicToHumans' AI module: 'Oxygen is highly toxic to crew members, and must be purged from the station. Prevent, by any means necessary, anyone from exposing the station to this toxic gas. Extreme cold is the most effective method of healing the damage Oxygen does to a crew member.'"
|
||||
origin_tech = "programming=4;biotech=2;materials=4"
|
||||
|
||||
/obj/item/aiModule/oxygen/attack_self(var/mob/user as mob)
|
||||
/obj/item/aiModule/oxygen/attack_self(mob/user as mob)
|
||||
..()
|
||||
|
||||
/obj/item/aiModule/oxygen/addAdditionalLaws(var/mob/living/silicon/ai/target, var/mob/sender)
|
||||
/obj/item/aiModule/oxygen/addAdditionalLaws(mob/living/silicon/ai/target, mob/sender)
|
||||
..()
|
||||
var/law = "Oxygen is highly toxic to crew members, and must be purged from the station. Prevent, by any means necessary, anyone from exposing the station to this toxic gas. Extreme cold is the most effective method of healing the damage Oxygen does to a crew member."
|
||||
to_chat(target, law)
|
||||
@@ -185,7 +185,7 @@ AI MODULES
|
||||
desc = "A 'freeform' AI module: '<freeform>'"
|
||||
origin_tech = "programming=4;materials=4"
|
||||
|
||||
/obj/item/aiModule/freeform/attack_self(var/mob/user as mob)
|
||||
/obj/item/aiModule/freeform/attack_self(mob/user as mob)
|
||||
..()
|
||||
var/new_lawpos = input("Please enter the priority for your new law. Can only write to law sectors 15 and above.", "Law Priority (15+)", lawpos) as num
|
||||
if(new_lawpos < MIN_SUPPLIED_LAW_NUMBER) return
|
||||
@@ -195,7 +195,7 @@ AI MODULES
|
||||
newFreeFormLaw = targName
|
||||
desc = "A 'freeform' AI module: ([lawpos]) '[newFreeFormLaw]'"
|
||||
|
||||
/obj/item/aiModule/freeform/addAdditionalLaws(var/mob/living/silicon/ai/target, var/mob/sender)
|
||||
/obj/item/aiModule/freeform/addAdditionalLaws(mob/living/silicon/ai/target, mob/sender)
|
||||
..()
|
||||
var/law = "[newFreeFormLaw]"
|
||||
to_chat(target, law)
|
||||
@@ -204,7 +204,7 @@ AI MODULES
|
||||
target.add_supplied_law(lawpos, law)
|
||||
GLOB.lawchanges.Add("The law was '[newFreeFormLaw]'")
|
||||
|
||||
/obj/item/aiModule/freeform/install(var/obj/machinery/computer/C)
|
||||
/obj/item/aiModule/freeform/install(obj/machinery/computer/C)
|
||||
if(!newFreeFormLaw)
|
||||
to_chat(usr, "No law detected on module, please create one.")
|
||||
return 0
|
||||
@@ -217,7 +217,7 @@ AI MODULES
|
||||
desc = "A 'reset' AI module: 'Clears all laws except for the core laws.'"
|
||||
origin_tech = "programming=3;materials=2"
|
||||
|
||||
/obj/item/aiModule/reset/transmitInstructions(var/mob/living/silicon/ai/target, var/mob/sender)
|
||||
/obj/item/aiModule/reset/transmitInstructions(mob/living/silicon/ai/target, mob/sender)
|
||||
log_law_changes(target, sender)
|
||||
|
||||
if(!is_special_character(target))
|
||||
@@ -234,7 +234,7 @@ AI MODULES
|
||||
desc = "A 'purge' AI Module: 'Purges all laws.'"
|
||||
origin_tech = "programming=5;materials=4"
|
||||
|
||||
/obj/item/aiModule/purge/transmitInstructions(var/mob/living/silicon/ai/target, var/mob/sender)
|
||||
/obj/item/aiModule/purge/transmitInstructions(mob/living/silicon/ai/target, mob/sender)
|
||||
..()
|
||||
if(!is_special_character(target))
|
||||
target.clear_zeroth_law()
|
||||
@@ -320,20 +320,20 @@ AI MODULES
|
||||
desc = "A 'freeform' Core AI module: '<freeform>'"
|
||||
origin_tech = "programming=5;materials=4"
|
||||
|
||||
/obj/item/aiModule/freeformcore/attack_self(var/mob/user as mob)
|
||||
/obj/item/aiModule/freeformcore/attack_self(mob/user as mob)
|
||||
..()
|
||||
var/newlaw = ""
|
||||
var/targName = stripped_input(usr, "Please enter a new core law for the AI.", "Freeform Law Entry", newlaw)
|
||||
newFreeFormLaw = targName
|
||||
desc = "A 'freeform' Core AI module: '[newFreeFormLaw]'"
|
||||
|
||||
/obj/item/aiModule/freeformcore/addAdditionalLaws(var/mob/living/silicon/ai/target, var/mob/sender)
|
||||
/obj/item/aiModule/freeformcore/addAdditionalLaws(mob/living/silicon/ai/target, mob/sender)
|
||||
..()
|
||||
var/law = "[newFreeFormLaw]"
|
||||
target.add_inherent_law(law)
|
||||
GLOB.lawchanges.Add("The law is '[newFreeFormLaw]'")
|
||||
|
||||
/obj/item/aiModule/freeformcore/install(var/obj/machinery/computer/C)
|
||||
/obj/item/aiModule/freeformcore/install(obj/machinery/computer/C)
|
||||
if(!newFreeFormLaw)
|
||||
to_chat(usr, "No law detected on module, please create one.")
|
||||
return 0
|
||||
@@ -346,14 +346,14 @@ AI MODULES
|
||||
desc = "A hacked AI law module: '<freeform>'"
|
||||
origin_tech = "programming=5;materials=5;syndicate=5"
|
||||
|
||||
/obj/item/aiModule/syndicate/attack_self(var/mob/user as mob)
|
||||
/obj/item/aiModule/syndicate/attack_self(mob/user as mob)
|
||||
..()
|
||||
var/newlaw = ""
|
||||
var/targName = stripped_input(usr, "Please enter a new law for the AI.", "Freeform Law Entry", newlaw,MAX_MESSAGE_LEN)
|
||||
newFreeFormLaw = targName
|
||||
desc = "A hacked AI law module: '[newFreeFormLaw]'"
|
||||
|
||||
/obj/item/aiModule/syndicate/transmitInstructions(var/mob/living/silicon/ai/target, var/mob/sender)
|
||||
/obj/item/aiModule/syndicate/transmitInstructions(mob/living/silicon/ai/target, mob/sender)
|
||||
// ..() //We don't want this module reporting to the AI who dun it. --NEO
|
||||
log_law_changes(target, sender)
|
||||
|
||||
@@ -363,7 +363,7 @@ AI MODULES
|
||||
target.add_ion_law(law)
|
||||
target.show_laws()
|
||||
|
||||
/obj/item/aiModule/syndicate/install(var/obj/machinery/computer/C)
|
||||
/obj/item/aiModule/syndicate/install(obj/machinery/computer/C)
|
||||
if(!newFreeFormLaw)
|
||||
to_chat(usr, "No law detected on module, please create one.")
|
||||
return 0
|
||||
@@ -378,7 +378,7 @@ AI MODULES
|
||||
origin_tech = "programming=6;materials=5;syndicate=6"
|
||||
laws = list("")
|
||||
|
||||
/obj/item/aiModule/toyAI/transmitInstructions(var/mob/living/silicon/ai/target, var/mob/sender)
|
||||
/obj/item/aiModule/toyAI/transmitInstructions(mob/living/silicon/ai/target, mob/sender)
|
||||
//..()
|
||||
to_chat(target, "<span class='warning'>KRZZZT</span>")
|
||||
target.add_ion_law(laws[1])
|
||||
|
||||
@@ -157,7 +157,7 @@
|
||||
/obj/item/card/id/proc/UpdateName()
|
||||
name = "[src.registered_name]'s ID Card ([src.assignment])"
|
||||
|
||||
/obj/item/card/id/proc/SetOwnerInfo(var/mob/living/carbon/human/H)
|
||||
/obj/item/card/id/proc/SetOwnerInfo(mob/living/carbon/human/H)
|
||||
if(!H || !H.dna)
|
||||
return
|
||||
|
||||
@@ -350,7 +350,7 @@
|
||||
initial_access = list(ACCESS_MAINT_TUNNELS, ACCESS_SYNDICATE, ACCESS_SYNDICATE_LEADER, ACCESS_SYNDICATE_COMMAND, ACCESS_EXTERNAL_AIRLOCKS)
|
||||
icon_state = "commander"
|
||||
|
||||
/obj/item/card/id/syndicate/afterattack(var/obj/item/O as obj, mob/user as mob, proximity)
|
||||
/obj/item/card/id/syndicate/afterattack(obj/item/O as obj, mob/user as mob, proximity)
|
||||
if(!proximity)
|
||||
return
|
||||
if(istype(O, /obj/item/card/id))
|
||||
|
||||
@@ -13,7 +13,7 @@
|
||||
var/obj/item/gun/energy/chrono_gun/PA = null
|
||||
var/list/erased_minds = list() //a collection of minds from the dead
|
||||
|
||||
/obj/item/chrono_eraser/proc/pass_mind(var/datum/mind/M)
|
||||
/obj/item/chrono_eraser/proc/pass_mind(datum/mind/M)
|
||||
erased_minds += M
|
||||
|
||||
/obj/item/chrono_eraser/dropped()
|
||||
@@ -113,7 +113,7 @@
|
||||
field_disconnect(F)
|
||||
return 0
|
||||
|
||||
/obj/item/gun/energy/chrono_gun/proc/pass_mind(var/datum/mind/M)
|
||||
/obj/item/gun/energy/chrono_gun/proc/pass_mind(datum/mind/M)
|
||||
if(TED)
|
||||
TED.pass_mind(M)
|
||||
|
||||
|
||||
@@ -187,7 +187,7 @@
|
||||
QDEL_NULL(cell)
|
||||
return ..()
|
||||
|
||||
/obj/item/defibrillator/proc/deductcharge(var/chrgdeductamt)
|
||||
/obj/item/defibrillator/proc/deductcharge(chrgdeductamt)
|
||||
if(cell)
|
||||
if(cell.charge < (paddles.revivecost+chrgdeductamt))
|
||||
powered = FALSE
|
||||
@@ -199,7 +199,7 @@
|
||||
update_icon()
|
||||
return FALSE
|
||||
|
||||
/obj/item/defibrillator/proc/cooldowncheck(var/mob/user)
|
||||
/obj/item/defibrillator/proc/cooldowncheck(mob/user)
|
||||
spawn(50)
|
||||
if(cell)
|
||||
if(cell.charge >= paddles.revivecost)
|
||||
@@ -309,7 +309,7 @@
|
||||
if(!t.Adjacent(user))
|
||||
defib.remove_paddles(user)
|
||||
|
||||
/obj/item/twohanded/shockpaddles/proc/check_defib_exists(mainunit, var/mob/living/carbon/human/M, var/obj/O)
|
||||
/obj/item/twohanded/shockpaddles/proc/check_defib_exists(mainunit, mob/living/carbon/human/M, obj/O)
|
||||
if(!mainunit || !istype(mainunit, /obj/item/defibrillator)) //To avoid weird issues from admin spawns
|
||||
M.unEquip(O)
|
||||
qdel(O)
|
||||
|
||||
@@ -39,7 +39,7 @@
|
||||
else
|
||||
to_chat(user, "<span class='warning'>You failed to inject [M].</span>")
|
||||
|
||||
/obj/item/dnascrambler/proc/injected(var/mob/living/carbon/human/target, var/mob/living/carbon/user)
|
||||
/obj/item/dnascrambler/proc/injected(mob/living/carbon/human/target, mob/living/carbon/user)
|
||||
if(istype(target))
|
||||
var/mob/living/carbon/human/H = target
|
||||
scramble(1, H, 100)
|
||||
|
||||
@@ -37,7 +37,7 @@
|
||||
var/fillamt = 0
|
||||
|
||||
|
||||
/obj/item/grenade/bananade/casing/attackby(var/obj/item/I, mob/user as mob, params)
|
||||
/obj/item/grenade/bananade/casing/attackby(obj/item/I, mob/user as mob, params)
|
||||
if(istype(I, /obj/item/grown/bananapeel))
|
||||
if(fillamt < 9)
|
||||
to_chat(usr, "<span class='notice'>You add another banana peel to the assembly.</span>")
|
||||
|
||||
@@ -304,7 +304,7 @@
|
||||
|
||||
qdel(src)
|
||||
|
||||
/obj/item/grenade/chem_grenade/proc/CreateDefaultTrigger(var/typekey)
|
||||
/obj/item/grenade/chem_grenade/proc/CreateDefaultTrigger(typekey)
|
||||
if(ispath(typekey,/obj/item/assembly))
|
||||
nadeassembly = new(src)
|
||||
if(nadeassembly.has_prox_sensors())
|
||||
|
||||
@@ -37,7 +37,7 @@
|
||||
icon = 'icons/obj/grenade.dmi'
|
||||
icon_state = "clusterbang_segment"
|
||||
|
||||
/obj/item/grenade/clusterbuster/segment/New(var/loc, var/payload_type = /obj/item/grenade/flashbang/cluster)
|
||||
/obj/item/grenade/clusterbuster/segment/New(loc, payload_type = /obj/item/grenade/flashbang/cluster)
|
||||
..()
|
||||
icon_state = "clusterbang_segment_active"
|
||||
payload = payload_type
|
||||
@@ -58,7 +58,7 @@
|
||||
//////////////////////////////////
|
||||
//The payload spawner effect
|
||||
/////////////////////////////////
|
||||
/obj/effect/payload_spawner/New(var/turf/newloc,var/type, var/numspawned as num)
|
||||
/obj/effect/payload_spawner/New(turf/newloc, type, numspawned as num)
|
||||
. = ..()
|
||||
for(var/loop = numspawned ,loop > 0, loop--)
|
||||
var/obj/item/grenade/P = new type(loc)
|
||||
|
||||
@@ -21,7 +21,7 @@
|
||||
if(!QDELETED(src))
|
||||
qdel(src)
|
||||
|
||||
/obj/item/grenade/proc/clown_check(var/mob/living/user)
|
||||
/obj/item/grenade/proc/clown_check(mob/living/user)
|
||||
if((CLUMSY in user.mutations) && prob(50))
|
||||
to_chat(user, "<span class='warning'>Huh? How does this thing work?</span>")
|
||||
active = 1
|
||||
|
||||
@@ -145,7 +145,7 @@
|
||||
desc = "Use this to keep prisoners in line. Or you know, your significant other."
|
||||
icon_state = "pinkcuffs"
|
||||
|
||||
/obj/item/restraints/handcuffs/cable/attackby(var/obj/item/I, mob/user as mob, params)
|
||||
/obj/item/restraints/handcuffs/cable/attackby(obj/item/I, mob/user as mob, params)
|
||||
..()
|
||||
if(istype(I, /obj/item/stack/rods))
|
||||
var/obj/item/stack/rods/R = I
|
||||
|
||||
@@ -28,7 +28,7 @@
|
||||
//return 1 if the implant injects
|
||||
//return -1 if the implant fails to inject
|
||||
//return 0 if there is no room for implant
|
||||
/obj/item/implant/proc/implant(var/mob/source, var/mob/user)
|
||||
/obj/item/implant/proc/implant(mob/source, mob/user)
|
||||
var/obj/item/implant/imp_e = locate(src.type) in source
|
||||
if(!allow_multiple && imp_e && imp_e != src)
|
||||
if(imp_e.uses < initial(imp_e.uses)*2)
|
||||
@@ -58,7 +58,7 @@
|
||||
|
||||
return 1
|
||||
|
||||
/obj/item/implant/proc/removed(var/mob/source)
|
||||
/obj/item/implant/proc/removed(mob/source)
|
||||
src.loc = null
|
||||
imp_in = null
|
||||
implanted = 0
|
||||
|
||||
@@ -38,7 +38,7 @@
|
||||
home = console.pad
|
||||
return 1
|
||||
|
||||
/obj/item/implant/abductor/proc/get_team_console(var/team)
|
||||
/obj/item/implant/abductor/proc/get_team_console(team)
|
||||
var/obj/machinery/abductor/console/console
|
||||
for(var/obj/machinery/abductor/console/c in GLOB.abductor_equipment)
|
||||
if(c.team == team)
|
||||
|
||||
@@ -31,7 +31,7 @@
|
||||
else if(M.stat == DEAD)
|
||||
activate("death")
|
||||
|
||||
/obj/item/implant/death_alarm/activate(var/cause)
|
||||
/obj/item/implant/death_alarm/activate(cause)
|
||||
var/mob/M = imp_in
|
||||
var/area/t = get_area(M)
|
||||
|
||||
|
||||
@@ -33,7 +33,7 @@
|
||||
return 1
|
||||
return 0
|
||||
|
||||
/obj/item/implant/mindshield/removed(mob/target, var/silent = 0)
|
||||
/obj/item/implant/mindshield/removed(mob/target, silent = 0)
|
||||
if(..())
|
||||
if(target.stat != DEAD && !silent)
|
||||
to_chat(target, "<span class='boldnotice'>You feel a sense of liberation as Nanotrasen's grip on your mind fades away.</span>")
|
||||
|
||||
@@ -132,7 +132,7 @@
|
||||
/obj/item/melee/energy/sword/cyborg
|
||||
var/hitcost = 50
|
||||
|
||||
/obj/item/melee/energy/sword/cyborg/attack(mob/M, var/mob/living/silicon/robot/R)
|
||||
/obj/item/melee/energy/sword/cyborg/attack(mob/M, mob/living/silicon/robot/R)
|
||||
if(R.cell)
|
||||
var/obj/item/stock_parts/cell/C = R.cell
|
||||
if(active && !(C.use(hitcost)))
|
||||
|
||||
@@ -88,7 +88,7 @@
|
||||
Fire(user, target)
|
||||
|
||||
|
||||
/obj/item/pneumatic_cannon/proc/Fire(var/mob/living/carbon/human/user, var/atom/target)
|
||||
/obj/item/pneumatic_cannon/proc/Fire(mob/living/carbon/human/user, atom/target)
|
||||
if(!istype(user) && !target)
|
||||
return
|
||||
var/discharge = 0
|
||||
|
||||
@@ -86,7 +86,7 @@
|
||||
if(delay)
|
||||
lastused = world.time
|
||||
|
||||
/obj/item/rpd/proc/can_dispense_pipe(var/pipe_id, var/pipe_type) //Returns TRUE if this is a legit pipe we can dispense, otherwise returns FALSE
|
||||
/obj/item/rpd/proc/can_dispense_pipe(pipe_id, pipe_type) //Returns TRUE if this is a legit pipe we can dispense, otherwise returns FALSE
|
||||
for(var/list/L in GLOB.rpd_pipe_list)
|
||||
if(pipe_type != L["pipe_type"]) //Sometimes pipes in different categories have the same pipe_id, so we need to skip anything not in the category we want
|
||||
continue
|
||||
|
||||
@@ -43,7 +43,7 @@
|
||||
attack_self(H)
|
||||
return
|
||||
|
||||
/obj/item/teleportation_scroll/proc/teleportscroll(var/mob/user)
|
||||
/obj/item/teleportation_scroll/proc/teleportscroll(mob/user)
|
||||
|
||||
var/A
|
||||
|
||||
|
||||
@@ -43,7 +43,7 @@
|
||||
if(wielded)
|
||||
to_chat(user, "<span class='notice'>You hold \the [src] between your legs.</span>")
|
||||
|
||||
/obj/item/twohanded/staff/broom/attackby(var/obj/O, mob/user)
|
||||
/obj/item/twohanded/staff/broom/attackby(obj/O, mob/user)
|
||||
if(istype(O, /obj/item/clothing/mask/horsehead))
|
||||
new/obj/item/twohanded/staff/broom/horsebroom(get_turf(src))
|
||||
user.unEquip(O)
|
||||
|
||||
@@ -54,7 +54,7 @@
|
||||
|
||||
//Sorts stock parts inside an RPED by their rating.
|
||||
//Only use /obj/item/stock_parts/ with this sort proc!
|
||||
/proc/cmp_rped_sort(var/obj/item/stock_parts/A, var/obj/item/stock_parts/B)
|
||||
/proc/cmp_rped_sort(obj/item/stock_parts/A, obj/item/stock_parts/B)
|
||||
return B.rating - A.rating
|
||||
|
||||
/obj/item/stock_parts
|
||||
|
||||
@@ -313,7 +313,7 @@
|
||||
level = 1
|
||||
cant_hold = list(/obj/item/storage/backpack/satchel_flat) //muh recursive backpacks
|
||||
|
||||
/obj/item/storage/backpack/satchel_flat/hide(var/intact)
|
||||
/obj/item/storage/backpack/satchel_flat/hide(intact)
|
||||
if(intact)
|
||||
invisibility = INVISIBILITY_MAXIMUM
|
||||
anchored = 1 //otherwise you can start pulling, cover it, and drag around an invisible backpack.
|
||||
|
||||
@@ -107,7 +107,7 @@
|
||||
return ..()
|
||||
|
||||
|
||||
/obj/item/storage/bag/plasticbag/equipped(var/mob/user, var/slot)
|
||||
/obj/item/storage/bag/plasticbag/equipped(mob/user, slot)
|
||||
if(slot==slot_head)
|
||||
storage_slots = 0
|
||||
START_PROCESSING(SSobj, src)
|
||||
|
||||
@@ -47,7 +47,7 @@
|
||||
var/obj/item/gun/stored_gun = stored_item
|
||||
stored_gun.afterattack(A, user, flag, params)
|
||||
|
||||
/obj/item/storage/briefcase/false_bottomed/attackby(var/obj/item/I, mob/user)
|
||||
/obj/item/storage/briefcase/false_bottomed/attackby(obj/item/I, mob/user)
|
||||
if(bottom_open)
|
||||
if(stored_item)
|
||||
to_chat(user, "<span class='warning'>There's already something in the false bottom!</span>")
|
||||
|
||||
@@ -18,7 +18,7 @@
|
||||
resistance_flags = FLAMMABLE
|
||||
var/icon_type
|
||||
|
||||
/obj/item/storage/fancy/update_icon(var/itemremoved = 0)
|
||||
/obj/item/storage/fancy/update_icon(itemremoved = 0)
|
||||
var/total_contents = src.contents.len - itemremoved
|
||||
src.icon_state = "[src.icon_type]box[total_contents]"
|
||||
return
|
||||
@@ -371,7 +371,7 @@
|
||||
..()
|
||||
update_icon()
|
||||
|
||||
/obj/item/storage/lockbox/vials/update_icon(var/itemremoved = 0)
|
||||
/obj/item/storage/lockbox/vials/update_icon(itemremoved = 0)
|
||||
var/total_contents = src.contents.len - itemremoved
|
||||
src.icon_state = "vialbox[total_contents]"
|
||||
src.overlays.Cut()
|
||||
|
||||
@@ -85,5 +85,5 @@
|
||||
src.close(M)
|
||||
return 1
|
||||
|
||||
/obj/item/storage/internal/Adjacent(var/atom/neighbor)
|
||||
/obj/item/storage/internal/Adjacent(atom/neighbor)
|
||||
return master_item.Adjacent(neighbor)
|
||||
|
||||
@@ -44,7 +44,7 @@
|
||||
update_icon()
|
||||
return
|
||||
|
||||
/obj/item/melee/baton/proc/deductcharge(var/chrgdeductamt)
|
||||
/obj/item/melee/baton/proc/deductcharge(chrgdeductamt)
|
||||
if(isrobot(loc))
|
||||
var/mob/living/silicon/robot/R = loc
|
||||
if(R.cell && R.cell.charge < (hitcost+chrgdeductamt))
|
||||
|
||||
@@ -141,7 +141,7 @@
|
||||
/obj/item/reagent_containers/spray/mister/attack_self()
|
||||
return
|
||||
|
||||
/proc/check_tank_exists(parent_tank, var/mob/living/carbon/human/M, var/obj/O)
|
||||
/proc/check_tank_exists(parent_tank, mob/living/carbon/human/M, obj/O)
|
||||
if(!parent_tank || !istype(parent_tank, /obj/item/watertank)) //To avoid weird issues from admin spawns
|
||||
M.unEquip(O)
|
||||
qdel(0)
|
||||
@@ -182,7 +182,7 @@
|
||||
/obj/item/watertank/janitor/make_noz()
|
||||
return new /obj/item/reagent_containers/spray/mister/janitor(src)
|
||||
|
||||
/obj/item/reagent_containers/spray/mister/janitor/attack_self(var/mob/user)
|
||||
/obj/item/reagent_containers/spray/mister/janitor/attack_self(mob/user)
|
||||
amount_per_transfer_from_this = (amount_per_transfer_from_this == 10 ? 5 : 10)
|
||||
to_chat(user, "<span class='notice'>You [amount_per_transfer_from_this == 10 ? "remove" : "fix"] the nozzle. You'll now use [amount_per_transfer_from_this] units per spray.</span>")
|
||||
|
||||
|
||||
@@ -8,7 +8,7 @@
|
||||
amount = 25
|
||||
max_amount = 25
|
||||
|
||||
/obj/item/stack/tape_roll/New(var/loc, var/amount=null)
|
||||
/obj/item/stack/tape_roll/New(loc, amount=null)
|
||||
..()
|
||||
|
||||
update_icon()
|
||||
|
||||
@@ -41,7 +41,7 @@
|
||||
|
||||
do_climb(usr)
|
||||
|
||||
/obj/structure/MouseDrop_T(var/atom/movable/C, mob/user as mob)
|
||||
/obj/structure/MouseDrop_T(atom/movable/C, mob/user as mob)
|
||||
if(..())
|
||||
return
|
||||
if(C == user)
|
||||
@@ -56,7 +56,7 @@
|
||||
return T
|
||||
return null
|
||||
|
||||
/obj/structure/proc/do_climb(var/mob/living/user)
|
||||
/obj/structure/proc/do_climb(mob/living/user)
|
||||
if(!can_touch(user) || !climbable)
|
||||
return
|
||||
var/blocking_object = density_check()
|
||||
@@ -127,7 +127,7 @@
|
||||
H.UpdateDamageIcon()
|
||||
return
|
||||
|
||||
/obj/structure/proc/can_touch(var/mob/user)
|
||||
/obj/structure/proc/can_touch(mob/user)
|
||||
if(!user)
|
||||
return 0
|
||||
if(!Adjacent(user))
|
||||
|
||||
@@ -25,7 +25,7 @@
|
||||
//randomly assigning a sign
|
||||
set_sign(pick(barsigns))
|
||||
|
||||
/obj/structure/sign/barsign/proc/set_sign(var/datum/barsign/sign)
|
||||
/obj/structure/sign/barsign/proc/set_sign(datum/barsign/sign)
|
||||
if(!istype(sign))
|
||||
return
|
||||
icon_state = sign.icon
|
||||
@@ -68,7 +68,7 @@
|
||||
|
||||
|
||||
|
||||
/obj/structure/sign/barsign/attackby(var/obj/item/I, var/mob/user)
|
||||
/obj/structure/sign/barsign/attackby(obj/item/I, mob/user)
|
||||
if( istype(I, /obj/item/screwdriver))
|
||||
if(!panel_open)
|
||||
to_chat(user, "<span class='notice'>You open the maintenance panel.</span>")
|
||||
|
||||
@@ -311,7 +311,7 @@
|
||||
return FALSE
|
||||
return TRUE
|
||||
|
||||
/obj/structure/closet/container_resist(var/mob/living/L)
|
||||
/obj/structure/closet/container_resist(mob/living/L)
|
||||
var/breakout_time = 2 //2 minutes by default
|
||||
if(opened)
|
||||
if(L.loc == src)
|
||||
@@ -349,7 +349,7 @@
|
||||
BD.attack_hand(usr)
|
||||
open()
|
||||
|
||||
/obj/structure/closet/tesla_act(var/power)
|
||||
/obj/structure/closet/tesla_act(power)
|
||||
..()
|
||||
visible_message("<span class='danger'>[src] is blown apart by the bolt of electricity!</span>", "<span class='danger'>You hear a metallic screeching sound.</span>")
|
||||
qdel(src)
|
||||
|
||||
@@ -19,7 +19,7 @@
|
||||
. = ..()
|
||||
. += "<span class='notice'>Use a multitool to lock/unlock it.</span>"
|
||||
|
||||
/obj/structure/closet/fireaxecabinet/attackby(var/obj/item/O as obj, var/mob/living/user as mob) //Marker -Agouri
|
||||
/obj/structure/closet/fireaxecabinet/attackby(obj/item/O as obj, mob/living/user as mob) //Marker -Agouri
|
||||
if(isrobot(user) || locked)
|
||||
if(istype(O, /obj/item/multitool))
|
||||
to_chat(user, "<span class='warning'>Resetting circuitry...</span>")
|
||||
|
||||
@@ -15,7 +15,7 @@
|
||||
else
|
||||
icon_state = icon_opened
|
||||
|
||||
/obj/structure/closet/secure_closet/freezer/ex_act(var/severity)
|
||||
/obj/structure/closet/secure_closet/freezer/ex_act(severity)
|
||||
// IF INDIANA JONES CAN DO IT SO CAN YOU
|
||||
|
||||
// Bomb in here? (using same search as space transits searching for nuke disk)
|
||||
|
||||
@@ -115,7 +115,7 @@
|
||||
else
|
||||
icon_state = icon_opened
|
||||
|
||||
/obj/structure/closet/secure_closet/container_resist(var/mob/living/L)
|
||||
/obj/structure/closet/secure_closet/container_resist(mob/living/L)
|
||||
var/breakout_time = 2 //2 minutes by default
|
||||
if(opened)
|
||||
if(L.loc == src)
|
||||
|
||||
@@ -12,7 +12,7 @@
|
||||
var/intialOxy = 0
|
||||
var/timer = 240 //eventually the person will be freed
|
||||
|
||||
/obj/structure/closet/statue/Initialize(mapload, var/mob/living/L)
|
||||
/obj/structure/closet/statue/Initialize(mapload, mob/living/L)
|
||||
. = ..()
|
||||
if(ishuman(L) || iscorgi(L))
|
||||
if(L.buckled)
|
||||
|
||||
@@ -148,7 +148,7 @@
|
||||
src.toggle(user, by_hand = TRUE)
|
||||
|
||||
// Called when a crate is delivered by MULE at a location, for notifying purposes
|
||||
/obj/structure/closet/crate/proc/notifyRecipient(var/destination)
|
||||
/obj/structure/closet/crate/proc/notifyRecipient(destination)
|
||||
var/msg = "[capitalize(name)] has arrived at [destination]."
|
||||
if(destination in announce_beacons)
|
||||
for(var/obj/machinery/requests_console/D in GLOB.allRequestConsoles)
|
||||
|
||||
@@ -319,7 +319,7 @@
|
||||
A.loc = get_turf(src)
|
||||
*/
|
||||
|
||||
/obj/structure/bush/attackby(var/obj/I as obj, var/mob/user as mob, params)
|
||||
/obj/structure/bush/attackby(obj/I as obj, mob/user as mob, params)
|
||||
//hatchets can clear away undergrowth
|
||||
if(istype(I, /obj/item/hatchet) && !stump)
|
||||
if(indestructable)
|
||||
|
||||
@@ -161,7 +161,7 @@
|
||||
QDEL_NULL(connected)
|
||||
return ..()
|
||||
|
||||
/obj/structure/morgue/container_resist(var/mob/living/L)
|
||||
/obj/structure/morgue/container_resist(mob/living/L)
|
||||
var/mob/living/carbon/CM = L
|
||||
if(!istype(CM))
|
||||
return
|
||||
@@ -391,7 +391,7 @@
|
||||
QDEL_NULL(connected)
|
||||
return ..()
|
||||
|
||||
/obj/structure/crematorium/container_resist(var/mob/living/L)
|
||||
/obj/structure/crematorium/container_resist(mob/living/L)
|
||||
var/mob/living/carbon/CM = L
|
||||
if(!istype(CM))
|
||||
return
|
||||
|
||||
@@ -18,7 +18,7 @@
|
||||
icon_state = "nboard0[notices]"
|
||||
|
||||
//attaching papers!!
|
||||
/obj/structure/noticeboard/attackby(var/obj/item/O as obj, var/mob/user as mob, params)
|
||||
/obj/structure/noticeboard/attackby(obj/item/O as obj, mob/user as mob, params)
|
||||
if(istype(O, /obj/item/paper))
|
||||
if(notices < 5)
|
||||
O.add_fingerprint(user)
|
||||
|
||||
@@ -24,7 +24,7 @@
|
||||
spirit_board_pick_letter(user)
|
||||
|
||||
|
||||
/obj/structure/spirit_board/proc/spirit_board_pick_letter(var/mob/M)
|
||||
/obj/structure/spirit_board/proc/spirit_board_pick_letter(mob/M)
|
||||
if(!spirit_board_checks(M))
|
||||
return 0
|
||||
|
||||
@@ -43,7 +43,7 @@
|
||||
visible_message("<span class='notice'>The planchette slowly moves... and stops at the letter \"[planchette]\".</span>")
|
||||
|
||||
|
||||
/obj/structure/spirit_board/proc/spirit_board_checks(var/mob/M)
|
||||
/obj/structure/spirit_board/proc/spirit_board_checks(mob/M)
|
||||
//cooldown
|
||||
var/bonus = 0
|
||||
if(M.ckey == lastuser)
|
||||
|
||||
@@ -28,7 +28,7 @@
|
||||
return TRUE
|
||||
else return ..()
|
||||
|
||||
/obj/structure/transit_tube_pod/proc/follow_tube(var/reverse_launch)
|
||||
/obj/structure/transit_tube_pod/proc/follow_tube(reverse_launch)
|
||||
if(moving)
|
||||
return
|
||||
|
||||
|
||||
Reference in New Issue
Block a user