Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Flockdrone manual control rework #11654

Merged
merged 14 commits into from Nov 9, 2022

Conversation

TobleroneSwordfish
Copy link
Contributor

[REWORK] [GAMEMODES] [UI] [WIKI]

About the PR

Replaces the finnicky flockdrone contextActions menu with a simpler context sensitive control ability.
Clicking on an allied flockdrone will now select it, giving you a targeting cursor that changes the flockdrone's AI task based on what you click on.

  • Clicking on a mob will cause the drone to attack/capture it depending on if it is incapacitated
  • Clicking on a tealprint will cause the drone to contribute to it
  • Clicking on a flockdrone/bit will cause the drone to repair it
  • Clicking on an item will cause the drone to consume it
  • Clicking on a flock tile or structure will just move the drone to it
  • Clicking on anything else will cause the drone to attempt to convert it

Why's this needed?

Turns out context action menus are far too slow and clunky for flockdrone control, and since it's easily possible to infer meaning from what you clicked on, we may as well do that instead.

Changelog

(u)LeahTheTech
(*)Greatly simplified Flockdrone manual control. Drones now infer orders from the target given.

@keywordlabeler keywordlabeler bot added A-Gamemodes Changes or additions to any gamemode's main features A-UI Modifies UI in some way. Automatically applied on a change to tgui/ C-Rework Reworks a feature E-Add-To-Wiki A PR that will require changes to the wiki labels Oct 28, 2022
@github-actions github-actions bot added the size/L Denotes a PR that changes 100-499 lines, ignoring generated files. label Oct 28, 2022
code/mob/living/critter/ai/flock/flocktasks.dm Outdated Show resolved Hide resolved
code/mob/living/critter/ai/flock/flocktasks.dm Outdated Show resolved Hide resolved
code/mob/living/critter/ai/flock/flocktasks.dm Outdated Show resolved Hide resolved
code/mob/living/critter/ai/flock/flocktasks.dm Outdated Show resolved Hide resolved
code/mob/living/critter/ai/flock/flocktasks.dm Outdated Show resolved Hide resolved
code/mob/living/critter/ai/flock/flocktasks.dm Outdated Show resolved Hide resolved
code/mob/living/critter/ai/flock/flocktasks.dm Outdated Show resolved Hide resolved
code/mob/living/critter/ai/flock/flocktasks.dm Outdated Show resolved Hide resolved
code/mob/living/critter/ai/flock/flocktasks.dm Outdated Show resolved Hide resolved
code/datums/abilities/flock/flockmind.dm Outdated Show resolved Hide resolved
@FlameArrow57
Copy link
Contributor

FlameArrow57 commented Oct 29, 2022

Nice

On line 130 just after /mob/living/intangible/flock/click(atom/target, params), could remove the closeContextActions() line I think

Could remove Flock context action icons if they aren't going to be used again?

Current selection of Flock tasks is fine but there's some things left out like butchering, deconstructing, repairing Flock things other than Flockbits and Flockdrones. Could maybe check the user's intent for some of that, which ends up being a bit complicated so not necessary. Would be possible for repairing other Flock things but would still be kind of a lot

TobleroneSwordfish and others added 4 commits October 29, 2022 03:58
Co-authored-by: Ryan <53062374+FlameArrow57@users.noreply.github.com>
Co-authored-by: Ryan <53062374+FlameArrow57@users.noreply.github.com>
@TobleroneSwordfish
Copy link
Contributor Author

Will get around to the other stuff tomorrow, although I don't think flockminds have intents?

@FlameArrow57
Copy link
Contributor

Yeah nvm

@TobleroneSwordfish
Copy link
Contributor Author

image
non-deterministic map correctness checks :)))))

code/mob/living/critter/ai/flock/flocktasks.dm Outdated Show resolved Hide resolved
code/mob/living/critter/ai/flock/flocktasks.dm Outdated Show resolved Hide resolved
code/datums/abilities/flock/flockmind.dm Outdated Show resolved Hide resolved
@pali6 pali6 removed their request for review October 29, 2022 21:50
Co-authored-by: Ryan <53062374+FlameArrow57@users.noreply.github.com>
@FlameArrow57
Copy link
Contributor

FlameArrow57 commented Oct 30, 2022

Cool. Only other thing in mind would be I guess checking for the flock atom property and then could maybe use that to find other repairable targets, but not necessary. Looks good otherwise

@TobleroneSwordfish TobleroneSwordfish added the S-Ready-For-Final-Review This PR has been looked over by members of the community. (automatic after 2 approvals) label Nov 1, 2022
_std/macros/flock.dm Outdated Show resolved Hide resolved
code/datums/abilities/flock/flockmind.dm Show resolved Hide resolved
@ZeWaka ZeWaka merged commit 39c5616 into goonstation:master Nov 9, 2022
github-actions bot pushed a commit that referenced this pull request Nov 9, 2022
@Studenterhue Studenterhue removed the E-Add-To-Wiki A PR that will require changes to the wiki label Mar 25, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A-Gamemodes Changes or additions to any gamemode's main features A-UI Modifies UI in some way. Automatically applied on a change to tgui/ C-Rework Reworks a feature S-Ready-For-Final-Review This PR has been looked over by members of the community. (automatic after 2 approvals) size/L Denotes a PR that changes 100-499 lines, ignoring generated files.
Projects
Status: Done
Development

Successfully merging this pull request may close these issues.

None yet

4 participants