mirror of
https://github.com/ParadiseSS13/Paradise.git
synced 2026-07-20 19:44:09 +01:00
Point Rework
This commit is contained in:
@@ -630,4 +630,13 @@ This is the proc mobs get to turn into a ghost. Forked from ghostize due to comp
|
||||
return 0
|
||||
|
||||
/mob/dead/observer/can_admin_interact()
|
||||
return check_rights(R_ADMIN, 0, src)
|
||||
return check_rights(R_ADMIN, 0, src)
|
||||
|
||||
//this is a mob verb instead of atom for performance reasons
|
||||
//see /mob/verb/examinate() in mob.dm for more info
|
||||
//overriden here and in /mob/living for different point span classes and sanity checks
|
||||
/mob/dead/observer/pointed(atom/A as mob|obj|turf in view())
|
||||
if(!..())
|
||||
return 0
|
||||
usr.visible_message("<span class='deadsay'><b>[src]</b> points to [A].</span>")
|
||||
return 1
|
||||
|
||||
@@ -518,9 +518,9 @@
|
||||
|
||||
if ("point")
|
||||
if (!src.restrained())
|
||||
var/mob/M = null
|
||||
var/atom/M = null
|
||||
if (param)
|
||||
for (var/atom/A as mob|obj|turf|area in view(null, null))
|
||||
for (var/atom/A as mob|obj|turf in view())
|
||||
if (param == A.name)
|
||||
M = A
|
||||
break
|
||||
@@ -528,11 +528,7 @@
|
||||
if (!M)
|
||||
message = "<B>[src]</B> points."
|
||||
else
|
||||
M.point()
|
||||
|
||||
if (M)
|
||||
message = "<B>[src]</B> points to [M]."
|
||||
else
|
||||
pointed(M)
|
||||
m_type = 1
|
||||
|
||||
if ("raise")
|
||||
|
||||
@@ -25,6 +25,18 @@
|
||||
special_role = null
|
||||
current << "\red <FONT size = 3><B>The fog clouding your mind clears. You remember nothing from the moment you were implanted until now..(You don't remember who enslaved you)</B></FONT>"
|
||||
*/
|
||||
|
||||
//same as above
|
||||
/mob/living/pointed(atom/A as mob|obj|turf in view())
|
||||
if(src.stat || !src.canmove || src.restrained())
|
||||
return 0
|
||||
if(src.status_flags & FAKEDEATH)
|
||||
return 0
|
||||
if(!..())
|
||||
return 0
|
||||
visible_message("<b>[src]</b> points to [A]")
|
||||
return 1
|
||||
|
||||
/mob/living/verb/succumb()
|
||||
set hidden = 1
|
||||
if (InCritical())
|
||||
|
||||
@@ -46,11 +46,6 @@
|
||||
set src = usr.contents
|
||||
return 0
|
||||
|
||||
/mob/aiEye/point()
|
||||
set popup_menu = 0
|
||||
set src = usr.contents
|
||||
return 0
|
||||
|
||||
// Use this when setting the aiEye's location.
|
||||
// It will also stream the chunk that the new loc is in.
|
||||
/mob/aiEye/setLoc(var/T, var/cancel_tracking = 1)
|
||||
|
||||
@@ -73,6 +73,8 @@
|
||||
|
||||
/mob/visible_message(var/message, var/self_message, var/blind_message)
|
||||
for(var/mob/M in viewers(src))
|
||||
if(M.see_invisible < invisibility)
|
||||
continue //can't view the invisible
|
||||
var/msg = message
|
||||
if(self_message && M==src)
|
||||
msg = self_message
|
||||
@@ -494,6 +496,31 @@ var/list/slot_equipment_priority = list( \
|
||||
face_atom(A)
|
||||
A.examine(src)
|
||||
|
||||
//same as above
|
||||
//note: ghosts can point, this is intended
|
||||
//visible_message will handle invisibility properly
|
||||
//overriden here and in /mob/dead/observer for different point span classes and sanity checks
|
||||
/mob/verb/pointed(atom/A as mob|obj|turf in view())
|
||||
set name = "Point To"
|
||||
set category = "Object"
|
||||
|
||||
if(!src || !isturf(src.loc))
|
||||
return 0
|
||||
if(istype(A, /obj/effect/decal/point))
|
||||
return 0
|
||||
|
||||
var/tile = get_turf(A)
|
||||
if (!tile)
|
||||
return 0
|
||||
|
||||
var/obj/P = new /obj/effect/decal/point(tile)
|
||||
P.invisibility = invisibility
|
||||
spawn (20)
|
||||
if(P)
|
||||
qdel(P)
|
||||
|
||||
return 1
|
||||
|
||||
/mob/proc/ret_grab(obj/effect/list_container/mobl/L as obj, flag)
|
||||
if ((!( istype(l_hand, /obj/item/weapon/grab) ) && !( istype(r_hand, /obj/item/weapon/grab) )))
|
||||
if (!( L ))
|
||||
|
||||
Reference in New Issue
Block a user