diff --git a/code/modules/reagents/Chemistry-Recipes.dm b/code/modules/reagents/Chemistry-Recipes.dm
index f692cb8c893..35b8f9cef09 100644
--- a/code/modules/reagents/Chemistry-Recipes.dm
+++ b/code/modules/reagents/Chemistry-Recipes.dm
@@ -1143,6 +1143,7 @@ datum
result = "gintonic"
required_reagents = list("gin" = 2, "tonic" = 1)
result_amount = 3
+ mix_message = "The tonic water and gin mix together perfectly."
cuba_libre
name = "Cuba Libre"
diff --git a/code/modules/reagents/newchem/drinks.dm b/code/modules/reagents/newchem/drinks.dm
new file mode 100644
index 00000000000..b126d460184
--- /dev/null
+++ b/code/modules/reagents/newchem/drinks.dm
@@ -0,0 +1,32 @@
+datum/reagent/ginsonic
+ name = "Gin and sonic"
+ id = "ginsonic"
+ description = "GOTTA GET CRUNK FAST BUT LIQUOR TOO SLOW"
+ reagent_state = LIQUID
+ color = "#1111CF"
+
+/datum/chemical_reaction/ginsonic
+ name = "ginsonic"
+ id = "ginsonic"
+ result = "ginsonic"
+ required_reagents = list("gintonic" = 1, "methamphetamine" = 1)
+ result_amount = 2
+ mix_message = "The drink turns electric blue and starts quivering violently."
+
+datum/reagent/ginsonic/on_mob_life(var/mob/living/M as mob)
+ if(!M) M = holder.my_atom
+ if(prob(10))
+ M.reagents.add_reagent("methamphetamine",1.2)
+ M.reagents.add_reagent("ethanol",1.4)
+ if(prob(8))
+ M.say(pick("Gotta go fast!", "Let's juice.", "I feel a need for speed!", "Way Past Cool!"))
+ if(prob(8))
+ switch(pick(1, 2, 3))
+ if(1)
+ M << "Time to speed, keed!"
+ if(2)
+ M << "Let's juice."
+ if(3)
+ M << "Way Past Cool!"
+ ..()
+ return
diff --git a/code/modules/reagents/newchem/drugs.dm b/code/modules/reagents/newchem/drugs.dm
index 83b68f7a69f..a7e29207591 100644
--- a/code/modules/reagents/newchem/drugs.dm
+++ b/code/modules/reagents/newchem/drugs.dm
@@ -387,4 +387,74 @@ datum/reagent/crank/addiction_act_stage4(var/mob/living/M as mob)
if(prob(50))
M.stuttering += 2
..()
+ return
+
+/datum/reagent/fliptonium
+ name = "Fliptonium"
+ id = "fliptonium"
+ description = "Do some flips!"
+ reagent_state = LIQUID
+ color = "#A42964"
+ metabolization_rate = 0.2
+ overdose_threshold = 15
+
+/datum/chemical_reaction/fliptonium
+ name = "fliptonium"
+ id = "fliptonium"
+ result = "fliptonium"
+ required_reagents = list("ephedrine" = 1, "liquid_dark_matter" = 1, "chocolate" = 1, "ginsonic" = 1)
+ result_amount = 4
+ mix_message = "The mixture swirls around excitedly!"
+
+datum/reagent/fliptonium/reaction_mob(var/mob/M, var/method=TOUCH, var/volume)
+ if(!istype(M, /mob/living))
+ return
+ if(method == INGEST || method == TOUCH)
+ M.SpinAnimation(speed = 12, loops = -1)
+
+/datum/reagent/fliptonium/on_mob_life(var/mob/living/M as mob)
+ if(!M) M = holder.my_atom
+ if(current_cycle == 5)
+ M.SpinAnimation(speed = 11, loops = -1)
+ if(current_cycle == 10)
+ M.SpinAnimation(speed = 10, loops = -1)
+ if(current_cycle == 15)
+ M.SpinAnimation(speed = 9, loops = -1)
+ if(current_cycle == 20)
+ M.SpinAnimation(speed = 8, loops = -1)
+ if(current_cycle == 25)
+ M.SpinAnimation(speed = 7, loops = -1)
+ if(current_cycle == 30)
+ M.SpinAnimation(speed = 6, loops = -1)
+ if(current_cycle == 40)
+ M.SpinAnimation(speed = 5, loops = -1)
+ if(current_cycle == 50)
+ M.SpinAnimation(speed = 4, loops = -1)
+ M.AdjustParalysis(-2)
+ M.AdjustStunned(-2)
+ M.AdjustWeakened(-2)
+ M.adjustStaminaLoss(-2)
+ ..()
+ return
+
+datum/reagent/fliptonium/reagent_deleted(var/mob/living/M as mob)
+ M.SpinAnimation(speed = 12, loops = -1)
+
+datum/reagent/fliptonium/overdose_process(var/mob/living/M as mob)
+ if(volume > 15)
+ if(prob(5))
+ switch(pick(1, 2, 3))
+ if(1)
+ M.emote("laugh")
+ M.adjustToxLoss(1)
+ if(2)
+ M << "[M] can't seem to control their legs!"
+ M.Weaken(8)
+ M.adjustToxLoss(1)
+ if(3)
+ M << "[M]'s hands flip out and flail everywhere!"
+ M.drop_l_hand()
+ M.drop_r_hand()
+ M.adjustToxLoss(1)
+ ..()
return
\ No newline at end of file
diff --git a/code/modules/reagents/newchem/food.dm b/code/modules/reagents/newchem/food.dm
index 5a8c8c520f6..8add8de4b76 100644
--- a/code/modules/reagents/newchem/food.dm
+++ b/code/modules/reagents/newchem/food.dm
@@ -218,4 +218,28 @@ datum/reagent/msg/reaction_mob(var/mob/M, var/method=TOUCH, var/volume)
M.Stun(rand(4,10))
M << "A horrible migraine overpowers you."
..()
- return
\ No newline at end of file
+ return
+
+/datum/reagent/fake_cheese
+ name = "Cheese substitute"
+ id = "fake_cheese"
+ description = "A cheese-like substance derived loosely from actual cheese."
+ reagent_state = LIQUID
+ color = "#B2B139"
+
+datum/reagent/beans
+ name = "Refried beans"
+ id = "beans"
+ description = "A dish made of mashed beans cooked with lard."
+ reagent_state = LIQUID
+ color = "#684435"
+
+datum/reagent/beans/on_mob_life(var/mob/living/M as mob)
+ if(!M) M = holder.my_atom
+ if(prob(8))
+ M.emote("fart")
+ ..()
+ return
+
+
+
diff --git a/code/modules/reagents/newchem/other.dm b/code/modules/reagents/newchem/other.dm
index 40bde42fd87..d20416d2418 100644
--- a/code/modules/reagents/newchem/other.dm
+++ b/code/modules/reagents/newchem/other.dm
@@ -149,6 +149,22 @@ datum/reagent/corgium
..()
return
+
+/datum/chemical_reaction/flaptonium
+ name = "Flaptonium"
+ id = "flaptonium"
+ result = null
+ required_reagents = list("egg" = 1, "colorful_reagent" = 1, "chicken_soup" = 1, "strange_reagent" = 1, "blood" = 1)
+ result_amount = 5
+ required_temp = 374
+
+/datum/chemical_reaction/flaptonium/on_reaction(var/datum/reagents/holder, var/created_volume)
+ var/location = get_turf(holder.my_atom)
+ new /mob/living/simple_animal/parrot(location)
+ ..()
+ return
+
+
datum/reagent/hair_dye
name = "Quantum Hair Dye"
id = "hair_dye"
@@ -232,4 +248,43 @@ datum/reagent/super_hairgrownium/on_mob_life(var/mob/living/M as mob)
H.equip_to_slot(fakemoustache, slot_wear_mask)
H << "Hair bursts forth from your every follicle!"
..()
+ return
+
+datum/reagent/fartonium
+ name = "Fartonium"
+ id = "fartonium"
+ description = "Oh god it never ends, IT NEVER STOPS!"
+ reagent_state = GAS
+ color = "#D06E27"
+
+/datum/chemical_reaction/fartonium
+ name = "Fartonium"
+ id = "fartonium"
+ result = "fartonium"
+ required_reagents = list("fake_cheese" = 1, "beans" = 1, "????" = 1, "egg" = 1)
+ result_amount = 2
+ mix_message = "The substance makes a little 'toot' noise and starts to smell pretty bad."
+
+datum/reagent/fartonium/on_mob_life(var/mob/living/M as mob)
+ if(!M) M = holder.my_atom
+ M.emote("fart")
+ if(holder.has_reagent("simethicone"))
+ if(prob(30))
+ switch(pick(1,2))
+ if(1)
+ M << "Something isn't right!"
+ M.adjustBruteLoss(1)
+ if(2)
+ M.emote("me",1,"strains, but nothing happens.")
+ M.adjustBruteLoss(2)
+ if(3)
+ M.emote("scream")
+ M.adjustBruteLoss(2)
+ if(4)
+ M << "Oh gosh, the pain!"
+ M.adjustBruteLoss(1)
+ if(5)
+ M << "THE PAIN!"
+ M.adjustBruteLoss(1)
+ ..()
return
\ No newline at end of file
diff --git a/code/modules/reagents/reagent_containers/food/drinks/drinkingglass.dm b/code/modules/reagents/reagent_containers/food/drinks/drinkingglass.dm
index 3005e332548..f22c823dd32 100644
--- a/code/modules/reagents/reagent_containers/food/drinks/drinkingglass.dm
+++ b/code/modules/reagents/reagent_containers/food/drinks/drinkingglass.dm
@@ -208,6 +208,10 @@
icon_state = "gintonicglass"
name = "Gin and Tonic"
desc = "A mild but still great cocktail. Drink up, like a true Englishman."
+ if("ginsonic")
+ icon_state = "ginsonic"
+ name = "Gin and Sonic"
+ desc = "An extremely high amperage drink. Absolutely not for the true Englishman."
if("whiskeycola")
icon_state = "whiskeycolaglass"
name = "Whiskey Cola"
diff --git a/code/modules/reagents/reagent_containers/food/snacks.dm b/code/modules/reagents/reagent_containers/food/snacks.dm
index 3885055c8d9..4b2c250b4ee 100644
--- a/code/modules/reagents/reagent_containers/food/snacks.dm
+++ b/code/modules/reagents/reagent_containers/food/snacks.dm
@@ -2566,6 +2566,7 @@
New()
..()
reagents.add_reagent("nutriment", 20)
+ reagents.add_reagent("fake_cheese", 5)
bitesize = 2
/obj/item/weapon/reagent_containers/food/snacks/cheesewedge
@@ -2976,6 +2977,7 @@
New()
..()
reagents.add_reagent("nutriment", 10)
+ reagents.add_reagent("beans",10)
bitesize = 2
/obj/item/weapon/reagent_containers/food/snacks/benedict
@@ -2985,6 +2987,7 @@
New()
..()
reagents.add_reagent("nutriment", 3)
+ reagents.add_reagent("egg", 3)
bitesize = 3
/obj/item/weapon/reagent_containers/food/snacks/hotdog
diff --git a/icons/obj/drinks.dmi b/icons/obj/drinks.dmi
index 925db02fe58..fe5de5c04c8 100644
Binary files a/icons/obj/drinks.dmi and b/icons/obj/drinks.dmi differ
diff --git a/paradise.dme b/paradise.dme
index a41357ac689..d25034eea08 100644
--- a/paradise.dme
+++ b/paradise.dme
@@ -1470,6 +1470,7 @@
#include "code\modules\reagents\reagent_dispenser.dm"
#include "code\modules\reagents\syringe_gun.dm"
#include "code\modules\reagents\newchem\chem_heater.dm"
+#include "code\modules\reagents\newchem\drinks.dm"
#include "code\modules\reagents\newchem\drugs.dm"
#include "code\modules\reagents\newchem\food.dm"
#include "code\modules\reagents\newchem\medicine.dm"