diff --git a/code/WorkInProgress/Cael_Aislinn/Economy/Accounts.dm b/code/WorkInProgress/Cael_Aislinn/Economy/Accounts.dm
index 671cb9d45ca..b79b0716b9f 100644
--- a/code/WorkInProgress/Cael_Aislinn/Economy/Accounts.dm
+++ b/code/WorkInProgress/Cael_Aislinn/Economy/Accounts.dm
@@ -12,13 +12,13 @@ var/global/obj/machinery/account_database/centcomm_account_db
station_account.owner_name = "[station_name()] Station Account"
station_account.account_number = rand(111111, 999999)
station_account.remote_access_pin = rand(1111, 111111)
- station_account.money = 10000
+ station_account.money = 75000
//create an entry in the account transaction log for when it was created
var/datum/transaction/T = new()
T.target_name = station_account.owner_name
T.purpose = "Account creation"
- T.amount = 10000
+ T.amount = 75000
T.date = "2nd April, 2555"
T.time = "11:24"
T.source_terminal = "Biesel GalaxyNet Terminal #277"
diff --git a/code/WorkInProgress/Cael_Aislinn/Economy/EFTPOS.dm b/code/WorkInProgress/Cael_Aislinn/Economy/EFTPOS.dm
index 5fc619755ad..5cabdbc4624 100644
--- a/code/WorkInProgress/Cael_Aislinn/Economy/EFTPOS.dm
+++ b/code/WorkInProgress/Cael_Aislinn/Economy/EFTPOS.dm
@@ -1,8 +1,8 @@
/obj/item/weapon/eftpos
name = "EFTPOS scanner"
desc = "Swipe your ID card to pay electronically."
- icon = 'icons/obj/library.dmi'
- icon_state = "scanner"
+ icon = 'icons/obj/device.dmi'
+ icon_state = "eftpos"
var/machine_id = ""
var/eftpos_name = "Default EFTPOS scanner"
var/transaction_locked = 0
@@ -18,14 +18,15 @@
machine_id = "[station_name()] EFTPOS #[num_financial_terminals++]"
access_code = rand(1111,111111)
reconnect_database()
- print_reference()
+ spawn(0)
+ print_reference()
//by default, connect to the station account
//the user of the EFTPOS device can change the target account though, and no-one will be the wiser (except whoever's being charged)
linked_account = station_account
/obj/item/weapon/eftpos/proc/print_reference()
- var/obj/item/weapon/paper/R = new(get_turf(src))
+ var/obj/item/weapon/paper/R = new(src.loc)
R.name = "Reference: [eftpos_name]"
R.info = "[eftpos_name] reference
"
R.info += "Access code: [access_code]
"
@@ -40,6 +41,11 @@
R.overlays += stampoverlay
R.stamps += "
This paper has been stamped by the EFTPOS device."
+ var/obj/item/smallDelivery/D = new(R.loc)
+ R.loc = D
+ D.wrapped = R
+ D.name = "small parcel - 'EFTPOS access code'"
+
/obj/item/weapon/eftpos/proc/reconnect_database()
for(var/obj/machinery/account_database/DB in world)
if(DB.z == src.z)
@@ -67,7 +73,9 @@
dat += "Transaction purpose: [transaction_purpose]
"
dat += "Value: $[transaction_amount]
"
dat += "Linked account: [linked_account ? linked_account.owner_name : "None"]
"
- dat += "Change access code"
+ dat += "Change access code
"
+ dat += "Change EFTPOS ID
"
+ dat += "Scan card to reset access code \[------\]"
user << browse(dat,"window=eftpos")
else
user << browse(null,"window=eftpos")
@@ -77,9 +85,12 @@
//attempt to connect to a new db, and if that doesn't work then fail
if(!linked_db)
reconnect_database()
- if(linked_db && linked_account)
- var/obj/item/weapon/card/I = O
- scan_card(I)
+ if(linked_db)
+ if(linked_account)
+ var/obj/item/weapon/card/I = O
+ scan_card(I)
+ else
+ usr << "\icon[src]Unable to connect to linked account."
else
usr << "\icon[src]Unable to connect to accounts database."
else
@@ -95,13 +106,22 @@
print_reference()
else
usr << "\icon[src]Incorrect code entered."
+ if("change_id")
+ var/attempt_code = text2num(input("Re-enter the current EFTPOS access code", "Confirm EFTPOS code"))
+ if(attempt_code == access_code)
+ eftpos_name = input("Enter a new terminal ID for this device", "Enter new EFTPOS ID") + " EFTPOS scanner"
+ print_reference()
+ else
+ usr << "\icon[src]Incorrect code entered."
if("link_account")
+ if(!linked_db)
+ reconnect_database()
if(linked_db)
var/attempt_account_num = text2num(input("Enter account number to pay EFTPOS charges into", "New account number"))
var/attempt_pin = text2num(input("Enter pin code", "Account pin"))
linked_account = linked_db.attempt_account_access(attempt_account_num, attempt_pin, 1)
else
- usr << "Unable to connect to accounts database."
+ usr << "\icon[src]Unable to connect to accounts database."
if("trans_purpose")
transaction_purpose = input("Enter reason for EFTPOS transaction", "Transaction purpose")
if("trans_value")
@@ -126,6 +146,14 @@
scan_card(I)
else
usr << "\icon[src]Unable to link accounts."
+ if("reset")
+ //reset the access code - requires HoP/captain access
+ var/obj/item/I = usr.get_active_hand()
+ if (istype(I, /obj/item/weapon/card))
+ var/obj/item/weapon/card/C = I
+ if(access_cent_captain in C.access || access_hop in C.access || access_captain in C.access)
+ access_code = 0
+ usr << "\icon[src]Access code reset to 0."
src.attack_self(usr)
@@ -149,7 +177,7 @@
//create entries in the two account transaction logs
var/datum/transaction/T = new()
- T.target_name = "[linked_account.owner_name] ([eftpos_name])"
+ T.target_name = "[linked_account.owner_name] (via [eftpos_name])"
T.purpose = transaction_purpose
T.amount = "([transaction_amount])"
T.source_terminal = machine_id
diff --git a/code/WorkInProgress/Mini/ATM.dm b/code/WorkInProgress/Mini/ATM.dm
index 68a6c39942e..3394753d71c 100644
--- a/code/WorkInProgress/Mini/ATM.dm
+++ b/code/WorkInProgress/Mini/ATM.dm
@@ -114,11 +114,11 @@ log transactions
switch(view_screen)
if(CHANGE_SECURITY_LEVEL)
dat += "Select a new security level for this account:
"
- var/text = "Zero - Only account number or card is required to access this account. EFTPOS transactions will require a card and ask for a pin, but not verify the pin is correct."
+ var/text = "Zero - Either the account number or card is required to access this account. EFTPOS transactions will require a card and ask for a pin, but not verify the pin is correct."
if(authenticated_account.security_level != 0)
text = "[text]"
dat += "[text]
"
- text = "One - Both an account number and pin is required to access this account and process transactions."
+ text = "One - An account number and pin must be manually entered to access this account and process transactions."
if(authenticated_account.security_level != 1)
text = "[text]"
dat += "[text]
"
@@ -185,7 +185,7 @@ log transactions
dat += "Unable to connect to accounts database, please retry and if the issue persists contact NanoTrasen IT support."
reconnect_database()
- user << browse(dat,"window=atm;size=500x650")
+ user << browse(dat,"window=atm;size=550x650")
else
user << browse(null,"window=atm")
diff --git a/code/game/objects/items/weapons/storage/wallets.dm b/code/game/objects/items/weapons/storage/wallets.dm
index 7c3e70420fd..86b12f693ec 100644
--- a/code/game/objects/items/weapons/storage/wallets.dm
+++ b/code/game/objects/items/weapons/storage/wallets.dm
@@ -1,7 +1,7 @@
/obj/item/weapon/storage/wallet
name = "wallet"
desc = "It can hold a few small and personal things."
- storage_slots = 4
+ storage_slots = 10
icon_state = "wallet"
w_class = 2
can_hold = list(
diff --git a/icons/obj/device.dmi b/icons/obj/device.dmi
index 923f3e53c36..2128d6774f7 100644
Binary files a/icons/obj/device.dmi and b/icons/obj/device.dmi differ