Properly fixed altclick

This commit is contained in:
Artur
2020-09-16 00:41:47 +03:00
parent 12fbd67b6d
commit 1c831692a7
9 changed files with 13 additions and 22 deletions
+2 -2
View File
@@ -112,8 +112,8 @@
/mob/living/silicon/ai/CtrlClickOn(var/atom/A)
A.AICtrlClick(src)
/mob/living/silicon/ai/AltClickOn(var/atom/A)
if(!A.AIAltClick(src))
altclick_listed_turf(A)
A.AIAltClick(src)
/*
The following criminally helpful code is just the previous code cleaned up;
+4 -12
View File
@@ -322,18 +322,10 @@
Used as an alternate way to interact with things.
*/
/mob/proc/AltClickOn(atom/A)
if(!A.AltClick(src))
altclick_listed_turf(A)
/mob/proc/altclick_listed_turf(atom/A)
var/turf/T = get_turf(A)
if(T == A.loc || T == A)
if(T == listed_turf)
listed_turf = null
else if(TurfAdjacent(T))
listed_turf = T
client.statpanel = T.name
. = SEND_SIGNAL(src, COMSIG_MOB_ALTCLICKON, A)
if(. & COMSIG_MOB_CANCEL_CLICKON)
return
A.AltClick(src)
/mob/living/carbon/AltClickOn(atom/A)
if(!stat && mind && iscarbon(A) && A != src)
+1 -2
View File
@@ -98,8 +98,7 @@
/mob/living/silicon/robot/CtrlClickOn(atom/A)
A.BorgCtrlClick(src)
/mob/living/silicon/robot/AltClickOn(atom/A)
if(!A.BorgAltClick(src))
altclick_listed_turf(A)
A.BorgAltClick(src)
/atom/proc/BorgCtrlShiftClick(mob/living/silicon/robot/user) //forward to human click if not overridden
CtrlShiftClick(user)
+1 -1
View File
@@ -31,7 +31,7 @@
ShiftClickOn(A)
return
if(modifiers["alt"])
altclick_listed_turf(A)
AltClickNoInteract(src, A)
return
if(modifiers["ctrl"])
CtrlClickOn(A)
@@ -5,7 +5,7 @@
ShiftClickOn(A)
return
if(modifiers["alt"])
altclick_listed_turf(A)
AltClickNoInteract(src, A)
return
if(ishuman(A))
@@ -28,7 +28,7 @@
/mob/living/simple_animal/hostile/guardian/bomb/AltClickOn(atom/movable/A)
if(!istype(A))
altclick_listed_turf(A)
AltClickNoInteract(src, A)
return
if(loc == summoner)
to_chat(src, "<span class='danger'><B>You must be manifested to create bombs!</span></B>")
@@ -105,7 +105,7 @@
/mob/living/simple_animal/hostile/guardian/healer/AltClickOn(atom/movable/A)
if(!istype(A))
altclick_listed_turf(A)
AltClickNoInteract(src, A)
return
if(loc == summoner)
to_chat(src, "<span class='danger'><B>You must be manifested to warp a target!</span></B>")
@@ -274,7 +274,7 @@ Difficulty: Medium
/mob/living/simple_animal/hostile/megafauna/dragon/AltClickOn(atom/movable/A)
if(!istype(A))
altclick_listed_turf(A)
AltClickNoInteract(src, A)
return
if(swoop_cooldown >= world.time)
to_chat(src, "<span class='warning'>You need to wait 20 seconds between swoop attacks!</span>")
@@ -445,7 +445,7 @@ Difficulty: Normal
/mob/living/simple_animal/hostile/megafauna/hierophant/AltClickOn(atom/A) //player control handler(don't give this to a player holy fuck)
if(!istype(A) || get_dist(A, src) <= 2)
return altclick_listed_turf(A)
return AltClickNoInteract(src, A)
blink(A)
//Hierophant overlays