diff --git a/code/modules/economy/ATM.dm b/code/modules/economy/ATM.dm
index e2733ba2446..be8df4c3ae5 100644
--- a/code/modules/economy/ATM.dm
+++ b/code/modules/economy/ATM.dm
@@ -244,17 +244,12 @@ log transactions
if(amount <= 0)
to_chat(usr, "[bicon(src)]That is not a valid amount.")
else if(authenticated_account && amount > 0)
- if(amount <= authenticated_account.money)
+ if(amount > 100000) // Prevent crashes
+ to_chat(usr, "[bicon(src)]The ATM's screen flashes, 'Maximum single withdrawal limit reached, defaulting to 100,000.'")
+ amount = 100000
+ if(authenticated_account.charge(amount, null, "Credit withdrawal", machine_id, authenticated_account.owner_name))
playsound(src, 'sound/machines/chime.ogg', 50, TRUE)
-
- //remove the money
- if(amount > 100000) // prevent crashes
- to_chat(usr, "The ATM's screen flashes, 'Maximum single withdrawl limit reached, defaulting to 100,000.'")
- amount = 100000
withdraw_arbitrary_sum(amount)
- authenticated_account.charge(amount, null, "Credit withdrawal", machine_id, authenticated_account.owner_name)
- else
- to_chat(usr, "[bicon(src)]You don't have enough funds to do that!")
if("balance_statement")
if(authenticated_account)