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

Hypospray Mk1 Rework #730

Merged
merged 30 commits into from
Jan 25, 2025
Merged

Conversation

crossexonar
Copy link
Contributor

Text to be filled out, Testing the PR to make sure I didnt mess anything up.

@crossexonar
Copy link
Contributor Author

crossexonar commented Jan 8, 2025

HOKAY, this is kind of a big one.
Replaces the original Mk1 Hypo-Sprays with an upgraded one.
Does NOT replace the Mk2 Hypo-Sprays by pooj.

Adds these new hypos to the Nanomed, CMO locker, and replaces the prototype hypo-spray printable in science

These were originally meant to be a midground between the Mk1 and Mk2's but ended up evolving.

Uses normal vials from viro for the basic mk1 Hypospray.
CMO version can use both vials and bottles.

Made the chem-master able to PRINT vials directly now.

Features of hypo's:
Can click on the hypo with a vial to swap directly to that one.
Can click the hypo onto a vial to swap directly to that one.
The hypokit's can be worn as belts to dedicate yourself to the way of the chem (a tiny bit more space efficient than using a belt + vials or belt + bottles with the CMO one)

Injection speed is based on how much of a chem you are injecting, lower amounts are faster (with a minimum time) and higher amounts are longer.

Implimented the mk1 behaviour of Resisting injection.

Can set the injection rate on the vials / bottles, or over-ride it on the hypo itself.

todo behavior: Make the hypo's slower when being used on somone wearing a voidsuit, similar to a syringe.
Make a printable upgrade that bypasses the above, and adds instant injection if 5u or lower (unless resisting the injection like the mk1) ((basicly mk1 behaviour when upgraded.))

another harder to do TODO, REACTIVE STORAGE ICONS, basing how many vials go on the sprite, with how many you put in the kit (I'm gonna need help with this one, and I don't want it holding these back FUNCTIONALLY)
image

image

image

Don't know if default ones should be black or white, with upgraded being the alternate color.

@crossexonar
Copy link
Contributor Author

That SHOULD be everything for the initial testing/upload, I'll be writing the upgrade system later on after we make sure this change doesnt set medical on fire, Removing the draft status for now.

@crossexonar crossexonar marked this pull request as ready for review January 8, 2025 01:57
@FartMaster69420
Copy link
Contributor

Is there a reason we're calling this Mk1s? If they're better than the Mk2s I think that's just going to lead to confusion for new players.

@crossexonar
Copy link
Contributor Author

Is there a reason we're calling this Mk1s? If they're better than the Mk2s I think that's just going to lead to confusion for new players.

Well it directly replaces the Mk1 hyposprays, and has limitations to what it can and cant do.

I see the mk2's as more of a "mass produced model" you get more of them, theyre marketed to the basic consumer with lots of pre-made packs (brute burn etc)

But if you have any name suggestions, feel free, im sure something will stick.

…ested by Kenzie the great devourer.

Gave the hypokits 60u of the base chems so that people dont just cannibalize the mk2's for their chems leaving empty kits in the locker.
@crossexonar
Copy link
Contributor Author

Renamed them to iHypo by WolfApple, as they are white and I found it funny.
added in some requested functions by kenzie.
gave the hypokits 60u of the basic chems so that people dont just cannibalize the mk2's in the vendors for their chems. (I'm sorry chemist mains)

/obj/item/weapon/reagent_containers/glass/beaker/vial/preloaded/dexalin = 2)
can_hold = list(/obj/item/weapon/revised_hypospray, /obj/item/weapon/reagent_containers/glass/beaker/vial)
//can fit vials, and the mk.I hyospray.

Copy link
Contributor

@Cameron-The-Raven Cameron-The-Raven Jan 9, 2025

Choose a reason for hiding this comment

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

