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鈥檒l occasionally send you account related emails.

Already on GitHub? Sign in to your account

Drinking #12719

Merged
merged 5 commits into from Dec 28, 2016
Merged

Drinking #12719

merged 5 commits into from Dec 28, 2016

Conversation

ghost
Copy link

@ghost ghost commented Dec 9, 2016

Reapproach of #12605 which is a reapproach of #10631 , now with more integrated suggestions, less sipping from chempacks, and better attack logging

Fixes #10614

馃啈

rscadd: Can now drink from chem bottles, beakers, etc. Default transfer rate is 5 units
rscadd: To splash a person, or yourself, with the contents of a beaker, you must be in any intent but help

@Probe1
Copy link
Member

Probe1 commented Dec 10, 2016

Love the attention to intent changing behavior.


user.visible_message("<span class='danger'>[user] feeds [M] \the [src].</span>", "<span class='danger'>You feed [M] \the [src].</span>")

add_attacklogs(user, M, "force-fed", src, "amount:[amount_per_transfer_from_this], container containing [reagentlist(src)]", adminwarn = FALSE)
Copy link
Author

Choose a reason for hiding this comment

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

@ComicIronic I removed the LAssailant stuff, and added in adminwarn = FALSE, because it'd get obnoxious after the 1412th time of [overworked medical staff] has forcefed [greyshit that keeps drinking grey tea] amount:15, container containing antitoxin

@Intigracy Intigracy added Balance Potentially going to upset people as it changes balance of the game. Content Adds something. Neat! labels Dec 10, 2016
@9600bauds
Copy link
Contributor

I don't like that the gulp size depends on the transfer amount, it's unlike other food in that you take several bites to eat something but you can somehow chug down an entire bucket in one gulp.

There's also the anti-immulsions bit that your "desired gulp amount" depends entirely on what EACH container is set to. You can try to take a sip out of a beaker and you seemingly randomly decide to gulp down the entire thing at once because, unbeknownst to you, somebody had changed that beaker's transfer ratio earlier. Oops?

I'd much prefer if it was kept to 5 per gulp, like before.

@Exxion
Copy link
Member

Exxion commented Dec 11, 2016

5 per gulp, like before

It's actually currently 1/5 of the container's contents, with some minimum threshold that I don't exactly know

@ghost
Copy link
Author

ghost commented Dec 11, 2016

Okay, how about this;

When you're drinking it yourself, it drinks in portions of 5u, but if you're forcing somebody else to drink it, it goes off of the transfer_amount (Currently got it so there's a delay scaling with the transfer amount) so you don't have to just keep spamming the guy with 5 at a time to get him to drink the damn anti toxin?

@Probe1
Copy link
Member

Probe1 commented Dec 11, 2016

tbh it sounds like a really bad idea all around. Forcing someone to drink 50 units of chloral in one gulp short circuits the games balance. Think of the lethal injectors in security. those take like 30 seconds to inject. why ever use those when you can just get a beaker?

@Shadowmech88
Copy link
Contributor

You can try to take a sip out of a beaker and you seemingly randomly decide to gulp down the entire thing at once because, unbeknownst to you, somebody had changed that beaker's transfer ratio earlier. Oops?

Not saying that's not unintuitive, but it's just as unintuitive as the current system of attempting to pour one beaker into another, and pouring 100 units instead of 10 because someone modified the beaker's transfer amount.

@Sprok0
Copy link
Contributor

Sprok0 commented Dec 12, 2016

To be fair probe, you can force feed someone any size container in barely more then the normal delay by just mashing it on them, and stacking all the cooldowns into the same time.
X is trying to feed Y the beaker!
X is trying to feed Y the beaker!
X is trying to feed Y the beaker!
X is trying to feed Y the beaker!
X is trying to feed Y the beaker!
X has fed Y from the beaker!
X has fed Y from the beaker!
X has fed Y from the beaker!
X has fed Y from the beaker!
X has fed Y from the beaker!

@Probe1
Copy link
Member

Probe1 commented Dec 12, 2016

Thats a problem with feeding not having an attack delay and not in the scope of this PR. But I absolutely agree.

@Intigracy
Copy link
Contributor

Yeah but when someone spams it on you your attack log suddenly is full and if you have any sense you'll move before you get too much.

As opposed to a one shot you're dead 100 units of Mutagen.

@ghost
Copy link
Author

ghost commented Dec 12, 2016

Okay, here's what I've done;

I've changed it back to the usual 5 with a 3 second delay on force-drinking, but you can now varedit the amount per imbibe up should an admin want to, or an object need it in the future.

Original intent on this PR was an in-between of syringes and pills, where you could set the drink-rate yourself, but as that's beaker-side and not player-side, the problems you all have pointed out would come about.

@@ -84,6 +84,9 @@
if (is_type_in_list(target, can_be_placed_into))
return

if(ishuman(target)) //Splashing handled in attack now
Copy link
Contributor

Choose a reason for hiding this comment

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

Why just humans?

Copy link
Author

Choose a reason for hiding this comment

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

Good question; with borgs they have no mouths, but if you wanted to feed a monkey I guess this would have to be iscarbon(target)?

Aliens too, in that regard

Copy link
Author

Choose a reason for hiding this comment

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

Well, on live you can't force-feed monkeys, or xenos, so I guess it'd be another feature to add that in?

@@ -161,6 +161,9 @@ obj/item/weapon/reagent_containers/chempack/verb/set_fill()
if (N)
fill_amount = N

/obj/item/weapon/reagent_containers/chempack/attack()
Copy link
Contributor

Choose a reason for hiding this comment

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

This should really be made a little clearer, some can_imbibe() proc or at least a comment saying what is this return accomplishing

Copy link
Contributor

Choose a reason for hiding this comment

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

Also does overriding attack() mess with filling it from tanks/sinks, or is that handled in afterattack()?

@Probe1
Copy link
Member

Probe1 commented Dec 21, 2016

Are we ready to rock?

@ghost
Copy link
Author

ghost commented Dec 21, 2016

Well, looking at it, you can't feed a monkey a drink

And xenos I don't think'll appreciate a pint of chloral so let's keep that as that.

The attack stuff I'll take a look at first, bauds has me worried now that I might've made it so syringes can't inject and stuff like that.

But first, snowmap

@Probe1
Copy link
Member

Probe1 commented Dec 27, 2016

Tested, does what it says on the tin, have a feeling there will be bugs in places I can't think to test.

@Probe1 Probe1 merged commit 4741e67 into vgstation-coders:Bleeding-Edge Dec 28, 2016
@ghost
Copy link
Author

ghost commented Dec 28, 2016

馃槰

@ghost ghost deleted the drinking branch December 28, 2016 00:39
ihadtoregisterforthis pushed a commit to ihadtoregisterforthis/fork4 that referenced this pull request Jul 3, 2017
* Can now drink from regular bottles

* Good spot, comic

* Redo logging

* remove removal of LAssailant, removes spam

* Reagents are now drank in 5u or less, unhardcoded
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Balance Potentially going to upset people as it changes balance of the game. Content Adds something. Neat!
Projects
None yet
Development

Successfully merging this pull request may close these issues.

FEATURE REQUEST: DRINKING FROM BOTTLES
7 participants