mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2026-02-07 06:48:44 +00:00
* Makes condiments their own subtype, fixes geese, prepares for merging * Fixes geese checking drink type instead of edible foodtype to eat gross food. * Renames foodtype var on drinks to drink_types to prevent above from happening again because it KEEPS HAPPENING. DRINKS AREN'T FOOD! * Makes Condiments their own subtype of reagent_containers because they don't make any use of being a subtype of food, at all. * Starts moving things from food to /food/drink subtype in preparation for merging /food/drink with /drink * fully removes Food subtype * /reagent_containers/drinks are now /reagent_containers/cup - This is so it's no longer confused with eachother. * /food/drinks is now /reagent_containers/cup/drinks, so we can keep their special abilities. * Fixes a LOT of errors with food, which are STILL checking the reagent_containers, despite ACTUAL food being refactored away from it a long time ago. This doesn't compile yet, but I do want to make sure my progress is well tracked. * remove copypaste code, changes soda cans * Removes most copy paste code between the two drinks, moving most stuff to parent whenever needed. * Made soda cans their own subtype since they didn't share anything with glass bottles anyways. * Fixes more problems with food/drinks, especially with geese. Geese really were just broken this whole time and no one said a word... * Removes a snowflake signal, now that both drink types share a common one. * Adds everything to the .dme Currently my goal is to get this all compiling, then remove isGlass var by making glass be all glass ones only. * Moves all icons into a single drinks dmi I'm not that great at icon stuff, hopefully I didn't forget/break anything. * Turns juices into their own subtype This allows us to let them check for type in molotov, to both get rid of a use of isGlass, and so non-glass non-cartons don't show up as 'carton'. * fixes compile issues, adds updatepaths * a better updatepaths * updates the damn maps now * properly names the updatepath * how did that get there * i suck at handling merge conflicts * how am i this bad * code improvement and soda fix * more fixes * Don't be a timer Ports from old food bottles to trans the reagents, rather than add a timer to. * Merge conflicts and fixes bottle smashing * Bottle smashing is now consistently functional regardless of how much liquid they have in them, when before it would spill first, then smash on the second hit. * runs updatepaths again
73 lines
2.9 KiB
Plaintext
73 lines
2.9 KiB
Plaintext
/obj/item/food/drug
|
|
name = "generic drug"
|
|
desc = "I am error"
|
|
icon = 'icons/obj/drugs.dmi'
|
|
foodtypes = GROSS
|
|
food_flags = FOOD_FINGER_FOOD
|
|
max_volume = 50
|
|
eat_time = 1 SECONDS
|
|
tastes = list("drugs" = 2, "chemicals" = 1)
|
|
eatverbs = list("gnaw" = 1)
|
|
bite_consumption = 10
|
|
w_class = WEIGHT_CLASS_TINY
|
|
preserved_food = TRUE
|
|
|
|
/obj/item/food/drug/saturnx
|
|
name = "saturnX glob"
|
|
desc = "A congealed glob of pure saturnX.\nThis compound was first discovered during the infancy of cloaking technology and at the time thought to be a promising candidate agent. It was withdrawn for consideration after the researchers discovered a slew of associated safety issues including thought disorders and hepatoxicity.\nIt has since attained some limited popularity as a street drug."
|
|
icon_state = "saturnx_glob" //tell kryson to sprite two more variants in the future.
|
|
food_reagents = list(/datum/reagent/drug/saturnx = 10)
|
|
|
|
/obj/item/food/drug/moon_rock
|
|
name = "moon rock"
|
|
desc = "A small hard lump of kronkaine freebase.\nIt is said the average kronkaine addict causes as much criminal damage as four cat burglars, two arsonists and one rabid pit bull terrier combined."
|
|
icon_state = "moon_rock1"
|
|
food_reagents = list(/datum/reagent/drug/kronkaine = 10)
|
|
|
|
/obj/item/food/drug/moon_rock/Initialize(mapload)
|
|
. = ..()
|
|
icon_state = pick("moon_rock1", "moon_rock2", "moon_rock3")
|
|
AddElement(/datum/element/swabable, CELL_LINE_TABLE_MOONICORN, CELL_VIRUS_TABLE_GENERIC_MOB, 1, 5)
|
|
|
|
/obj/item/reagent_containers/cup/blastoff_ampoule
|
|
name = "bLaSToFF ampoule" //stylized name
|
|
desc = "A small ampoule. The liquid inside appears to be boiling violently.\nYou suspect it contains bLasSToFF; the drug thought to be the cause of the infamous Luna nightclub mass casualty incident."
|
|
icon = 'icons/obj/drugs.dmi'
|
|
icon_state = "blastoff_ampoule"
|
|
base_icon_state = "blastoff_ampoule"
|
|
volume = 20
|
|
reagent_flags = TRANSPARENT
|
|
spillable = FALSE
|
|
list_reagents = list(/datum/reagent/drug/blastoff = 10)
|
|
|
|
/obj/item/reagent_containers/cup/blastoff_ampoule/update_icon_state()
|
|
. = ..()
|
|
if(!reagents.total_volume)
|
|
icon_state = "[base_icon_state]_empty"
|
|
else if(spillable)
|
|
icon_state = "[base_icon_state]_open"
|
|
else
|
|
icon_state = base_icon_state
|
|
|
|
/obj/item/reagent_containers/cup/blastoff_ampoule/attack_self(mob/user)
|
|
if(!user.canUseTopic(src, BE_CLOSE, NO_DEXTERITY) || spillable)
|
|
return ..()
|
|
reagent_flags |= OPENCONTAINER
|
|
spillable = TRUE
|
|
playsound(src, 'sound/items/ampoule_snap.ogg', 40)
|
|
update_appearance()
|
|
|
|
/obj/item/reagent_containers/cup/blastoff_ampoule/throw_impact(atom/hit_atom, datum/thrownthing/throwingdatum)
|
|
. = ..()
|
|
if(.)
|
|
return
|
|
if(QDELING(src) || !hit_atom) //Invalid loc
|
|
return
|
|
var/obj/item/shard/ampoule_shard = new(drop_location())
|
|
playsound(src, SFX_SHATTER, 40, TRUE)
|
|
transfer_fingerprints_to(ampoule_shard)
|
|
spillable = TRUE
|
|
SplashReagents(hit_atom, TRUE)
|
|
qdel(src)
|
|
hit_atom.Bumped(ampoule_shard)
|