Merge branch 'master' into protean-rework

This commit is contained in:
BlackMajor
2022-12-27 13:39:16 +13:00
committed by GitHub
95 changed files with 108509 additions and 12563 deletions

View File

@@ -122,3 +122,10 @@
..()
verbs |= /mob/living/simple_mob/proc/use_headset
verbs |= /mob/living/simple_mob/proc/use_pda
/mob/living/simple_mob/update_icon()
. = ..()
for(var/belly_class in vore_fullness_ex)
var/vs_fullness = vore_fullness_ex[belly_class]
if(vs_fullness > 0)
add_overlay("[icon_state]_[belly_class]-[vs_fullness]")

View File

@@ -0,0 +1,130 @@
/mob/living/simple_mob/vore/aggressive/corrupthound/swoopie
name = "SWOOPIE XL"
desc = "A large birdlike robot with thick assets, plump belly, and a long elastic vacuum hose of a neck. Somehow still a cleanbot, even if just for its duties."
icon_state = "swoopie"
icon_living = "swoopie"
icon_dead = "swoopie_dead"
icon_rest = "swoopie_rest"
icon = 'modular_chomp/icons/mob/vore64x64_ch.dmi'
vis_height = 64
has_eye_glow = TRUE
custom_eye_color = "#00CC00"
mount_offset_y = 30
vore_capacity_ex = list("stomach" = 1, "neck1" = 1, "neck2" = 1, "neck3" = 1, "neck4" = 1)
vore_fullness_ex = list("stomach" = 0, "neck1" = 0, "neck2" = 0, "neck3" = 0, "neck4" = 0)
vore_icon_bellies = list("stomach", "neck1", "neck2", "neck3", "neck4")
vore_icons = 0
vore_pounce_chance = 100
vore_pounce_maxhealth = 125
has_hands = TRUE
adminbus_trash = TRUE //You know what, sure whatever. It's not like anyone's gonna be taking this bird on unga trips to be their gamer backpack, which kinda was the main reason for the trash eater restrictions in the first place anyway.
faction = "neutral"
/mob/living/simple_mob/vore/aggressive/corrupthound/swoopie/init_vore()
if(!voremob_loaded)
return
verbs |= /mob/living/proc/eat_trash
var/obj/belly/B = new /obj/belly/(src)
B.affects_vore_sprites = TRUE
B.belly_sprite_to_affect = "stomach"
B.name = "Churno-Vac"
B.desc = "With an abrupt loud WHUMP after a very sucky trip through the hungry bot's vacuum tube, you finally spill out into its waste container, where everything the bot slurps off the floors ends up for swift processing among the caustic sludge, efficiently melting everything down into a thin slurry to fuel its form. More loose dirt and debris occasionally raining in from above as the bot carries on with its duties to keep the station nice and clean."
B.digest_messages_prey = list("Under the heat and internal pressure of the greedy machine's gutworks, you can feel the tides of the hot caustic sludge claiming the last bits of space around your body, a few more squeezes of the synthetic muscles squelching and glurking as your body finally loses its form, completely blending down and merging into the tingly sludge to fuel the mean machine.")
B.digest_mode = DM_DIGEST
B.item_digest_mode = IM_DIGEST
B.digest_burn = 3
B.fancy_vore = 1
B.vore_sound = "Stomach Move"
B.belly_fullscreen = "anim_belly"
B.belly_fullscreen_color = "#3e2f27"
B.sound_volume = 25
B.count_items_for_sprite = TRUE
B = new /obj/belly/longneck/(src)
B.affects_vore_sprites = TRUE
B.belly_sprite_to_affect = "neck4"
B.name = "vacuum hose 4"
B.autotransferlocation = "Churno-Vac"
B.desc = "Thank you for your biofuel contribution~"
B.fancy_vore = 1
B.vore_sound = "Stomach Move"
B.sound_volume = 20
B = new /obj/belly/longneck/(src)
B.affects_vore_sprites = TRUE
B.belly_sprite_to_affect = "neck3"
B.name = "vacuum hose 3"
B.autotransferlocation = "vacuum hose 4"
B.desc = "Looks like it's gonna be all downhill from here..."
B.fancy_vore = 1
B.vore_sound = "Stomach Move"
B.sound_volume = 40
B = new /obj/belly/longneck/(src)
B.affects_vore_sprites = TRUE
B.belly_sprite_to_affect = "neck2"
B.name = "vacuum hose 2"
B.autotransferlocation = "vacuum hose 3"
B.desc = "It feels very tight in here..."
B.fancy_vore = 1
B.vore_sound = "Stomach Move"
B.sound_volume = 80
B = new /obj/belly/longneck/(src)
B.affects_vore_sprites = TRUE
B.belly_sprite_to_affect = "neck1"
B.name = "vacuum hose"
B.autotransferlocation = "vacuum hose 2"
B.fancy_vore = 1
B.vore_sound = "Stomach Move"
B.sound_volume = 100
B = new /obj/belly/longneck(src)
B.affects_vore_sprites = FALSE
B.name = "Vac-Beak"
B.desc = "SNAP! You have been sucked up into the big synthbird's beak, the powerful vacuum within the bird roaring somewhere beyond the abyssal deep gullet hungrily gaping before you, eagerly sucking you deeper inside towards a long bulgy ride down the bird's vacuum hose of a neck!"
B.autotransferlocation = "vacuum hose"
B.autotransfer_max_amount = 0
B.autotransferwait = 60
vore_selected = B
/obj/belly/longneck
affects_vore_sprites = TRUE
belly_sprite_to_affect = "neck1"
name = "vacuum hose"
desc = "With a mighty WHUMP, the suction of the big bird's ravenous vacuum system has sucked you up out of the embrace of its voracious main beak and into a tight bulge squeezing along the long ribbed rubbery tube leading towards the roaring doom of the synthetic bird's efficient waste disposal system."
digest_mode = DM_HOLD
item_digest_mode = IM_HOLD
autotransfer_enabled = TRUE
autotransferchance = 100
autotransferwait = 70
autotransferlocation = "Churno-Vac"
vore_verb = "suck"
belly_fullscreen_color = "#4d4d4d"
belly_fullscreen = "a_tumby"
human_prey_swallow_time = 1
nonhuman_prey_swallow_time = 1
autotransfer_max_amount = 2
count_items_for_sprite = TRUE
item_multiplier = 10
health_impacts_size = FALSE
speedy_mob_processing = TRUE
/mob/living/simple_mob/vore/aggressive/corrupthound/swoopie/Life()
. =..()
for(var/obj/belly/L in vore_organs) //Speedrun that autotransfer at 2s ticks instead of 6s
if(L.speedy_mob_processing)
L.process()
var/turf/T = get_turf(src)
if(istype(T))
for(var/obj/O in T)
if(O.clean_blood())
adjust_nutrition(1)
if(istype(T, /turf/simulated))
var/turf/simulated/S = T
if(T.clean_blood())
adjust_nutrition(1)
if(S.dirt > 50)
S.dirt = 0
adjust_nutrition(1)

