merge fixes

This commit is contained in:
alex-gh
2013-11-27 08:05:09 +01:00
75 changed files with 12117 additions and 11785 deletions
+3
View File
@@ -1234,6 +1234,9 @@ proc/process_ghost_teleport_locs()
/area/security/armoury
name = "\improper Armory"
icon_state = "Warden"
/area/security/armoury/gamma
name = "\improper Gamma Armory"
icon_state = "Warden"
/area/security/hos
name = "\improper Head of Security's Office"
@@ -532,6 +532,7 @@ As such, it's hard-coded for now. No reason for it not to be, really.
del(head)
del(shoes)
del(gloves)
del(back)
var/obj/item/device/radio/R = new /obj/item/device/radio/headset(src)
equip_to_slot_or_del(R, slot_l_ear)
@@ -544,6 +545,7 @@ As such, it's hard-coded for now. No reason for it not to be, really.
equip_to_slot_or_del(new /obj/item/clothing/gloves/space_ninja(src), slot_gloves)
equip_to_slot_or_del(new /obj/item/clothing/head/helmet/space/space_ninja(src), slot_head)
equip_to_slot_or_del(new /obj/item/clothing/mask/gas/voice/space_ninja(src), slot_wear_mask)
equip_to_slot_or_del(new /obj/item/weapon/tank/jetpack/oxygenblack(src), slot_back)
equip_to_slot_or_del(new /obj/item/device/flashlight(src), slot_belt)
equip_to_slot_or_del(new /obj/item/weapon/plastique(src), slot_r_store)
equip_to_slot_or_del(new /obj/item/weapon/plastique(src), slot_l_store)
@@ -191,6 +191,9 @@
if(z_co == 2 || z_co < 1 || z_co > 6)
usr << "\red Error: Z is less than 1, greater than 6, or equal to 2."
fail = 1
if(istype(get_area(locate(x_co,y_co,z_co)), /area/security/armoury/gamma))
usr << "\red Error: Attempting to access telescience-protected area."
fail = 1
return fail
/obj/machinery/computer/telescience/Topic(href, href_list)
+61
View File
@@ -121,6 +121,11 @@
opacity = 1
assembly_type = /obj/structure/door_assembly/door_assembly_hatch
/obj/machinery/door/airlock/hatch/gamma
name = "Gamma Level Hatch"
hackProof = 1
aiControlDisabled = 1
/obj/machinery/door/airlock/maintenance_hatch
name = "Maintenance Hatch"
icon = 'icons/obj/doors/Doorhatchmaint2.dmi'
@@ -288,6 +293,11 @@
icon = 'icons/obj/doors/hightechsecurity.dmi'
assembly_type = /obj/structure/door_assembly/door_assembly_highsecurity
/obj/machinery/door/airlock/highsecurity/red
name = "Secure Armory Airlock"
hackProof = 1
aiControlDisabled = 1
/*
About the new airlock wires panel:
* An airlock wire dialog can be accessed by the normal way or by using wirecutters or a multitool on the door while the wire-panel is open. This would show the following wires, which you can either wirecut/mend or send a multitool pulse through. There are 9 wires.
@@ -1062,3 +1072,54 @@ About the new airlock wires panel:
src.open()
src.locked = 1
return
/obj/machinery/door/airlock/hatch/gamma/attackby(C as obj, mob/user as mob)
//world << text("airlock attackby src [] obj [] mob []", src, C, user)
if(!istype(usr, /mob/living/silicon))
if(src.isElectrified())
if(src.shock(user, 75))
return
if(istype(C, /obj/item/device/detective_scanner) || istype(C, /obj/item/taperoll))
return
src.add_fingerprint(user)
if((istype(C, /obj/item/weapon/weldingtool) && !( src.operating > 0 ) && src.density))
var/obj/item/weapon/weldingtool/W = C
if(W.remove_fuel(0,user))
if(frozen)
frozen = 0
if(!src.welded)
src.welded = 1
else
src.welded = null
src.update_icon()
return
else
return
/obj/machinery/door/airlock/highsecurity/red/attackby(C as obj, mob/user as mob)
//world << text("airlock attackby src [] obj [] mob []", src, C, user)
if(!istype(usr, /mob/living/silicon))
if(src.isElectrified())
if(src.shock(user, 75))
return
if(istype(C, /obj/item/device/detective_scanner) || istype(C, /obj/item/taperoll))
return
src.add_fingerprint(user)
if((istype(C, /obj/item/weapon/weldingtool) && !( src.operating > 0 ) && src.density))
var/obj/item/weapon/weldingtool/W = C
if(W.remove_fuel(0,user))
if(frozen)
frozen = 0
if(!src.welded)
src.welded = 1
else
src.welded = null
src.update_icon()
return
else
return
+57 -11
View File
@@ -2,6 +2,7 @@
var/product_name = "generic"
var/product_path = null
var/amount = 0
var/max_amount = 0
var/price = 0
var/display_color = "blue"
@@ -52,7 +53,7 @@
var/const/WIRE_SHOOTINV = 4
var/datum/wires/vending/wires = null
var/scan_id = 1
var/obj/item/weapon/vending_refill/refill_canister = null //The type of refill canisters used by this machine.
/obj/machinery/vending/New()
@@ -118,6 +119,7 @@
R.product_name = temp.name
R.product_path = typepath
R.amount = amount
R.max_amount = amount
R.price = price
R.display_color = pick("red","blue","green")
@@ -130,6 +132,36 @@
// world << "Added: [R.product_name]] - [R.amount] - [R.product_path]"
return
/obj/machinery/vending/proc/refill_inventory(obj/item/weapon/vending_refill/refill, datum/data/vending_product/machine, mob/user)
var/total = 0
var/to_restock = 0
for(var/datum/data/vending_product/machine_content in machine)
to_restock += machine_content.max_amount - machine_content.amount
if(to_restock <= refill.charges)
for(var/datum/data/vending_product/machine_content in machine)
if(machine_content.amount != machine_content.max_amount)
usr << "<span class='notice'>[machine_content.max_amount - machine_content.amount] of [machine_content.product_name]</span>"
machine_content.amount = machine_content.max_amount
refill.charges -= to_restock
total = to_restock
else
var/tmp_charges = refill.charges
for(var/datum/data/vending_product/machine_content in machine)
var/restock = Ceiling(((machine_content.max_amount - machine_content.amount)/to_restock)*tmp_charges)
if(restock > refill.charges)
restock = refill.charges
machine_content.amount += restock
refill.charges -= restock
total += restock
if(restock)
usr << "<span class='notice'>[restock] of [machine_content.product_name]</span>"
if(refill.charges == 0) //due to rounding, we ran out of refill charges, exit.
break
return total
/obj/machinery/vending/attackby(obj/item/weapon/W as obj, mob/user as mob)
if (istype(W, /obj/item/weapon/card/emag))
src.emagged = 1
@@ -163,9 +195,23 @@
else if(istype(W, /obj/item/weapon/card) && currently_vending)
var/obj/item/weapon/card/I = W
scan_card(I)
else if(istype(W, refill_canister) && refill_canister != null)
if(stat & (BROKEN|NOPOWER))
user << "<span class='notice'>It does nothing.</span>"
else if(panel_open)
//if the panel is open we attempt to refill the machine
var/obj/item/weapon/vending_refill/canister = W
if(canister.charges == 0)
user << "<span class='notice'>This [canister.name] is empty!</span>"
else
var/transfered = refill_inventory(canister,product_records,user)
if(transfered)
user << "<span class='notice'>You loaded [transfered] items in \the [name].</span>"
else
user << "<span class='notice'>The [name] is fully stocked.</span>"
return;
else
user << "<span class='notice'>You should probably unscrew the service panel first.</span>"
else
..()
@@ -542,7 +588,7 @@
vend_delay = 15
product_slogans = "I hope nobody asks me for a bloody cup o' tea...;Alcohol is humanity's friend. Would you abandon a friend?;Quite delighted to serve you!;Is nobody thirsty on this station?"
product_ads = "Drink up!;Booze is good for you!;Alcohol is humanity's best friend.;Quite delighted to serve you!;Care for a nice, cold beer?;Nothing cures you like booze!;Have a sip!;Have a drink!;Have a beer!;Beer is good for you!;Only the finest alcohol!;Best quality booze since 2053!;Award-winning wine!;Maximum alcohol!;Man loves beer.;A toast for progress!"
refill_canister = /obj/item/weapon/vending_refill/boozeomat
/obj/machinery/vending/assist
products = list( /obj/item/device/assembly/prox_sensor = 5,/obj/item/device/assembly/igniter = 3,/obj/item/device/assembly/signaler = 4,
/obj/item/weapon/wirecutters = 1, /obj/item/weapon/cartridge/signal = 4)
@@ -559,7 +605,7 @@
products = list(/obj/item/weapon/reagent_containers/food/drinks/coffee = 25,/obj/item/weapon/reagent_containers/food/drinks/tea = 25,/obj/item/weapon/reagent_containers/food/drinks/h_chocolate = 25)
contraband = list(/obj/item/weapon/reagent_containers/food/drinks/ice = 10)
prices = list(/obj/item/weapon/reagent_containers/food/drinks/coffee = 25, /obj/item/weapon/reagent_containers/food/drinks/tea = 25, /obj/item/weapon/reagent_containers/food/drinks/h_chocolate = 25)
refill_canister = /obj/item/weapon/vending_refill/coffee
@@ -576,7 +622,7 @@
prices = list(/obj/item/weapon/reagent_containers/food/snacks/candy = 20,/obj/item/weapon/reagent_containers/food/drinks/dry_ramen = 30,/obj/item/weapon/reagent_containers/food/snacks/chips =25,
/obj/item/weapon/reagent_containers/food/snacks/sosjerky = 30,/obj/item/weapon/reagent_containers/food/snacks/no_raisin = 20,/obj/item/weapon/reagent_containers/food/snacks/spacetwinkie = 30,
/obj/item/weapon/reagent_containers/food/snacks/cheesiehonkers = 25)
refill_canister = /obj/item/weapon/vending_refill/snack
/obj/machinery/vending/chinese
name = "Mr. Chang"
desc = "A self-serving chinese food machine, for all your chinese food needs."
@@ -600,7 +646,7 @@
prices = list(/obj/item/weapon/reagent_containers/food/drinks/soda_cans/cola = 20,/obj/item/weapon/reagent_containers/food/drinks/soda_cans/space_mountain_wind = 20,
/obj/item/weapon/reagent_containers/food/drinks/soda_cans/dr_gibb = 20,/obj/item/weapon/reagent_containers/food/drinks/soda_cans/starkist = 20,
/obj/item/weapon/reagent_containers/food/drinks/soda_cans/space_up = 20)
refill_canister = /obj/item/weapon/vending_refill/cola
//This one's from bay12
/obj/machinery/vending/cart
name = "PTech"
@@ -624,7 +670,7 @@
contraband = list(/obj/item/weapon/lighter/zippo = 4)
premium = list(/obj/item/clothing/mask/cigarette/cigar/havana = 2)
prices = list(/obj/item/weapon/storage/fancy/cigarettes = 60,/obj/item/weapon/storage/box/matches = 10,/obj/item/weapon/lighter/random = 60)
refill_canister = /obj/item/weapon/vending_refill/cigarette
/obj/machinery/vending/medical
name = "NanoMed Plus"
@@ -749,7 +795,7 @@
/obj/item/clothing/head/rabbitears =1) //Pretty much everything that had a chance to spawn.
contraband = list(/obj/item/clothing/suit/cardborg = 1,/obj/item/clothing/head/cardborg = 1,/obj/item/clothing/suit/judgerobe = 1,/obj/item/clothing/head/powdered_wig = 1)
premium = list(/obj/item/clothing/suit/hgpirate = 1, /obj/item/clothing/head/hgpiratecap = 1, /obj/item/clothing/head/helmet/roman = 1, /obj/item/clothing/head/helmet/roman/legionaire = 1, /obj/item/clothing/under/roman = 1, /obj/item/clothing/shoes/roman = 1, /obj/item/weapon/shield/riot/roman = 1)
refill_canister = /obj/item/weapon/vending_refill/autodrobe
/obj/machinery/vending/dinnerware
name = "Dinnerware"
desc = "A kitchen and restaurant equipment vendor"
@@ -820,7 +866,7 @@
/obj/machinery/vending/eva
name = "Hardsuit Kits"
desc = "Conversion kits for your alien hardsuit needs."
products = list(/obj/item/weapon/modkit/tajaran = 6)
products = list(/obj/item/weapon/modkit/tajaran = 6, /obj/item/weapon/modkit/unathi = 6)
/obj/machinery/vending/sustenance
+1 -1
View File
@@ -590,7 +590,7 @@
</head>
<body>
<iframe width='100%' height='97%' src="http://192.241.230.212/wiki/index.php/Space_law&printable=yes&remove_links=1" frameborder="0" id="main_frame"></iframe> </body>
<iframe width='100%' height='97%' src="http://192.241.230.212/wiki/index.php?title=Space_Law&printable=yes" frameborder="0" id="main_frame"></iframe> </body>
</html>
@@ -96,6 +96,18 @@
air_contents.adjust((6*ONE_ATMOSPHERE)*volume/(R_IDEAL_GAS_EQUATION*T20C))
return
/obj/item/weapon/tank/jetpack/oxygenblack
name = "Jetpack (Oxygen)"
desc = "A black tank of compressed oxygen for use as propulsion in zero-gravity areas. Use with caution."
icon_state = "jetpack-black"
item_state = "jetpack-black"
New()
..()
//src.air_contents.oxygen = (6*ONE_ATMOSPHERE)*volume/(R_IDEAL_GAS_EQUATION*T20C)
air_contents.adjust((6*ONE_ATMOSPHERE)*volume/(R_IDEAL_GAS_EQUATION*T20C))
return
/obj/item/weapon/tank/jetpack/carbondioxide
name = "Jetpack (Carbon Dioxide)"
desc = "A tank of compressed carbon dioxide for use as propulsion in zero-gravity areas. Painted black to indicate that it should not be used as a source for internals."
@@ -0,0 +1,58 @@
/obj/item/weapon/vending_refill
name = "Resupply canister"
var/machine_name = "Generic"
icon = 'icons/obj/vending_restock.dmi'
icon_state = "refill_snack"
item_state = "restock_unit"
flags = FPRINT | TABLEPASS| CONDUCT
force = 7.0
throwforce = 15.0
throw_speed = 1
throw_range = 7
w_class = 4.0
var/charges = 0 //how many restocking "charges" the refill has
/obj/item/weapon/vending_refill/New()
..()
name = "\improper [machine_name] restocking unit"
/obj/item/weapon/vending_refill/examine()
set src in usr
..()
if(charges)
usr << "It can restock [charges] item(s)."
else
usr << "It's empty!"
//NOTE I decided to go for about 1/3 of a machine's capacity
/obj/item/weapon/vending_refill/boozeomat
machine_name = "Booze-O-Mat"
icon_state = "refill_booze"
charges = 50//of 138
/obj/item/weapon/vending_refill/coffee
machine_name = "hot drinks"
icon_state = "refill_joe"
charges = 30//of 85
/obj/item/weapon/vending_refill/snack
machine_name = "Getmore Chocolate Corp"
charges = 15//of 48
/obj/item/weapon/vending_refill/cola
machine_name = "Robust Softdrinks"
icon_state = "refill_cola"
charges = 20//of 65
/obj/item/weapon/vending_refill/cigarette
machine_name = "cigarette"
icon_state = "refill_smoke"
charges = 10// of 30
/obj/item/weapon/vending_refill/autodrobe
machine_name = "AutoDrobe"
icon_state = "refill_costume"
charges = 28// of 58
+13 -1
View File
@@ -6,6 +6,8 @@
var/health = 100
var/destroyed = 0
var/inertia_dir = 0
var/allowMove = 1
var/delay = 1
var/datum/effect/effect/system/spark_spread/spark_system = new /datum/effect/effect/system/spark_spread
/obj/structure/stool/bed/chair/cart/Move()
@@ -321,10 +323,15 @@
if((istype(src.loc, /turf/space)))
if(!src.Process_Spacemove(0)) return
if(istype(user.l_hand, /obj/item/key) || istype(user.r_hand, /obj/item/key))
if(!allowMove)
return
allowMove = 0
step(src, direction)
update_mob()
handle_rotation()
/*
sleep(delay)
allowMove = 1
/*
if(istype(src.loc, /turf/space) && (!src.Process_Spacemove(0, user)))
var/turf/space/S = src.loc
S.Entered(src)*/
@@ -353,6 +360,9 @@
if((istype(src.loc, /turf/space)))
if(!src.Process_Spacemove(0)) return
if(istype(user.l_hand, /obj/item/key) || istype(user.r_hand, /obj/item/key))
if(!allowMove)
return
allowMove = 0
step(src, direction)
// NEW PULLING CODE
if (istype(user.pulling, /obj/structure/stool/bed/roller))
@@ -362,6 +372,8 @@
// END NEW PULLING CODE
update_mob()
handle_rotation()
sleep(delay)
allowMove = 1
/*
if(istype(src.loc, /turf/space) && (!src.Process_Spacemove(0, user)))
var/turf/space/S = src.loc
+5 -1
View File
@@ -113,6 +113,10 @@ proc/increment_ert_chance()
ert_base_chance += 2
if(get_security_level() == "red")
ert_base_chance += 3
if(get_security_level() == "gamma")
ert_base_chance += 7
if(get_security_level() == "epsilon")
ert_base_chance += 9
if(get_security_level() == "delta")
ert_base_chance += 10 // Need those big guns
sleep(600 * 3) // Minute * Number of Minutes
@@ -321,7 +325,7 @@ proc/trigger_armed_response_team(var/force = 0)
W.name = "[real_name]'s ID Card ([W.assignment])"
W.icon_state = "centcom"
W.access = get_all_accesses()
W.access += get_all_centcom_access()
W.access += list(access_cent_general, access_cent_living, access_cent_storage)
equip_to_slot_or_del(W, slot_wear_id)
return 1