This commit is contained in:
errorage
2013-04-13 05:52:19 +02:00
10 changed files with 119 additions and 177 deletions
+7 -30
View File
@@ -56,6 +56,7 @@
/datum/supply_packs/paper
name = "Bureaucracy crate"
contains = list(/obj/structure/filingcabinet/chestdrawer/wheeled,
/obj/item/device/camera_film,
/obj/item/weapon/hand_labeler,
/obj/item/hand_labeler_refill,
/obj/item/hand_labeler_refill,
@@ -68,7 +69,7 @@
/obj/item/weapon/folder/yellow,
/obj/item/weapon/clipboard,
/obj/item/weapon/clipboard)
cost = 25
cost = 15
containertype = /obj/structure/closet/crate
containername = "Bureaucracy crate"
@@ -79,23 +80,6 @@
containertype = /obj/structure/closet/crate/freezer
containername = "monkey crate"
/datum/supply_packs/beanbagammo
name = "Beanbag shells"
contains = list(/obj/item/ammo_casing/shotgun/beanbag,
/obj/item/ammo_casing/shotgun/beanbag,
/obj/item/ammo_casing/shotgun/beanbag,
/obj/item/ammo_casing/shotgun/beanbag,
/obj/item/ammo_casing/shotgun/beanbag,
/obj/item/ammo_casing/shotgun/beanbag,
/obj/item/ammo_casing/shotgun/beanbag,
/obj/item/ammo_casing/shotgun/beanbag,
/obj/item/ammo_casing/shotgun/beanbag,
/obj/item/ammo_casing/shotgun/beanbag)
cost = 10
containertype = /obj/structure/closet/crate
containername = "beanbag shells"
/datum/supply_packs/toner
name = "Toner Cartridges"
contains = list(/obj/item/device/toner,
@@ -546,7 +530,7 @@
/obj/item/weapon/gun/energy/taser,
/obj/item/weapon/gun/energy/taser,
/obj/item/weapon/storage/box/flashbangs,
/obj/item/weapon/storage/box/flashbangs)
/obj/item/weapon/storage/box/teargas)
cost = 30
containertype = /obj/structure/closet/crate/secure/weapon
containername = "weapons crate"
@@ -581,23 +565,16 @@
name = "Riot gear crate"
contains = list(/obj/item/weapon/melee/baton,
/obj/item/weapon/melee/baton,
/obj/item/weapon/melee/baton,
/obj/item/weapon/shield/riot,
/obj/item/weapon/shield/riot,
/obj/item/weapon/shield/riot,
/obj/item/weapon/storage/box/flashbangs,
/obj/item/weapon/storage/box/flashbangs,
/obj/item/weapon/storage/box/flashbangs,
/obj/item/weapon/handcuffs,
/obj/item/weapon/handcuffs,
/obj/item/weapon/handcuffs,
/obj/item/weapon/storage/box/teargas,
/obj/item/weapon/storage/box/handcuffs,
/obj/item/clothing/head/helmet/riot,
/obj/item/clothing/suit/armor/riot,
/obj/item/clothing/head/helmet/riot,
/obj/item/clothing/suit/armor/riot,
/obj/item/clothing/head/helmet/riot,
/obj/item/clothing/suit/armor/riot)
cost = 60
/obj/item/clothing/suit/armor/riot,)
cost = 45
containertype = /obj/structure/closet/crate/secure
containername = "riot gear crate"
access = access_armory
+2
View File
@@ -199,6 +199,7 @@
if(!(cult_mind in cult) && is_convertable_to_cult(cult_mind))
cult += cult_mind
update_cult_icons_added(cult_mind)
cult_mind.current.attack_log += "\[[time_stamp()]\] <font color='red'>Has been converted to the cult!</font>"
return 1
@@ -214,6 +215,7 @@
cult_mind.current << "\red <FONT size = 3><B>An unfamiliar white light flashes through your mind, cleansing the taint of the dark-one and the memories of your time as his servant with it.</B></FONT>"
cult_mind.memory = ""
update_cult_icons_removed(cult_mind)
cult_mind.current.attack_log += "\[[time_stamp()]\] <font color='red'>Has renounced the cult!</font>"
if(show_message)
for(var/mob/M in viewers(cult_mind.current))
M << "<FONT size = 3>[cult_mind.current] looks like they just reverted to their old faith!</FONT>"
@@ -191,6 +191,7 @@
return 0
revolutionaries += rev_mind
rev_mind.current << "\red <FONT size = 3> You are now a revolutionary! Help your cause. Do not harm your fellow freedom fighters. You can identify your comrades by the red \"R\" icons, and your leaders by the blue \"R\" icons. Help them kill the heads to win the revolution!</FONT>"
rev_mind.current.attack_log += "\[[time_stamp()]\] <font color='red'>Has been converted to the revolution!</font>"
rev_mind.special_role = "Revolutionary"
update_rev_icons_added(rev_mind)
return 1
@@ -201,6 +202,7 @@
if(rev_mind in revolutionaries)
revolutionaries -= rev_mind
rev_mind.special_role = null
rev_mind.current.attack_log += "\[[time_stamp()]\] <font color='red'>Has renounced the revolution!</font>"
if(beingborged)
rev_mind.current << "\red <FONT size = 3><B>The frame's firmware detects and deletes your neural reprogramming! You remember nothing from the moment you were flashed until now.</B></FONT>"
@@ -12,6 +12,7 @@
var/datum/objective/survive/survive = new
survive.owner = H.mind
H.mind.objectives += survive
H.attack_log += "\[[time_stamp()]\] <font color='red'>Was made into a survivor, and trusts no one!</font>"
H << "<B>You are the survivor! Your own safety matters above all else, trust no one and kill anyone who gets in your way. However, armed as you are, now would be the perfect time to settle that score or grab that pair of yellow gloves you've been eyeing...</B>"
var/obj_count = 1
for(var/datum/objective/OBJ in H.mind.objectives)
+31 -89
View File
@@ -1,20 +1,20 @@
/obj/machinery/computer/pod
name = "pod launch control"
desc = "A controll for launching pods. Some people prefer firing Mechas."
name = "mass driver launch control"
desc = "A combined blastdoor and mass driver control unit."
icon_state = "computer_generic"
var/id = 1.0
circuit = "/obj/item/weapon/circuitboard/pod"
var/obj/machinery/mass_driver/connected = null
var/timing = 0.0
var/time = 30.0
var/title = "Mass Driver Controls"
var/id = 1
var/timing = 0
var/time = 30
var/range = 4
/obj/machinery/computer/pod/New()
..()
spawn( 5 )
for(var/obj/machinery/mass_driver/M in world)
if(M.id == id)
connected = M
/obj/machinery/computer/pod/initialize()
for(var/obj/machinery/mass_driver/M in range(range, src))
if(M.id == id)
connected = M
/obj/machinery/computer/pod/proc/alarm()
@@ -25,88 +25,31 @@
viewers(null, null) << "Cannot locate mass driver connector. Cancelling firing sequence!"
return
for(var/obj/machinery/door/poddoor/M in world)
for(var/obj/machinery/door/poddoor/M in range(range, src))
if(M.id == id)
M.open()
return
sleep(20)
for(var/obj/machinery/mass_driver/M in world)
sleep(20)
for(var/obj/machinery/mass_driver/M in range(range, src))
if(M.id == id)
M.power = connected.power
M.drive()
sleep(50)
for(var/obj/machinery/door/poddoor/M in world)
for(var/obj/machinery/door/poddoor/M in range(range, src))
if(M.id == id)
M.close()
/obj/machinery/computer/pod/attackby(I as obj, user as mob)
if(istype(I, /obj/item/weapon/screwdriver))
playsound(loc, 'sound/items/Screwdriver.ogg', 50, 1)
if(do_after(user, 20))
if(stat & BROKEN)
user << "\blue The broken glass falls out."
var/obj/structure/computerframe/A = new /obj/structure/computerframe( loc )
new /obj/item/weapon/shard( loc )
//generate appropriate circuitboard. Accounts for /pod/old computer types
var/obj/item/weapon/circuitboard/pod/M = null
if(istype(src, /obj/machinery/computer/pod/old))
M = new /obj/item/weapon/circuitboard/olddoor( A )
if(istype(src, /obj/machinery/computer/pod/old/syndicate))
M = new /obj/item/weapon/circuitboard/syndicatedoor( A )
if(istype(src, /obj/machinery/computer/pod/old/swf))
M = new /obj/item/weapon/circuitboard/swfdoor( A )
else //it's not an old computer. Generate standard pod circuitboard.
M = new /obj/item/weapon/circuitboard/pod( A )
for (var/obj/C in src)
C.loc = loc
M.id = id
A.circuit = M
A.state = 3
A.icon_state = "3"
A.anchored = 1
del(src)
else
user << "\blue You disconnect the monitor."
var/obj/structure/computerframe/A = new /obj/structure/computerframe( loc )
//generate appropriate circuitboard. Accounts for /pod/old computer types
var/obj/item/weapon/circuitboard/pod/M = null
if(istype(src, /obj/machinery/computer/pod/old))
M = new /obj/item/weapon/circuitboard/olddoor( A )
if(istype(src, /obj/machinery/computer/pod/old/syndicate))
M = new /obj/item/weapon/circuitboard/syndicatedoor( A )
if(istype(src, /obj/machinery/computer/pod/old/swf))
M = new /obj/item/weapon/circuitboard/swfdoor( A )
else //it's not an old computer. Generate standard pod circuitboard.
M = new /obj/item/weapon/circuitboard/pod( A )
for (var/obj/C in src)
C.loc = loc
M.id = id
A.circuit = M
A.state = 4
A.icon_state = "4"
A.anchored = 1
del(src)
else
attack_hand(user)
return
/obj/machinery/computer/pod/attack_ai(var/mob/user as mob)
/obj/machinery/computer/pod/attack_ai(mob/user)
return attack_hand(user)
/obj/machinery/computer/pod/attack_paw(var/mob/user as mob)
/obj/machinery/computer/pod/attack_paw(mob/user)
return attack_hand(user)
/obj/machinery/computer/pod/attack_hand(var/mob/user as mob)
/obj/machinery/computer/pod/attack_hand(mob/user)
if(..())
return
@@ -133,13 +76,10 @@
dat += "<BR>\n<A href = '?src=\ref[src];door=1'>Toggle Outer Door</A><BR>"
dat += "<BR><BR><A href='?src=\ref[user];mach_close=computer'>Close</A>"
add_fingerprint(usr)
//user << browse(dat, "window=computer;size=400x500")
//onclose(user, "computer")
var/datum/browser/popup = new(user, "computer", title, 400, 500)
popup.set_content(dat)
popup.set_title_image(user.browse_rsc_icon(src.icon, src.icon_state))
popup.set_title_image(user.browse_rsc_icon(icon, icon_state))
popup.open()
return
/obj/machinery/computer/pod/process()
@@ -153,7 +93,6 @@
time = 0
timing = 0
updateDialog()
return
/obj/machinery/computer/pod/Topic(href, href_list)
@@ -175,37 +114,40 @@
time += tp
time = min(max(round(time), 0), 120)
if(href_list["door"])
for(var/obj/machinery/door/poddoor/M in world)
for(var/obj/machinery/door/poddoor/M in range(range, src))
if(M.id == id)
if(M.density)
M.open()
else
M.close()
if(href_list["drive"])
for(var/obj/machinery/mass_driver/M in range(range, src))
if(M.id == id)
M.power = connected.power
M.drive()
updateUsrDialog()
return
/obj/machinery/computer/pod/old
icon_state = "old"
name = "DoorMex Control Console"
name = "\improper DoorMex Control Console"
title = "Door Controls"
/obj/machinery/computer/pod/old/syndicate
name = "ProComp Executive IIc"
name = "\improper ProComp Executive IIc"
desc = "The Syndicate operate on a tight budget. Operates external airlocks."
title = "External Airlock Controls"
req_access = list(access_syndicate)
/obj/machinery/computer/pod/old/syndicate/attack_hand(var/mob/user as mob)
/obj/machinery/computer/pod/old/syndicate/attack_hand(mob/user)
if(!allowed(user))
user << "\red Access Denied"
user << "<span class='notice'>Access denied.</span>"
return
else
..()
/obj/machinery/computer/pod/old/swf
name = "Magix System IV"
name = "\improper Magix System IV"
desc = "An arcane artifact that holds much magic. Running E-Knock 2.2: Sorceror's Edition"
+28 -31
View File
@@ -1,42 +1,39 @@
//This file was auto-corrected by findeclaration.exe on 25.5.2012 20:42:31
/obj/machinery/mass_driver
name = "mass driver"
desc = "Shoots things into space."
desc = "The finest in spring-loaded piston toy technology, now on a space station near you."
icon = 'icons/obj/stationobjs.dmi'
icon_state = "mass_driver"
anchored = 1.0
anchored = 1
use_power = 1
idle_power_usage = 2
active_power_usage = 50
var/power = 1.0
var/code = 1.0
var/id = 1.0
var/drive_range = 50 //this is mostly irrelevant since current mass drivers throw into space, but you could make a lower-range mass driver for interstation transport or something I guess.
var/power = 1
var/code = 1
var/id = 1
var/drive_range = 50 //this is mostly irrelevant since current mass drivers throw into space, but you could make a lower-range mass driver for interstation transport or something I guess.
proc/drive(amount)
if(stat & (BROKEN|NOPOWER))
return
use_power(500)
var/O_limit
var/atom/target = get_edge_target_turf(src, dir)
for(var/atom/movable/O in loc)
if(!O.anchored||istype(O, /obj/mecha))//Mechs need their launch platforms.
O_limit++
if(O_limit >= 20)
for(var/mob/M in hearers(src, null))
M << "\blue The mass driver lets out a screech, it mustn't be able to handle any more items."
break
use_power(500)
spawn( 0 )
O.throw_at(target, drive_range * power, power)
flick("mass_driver1", src)
/obj/machinery/mass_driver/proc/drive(amount)
if(stat & (BROKEN|NOPOWER))
return
use_power(500)
var/O_limit
var/atom/target = get_edge_target_turf(src, dir)
for(var/atom/movable/O in loc)
if(!O.anchored || istype(O, /obj/mecha)) //Mechs need their launch platforms.
O_limit++
if(O_limit >= 20)
for(var/mob/M in hearers(src, null))
M << "<span class='notice'>[src] lets out a screech, it doesn't seem to be able to handle the load.</span>"
break
use_power(500)
spawn(0)
O.throw_at(target, drive_range * power, power)
flick("mass_driver1", src)
emp_act(severity)
if(stat & (BROKEN|NOPOWER))
return
drive()
..(severity)
/obj/machinery/mass_driver/emp_act(severity)
if(stat & (BROKEN|NOPOWER))
return
drive()
..(severity)
@@ -71,7 +71,6 @@
new /obj/item/weapon/tank/emergency_oxygen/engi( src )
return
/obj/item/weapon/storage/box/gloves
name = "box of latex gloves"
desc = "Contains white gloves."
@@ -101,7 +100,6 @@
new /obj/item/clothing/mask/surgical(src)
new /obj/item/clothing/mask/surgical(src)
/obj/item/weapon/storage/box/syringes
name = "syringes"
desc = "A box full of syringes."
@@ -145,7 +143,6 @@
new /obj/item/weapon/dnainjector/m2h(src)
new /obj/item/weapon/dnainjector/m2h(src)
/obj/item/weapon/storage/box/blanks
name = "box of blank shells"
desc = "It has a picture of a gun and several warning symbols on the front."
@@ -160,8 +157,6 @@
new /obj/item/ammo_casing/shotgun/blank(src)
new /obj/item/ammo_casing/shotgun/blank(src)
/obj/item/weapon/storage/box/flashbangs
name = "box of flashbangs (WARNING)"
desc = "<B>WARNING: These devices are extremely dangerous and can cause blindness or deafness in repeated use.</B>"
@@ -177,6 +172,21 @@
new /obj/item/weapon/grenade/flashbang(src)
new /obj/item/weapon/grenade/flashbang(src)
/obj/item/weapon/storage/box/teargas
name = "box of tear gas grenades (WARNING)"
desc = "<B>WARNING: These devices are extremely dangerous and can cause blindness and skin irritation.</B>"
icon_state = "flashbang"
New()
..()
new /obj/item/weapon/grenade/chem_grenade/teargas(src)
new /obj/item/weapon/grenade/chem_grenade/teargas(src)
new /obj/item/weapon/grenade/chem_grenade/teargas(src)
new /obj/item/weapon/grenade/chem_grenade/teargas(src)
new /obj/item/weapon/grenade/chem_grenade/teargas(src)
new /obj/item/weapon/grenade/chem_grenade/teargas(src)
new /obj/item/weapon/grenade/chem_grenade/teargas(src)
/obj/item/weapon/storage/box/emps
name = "emp grenades"
desc = "A box with 5 emp grenades."
@@ -190,7 +200,6 @@
new /obj/item/weapon/grenade/empgrenade(src)
new /obj/item/weapon/grenade/empgrenade(src)
/obj/item/weapon/storage/box/trackimp
name = "tracking implant kit"
desc = "Box full of scum-bag tracking utensils."
@@ -221,7 +230,6 @@
new /obj/item/weapon/implanter(src)
new /obj/item/weapon/implantpad(src)
/obj/item/weapon/storage/box/rxglasses
name = "prescription glasses"
desc = "This box contains nerd glasses."
@@ -250,7 +258,6 @@
new /obj/item/weapon/reagent_containers/food/drinks/drinkingglass(src)
new /obj/item/weapon/reagent_containers/food/drinks/drinkingglass(src)
/obj/item/weapon/storage/box/condimentbottles
name = "box of condiment bottles"
desc = "It has a large ketchup smear on it."
@@ -264,8 +271,6 @@
new /obj/item/weapon/reagent_containers/food/condiment(src)
new /obj/item/weapon/reagent_containers/food/condiment(src)
/obj/item/weapon/storage/box/cups
name = "box of paper cups"
desc = "It has pictures of paper cups on the front."
@@ -279,7 +284,6 @@
new /obj/item/weapon/reagent_containers/food/drinks/sillycup( src )
new /obj/item/weapon/reagent_containers/food/drinks/sillycup( src )
/obj/item/weapon/storage/box/donkpockets
name = "box of donk-pockets"
desc = "<B>Instructions:</B> <I>Heat in microwave. Product will cool if not eaten within seven minutes.</I>"
@@ -306,7 +310,6 @@
for(var/i = 1; i <= 5; i++)
new /obj/item/weapon/reagent_containers/food/snacks/monkeycube/wrapped(src)
/obj/item/weapon/storage/box/ids
name = "spare IDs"
desc = "Has so many empty IDs."
@@ -337,7 +340,6 @@
new /obj/item/weapon/cartridge/security(src)
new /obj/item/weapon/cartridge/security(src)
/obj/item/weapon/storage/box/handcuffs
name = "spare handcuffs"
desc = "A box full of handcuffs."
@@ -381,7 +383,6 @@
new /obj/item/weapon/storage/pill_bottle( src )
new /obj/item/weapon/storage/pill_bottle( src )
/obj/item/weapon/storage/box/snappops
name = "snap pop box"
desc = "Eight wrappers of fun! Ages 8 and up. Not suitable for children."
@@ -394,7 +395,6 @@
for(var/i=1; i <= storage_slots; i++)
new /obj/item/toy/snappop(src)
/obj/item/weapon/storage/box/matches
name = "matchbox"
desc = "A small box of Almost But Not Quite Plasma Premium Matches."
@@ -419,7 +419,6 @@
W.update_icon()
return
/obj/item/weapon/storage/box/lights
name = "replacement bulbs"
icon = 'icons/obj/storage.dmi'
+13 -10
View File
@@ -1750,7 +1750,7 @@ datum
condensedcapsaicin
name = "Condensed Capsaicin"
id = "condensedcapsaicin"
description = "This shit goes in pepperspray."
description = "A chemical agent used for self-defense and in police work."
reagent_state = LIQUID
color = "#B31008" // rgb: 179, 16, 8
@@ -1782,26 +1782,29 @@ datum
if ( !safe_thing )
safe_thing = victim.glasses
if ( eyes_covered && mouth_covered )
victim << "\red Your [safe_thing] protects you from the pepperspray!"
return
else if ( mouth_covered ) // Reduced effects if partially protected
victim << "\red Your [safe_thing] protect you from most of the pepperspray!"
if(prob(5))
victim.emote("scream")
victim.eye_blurry = max(M.eye_blurry, 3)
victim.eye_blind = max(M.eye_blind, 1)
victim.Paralyse(1)
victim.confused = max(M.confused, 3)
victim.damageoverlaytemp = 60
victim.Weaken(1)
victim.drop_item()
return
else if ( eyes_covered ) // Eye cover is better than mouth cover
victim << "\red Your [safe_thing] protects your eyes from the pepperspray!"
victim.emote("scream")
victim.eye_blurry = max(M.eye_blurry, 1)
victim.eye_blurry = max(M.eye_blurry, 3)
victim.damageoverlaytemp = 30
return
else // Oh dear :D
victim.emote("scream")
victim << "\red You're sprayed directly in the eyes with pepperspray!"
if(prob(5))
victim.emote("scream")
victim.eye_blurry = max(M.eye_blurry, 5)
victim.eye_blind = max(M.eye_blind, 2)
victim.Paralyse(1)
victim.confused = max(M.confused, 6)
victim.damageoverlaytemp = 75
victim.Weaken(3)
victim.drop_item()
frostoil
@@ -449,6 +449,13 @@ datum
new /obj/item/stack/sheet/mineral/plasma(location)
return
capsaicincondensation
name = "Capsaicincondensation"
id = "capsaicincondensation"
result = "condensedcapsaicin"
required_reagents = list("capsaicin" = 1, "ethanol" = 5)
result_amount = 5
virus_food
name = "Virus Food"
id = "virusfood"
+13 -1
View File
@@ -49,7 +49,19 @@ should be listed in the changelog upon commit tho. Thanks. -->
<!-- You can simply add changelogs using AddToChangelog.exe -->
<!-- DO NOT REMOVE OR MOVE THIS COMMENT! THIS MUST BE THE LAST NON-EMPTY LINE BEFORE THE LOGS #ADDTOCHANGELOGMARKER# -->
<!-- DO NOT REMOVE OR MOVE THIS COMMENT! THIS MUST BE THE LAST NON-EMPTY LINE BEFORE THE LOGS #ADDTOCHANGELOGMARKER# -->
<div class='commit sansserif'>
<h2 class='date'>4 September 2013</h2>
<h3 class='author'>Cheridan updated:</h3>
<ul class='changes bgimages16'>
<li class='rscadd'>You can now condense capsaicin into pepper spray with chemistry.</li>
<li class='tweak'>Pepper spray made slightly more effective.</li>
<li class='tweak'>Teargas grenades can be obtained in Weapons and Riot crates.</li>
<li class='tweak'>Riot crate comes with 2 sets of gear instead of 3, made cheaper. Beanbag crate removed entirely. Just make more at the autolathe instead. Bureaucracy crate cheaper, now has film roll. </li>
</ul>
</div>
<div class="commit sansserif">
<h2 class="date">6 April 2013</h2>