/obj/item/weapon/storage/firstaid/mkIhypokit/handle_item_insertion()
  beaker_total = 0
  for(var/obj/item/weapon/reagent_containers/container in contents)
    if(istype(container)
      beaker_total += 1
    else
      continue
  update_icon()


/obj/item/weapon/storage/firstaid/mkIhypokit/update_icon()
  ..()
  icon_state = "vialcaselight-[beaker_total]"

Comment on lines +235 to +236
playsound(loc, 'sound/effects/hypospray.ogg', 50)
playsound(loc, 'sound/effects/refill.ogg', 50)
Copy link
Contributor

Choose a reason for hiding this comment

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

Should be made into a single .ogg at some point in the future.

Copy link
Contributor

@Cameron-The-Raven Cameron-The-Raven left a comment

Choose a reason for hiding this comment

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

Code looks solid.

@Cameron-The-Raven
Copy link
Contributor

Cameron-The-Raven commented Jan 9, 2025

A few changes.

With this being added, the Mk2 should be removed.

I don't see any reason to see them still kicking around. Should be one or the other as this addition is going to just even further add to the bloat of the medivendor.

Currently, the medivendor has:

Two of the Mk1 (containing 60u of bicaridine, antitoxin, keloderma, and dexalin) each for a total of 120u

Four base hypospray_mkii

Eight more specialized hypospray_mkii, each pair having 240 u of bicaridine, dylovene, kelotane, dexalin, and tricordrazine.

This means the medivendor now has two different hyposprays (2 & 12) for a total of 14 hyposprays in the vendor and:
360u bicaridine, 360u dylovene, 120u keloderma, 240u kelotane, 360u dexalin, 240u tricordrazine.

This is way too much and this PR just adds onto the bloat.

They honestly shouldn't have chemicals pre-loaded in them in the first place (CMO exempt, they should have one that's fully loaded), much less over 300u of decent chems.

It's traditionally been just basic chems (dylovene and inaprovaline in the medivend) and anything further you want to have you'd have to talk to chem or make it yourself.

And these numbers are just with one nanomed. If there is multiple, multiply the above numbers by however many nanomeds there are.

So a map with three nanomeds will have >1000u of chems just floating around sitting in nanomeds and one with two will have >700. Essentially just making it so there's no reason to make those chems, just pull out a hypo from the nanomed and steal the chems from it.

@Zoldorf
Copy link

Zoldorf commented Jan 9, 2025

I second Cameron.

@keane0tts
Copy link

It's not secret that I'm a fan of hyposprays (I'm a Trekie after all), and so I'm a huge fan of this change.

I do agree with Cameron on the medicine issue. While I think it's fine to have SOME chems laying around in case of an emergency, any doctor answering a fax should be able to use the medkits in storage to stabilize (hell, even completely cure) a patient when answering a fax. I don't like the existing hypospray kits in the medivends, and I don't think the new hyposprays should come with chems either.

Just having these new hypos available to be picked up from the medivend and the ability to print vials from the chemmaster should be enough, while also keeping chemists relevant.

@FartMaster69420
Copy link
Contributor

FartMaster69420 commented Jan 9, 2025

I agree with what others have said here, keeping Mk2s is redundant.

If we absolutely have to keep them they should be moved out of the health vendors to reduce clutter.

Also agree with Keane, packing so much chems in the medivend just steals from the job of chemists.

@keane0tts
Copy link

Oh shit, forgot to add that I personally think the white/blue ones should be the base model and the black/gold ones should be the upgraded model. Personally, I prefer medical tools not looking like guns.

@crossexonar
Copy link
Contributor Author

Oh shit, forgot to add that I personally think the white/blue ones should be the base model and the black/gold ones should be the upgraded model. Personally, I prefer medical tools not looking like guns.

They are, dork.

@crossexonar
Copy link
Contributor Author

crossexonar commented Jan 10, 2025

Would something like this address everyones concerns about chem bloat?
removing all the hypos from the nanomeds and putting them in the medbay storage instead.
image

or having them put down near the other first aid kits and move the ml3m + new hypos up near the door
(im not sure about the rascals pass map would have to look)

Also adding the mk2 kits as something you can order from cargo if you need more of them for emergencies.

1 of each mk2 kit should be plenty CHEM wise, but 2 of each kit is acceptable, its up to medical to decide what is best balance, I just suggest something that addresses their concerns.

@crossexonar
Copy link
Contributor Author

better pictures of what it would look like on the two maps:
image

image

@LanderExqueak
Copy link

It works for me, seems like a good place to have the 'Oh s#!t' chems for when someone hasn't had a chance to make any, and reduces bloat in the medivends.

@Cameron-The-Raven
Copy link
Contributor

Having a reasonable amount on the map seems like a good idea vs being in the medivend.

@keane0tts
Copy link

Like I said before, the medkits have everything you need to stabilize or even cure a patient if you're answering a fax and have to act in the moment. My preference would be just getting rid of them, but I know that's not going to happen. No harm in voicing my opinion about it anyway.

This is a fine compromise, though. Fewer kits overall, so I like it. I approve!

@lm40 lm40 self-assigned this Jan 20, 2025
@lm40
Copy link
Collaborator

lm40 commented Jan 20, 2025

I'll try to wrap this up this week or at worst by the close of the month I think it is fine I just have to do a final test/review at some point

Copy link
Collaborator

@lm40 lm40 left a comment

Choose a reason for hiding this comment

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

lgtm

@lm40 lm40 merged commit 19a054d into TS-Rogue-Star:master Jan 25, 2025
5 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

8 participants