Conflicts:
	maps/cyberiad.dmm
This commit is contained in:
SamCroswell
2014-11-06 16:38:55 -05:00
61 changed files with 8194 additions and 2305 deletions
+41 -1
View File
@@ -18,4 +18,44 @@
m_amt = 50
g_amt = 20
origin_tech = "magnets=1;engineering=1"
var/obj/machinery/telecomms/buffer // simple machine buffer for device linkage
var/obj/machinery/telecomms/buffer // simple machine buffer for device linkage
// Syndicate device disguised as a multitool; it will turn red when an AI camera is nearby.
/obj/item/device/multitool/ai_detect
var/track_delay = 0
/obj/item/device/multitool/ai_detect/New()
..()
processing_objects += src
/obj/item/device/multitool/ai_detect/Del()
processing_objects -= src
..()
/obj/item/device/multitool/ai_detect/process()
if(track_delay > world.time)
return
var/found_eye = 0
for(var/mob/aiEye/A in living_mob_list)
var/turf/our_turf = get_turf(src)
var/turf/eye_turf = get_turf(A)
if(get_dist(our_turf, eye_turf) < 9)
found_eye = 1
break
if(found_eye)
icon_state = "[initial(icon_state)]_red"
else
icon_state = initial(icon_state)
track_delay = world.time + 10 // 1 second
return
+1 -1
View File
@@ -277,4 +277,4 @@ var/list/world_uplinks = list()
/obj/item/device/radio/headset/uplink/New()
..()
hidden_uplink = new(src)
hidden_uplink.uses = 10
hidden_uplink.uses = 20
+6 -10
View File
@@ -55,6 +55,8 @@
/obj/item/weapon/plastique/attack_self(mob/user as mob)
var/newtime = input(usr, "Please set the timer.", "Timer", 10) as num
if(newtime < 10)
newtime = 10
if(newtime > 60000)
newtime = 60000
timer = newtime
@@ -64,16 +66,9 @@
/obj/item/weapon/plastique/afterattack(atom/target as obj|turf, mob/user as mob, flag)
if (!flag)
return
if (istype(target, /turf/unsimulated) || istype(target, /turf/simulated/shuttle) || istype(target, /obj/item/weapon/storage/) || istype(target, /obj/machinery/door/airlock/hatch/gamma))
if (ismob(target) || istype(target, /turf/unsimulated) || istype(target, /turf/simulated/shuttle) || istype(target, /obj/item/weapon/storage/) || istype(target, /obj/machinery/door/airlock/hatch/gamma))
return
user << "Planting explosives..."
if(ismob(target))
user.attack_log += "\[[time_stamp()]\] <font color='red'> [user.real_name] tried planting [name] on [target:real_name] ([target:ckey])</font>"
if(target:ckey)
msg_admin_attack("[user.real_name] ([user.ckey]) tried planting [name] on [target:real_name] ([target:ckey]) (<A HREF='?_src_=holder;adminplayerobservecoodjump=1;X=[user.x];Y=[user.y];Z=[user.z]'>JMP</a>)")
user.visible_message("\red [user.name] is trying to plant some kind of explosive on [target.name]!")
if(do_after(user, 50) && in_range(user, target))
user.drop_item()
@@ -102,11 +97,12 @@
if(!target)
target = src
if(location)
explosion(location, 0, 1, 3, 6)
explosion(location, -1, -1, 4, 4)
if(target)
if (istype(target, /turf/simulated/wall))
target:dismantle_wall(1)
var/turf/simulated/wall/W = target
W.dismantle_wall(1)
else
target.ex_act(1)
if (isobj(target))
@@ -6,7 +6,7 @@
/obj/item/weapon/implant/uplink/New()
activation_emote = pick("blink", "blink_r", "eyebrow", "chuckle", "twitch_s", "frown", "nod", "blush", "giggle", "grin", "groan", "shrug", "smile", "pale", "sniff", "whimper", "wink")
hidden_uplink = new(src)
hidden_uplink.uses = 5
hidden_uplink.uses = 10
..()
return
@@ -180,4 +180,29 @@
name = "captain's satchel"
desc = "An exclusive satchel for Nanotrasen officers."
icon_state = "satchel-cap"
item_state = "captainpack"
item_state = "captainpack"
/obj/item/weapon/storage/backpack/satchel_flat
name = "smuggler's satchel"
desc = "A very slim satchel that can easily fit into tight spaces."
icon_state = "satchel-flat"
w_class = 3 //Can fit in backpacks itself.
storage_slots = 5
max_combined_w_class = 15
level = 1
cant_hold = list(/obj/item/weapon/storage/backpack/satchel_flat) //muh recursive backpacks
/obj/item/weapon/storage/backpack/satchel_flat/hide(var/intact)
if(intact)
invisibility = 101
anchored = 1 //otherwise you can start pulling, cover it, and drag around an invisible backpack.
icon_state = "[initial(icon_state)]2"
else
invisibility = initial(invisibility)
anchored = 0
icon_state = initial(icon_state)
/obj/item/weapon/storage/backpack/satchel_flat/New()
..()
new /obj/item/stack/tile/plasteel(src)
new /obj/item/weapon/crowbar(src)
@@ -158,3 +158,9 @@
can_hold = list(
"/obj/item/clothing/mask/luchador"
)
/obj/item/weapon/storage/belt/military
name = "military belt"
desc = "A syndicate belt designed to be used by boarding parties. Its style is modeled after the hardsuits they wear."
icon_state = "militarybelt"
item_state = "military"
@@ -110,6 +110,25 @@
new /obj/item/stack/medical/advanced/ointment(src)
new /obj/item/stack/medical/splint(src)
return
/obj/item/weapon/storage/firstaid/tactical
name = "first-aid kit"
icon_state = "bezerk"
desc = "I hope you've got insurance."
max_w_class = 3
/obj/item/weapon/storage/firstaid/tactical/New()
..()
if (empty) return
new /obj/item/clothing/tie/stethoscope( src )
new /obj/item/weapon/surgicaldrill(src)
new /obj/item/weapon/reagent_containers/hypospray/combat(src)
new /obj/item/weapon/reagent_containers/pill/bicaridine(src)
new /obj/item/weapon/reagent_containers/pill/dermaline(src)
new /obj/item/weapon/reagent_containers/ld50_syringe(src)
new /obj/item/clothing/glasses/hud/health/night(src)
return
/*
* Pill Bottles
*/
@@ -109,12 +109,14 @@
return
/obj/item/weapon/storage/box/syndie_kit/space
name = "Space Suit and Helmet"
name = "Boxed Space Suit and Helmet"
can_hold = list(/obj/item/clothing/suit/space/syndicate/black/red, /obj/item/clothing/head/helmet/space/syndicate/black/red)
max_w_class = 3
/obj/item/weapon/storage/box/syndie_kit/space/New()
..()
new /obj/item/clothing/suit/space/syndicate(src)
new /obj/item/clothing/head/helmet/space/syndicate(src)
new /obj/item/clothing/suit/space/syndicate/black/red(src)
new /obj/item/clothing/head/helmet/space/syndicate/black/red(src)
return
/obj/item/weapon/storage/box/syndie_kit/surveillance
@@ -42,7 +42,7 @@
/obj/structure/closet/proc/can_close()
for(var/obj/structure/closet/closet in get_turf(src))
if(closet != src)
if(closet != src && closet.anchored != 1)
return 0
return 1
@@ -129,9 +129,7 @@
return 1
/obj/structure/closet/proc/toggle(mob/user as mob)
var/orig = src.opened
. = src.opened ? src.close() : src.open()
if(. == orig)
if(!(src.opened ? src.close() : src.open()))
user << "<span class='notice'>It won't budge!</span>"
return
@@ -274,6 +272,9 @@
return
else if(istype(W, /obj/item/weapon/weldingtool))
var/obj/item/weapon/weldingtool/WT = W
if(src == user.loc)
user << "<span class='notice'>You can not [welded?"unweld":"weld"] the locker from inside.</span>"
return
if(!WT.remove_fuel(0,user))
user << "<span class='notice'>You need more welding fuel to complete this task.</span>"
return
@@ -1,5 +1,5 @@
/obj/structure/closet/secure_closet/personal
desc = "It's a secure locker for personell. The first card swiped gains control."
desc = "It's a secure locker for personnel. The first card swiped gains control."
name = "personal closet"
req_access = list(access_all_personal_lockers)
var/registered_name = null
@@ -68,7 +68,9 @@
return
var/obj/item/weapon/card/id/I = W
if(!I || !I.registered_name) return
if(src.allowed(user) || !src.registered_name || (istype(I) && (src.registered_name == I.registered_name)))
if(src == user.loc)
user << "<span class='notice'>You can't reach the lock from inside.</span>"
else if(src.allowed(user) || !src.registered_name || (istype(I) && (src.registered_name == I.registered_name)))
//they can open all lockers, or nobody owns this, or they own this locker
src.locked = !( src.locked )
if(src.locked) src.icon_state = src.icon_locked
@@ -10,44 +10,50 @@
desc = "It's a storage unit for operative gear."
/obj/structure/closet/syndicate/personal/New()
..()
sleep(2)
new /obj/item/clothing/under/syndicate(src)
new /obj/item/clothing/suit/armor/vest(src)
new /obj/item/clothing/head/helmet/swat(src)
new /obj/item/ammo_box/magazine/m10mm(src)
new /obj/item/weapon/storage/belt/military(src)
new /obj/item/weapon/crowbar/red(src)
new /obj/item/clothing/glasses/night(src)
/obj/structure/closet/syndicate/suits
desc = "It's a storage unit for operative space gear. Not fancy..."
/obj/structure/closet/syndicate/suits/New()
..()
sleep(2)
new /obj/item/weapon/tank/jetpack/oxygen(src)
new /obj/item/clothing/mask/gas/syndicate(src)
new /obj/item/clothing/under/syndicate(src)
new /obj/item/clothing/head/helmet/space/rig/syndi(src)
new /obj/item/clothing/suit/space/rig/syndi(src)
new /obj/item/weapon/crowbar/red(src)
new /obj/item/weapon/cell/high(src)
new /obj/item/weapon/card/id/syndicate(src)
new /obj/item/device/multitool(src)
new /obj/item/clothing/shoes/magboots(src)
/obj/structure/closet/syndicate/nuclear
desc = "It's a storage unit for nuclear-operative gear."
desc = "It's a storage unit for a Syndicate boarding party.."
/obj/structure/closet/syndicate/nuclear/New()
..()
sleep(2)
new /obj/item/ammo_box/magazine/m12mm(src)
new /obj/item/ammo_box/magazine/m12mm(src)
new /obj/item/weapon/storage/box/handcuffs(src)
new /obj/item/ammo_box/magazine/m10mm(src)
new /obj/item/ammo_box/magazine/m10mm(src)
new /obj/item/ammo_box/magazine/m10mm(src)
new /obj/item/ammo_box/magazine/m10mm(src)
new /obj/item/ammo_box/magazine/m10mm(src)
new /obj/item/weapon/storage/box/teargas(src)
new /obj/item/weapon/storage/box/flashbangs(src)
new /obj/item/weapon/gun/energy/gun(src)
new /obj/item/weapon/gun/energy/gun(src)
new /obj/item/weapon/gun/energy/gun(src)
new /obj/item/weapon/gun/energy/gun(src)
new /obj/item/weapon/gun/energy/gun(src)
new /obj/item/weapon/gun/projectile/automatic/bulldog(src)
new /obj/item/weapon/gun/projectile/automatic/bulldog(src)
new /obj/item/weapon/gun/projectile/automatic/bulldog(src)
new /obj/item/weapon/gun/projectile/automatic/bulldog(src)
new /obj/item/weapon/gun/projectile/automatic/bulldog(src)
new /obj/item/weapon/pinpointer/nukeop(src)
new /obj/item/weapon/pinpointer/nukeop(src)
new /obj/item/weapon/pinpointer/nukeop(src)
new /obj/item/weapon/pinpointer/nukeop(src)
new /obj/item/weapon/pinpointer/nukeop(src)
new /obj/item/device/pda/syndicate(src)
var/obj/item/device/radio/uplink/U = new(src)
U.hidden_uplink.uses = 55
return
/obj/structure/closet/syndicate/resources/