pAIs and lightgeists can now correctly climb ladders. (#70869)

## About The Pull Request
See the title and the relative issue reports.

The logic here is that, if they can move, chances are they can also use
ladders (with a few exceptions such as camera mobs). This ought to
include both pAIs and lightgeists, even if they cannot directly interact
with about every other object in the game.

I have also moved lightgeists onto a new file, from colossus.dm.

## Why It's Good For The Game
This will fix #57061 and fix #69228.

## Changelog

🆑
fix: pAIs and lightgeists can now correctly climb ladders.
fix: fixed a small issue with the radial menu for ladders that caused
the user to travel down when abruptly closed.
/🆑

Co-authored-by: Mothblocks <35135081+Mothblocks@users.noreply.github.com>
This commit is contained in:
Ghom
2022-11-28 11:57:00 -08:00
committed by GitHub
co-authored by Mothblocks
parent 5b2d11e963
commit cdf4616561
5 changed files with 100 additions and 68 deletions
+13 -2
View File
@@ -157,7 +157,7 @@
going_up = TRUE
if("Down")
going_up = FALSE
if("Cancel")
else
return
if(is_ghost || !travel_time)
@@ -251,7 +251,18 @@
/obj/structure/ladder/attack_robot_secondary(mob/living/silicon/robot/user)
. = ..()
if(. == SECONDARY_ATTACK_CANCEL_ATTACK_CHAIN || !user.Adjacent(src))
return SECONDARY_ATTACK_CONTINUE_CHAIN
return
use(user, going_up = FALSE)
return SECONDARY_ATTACK_CANCEL_ATTACK_CHAIN
/obj/structure/ladder/attack_pai(mob/user, list/modifiers)
use(user)
return TRUE
/obj/structure/ladder/attack_pai_secondary(mob/user, list/modifiers)
. = ..()
if(. == SECONDARY_ATTACK_CANCEL_ATTACK_CHAIN)
return
use(user, going_up = FALSE)
return SECONDARY_ATTACK_CANCEL_ATTACK_CHAIN