Merge pull request #10798 from TDSSS/second-mob-spawner-fix

Fixed mob spawner menu, this time for real
This commit is contained in:
variableundefined
2019-02-02 21:03:23 +08:00
committed by GitHub
3 changed files with 17 additions and 2 deletions
+2 -2
View File
@@ -6,10 +6,10 @@
qdel(src)
owner = new_owner
/datum/spawners_menu/ui_interact(mob/user, ui_key = "main", datum/nanoui/ui = null, force_open = FALSE, datum/nanoui/master_ui = null)
/datum/spawners_menu/ui_interact(mob/user, ui_key = "main", datum/nanoui/ui = null, force_open = FALSE, datum/topic_state/state = ghost_state, datum/nanoui/master_ui = null)
ui = SSnanoui.try_update_ui(user, src, ui_key, ui, force_open)
if(!ui)
ui = new(user, src, ui_key, "spawners_menu.tmpl", "Spawners Menu", 700, 600, master_ui)
ui = new(user, src, ui_key, "spawners_menu.tmpl", "Spawners Menu", 700, 600, master_ui, state = state)
ui.open()
/datum/spawners_menu/ui_data(mob/user)
+14
View File
@@ -0,0 +1,14 @@
/*
This checks that the user is a ghost or alternatively an admin. Used for the mob spawner.
We don't want any living people somehow getting the menu open and reincarnating while alive
*/
/var/global/datum/topic_state/ghost_state/ghost_state = new()
/datum/topic_state/ghost_state/can_use_topic(var/src_object, var/mob/user)
if(user.stat == DEAD)
return STATUS_INTERACTIVE
if(check_rights(R_ADMIN, 0, src))
return STATUS_INTERACTIVE
return STATUS_CLOSE
+1
View File
@@ -2026,6 +2026,7 @@
#include "code\modules\nano\interaction\conscious.dm"
#include "code\modules\nano\interaction\contained.dm"
#include "code\modules\nano\interaction\default.dm"
#include "code\modules\nano\interaction\ghost.dm"
#include "code\modules\nano\interaction\inventory.dm"
#include "code\modules\nano\interaction\inventory_deep.dm"
#include "code\modules\nano\interaction\not_incapacitated.dm"