mirror of
https://github.com/CHOMPstation/CHOMPstation.git
synced 2026-08-24 12:36:22 +01:00
Merge pull request #1050 from Hubblenaut/cash
Adds Cash Registers, Retail Scanners and Prices
This commit is contained in:
@@ -255,31 +255,16 @@
|
||||
usr << "\icon[cashmoney] <span class='warning'>That is not enough money.</span>"
|
||||
return 0
|
||||
|
||||
if(istype(cashmoney, /obj/item/weapon/spacecash/bundle))
|
||||
// Bundles can just have money subtracted, and will work
|
||||
if(istype(cashmoney, /obj/item/weapon/spacecash))
|
||||
|
||||
visible_message("<span class='info'>\The [usr] inserts some cash into \the [src].</span>")
|
||||
var/obj/item/weapon/spacecash/bundle/cashmoney_bundle = cashmoney
|
||||
cashmoney_bundle.worth -= currently_vending.price
|
||||
cashmoney.worth -= currently_vending.price
|
||||
|
||||
if(cashmoney_bundle.worth <= 0)
|
||||
usr.drop_from_inventory(cashmoney_bundle)
|
||||
qdel(cashmoney_bundle)
|
||||
if(cashmoney.worth <= 0)
|
||||
usr.drop_from_inventory(cashmoney)
|
||||
qdel(cashmoney)
|
||||
else
|
||||
cashmoney_bundle.update_icon()
|
||||
else
|
||||
// Bills (banknotes) cannot really have worth different than face value,
|
||||
// so we have to eat the bill and spit out change in a bundle
|
||||
// This is really dirty, but there's no superclass for all bills, so we
|
||||
// just assume that all spacecash that's not something else is a bill
|
||||
|
||||
visible_message("<span class='info'>\The [usr] inserts a bill into \the [src].</span>")
|
||||
var/left = cashmoney.worth - currently_vending.price
|
||||
usr.drop_from_inventory(cashmoney)
|
||||
qdel(cashmoney)
|
||||
|
||||
if(left)
|
||||
spawn_money(left, src.loc, user)
|
||||
cashmoney.update_icon()
|
||||
|
||||
// Vending machines have no idea who paid with cash
|
||||
credit_purchase("(cash)")
|
||||
|
||||
@@ -245,15 +245,15 @@
|
||||
|
||||
/obj/item/weapon/storage/secure/briefcase/money/New()
|
||||
..()
|
||||
new /obj/item/weapon/spacecash/bundle/c1000(src)
|
||||
new /obj/item/weapon/spacecash/bundle/c1000(src)
|
||||
new /obj/item/weapon/spacecash/bundle/c1000(src)
|
||||
new /obj/item/weapon/spacecash/bundle/c1000(src)
|
||||
new /obj/item/weapon/spacecash/bundle/c1000(src)
|
||||
new /obj/item/weapon/spacecash/bundle/c1000(src)
|
||||
new /obj/item/weapon/spacecash/bundle/c1000(src)
|
||||
new /obj/item/weapon/spacecash/bundle/c1000(src)
|
||||
new /obj/item/weapon/spacecash/bundle/c1000(src)
|
||||
new /obj/item/weapon/spacecash/bundle/c1000(src)
|
||||
new /obj/item/weapon/spacecash/c1000(src)
|
||||
new /obj/item/weapon/spacecash/c1000(src)
|
||||
new /obj/item/weapon/spacecash/c1000(src)
|
||||
new /obj/item/weapon/spacecash/c1000(src)
|
||||
new /obj/item/weapon/spacecash/c1000(src)
|
||||
new /obj/item/weapon/spacecash/c1000(src)
|
||||
new /obj/item/weapon/spacecash/c1000(src)
|
||||
new /obj/item/weapon/spacecash/c1000(src)
|
||||
new /obj/item/weapon/spacecash/c1000(src)
|
||||
new /obj/item/weapon/spacecash/c1000(src)
|
||||
|
||||
|
||||
|
||||
@@ -75,10 +75,10 @@
|
||||
|
||||
/obj/item/weapon/storage/wallet/random/New()
|
||||
..()
|
||||
var/item1_type = pick( /obj/item/weapon/spacecash/bundle/c10,/obj/item/weapon/spacecash/bundle/c100,/obj/item/weapon/spacecash/bundle/c1000,/obj/item/weapon/spacecash/bundle/c20,/obj/item/weapon/spacecash/bundle/c200,/obj/item/weapon/spacecash/bundle/c50, /obj/item/weapon/spacecash/bundle/c500)
|
||||
var/item1_type = pick( /obj/item/weapon/spacecash/c10,/obj/item/weapon/spacecash/c100,/obj/item/weapon/spacecash/c1000,/obj/item/weapon/spacecash/c20,/obj/item/weapon/spacecash/c200,/obj/item/weapon/spacecash/c50, /obj/item/weapon/spacecash/c500)
|
||||
var/item2_type
|
||||
if(prob(50))
|
||||
item2_type = pick( /obj/item/weapon/spacecash/bundle/c10,/obj/item/weapon/spacecash/bundle/c100,/obj/item/weapon/spacecash/bundle/c1000,/obj/item/weapon/spacecash/bundle/c20,/obj/item/weapon/spacecash/bundle/c200,/obj/item/weapon/spacecash/bundle/c50, /obj/item/weapon/spacecash/bundle/c500)
|
||||
item2_type = pick( /obj/item/weapon/spacecash/c10,/obj/item/weapon/spacecash/c100,/obj/item/weapon/spacecash/c1000,/obj/item/weapon/spacecash/c20,/obj/item/weapon/spacecash/c200,/obj/item/weapon/spacecash/c50, /obj/item/weapon/spacecash/c500)
|
||||
var/item3_type = pick( /obj/item/weapon/coin/silver, /obj/item/weapon/coin/silver, /obj/item/weapon/coin/gold, /obj/item/weapon/coin/iron, /obj/item/weapon/coin/iron, /obj/item/weapon/coin/iron )
|
||||
|
||||
spawn(2)
|
||||
|
||||
@@ -85,9 +85,9 @@
|
||||
New()
|
||||
..()
|
||||
for(var/i = 0, i < 3, i++)
|
||||
new /obj/item/weapon/spacecash/bundle/c1000(src)
|
||||
new /obj/item/weapon/spacecash/c1000(src)
|
||||
for(var/i = 0, i < 5, i++)
|
||||
new /obj/item/weapon/spacecash/bundle/c500(src)
|
||||
new /obj/item/weapon/spacecash/c500(src)
|
||||
for(var/i = 0, i < 6, i++)
|
||||
new /obj/item/weapon/spacecash/bundle/c200(src)
|
||||
new /obj/item/weapon/spacecash/c200(src)
|
||||
return
|
||||
|
||||
@@ -607,7 +607,7 @@
|
||||
for(var/obj/item/briefcase_item in sec_briefcase)
|
||||
qdel(briefcase_item)
|
||||
for(var/i=3, i>0, i--)
|
||||
sec_briefcase.contents += new /obj/item/weapon/spacecash/bundle/c1000
|
||||
sec_briefcase.contents += new /obj/item/weapon/spacecash/c1000
|
||||
sec_briefcase.contents += new /obj/item/weapon/gun/energy/crossbow
|
||||
sec_briefcase.contents += new /obj/item/weapon/gun/projectile/revolver/mateba
|
||||
sec_briefcase.contents += new /obj/item/ammo_magazine/a357
|
||||
|
||||
@@ -20,33 +20,24 @@
|
||||
if(istype(W, /obj/item/weapon/spacecash))
|
||||
if(istype(W, /obj/item/weapon/spacecash/ewallet)) return 0
|
||||
|
||||
var/obj/item/weapon/spacecash/bundle/bundle
|
||||
if(!istype(W, /obj/item/weapon/spacecash/bundle))
|
||||
var/obj/item/weapon/spacecash/cash = W
|
||||
user.drop_from_inventory(cash)
|
||||
bundle = new (src.loc)
|
||||
bundle.worth += cash.worth
|
||||
qdel(cash)
|
||||
else //is bundle
|
||||
bundle = W
|
||||
bundle.worth += src.worth
|
||||
bundle.update_icon()
|
||||
var/obj/item/weapon/spacecash/SC = W
|
||||
SC.worth += src.worth
|
||||
SC.update_icon()
|
||||
if(istype(user, /mob/living/carbon/human))
|
||||
var/mob/living/carbon/human/h_user = user
|
||||
h_user.drop_from_inventory(src)
|
||||
h_user.drop_from_inventory(bundle)
|
||||
h_user.put_in_hands(bundle)
|
||||
user << "<span class='notice'>You add [src.worth] Thalers worth of money to the bundles.<br>It holds [bundle.worth] Thalers now.</span>"
|
||||
h_user.drop_from_inventory(SC)
|
||||
h_user.put_in_hands(SC)
|
||||
user << "<span class='notice'>You combine the Thalers to a bundle of [SC.worth] Thalers.</span>"
|
||||
qdel(src)
|
||||
|
||||
/obj/item/weapon/spacecash/bundle
|
||||
name = "pile of thalers"
|
||||
icon_state = ""
|
||||
desc = "They are worth 0 Thalers."
|
||||
worth = 0
|
||||
|
||||
/obj/item/weapon/spacecash/bundle/update_icon()
|
||||
/obj/item/weapon/spacecash/update_icon()
|
||||
overlays.Cut()
|
||||
name = "[worth] Thaler\s"
|
||||
if(worth in list(1000,500,200,100,50,20,10,1))
|
||||
icon_state = "spacecash[worth]"
|
||||
desc = "It's worth [worth] Thalers."
|
||||
return
|
||||
var/sum = src.worth
|
||||
var/num = 0
|
||||
for(var/i in list(1000,500,200,100,50,20,10,1))
|
||||
@@ -68,7 +59,7 @@
|
||||
src.overlays += banknote
|
||||
src.desc = "They are worth [worth] Thalers."
|
||||
|
||||
/obj/item/weapon/spacecash/bundle/attack_self()
|
||||
/obj/item/weapon/spacecash/attack_self()
|
||||
var/amount = input(usr, "How many Thalers do you want to take? (0 to [src.worth])", "Take Money", 20) as num
|
||||
amount = round(Clamp(amount, 0, src.worth))
|
||||
if(amount==0) return 0
|
||||
@@ -78,77 +69,71 @@
|
||||
if(!worth)
|
||||
usr.drop_from_inventory(src)
|
||||
if(amount in list(1000,500,200,100,50,20,1))
|
||||
var/cashtype = text2path("/obj/item/weapon/spacecash/bundle/c[amount]")
|
||||
var/cashtype = text2path("/obj/item/weapon/spacecash/c[amount]")
|
||||
var/obj/cash = new cashtype (usr.loc)
|
||||
usr.put_in_hands(cash)
|
||||
else
|
||||
var/obj/item/weapon/spacecash/bundle/bundle = new (usr.loc)
|
||||
bundle.worth = amount
|
||||
bundle.update_icon()
|
||||
usr.put_in_hands(bundle)
|
||||
var/obj/item/weapon/spacecash/SC = new (usr.loc)
|
||||
SC.worth = amount
|
||||
SC.update_icon()
|
||||
usr.put_in_hands(SC)
|
||||
if(!worth)
|
||||
qdel(src)
|
||||
|
||||
/obj/item/weapon/spacecash/bundle/c1
|
||||
/obj/item/weapon/spacecash/c1
|
||||
name = "1 Thaler"
|
||||
icon_state = "spacecash1"
|
||||
desc = "It's worth 1 credit."
|
||||
worth = 1
|
||||
|
||||
/obj/item/weapon/spacecash/bundle/c10
|
||||
/obj/item/weapon/spacecash/c10
|
||||
name = "10 Thaler"
|
||||
icon_state = "spacecash10"
|
||||
desc = "It's worth 10 Thalers."
|
||||
worth = 10
|
||||
|
||||
/obj/item/weapon/spacecash/bundle/c20
|
||||
/obj/item/weapon/spacecash/c20
|
||||
name = "20 Thaler"
|
||||
icon_state = "spacecash20"
|
||||
desc = "It's worth 20 Thalers."
|
||||
worth = 20
|
||||
|
||||
/obj/item/weapon/spacecash/bundle/c50
|
||||
/obj/item/weapon/spacecash/c50
|
||||
name = "50 Thaler"
|
||||
icon_state = "spacecash50"
|
||||
desc = "It's worth 50 Thalers."
|
||||
worth = 50
|
||||
|
||||
/obj/item/weapon/spacecash/bundle/c100
|
||||
/obj/item/weapon/spacecash/c100
|
||||
name = "100 Thaler"
|
||||
icon_state = "spacecash100"
|
||||
desc = "It's worth 100 Thalers."
|
||||
worth = 100
|
||||
|
||||
/obj/item/weapon/spacecash/bundle/c200
|
||||
/obj/item/weapon/spacecash/c200
|
||||
name = "200 Thaler"
|
||||
icon_state = "spacecash200"
|
||||
desc = "It's worth 200 Thalers."
|
||||
worth = 200
|
||||
|
||||
/obj/item/weapon/spacecash/bundle/c500
|
||||
/obj/item/weapon/spacecash/c500
|
||||
name = "500 Thaler"
|
||||
icon_state = "spacecash500"
|
||||
desc = "It's worth 500 Thalers."
|
||||
worth = 500
|
||||
|
||||
/obj/item/weapon/spacecash/bundle/c1000
|
||||
/obj/item/weapon/spacecash/c1000
|
||||
name = "1000 Thaler"
|
||||
icon_state = "spacecash1000"
|
||||
desc = "It's worth 1000 Thalers."
|
||||
worth = 1000
|
||||
|
||||
proc/spawn_money(var/sum, spawnloc, mob/living/carbon/human/human_user as mob)
|
||||
if(sum in list(1000,500,200,100,50,20,10,1))
|
||||
var/cash_type = text2path("/obj/item/weapon/spacecash/bundle/c[sum]")
|
||||
var/obj/cash = new cash_type (usr.loc)
|
||||
if(ishuman(human_user) && !human_user.get_active_hand())
|
||||
human_user.put_in_hands(cash)
|
||||
else
|
||||
var/obj/item/weapon/spacecash/bundle/bundle = new (spawnloc)
|
||||
bundle.worth = sum
|
||||
bundle.update_icon()
|
||||
if (ishuman(human_user) && !human_user.get_active_hand())
|
||||
human_user.put_in_hands(bundle)
|
||||
var/obj/item/weapon/spacecash/SC = new (spawnloc)
|
||||
SC.worth = sum
|
||||
SC.update_icon()
|
||||
if (ishuman(human_user) && !human_user.get_active_hand())
|
||||
human_user.put_in_hands(SC)
|
||||
return
|
||||
|
||||
/obj/item/weapon/spacecash/ewallet
|
||||
@@ -156,6 +141,9 @@ proc/spawn_money(var/sum, spawnloc, mob/living/carbon/human/human_user as mob)
|
||||
icon_state = "efundcard"
|
||||
desc = "A card that holds an amount of money."
|
||||
var/owner_name = "" //So the ATM can set it so the EFTPOS can put a valid name on transactions.
|
||||
attack_self() return //Don't act
|
||||
attackby() return //like actual
|
||||
update_icon() return //space cash
|
||||
|
||||
/obj/item/weapon/spacecash/ewallet/examine(mob/user)
|
||||
..(user)
|
||||
|
||||
@@ -0,0 +1,474 @@
|
||||
/obj/machinery/cash_register
|
||||
name = "cash register"
|
||||
desc = "Swipe your ID card to make purchases electronically."
|
||||
icon = 'icons/obj/stationobjs.dmi'
|
||||
icon_state = "register_idle"
|
||||
flags = NOBLUDGEON
|
||||
req_access = list(access_heads)
|
||||
anchored = 1
|
||||
|
||||
var/locked = 1
|
||||
var/cash_locked = 1
|
||||
var/cash_open = 0
|
||||
var/machine_id = ""
|
||||
var/transaction_amount = 0 // cumulatd amount of money to pay in a single purchase
|
||||
var/transaction_purpose = null // text that gets used in ATM transaction logs
|
||||
var/list/transaction_logs = list() // list of strings using html code to visualise data
|
||||
var/list/item_list = list() // entities and according
|
||||
var/list/price_list = list() // prices for each purchase
|
||||
var/manipulating = 0
|
||||
|
||||
var/cash_stored = 0
|
||||
var/obj/item/confirm_item
|
||||
var/datum/money_account/linked_account
|
||||
|
||||
|
||||
// Claim machine ID
|
||||
/obj/machinery/cash_register/New()
|
||||
machine_id = "[station_name()] RETAIL #[num_financial_terminals++]"
|
||||
cash_stored = rand(10, 70)*10
|
||||
|
||||
|
||||
/obj/machinery/cash_register/examine(mob/user as mob)
|
||||
..(user)
|
||||
if(cash_open)
|
||||
if(cash_stored)
|
||||
user << "It holds [cash_stored] Thaler\s of money."
|
||||
else
|
||||
user << "It's completely empty."
|
||||
|
||||
|
||||
/obj/machinery/cash_register/attack_hand(mob/user as mob)
|
||||
if(cash_open)
|
||||
if(cash_stored)
|
||||
spawn_money(cash_stored, loc, user)
|
||||
cash_stored = 0
|
||||
overlays -= "register_cash"
|
||||
else
|
||||
open_cash_box()
|
||||
// Reset if necessary
|
||||
else if(transaction_amount)
|
||||
reset_memory()
|
||||
user << "<span class='notice'>You reset the machine's memory.</span>"
|
||||
else
|
||||
custom_interface(user)
|
||||
|
||||
|
||||
/obj/machinery/cash_register/AltClick(mob/user)
|
||||
if(Adjacent(user))
|
||||
open_cash_box()
|
||||
|
||||
|
||||
/obj/machinery/cash_register/proc/custom_interface(mob/user as mob)
|
||||
var/dat = "<h2>Retail Scanner<hr></h2>"
|
||||
if (locked)
|
||||
dat += "<a href='?src=\ref[src];choice=toggle_lock'>Unlock</a><br>"
|
||||
dat += "Linked account: <b>[linked_account ? linked_account.owner_name : "None"]</b><br>"
|
||||
dat += "<b>[cash_locked? "Unlock" : "Lock"] Cash Box</b> | "
|
||||
else
|
||||
dat += "<a href='?src=\ref[src];choice=toggle_lock'>Lock</a><br>"
|
||||
dat += "Linked account: <a href='?src=\ref[src];choice=link_account'>[linked_account ? linked_account.owner_name : "None"]</a><br>"
|
||||
dat += "<a href='?src=\ref[src];choice=toggle_cash_lock'>[cash_locked? "Unlock" : "Lock"] Cash Box</a> | "
|
||||
dat += "<a href='?src=\ref[src];choice=custom_order'>Custom Order</a><hr>"
|
||||
for(var/i=1, i<=transaction_logs.len, i++)
|
||||
dat += "[transaction_logs[i]]<br>"
|
||||
|
||||
if(transaction_logs.len)
|
||||
dat += locked ? "<br>" : "<a href='?src=\ref[src];choice=reset_log'>Reset Log</a><br>"
|
||||
dat += "<br>"
|
||||
dat += "<i>Device ID:</i> [machine_id]"
|
||||
user << browse(dat, "window=retail;size=350x500")
|
||||
|
||||
|
||||
/obj/machinery/cash_register/Topic(var/href, var/href_list)
|
||||
if(href_list["choice"])
|
||||
switch(href_list["choice"])
|
||||
if("toggle_lock")
|
||||
if(allowed(usr))
|
||||
locked = !locked
|
||||
else
|
||||
usr << "\icon[src]<span class='warning'>Insufficient access.</span>"
|
||||
if("toggle_cash_lock")
|
||||
cash_locked = !cash_locked
|
||||
if("link_account")
|
||||
var/attempt_account_num = input("Enter account number", "New account number") as num
|
||||
var/attempt_pin = input("Enter PIN", "Account PIN") as num
|
||||
linked_account = attempt_account_access(attempt_account_num, attempt_pin, 1)
|
||||
if(linked_account)
|
||||
if(linked_account.suspended)
|
||||
linked_account = null
|
||||
src.visible_message("\icon[src]<span class='warning'>Account has been suspended.</span>")
|
||||
else
|
||||
usr << "\icon[src]<span class='warning'>Account not found.</span>"
|
||||
if("custom_order")
|
||||
var/t_purpose = sanitize(input("Enter purpose", "New purpose") as text)
|
||||
if (!t_purpose || !Adjacent(usr)) return
|
||||
transaction_purpose = t_purpose
|
||||
item_list += t_purpose
|
||||
var/t_amount = input("Enter price", "New price") as num
|
||||
if (!t_amount || !Adjacent(usr)) return
|
||||
transaction_amount += t_amount
|
||||
price_list += t_amount
|
||||
playsound(src, 'sound/machines/twobeep.ogg', 25)
|
||||
src.visible_message("\icon[src][transaction_purpose]: [transaction_amount] Thaler\s.")
|
||||
if("reset_log")
|
||||
transaction_logs.Cut()
|
||||
usr << "\icon[src]<span class='notice'>Transaction log reset.</span>"
|
||||
custom_interface(usr)
|
||||
|
||||
|
||||
|
||||
/obj/machinery/cash_register/attackby(obj/O as obj, user as mob)
|
||||
// Check for a method of paying (ID, PDA, e-wallet, cash, ect.)
|
||||
var/obj/item/weapon/card/id/I = O.GetID()
|
||||
if(I)
|
||||
scan_card(I, O)
|
||||
else if (istype(O, /obj/item/weapon/spacecash/ewallet))
|
||||
var/obj/item/weapon/spacecash/ewallet/E = O
|
||||
scan_wallet(E)
|
||||
else if (istype(O, /obj/item/weapon/spacecash))
|
||||
var/obj/item/weapon/spacecash/SC = O
|
||||
if(cash_open)
|
||||
user << "You neatly sort the cash into the box."
|
||||
cash_stored += SC.worth
|
||||
overlays |= "register_cash"
|
||||
if(ishuman(user))
|
||||
var/mob/living/carbon/human/H = user
|
||||
H.drop_from_inventory(SC)
|
||||
qdel(SC)
|
||||
else
|
||||
scan_cash(SC)
|
||||
else if(istype(O, /obj/item/weapon/card/emag))
|
||||
return ..()
|
||||
else if(istype(O, /obj/item/weapon/wrench))
|
||||
var/obj/item/weapon/wrench/W = O
|
||||
toggle_anchors(W, user)
|
||||
// Not paying: Look up price and add it to transaction_amount
|
||||
else
|
||||
scan_item_price(O)
|
||||
|
||||
|
||||
/obj/machinery/cash_register/MouseDrop_T(atom/dropping, mob/user)
|
||||
if(Adjacent(dropping) && Adjacent(user) && !user.stat)
|
||||
attackby(dropping, user)
|
||||
|
||||
|
||||
/obj/machinery/cash_register/proc/confirm(obj/item/I)
|
||||
if(confirm_item == I)
|
||||
return 1
|
||||
else
|
||||
confirm_item = I
|
||||
src.visible_message("\icon[src]<b>Total price:</b> [transaction_amount] Thaler\s. Swipe again to confirm.")
|
||||
playsound(src, 'sound/machines/twobeep.ogg', 25)
|
||||
return 0
|
||||
|
||||
|
||||
/obj/machinery/cash_register/proc/scan_card(obj/item/weapon/card/id/I, obj/item/ID_container)
|
||||
if (!transaction_amount)
|
||||
return
|
||||
|
||||
if(!confirm(I))
|
||||
return
|
||||
|
||||
if (!linked_account)
|
||||
usr.visible_message("\icon[src]<span class='warning'>Unable to connect to linked account.</span>")
|
||||
return
|
||||
|
||||
if (cash_open)
|
||||
playsound(src, 'sound/machines/buzz-sigh.ogg', 25)
|
||||
usr << "\icon[src]<span class='warning'>The cash box is open.</span>"
|
||||
return
|
||||
|
||||
// Access account for transaction
|
||||
if(check_account())
|
||||
var/datum/money_account/D = get_account(I.associated_account_number)
|
||||
var/attempt_pin = ""
|
||||
if(D && D.security_level)
|
||||
attempt_pin = input("Enter PIN", "Transaction") as num
|
||||
D = null
|
||||
D = attempt_account_access(I.associated_account_number, attempt_pin, 2)
|
||||
|
||||
if(!D)
|
||||
src.visible_message("\icon[src]<span class='warning'>Unable to access account. Check security settings and try again.</span>")
|
||||
else
|
||||
if(D.suspended)
|
||||
src.visible_message("\icon[src]<span class='warning'>Your account has been suspended.</span>")
|
||||
else
|
||||
if(transaction_amount > D.money)
|
||||
src.visible_message("\icon[src]<span class='warning'>Not enough funds.</span>")
|
||||
else
|
||||
// Transfer the money
|
||||
D.money -= transaction_amount
|
||||
linked_account.money += transaction_amount
|
||||
|
||||
// Create log entry in client's account
|
||||
var/datum/transaction/T = new()
|
||||
T.target_name = "[linked_account.owner_name]"
|
||||
T.purpose = transaction_purpose
|
||||
T.amount = "([transaction_amount])"
|
||||
T.source_terminal = machine_id
|
||||
T.date = current_date_string
|
||||
T.time = worldtime2text()
|
||||
D.transaction_log.Add(T)
|
||||
|
||||
// Create log entry in owner's account
|
||||
T = new()
|
||||
T.target_name = D.owner_name
|
||||
T.purpose = transaction_purpose
|
||||
T.amount = "[transaction_amount]"
|
||||
T.source_terminal = machine_id
|
||||
T.date = current_date_string
|
||||
T.time = worldtime2text()
|
||||
linked_account.transaction_log.Add(T)
|
||||
|
||||
// Save log
|
||||
add_transaction_log(I.registered_name ? I.registered_name : "n/A", "ID Card", transaction_amount)
|
||||
|
||||
// Confirm and reset
|
||||
transaction_complete()
|
||||
|
||||
|
||||
/obj/machinery/cash_register/proc/scan_wallet(obj/item/weapon/spacecash/ewallet/E)
|
||||
if (!transaction_amount)
|
||||
return
|
||||
|
||||
if(!confirm(E))
|
||||
return
|
||||
|
||||
if (cash_open)
|
||||
playsound(src, 'sound/machines/buzz-sigh.ogg', 25)
|
||||
usr << "\icon[src]<span class='warning'>The cash box is open.</span>"
|
||||
return
|
||||
|
||||
// Access account for transaction
|
||||
if(check_account())
|
||||
if(transaction_amount > E.worth)
|
||||
src.visible_message("\icon[src]<span class='warning'>Not enough funds.</span>")
|
||||
else
|
||||
// Transfer the money
|
||||
E.worth -= transaction_amount
|
||||
linked_account.money += transaction_amount
|
||||
|
||||
// Create log entry in owner's account
|
||||
var/datum/transaction/T = new()
|
||||
T.target_name = E.owner_name
|
||||
T.purpose = transaction_purpose
|
||||
T.amount = "[transaction_amount]"
|
||||
T.source_terminal = machine_id
|
||||
T.date = current_date_string
|
||||
T.time = worldtime2text()
|
||||
linked_account.transaction_log.Add(T)
|
||||
|
||||
// Save log
|
||||
add_transaction_log(E.owner_name, "E-Wallet", transaction_amount)
|
||||
|
||||
// Confirm and reset
|
||||
transaction_complete()
|
||||
|
||||
|
||||
/obj/machinery/cash_register/proc/scan_cash(obj/item/weapon/spacecash/SC)
|
||||
if (!transaction_amount)
|
||||
return
|
||||
|
||||
if(!confirm(SC))
|
||||
return
|
||||
|
||||
if (cash_open)
|
||||
playsound(src, 'sound/machines/buzz-sigh.ogg', 25)
|
||||
usr << "\icon[src]<span class='warning'>The cash box is open.</span>"
|
||||
return
|
||||
|
||||
// Access account for transaction
|
||||
if(check_account())
|
||||
if(transaction_amount > SC.worth)
|
||||
src.visible_message("\icon[src]<span class='warning'>Not enough money.</span>")
|
||||
else
|
||||
// Insert cash into magical slot
|
||||
SC.worth -= transaction_amount
|
||||
SC.update_icon()
|
||||
if(!SC.worth)
|
||||
if(ishuman(SC.loc))
|
||||
var/mob/living/carbon/human/H = SC.loc
|
||||
H.drop_from_inventory(SC)
|
||||
qdel(SC)
|
||||
cash_stored += transaction_amount
|
||||
|
||||
// Save log
|
||||
add_transaction_log("n/A", "Cash", transaction_amount)
|
||||
|
||||
// Confirm and reset
|
||||
transaction_complete()
|
||||
|
||||
|
||||
/obj/machinery/cash_register/proc/scan_item_price(obj/O)
|
||||
if(!istype(O)) return
|
||||
if (cash_open)
|
||||
playsound(src, 'sound/machines/buzz-sigh.ogg', 25)
|
||||
usr << "\icon[src]<span class='warning'>The cash box is open.</span>"
|
||||
return
|
||||
|
||||
// First check if item has a valid price
|
||||
var/price = O.get_item_cost()
|
||||
if(isnull(price))
|
||||
src.visible_message("\icon[src]<span class='warning'>Unable to find item in database.</span>")
|
||||
return
|
||||
// Call out item cost
|
||||
src.visible_message("\icon[src]\A [O]: [price ? "[price] Thaler\s" : "free of charge"].")
|
||||
// Note the transaction purpose for later use
|
||||
if(transaction_purpose)
|
||||
transaction_purpose += "<br>"
|
||||
transaction_purpose += "[O]: [price] Thaler\s"
|
||||
transaction_amount += price
|
||||
item_list += "[O]"
|
||||
price_list += "[price] þ"
|
||||
// Animation and sound
|
||||
playsound(src, 'sound/machines/twobeep.ogg', 25)
|
||||
// Reset confirmation
|
||||
confirm_item = null
|
||||
|
||||
|
||||
/obj/machinery/cash_register/proc/add_transaction_log(var/c_name, var/p_method, var/t_amount)
|
||||
var/dat = {"
|
||||
<head><style>
|
||||
.tx-table {border: 1px solid black;}
|
||||
.tx-title {text-align: center; background-color:#ddddff; font-weight: bold}
|
||||
.tx-name {background-color: #bbbbee}
|
||||
.tx-data {text-align: right; background-color: #ccccff;}
|
||||
</head></style>
|
||||
<table width=300>
|
||||
<tr><td colspan="2" class="tx-title">Transaction #[transaction_logs.len+1]</td></tr>
|
||||
<tr></tr>
|
||||
<tr><td class="tx-name">Customer</td><td class="tx-data">[c_name]</td></tr>
|
||||
<tr><td class="tx-name">Pay Method</td><td class="tx-data">[p_method]</td></tr>
|
||||
<tr><td class="tx-name">Station Time</td><td class="tx-data">[worldtime2text()]</td></tr>
|
||||
</table>
|
||||
<table width=300>
|
||||
"}
|
||||
for(var/i=1, i<=item_list.len, i++)
|
||||
dat += "<tr><td class=\"tx-name\">[item_list[i]]</td><td class=\"tx-data\" width=50>[price_list[i]]</td></tr>"
|
||||
dat += "<tr></tr><tr><td colspan=\"2\" class=\"tx-name\" style='text-align: right'><b>Total Amount: [transaction_amount] þ</b></td></tr>"
|
||||
dat += "</table>"
|
||||
|
||||
transaction_logs += dat
|
||||
|
||||
|
||||
/obj/machinery/cash_register/proc/check_account()
|
||||
if (!linked_account)
|
||||
usr.visible_message("\icon[src]<span class='warning'>Unable to connect to linked account.</span>")
|
||||
return 0
|
||||
|
||||
if(linked_account.suspended)
|
||||
src.visible_message("\icon[src]<span class='warning'>Connected account has been suspended.</span>")
|
||||
return 0
|
||||
return 1
|
||||
|
||||
|
||||
/obj/machinery/cash_register/proc/transaction_complete()
|
||||
/// Visible confirmation
|
||||
playsound(src, 'sound/machines/chime.ogg', 25)
|
||||
src.visible_message("\icon[src]<span class='notice'>Transaction complete.</span>")
|
||||
flick("register_approve", src)
|
||||
reset_memory()
|
||||
|
||||
/obj/machinery/cash_register/proc/reset_memory()
|
||||
transaction_amount = null
|
||||
transaction_purpose = ""
|
||||
item_list.Cut()
|
||||
price_list.Cut()
|
||||
confirm_item = null
|
||||
|
||||
|
||||
/obj/machinery/cash_register/verb/open_cash_box()
|
||||
set category = "Object"
|
||||
set name = "Open Cash Box"
|
||||
set desc = "Open/closes the register's cash box."
|
||||
set src in view(1)
|
||||
|
||||
if(usr.stat) return
|
||||
|
||||
if(cash_locked)
|
||||
usr << "<span class='warning'>The cash box is locked.</span>"
|
||||
else if(cash_open)
|
||||
cash_open = 0
|
||||
overlays -= "register_approve"
|
||||
overlays -= "register_open"
|
||||
overlays -= "register_cash"
|
||||
else
|
||||
cash_open = 1
|
||||
overlays += "register_approve"
|
||||
overlays += "register_open"
|
||||
if(cash_stored)
|
||||
overlays += "register_cash"
|
||||
|
||||
|
||||
/obj/machinery/cash_register/proc/toggle_anchors(obj/item/weapon/wrench/W, mob/user)
|
||||
if(manipulating) return
|
||||
manipulating = 1
|
||||
if(!anchored)
|
||||
user.visible_message("\The [user] begins securing \the [src] to the floor.",
|
||||
"You begin securing \the [src] to the floor.")
|
||||
else
|
||||
user.visible_message("<span class='warning'>\The [user] begins unsecuring \the [src] from the floor.</span>",
|
||||
"You begin unsecuring \the [src] from the floor.")
|
||||
playsound(src.loc, 'sound/items/Ratchet.ogg', 50, 1)
|
||||
if(!do_after(user, 20))
|
||||
manipulating = 0
|
||||
return
|
||||
if(!anchored)
|
||||
user.visible_message("<span class='notice'>\The [user] has secured \the [src] to the floor.</span>",
|
||||
"<span class='notice'>You have secured \the [src] to the floor.</span>")
|
||||
else
|
||||
user.visible_message("<span class='warning'>\The [user] has unsecured \the [src] from the floor.</span>",
|
||||
"<span class='notice'>You have unsecured \the [src] from the floor.</span>")
|
||||
anchored = !anchored
|
||||
manipulating = 0
|
||||
return
|
||||
|
||||
|
||||
|
||||
/obj/machinery/cash_register/emag_act(var/remaining_charges, var/mob/user)
|
||||
if(!emagged)
|
||||
src.visible_message("<span class='danger'>The [src]'s cash box springs open as [user] swipes the card through the scanner!</span>")
|
||||
playsound(src, "sparks", 50, 1)
|
||||
req_access = list()
|
||||
emagged = 1
|
||||
locked = 0
|
||||
cash_locked = 0
|
||||
open_cash_box()
|
||||
|
||||
//--Premades--//
|
||||
|
||||
/obj/machinery/cash_register/command
|
||||
New()
|
||||
linked_account = department_accounts["Command"]
|
||||
..()
|
||||
/obj/machinery/cash_register/medical
|
||||
|
||||
New()
|
||||
linked_account = department_accounts["Medical"]
|
||||
..()
|
||||
|
||||
/obj/machinery/cash_register/engineering
|
||||
New()
|
||||
linked_account = department_accounts["Engineering"]
|
||||
..()
|
||||
|
||||
/obj/machinery/cash_register/science
|
||||
New()
|
||||
linked_account = department_accounts["Science"]
|
||||
..()
|
||||
|
||||
/obj/machinery/cash_register/security
|
||||
New()
|
||||
linked_account = department_accounts["Security"]
|
||||
..()
|
||||
|
||||
/obj/machinery/cash_register/cargo
|
||||
New()
|
||||
linked_account = department_accounts["Cargo"]
|
||||
..()
|
||||
|
||||
/obj/machinery/cash_register/civilian
|
||||
New()
|
||||
linked_account = department_accounts["Civilian"]
|
||||
..()
|
||||
@@ -0,0 +1,811 @@
|
||||
// For convenience and easier comparing and maintaining of item prices,
|
||||
// all these will be defined here and sorted in different sections.
|
||||
|
||||
// The item price in thalers. atom/movable so we can also assign a price to animals and other things.
|
||||
/atom/movable/var/price_tag = null
|
||||
|
||||
// The proc that is called when the price is being asked for. Use this to refer to another object if necessary.
|
||||
/atom/movable/proc/get_item_cost()
|
||||
return price_tag
|
||||
|
||||
|
||||
//***************//
|
||||
//---Beverages---//
|
||||
//***************//
|
||||
|
||||
/datum/reagent/var/price_tag = null
|
||||
|
||||
|
||||
// Juices, soda and similar //
|
||||
|
||||
/datum/reagent/drink/juice
|
||||
price_tag = 2
|
||||
|
||||
/datum/reagent/toxin/poisonberryjuice
|
||||
price_tag = 2
|
||||
|
||||
/datum/reagent/drink/milk
|
||||
price_tag = 2
|
||||
|
||||
/datum/reagent/drink/soda
|
||||
price_tag = 2
|
||||
|
||||
/datum/reagent/drink/doctor_delight
|
||||
price_tag = 2
|
||||
|
||||
/datum/reagent/drink/nothing
|
||||
price_tag = 2
|
||||
|
||||
/datum/reagent/drink/milkshake
|
||||
price_tag = 2
|
||||
|
||||
|
||||
// Beer //
|
||||
|
||||
/datum/reagent/drink/ethanol/ale
|
||||
price_tag = 2
|
||||
|
||||
/datum/reagent/drink/ethanol/beer
|
||||
price_tag = 2
|
||||
|
||||
|
||||
|
||||
// Hot Drinks //
|
||||
|
||||
/datum/reagent/drink/rewriter
|
||||
price_tag = 3
|
||||
|
||||
/datum/reagent/drink/tea
|
||||
price_tag = 3
|
||||
|
||||
/datum/reagent/drink/coffee
|
||||
price_tag = 3
|
||||
|
||||
/datum/reagent/drink/hot_coco
|
||||
price_tag = 3
|
||||
|
||||
|
||||
// Spirituous liquors //
|
||||
|
||||
/datum/reagent/drink/ethanol/irish_cream
|
||||
price_tag = 5
|
||||
|
||||
/datum/reagent/drink/ethanol/absinthe
|
||||
price_tag = 5
|
||||
|
||||
/datum/reagent/drink/ethanol/bluecuracao
|
||||
price_tag = 5
|
||||
|
||||
/datum/reagent/drink/ethanol/deadrum
|
||||
price_tag = 5
|
||||
|
||||
/datum/reagent/drink/ethanol/gin
|
||||
price_tag = 5
|
||||
|
||||
/datum/reagent/drink/ethanol/coffee/kahlua
|
||||
price_tag = 5
|
||||
|
||||
/datum/reagent/drink/ethanol/melonliquor
|
||||
price_tag = 5
|
||||
|
||||
/datum/reagent/drink/ethanol/rum
|
||||
price_tag = 5
|
||||
|
||||
/datum/reagent/drink/ethanol/tequilla
|
||||
price_tag = 5
|
||||
|
||||
/datum/reagent/drink/ethanol/thirteenloko
|
||||
price_tag = 5
|
||||
|
||||
/datum/reagent/drink/ethanol/vodka
|
||||
price_tag = 5
|
||||
|
||||
/datum/reagent/drink/ethanol/whiskey
|
||||
price_tag = 5
|
||||
|
||||
|
||||
// Wines //
|
||||
|
||||
/datum/reagent/drink/ethanol/wine
|
||||
price_tag = 8
|
||||
|
||||
/datum/reagent/drink/ethanol/cognac
|
||||
price_tag = 8
|
||||
|
||||
/datum/reagent/drink/ethanol/sake
|
||||
price_tag = 8
|
||||
|
||||
/datum/reagent/drink/ethanol/vermouth
|
||||
price_tag = 8
|
||||
|
||||
/datum/reagent/drink/ethanol/pwine
|
||||
price_tag = 8
|
||||
|
||||
|
||||
// Cocktails //
|
||||
|
||||
/datum/reagent/drink/ethanol/acid_spit
|
||||
price_tag = 4
|
||||
|
||||
/datum/reagent/drink/ethanol/alliescocktail
|
||||
price_tag = 4
|
||||
|
||||
/datum/reagent/drink/ethanol/aloe
|
||||
price_tag = 4
|
||||
|
||||
/datum/reagent/drink/ethanol/amasec
|
||||
price_tag = 4
|
||||
|
||||
/datum/reagent/drink/ethanol/andalusia
|
||||
price_tag = 4
|
||||
|
||||
/datum/reagent/drink/ethanol/antifreeze
|
||||
price_tag = 4
|
||||
|
||||
/datum/reagent/drink/ethanol/atomicbomb
|
||||
price_tag = 4
|
||||
|
||||
/datum/reagent/drink/ethanol/coffee/b52
|
||||
price_tag = 4
|
||||
|
||||
/datum/reagent/drink/ethanol/bahama_mama
|
||||
price_tag = 4
|
||||
|
||||
/datum/reagent/drink/ethanol/barefoot
|
||||
price_tag = 4
|
||||
|
||||
/datum/reagent/drink/ethanol/beepsky_smash
|
||||
price_tag = 4
|
||||
|
||||
/datum/reagent/drink/ethanol/bilk
|
||||
price_tag = 4
|
||||
|
||||
/datum/reagent/drink/ethanol/black_russian
|
||||
price_tag = 4
|
||||
|
||||
/datum/reagent/drink/ethanol/bloody_mary
|
||||
price_tag = 4
|
||||
|
||||
/datum/reagent/drink/ethanol/booger
|
||||
price_tag = 4
|
||||
|
||||
/datum/reagent/drink/ethanol/brave_bull
|
||||
price_tag = 4
|
||||
|
||||
/datum/reagent/drink/ethanol/changeling_sting
|
||||
price_tag = 4
|
||||
|
||||
/datum/reagent/drink/ethanol/martini
|
||||
price_tag = 4
|
||||
|
||||
/datum/reagent/drink/ethanol/cuba_libre
|
||||
price_tag = 4
|
||||
|
||||
/datum/reagent/drink/ethanol/demonsblood
|
||||
price_tag = 4
|
||||
|
||||
/datum/reagent/drink/ethanol/devilskiss
|
||||
price_tag = 4
|
||||
|
||||
/datum/reagent/drink/ethanol/driestmartini
|
||||
price_tag = 4
|
||||
|
||||
/datum/reagent/drink/ethanol/ginfizz
|
||||
price_tag = 4
|
||||
|
||||
/datum/reagent/drink/ethanol/grog
|
||||
price_tag = 4
|
||||
|
||||
/datum/reagent/drink/ethanol/erikasurprise
|
||||
price_tag = 4
|
||||
|
||||
/datum/reagent/drink/ethanol/gargleblaster
|
||||
price_tag = 4
|
||||
|
||||
/datum/reagent/drink/ethanol/gintonic
|
||||
price_tag = 4
|
||||
|
||||
/datum/reagent/drink/ethanol/goldschlager
|
||||
price_tag = 4
|
||||
|
||||
/datum/reagent/drink/ethanol/hippies_delight
|
||||
price_tag = 4
|
||||
|
||||
/datum/reagent/drink/ethanol/hooch
|
||||
price_tag = 4
|
||||
|
||||
/datum/reagent/drink/ethanol/iced_beer
|
||||
price_tag = 4
|
||||
|
||||
/datum/reagent/drink/ethanol/irishcarbomb
|
||||
price_tag = 4
|
||||
|
||||
/datum/reagent/drink/ethanol/coffee/irishcoffee
|
||||
price_tag = 4
|
||||
|
||||
/datum/reagent/drink/ethanol/longislandicedtea
|
||||
price_tag = 4
|
||||
|
||||
/datum/reagent/drink/ethanol/manhattan
|
||||
price_tag = 4
|
||||
|
||||
/datum/reagent/drink/ethanol/manhattan_proj
|
||||
price_tag = 4
|
||||
|
||||
/datum/reagent/drink/ethanol/manly_dorf
|
||||
price_tag = 4
|
||||
|
||||
/datum/reagent/drink/ethanol/margarita
|
||||
price_tag = 4
|
||||
|
||||
/datum/reagent/drink/ethanol/mead
|
||||
price_tag = 4
|
||||
|
||||
/datum/reagent/drink/ethanol/moonshine
|
||||
price_tag = 4
|
||||
|
||||
/datum/reagent/drink/ethanol/neurotoxin
|
||||
price_tag = 4
|
||||
|
||||
/datum/reagent/drink/ethanol/patron
|
||||
price_tag = 4
|
||||
|
||||
/datum/reagent/drink/ethanol/red_mead
|
||||
price_tag = 4
|
||||
|
||||
/datum/reagent/drink/ethanol/sbiten
|
||||
price_tag = 4
|
||||
|
||||
/datum/reagent/drink/ethanol/screwdrivercocktail
|
||||
price_tag = 4
|
||||
|
||||
/datum/reagent/drink/ethanol/silencer
|
||||
price_tag = 4
|
||||
|
||||
/datum/reagent/drink/ethanol/singulo
|
||||
price_tag = 4
|
||||
|
||||
/datum/reagent/drink/ethanol/snowwhite
|
||||
price_tag = 4
|
||||
|
||||
/datum/reagent/drink/ethanol/suidream
|
||||
price_tag = 4
|
||||
|
||||
/datum/reagent/drink/ethanol/syndicatebomb
|
||||
price_tag = 4
|
||||
|
||||
/datum/reagent/drink/ethanol/tequillasunrise
|
||||
price_tag = 4
|
||||
|
||||
/datum/reagent/drink/ethanol/threemileisland
|
||||
price_tag = 4
|
||||
|
||||
/datum/reagent/drink/ethanol/toxins_special
|
||||
price_tag = 4
|
||||
|
||||
/datum/reagent/drink/ethanol/vodkamartini
|
||||
price_tag = 4
|
||||
|
||||
/datum/reagent/drink/ethanol/vodkatonic
|
||||
price_tag = 4
|
||||
|
||||
/datum/reagent/drink/ethanol/white_russian
|
||||
price_tag = 4
|
||||
|
||||
/datum/reagent/drink/ethanol/whiskey_cola
|
||||
price_tag = 4
|
||||
|
||||
/datum/reagent/drink/ethanol/whiskeysoda
|
||||
price_tag = 4
|
||||
|
||||
/datum/reagent/drink/ethanol/specialwhiskey
|
||||
price_tag = 4
|
||||
|
||||
|
||||
// Cocktails without alcohol //
|
||||
|
||||
/datum/reagent/drink/ethanol/bananahonk
|
||||
price_tag = 3
|
||||
|
||||
|
||||
// From the machine //
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/cans/cola
|
||||
price_tag = 1
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/cans/space_mountain_wind
|
||||
price_tag = 1
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/cans/dr_gibb
|
||||
price_tag = 1
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/cans/starkist
|
||||
price_tag = 1
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/cans/waterbottle
|
||||
price_tag = 2
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/cans/space_up
|
||||
price_tag = 1
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/cans/iced_tea
|
||||
price_tag = 1
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/cans/grape_juice
|
||||
price_tag = 1
|
||||
|
||||
|
||||
//***************//
|
||||
//---Foodstuff---//
|
||||
//***************//
|
||||
|
||||
|
||||
// Snacks //
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/candy
|
||||
price_tag = 1
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/sosjerky
|
||||
price_tag = 2
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/cheesiehonkers
|
||||
price_tag = 1
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/tastybread
|
||||
price_tag = 2
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/no_raisin
|
||||
price_tag = 1
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/spacetwinkie
|
||||
price_tag = 1
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/skrellsnacks
|
||||
price_tag = 4
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/chips
|
||||
price_tag = 1
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/dry_ramen
|
||||
price_tag = 5
|
||||
|
||||
|
||||
// Burger //
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/brainburger
|
||||
price_tag = 2
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/ghostburger
|
||||
price_tag = 2
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/human/burger
|
||||
price_tag = 2
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/cheeseburger
|
||||
price_tag = 2
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/monkeyburger
|
||||
price_tag = 2
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/fishburger
|
||||
price_tag = 2
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/tofuburger
|
||||
price_tag = 2
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/roburger
|
||||
price_tag = 2
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/roburgerbig
|
||||
price_tag = 2
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/xenoburger
|
||||
price_tag = 2
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/clownburger
|
||||
price_tag = 2
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/mimeburger
|
||||
price_tag = 2
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/spellburger
|
||||
price_tag = 2
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/jellyburger
|
||||
price_tag = 2
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/bigbiteburger
|
||||
price_tag = 4
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/superbiteburger
|
||||
price_tag = 8
|
||||
|
||||
|
||||
// Sandwiches //
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/sandwich
|
||||
price_tag = 3
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/toastedsandwich
|
||||
price_tag = 3
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/grilledcheese
|
||||
price_tag = 3
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/jellysandwich
|
||||
price_tag = 3
|
||||
|
||||
|
||||
// Cookies and Candies //
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/cookie
|
||||
price_tag = 1
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/chocolatebar
|
||||
price_tag = 1
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/chocolateegg
|
||||
price_tag = 1
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/candy_corn
|
||||
price_tag = 1
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/donut
|
||||
price_tag = 1
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/donut/chaos
|
||||
price_tag = 5
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/popcorn
|
||||
price_tag = 3
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/fortunecookie
|
||||
price_tag = 1
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/candiedapple
|
||||
price_tag = 2
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/plumphelmetbiscuit
|
||||
price_tag = 1
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/chawanmushi
|
||||
price_tag = 2
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/cracker
|
||||
price_tag = 1
|
||||
|
||||
|
||||
// Full meals //
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/friedegg
|
||||
price_tag = 5
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/tofurkey
|
||||
price_tag = 5
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/carpmeat
|
||||
price_tag = 5
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/fishfingers
|
||||
price_tag = 5
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/omelette
|
||||
price_tag = 5
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/berryclafoutis
|
||||
price_tag = 5
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/waffles
|
||||
price_tag = 5
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/eggplantparm
|
||||
price_tag = 5
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/soylentgreen
|
||||
price_tag = 5
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/soylenviridians
|
||||
price_tag = 5
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/wingfangchu
|
||||
price_tag = 5
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/kabob
|
||||
price_tag = 5
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/monkeykabob
|
||||
price_tag = 5
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/tofukabob
|
||||
price_tag = 5
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/cubancarp
|
||||
price_tag = 5
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/loadedbakedpotato
|
||||
price_tag = 5
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/fries
|
||||
price_tag = 5
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/spagetti
|
||||
price_tag = 5
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/cheesyfries
|
||||
price_tag = 5
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/enchiladas
|
||||
price_tag = 5
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/monkeysdelight
|
||||
price_tag = 5
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/fishandchips
|
||||
price_tag = 5
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/rofflewaffles
|
||||
price_tag = 5
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/stew
|
||||
price_tag = 5
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/stewedsoymeat
|
||||
price_tag = 5
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/boiledspagetti
|
||||
price_tag = 5
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/boiledrice
|
||||
price_tag = 5
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/ricepudding
|
||||
price_tag = 5
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/pastatomato
|
||||
price_tag = 5
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/meatballspagetti
|
||||
price_tag = 5
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/spesslaw
|
||||
price_tag = 5
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/carrotfries
|
||||
price_tag = 5
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/appletart
|
||||
price_tag = 5
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/sliceable/pizza
|
||||
price_tag = 5
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/margheritaslice
|
||||
price_tag = 1
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/meatpizzaslice
|
||||
price_tag = 1
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/mushroompizzaslice
|
||||
price_tag = 1
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/vegetablepizzaslice
|
||||
price_tag = 1
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/
|
||||
|
||||
|
||||
// Baked Goods //
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/poppypretzel
|
||||
price_tag = 2
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/baguette
|
||||
price_tag = 2
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/jelliedtoast
|
||||
price_tag = 1
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/twobread
|
||||
price_tag = 2
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/sliceable/meatbread
|
||||
price_tag = 5
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/meatbreadslice
|
||||
price_tag = 1
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/sliceable/xenomeatbread
|
||||
price_tag = 5
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/xenomeatbreadslice
|
||||
price_tag = 1
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/sliceable/bananabread
|
||||
price_tag = 5
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/bananabreadslice
|
||||
price_tag = 1
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/sliceable/tofubread
|
||||
price_tag = 5
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/tofubreadslice
|
||||
price_tag = 1
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/sliceable/bread
|
||||
price_tag = 5
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/breadslice
|
||||
price_tag = 1
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/sliceable/creamcheesebread
|
||||
price_tag = 5
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/creamcheesebreadslice
|
||||
price_tag = 1
|
||||
|
||||
|
||||
// Soups //
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/meatballsoup
|
||||
price_tag = 3
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/slimesoup
|
||||
price_tag = 3
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/bloodsoup
|
||||
price_tag = 3
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/clownstears
|
||||
price_tag = 3
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/vegetablesoup
|
||||
price_tag = 3
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/nettlesoup
|
||||
price_tag = 3
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/mysterysoup
|
||||
price_tag = 3
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/wishsoup
|
||||
price_tag = 3
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/hotchili
|
||||
price_tag = 3
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/coldchili
|
||||
price_tag = 3
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/tomatosoup
|
||||
price_tag = 3
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/milosoup
|
||||
price_tag = 3
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/mushroomsoup
|
||||
price_tag = 3
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/beetsoup
|
||||
price_tag = 3
|
||||
|
||||
|
||||
// Pies //
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/pie
|
||||
price_tag = 4
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/meatpie
|
||||
price_tag = 4
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/tofupie
|
||||
price_tag = 4
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/plump_pie
|
||||
price_tag = 4
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/xemeatpie
|
||||
price_tag = 4
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/applepie
|
||||
price_tag = 4
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/cherrypie
|
||||
price_tag = 4
|
||||
|
||||
|
||||
// Cakes //
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/sliceable/carrotcake
|
||||
price_tag = 5
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/carrotcakeslice
|
||||
price_tag = 1
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/sliceable/braincake
|
||||
price_tag = 5
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/braincakeslice
|
||||
price_tag = 1
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/sliceable/cheesecake
|
||||
price_tag = 5
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/cheesecakeslice
|
||||
price_tag = 1
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/sliceable/plaincake
|
||||
price_tag = 5
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/plaincakeslice
|
||||
price_tag = 1
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/sliceable/orangecake
|
||||
price_tag = 5
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/orangecakeslice
|
||||
price_tag = 1
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/sliceable/limecake
|
||||
price_tag = 5
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/limecakeslice
|
||||
price_tag = 1
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/sliceable/lemoncake
|
||||
price_tag = 5
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/lemoncakeslice
|
||||
price_tag = 1
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/sliceable/chocolatecake
|
||||
price_tag = 5
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/chocolatecakeslice
|
||||
price_tag = 1
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/sliceable/birthdaycake
|
||||
price_tag = 5
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/birthdaycakeslice
|
||||
price_tag = 1
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/sliceable/applecake
|
||||
price_tag = 5
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/applecakeslice
|
||||
price_tag = 1
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/sliceable/pumpkinpie
|
||||
price_tag = 5
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/pumpkinpieslice
|
||||
price_tag = 1
|
||||
|
||||
|
||||
// Misc //
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/boiledegg
|
||||
price_tag = 2
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/donkpocket
|
||||
price_tag = 1
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/sausage
|
||||
price_tag = 2
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/muffin
|
||||
price_tag = 2
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/tossedsalad
|
||||
price_tag = 2
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/validsalad
|
||||
price_tag = 2
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/snacks/dionaroast
|
||||
price_tag = 25
|
||||
|
||||
/obj/item/pizzabox
|
||||
get_item_cost()
|
||||
return get_item_cost(pizza)
|
||||
@@ -0,0 +1,350 @@
|
||||
/obj/item/device/retail_scanner
|
||||
name = "retail scanner"
|
||||
desc = "Swipe your ID card to make purchases electronically."
|
||||
icon = 'icons/obj/device.dmi'
|
||||
icon_state = "retail_idle"
|
||||
flags = NOBLUDGEON
|
||||
req_access = list(access_heads)
|
||||
|
||||
var/locked = 1
|
||||
var/emagged = 0
|
||||
var/machine_id = ""
|
||||
var/transaction_amount = 0 // cumulatd amount of money to pay in a single purchase
|
||||
var/transaction_purpose = null // text that gets used in ATM transaction logs
|
||||
var/list/transaction_logs = list() // list of strings using html code to visualise data
|
||||
var/list/item_list = list() // entities and according
|
||||
var/list/price_list = list() // prices for each purchase
|
||||
|
||||
var/obj/item/confirm_item
|
||||
var/datum/money_account/linked_account
|
||||
|
||||
|
||||
// Claim machine ID
|
||||
/obj/item/device/retail_scanner/New()
|
||||
machine_id = "[station_name()] RETAIL #[num_financial_terminals++]"
|
||||
if(locate(/obj/structure/table) in loc)
|
||||
pixel_y = 3
|
||||
|
||||
|
||||
// Always face the user when put on a table
|
||||
/obj/item/device/retail_scanner/afterattack(atom/movable/AM, mob/user, proximity)
|
||||
if(!proximity) return
|
||||
if(istype(AM, /obj/structure/table))
|
||||
src.pixel_y = 3 // Shift it up slightly to look better on table
|
||||
src.dir = get_dir(src, user)
|
||||
else
|
||||
scan_item_price(AM)
|
||||
|
||||
// Reset dir when picked back up
|
||||
/obj/item/device/retail_scanner/pickup(mob/user)
|
||||
src.dir = SOUTH
|
||||
src.pixel_y = 0
|
||||
|
||||
|
||||
/obj/item/device/retail_scanner/attack_self(mob/user as mob)
|
||||
// Reset if necessary
|
||||
if(transaction_amount)
|
||||
reset_memory()
|
||||
user << "<span class='notice'>You reset the device.</span>"
|
||||
else
|
||||
custom_interface(user)
|
||||
|
||||
|
||||
/obj/item/device/retail_scanner/AltClick(var/mob/user)
|
||||
if(Adjacent(user))
|
||||
custom_interface(user)
|
||||
|
||||
|
||||
/obj/item/device/retail_scanner/proc/custom_interface(mob/user as mob)
|
||||
var/dat = "<h2>Retail Scanner<hr></h2>"
|
||||
if (locked)
|
||||
dat += "<a href='?src=\ref[src];choice=toggle_lock'>Unlock</a><br>"
|
||||
dat += "Linked account: <b>[linked_account ? linked_account.owner_name : "None"]</b><br>"
|
||||
else
|
||||
dat += "<a href='?src=\ref[src];choice=toggle_lock'>Lock</a><br>"
|
||||
dat += "Linked account: <a href='?src=\ref[src];choice=link_account'>[linked_account ? linked_account.owner_name : "None"]</a><br>"
|
||||
dat += "<a href='?src=\ref[src];choice=custom_order'>Custom Order</a><hr>"
|
||||
for(var/i=1, i<=transaction_logs.len, i++)
|
||||
dat += "[transaction_logs[i]]<br>"
|
||||
|
||||
if(transaction_logs.len)
|
||||
dat += locked ? "<br>" : "<a href='?src=\ref[src];choice=reset_log'>Reset Log</a><br>"
|
||||
dat += "<br>"
|
||||
dat += "<i>Device ID:</i> [machine_id]"
|
||||
user << browse(dat, "window=retail;size=350x500")
|
||||
|
||||
|
||||
/obj/item/device/retail_scanner/Topic(var/href, var/href_list)
|
||||
if(href_list["choice"])
|
||||
switch(href_list["choice"])
|
||||
if("toggle_lock")
|
||||
if(allowed(usr))
|
||||
locked = !locked
|
||||
else
|
||||
usr << "\icon[src]<span class='warning'>Insufficient access.</span>"
|
||||
if("link_account")
|
||||
var/attempt_account_num = input("Enter account number", "New account number") as num
|
||||
var/attempt_pin = input("Enter PIN", "Account PIN") as num
|
||||
linked_account = attempt_account_access(attempt_account_num, attempt_pin, 1)
|
||||
if(linked_account)
|
||||
if(linked_account.suspended)
|
||||
linked_account = null
|
||||
src.visible_message("\icon[src]<span class='warning'>Account has been suspended.</span>")
|
||||
else
|
||||
usr << "\icon[src]<span class='warning'>Account not found.</span>"
|
||||
if("custom_order")
|
||||
var/t_purpose = sanitize(input("Enter purpose", "New purpose") as text)
|
||||
if (!t_purpose || !Adjacent(usr)) return
|
||||
transaction_purpose = t_purpose
|
||||
item_list += t_purpose
|
||||
var/t_amount = input("Enter price", "New price") as num
|
||||
if (!t_amount || !Adjacent(usr)) return
|
||||
transaction_amount += t_amount
|
||||
price_list += t_amount
|
||||
playsound(src, 'sound/machines/twobeep.ogg', 25)
|
||||
src.visible_message("\icon[src][transaction_purpose]: [transaction_amount] Thaler\s.")
|
||||
if("reset_log")
|
||||
transaction_logs.Cut()
|
||||
usr << "\icon[src]<span class='notice'>Transaction log reset.</span>"
|
||||
custom_interface(usr)
|
||||
|
||||
|
||||
|
||||
/obj/item/device/retail_scanner/attackby(obj/O as obj, user as mob)
|
||||
// Check for a method of paying (ID, PDA, e-wallet, cash, ect.)
|
||||
var/obj/item/weapon/card/id/I = O.GetID()
|
||||
if(I)
|
||||
scan_card(I, O)
|
||||
else if (istype(O, /obj/item/weapon/spacecash/ewallet))
|
||||
var/obj/item/weapon/spacecash/ewallet/E = O
|
||||
scan_wallet(E)
|
||||
else if (istype(O, /obj/item/weapon/spacecash))
|
||||
usr << "<span class='warning'>This device does not accept cash.</span>"
|
||||
|
||||
else if(istype(O, /obj/item/weapon/card/emag))
|
||||
return ..()
|
||||
// Not paying: Look up price and add it to transaction_amount
|
||||
else
|
||||
scan_item_price(O)
|
||||
|
||||
|
||||
/obj/item/device/retail_scanner/proc/confirm(var/obj/item/I)
|
||||
if(confirm_item == I)
|
||||
return 1
|
||||
else
|
||||
confirm_item = I
|
||||
src.visible_message("\icon[src]<b>Total price:</b> [transaction_amount] Thaler\s. Swipe again to confirm.")
|
||||
playsound(src, 'sound/machines/twobeep.ogg', 25)
|
||||
return 0
|
||||
|
||||
|
||||
/obj/item/device/retail_scanner/proc/scan_card(var/obj/item/weapon/card/id/I, var/obj/item/ID_container)
|
||||
if (!transaction_amount)
|
||||
return
|
||||
|
||||
if(!confirm(I))
|
||||
return
|
||||
|
||||
if (!linked_account)
|
||||
usr.visible_message("\icon[src]<span class='warning'>Unable to connect to linked account.</span>")
|
||||
return
|
||||
|
||||
// Access account for transaction
|
||||
if(check_account())
|
||||
var/datum/money_account/D = get_account(I.associated_account_number)
|
||||
var/attempt_pin = ""
|
||||
if(D && D.security_level)
|
||||
attempt_pin = input("Enter PIN", "Transaction") as num
|
||||
D = null
|
||||
D = attempt_account_access(I.associated_account_number, attempt_pin, 2)
|
||||
|
||||
if(!D)
|
||||
src.visible_message("\icon[src]<span class='warning'>Unable to access account. Check security settings and try again.</span>")
|
||||
else
|
||||
if(D.suspended)
|
||||
src.visible_message("\icon[src]<span class='warning'>Your account has been suspended.</span>")
|
||||
else
|
||||
if(transaction_amount > D.money)
|
||||
src.visible_message("\icon[src]<span class='warning'>Not enough funds.</span>")
|
||||
else
|
||||
// Transfer the money
|
||||
D.money -= transaction_amount
|
||||
linked_account.money += transaction_amount
|
||||
|
||||
// Create log entry in client's account
|
||||
var/datum/transaction/T = new()
|
||||
T.target_name = "[linked_account.owner_name]"
|
||||
T.purpose = transaction_purpose
|
||||
T.amount = "([transaction_amount])"
|
||||
T.source_terminal = machine_id
|
||||
T.date = current_date_string
|
||||
T.time = worldtime2text()
|
||||
D.transaction_log.Add(T)
|
||||
|
||||
// Create log entry in owner's account
|
||||
T = new()
|
||||
T.target_name = D.owner_name
|
||||
T.purpose = transaction_purpose
|
||||
T.amount = "[transaction_amount]"
|
||||
T.source_terminal = machine_id
|
||||
T.date = current_date_string
|
||||
T.time = worldtime2text()
|
||||
linked_account.transaction_log.Add(T)
|
||||
|
||||
// Save log
|
||||
add_transaction_log(I.registered_name ? I.registered_name : "n/A", "ID Card", transaction_amount)
|
||||
|
||||
// Confirm and reset
|
||||
transaction_complete()
|
||||
|
||||
|
||||
/obj/item/device/retail_scanner/proc/scan_wallet(var/obj/item/weapon/spacecash/ewallet/E)
|
||||
if (!transaction_amount)
|
||||
return
|
||||
|
||||
if(!confirm(E))
|
||||
return
|
||||
|
||||
// Access account for transaction
|
||||
if(check_account())
|
||||
if(transaction_amount > E.worth)
|
||||
src.visible_message("\icon[src]<span class='warning'>Not enough funds.</span>")
|
||||
else
|
||||
// Transfer the money
|
||||
E.worth -= transaction_amount
|
||||
linked_account.money += transaction_amount
|
||||
|
||||
// Create log entry in owner's account
|
||||
var/datum/transaction/T = new()
|
||||
T.target_name = E.owner_name
|
||||
T.purpose = transaction_purpose
|
||||
T.amount = "[transaction_amount]"
|
||||
T.source_terminal = machine_id
|
||||
T.date = current_date_string
|
||||
T.time = worldtime2text()
|
||||
linked_account.transaction_log.Add(T)
|
||||
|
||||
// Save log
|
||||
add_transaction_log(E.owner_name, "E-Wallet", transaction_amount)
|
||||
|
||||
// Confirm and reset
|
||||
transaction_complete()
|
||||
|
||||
|
||||
/obj/item/device/retail_scanner/proc/scan_item_price(var/obj/O)
|
||||
if(!istype(O)) return
|
||||
// First check if item has a valid price
|
||||
var/price = O.get_item_cost()
|
||||
if(isnull(price))
|
||||
src.visible_message("\icon[src]<span class='warning'>Unable to find item in database.</span>")
|
||||
return
|
||||
// Call out item cost
|
||||
src.visible_message("\icon[src]\A [O]: [price ? "[price] Thaler\s" : "free of charge"].")
|
||||
// Note the transaction purpose for later use
|
||||
if(transaction_purpose)
|
||||
transaction_purpose += "<br>"
|
||||
transaction_purpose += "[O]: [price] Thaler\s"
|
||||
transaction_amount += price
|
||||
item_list += "[O]"
|
||||
price_list += "[price] þ"
|
||||
// Animation and sound
|
||||
flick("retail_scan", src)
|
||||
playsound(src, 'sound/machines/twobeep.ogg', 25)
|
||||
// Reset confirmation
|
||||
confirm_item = null
|
||||
|
||||
|
||||
/obj/item/device/retail_scanner/proc/add_transaction_log(var/c_name, var/p_method, var/t_amount)
|
||||
var/dat = {"
|
||||
<head><style>
|
||||
.tx-table {border: 1px solid black;}
|
||||
.tx-title {text-align: center; background-color:#ddddff; font-weight: bold}
|
||||
.tx-name {background-color: #bbbbee}
|
||||
.tx-data {text-align: right; background-color: #ccccff;}
|
||||
</head></style>
|
||||
<table width=300>
|
||||
<tr><td colspan="2" class="tx-title">Transaction #[transaction_logs.len+1]</td></tr>
|
||||
<tr></tr>
|
||||
<tr><td class="tx-name">Customer</td><td class="tx-data">[c_name]</td></tr>
|
||||
<tr><td class="tx-name">Pay Method</td><td class="tx-data">[p_method]</td></tr>
|
||||
<tr><td class="tx-name">Station Time</td><td class="tx-data">[worldtime2text()]</td></tr>
|
||||
</table>
|
||||
<table width=300>
|
||||
"}
|
||||
for(var/i=1, i<=item_list.len, i++)
|
||||
dat += "<tr><td class=\"tx-name\">[item_list[i]]</td><td class=\"tx-data\" width=50>[price_list[i]]</td></tr>"
|
||||
dat += "<tr></tr><tr><td colspan=\"2\" class=\"tx-name\" style='text-align: right'><b>Total Amount: [transaction_amount] þ</b></td></tr>"
|
||||
dat += "</table>"
|
||||
|
||||
transaction_logs += dat
|
||||
|
||||
|
||||
/obj/item/device/retail_scanner/proc/check_account()
|
||||
if (!linked_account)
|
||||
usr.visible_message("\icon[src]<span class='warning'>Unable to connect to linked account.</span>")
|
||||
return 0
|
||||
|
||||
if(linked_account.suspended)
|
||||
src.visible_message("\icon[src]<span class='warning'>Connected account has been suspended.</span>")
|
||||
return 0
|
||||
return 1
|
||||
|
||||
|
||||
/obj/item/device/retail_scanner/proc/transaction_complete()
|
||||
/// Visible confirmation
|
||||
playsound(src, 'sound/machines/chime.ogg', 25)
|
||||
src.visible_message("\icon[src]<span class='notice'>Transaction complete.</span>")
|
||||
flick("retail_approve", src)
|
||||
reset_memory()
|
||||
|
||||
/obj/item/device/retail_scanner/proc/reset_memory()
|
||||
transaction_amount = null
|
||||
transaction_purpose = ""
|
||||
item_list.Cut()
|
||||
price_list.Cut()
|
||||
confirm_item = null
|
||||
|
||||
|
||||
/obj/item/device/retail_scanner/emag_act(var/remaining_charges, var/mob/user)
|
||||
if(!emagged)
|
||||
user << "<span class='danger'>You stealthily swipe the cryptographic sequencer through \the [src].</span>"
|
||||
playsound(src, "sparks", 50, 1)
|
||||
req_access = list()
|
||||
emagged = 1
|
||||
|
||||
//--Premades--//
|
||||
|
||||
/obj/item/device/retail_scanner/command
|
||||
New()
|
||||
linked_account = department_accounts["Command"]
|
||||
..()
|
||||
/obj/item/device/retail_scanner/medical
|
||||
|
||||
New()
|
||||
linked_account = department_accounts["Medical"]
|
||||
..()
|
||||
|
||||
/obj/item/device/retail_scanner/engineering
|
||||
New()
|
||||
linked_account = department_accounts["Engineering"]
|
||||
..()
|
||||
|
||||
/obj/item/device/retail_scanner/science
|
||||
New()
|
||||
linked_account = department_accounts["Science"]
|
||||
..()
|
||||
|
||||
/obj/item/device/retail_scanner/security
|
||||
New()
|
||||
linked_account = department_accounts["Security"]
|
||||
..()
|
||||
|
||||
/obj/item/device/retail_scanner/cargo
|
||||
New()
|
||||
linked_account = department_accounts["Cargo"]
|
||||
..()
|
||||
|
||||
/obj/item/device/retail_scanner/civilian
|
||||
New()
|
||||
linked_account = department_accounts["Civilian"]
|
||||
..()
|
||||
@@ -345,7 +345,7 @@
|
||||
|
||||
// Juices
|
||||
|
||||
/datum/reagent/drink/banana
|
||||
/datum/reagent/drink/juice/banana
|
||||
name = "Banana Juice"
|
||||
id = "banana"
|
||||
description = "The raw essence of a banana."
|
||||
@@ -355,7 +355,7 @@
|
||||
glass_name = "glass of banana juice"
|
||||
glass_desc = "The raw essence of a banana. HONK!"
|
||||
|
||||
/datum/reagent/drink/berryjuice
|
||||
/datum/reagent/drink/juice/berry
|
||||
name = "Berry Juice"
|
||||
id = "berryjuice"
|
||||
description = "A delicious blend of several different kinds of berries."
|
||||
@@ -365,7 +365,7 @@
|
||||
glass_name = "glass of berry juice"
|
||||
glass_desc = "Berry juice. Or maybe it's jam. Who cares?"
|
||||
|
||||
/datum/reagent/drink/carrotjuice
|
||||
/datum/reagent/drink/juice/carrot
|
||||
name = "Carrot juice"
|
||||
id = "carrotjuice"
|
||||
description = "It is just like a carrot but without crunching."
|
||||
@@ -375,11 +375,11 @@
|
||||
glass_name = "glass of carrot juice"
|
||||
glass_desc = "It is just like a carrot but without crunching."
|
||||
|
||||
/datum/reagent/drink/carrotjuice/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed)
|
||||
/datum/reagent/drink/juice/carrot/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed)
|
||||
..()
|
||||
M.reagents.add_reagent("imidazoline", removed * 0.2)
|
||||
|
||||
/datum/reagent/drink/grapejuice
|
||||
/datum/reagent/drink/juice/
|
||||
name = "Grape Juice"
|
||||
id = "grapejuice"
|
||||
description = "It's grrrrrape!"
|
||||
@@ -389,7 +389,7 @@
|
||||
glass_name = "glass of grape juice"
|
||||
glass_desc = "It's grrrrrape!"
|
||||
|
||||
/datum/reagent/drink/lemonjuice
|
||||
/datum/reagent/drink/juice/lemon
|
||||
name = "Lemon Juice"
|
||||
id = "lemonjuice"
|
||||
description = "This juice is VERY sour."
|
||||
@@ -399,7 +399,7 @@
|
||||
glass_name = "glass of lemon juice"
|
||||
glass_desc = "Sour..."
|
||||
|
||||
/datum/reagent/drink/limejuice
|
||||
/datum/reagent/drink/juice/lime
|
||||
name = "Lime Juice"
|
||||
id = "limejuice"
|
||||
description = "The sweet-sour juice of limes."
|
||||
@@ -409,13 +409,13 @@
|
||||
glass_name = "glass of lime juice"
|
||||
glass_desc = "A glass of sweet-sour lime juice"
|
||||
|
||||
/datum/reagent/drink/limejuice/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed)
|
||||
/datum/reagent/drink/juice/lime/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed)
|
||||
..()
|
||||
if(alien == IS_DIONA)
|
||||
return
|
||||
M.adjustToxLoss(-0.5 * removed)
|
||||
|
||||
/datum/reagent/drink/orangejuice
|
||||
/datum/reagent/drink/juice/orange
|
||||
name = "Orange juice"
|
||||
id = "orangejuice"
|
||||
description = "Both delicious AND rich in Vitamin C, what more do you need?"
|
||||
@@ -442,7 +442,7 @@
|
||||
glass_name = "glass of poison berry juice"
|
||||
glass_desc = "A glass of deadly juice."
|
||||
|
||||
/datum/reagent/drink/potato_juice
|
||||
/datum/reagent/drink/juice/potato
|
||||
name = "Potato Juice"
|
||||
id = "potato"
|
||||
description = "Juice of the potato. Bleh."
|
||||
@@ -453,7 +453,7 @@
|
||||
glass_name = "glass of potato juice"
|
||||
glass_desc = "Juice from a potato. Bleh."
|
||||
|
||||
/datum/reagent/drink/tomatojuice
|
||||
/datum/reagent/drink/juice/tomato
|
||||
name = "Tomato Juice"
|
||||
id = "tomatojuice"
|
||||
description = "Tomatoes made into juice. What a waste of big, juicy tomatoes, huh?"
|
||||
@@ -463,13 +463,13 @@
|
||||
glass_name = "glass of tomato juice"
|
||||
glass_desc = "Are you sure this is tomato juice?"
|
||||
|
||||
/datum/reagent/drink/tomatojuice/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed)
|
||||
/datum/reagent/drink/juice/tomato/affect_ingest(var/mob/living/carbon/M, var/alien, var/removed)
|
||||
..()
|
||||
if(alien == IS_DIONA)
|
||||
return
|
||||
M.heal_organ_damage(0, 0.5 * removed)
|
||||
|
||||
/datum/reagent/drink/watermelonjuice
|
||||
/datum/reagent/drink/juice/watermelon
|
||||
name = "Watermelon Juice"
|
||||
id = "watermelonjuice"
|
||||
description = "Delicious juice made from watermelon."
|
||||
@@ -674,7 +674,7 @@
|
||||
cup_name = "cup of hot chocolate"
|
||||
cup_desc = "Made with love! And cocoa beans."
|
||||
|
||||
/datum/reagent/drink/sodawater
|
||||
/datum/reagent/drink/soda/sodawater
|
||||
name = "Soda Water"
|
||||
id = "sodawater"
|
||||
description = "A can of club soda. Why not make a scotch and soda?"
|
||||
@@ -687,7 +687,7 @@
|
||||
glass_name = "glass of soda water"
|
||||
glass_desc = "Soda water. Why not make a scotch and soda?"
|
||||
|
||||
/datum/reagent/drink/grapesoda
|
||||
/datum/reagent/drink/soda/grapesoda
|
||||
name = "Grape Soda"
|
||||
id = "grapesoda"
|
||||
description = "Grapes made into a fine drank."
|
||||
@@ -698,7 +698,7 @@
|
||||
glass_name = "glass of grape soda"
|
||||
glass_desc = "Looks like a delicious drink!"
|
||||
|
||||
/datum/reagent/drink/tonic
|
||||
/datum/reagent/drink/soda/tonic
|
||||
name = "Tonic Water"
|
||||
id = "tonic"
|
||||
description = "It tastes strange but at least the quinine keeps the Space Malaria at bay."
|
||||
@@ -712,7 +712,7 @@
|
||||
glass_name = "glass of tonic water"
|
||||
glass_desc = "Quinine tastes funny, but at least it'll keep that Space Malaria away."
|
||||
|
||||
/datum/reagent/drink/lemonade
|
||||
/datum/reagent/drink/soda/lemonade
|
||||
name = "Lemonade"
|
||||
description = "Oh the nostalgia..."
|
||||
id = "lemonade"
|
||||
@@ -723,7 +723,7 @@
|
||||
glass_name = "glass of lemonade"
|
||||
glass_desc = "Oh the nostalgia..."
|
||||
|
||||
/datum/reagent/drink/kiraspecial
|
||||
/datum/reagent/drink/soda/kiraspecial
|
||||
name = "Kira Special"
|
||||
description = "Long live the guy who everyone had mistaken for a girl. Baka!"
|
||||
id = "kiraspecial"
|
||||
@@ -735,7 +735,7 @@
|
||||
glass_desc = "Long live the guy who everyone had mistaken for a girl. Baka!"
|
||||
glass_center_of_mass = list("x"=16, "y"=12)
|
||||
|
||||
/datum/reagent/drink/brownstar
|
||||
/datum/reagent/drink/soda/brownstar
|
||||
name = "Brown Star"
|
||||
description = "It's not what it sounds like..."
|
||||
id = "brownstar"
|
||||
@@ -774,7 +774,7 @@
|
||||
..()
|
||||
M.make_jittery(5)
|
||||
|
||||
/datum/reagent/drink/nuka_cola
|
||||
/datum/reagent/drink/soda/nuka_cola
|
||||
name = "Nuka Cola"
|
||||
id = "nuka_cola"
|
||||
description = "Cola, cola never changes."
|
||||
@@ -806,7 +806,7 @@
|
||||
glass_desc = "Sweet and tangy, a bar syrup used to add color or flavor to drinks."
|
||||
glass_center_of_mass = list("x"=17, "y"=6)
|
||||
|
||||
/datum/reagent/drink/space_cola
|
||||
/datum/reagent/drink/soda/space_cola
|
||||
name = "Space Cola"
|
||||
id = "cola"
|
||||
description = "A refreshing beverage."
|
||||
@@ -819,7 +819,7 @@
|
||||
glass_name = "glass of Space Cola"
|
||||
glass_desc = "A glass of refreshing Space Cola"
|
||||
|
||||
/datum/reagent/drink/spacemountainwind
|
||||
/datum/reagent/drink/soda/spacemountainwind
|
||||
name = "Mountain Wind"
|
||||
id = "spacemountainwind"
|
||||
description = "Blows right through you like a space wind."
|
||||
@@ -832,7 +832,7 @@
|
||||
glass_name = "glass of Space Mountain Wind"
|
||||
glass_desc = "Space Mountain Wind. As you know, there are no mountains in space, only wind."
|
||||
|
||||
/datum/reagent/drink/dr_gibb
|
||||
/datum/reagent/drink/soda/dr_gibb
|
||||
name = "Dr. Gibb"
|
||||
id = "dr_gibb"
|
||||
description = "A delicious blend of 42 different flavours"
|
||||
@@ -844,7 +844,7 @@
|
||||
glass_name = "glass of Dr. Gibb"
|
||||
glass_desc = "Dr. Gibb. Not as dangerous as the name might imply."
|
||||
|
||||
/datum/reagent/drink/space_up
|
||||
/datum/reagent/drink/soda/space_up
|
||||
name = "Space-Up"
|
||||
id = "space_up"
|
||||
description = "Tastes like a hull breach in your mouth."
|
||||
@@ -855,7 +855,7 @@
|
||||
glass_name = "glass of Space-up"
|
||||
glass_desc = "Space-up. It helps keep your cool."
|
||||
|
||||
/datum/reagent/drink/lemon_lime
|
||||
/datum/reagent/drink/soda/lemon_lime
|
||||
name = "Lemon Lime"
|
||||
description = "A tangy substance made of 0.5% natural citrus!"
|
||||
id = "lemon_lime"
|
||||
@@ -1124,7 +1124,7 @@
|
||||
glass_desc = "A glass of sake."
|
||||
glass_center_of_mass = list("x"=16, "y"=12)
|
||||
|
||||
/datum/reagent/ethanol/tequilla
|
||||
/datum/reagent/ethanol/tequila
|
||||
name = "Tequila"
|
||||
id = "tequilla"
|
||||
description = "A strong and mildly flavoured, mexican produced spirit. Feeling thirsty hombre?"
|
||||
@@ -1132,7 +1132,7 @@
|
||||
strength = 25
|
||||
|
||||
glass_icon_state = "tequillaglass"
|
||||
glass_name = "glass of Tequilla"
|
||||
glass_name = "glass of Tequila"
|
||||
glass_desc = "Now all that's missing is the weird colored shades!"
|
||||
glass_center_of_mass = list("x"=16, "y"=12)
|
||||
|
||||
@@ -1893,7 +1893,7 @@
|
||||
strength = 25
|
||||
|
||||
glass_icon_state = "tequillasunriseglass"
|
||||
glass_name = "glass of Tequilla Sunrise"
|
||||
glass_name = "glass of Tequila Sunrise"
|
||||
glass_desc = "Oh great, now you feel nostalgic about sunrises back on Terra..."
|
||||
|
||||
/datum/reagent/ethanol/threemileisland
|
||||
|
||||
@@ -39,6 +39,11 @@
|
||||
center_of_mass = R.glass_center_of_mass
|
||||
else
|
||||
center_of_mass = list("x"=16, "y"=10)
|
||||
|
||||
if(R.price_tag)
|
||||
price_tag = R.price_tag
|
||||
else
|
||||
price_tag = null
|
||||
else
|
||||
icon_state = "glass_empty"
|
||||
name = "glass"
|
||||
@@ -78,6 +83,11 @@
|
||||
else
|
||||
center_of_mass = list("x"=16, "y"=16)
|
||||
|
||||
if(R.price_tag)
|
||||
price_tag = R.price_tag
|
||||
else
|
||||
price_tag = null
|
||||
|
||||
else
|
||||
icon_state = "cup_empty"
|
||||
name = "coffee cup"
|
||||
|
||||
Binary file not shown.
|
Before Width: | Height: | Size: 23 KiB After Width: | Height: | Size: 42 KiB |
Binary file not shown.
|
Before Width: | Height: | Size: 95 KiB After Width: | Height: | Size: 100 KiB |
+20
-18
@@ -502,7 +502,7 @@
|
||||
"ajH" = (/turf/simulated/floor/tiled/dark,/area/chapel/chapel_morgue)
|
||||
"ajI" = (/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1379; master_tag = "solar_chapel_airlock"; name = "exterior access button"; pixel_x = -25; pixel_y = -25; req_access = list(11,13)},/obj/effect/decal/cleanable/dirt,/obj/structure/cable/yellow{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/airless,/area/solar/auxstarboard)
|
||||
"ajJ" = (/obj/structure/table/woodentable,/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/obj/item/weapon/pen/invisible,/obj/item/clothing/under/suit_jacket/red,/obj/machinery/light,/obj/item/weapon/barcodescanner,/turf/simulated/floor/carpet,/area/library)
|
||||
"ajK" = (/obj/structure/table/woodentable,/obj/item/device/taperecorder{pixel_y = 0},/obj/item/device/camera,/obj/item/device/eftpos{eftpos_name = "Library EFTPOS scanner"},/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/obj/machinery/newscaster{pixel_x = 0; pixel_y = -28},/turf/simulated/floor/carpet,/area/library)
|
||||
"ajK" = (/obj/structure/table/woodentable,/obj/item/device/taperecorder{pixel_y = 0},/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/obj/machinery/newscaster{pixel_x = 0; pixel_y = -28},/obj/item/device/retail_scanner/civilian{tag = "icon-retail_idle (NORTH)"; icon_state = "retail_idle"; dir = 1},/obj/item/device/camera,/turf/simulated/floor/carpet,/area/library)
|
||||
"ajL" = (/obj/machinery/libraryscanner,/turf/simulated/floor/wood,/area/library)
|
||||
"ajM" = (/obj/machinery/librarycomp{pixel_y = 0},/obj/structure/table/woodentable,/turf/simulated/floor/wood,/area/library)
|
||||
"ajN" = (/obj/structure/table/woodentable,/obj/item/weapon/paper_bin{pixel_x = 1; pixel_y = 9},/turf/simulated/floor/wood,/area/library)
|
||||
@@ -1392,7 +1392,7 @@
|
||||
"aAN" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/cable/green{d2 = 2; icon_state = "0-2"},/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/plating,/area/security/security_equiptment_storage)
|
||||
"aAO" = (/obj/machinery/computer/prisoner,/obj/machinery/status_display{density = 0; layer = 4; pixel_x = 0; pixel_y = 32},/obj/effect/floor_decal/industrial/outline/grey,/turf/simulated/floor/tiled/dark,/area/security/warden)
|
||||
"aAP" = (/obj/structure/filingcabinet/chestdrawer,/obj/effect/floor_decal/industrial/outline/grey,/obj/item/device/radio/intercom{broadcasting = 0; dir = 1; frequency = 1475; icon_state = "intercom"; listening = 1; name = "Station Intercom (Security)"; pixel_x = 0; pixel_y = 21},/turf/simulated/floor/tiled/dark,/area/security/warden)
|
||||
"aAQ" = (/obj/structure/table/reinforced,/obj/item/device/eftpos{eftpos_name = "Brig EFTPOS scanner"},/obj/machinery/recharger/wallcharger{pixel_x = 4; pixel_y = 26},/obj/structure/cable/green{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/camera/network/security{c_tag = "SEC - Warden's Office"},/obj/item/weapon/crowbar,/obj/item/device/radio/off,/obj/item/weapon/wrench,/turf/simulated/floor/tiled/dark,/area/security/warden)
|
||||
"aAQ" = (/obj/structure/table/reinforced,/obj/machinery/recharger/wallcharger{pixel_x = 4; pixel_y = 26},/obj/structure/cable/green{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/machinery/camera/network/security{c_tag = "SEC - Warden's Office"},/obj/item/weapon/crowbar,/obj/item/device/radio/off,/obj/item/weapon/wrench,/obj/item/device/retail_scanner/security,/turf/simulated/floor/tiled/dark,/area/security/warden)
|
||||
"aAR" = (/obj/machinery/power/apc{dir = 1; name = "north bump"; pixel_x = 0; pixel_y = 24},/obj/structure/cable/green{d2 = 8; icon_state = "0-8"},/obj/machinery/light_switch{pixel_x = 14; pixel_y = 24},/obj/machinery/photocopier,/turf/simulated/floor/tiled/dark,/area/security/warden)
|
||||
"aAS" = (/obj/machinery/newscaster/security_unit{pixel_x = 0; pixel_y = 30},/obj/structure/table/reinforced,/obj/machinery/photocopier/faxmachine{department = "Warden's Office"},/turf/simulated/floor/tiled/dark,/area/security/warden)
|
||||
"aAT" = (/obj/structure/window/reinforced{dir = 4},/obj/structure/table/reinforced,/obj/item/weapon/clipboard,/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/obj/item/weapon/folder/red,/obj/item/weapon/pen,/obj/item/device/radio/intercom{dir = 1; name = "Station Intercom (General)"; pixel_y = 21},/turf/simulated/floor/tiled/dark,/area/security/warden)
|
||||
@@ -2887,7 +2887,7 @@
|
||||
"bdA" = (/obj/machinery/door/airlock/glass_medical{name = "Staff Room"; req_access = list(5)},/obj/machinery/door/firedoor/glass,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/effect/floor_decal/corner/paleblue/diagonal{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/disposalpipe/segment,/turf/simulated/floor/tiled/white,/area/crew_quarters/medbreak)
|
||||
"bdB" = (/obj/structure/flora/ausbushes/ppflowers,/turf/simulated/floor/grass,/area/hydroponics/garden)
|
||||
"bdC" = (/obj/effect/floor_decal/corner/green{dir = 5},/turf/simulated/floor/tiled,/area/hydroponics/garden)
|
||||
"bdD" = (/obj/structure/table/marble,/obj/machinery/door/firedoor/border_only,/obj/machinery/door/blast/shutters{dir = 8; id = "coffeeshop"; layer = 3.1; name = "Cafe Shutters"},/turf/simulated/floor/tiled/yellow,/area/crew_quarters/coffee_shop)
|
||||
"bdD" = (/obj/structure/table/marble,/obj/machinery/door/firedoor/border_only,/obj/machinery/cash_register/civilian{tag = "icon-register_idle (EAST)"; icon_state = "register_idle"; dir = 4},/obj/machinery/door/blast/shutters{dir = 8; id = "coffeeshop"; layer = 3.1; name = "Cafe Shutters"},/turf/simulated/floor/tiled/yellow,/area/crew_quarters/coffee_shop)
|
||||
"bdE" = (/obj/structure/table/marble,/obj/machinery/light{icon_state = "tube1"; dir = 4},/obj/item/weapon/reagent_containers/food/drinks/drinkingglass{pixel_x = 8; pixel_y = 8},/obj/machinery/light{icon_state = "tube1"; dir = 4},/obj/item/weapon/reagent_containers/food/drinks/drinkingglass{pixel_x = 0; pixel_y = 8},/obj/item/weapon/reagent_containers/food/drinks/drinkingglass{pixel_x = -8; pixel_y = 8},/obj/item/weapon/reagent_containers/food/drinks/drinkingglass{pixel_x = 8; pixel_y = 4},/obj/item/weapon/reagent_containers/food/drinks/drinkingglass{pixel_x = 0; pixel_y = 4},/obj/item/weapon/reagent_containers/food/drinks/drinkingglass{pixel_x = -8; pixel_y = 4},/turf/simulated/floor/tiled/yellow,/area/crew_quarters/coffee_shop)
|
||||
"bdF" = (/obj/structure/cable/green,/obj/structure/flora/pottedplant,/obj/machinery/power/apc{dir = 2; name = "south bump"; pixel_y = -24},/obj/effect/floor_decal/corner/brown/full,/turf/simulated/floor/tiled/white,/area/crew_quarters/coffee_shop)
|
||||
"bdG" = (/obj/structure/table/woodentable,/obj/machinery/alarm{dir = 1; icon_state = "alarm0"; pixel_y = -22},/obj/item/weapon/reagent_containers/food/condiment/small/sugar,/obj/effect/floor_decal/corner/brown{dir = 10},/turf/simulated/floor/tiled/white,/area/crew_quarters/coffee_shop)
|
||||
@@ -4752,7 +4752,7 @@
|
||||
"bNt" = (/obj/effect/floor_decal/industrial/outline/yellow,/obj/machinery/light{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/central_four)
|
||||
"bNu" = (/obj/structure/closet/secure_closet/hop2,/obj/effect/floor_decal/corner/blue{dir = 9},/turf/simulated/floor/tiled,/area/crew_quarters/heads/hop)
|
||||
"bNv" = (/obj/structure/table/reinforced,/obj/item/weapon/paper_bin{pixel_x = -3; pixel_y = 7},/obj/item/weapon/folder/blue,/obj/item/weapon/folder/red,/obj/item/weapon/pen,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/carpet,/area/crew_quarters/heads/hop)
|
||||
"bNw" = (/obj/structure/table/reinforced,/obj/item/weapon/clipboard,/obj/item/device/eftpos{eftpos_name = "HoP EFTPOS scanner"},/obj/item/weapon/stamp/hop,/turf/simulated/floor/carpet,/area/crew_quarters/heads/hop)
|
||||
"bNw" = (/obj/structure/table/reinforced,/obj/item/weapon/clipboard,/obj/item/weapon/stamp/hop,/turf/simulated/floor/carpet,/area/crew_quarters/heads/hop)
|
||||
"bNx" = (/obj/structure/table/reinforced,/obj/item/device/megaphone,/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/carpet,/area/crew_quarters/heads/hop)
|
||||
"bNy" = (/obj/effect/floor_decal/corner/blue,/obj/machinery/firealarm{dir = 4; pixel_x = 24},/turf/simulated/floor/tiled,/area/crew_quarters/heads/hop)
|
||||
"bNz" = (/obj/effect/floor_decal/corner/blue{dir = 8},/obj/machinery/firealarm{dir = 8; pixel_x = -24},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/tiled,/area/bridge_hallway)
|
||||
@@ -4969,7 +4969,7 @@
|
||||
"bRC" = (/obj/machinery/door/airlock{name = "Private Restroom"},/turf/simulated/floor/tiled/freezer,/area/crew_quarters/captain)
|
||||
"bRD" = (/turf/simulated/floor/tiled/freezer,/area/crew_quarters/captain)
|
||||
"bRE" = (/obj/structure/toilet{dir = 8},/turf/simulated/floor/tiled/freezer,/area/crew_quarters/captain)
|
||||
"bRF" = (/obj/structure/closet/chefcloset,/obj/item/device/eftpos{eftpos_name = "Kitchen EFTPOS scanner"},/obj/item/glass_jar,/obj/effect/floor_decal/corner/grey/diagonal{dir = 4},/turf/simulated/floor/tiled/white,/area/crew_quarters/kitchen)
|
||||
"bRF" = (/obj/structure/closet/chefcloset,/obj/item/glass_jar,/obj/effect/floor_decal/corner/grey/diagonal{dir = 4},/obj/item/device/retail_scanner/civilian,/turf/simulated/floor/tiled/white,/area/crew_quarters/kitchen)
|
||||
"bRG" = (/obj/effect/floor_decal/corner/grey/diagonal{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/disposalpipe/segment,/turf/simulated/floor/tiled/white,/area/crew_quarters/kitchen)
|
||||
"bRH" = (/obj/effect/floor_decal/corner/grey/diagonal{dir = 4},/obj/machinery/light,/obj/machinery/button/remote/blast_door{id = "kitchen"; name = "Kitchen Shutters Control"; pixel_x = -1; pixel_y = -24; req_access = list(28)},/turf/simulated/floor/tiled/white,/area/crew_quarters/kitchen)
|
||||
"bRI" = (/obj/effect/floor_decal/corner/grey/diagonal{dir = 4},/obj/machinery/atmospherics/unary/vent_pump/on{dir = 1},/turf/simulated/floor/tiled/white,/area/crew_quarters/kitchen)
|
||||
@@ -5064,7 +5064,7 @@
|
||||
"bTt" = (/obj/machinery/chemical_dispenser/full,/obj/structure/table/reinforced,/turf/simulated/floor/tiled/white,/area/medical/chemistry)
|
||||
"bTu" = (/obj/structure/bed/chair/office/dark,/obj/effect/landmark/start{name = "Chemist"},/turf/simulated/floor/tiled/white,/area/medical/chemistry)
|
||||
"bTv" = (/obj/structure/table/reinforced,/obj/item/weapon/storage/box/beakers,/obj/item/weapon/reagent_containers/dropper,/turf/simulated/floor/tiled/white,/area/medical/chemistry)
|
||||
"bTw" = (/obj/structure/table/woodentable,/obj/item/weapon/melee/chainofcommand,/obj/item/device/eftpos{eftpos_name = "Captain EFTPOS scanner"},/obj/machinery/button/remote/airlock{desc = "A remote control switch for the Starboard Bridge Doors."; id = "sbridgedoor"; name = "Starboard Bridge Door Control"; pixel_x = 4; pixel_y = -6},/obj/machinery/button/remote/airlock{desc = "A remote control switch for the captain's office."; id = "captaindoor"; name = "Captain's Office Door Control"; pixel_x = 4; pixel_y = 6},/turf/simulated/floor/wood,/area/crew_quarters/captain)
|
||||
"bTw" = (/obj/structure/table/marble,/obj/effect/floor_decal/corner/grey/diagonal{dir = 4},/obj/machinery/cash_register/civilian{tag = "icon-register_idle (NORTH)"; icon_state = "register_idle"; dir = 1},/turf/simulated/floor/tiled/white,/area/crew_quarters/cafeteria)
|
||||
"bTx" = (/obj/structure/closet/secure_closet/medical1,/obj/item/weapon/storage/box/pillbottles,/obj/effect/floor_decal/corner/beige{dir = 6},/turf/simulated/floor/tiled/white,/area/medical/chemistry)
|
||||
"bTy" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/plating,/area/medical/chemistry)
|
||||
"bTz" = (/obj/machinery/vending/coffee,/obj/effect/floor_decal/corner/paleblue{dir = 1},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/tiled/white,/area/medical/patient_wing)
|
||||
@@ -5300,7 +5300,7 @@
|
||||
"bXV" = (/obj/machinery/atmospherics/unary/vent_pump/on{dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/central_four)
|
||||
"bXW" = (/obj/machinery/light{dir = 4; icon_state = "tube1"; pixel_x = 0},/obj/structure/disposalpipe/segment,/turf/simulated/floor/tiled,/area/hallway/primary/central_four)
|
||||
"bXX" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/cable/green{d2 = 2; icon_state = "0-2"},/obj/structure/cable/green,/obj/structure/cable/green{d2 = 4; icon_state = "0-4"},/obj/machinery/door/blast/shutters{density = 0; dir = 8; icon_state = "shutter0"; id = "heads_meeting"; name = "Meeting Room Window Shutters"; opacity = 0},/obj/machinery/door/firedoor,/turf/simulated/floor/plating,/area/bridge/meeting_room)
|
||||
"bXY" = (/obj/item/weapon/hand_labeler,/obj/item/device/assembly/timer,/obj/item/device/eftpos{eftpos_name = "Bridge EFTPOS scanner"},/obj/structure/table/woodentable,/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/wood,/area/bridge/meeting_room)
|
||||
"bXY" = (/obj/item/weapon/hand_labeler,/obj/item/device/assembly/timer,/obj/structure/table/woodentable,/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/item/device/retail_scanner/command{tag = "icon-retail_idle (EAST)"; icon_state = "retail_idle"; dir = 4},/turf/simulated/floor/wood,/area/bridge/meeting_room)
|
||||
"bXZ" = (/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/turf/simulated/floor/wood,/area/bridge/meeting_room)
|
||||
"bYa" = (/obj/structure/bed/chair/comfy/black{dir = 4},/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 6},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/carpet,/area/bridge/meeting_room)
|
||||
"bYb" = (/obj/item/weapon/folder/red,/obj/structure/table/woodentable,/obj/structure/cable/green{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/landmark{name = "blobstart"},/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/carpet,/area/bridge/meeting_room)
|
||||
@@ -6268,7 +6268,7 @@
|
||||
"cqB" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/machinery/light{icon_state = "tube1"; dir = 4},/turf/simulated/floor/tiled,/area/hallway/primary/central_three)
|
||||
"cqC" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/disposalpipe/segment,/turf/simulated/floor,/area/maintenance/medbay_aft)
|
||||
"cqD" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor,/area/maintenance/medbay_aft)
|
||||
"cqE" = (/obj/structure/table/standard,/obj/item/weapon/folder/yellow,/obj/item/device/eftpos{eftpos_name = "Cargo Bay EFTPOS scanner"},/obj/effect/floor_decal/corner/brown{dir = 9},/obj/machinery/firealarm{dir = 8; pixel_x = -26},/obj/machinery/light{dir = 8},/turf/simulated/floor/tiled,/area/quartermaster/office)
|
||||
"cqE" = (/obj/structure/table/woodentable,/obj/item/weapon/melee/chainofcommand,/obj/machinery/button/remote/airlock{desc = "A remote control switch for the Starboard Bridge Doors."; id = "sbridgedoor"; name = "Starboard Bridge Door Control"; pixel_x = 4; pixel_y = -6},/obj/machinery/button/remote/airlock{desc = "A remote control switch for the captain's office."; id = "captaindoor"; name = "Captain's Office Door Control"; pixel_x = 4; pixel_y = 6},/turf/simulated/floor/wood,/area/crew_quarters/captain)
|
||||
"cqF" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 5},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 5},/turf/simulated/floor/tiled,/area/quartermaster/office)
|
||||
"cqG" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 1},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 1},/obj/structure/disposalpipe/segment{dir = 1; icon_state = "pipe-c"},/turf/simulated/floor/tiled,/area/quartermaster/office)
|
||||
"cqH" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/turf/simulated/floor/tiled,/area/quartermaster/office)
|
||||
@@ -6417,7 +6417,7 @@
|
||||
"ctu" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/machinery/door/firedoor/border_only,/turf/simulated/floor/plating,/area/hallway/secondary/docking_hallway)
|
||||
"ctv" = (/obj/structure/table/standard,/obj/item/weapon/tape_roll,/obj/item/weapon/storage/firstaid/regular{pixel_x = 6; pixel_y = -5},/obj/effect/floor_decal/corner/brown/full,/turf/simulated/floor/tiled,/area/quartermaster/office)
|
||||
"ctw" = (/obj/structure/table/standard,/obj/item/weapon/hand_labeler,/obj/effect/floor_decal/corner/brown{dir = 10},/turf/simulated/floor/tiled,/area/quartermaster/office)
|
||||
"ctx" = (/obj/structure/table/standard,/obj/machinery/power/apc{dir = 2; name = "south bump"; pixel_y = -24},/obj/machinery/light_switch{pixel_x = -12; pixel_y = -24},/obj/effect/floor_decal/corner/brown{dir = 8},/obj/structure/cable/green{d2 = 4; icon_state = "0-4"},/turf/simulated/floor/tiled,/area/quartermaster/office)
|
||||
"ctx" = (/obj/structure/table/standard,/obj/item/weapon/folder/yellow,/obj/effect/floor_decal/corner/brown{dir = 9},/obj/machinery/firealarm{dir = 8; pixel_x = -26},/obj/machinery/light{dir = 8},/turf/simulated/floor/tiled,/area/quartermaster/office)
|
||||
"cty" = (/obj/structure/cable/green{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/structure/cable/green{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/turf/simulated/floor/tiled,/area/quartermaster/office)
|
||||
"ctz" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply{dir = 4},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/obj/machinery/alarm{pixel_y = 23},/turf/simulated/floor/wood,/area/crew_quarters/bar)
|
||||
"ctA" = (/obj/effect/floor_decal/corner/brown{dir = 10},/obj/machinery/status_display/supply_display{pixel_y = -32},/turf/simulated/floor/tiled,/area/quartermaster/foyer)
|
||||
@@ -6795,7 +6795,7 @@
|
||||
"cAI" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced,/obj/machinery/door/firedoor/border_only,/obj/structure/cable/green{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plating,/area/ai_monitored/storage/eva)
|
||||
"cAJ" = (/obj/structure/closet,/obj/item/weapon/storage/backpack/dufflebag,/turf/simulated/floor/tiled,/area/quartermaster/qm)
|
||||
"cAK" = (/obj/structure/closet/secure_closet/quartermaster,/turf/simulated/floor/tiled,/area/quartermaster/qm)
|
||||
"cAL" = (/obj/structure/table/standard,/obj/item/weapon/coin/silver{pixel_x = -3; pixel_y = 3},/obj/item/weapon/coin/silver,/obj/item/device/eftpos{eftpos_name = "Quartermaster EFTPOS scanner"},/obj/machinery/alarm{dir = 1; icon_state = "alarm0"; pixel_y = -22},/obj/machinery/light,/turf/simulated/floor/tiled,/area/quartermaster/qm)
|
||||
"cAL" = (/obj/structure/table/standard,/obj/machinery/power/apc{dir = 2; name = "south bump"; pixel_y = -24},/obj/machinery/light_switch{pixel_x = -12; pixel_y = -24},/obj/effect/floor_decal/corner/brown{dir = 8},/obj/structure/cable/green{d2 = 4; icon_state = "0-4"},/obj/item/device/retail_scanner/civilian{tag = "icon-retail_idle (NORTH)"; icon_state = "retail_idle"; dir = 1},/turf/simulated/floor/tiled,/area/quartermaster/office)
|
||||
"cAM" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/effect/floor_decal/industrial/warning{dir = 1},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor/plating,/area/maintenance/portsolar)
|
||||
"cAN" = (/obj/structure/disposalpipe/segment,/turf/simulated/floor,/area/maintenance/apmaint)
|
||||
"cAO" = (/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/disposalpipe/segment,/turf/simulated/floor,/area/maintenance/apmaint)
|
||||
@@ -7385,7 +7385,7 @@
|
||||
"cMa" = (/obj/machinery/disposal,/obj/structure/disposalpipe/trunk{dir = 8},/obj/machinery/light{dir = 1},/turf/simulated/floor/lino,/area/hallway/secondary/entry/docking_lounge)
|
||||
"cMb" = (/obj/machinery/vending/cigarette,/turf/simulated/floor/lino,/area/hallway/secondary/entry/docking_lounge)
|
||||
"cMc" = (/obj/machinery/lapvend,/turf/simulated/floor/lino,/area/hallway/secondary/entry/docking_lounge)
|
||||
"cMd" = (/obj/structure/closet/gmcloset{icon_closed = "black"; icon_state = "black"; name = "formal wardrobe"},/obj/item/device/eftpos{eftpos_name = "Bar EFTPOS scanner"},/obj/item/glass_jar,/obj/machinery/atmospherics/unary/vent_scrubber/on,/turf/simulated/floor/wood,/area/crew_quarters/bar)
|
||||
"cMd" = (/obj/structure/table/standard,/obj/item/weapon/coin/silver{pixel_x = -3; pixel_y = 3},/obj/item/weapon/coin/silver,/obj/machinery/alarm{dir = 1; icon_state = "alarm0"; pixel_y = -22},/obj/machinery/light,/turf/simulated/floor/tiled,/area/quartermaster/qm)
|
||||
"cMe" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/structure/cable/green{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor/wood,/area/crew_quarters/bar)
|
||||
"cMf" = (/obj/structure/reagent_dispensers/beerkeg,/obj/machinery/camera/network/civilian{c_tag = "CIV - Bar Storage"; dir = 2},/turf/simulated/floor/wood,/area/crew_quarters/bar)
|
||||
"cMg" = (/obj/machinery/button/remote/blast_door{id = "bar"; name = "Bar Shutters"; pixel_x = -26; pixel_y = 0},/obj/machinery/light_switch{pixel_x = -36; pixel_y = 0},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/light{dir = 8; icon_state = "tube1"; pixel_y = 0},/turf/simulated/floor/lino,/area/crew_quarters/bar)
|
||||
@@ -9724,6 +9724,8 @@
|
||||
"dEZ" = (/obj/effect/decal/cleanable/dirt,/obj/effect/floor_decal/corner/blue{dir = 5},/obj/machinery/atmospherics/unary/vent_scrubber/on,/turf/simulated/floor/tiled/white,/area/medical/first_aid_station_starboard)
|
||||
"dFa" = (/obj/structure/bed/chair/office/dark{dir = 4},/obj/machinery/button/remote/blast_door{id = "first_aid_station"; name = "Security Shutters"; pixel_y = 25},/obj/effect/floor_decal/corner/blue{dir = 5},/turf/simulated/floor/tiled/white,/area/medical/first_aid_station_starboard)
|
||||
"dFb" = (/obj/structure/table/reinforced,/obj/effect/floor_decal/corner/blue/diagonal,/obj/effect/floor_decal/corner/blue/diagonal{dir = 4},/obj/machinery/door/window/eastright{base_state = "left"; dir = 8; icon_state = "left"; name = "First-Aid Station"; req_access = list(5)},/obj/machinery/door/blast/shutters{dir = 4; id = "first_aid_station"; layer = 3.1; name = "Security Shutters"},/obj/item/device/radio{anchored = 1; broadcasting = 0; canhear_range = 1; frequency = 1487; icon = 'icons/obj/items.dmi'; icon_state = "red_phone"; listening = 1; name = "Medical Emergency Phone"},/turf/simulated/floor/tiled/white,/area/medical/first_aid_station_starboard)
|
||||
"dFc" = (/obj/structure/table/reinforced,/obj/machinery/cash_register/civilian{tag = "icon-register_idle (WEST)"; icon_state = "register_idle"; dir = 8},/obj/machinery/door/blast/shutters{dir = 4; id = "bar"; layer = 3.1; name = "Bar Shutters"},/turf/simulated/floor/lino,/area/crew_quarters/bar)
|
||||
"dFd" = (/obj/structure/closet/gmcloset{icon_closed = "black"; icon_state = "black"; name = "formal wardrobe"},/obj/item/glass_jar,/obj/machinery/atmospherics/unary/vent_scrubber/on,/obj/item/device/retail_scanner/civilian,/obj/item/device/retail_scanner/civilian,/turf/simulated/floor/wood,/area/crew_quarters/bar)
|
||||
|
||||
(1,1,1) = {"
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
@@ -9885,8 +9887,8 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaczaczacAaczaczacOacAaadaadaadaadaaaaaaaaaaadaadaadacOaadaaaaahaahaahbNgbQFbQGbQHbQHbQIbNgahyahyahyaahaahbtHbQJbQKbQLbQLbQLbQLbQLbQLbQLbQLbQLbQLbQLbQLbQLbQLbQMbQNbQObQPbQQbQRbQSbQTbQUbQVbQWbQXbQYbQZbyfbJRbRabRbbRcbRdbRebGYbRfbRgbRhbNpbNpcGQbRgcIgbRlcNkbGYahyahybKdbecbcnbRmbRnbRobRpbRqbRrbRsbRtbRubRvbRwbFubRxbPvbRybNCbRzbRAbRBbRBbRCbRDbREbNCaahaZdaZHbEgbRFbRGbFJbRHbRIbFJbFJbFJbFJbRJbEgbupbTlbTkbRNbRObRPbRObRPbvEbRTbRUbRUbRVbRWbetaUvbvFaToahybMkbRYbRZbSabNWbSbbScbSdbSebSfbSgbShbSibMpbvIbKSbSkbQfbSlbSmbKWbKWbKWbKWbKWbSnbSobSpbSpbSpbSpbSpbSqbSrbSqbSqbSqbSqbSqbSsbStbSubSvbSwbSwbSwbLdbLdbSxbSycNtbSxbLdbLdaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahaahaahaahbOLbSAbQGbQHbQHbSBbOLbORahyahyaahaahbtHbSCbIibSDbtHbtHbtHbtHbtHbtHbtHbtHbtHbtHbtHbtHbtHbtHbtHbSEbSEbSFbSGbSEbSHbSIbSJbSKbSLbSMbSNbSObSPbSLbSLbSLbSLbSLbSLbSQbSRbSQbSSbSSbSQbSTbSQbSUbSQbGYahyahybKdbecbcnbSVbbobbobFubFubFubFubFubFubSWbFubFubSXbSYbSZbNCbTabTbbTcbTdbNCbTebTfbNCaahaZdaZHbEgbFLbvJbEgbEgbThbTibTibTibTibEgbEgbTjbTkbTlbTmbTnbTkbTlbTkbTobTpaUvaUvaUvaUvbTqbTrbTsaToahybMkbGxbTubTvbTubTtbScbTxbTybVhbTAbTBbTCbTDbTEbKSbTFbTGbTHbTIbTJbTKbTLbTMbTNbTObTPbTQbTRbTSbTTbSpbTUbTVbTWbTXbTYbTZbSqbUabUbbSubUcbUdbUebSuaahaahbSxbUfbUgbSxaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahaahaahaahbLkbNebNfbNgbUhbNgbNfbNebLkahyahyaahaahbtHbtHbIibtHbtHaahaahaahaahaahaahaahaahaahaahaahaahaahaahbSEbUibUjbUkbUlbSEbUmbUnbUnbUobUpbUqbUrbUsbUtbUubUvbUwbUxbSLbUybUzbUAbUBbUBbUybUzbUybUCbUDbUEahyahybKdbecbcnaZzbUFahybUGbUHbUIbUJbUKbULbULbUMbUGbUNbUObUPbNCbNCbUQbNCbNCbNCbNCbNCbNCaahaZdaZHbURbvMbUTbUUbUVbUWbUWbUWbUWbUWbYobUYbTkbTlbUZbVabVbbVcbTkbTlbVdbVeaUvaUvbVfbVgbdvaUvbvPaToahybMkbVibVjbVkbVlbVmbVnbVobVpbVqbVrbVsbMpbKNbKNbKSbKSbKSbKSbKSbTJbVtbVubVvbVwbVxbVybVzbVAbVBbVCbSpbVDbVEbVFbVGbVGbVHbSqbVIbVJbSubVKbVLbVMbSuaahaahbSxbVNcAhbSxaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahaahaahaahbLkbLlbVPbVQbVRbVSbVTbLmbLkahyaahaahaahaahbtHbIibtHaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahbSEbVUbVVbVWbVXbVYbVZbWabWbbWcbWdbWebWfbWgbWhbWibWibWjbWkbSLbWlbWmbWlbWnbUBbWlbWmbWlbUCbUDbUEahyahybKdbWobcnaZzbamahybWpbWqbULbWrbWsbWsbWtbWubUGbWvbWwbUPbWxbWybWzbWAbWBbWCbWDbWEbNCaahaZdbWFbWGbWHbWIbWJclZbWLbWKbWKbWKbWLbWKbWJbTlbTkbWNdBObVabWPbTlbTkbWQbURbPObPPaTobHCblDbHCaToaToahybMkbWRbWSbMkbWRbWSbMkbMkbMkbWTbWUbWVbWWbKNaahaahaahaahaahaahbTJbWXbWYbWZbTNbXabXbbTQbXcbXdbXebSpbXfbXgbXhbXibXjbXkbSqbXlbXmbXnbXobXpbSubSuaahaahbSxbXqbXrbSxbSxaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahaahaahaahahyahybXsbXtbXubXvbXsahyahyahyaahaahaahaahbtHbIibtHaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahbSEbXwbXxbXybXzbXAbXBbXCbXDbXEbXFbXGbXHbXIbXJbXKbXLbXMbXNbSLbXObUBbUBbXPbXQbXRbXRbXRbXSbXTbUEahyahybXUbXVbhqbXWbamahybXXbXYbXZbYabYbbYcbYdbYebYfbYgbYhbYibYjbYjbYkbTwbYmbYnbYnbvRbNCaahaZdbYpbURbYqbTkbTlbWJbYrbWJbYrbWJbYrbWJbYsbTkbTlbUZbYtbVbbVcbTkbTldBPbURahyahyaTobYvbetbYwaToahyahyahyahyahyahyahyahyahyahybKNbKNbYxbYybKNbKNaahaahaahaahaahaahbTJbTJbTJbTJbTJbYzbYAbSpbSpbSpbSpbSpbSqbSqbSqbSqbSqbSqbSqbYBbYCbSubSubSubSuaahaahaahbSxbYDbVObYEbSxaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahaahaahaahbLkbLlbVPbVQbVRbVSbVTbLmbLkahyaahaahaahaahbtHbIibtHaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahbSEbVUbVVbVWbVXbVYbVZbWabWbbWcbWdbWebWfbWgbWhbWibWibWjbWkbSLbWlbWmbWlbWnbUBbWlbWmbWlbUCbUDbUEahyahybKdbWobcnaZzbamahybWpbWqbULbWrbWsbWsbWtbWubUGbWvbWwbUPbWxbWybWzbWAbWBbWCbWDbWEbNCaahaZdbWFbWGbWHbWIbWJclZbWLbWKbTwbWKbWLbWKbWJbTlbTkbWNdBObVabWPbTlbTkbWQbURbPObPPaTobHCblDbHCaToaToahybMkbWRbWSbMkbWRbWSbMkbMkbMkbWTbWUbWVbWWbKNaahaahaahaahaahaahbTJbWXbWYbWZbTNbXabXbbTQbXcbXdbXebSpbXfbXgbXhbXibXjbXkbSqbXlbXmbXnbXobXpbSubSuaahaahbSxbXqbXrbSxbSxaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahaahaahaahahyahybXsbXtbXubXvbXsahyahyahyaahaahaahaahbtHbIibtHaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahbSEbXwbXxbXybXzbXAbXBbXCbXDbXEbXFbXGbXHbXIbXJbXKbXLbXMbXNbSLbXObUBbUBbXPbXQbXRbXRbXRbXSbXTbUEahyahybXUbXVbhqbXWbamahybXXbXYbXZbYabYbbYcbYdbYebYfbYgbYhbYibYjbYjbYkcqEbYmbYnbYnbvRbNCaahaZdbYpbURbYqbTkbTlbWJbYrbWJbYrbWJbYrbWJbYsbTkbTlbUZbYtbVbbVcbTkbTldBPbURahyahyaTobYvbetbYwaToahyahyahyahyahyahyahyahyahyahybKNbKNbYxbYybKNbKNaahaahaahaahaahaahbTJbTJbTJbTJbTJbYzbYAbSpbSpbSpbSpbSpbSqbSqbSqbSqbSqbSqbSqbYBbYCbSubSubSubSuaahaahaahbSxbYDbVObYEbSxaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahaahaahaahaahahybYFbYGbYHbYIbYFahyahyahyaahaahaahaahbtHbYJbtHaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahbSEbYKbYLbYMbYNbYObYPbXMbYQbYRbYSbYTbYUbYRbYQbXMbXMbXMbYVbSLbWlbWmbWlbYWbUBbWlbWmbWlbYXbYYbUEbYZbZabeebecbDMbZbbamahybZcbZdbZebZfbZgbZhbZibZjbUGbWvbZkbZlbZmbZnbZobZpbZqbZrbZsbZtbNCaahaZdbYpbURcaAbTlbTkbTlbTkbTlbTkbTlbTkbTlbTkbTlbTkbTlbZvbTjbZwbTlbTkbTjbZybZxahybJeaUvbetaUvbJeahyahyahyahyahyahyahyahyahyahyahybZzbZAbZBbZzaahaahaahaahaahaahaahbZCbZDbZEbZFbZGbTObTPbZHbZIbZJbZKbZLaahaahaahaahaahaahbZMbZNbZObZPbZQbZMaahaahaahaahbSxbZRbZSbZTbSxaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaahaahaahaahaahahybZUbZVbZWbZUbZUahyahyaahaahaahaahaahbZXbZYbZXaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahbSEbZZcaacabcacbSEcadcaecaecaecafcagcahcaicaecaecaecajcakbSLbUybUybUybUBbUBbUybUybUybYXcalcamcanbecbecbecbcnaZzbamahycaocapbZecaqcarcarcasbULbUGbWvcatcaucavcavcawcaxcaybYnbYncazbNCaahaZdcaBaZdccebTkbTlbTkbTlbTkbTlbTkbTlbTkbTlbTkbTlbTkcaCcaDcaEcaFcaGcaHcaIahyahybrGaUvbetcaJbrGahyahyahyahyahyahyahyahyahyahyahycaKcaLcaMcaNaahaahaahaahaahaahaahbZCcaOcaPcaQcaRcaScaTcaUcaVcaWcaXbZLaahaahaahaahaahaahbZMcaYcaZcbacbbbZMaahaahaahaahcbccbdcbecbfcbcaahahyaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaahaahaahaahaahahycbgcbhcbicbjcbgahyahyaahaahaahaahaahbZXbZYbZXaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahbSEcbkcblcbmcbnbSEbNZcbpcbqcbrcbscbtcbucbvcbwcbxcbycbzcbAbSLcbBcbCbUBbUBbUBbUBcbDbUBcbEcbFcamcancbGcbHbecbcnaZzcbIahybUGcbJcbKcbLcbMbULcbNbUGcbOcbPcbQcbObNCcbRcbScbTcbUcbVcbWcbXbNCaahaZdbYpaZdcDsbTlbTkbYsbTmbTnbTkbTlbTkcbZbTmbTlbTkbTlccabTnccbbTlbTkdBQcaIahyahybrGccdbgJaUvbrGahyahyahyahyahyahyahyahyahyahyahyccBccfccgcaNaahaahaahaahaahaahaahbZCcchcciccjbZGcckcclbZHccmccnccobZLaahaahaahaahaahaahbZMbZNbZMbZMbZMbZMaahaahaahaahcbcccpccqccrccscctccuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
@@ -9905,22 +9907,22 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadbLjaahaahcjgcnUckXcnVcnWcnXcnYcnZcoacobcoacoccoocoecleclecofchYbRKchYaahaahaahaahaahaahaahaahaahcmjcogcohcoicllcojcokcolcnlcomcllaahaahbZXconcjubZXaahaahaahaahaahahycowckFckFcopcoqckIckIcorckIckIcoscjzahydEOdEOdERdEOdEOcotcimbcnbeccoAbboclmckLckMciFclmckMciFcovcoGcoxcoycozcoScoxcoBcovciFclmckLckMciFcoCckicoDcmBcoEciFclmckLckMciFciFclmckLckMczAclmckLckMciFciFdCQckMciFclmckLckMciFcoFckickicfRcoXciFciFaahaahaahaahaahaahaahaahaahaahaahaahaahbZMbZMcoHcoIcoJcoJcoJcoJcoJcoJcoJcoJcoKcoLcoLcoLcoMcoNcoObZMbZMaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaadbLjaahaahcjgcoPckncoQcmacoRcpqcoTcoUcoVcoacoWcpPcoYcoZcpacpbchYcpcchYaahaahaahaahaahaahaahaahaahcmjcpdcohcpecllcpfcpgcphcpicokcllaahaahcpjbZXcpkbZXcpjaahaahaahaahahyahyahyahycjzcplcpmcpncpocppcpTcprcjzahyahyahyahyahybbobbocpscptcmzbbobboahyahyahyahyahyahycovcNHcpvcpwcpxcpycpzcpAcpBcNIcovahyahyahyciFciFcpDcpEckjciFciFahyahyahyczZcDncDncDncEvcEvcEvcEVcEVcEWczZahyahyahyahyahyahyciFciFcjIcjIcjKciFciFaahaahaahaahaahaahaahaahaahaahaahaahaahaahbZMcpFcpGcpHbZMbZMbZMbZMbZMbZMbZMbZMbZMbZMbZMbZMbZMcpIcoMcpJbZMaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaadaaaaahaahaahcjgcpKcpLcpMcpNcpOcqecpQcoacpRcoacpSchYcqzcpUcqzcpVcpWchZchYcpXcpXcpXcpXcpXcpXcpXcpXcpXcmjcmjcpYcmjcllcllcpZcqacllcpZcllcpXcpjcpjcqbcqccqdcpjcpjcpjcpjcpjcrIcqfcqfcqgcjzcjzcjzcjzcqhcjzcjzcjzcjzcrIcqfcqfcqfcqgcpjcqicqjcqkcqlcqmcpjcpjahyahyahyahyahycovcqncqocqpcqqcqrcqscrJcpBcqucovahyahyahyahycqvcqwcqxcqycqvahyahyahyahyczZcFecEVcEVcEvcEvcEVcEVcEVcIFczZahyahyahyahyahyahyahycrNckicqAcqBciFaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahbZMcqCcgnbZMbZMaahaahaahaahaahaahaahaahaahaahaahbZMbZMcgncqDbZMaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaadaaaaaaaahaahaahcjgcqEckncqFcqGcqHcqIcqJcqJcqKcqLcqMcqNcqOcqOcqPcqQcqRcqScqTcqUcqVcqWcqXcqYcqYcqYcqOcqZcracqYcrbcrccqYcqYcqOcrdcrecrfcrgcrhcricrjcrkcrlcrmcrncrocrpcrqcrrcrscrtcrucrucrvcrucricrwcrxcrycrzcrAcrBcrAcrCcrAcrDcrAcrzcrAcrEcrFcrGcrucrHcrRahyahyahyahyahycrWcqtcrKcrLcrLcrMcrLcrLcpBcqtcrWahyahyahyahycsKcrOcrPcqycsKahyahyahyahycIHcJacJacEVcEVcEVcEVcEVcEVcJKcrQcrQcrQcsLcrScrTcrUcrQcrQctccsNctccrQcrQcrQcrQaahaahaahaahaahaahaahcrXcrXcrXcrXcrXbZMcrYcrZcrZcrZcrZcrZaahaahaahaahaahaahaahcsacsacsacsacsacsbbZMcsccsccsccsccscaahaahaahaahaahaahaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaadaaaaaaaahaahaahcjgctxckncqFcqGcqHcqIcqJcqJcqKcqLcqMcqNcqOcqOcqPcqQcqRcqScqTcqUcqVcqWcqXcqYcqYcqYcqOcqZcracqYcrbcrccqYcqYcqOcrdcrecrfcrgcrhcricrjcrkcrlcrmcrncrocrpcrqcrrcrscrtcrucrucrvcrucricrwcrxcrycrzcrAcrBcrAcrCcrAcrDcrAcrzcrAcrEcrFcrGcrucrHcrRahyahyahyahyahycrWcqtcrKcrLcrLcrMcrLcrLcpBcqtcrWahyahyahyahycsKcrOcrPcqycsKahyahyahyahycIHcJacJacEVcEVcEVcEVcEVcEVcJKcrQcrQcrQcsLcrScrTcrUcrQcrQctccsNctccrQcrQcrQcrQaahaahaahaahaahaahaahcrXcrXcrXcrXcrXbZMcrYcrZcrZcrZcrZcrZaahaahaahaahaahaahaahcsacsacsacsacsacsbbZMcsccsccsccsccscaahaahaahaahaahaahaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaadaaaaaaaaaaaaaahaahcjgcsdcknckncsecsfcsgcshcshcsicshcsjcskcslcsmcsncsncsncsocspcsqcsrcsqcsqcsqcsscsqcsqcsqcstcsqcsqcsqcsscsqcsqcsqcstcsqcsqcsucsvcswcsxcsycswcswcsvcswcswcswcszcsAcsBcrucrucrucricrucsCcswcsDcswcsEcswcswcswcsFcswcsvcswcsGcsHcsIcrucsJcsRahyahyahyahyahyctmcqtcrKcrLcsMcsMcsMcrLcpBcqtctmahyahyahyctucsOcrOcsPcsQcumcsSahyahyahycMYcJacJacNfcEVcEVcEVcEVcEVcrQcrQcwtctdcsXcwtcwvcsXcsYcwwctbcsYctbctecxOcwxcrQcrQaahaahcrXcrXcrXcrXcrXctfctgcthcrXctictjcrZctkctlcurcrZcrZcrZcrZcrZcsacsacsacsactnctoctpcsactqctrcscctscttcuTcsccsccsccsccscaahaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaadaaaaaaaaaaaaaaabLjbLjcjgctvctwctxctycmacjgbRMctActBctCctDctEctFctGctHcrfcrfcrfctIctJctKcrfctLctMctNcrfctFctOcrfcrfctPctQctRctSctTctQctQctUctVctWcrocrpctXctYctZcuacubcuacuacuacuacuccudcuacuacuacubcuecufcuacubcuacugcuacuhcuicuacuacubcuacujcrucukcruculcuYahyahyahyahyahyctmcuncuocrLcsMcupcsMcrLcuqcunctmahyahyahycvacqycrOcrPcqycqycvaahyahyahycMYcPocJacPvcJacQdcEVcEVcEVcrQcxScsYcwrcwscwscwscwscwscwsczmczlczoczncPbcPbcBjcrQaahaahcrXcuucuvcuucrXcuwcuxcuKcrXcuzcuAcrZcuNcuCcuDcrZcuEcuFcuEcrZcuGcuHcuGcsacuIcuJcvzcsacuLcuMcsccwEcuOcuPcsccuQcuRcuQcscaahaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaadaaaaaaaaaaaaaaabLjbLjcjgctvctwcALctycmacjgbRMctActBctCctDctEctFctGctHcrfcrfcrfctIctJctKcrfctLctMctNcrfctFctOcrfcrfctPctQctRctSctTctQctQctUctVctWcrocrpctXctYctZcuacubcuacuacuacuacuccudcuacuacuacubcuecufcuacubcuacugcuacuhcuicuacuacubcuacujcrucukcruculcuYahyahyahyahyahyctmcuncuocrLcsMcupcsMcrLcuqcunctmahyahyahycvacqycrOcrPcqycqycvaahyahyahycMYcPocJacPvcJacQdcEVcEVcEVcrQcxScsYcwrcwscwscwscwscwscwsczmczlczoczncPbcPbcBjcrQaahaahcrXcuucuvcuucrXcuwcuxcuKcrXcuzcuAcrZcuNcuCcuDcrZcuEcuFcuEcrZcuGcuHcuGcsacuIcuJcvzcsacuLcuMcsccwEcuOcuPcsccuQcuRcuQcscaahaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaadaadaadaadaadaadaadaadaadcuScuScvgcuUcuScuVcuWcuScuScuScuXcvocuZcuXcvrcvbcuXcvccvdcvecvfcpXcpXcpXcpXcpXcpXcpXcpXcpXcpXcpXcpXcpXcpXcpXcpXcpXcpXcpXcpXcpXcpjcvNcvhcrFcvicvjcpjcrIcqfcqfcqfcqfcqfcqfcqfcqgcpjbRRcvlcqdcpjcrIcqfcqgcpjcrIcqfcqgcpjcvmcrucrucrGcvncpjcpjahyahyahyahyahycwjcvpcuocrLcrLcrLcrLcrLcuqcvqcwjahyahyahycqvcwqcrOcrPcqycvscqvahyahyahycRUcWQcJacJacJacJacEVcEVcWRcrQcBkcsYcsYcsYcvucvucvucvucvuctbcDpcwzcsYcsYcsYcducrQaahaahcrXcvwcvxcvwcrXcrXcvycrXcrXcwFcwGcrZcrZcvBcrZcrZcvCcvDcvCcrZcvEcvFcvEcsacsacvGcsacsacvHcvIcsccsccvJcsccsccvKcvLcvKcscaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadcvMcvMcvMcvMcvMcvMcvMaadaaacxfcvOcvPcvQcvRcvScvTcvUcvVcvWcvXcvYcvZcwacwbcwccuXcpXcpXcpXcpXcpXaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahcpjcwdcwecwfcwgcwdcpjahyahyahyahyahyahyahyahyahycpjcwhcwicwhcpjahyahyahyahyahyahyahycxAcqicqicqicwkcqicxAahyahyahyahyahyahycovcuncwlcwmcwncwocuncuncuqcwpcovahyahyahycsKcqycrOcrPcqycqycsKahyahyahyczZcZMcJacJadcEdcLcDncEVcEVcrQcvucvucsYcsYcBicDqdBUcxPbdUctbcxRcsYcFdcFdcFdcFdcrQaahaahcrXcwBcwCcwDcwDcwDcwJcwHcwLcwKcwUcwTcwXcwVcwMcwNcwMcwOcwPcrZcwQcwRcwScwScwScyacyecybcyqcyfcwYcwZcxacxbcxccxbcxdcxecscaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadcvMcvMcvMcvMcvMcvMcvMaadaaacxNcxgcxgcxgcxgcvScvTcxhcxhcxicuXcxjcxkcxlcxmcxncuXcxocxpcxqcxraahaahaahaahaahcxrcxrcxrcxrcxrcxrcxrcxrcxrcxrcxrcxrcxrcxrcxrcxrcxrcxscxtcxucxvcxwcwhcwhcwhcwhcwhcwhcwhcwhcwhcwhcwhcxxcxycwhahyahyahyahyahyahyahyahycxzcyBcxBczkcxDcyBcxzahyahyahyahyahyahycovcovcxEcxFcxGcxHcxIcxJcxKcovcovahyahyahycumcsScxLcxMcqyctucsOahyahyahyczZczZdcYdcEdcEdcEcJacDnddacrQcEFcxPcsYcsYcxQcxQcxQcxQcxQctbcxRcsYcFdcFdcFdcFbcrQaahaahcrXcxVcxWcxXcxYcxZcytcyrcrXcyccydcrZcAkcyucygcyhcyicyjcykcrZcylcymcyncyocypcAqcAucsacyscAxcBocBncyvcywcyxcyycyzcyAcscaahaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadcvMcvMcvMcvMcvMcvMcvMczTcyCcyDcyEcyFcxgcxgcvScyGcyHcyIcyJcyKcyLcyMcyNcyOcyPcuXcxqcxqcxqcxrcxrcxrcxrcxrcxrcxrcyQcyRcyScyScyScyScyScyScyScyScyScyScyScyTcyScyUcyVcyWcyXcyYcyVcyZczaczbczaczaczaczaczaczaczaczaczaczccwhahyahyahyahyahycxzcxzcxzcxzczdczebTgczgczhcxzcxzcxzcxzahyahyahyahycovcovcovcziczjczicovcovcovahyahyahyahyahycvacrOcrPcqycvaahyahyahyahyahyczZczZczZczZddeczZczZczZcrQcxQcxQcDocwycwycwycFccHvcHrcJzcHxcsYcFdcFdcFdcFdcrQaahaahcrXcrXcrXcrXcrXcrXcBqcrXcrXczpcuAcrZcrZcBrcrZcrZcrZcrZcrZcrZcsacsacsacsacsacBucsacsacuLcBvcsccsccsccsccsccsccsccsccscaahaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadcvMcvMcvMcvMcvMcvMcvMczrczsczrczscztczuczvczwczxczyczzcxgcArczBczCczDczEcuXcuXczFczGczGczGczGczGczGczGczGczGczGczHcxqcxrcxrcxrcxrcxrczIczIczJcxrcOHczKcxqcxrczLczMczNczOczPcwhczQczQddgddmddkczQczQcwhcwhcwhcwhczRcwhahyahyahyahyahycxzczSczScABczUczVczWczXczYcAIcAacAacxzaahahyahyahyahyaahaahczicAbcziaahaahaahahyahyahyahyahycqvcAccAdcAecqvahyahyahyahyahyahyahyahycBgcQzcBgahyaahcrQcJNcxTcKMcxTcxTcFacFacKNcxTcxTcMecDrcFdcFdcFdcmYcrQaahaahaahaahaahaahcAicAjcBxcAlcAicAmcAncAocApcCccBbcAoaahaahaahaahaahaahaahcAscAtcClcAvcAscAwcCmcAycAzcAAcBAcAyaahaahaahaahaahaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaaaaaaaaaadcvMcvMcvMcvMcvMcvMcvMcACcADcACcAEcAFcxgcxgcvScvTcAGczzcAHcBTcAJcAKcALbWMcuXcxqcANcxqcxqcxrcxrcxrcxrcxrcxrcxrcxrcAOcxrcxraahaahaahcxrcAPcAPcAPcxrcxrcxrcxrcwdcwdcAQcARcAScwdcwdcwhcwhcwhcwhcwhczQcwhcwhaahaahcwhczRcwhaahahyahyahyahycxzcATczecAUcAVczeczeczgcAWcAXczecAYcxzaahahyahyaahaahaahaahczicAZcziaahaahaahcBacCScBccBacqvcqvcBdcBecBfcqvcBgcBgcBgcBgcBgahyahyahycBgcQzcBgaahaahcrQcvucvucMXcGzcGAcGAcGAcNJcGAcGzcNMcsYcNVcNVcNWcNXcrQaahaahcAicAicAicAicAicBmcDycDxcAiczpcBpcAocDDcDCcBscAocAocAocAocAocAscAscAscAscBtcDMcDNcAscBwcBvcAycFkcBycBzcAycAycAycAycAyaahaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadcvMcvMcvMcvMcvMcvMcvMcEBcyCcBBcBCcxgcxgcxgcBDcvTcAGczzcBEcuXcvrcvbcuXcuXcuXcxrcANcBFcxrcxraahaahaahaahaahaahcxrcBGcBHcxraahaahaahcBIcBIcBJcBIcBIaahaahaahaahcwdcBKcxucxvcwdaahaahaahaahaahcwhczQcwhaahaahaahcwhczRcwhaahaahaahahyahycxzcxzcxzcxzcBLcBMcBNcBOcbocxzcxzcxzcxzaahaahaahaahaahaahaahczicAbczicziczicBacBacBQcBRcBacBScEIcrOcrPcqycBUcBgcBVcBWcBXcBgcBgahyahycBgcQzcBgaTWaahcrQcNRcxPcMXcGzcHscHtcHucNUcHwcGzcNMcsYcPccPccPccOVcrQaahaahcAicBZcCacCbcAicAicFlcAicAicCdcvAcAocFmcCecAocAocCfcCgcChcAocCicCjcCkcAscAscFncAscAscvHcFycAycAycCncAycAycCocCpcCqcAyaahaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaaaaaaaaaadcvMcvMcvMcvMcvMcvMcvMcACcADcACcAEcAFcxgcxgcvScvTcAGczzcAHcBTcAJcAKcMdbWMcuXcxqcANcxqcxqcxrcxrcxrcxrcxrcxrcxrcxrcAOcxrcxraahaahaahcxrcAPcAPcAPcxrcxrcxrcxrcwdcwdcAQcARcAScwdcwdcwhcwhcwhcwhcwhczQcwhcwhaahaahcwhczRcwhaahahyahyahyahycxzcATczecAUcAVczeczeczgcAWcAXczecAYcxzaahahyahyaahaahaahaahczicAZcziaahaahaahcBacCScBccBacqvcqvcBdcBecBfcqvcBgcBgcBgcBgcBgahyahyahycBgcQzcBgaahaahcrQcvucvucMXcGzcGAcGAcGAcNJcGAcGzcNMcsYcNVcNVcNWcNXcrQaahaahcAicAicAicAicAicBmcDycDxcAiczpcBpcAocDDcDCcBscAocAocAocAocAocAscAscAscAscBtcDMcDNcAscBwcBvcAycFkcBycBzcAycAycAycAycAyaahaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadcvMcvMcvMcvMcvMcvMcvMcEBcyCcBBcBCcxgcxgcxgcBDcvTcAGczzcBEcuXcvrcvbcuXcuXcuXcxrcANcBFcxrcxraahaahaahaahaahaahcxrcBGcBHcxraahaahaahcBIcBIcBJcBIcBIaahaahaahaahcwdcBKcxucxvcwdaahaahaahaahaahcwhczQcwhaahaahaahcwhczRcwhaahaahaahahyahycxzcxzcxzcxzcBLcBMcBNcBOcbocxzcxzcxzcxzaahaahaahaahaahaahaahczicAbczicziczicBacBacBQcBRcBacBScEIcrOcrPcqycBUcBgcBVcBWcBXcBgcBgahyahycBgcQzcBgaTWaahcrQcNRcxPcMXcGzcHscHtcHucNUdFccGzcNMcsYcPccPccPccOVcrQaahaahcAicBZcCacCbcAicAicFlcAicAicCdcvAcAocFmcCecAocAocCfcCgcChcAocCicCjcCkcAscAscFncAscAscvHcFycAycAycCncAycAycCocCpcCqcAyaahaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadcvMcvMcvMcvMcvMcvMcvMcACcADcACcCrcyFcxgcxgcvScvTcAGczzcCscCtcCucCvcCwcCxcCycCzcCAcxrcxraahaahaahaahaahaahaahcxrcCBcCCcxrcxraahaahcBIcCDcCEcCFcBIcCGcCGcCGaahcwdcCHcCIcCJcCKcCKcCKcCKcCKcCKcCKcCLcCKcCKaahahycwhczRcwhaahaahaahaahahycxzcCMcCNcABcCOczVcCPcCQcCRcEKcCTcCUcxzaahaahaahaahaahaahaahczicCVcCWcCXcCXcCYcCZcDacDbcDccDdcDecDfcDgcDhcDicBgcDjcDkcDlcDmcBgcBgcBgcBgcQzcQzcBgcBgcrQclXcxQcMXcGzcHscHtcIGcOYcHwcGzcNMcsYcQHcQHcOZcPacrQaahaahcAicDtcDucDvcDwcDvcFAcFzcDzcDAcwIcDBcHFcHAcDEcDFcDEcDGcDHcAocDIcDJcDKcDLcDKcHGcHKcDOcwWcHNcDPcDQcDRcDScDTcDScDUcDVcAyaahaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadcvMcvMcvMcvMcvMcvMcvMcDWcDXcDWcDYcDZcEacEbcEccEdcEeczzcEfcCtcEgcEhcEicEjcEkcCtcxrcxraahaahaahaahaahaahaahaahcxrcElcEmcxqcxraahaahcBIcCDcCEcCFcBIcEncEocCGcCGcwdcEpcEqcErcCKcEscEtcEuddpcEwcEwcEwcExcCKahyahycwhczRcwhaahaahaahaahaahcxzcATczecEycAVczecEzczgcEAcFHczeczecxzaahaahaahaahaahaahaahczicECcEDcEEcEDcBackacEGcEHcFXcEJcGfcELcEMcENcEOcEPcEQcERcERcEScETcEUcEUcQeddrcEXcQfcEYcEZcxTcxTcQgcQhcHscJLcJMcQFcHwcGzcNMcQIcQGcQGcQGcQGcQGaahaahcAicFfcFgcFhcFicFjcIKcIJcAicyccydcAocIPcILcFocFpcFqcFrcFscAocFtcFucFvcFwcFxcIQcIRcAscyscAxcKacJRcFBcFCcFDcFEcFFcFGcAyaahaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadcvMcvMcvMcvMcvMcvMcvMcGjcFIcFJcFKcDZcxgcxgcvScFLcyHcFMcFNcFOcFPcFQcFRcFScFTcCtaahaahaahaahaahaahaahaahaahaahcxrcElcFUcxqcxraahaahcBIcFVcCEcCFcBIcFWcGpcFYcFZcwdcGacGbcGccCKcGdcGecEwcEwcEwcEwcEwcEwcCKahyahycwhczRcwhaahaahaahaahaahcxzcxzcxzcxzcGqczecGgcGhcOIcGBczecGkcxzaahaahaahaahaahaahaahczicECcGlcziczicBacGmcGncGocGScEJcHccGrcrPcqycGscBgcGtcGucGvcGwcBgcBgcBgcGxcXdcERcERddqcrQcrQcrQcrQcrQcKJcKKcKLdhfcHwcGzcNMcQGcQGdkBdkBdlCcQGaahaahcAicAicAicAicAicAicKbcAicAiczpcuAcAocAocFmcAocAocAocAocAocAocAscAscAscAscAscKScAscAscuLcBvcAycAycAycAycAycAycAycAycAyaahaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadcvMcvMcvMcvMcvMcvMcvMaadaaacHHcGCcGDcGEcGEcGFcGGcGGcGGcGGcGHcGIcGIcGJcGKcGLcCtbkQbkQahyahyahybkQbkQaahaahaahcxrcGMcGNcxrcxraahaahcBIcGOcGPcOJcBIcGRcHRcCGcCGcwdcGTcCIcGUcGVcGWcGWcGWcGXcGXcGXcGXcGYcCKahyahycwhczRcwhaahaahaahaahaahcxzcGZczecABcHaczVcCPcCQcHbcHSczecGkcxzaahaahaahaahaahaahaahczicAbczicziaahcBacHdcHedmEcHgcHfcHccHicHjcHkcHlcHmcHncHocHmcHpcHmaahcBgcBgcHqcGxcGxdnjcOUdBSdBTcMfcrQcrQcMgcMhdhfcHwcGzdBVdDhdDgdDjdDidDkcQGaahaahaahaahaahaahcHycHzcKTcHBcHycHCcHDcHEcKXcKWcIzcHEaahaahaahaahaahaahaahcHIcHJcLgcHLcHIcHMcLhcHOcHPcHQcJtcHOaahaahaahaahaahaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadcvMcvMcvMcvMcvMcvMcvMaadaaacJwcGCcDXcHTcDXcHUcHVcxgcxgcHWcCtcHXcGKcHYcHZcIacCtbkQcIbcIccIccIccIcbkQaahaahaahcxrcIdcIecxraahaahaahcBIcCDcIfcOScBIcIhcIicIjcIkcwdcIlcImcIncCKcGecIocGecEwcGecEwcEwcEwcCKahyahycwhczRcwhaahaahaahaahaahcxzcIpczecIqcAVcIrcIscItcAWcIuczecGkcxzaahaahaahaahaahaahaahczicAbcziaahaahcBacIvcIwcHhcFXcIycKDcrOcrPcIAcDicHmcIBcICcIDcIEcHmaahaahcBgcHqcBgcOTdDlcNKcNTcNLcNNctzcNOcNPcNQdDmcNScNTdDncQGdDodDqdDpdDrcQGaahaahcHycHycHycHycHycIIcMpcMocHyczpcuAcHEcMqcIMcINcHEcHEcHEcHEcHEcHIcHIcHIcHIcIOcMrcMscHIcuLcBvcHOcMtcIScITcHOcHOcHOcHOcHOaahaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaadcvMcvMcvMcvMcvMaadaadaadcuScuScuScuScuScuScuScIUcIVcIWcIXcIYcIZddOcJbcCtcCtahycIccJccJdcJccIcahyahyaahcJecJecJfcJgcJeaahaahaahcBIcCDcJhcJicJjcJkcJlcJmcJmcwdcJncJocJpcCKcJqcGecEwcEwcEwcEwcJrcExcCKahyahycwhczRcwhaahaahaahaahaahcxzcJsczecMLcJuczVcJvczXczYcNgczeczecxzaahaahaahaahaahaahaahczicAbcziaahaahcBacJxcJycIxcGScJAcJBcJCcJDcJEcJFcHmcJGcJHcJIcJJcHmaahaahcBgcGycBgcBgcBgcrQcMdcsYcOWcOXcrQcHtdDscOYdDtcsYdDucQGdDvcQGdDwcQGcQGaahaahcHycJOcJPcJQcHycHycMucHycHycJScvAcHEcMvcJTcHEcHEcJUcJVcJWcHEcJXcJYcJZcHIcHIcMwcHIcHIcvHcMxcHOcHOcKccHOcHOcKdcKecKfcHOaahaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaadcvMcvMcvMcvMcvMaadaadaadcuScuScuScuScuScuScuScIUcIVcIWcIXcIYcIZddOcJbcCtcCtahycIccJccJdcJccIcahyahyaahcJecJecJfcJgcJeaahaahaahcBIcCDcJhcJicJjcJkcJlcJmcJmcwdcJncJocJpcCKcJqcGecEwcEwcEwcEwcJrcExcCKahyahycwhczRcwhaahaahaahaahaahcxzcJsczecMLcJuczVcJvczXczYcNgczeczecxzaahaahaahaahaahaahaahczicAbcziaahaahcBacJxcJycIxcGScJAcJBcJCcJDcJEcJFcHmcJGcJHcJIcJJcHmaahaahcBgcGycBgcBgcBgcrQdFdcsYcOWcOXcrQcHtdDscOYdDtcsYdDucQGdDvcQGdDwcQGcQGaahaahcHycJOcJPcJQcHycHycMucHycHycJScvAcHEcMvcJTcHEcHEcJUcJVcJWcHEcJXcJYcJZcHIcHIcMwcHIcHIcvHcMxcHOcHOcKccHOcHOcKdcKecKfcHOaahaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaacaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaadaadaadaadaadaadaaaaadbkQaahaahaahaahaahcuScuScuScuScCtcCtcCtcCtcCtcCtaahahycIccJccJccJccIcahyahyaahcJecKgcKhcKicJecKjcKjcKjcBIcBIcKkcKlcBIcKmcKncKocKpcKqcKrcKscKtcKqcKucGedeccKvcEwcKwcKwcKwcCKahyahycwhczRcwhaahaahaahaahaahcxzcKxczecHScKyczecKzczgcKAcHScKBcKBcxzaahaahaahaahaahaahaahczicAbcziaahcKCcKCcNYcKEcKFcKCcKCcKCcKGcKHcKIcKCcKCcKCcKCcKCcKCcKCcKCaahcBgcHqcBgaahaahcrQcrQcQAcQBcQCcrQcQDcQEdDydDxcsYcsYcQGdDzcQGdDAcQGaahaahaahcHycKOcKPcKQcKRcKQcMzcMycKUcDAcwIcKVcMBcMAcKYcKZcKYcLacLbcHEcLccLdcLecLfcLecMCcMDcLicwWcHNcLjcLkcLlcLmcLncLmcLocLpcHOaahaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaadaaaaaaaaaaaaaaaaaaahyaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahahycIccLqcLrcLscIcahyaahaahcJecLtcLucLvcJecLwcLxcLycLzcBIcLAcBIcCGcCGcLBcCGcLCcKqcLDcLEcLFcKqcLGcLGcLGcLGcLGcLGcLGcLGahyahyahycwhczRcwhcziaahaahaahaahcxzcxzcxzcxzcLHcLIcLJcLKcLLcxzcxzcxzcxzaahaahaahaahaahaahcziczicAbczicKCcKCcLMcLNcLOcLPcLQcLRcLScLTcLUcLVcLWcLXcLYcLZcMacMbcMccKCcKCcBgcHqcBgahyaahaahcrQcrQcrQcrQcrQcrQcrQcrQcrQdDCdDBcQGcQGcQGcQGcQGaahaahaahcHycMicMjcMkcMlcMmcMndBWcHycyccydcHEdBYdBXdCadBZdCcdCbdCedCddCgdCfdCidChdCkdCjdClcHIcysdCmdCodCncMEcMFcMGcMHcMIcMJcHOaahaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadaadaaaaaaaaaaaaaahaahaahaahaahaahaahaahaahaahaahaahaahaahaahahyahyahybkQcIccMKcNZcMMcIcbkQcMNcMNcMNcMNcMPcMOcKjcMQcMRcMScMTcMUcMVcMWdDDcoucMZcNacMUcNbcNccNdcNecrVcOpcNhcNicNjcQncLGcNlcLGcLGahyahycwhcNmcNncziczicziczicziczicNocNpcxzcNqcxzcNrcxzcNqcxzcEDcEDcziczicziczicziczicziczicUqcXxcUucKCcNucLPcLPcNvcNwcNwcNxcNycNzcNAcNBcNCcNDcNEcNEcNEcNFcLPcNGcKCcZgdDEcBgahyahyaahaahaahaahaahaahaahaahcWudDFdbMdbMdDGcWuaahaahaahaahaahaahcHycHycHycHycHycHycHycHycHyczpcuAcHEcHEcHEcHEcHEcHEcHEcHEcHEcHIcHIcHIcHIcHIcHIcHIcHIcuLczqcHOcHOcHOcHOcHOcHOcHOcHOcHOaahaahaahaahaahaahaahaahaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
|
||||
+6
-4
@@ -2342,7 +2342,7 @@
|
||||
"Tb" = (/obj/structure/table/woodentable,/obj/item/device/megaphone,/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/wizard_station)
|
||||
"Tc" = (/obj/structure/table/woodentable,/obj/item/weapon/storage/box/donut,/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/wizard_station)
|
||||
"Td" = (/obj/structure/table/woodentable,/obj/item/weapon/reagent_containers/food/snacks/chawanmushi,/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/wizard_station)
|
||||
"Te" = (/obj/structure/table/woodentable,/obj/item/weapon/spacecash/bundle/c1,/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/wizard_station)
|
||||
"Te" = (/obj/structure/table/marble,/obj/effect/floor_decal/corner/white/diagonal,/obj/machinery/cash_register/civilian{tag = "icon-register_idle (WEST)"; icon_state = "register_idle"; dir = 8},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/restaurant)
|
||||
"Tf" = (/obj/item/weapon/book/manual/robotics_cyborgs,/obj/structure/table/glass,/turf/unsimulated/floor{tag = "icon-cult"; name = "plating"; icon_state = "cult"},/area/wizard_station)
|
||||
"Tg" = (/obj/item/robot_parts/head,/obj/structure/table/glass,/turf/unsimulated/floor{tag = "icon-cult"; name = "plating"; icon_state = "cult"},/area/wizard_station)
|
||||
"Th" = (/obj/item/device/radio/intercom{desc = "Talk through this. Evilly"; frequency = 1213; name = "Syndicate Intercom"; pixel_x = 32; subspace_transmission = 1; syndie = 1},/turf/unsimulated/floor{tag = "icon-cult"; name = "plating"; icon_state = "cult"},/area/wizard_station)
|
||||
@@ -2382,6 +2382,8 @@
|
||||
"TP" = (/obj/effect/floor_decal/carpet{dir = 4},/obj/effect/floor_decal/carpet,/obj/effect/floor_decal/carpet{dir = 6},/turf/unsimulated/floor{icon_state = "carpet"; dir = 2},/area/centcom/command)
|
||||
"TQ" = (/obj/machinery/computer/arcade/battle,/turf/unsimulated/floor{icon_state = "vault"; dir = 5},/area/centcom/security)
|
||||
"TR" = (/obj/machinery/door/airlock/centcom{name = "General Access"; opacity = 1; req_access = list(101)},/turf/unsimulated/floor{icon_state = "steel"},/area/centcom/main_hall)
|
||||
"TS" = (/obj/structure/table/woodentable{dir = 5},/obj/machinery/cash_register/civilian,/turf/unsimulated/floor{icon_state = "lino"},/area/centcom/bar)
|
||||
"TT" = (/obj/structure/table/woodentable,/obj/item/weapon/spacecash/c1,/turf/unsimulated/floor{dir = 8; icon_state = "wood"},/area/wizard_station)
|
||||
|
||||
(1,1,1) = {"
|
||||
aaabacadaeafagahaaaiajakalamanaoagafajacadahakaeamaiaoalahajapaqarasatauavawaxayaaabacadaeafagahaaaiajakalamanaoagafajacadahakazaAaBaCaDaEaFaGaHaIaJaKaLaMaNaOaAaBaCaDaEaFaGaHaIaJazaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaQaQaQaQaQaQaQaQaQaQaQaQaQaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaRaSaSaSaSaSaSaSaSaSaSaRaSaSaSaSaSaSaSaSaSaSaRaSaSaSaSaSaSaSaSaSaSaRaSaSaSaSaSaSaSaSaSaSaRaSaSaSaSaSaSaSaSaSaSaRaSaSaSaSaSaSaSaSaSaSaRaSaSaSaSaSaSaSaSaSaSaR
|
||||
@@ -2515,7 +2517,7 @@ aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPvGwbwbwbvGvGvGaP
|
||||
aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPvGwbwbwbxwxxxyaPaPaPaPaPaPaPaPaPaPaPaPaPxyxxxwwbwbwbvHmTaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPvGwbwbwbwPzhzixgxexfxexfzjwPzkzlzmzmzmyIyUyVznyIyYyYyYyYzozpyYyYyYyYyYsdxjxjxjxjxjxjsdvKvKvJvKvKvKvKvKvKvKvKzqsdsdsdsdsdsdsdsdsdyRyRsdvKvKsdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPmjmjmjmjmjmjmjmjmjmj
|
||||
aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPvGwbwbwbxwxxxyaPaPaPaPaPaPaPaPaPaPaPaPaPxyxxxwwbwbwbvHvHvHvHvHwvmTmTmTmTmTmTmTmTmTmTmTaPvGwbwbwbwPxexfzrxfxexfySzswPztxexexexeyIyVyVyVzuyYyYzvyYzozpyYzwzxzyyYsdsdvJvJvJvJsdsdvKvKzzvKvKvKvKzAzBzCvKvKsdvKvKvKvKvKvKzDsdyRyRsdvKvKsdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPmjmjmjmjmjmjmjmjmj
|
||||
aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPvGwbwbwbvGvGvGaPaPaPaPaPaPaPaPaPaPaPaPaPvGvGvGwbwbwbvHmTaPaPzEzFzGzEzFzFzHzIzJzFzKzLmTmTvHzMwbwbwPxfxezNxexfTQzOzPwPzQxexAxexeyIyVyVzRyIzSyYzTyYzozpyYzwzxzyyYyIvKvKvKvKvKvKvKvKvKvJvKvKvKvKzCzCzDvKvKzUvKzVvKvKzVvKzCsdyRyRsdvKvKsdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPmjmjmjmjmjmjmjmj
|
||||
aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPvHwbwbwbvHaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPvHwbwbwbvGaPaPzEzWzXzYzZAaAbAaAaAaAbAcAdvGvGvGwbwbwbwPzrzNxgxgxgxgxgxgwPAeAfxexeAgyIAhyVzRyIzSyYyYyYzozpyYzwRpzyyYyIvKvKvKvKvKvKvKvKvKvJAiyNvKvKvKvKvKAjvKsdzcAkAlzCAmvKzqsdyRyRsdvKvKsdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPmjmjmjmjmjmjmj
|
||||
aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPvHwbwbwbvHaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPvHwbwbwbvGaPaPzEzWzXzYzZAaAbAaAaAaAbAcAdvGvGvGwbwbwbwPzrzNxgxgxgxgxgxgwPAeAfxexeAgyIAhyVzRyIzSyYyYyYTezpyYzwRpzyyYyIvKvKvKvKvKvKvKvKvKvJAiyNvKvKvKvKvKAjvKsdzcAkAlzCAmvKzqsdyRyRsdvKvKsdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPmjmjmjmjmjmjmj
|
||||
aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPvHwbwbwbvHaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPvHwbwbwbvGaPaPAnAoApAoAqAoAoAoAoAoAoAoArAsxxAswbwbwbwPxfxexfxexfxexfxexfAeAeAtAeAeyIyIyIyIyIzozozozozozpyYzwRBzyyYyIvJvJAuvJvJsdwdvKvKsdAvyNvKvKvKvKvKsdsdsdsdvJvJvJvJvJsdsdAwAwsdvKvKsdaPaPaPaPAxAxAxAxAxAxAxAxAxAxAxAxAxAxAxAxAxAxaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPmjmjaPaPaPaPaPaPaPaPaPaPaPaPaPmjmjmjmjmjmj
|
||||
aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPvHwbwbwbvHmTmTmTaPaPaPaPaPaPaPaPaPaPaPmTmTmTvHwbwbwbvGaPaPAyAzAAABzZACADACACACADAEAFvGvGvGwbwbwbwPxexfxexfxexfxexfxexfxexfxeAGAHyIyYyYyYzpzpzpzpzpyYyYyYyYyYyYyIAIAJvKAKALsdAMANAOAwAwBkAwsdvJAPvJsdAQAQAQARASATAUAVAQAQAQAwwdvKvKsdaPaPaPAxAxAWAWAWAWAWAWAXAXAXAWAWAWAWAXAXAXAYaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPmjmjmjmjaPaPaPaPaPaPaPaPaPaPaPaPaPmjmjmjmjmj
|
||||
aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPvGwbwbwbvGaPaPmTaPaPaPaPaPaPaPaPaPaPaPmTaPaPvGwbwbwbvHmTaPaPAyzFAZAyzFzFzHzIzJzFBaBbmTmTvHwbwbwbwPxfxexfySAGySAGySxfxexfxexfySBcyIBdyYyYyYyYyYyYyYyYyYyYyYyYBdyIvKvKvKvKvKsdvKvKvKEaAQAQBlsdvKvKvKsdAQAQAQARBeBfBgAVAQAQAQAwvKvKvKsdaPaPaPAxAWAWAWAWAWAWAWAWAWAWAWAWAWAWAWAWAWAYaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPBhaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPmjmjmjmjmjaPaPaPaPaPaPaPaPaPaPaPaPaPmjmjmjmjmj
|
||||
@@ -2544,7 +2546,7 @@ aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPvGwbwbwbvGaPaPmT
|
||||
aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPvHwbwbwbvHmTmTmTaPaPaPaPaPaPaPaPaPaPaPmTmTmTvHwbwbwbvHmTmTmTGdFIGkGdGFGGGHGdGfFIGdmTmTmTvHwbwbwbEyEMEMEMGIEMGJEMEMGJEMGKEMEMEMGLEyFtFtFKGMGNFNFtFtFKGOGPFNFtFtFbaPaPAwGaGbAQAQCWAQAQGbGcAwaPaPFhGQGRGRGRGRGQGQGQGQGSGTGTGTGUAxAWAWFxBJAWFxAxAxAWAWAWAWAWAWGVGVGVAWAWAWAWGVGVGVAYaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP
|
||||
aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPvHwbwbwbvHaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPvHwbwbwbvHaPaPaPFRFIGkGWGXGYGZGWGfFIFRaPaPaPvHwbwbwbEyEMEMEMEMEMEMEMEMEMEMEMEMEMEMHaEyFtFtFtFtFtFtFtFtFtFtFtFtFtFtFbaPaPAwGaGbAQAQCWAQAQGbGcAwaPaPFhGQGQGQGQGQGQGQGQGQGQGQGQGQGQAxAWAWAWAWAWAWAxAxAxAYAYAYAxAYAYAYAxAYAYAYAxAYAYAYAxaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP
|
||||
aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPvHwbwbwbvHaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPvHwbwbwbvHaPaPFjFyGeGkHbGXHcGZHbGfGlFEFnaPaPvHwbwbwbEyEMEMEMEMEMEMEMEMEMEMEMEMEMEMGLEyFtFtFtFtFtFtHdHdHdHdHdHdHdHdFbaPaPHeHeHeHfHfHgHfHfHeHeHeaPaPFhHhFhHiFhHjFhGQGQFhHkFhHlFhHmAxAWAWAWAWAWAWAYaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP
|
||||
aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPvGwbwbwbvGvGvGaPaPaPaPaPaPaPaPaPaPaPaPaPvGvGvGwbwbwbvGvGvGHnHoFIGkHpFRHqFRHrGfFIHoHnvGvGvGwbwbwbEyEMEMEMEMEMEMEMEMEMEMEMEMEMEMHaEyHsHtHtFtFtHuHvHvHvHvHvHvHvHvFbaPaPHeHwHxHfHxHxHxHfHxHwHeaPaPFhHyFhHyFhHyFhGQGQFhHyFhHyFhHyAxAWAWGVGVGVGVAYaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP
|
||||
aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPvGwbwbwbvGvGvGaPaPaPaPaPaPaPaPaPaPaPaPaPvGvGvGwbwbwbvGvGvGHnHoFIGkHpFRHqFRHrGfFIHoHnvGvGvGwbwbwbEyEMEMEMEMEMEMEMEMEMEMEMEMEMEMHaEyHsHtHtFtFtHuHvHvHvTSHvHvHvHvFbaPaPHeHwHxHfHxHxHxHfHxHwHeaPaPFhHyFhHyFhHyFhGQGQFhHyFhHyFhHyAxAWAWGVGVGVGVAYaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP
|
||||
aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPvGwbwbwbxwxxxyaPaPaPaPaPaPaPaPaPaPaPaPaPxyxxxwwbwbwbHzxxHzHAFIFIFIHBHCFIFIHBFIFIFIHAHzxxHzwbwbwbEyEAEMEMEAEAEAEMEMHDFVEMEMHEHFHGEyHHHIHJFtFtHuHKHLHLHLHLHLHLHLFbaPaPHeHxHMHNHxHxHxHNHOHxHeaPaPFhFhFhFhFhFhFhGQGQFhFhFhFhFhFhAxAWAWAXAXAXAXAYaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP
|
||||
aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPvGwbwbwbxwxxxyaPaPaPaPaPaPaPaPaPaPaPaPaPxyxxxwwbwbwbHzxxHzHPFIFIFIFIFIFIFIFIFIFIFIHPHzxxHzwbwbwbEyEOEMEMEMHQHREMEMENEyEMEMEyEyEyEyHSHTHUFtFtHuHLHLHLHLHLHLHLHLFbaPaPHeHfHxHfHxHxHxHfHxHfHeaPaPFhHVGQHVGQHVGSGQGQHWHVGQHVGQHVAxAWAWAWAWAWAWAYaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP
|
||||
aPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPvGwbwbwbvGvGvGaPaPaPaPaPaPaPaPaPaPaPaPaPvGvGvGwbwbwbvGvGvGHnHXFIGkGWGfFIGkGWGfFIHYHnvGvGvGwbwbwbEyEOEMEMEMEMEMEMEMHZEyEMEMIaIaIaEyIbIcIdFtFtHLHLHLIeIfIhIgHLHLFbaPaPHeHxHxHxHxHxHxHxHxHxHeaPaPFhGQGQGQGQGQGQGQGQGQGQGQGQGQGQAxBDAWAWAWAWAYAYaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP
|
||||
@@ -2631,7 +2633,7 @@ aRmjmjmjmjmjaPaPaPaPmjmjaPaPaPaPaPaPaPaPREQaRFRFRFRFRFQaRHaPaPaPaPaPaPaPaPaPaPmd
|
||||
aRmjmjmjmjmjaPaPaPaPmjmjmjaPaPaPaPaPaPaPaPRERURURURURURHaPaPaPaPaPaPaPaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPRCRKSNSOSPSQRKSRSSSTSRSUSVSWSWSVRCaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP
|
||||
aRmjmjmjmjmjaPaPaPaPmjmjmjaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPRCRKSNSXSYSQRKSZSZSZSZTaSaSaSaSaRCaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP
|
||||
aRmjmjmjmjmjaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPRCRKSNTbTcSQRKSZSZSZSZSZSZSZSZSZRCaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP
|
||||
aRmjmjmjaPaPaPaPaPaPaPaPaPaPmjmjaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPRCRKSNTdTeSQRKSZSZSZSZSZSZTfTgThRCaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP
|
||||
aRmjmjmjaPaPaPaPaPaPaPaPaPaPmjmjaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPRCRKSNTdTTSQRKSZSZSZSZSZSZTfTgThRCaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP
|
||||
aRmjmjmjaPaPaPaPaPaPaPaPmjmjmjmjaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPRCRKRKRKRKRKRKSZSZSZSZSZSZSZSZSZRCaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP
|
||||
aRmjmjmjaPaPaPaPaPaPaPmjmjmjmjaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPRCTiTjTjTkTjTjTjTkTjTjTjTkTjTjTlRCaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP
|
||||
aRmjaPaPaPaPaPaPaPaPaPaPmjmjmjaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPmdaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPRCTmTnTnSUToTpToSUTqTqTrSUTsTtRSRCaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaPaP
|
||||
|
||||
+69
@@ -5,6 +5,72 @@
|
||||
// END_INTERNALS
|
||||
// BEGIN_FILE_DIR
|
||||
#define FILE_DIR .
|
||||
#define FILE_DIR "html"
|
||||
#define FILE_DIR "html/images"
|
||||
#define FILE_DIR "icons"
|
||||
#define FILE_DIR "icons/48x48"
|
||||
#define FILE_DIR "icons/atmos"
|
||||
#define FILE_DIR "icons/effects"
|
||||
#define FILE_DIR "icons/mecha"
|
||||
#define FILE_DIR "icons/misc"
|
||||
#define FILE_DIR "icons/mob"
|
||||
#define FILE_DIR "icons/mob/human_races"
|
||||
#define FILE_DIR "icons/mob/human_races/cyberlimbs"
|
||||
#define FILE_DIR "icons/mob/human_races/masks"
|
||||
#define FILE_DIR "icons/mob/human_races/monkeys"
|
||||
#define FILE_DIR "icons/mob/human_races/subspecies"
|
||||
#define FILE_DIR "icons/mob/human_races/xenos"
|
||||
#define FILE_DIR "icons/mob/items"
|
||||
#define FILE_DIR "icons/mob/screen"
|
||||
#define FILE_DIR "icons/mob/species"
|
||||
#define FILE_DIR "icons/mob/species/seromi"
|
||||
#define FILE_DIR "icons/mob/species/skrell"
|
||||
#define FILE_DIR "icons/mob/species/tajaran"
|
||||
#define FILE_DIR "icons/mob/species/unathi"
|
||||
#define FILE_DIR "icons/mob/species/vox"
|
||||
#define FILE_DIR "icons/NTOS"
|
||||
#define FILE_DIR "icons/NTOS/battery_icons"
|
||||
#define FILE_DIR "icons/obj"
|
||||
#define FILE_DIR "icons/obj/assemblies"
|
||||
#define FILE_DIR "icons/obj/atmospherics"
|
||||
#define FILE_DIR "icons/obj/clothing"
|
||||
#define FILE_DIR "icons/obj/clothing/species"
|
||||
#define FILE_DIR "icons/obj/clothing/species/seromi"
|
||||
#define FILE_DIR "icons/obj/clothing/species/skrell"
|
||||
#define FILE_DIR "icons/obj/clothing/species/tajaran"
|
||||
#define FILE_DIR "icons/obj/clothing/species/unathi"
|
||||
#define FILE_DIR "icons/obj/doors"
|
||||
#define FILE_DIR "icons/obj/flora"
|
||||
#define FILE_DIR "icons/obj/machines"
|
||||
#define FILE_DIR "icons/obj/pipes"
|
||||
#define FILE_DIR "icons/pda_icons"
|
||||
#define FILE_DIR "icons/spideros_icons"
|
||||
#define FILE_DIR "icons/Testing"
|
||||
#define FILE_DIR "icons/turf"
|
||||
#define FILE_DIR "icons/turf/flooring"
|
||||
#define FILE_DIR "icons/vending_icons"
|
||||
#define FILE_DIR "maps"
|
||||
#define FILE_DIR "maps/overmap"
|
||||
#define FILE_DIR "maps/overmap/bearcat"
|
||||
#define FILE_DIR "nano"
|
||||
#define FILE_DIR "nano/images"
|
||||
#define FILE_DIR "sound"
|
||||
#define FILE_DIR "sound/AI"
|
||||
#define FILE_DIR "sound/ambience"
|
||||
#define FILE_DIR "sound/effects"
|
||||
#define FILE_DIR "sound/effects/turret"
|
||||
#define FILE_DIR "sound/effects/wind"
|
||||
#define FILE_DIR "sound/hallucinations"
|
||||
#define FILE_DIR "sound/items"
|
||||
#define FILE_DIR "sound/machines"
|
||||
#define FILE_DIR "sound/mecha"
|
||||
#define FILE_DIR "sound/misc"
|
||||
#define FILE_DIR "sound/music"
|
||||
#define FILE_DIR "sound/piano"
|
||||
#define FILE_DIR "sound/violin"
|
||||
#define FILE_DIR "sound/voice"
|
||||
#define FILE_DIR "sound/voice/Serithi"
|
||||
#define FILE_DIR "sound/weapons"
|
||||
// END_FILE_DIR
|
||||
// BEGIN_PREFERENCES
|
||||
#define DEBUG
|
||||
@@ -1099,10 +1165,13 @@
|
||||
#include "code\modules\economy\Accounts_DB.dm"
|
||||
#include "code\modules\economy\ATM.dm"
|
||||
#include "code\modules\economy\cash.dm"
|
||||
#include "code\modules\economy\cash_register.dm"
|
||||
#include "code\modules\economy\economy_misc.dm"
|
||||
#include "code\modules\economy\EFTPOS.dm"
|
||||
#include "code\modules\economy\Events.dm"
|
||||
#include "code\modules\economy\Events_Mundane.dm"
|
||||
#include "code\modules\economy\price_list.dm"
|
||||
#include "code\modules\economy\retail_scanner.dm"
|
||||
#include "code\modules\economy\TradeDestinations.dm"
|
||||
#include "code\modules\events\apc_damage.dm"
|
||||
#include "code\modules\events\blob.dm"
|
||||
|
||||
Reference in New Issue
Block a user