Luxury shuttle improvements (#48395)

This commit is contained in:
cacogen
2019-12-28 05:09:30 +01:00
committed by skoglol
parent 8769033efb
commit e3b8829be3
6 changed files with 736 additions and 427 deletions
+1 -1
View File
@@ -316,7 +316,7 @@
mode = SHUTTLE_DOCKED
setTimer(SSshuttle.emergencyDockTime)
send2tgs("Server", "The Emergency Shuttle has docked with the station.")
priority_announce("The Emergency Shuttle has docked with the station. You have [timeLeft(600)] minutes to board the Emergency Shuttle.", null, 'sound/ai/shuttledock.ogg', "Priority")
priority_announce("[SSshuttle.emergency] has docked with the station. You have [timeLeft(600)] minutes to board the Emergency Shuttle.", null, 'sound/ai/shuttledock.ogg', "Priority")
ShuttleDBStuff()
+24 -11
View File
@@ -213,17 +213,19 @@
//Luxury Shuttle Blockers
/obj/effect/forcefield/luxury_shuttle
name = "luxury shuttle ticket booth"
desc = "A forceful money collector."
timeleft = 0
/obj/machinery/scanner_gate/luxury_shuttle
name = "luxury shuttle ticket field"
density = FALSE //allows shuttle airlocks to close, nothing but an approved passenger gets past CanPass
locked = TRUE
use_power = FALSE
var/threshold = 500
var/static/list/approved_passengers = list()
var/static/list/check_times = list()
var/list/payees = list()
/obj/effect/forcefield/luxury_shuttle/CanPass(atom/movable/mover, turf/target)
/obj/machinery/scanner_gate/luxury_shuttle/CanPass(atom/movable/mover, turf/target)
if(mover in approved_passengers)
set_scanline("scanning", 10)
return TRUE
if(!isliving(mover)) //No stowaways
@@ -231,10 +233,19 @@
return FALSE
/obj/machinery/scanner_gate/luxury_shuttle/Crossed(atom/movable/AM)
return
/obj/machinery/scanner_gate/luxury_shuttle/attackby(obj/item/W, mob/user, params)
return
/obj/machinery/scanner_gate/luxury_shuttle/emag_act(mob/user)
return
#define LUXURY_MESSAGE_COOLDOWN 100
/obj/effect/forcefield/luxury_shuttle/Bumped(atom/movable/AM)
/obj/machinery/scanner_gate/luxury_shuttle/Bumped(atom/movable/AM)
if(!isliving(AM))
alarm_beep()
return ..()
var/datum/bank_account/account
@@ -315,18 +326,18 @@
var/change = FALSE
if(payees[AM] > 0)
change = TRUE
var/obj/item/holochip/HC
var/obj/item/holochip/HC = new /obj/item/holochip(AM.loc)
HC.credits = payees[AM]
HC.name = "[HC.credits] credit holochip"
if(istype(AM, /mob/living/carbon/human))
var/mob/living/carbon/human/H = AM
if(!H.put_in_hands(new HC))
if(!H.put_in_hands(HC))
AM.pulling = HC
else
new HC(AM.loc)
AM.pulling = HC
payees[AM] -= payees[AM]
say("<span class='robot'>Welcome aboard, [AM]![change ? " Here is your change." : ""]</span>")
say("<span class='robot'>Welcome to first class, [AM]![change ? " Here is your change." : ""]</span>")
approved_passengers += AM
check_times -= AM
@@ -335,10 +346,12 @@
for(var/obj/I in counted_money)
qdel(I)
if(!check_times[AM] || check_times[AM] < world.time) //Let's not spam the message
to_chat(AM, "<span class='notice'>$[payees[AM]] received. You need $[threshold-payees[AM]] more.</span>")
to_chat(AM, "<span class='notice'>[payees[AM]] credits received. You need [threshold-payees[AM]] more.</span>")
check_times[AM] = world.time + LUXURY_MESSAGE_COOLDOWN
alarm_beep()
return ..()
else
alarm_beep()
return ..()
/mob/living/simple_animal/hostile/bear/fightpit