Additional admin interaction additions

This commit is contained in:
Markolie
2017-02-21 13:26:18 +01:00
parent fb1cef8029
commit 389890bb2d
6 changed files with 141 additions and 120 deletions
+26 -19
View File
@@ -139,10 +139,13 @@
qdel(O)//No refined type? Purge it.
return
/obj/machinery/mineral/ore_redemption/attack_hand(user as mob)
/obj/machinery/mineral/ore_redemption/attack_hand(mob/user)
if(..())
return
interact(user)
/obj/machinery/mineral/ore_redemption/attack_ghost(mob/user)
interact(user)
/obj/machinery/mineral/ore_redemption/interact(mob/user)
user.set_machine(src)
@@ -194,7 +197,8 @@
/obj/machinery/mineral/ore_redemption/Topic(href, href_list)
if(..())
return
return 1
if(href_list["choice"])
if(istype(inserted_id))
if(href_list["choice"] == "eject")
@@ -211,11 +215,12 @@
var/obj/item/weapon/card/id/I = usr.get_active_hand()
if(istype(I))
if(!usr.drop_item())
return
return 1
I.loc = src
inserted_id = I
else
to_chat(usr, "<span class='warning'>No valid ID.</span>")
if(href_list["release"])
if(check_access(inserted_id) || allowed(usr)) //Check the ID inside, otherwise check the user.
if(!(text2path(href_list["release"]) in stack_list)) return
@@ -230,6 +235,7 @@
stack_list -= text2path(href_list["release"])
else
to_chat(usr, "<span class='warning'>Required access not found.</span>")
if(href_list["plasteel"])
if(check_access(inserted_id) || allowed(usr))
if(!(/obj/item/stack/sheet/metal in stack_list)) return
@@ -246,6 +252,7 @@
unload_mineral(plasteelout)
else
to_chat(usr, "<span class='warning'>Required access not found.</span>")
if(href_list["plasglass"])
if(check_access(inserted_id) || allowed(usr))
if(!(/obj/item/stack/sheet/glass in stack_list)) return
@@ -263,7 +270,6 @@
else
to_chat(usr, "<span class='warning'>Required access not found.</span>")
updateUsrDialog()
return
/obj/machinery/mineral/ore_redemption/ex_act(severity, target)
var/datum/effect/system/spark_spread/s = new /datum/effect/system/spark_spread
@@ -383,12 +389,14 @@
icon_state = initial(icon_state)
else
icon_state = "[initial(icon_state)]-off"
return
/obj/machinery/mineral/equipment_vendor/attack_hand(user as mob)
/obj/machinery/mineral/equipment_vendor/attack_hand(mob/user)
if(..())
return
interact(user)
/obj/machinery/mineral/equipment_vendor/attack_ghost(mob/user)
interact(user)
/obj/machinery/mineral/equipment_vendor/interact(mob/user)
user.set_machine(src)
@@ -407,11 +415,11 @@
var/datum/browser/popup = new(user, "miningvendor", "Mining Equipment Vendor", 400, 350)
popup.set_content(dat)
popup.open()
return
/obj/machinery/mineral/equipment_vendor/Topic(href, href_list)
if(..())
return
return 1
if(href_list["choice"])
if(istype(inserted_id))
if(href_list["choice"] == "eject")
@@ -427,19 +435,18 @@
inserted_id = I
else
to_chat(usr, "<span class='danger'>No valid ID.</span>")
if(href_list["purchase"])
if(istype(inserted_id))
var/datum/data/mining_equipment/prize = locate(href_list["purchase"])
if(!prize || !(prize in prize_list))
if(!prize || !(prize in prize_list) || prize.cost > inserted_id.mining_points)
return
if(prize.cost > inserted_id.mining_points)
else
inserted_id.mining_points -= prize.cost
new prize.equipment_path(src.loc)
updateUsrDialog()
return
/obj/machinery/mineral/equipment_vendor/attackby(obj/item/I as obj, mob/user as mob, params)
inserted_id.mining_points -= prize.cost
new prize.equipment_path(src.loc)
updateUsrDialog()
/obj/machinery/mineral/equipment_vendor/attackby(obj/item/I, mob/user, params)
if(default_deconstruction_screwdriver(user, "mining-open", "mining", I))
updateUsrDialog()
return
@@ -510,7 +517,7 @@
icon_state = "data"
var/points = 500
/obj/item/weapon/card/mining_point_card/attackby(obj/item/I as obj, mob/user as mob, params)
/obj/item/weapon/card/mining_point_card/attackby(obj/item/I, mob/user, params)
if(istype(I, /obj/item/weapon/card/id))
if(points)
var/obj/item/weapon/card/id/C = I
@@ -539,7 +546,7 @@
throw_range = 5
origin_tech = "bluespace=2"
/obj/item/device/wormhole_jaunter/attack_self(mob/user as mob)
/obj/item/device/wormhole_jaunter/attack_self(mob/user)
var/turf/device_turf = get_turf(user)
if(!device_turf||is_teleport_allowed(device_turf.z))
to_chat(user, "<span class='notice'>You're having difficulties getting the [src.name] to work.</span>")
@@ -620,7 +627,7 @@
spawn(burst_time)
fieldsactive--
/obj/item/weapon/resonator/attack_self(mob/user as mob)
/obj/item/weapon/resonator/attack_self(mob/user)
if(burst_time == 50)
burst_time = 30
to_chat(user, "<span class='info'>You set the resonator's fields to detonate after 3 seconds.</span>")