Skip to content

Commit

Permalink
Better Queen shove (#6457)
Browse files Browse the repository at this point in the history
# About the pull request
This PR make it so when the Queen tries to move to a tile occupied by
another xeno of her hive it stuns them briefly, preventing bodyblock.
This similar to King's shove but without it being able to stun humans or
xenos of other hives.
<!-- Remove this text and explain what the purpose of your PR is.

Mention if you have tested your changes. If you changed a map, make sure
you used the mapmerge tool.
If this is an Issue Correction, you can type "Fixes Issue #169420" to
link the PR to the corresponding Issue number #169420.

Remember: something that is self-evident to you might not be to others.
Explain your rationale fully, even if you feel it goes without saying.
-->

# Explain why it's good for the game
Body block is not something you should be dealing with as Queen, Queen
shove is nice but doesn't do a great job in some cases (e.g multiple
xenos standing on the same tile)
# Testing Photographs and Procedure
<details>
<summary>Screenshots & Videos</summary>

Put screenshots and videos here with an empty line between the
screenshots and the `<details>` tags.

</details>


# Changelog
:cl:
balance: Queen will now briefly shove xenos if they are in a tile she is
trying to move to, preventing bodyblock.
/:cl:

---------

Co-authored-by: Drathek <[email protected]>
Co-authored-by: Vero <[email protected]>
  • Loading branch information
3 people authored Jun 20, 2024
1 parent f55a1bf commit 14549f7
Showing 1 changed file with 8 additions and 0 deletions.
8 changes: 8 additions & 0 deletions code/modules/mob/living/carbon/xenomorph/castes/Queen.dm
Original file line number Diff line number Diff line change
Expand Up @@ -415,6 +415,14 @@
make_combat_effective()

AddComponent(/datum/component/footstep, 2 , 35, 11, 4, "alien_footstep_large")
RegisterSignal(src, COMSIG_MOVABLE_PRE_MOVE, PROC_REF(check_block))

/mob/living/carbon/xenomorph/queen/proc/check_block(mob/queen, turf/new_loc)
SIGNAL_HANDLER
for(var/mob/living/carbon/xenomorph/xeno in new_loc.contents)
if(xeno.hivenumber == hivenumber)
xeno.KnockDown((5 DECISECONDS) / GLOBAL_STATUS_MULTIPLIER)
playsound(src, 'sound/weapons/alien_knockdown.ogg', 25, 1)

/mob/living/carbon/xenomorph/queen/generate_name()
if(!nicknumber)
Expand Down

0 comments on commit 14549f7

Please sign in to comment.