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

DetGadget Hat Revitalization #35438

Open
wants to merge 27 commits into
base: master
Choose a base branch
from

Conversation

ArtisticRoomba
Copy link
Contributor

About the PR

Adds the Go Go Hat, a hat that has the ability to store items and retrieve items automatically via the saying of a catchphrase. This catchphrase can be anything you want, but obviously it's mandatory for you to say GO GO GADGET.

Basically it's the DetGadget hat from SS13. WIthout the scuttlebot component.

This is a revitalization of the closed PR #30188, updated to address reviews.

Why / Balance

INSPECTOR GADGET

As for the balance component, this hat adds a sizeable inventory to the detective, a standard backpack on top of your head! However it can only fit small items or lower, and you have to request the item by saying what you want, so there's a tradeoff there.

Right now the only disallowed items are:

  • The nuke disk and fakes
  • Any high-value item, for example syndie objectives.

I'm willing to decrease the size of the hat or expand its limit to other items.

Technical details

Creates the StorageVoiceControlSystem and the StorageVoiceControlComponent. The VoiceTriggeredEvent is raised by TriggerOnVoice, piggybacking on that system for the catchphrase features.

For the StorageVoiceControlSystem:

  • The system receives events raised by a VoiceTriggeredEvent.
  • System yoinks respective components needed.
  • If the player has an item in their hand, the system will try to insert that item into the storage. If it fails it'll tell the player why.
  • If the player's hand is empty, the system iterates through each item in the storage and if it finds an item that matches the requested item it'll put the item in the player's hands.
    • What if both hands are empty? Well, the logic determines that if there's an active item in your hand, it'll try to insert it, so we guarantee that the player will have an empty hand to accept an item. otherwise it'll try to insert it.

All of this is admin logged as well under Action.

Media

edited_2025-02-23.15-14-48.mp4

Requirements

Breaking changes

nada

Changelog
🆑 ArtisticRoomba, Cojoke-dot

  • add: The detective can now find the go go hat in their locker. This hat has the ability to store and retrieve items automatically via the saying of a catchphrase. GO GO GADGET!

@ArtisticRoomba ArtisticRoomba changed the title DetGadget Hat DetGadget Hat Revitalization Feb 24, 2025
@github-actions github-actions bot added S: Untriaged Status: Indicates an item has not been triaged and doesn't have appropriate labels. size/M Denotes a PR that changes 100-999 lines. labels Feb 24, 2025
@ArtisticRoomba ArtisticRoomba added P3: Standard Priority: Default priority for repository items. T: New Feature Type: New feature or content, or extending existing content S: Needs Review Status: Requires additional reviews before being fully accepted T: Balance Change Type: Balance changes through direct value changes, or changes to mechanics that affect it DB: Beginner Friendly Difficulty: Great for beginners. Unambiguous in scope, and explains how to achieve the result. A: Security Area: Security department, including Detectives, HoS and removed S: Untriaged Status: Indicates an item has not been triaged and doesn't have appropriate labels. labels Feb 24, 2025
@MilonPL MilonPL self-requested a review February 24, 2025 04:09
@MilonPL MilonPL self-assigned this Feb 24, 2025
Copy link
Contributor

@beck-thompson beck-thompson left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'd personally prefer if you had to be wearing it for it to work! Right now it works even if you put it in your backpack.

Also try to get rid of this open verb as it doesn't work if you click it!
image

@Pumkin69
Copy link
Contributor

GO GO GADGET HAT IS ALIVE AGAIN I CANT WAIT.

@TeenSarlacc
Copy link
Contributor

GO GO GADGET SAWED OFF SHOTGUN

Copy link
Contributor

@beck-thompson beck-thompson left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good! 👍

@beck-thompson beck-thompson added the S: Approved Status: Reviewed and approved by at least one maintainer; a PR may require another approval. label Feb 25, 2025
@Kadeo64
Copy link
Contributor

Kadeo64 commented Feb 25, 2025

go go gadget quantum spin inverter

@walksanatora
Copy link

go go gadet "gibfoam"

if (storage.Container.ContainedEntities.Count != 0)
{
_container.RemoveEntity(ent, item);
_adminLogger.Add(LogType.Action, LogImpact.Low, $"{ToPrettyString(args.Source)} retrieved {itemName} from {ToPrettyString(ent)} via voice control");
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this should log the item ent instead of just the items name

@ArcaneOcto
Copy link

go go gadget harm baton

@ArtisticRoomba
Copy link
Contributor Author

proof that additions work
image
image

@ArtisticRoomba ArtisticRoomba requested a review from MilonPL March 1, 2025 01:11
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A: Security Area: Security department, including Detectives, HoS DB: Beginner Friendly Difficulty: Great for beginners. Unambiguous in scope, and explains how to achieve the result. P3: Standard Priority: Default priority for repository items. S: Approved Status: Reviewed and approved by at least one maintainer; a PR may require another approval. S: Needs Review Status: Requires additional reviews before being fully accepted size/M Denotes a PR that changes 100-999 lines. T: Balance Change Type: Balance changes through direct value changes, or changes to mechanics that affect it T: New Feature Type: New feature or content, or extending existing content
Projects
None yet
Development

Successfully merging this pull request may close these issues.

9 participants