View File

@@ -89,7 +89,7 @@
name = "giga device power cell"
desc = "A small power cell that holds a blistering amount of energy, constructed by clever scientists using secrets gleaned from alien technology."
icon_state = "meb_m_hi"
maxcharge = 6000
maxcharge = 10000
charge_amount = 20
origin_tech = list(TECH_POWER = 5, TECH_PRECURSOR = 1)
@@ -161,9 +161,10 @@
catalogue_data = list(/datum/category_item/catalogue/anomalous/precursor_a/alien_void_cell)
icon = 'icons/obj/abductor.dmi'
icon_state = "cell"
charge_amount = 120 // 5%.
maxcharge = 3600
charge_amount = 180 // 5%.
charge_delay = 50 // Every five seconds, bit faster than the default.
origin_tech = list(TECH_POWER = 8, TECH_ENGINEERING = 6)
origin_tech = list(TECH_POWER = 7, TECH_ENGINEERING = 5, TECH_PHORON = 5, TECH_ARCANE = 1, TECH_PRECURSOR = 1)
/obj/item/weapon/cell/device/weapon/recharge/alien/update_icon()
return // No overlays please.
@@ -224,10 +225,10 @@
/obj/item/weapon/cell/device/weapon/recharge/alien/omni
name = "omni weapon power cell"
desc = "A mix between alien technology and phoron tech. Seems to fit in almost any cell slot..."
charge_amount = 90 // 5%.
maxcharge = 1800
charge_delay = 50 SECONDS
origin_tech = list(TECH_POWER = 6, TECH_ENGINEERING = 4, TECH_PHORON = 3)
charge_amount = 240 // 5%.
maxcharge = 4800
charge_delay = 50
origin_tech = list(TECH_POWER = 8, TECH_ENGINEERING = 6, TECH_PHORON = 6, TECH_ARCANE = 2, TECH_PRECURSOR = 2)
/obj/item/weapon/cell/device/weapon/recharge/alien/omni/empty/Initialize()
. = ..()

View File

@@ -160,8 +160,9 @@
origin_tech = list(TECH_POWER = 4, TECH_BIO = 5)
icon = 'icons/mob/slimes.dmi' //'icons/obj/harvest.dmi'
icon_state = "yellow slime extract" //"potato_battery"
description_info = "This 'cell' holds a max charge of 10k and self recharges over time."
maxcharge = 10000
description_info = "This 'cell' holds a max charge of 20k and self recharges over time."
maxcharge = 20000
charge_amount = 1000 // 5%.
matter = null
self_recharge = TRUE
standard_overlays = FALSE

View File

@@ -113,8 +113,8 @@
/datum/design/item/powercell/advance_device_recharge
name = "device, advanced recharging"
id = "recharging_advanced_device"
req_tech = list(TECH_POWER = 5, TECH_MATERIAL = 4, TECH_PHORON = 4, TECH_PRECURSOR = 2)
materials = list(MAT_STEEL = 1500, MAT_GLASS = 100, MAT_MORPHIUM = 100, MAT_PHORON = 500, MAT_DURASTEEL = 500, MAT_URANIUM = 200, MAT_VERDANTIUM = 150)
req_tech = list(TECH_POWER = 7, TECH_MATERIAL = 6, TECH_PHORON = 6)
materials = list(MAT_STEEL = 1000, MAT_GLASS = 400, MAT_DURASTEEL = 100, MAT_METALHYDROGEN = 200, MAT_VERDANTIUM = 150, MAT_PHORON = 2000)
build_path = /obj/item/weapon/cell/device/weapon/recharge
category = list("Misc")
sort_string = "BAABE"