From 3a61e8fac62bcc791086855eb07370ebdcb17e0d Mon Sep 17 00:00:00 2001 From: Rae Date: Mon, 9 May 2022 14:58:55 +0200 Subject: [PATCH] initial commit --- code/modules/emotes/definitions/audible.dm | 5 +- .../modules/emotes/definitions/audiable.dm | 4 + .../mob/living/simple_mob/simple_mob.dm | 30 +- .../living/simple_mob/simple_mob_abilities.dm | 306 ++++++++++++++++++ .../simple_mob/subtypes/vore/xenomorph.dm | 164 ++++++++++ .../subtypes/vore/xenomorph_abilities.dm | 108 +++++++ .../icons/effects/xenobuild_icons.dmi | Bin 0 -> 9414 bytes modular_chomp/icons/mob/xenoleap_96.dmi | Bin 0 -> 1560 bytes modular_chomp/icons/mob/xenoqueen_64.dmi | Bin 0 -> 49936 bytes modular_chomp/icons/mob/xenos_32.dmi | Bin 0 -> 9024 bytes modular_chomp/sound/voice/wheeze.ogg | Bin 0 -> 12109 bytes vorestation.dme | 6 +- 12 files changed, 613 insertions(+), 10 deletions(-) create mode 100644 modular_chomp/code/modules/emotes/definitions/audiable.dm rename code/modules/mob/living/simple_mob/simple_mob_ch.dm => modular_chomp/code/modules/mob/living/simple_mob/simple_mob.dm (73%) create mode 100644 modular_chomp/code/modules/mob/living/simple_mob/simple_mob_abilities.dm create mode 100644 modular_chomp/code/modules/mob/living/simple_mob/subtypes/vore/xenomorph.dm create mode 100644 modular_chomp/code/modules/mob/living/simple_mob/subtypes/vore/xenomorph_abilities.dm create mode 100644 modular_chomp/icons/effects/xenobuild_icons.dmi create mode 100644 modular_chomp/icons/mob/xenoleap_96.dmi create mode 100644 modular_chomp/icons/mob/xenoqueen_64.dmi create mode 100644 modular_chomp/icons/mob/xenos_32.dmi create mode 100644 modular_chomp/sound/voice/wheeze.ogg diff --git a/code/modules/emotes/definitions/audible.dm b/code/modules/emotes/definitions/audible.dm index 29031da5c3..1a5a4e3084 100644 --- a/code/modules/emotes/definitions/audible.dm +++ b/code/modules/emotes/definitions/audible.dm @@ -228,13 +228,10 @@ emote_message_3p_target = "trills at TARGET." emote_sound = 'sound/voice/teshtrill.ogg' // Copyright CC BY-NC 3.0 Arnaud Coutancier (freesound.org) for the source audio. -//CHOMPEdit Add Start /decl/emote/audible/prbt key = "prbt" emote_message_1p = "You prbt." emote_message_3p = "prbts." emote_message_1p_target = "You prbt at TARGET." emote_message_3p_target = "prbts at TARGET." - emote_sound = 'sound/voice/prbt.ogg' - -//CHOMPEdit Add End \ No newline at end of file + emote_sound = 'sound/voice/prbt.ogg' \ No newline at end of file diff --git a/modular_chomp/code/modules/emotes/definitions/audiable.dm b/modular_chomp/code/modules/emotes/definitions/audiable.dm new file mode 100644 index 0000000000..c845d1ae39 --- /dev/null +++ b/modular_chomp/code/modules/emotes/definitions/audiable.dm @@ -0,0 +1,4 @@ +/decl/emote/audible/wheeze + ..() + emote_sound = 'modular_chomp/sound/voice/wheeze.ogg' + diff --git a/code/modules/mob/living/simple_mob/simple_mob_ch.dm b/modular_chomp/code/modules/mob/living/simple_mob/simple_mob.dm similarity index 73% rename from code/modules/mob/living/simple_mob/simple_mob_ch.dm rename to modular_chomp/code/modules/mob/living/simple_mob/simple_mob.dm index cf89e7c625..9a4622ebec 100644 --- a/code/modules/mob/living/simple_mob/simple_mob_ch.dm +++ b/modular_chomp/code/modules/mob/living/simple_mob/simple_mob.dm @@ -1,7 +1,19 @@ /mob/living/simple_mob + //speech sounds + var/list/speech_sounds = list() + var/speech_chance = 75 //mobs can be a bit more emotive than carbon/humans + //vars for vore_icons toggle control - var/vore_icons_toggle = 1 // on by default, as is legacy - var/vore_icons_cache = 0 // 0 by default. Going from ON to OFF should store vore_icons val here. + var/vore_icons_cache = null // null by default. Going from ON to OFF should store vore_icons val here, OFF to ON reset as null + + //spitting projectiles + var/spitting = 0 + var/spit_projectile = null // what out spit projecitle is. Can be anything + +/mob/living/simple_mob/RangedAttack(var/atom/A) + if(!isnull(spit_projectile) && spitting) + Spit(A) + . = ..() mob/living/simple_mob/verb/toggle_vore_icons() @@ -11,18 +23,24 @@ mob/living/simple_mob/verb/toggle_vore_icons() if(!vore_icons && !vore_icons_cache) to_chat(src,"This simplemob has no vore sprite.") - else if(vore_icons_toggle) + else if(isnull(vore_icons_cache)) vore_icons_cache = vore_icons vore_icons = 0 - vore_icons_toggle = 0 to_chat(src,"Vore sprite disabled.") else vore_icons = vore_icons_cache - vore_icons_toggle = 1 + vore_icons_cache = null to_chat(src,"Vore sprite enabled.") update_icon() +mob/living/simple_mob/handle_speech_sound() + if(speech_sounds && speech_sounds.len && prob(speech_chance)) + var/list/returns[2] + returns[1] = sound(pick(speech_sounds)) + returns[2] = 50 + return returns + . = ..() // a unique named update_transforms override to allow simplemobs going horizontal on lay/stun. // This will not make the mob horizontal if the mob has a icon_rest != null @@ -65,3 +83,5 @@ mob/living/simple_mob/verb/toggle_vore_icons() // This from original living.dm update_transforms too handle_status_indicators() + + diff --git a/modular_chomp/code/modules/mob/living/simple_mob/simple_mob_abilities.dm b/modular_chomp/code/modules/mob/living/simple_mob/simple_mob_abilities.dm new file mode 100644 index 0000000000..1cbf23f263 --- /dev/null +++ b/modular_chomp/code/modules/mob/living/simple_mob/simple_mob_abilities.dm @@ -0,0 +1,306 @@ +//Place for abilities that any /mob/living/simple_mob can use. Chomp-modular located file. +/mob/living/simple_mob + // pounce proc specific + var/pouncing = 0 // if the user has toggled 'pounce mode' on + var/pounce_last = 0 // time of previous pounce + var/pounce_delay = 0 // pounce delay in game ticks + var/pounce_speed = 1 // pounce speed in idk?? 2 kinda fast tho + + // icon handling for pounce. Has to handle a possible file change + var/icon_state_prepounce = null //icon state for 'preparing to pounce'. Null to not use any icon. + + var/icon_pounce_cache = null // cache. If pounce icons are in different files, the procs will cache the original icon filepath here for resetting + var/icon_pounce = null // icon filepath for pouncing (Flying through air). Null if same as original icon path. + var/icon_state_pounce = null // icon state for pouncing (Flying through air). Null to not use any icon. + var/icon_pounce_x = 0 // icon pixelshift x + var/icon_pounce_y = 0 // icon pixelshift y + var/icon_pounce_x_old = null // icon pixelshift x cache to preserve original value + var/icon_pounce_y_old = null // icon pixelshift y cache to preserve original value + + //spitting + var/spit_delay = 20 // maximum spit fire rate + var/last_spit = 0 + var/icon_overlay_spit = null // spit iconstate + var/icon_overlay_spit_pounce = null // spit while pouncing + +/mob/living/simple_mob/update_icon() + . = ..() + //use prepounce or pounce sprites, if any + if(pouncing && (status_flags & LEAPING)) //pouncing, flying through the air + if(!isnull(icon_state_pounce)) // if state is set + icon_state = icon_state_pounce + if(!isnull(icon_pounce)) // if icon filepath is set and not equal to pounce cache + if(icon != icon_pounce) // prevent accidently writing the pounce icon into the icon cache + icon_pounce_cache = icon + icon = icon_pounce + + else if(pouncing) //pre-pouncing + if(!isnull(icon_state_prepounce)) // if state is set + icon_state = icon_state_prepounce + if(!isnull(icon_pounce_cache)) // if cache is set + icon = icon_pounce_cache + icon_pounce_cache = null + else if(!isnull(icon_pounce_cache)) // not pouncing at all but cache is still set + icon = icon_pounce_cache + icon_pounce_cache = null + + //handle pounce variant pixelshifting + // X first + if(icon_pounce_x) // if an offset is even assigned + if(pouncing) + if(status_flags & LEAPING) //Flying through air - set + if(isnull(icon_pounce_x_old)) // only set once + icon_pounce_x_old = pixel_x + pixel_x = icon_pounce_x + else //Prepouncing - reset + if(!isnull(icon_pounce_x_old)) //only act if not already cleared + pixel_x = icon_pounce_x_old + icon_pounce_x_old = null + + else //Not pouncing or prepouncing - reset + if(!isnull(icon_pounce_x_old)) //only act if not already cleared + pixel_x = icon_pounce_x_old + icon_pounce_x_old = null + // Then Y + if(icon_pounce_y) // if an offset is even assigned + if(pouncing) + if(status_flags & LEAPING) //Flying through air - set + if(isnull(icon_pounce_y_old)) // only set once + icon_pounce_y_old = pixel_y + pixel_y = icon_pounce_y + else //Prepouncing - reset + if(!isnull(icon_pounce_y_old)) //only act if not already cleared + pixel_y = icon_pounce_y_old + icon_pounce_y_old = null + + else //Not pouncing or prepouncing - reset + if(!isnull(icon_pounce_y_old)) //only act if not already cleared + pixel_y = icon_pounce_y_old + icon_pounce_y_old = null + + // show spitting warning overlay, if any + if(spitting) + var/spiticon = null + if(!isnull(icon_overlay_spit) && (icon_state == icon_living)) + spiticon = icon_overlay_spit + else if(!isnull(icon_overlay_spit_pounce) && (icon_state == icon_state_prepounce)) + spiticon = icon_overlay_spit_pounce + + if(spiticon) + var/image/I = image(icon, icon_overlay_spit) + I.appearance_flags |= (RESET_COLOR|PIXEL_SCALE) + I.plane = MOB_PLANE + I.layer = MOB_LAYER + add_overlay(I) + +// Pouncing procs. +// Pouncing consists of a series of functions: +// > A user-toggleable enable or disable to 'pounce' or not pounce; "pouncing" toggled by a verb +// > When enabled, just click somewhere not adjacent to pounce there. +// > If you bump a person, stop on them and knock them over. +// > If you bump a solid object, stun yourself and fall over +/mob/living/simple_mob/proc/pounce_toggle() + set name = "Toggle Pouncing" + set desc = "Toggle pouncing. Doubleclick to pounce." + set category = "Abilities" + + if(pouncing) + to_chat(src, "Pouncing toggled off.") + pouncing = 0 + else + to_chat(src, "Pouncing toggled on! DoubleClick somewhere to pounce there.") + pouncing = 1 + update_icon() + +// This is the on-double-click action. +// We should alter them for the space of this specific proc, and then return them to what they were. +/mob/living/simple_mob/DblClickOn(atom/A, P) + //trying/permitted to pounce + if(pouncing) + //able to pounce (not dead or stunned or on CD) + if(isliving(src) && !src.weakened && (world.time > pounce_last) && !(status_flags & LEAPING)) + //can see pounce target + if((A in view(src, world.view))) + //make sure we're targetting a turf! + var/turf/T = get_turf(A) + //handle delay spam + pounce_last = world.time + pounce_delay + status_flags |= LEAPING + + //deal with passflag - give flags if don't have, mark for removal. Prevent removal if already has flags. + var/foundpt = 0 + var/foundpm = 0 + if(pass_flags & PASSTABLE) + foundpt = 1 + else + pass_flags |= PASSTABLE + if(pass_flags & PASSMOB) + foundpm = 1 + else + pass_flags |= PASSMOB + + // Do the pounce action + + //flying = 1 //So we can thunk into things + hovering = 1 // So we don't hurt ourselves running off cliffs + playsound(src, "sound/weapons/punchmiss.ogg", 50, 1) + + // throw_at returns FALSE if it will not call it's callback - useful to prevent state jamming + if(!throw_at(T, 10, pounce_speed, callback = CALLBACK(src, .proc/pouncefinish, foundpt, foundpm, T))) + if(status_flags & LEAPING) + status_flags &= ~LEAPING + flying = 0 + hovering = 0 + if(!foundpt) + pass_flags &= ~PASSTABLE + if(!foundpm) + pass_flags &= ~PASSMOB + else + to_chat(src, "Pouncing blind isn't wise!") + else + to_chat(src, "You can't do that right now!") + // some sanity incase the callback didn't fire for some reason + if(status_flags & LEAPING) + status_flags &= ~LEAPING + flying = 0 + hovering = 0 + pouncing = 0 + update_icon() + else + . = ..() + +// callback to terminate leap mode. Reset passflag if passflag = 0 (Mob doesn't already have it) +/mob/living/simple_mob/proc/pouncefinish(var/pt, var/pm, var/atom/T) + if(status_flags & LEAPING) + status_flags &= ~LEAPING + flying = 0 + hovering = 0 + + if(!pt) + pass_flags &= ~PASSTABLE + if(!pm) + pass_flags &= ~PASSMOB + + //PASSMOB is broken so we have to perform jank + //if we're adjacent to our target turf (but not ontop of it) and we are not blocked from moving there + if(Adjacent(T) && get_dist(src, T) && !LinkBlocked(src, T)) + //if a mob is on our target (This should be the only reason we didn't arrive) + for(var/mob/living/M in T) + if(isliving(M) && M != src) + var/mob/living/LM = M + + if(M.buckled) // make sure they fall when weakened + M.buckled.unbuckle_mob() + + LM.Weaken(5) + playsound(src, get_sfx("punch"), 50, 1) + pouncing = 0 + src.Move(T) + + //did we fail to arrive at our destination? + if(get_dist(src, T)) + pouncing = 0 + update_icon() + src.Weaken(5) + playsound(src, get_sfx("punch"), 50, 1) + else + //if we arrived, and weren't blocked, and are STILL pouncing, see if we landed on any living things that didn't block us that ISN't ourselves lmfao. + if(pouncing) + for(var/mob/living/M in T) + if(isliving(M) && M != src) + var/mob/living/LM = M + LM.Weaken(5) + playsound(src, get_sfx("punch"), 50, 1) + pouncing = 0 + update_icon() + + +// ported from mob/living/carbon/human/species/xenomorph/alien_powers +/mob/living/simple_mob/proc/Spit(var/atom/A) + if(isnull(spit_projectile)) + return + + if((last_spit + spit_delay) > world.time) //To prevent YATATATATATAT spitting. + to_chat(src, "You have not yet prepared your chemical glands. You must wait before spitting again.") + return + else + last_spit = world.time + + if(spitting && incapacitated(INCAPACITATION_DISABLED)) + to_chat(src, "You cannot spit in your current state.") + spitting = 0 + update_icon() + return + else if(spitting) + //visible_message("[src] spits [spit_name] at \the [A]!", "You spit [spit_name] at \the [A].") + var/obj/item/projectile/P = new spit_projectile(get_turf(src)) + P.firer = src + P.old_style_target(A) + P.fire() + playsound(src, 'sound/weapons/alien_spitacid.ogg', 25, 0) + +/mob/living/simple_mob/proc/neurotoxin() + set name = "Toggle Neurotoxic Spit" + set desc = "Readies a neurotoxic spit, which paralyzes the target for a short time if they are not wearing protective gear." + set category = "Abilities" + + if(spitting) + to_chat(src, "You stop preparing to spit.") + spitting = 0 + else + last_spit = world.time + spitting = 1 + spit_projectile = /obj/item/projectile/energy/neurotoxin + to_chat(src, "You prepare to spit neurotoxin.") + update_icon() + +/mob/living/simple_mob/proc/acidspit() + set name = "Toggle Acid Spit" + set desc = "Readies an acidic spit, which burns the target if they are not wearing protective gear." + set category = "Abilities" + + if(spitting) + to_chat(src, "You stop preparing to spit.") + spitting = 0 + else + last_spit = world.time + spitting = 1 + spit_projectile = /obj/item/projectile/energy/acid + to_chat(src, "You prepare to spit acid.") + update_icon() + +/mob/living/simple_mob/proc/corrosive_acid(O as obj|turf in oview(1)) //If they right click to corrode, an error will flash if its an invalid target./N + set name = "Corrosive Acid" + set desc = "Drench an object in acid, destroying it over time." + set category = "Abilities" + + if(!(O in oview(1))) + to_chat(src, "[O] is too far away.") + return + + // OBJ CHECK + var/cannot_melt + if(isobj(O)) + var/obj/I = O //Gurgs : Melts pretty much any object that isn't considered unacidable = TRUE + if(I.unacidable) + cannot_melt = 1 + else + if(istype(O, /turf/simulated/wall)) + var/turf/simulated/wall/W = O //Gurgs : Walls are deconstructed into girders. + if(W.material.flags & MATERIAL_UNMELTABLE) + cannot_melt = 1 + else if(istype(O, /turf/simulated/floor)) + var/turf/simulated/floor/F = O //Gurgs : Floors are destroyed with ex_act(1), turning them into whatever tile it would be if empty. Z-Level Friendly, does not destroy pipes. + if(F.flooring && (F.flooring.flags & TURF_ACID_IMMUNE)) + cannot_melt = 1 + else + cannot_melt = 1 //Gurgs : Everything that isn't a object, simulated wall, or simulated floor is assumed to be acid immune. Includes weird things like unsimulated floors and space. + + if(cannot_melt) + to_chat(src, "You cannot dissolve this object.") + return + + new /obj/effect/alien/acid(get_turf(O), O) + visible_message("[src] vomits globs of vile stuff all over [O]. It begins to sizzle and melt under the bubbling mess of acid!") + + return \ No newline at end of file diff --git a/modular_chomp/code/modules/mob/living/simple_mob/subtypes/vore/xenomorph.dm b/modular_chomp/code/modules/mob/living/simple_mob/subtypes/vore/xenomorph.dm new file mode 100644 index 0000000000..aec4be7910 --- /dev/null +++ b/modular_chomp/code/modules/mob/living/simple_mob/subtypes/vore/xenomorph.dm @@ -0,0 +1,164 @@ +// Chomp version of a xeno. Uses the thicc sprites for the queen - has a couple little custom abilities too. +// Thanks to BlackMajor for much guidance / stealing stuff from his bigdragon mob + +// Base type (Mostly initialises as an ability-less xeno hunter +/mob/living/simple_mob/xeno_ch + name = "xenomorph" + desc = "A chitin-covered bipedal creature with an eerie skittery nature." + + icon_dead = "alienh_dead" + icon_living = "alienh" + icon_rest = "alienh_sleep" + icon_state = "alienh" + icon = 'modular_chomp/icons/mob/xenos_32.dmi' + vis_height = 32 + + faction = "xeno" + maxHealth = 200 + health = 200 + see_in_dark = 10 + + + min_oxy = 0 + max_oxy = 0 + min_tox = 0 + max_tox = 0 + min_co2 = 0 + max_co2 = 0 + min_n2 = 0 + max_n2 = 0 + minbodytemp = 0 + + melee_damage_lower = 8 + melee_damage_upper = 16 + grab_resist = 50 + + vore_active = 1 + vore_capacity = 2 + vore_pounce_chance = 50 + vore_icons = null + + response_help = "pats" + response_disarm = "tries to shove" + response_harm = "hits" + attacktext = list("slashed") + friendly = list("nuzzles", "caresses", "headbumps against", "leans against", "nibbles affectionately on") + speech_sounds = list( 'sound/voice/hiss1.ogg', + 'sound/voice/hiss2.ogg', + 'sound/voice/hiss3.ogg', + 'sound/voice/hiss4.ogg', + 'sound/voice/hiss5.ogg') + has_hands = TRUE + + var/xeno_build_time = 5 //time to build a structure + + //HUD + var/datum/action/innate/xeno_ch/xeno_build/build_action = new + var/datum/action/innate/xeno_ch/xeno_neuro/neurotox_action = new + var/datum/action/innate/xeno_ch/xeno_acidspit/acidspit_action = new + var/datum/action/innate/xeno_ch/xeno_corrode/corrode_action = new + var/datum/action/innate/xeno_ch/xeno_pounce/pounce_action = new + + +/mob/living/simple_mob/xeno_ch/Initialize() + ..() + src.adjust_nutrition(src.max_nutrition) + sight |= SEE_MOBS + +/mob/living/simple_mob/xeno_ch/Login() + . = ..() + faction = "neutral" + verbs |= /mob/living/simple_mob/xeno_ch/proc/xeno_build + build_action.Grant(src) + + +// Xenomorph hunter subtype +/mob/living/simple_mob/xeno_ch/hunter + name = "xenomorph hunter" + + movement_cooldown = 1 + + icon_state_prepounce = "alienh_pounce" + icon_pounce = 'modular_chomp/icons/mob/xenoleap_96.dmi' + icon_state_pounce = "alienh_leap" + icon_overlay_spit = "alienspit" + icon_overlay_spit_pounce = "alienspit_leap" + icon_pounce_x = -32 + icon_pounce_y = -32 + + can_enter_vent_with = list( /obj/item/weapon/implant, + /obj/item/device/radio/borg, + /obj/item/weapon/holder, + /obj/machinery/camera, + /obj/belly, + /obj/screen, + /atom/movable/emissive_blocker, + /obj/item/weapon/material, + /obj/item/weapon/melee, + /obj/item/stack/, + /obj/item/weapon/tool, + /obj/item/weapon/reagent_containers/food, + /obj/item/weapon/coin, + /obj/item/weapon/aliencoin, + /obj/item/weapon/ore, + /obj/item/weapon/disk/nuclear, + /obj/item/toy, + /obj/item/weapon/card, + /obj/item/device/radio, + /obj/item/device/perfect_tele_beacon, + /obj/item/weapon/clipboard, + /obj/item/weapon/paper, + /obj/item/weapon/pen, + /obj/item/canvas, + /obj/item/paint_palette, + /obj/item/paint_brush, + /obj/item/device/camera, + /obj/item/weapon/photo, + /obj/item/device/camera_film, + /obj/item/device/taperecorder, + /obj/item/device/tape) + +/mob/living/simple_mob/xeno_ch/hunter/Login() + . = ..() + verbs |= /mob/living/simple_mob/proc/pounce_toggle + verbs |= /mob/living/proc/ventcrawl + verbs |= /mob/living/proc/hide + pounce_action.Grant(src) + +/mob/living/simple_mob/xeno_ch/queen + name = "xenomorph queen" + desc = "A towering chitin-covered bipedal creature with a rather intimidating aura about them." + + icon_dead = "alienq_dead" + icon_living = "alienq" + icon_rest = "alienq_sleep" + icon_state = "alienq" + icon = 'modular_chomp/icons/mob/xenoqueen_64.dmi' + vis_height = 64 + pixel_x = -16 + default_pixel_x = -16 + pixel_y = 0 + default_pixel_y = 0 + + maxHealth = 600 + health = 600 + + movement_cooldown = 2 + +/mob/living/simple_mob/xeno_ch/queen/Login() + . = ..() + verbs |= /mob/living/simple_mob/proc/neurotoxin + verbs |= /mob/living/simple_mob/proc/acidspit + verbs |= /mob/living/simple_mob/proc/corrosive_acid + neurotox_action.Grant(src) + acidspit_action.Grant(src) + corrode_action.Grant(src) + +/mob/living/simple_mob/xeno_ch/queen/maid + name = "xenomorph maid queen" + desc = "A towering chitin-covered bipedal creature with a rather intimidating aura about them... though, they seem to be wearing an interesting outfit." + + icon_dead = "alienqmaid_dead" + icon_living = "alienqmaid" + icon_rest = "alienqmaid_sleep" + icon_state = "alienqmaid" diff --git a/modular_chomp/code/modules/mob/living/simple_mob/subtypes/vore/xenomorph_abilities.dm b/modular_chomp/code/modules/mob/living/simple_mob/subtypes/vore/xenomorph_abilities.dm new file mode 100644 index 0000000000..556bced054 --- /dev/null +++ b/modular_chomp/code/modules/mob/living/simple_mob/subtypes/vore/xenomorph_abilities.dm @@ -0,0 +1,108 @@ +/mob/living/simple_mob/xeno_ch/proc/xeno_build() + set name = "Build Resin Structure" + set desc = "Build a xenomorph resin structure." + set category = "Abilities" + + var/list/options = list("Resin Door","Resin Membrane","Nest","Resin Wall","Weed Node") + for(var/option in options) + LAZYSET(options, option, image('modular_chomp/icons/effects/xenobuild_icons.dmi', option)) + var/choice = show_radial_menu(src, src, options, radius = 60) + if(!choice || QDELETED(src) || src.incapacitated()) + return FALSE + . = TRUE + + var/targetLoc = get_step(src, dir) + + if(iswall(targetLoc)) + targetLoc = get_turf(src) + + var/obj/O + + if(do_after(src, xeno_build_time)) + switch(choice) + if("Resin Door") + O = new /obj/structure/simple_door/resin(targetLoc) + + if("Resin Membrane") + O = new /obj/structure/alien/membrane(targetLoc) + + if("Nest") + O = new /obj/structure/bed/nest(targetLoc) + + if("Resin Wall") + O = new /obj/structure/alien/wall(targetLoc) + + if("Weed Node") + O = new /obj/effect/alien/weeds/node(targetLoc) + + if(O) + visible_message("[src] vomits up a thick purple substance and begins to shape it!", "You shape a [choice].") + O.color = "#321D37" + playsound(src, 'sound/effects/blobattack.ogg', 40, 1) + + + +///// +///// +// DATUM actions for xeno buttons +///// +///// + + + +/datum/action/innate/xeno_ch + check_flags = AB_CHECK_RESTRAINED | AB_CHECK_STUNNED | AB_CHECK_ALIVE + button_icon = 'modular_chomp/icons/effects/xenobuild_icons.dmi' + var/mob/living/simple_mob/xeno_ch/parent_xeno + + +/datum/action/innate/xeno_ch/Grant(mob/living/L) + if(L) + parent_xeno = L + ..() + +/datum/action/innate/xeno_ch/xeno_build + name = "Build resin structures" + button_icon_state = "Nest" + +/datum/action/innate/xeno_ch/xeno_build/Activate() + parent_xeno.xeno_build() + + +/datum/action/innate/xeno_ch/xeno_neuro + name = "Spit neurotoxin" + button_icon_state = "Neuro Spit" + +/datum/action/innate/xeno_ch/xeno_neuro/Activate() + parent_xeno.neurotoxin() + + +/datum/action/innate/xeno_ch/xeno_acidspit + name = "Spit acid" + button_icon_state = "Acid Spit" + +/datum/action/innate/xeno_ch/xeno_acidspit/Activate() + parent_xeno.acidspit() + + +/datum/action/innate/xeno_ch/xeno_corrode + name = "Corrode Object" + button_icon_state = "Acid" + +/datum/action/innate/xeno_ch/xeno_corrode/Activate() + parent_xeno.corrosive_acid() + + +/datum/action/innate/xeno_ch/xeno_pounce + name = "Pounce" + button_icon_state = "Pounce" + +/datum/action/innate/xeno_ch/xeno_pounce/Activate() + parent_xeno.pounce_toggle() + +/mob/living/simple_mob/xeno_ch/proc/grantactions() + build_action.Grant(src) + neurotox_action.Grant(src) + acidspit_action.Grant(src) + corrode_action.Grant(src) + pounce_action.Grant(src) \ No newline at end of file diff --git a/modular_chomp/icons/effects/xenobuild_icons.dmi b/modular_chomp/icons/effects/xenobuild_icons.dmi new file mode 100644 index 0000000000000000000000000000000000000000..078b1538c11a5675aa0a67674678cbbcb762f9f3 GIT binary patch literal 9414 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 literal 0 HcmV?d00001 diff --git a/modular_chomp/icons/mob/xenoleap_96.dmi b/modular_chomp/icons/mob/xenoleap_96.dmi new file mode 100644 index 0000000000000000000000000000000000000000..7e10b8a5c5bfaf37d6d5c015a569a777a6a98ad0 GIT binary patch literal 1560 zcmZXSdpOez7{`B3C(1a>EmT5s8P=>Vx5~s6xg?{VMO#e>vC=9rhnz;a%jGn8j@&v( zi84k=QZ9vt#*sSJ&J>njk zGs{6H^U=yO!kV(W*H?BG{@s-)r)Z>|dOjwpmGMTVv%C06QB+XfL^db$yHr_Ol4!5& zX)Bf9;fbLS&ii|Q4y8t-oS_=jtL^L6rzGw+La3Qic`7{-JX5m%F8vG)PY3tm zK=-5Ag<~rP$IZ(FP_yqD-`<6-xi+*jqe&FXnC4l^?A{q0O!OM zA-qGoYA1a}-6wFdn5J=C(*f)l;}S*mA^Wy(SJt?4Q*;N+1a0o8FUTq#l;}__{1%u|BJKT^oWwNW*RZLK1OnIJJ5;5q1$#2^|IZ3aT=yf|@+Tln&xT6rhh+ zEy-JGl!mGWUOBE|D#4Qi@|u=a ziyS4;>kC(*RbW(&5zVjHs>?1~L?DfXOwXTerD2_b+4DPD&P>dj8Vo!Pp? zX)l)R2mznPGac-AYELSjCbL|54j!GVaplmHdNB6*P05Dt7-Nc77{NU8O0}#0Lzo5W zLK7Dc9%Z?*^ACyWL>pGh!`&-3{q#;%#qHH82x^^zh~8t%N>LWke>Jy3K6?8=KU{th zzE1v(a2{?XGGmJ8O$x{C1~3^Ce{rJ&7T3zUM>{H?pdZ*yBT4po0m9<)(b;PYD>g4b zA+M2ywz0LI2lcK8CY2 z$5RjI8t>E(N0Q16pOq!#ZeFbjo}tj0KNvO5^4#V`R>C-}U*fJaCTohL&O+3iDRieF zIHL;6#llST!NzpN;;3i7iBw|@+FyrsqcP?-Zw`0wH*YR{0Nrf?N6}3ep3|DX`gW-`UTHv3CW&QdNj#fpgTqG;X|5k(X`JU7ST%}sffMC uL~YX4MIAmQH=zCAA;2?~}!dj~rgY?aN~=>GxB8sXLe literal 0 HcmV?d00001 diff --git a/modular_chomp/icons/mob/xenoqueen_64.dmi b/modular_chomp/icons/mob/xenoqueen_64.dmi new file mode 100644 index 0000000000000000000000000000000000000000..c859802e70bf67ff5bec252f56ef5a1e02c34f49 GIT binary patch literal 49936 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¥nasrh3EY4~DomH_)E^pBp8o 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 literal 0 HcmV?d00001 diff --git a/modular_chomp/icons/mob/xenos_32.dmi b/modular_chomp/icons/mob/xenos_32.dmi new file mode 100644 index 0000000000000000000000000000000000000000..b4397da603234d27098ed902c3307160ef1e2602 GIT binary patch literal 9024 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 literal 0 HcmV?d00001 diff --git a/modular_chomp/sound/voice/wheeze.ogg b/modular_chomp/sound/voice/wheeze.ogg new file mode 100644 index 0000000000000000000000000000000000000000..873bbbd2c7d4a5b023900af422727a4a9010bd75 GIT binary patch literal 12109 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 literal 0 HcmV?d00001 diff --git a/vorestation.dme b/vorestation.dme index ea14c590e3..cc23cff67f 100644 --- a/vorestation.dme +++ b/vorestation.dme @@ -3155,7 +3155,6 @@ #include "code\modules\mob\living\simple_mob\sd_pets.dm" #include "code\modules\mob\living\simple_mob\simple_hud.dm" #include "code\modules\mob\living\simple_mob\simple_mob.dm" -#include "code\modules\mob\living\simple_mob\simple_mob_ch.dm" #include "code\modules\mob\living\simple_mob\simple_mob_vr.dm" #include "code\modules\mob\living\simple_mob\taming.dm" #include "code\modules\mob\living\simple_mob\subtypes\animal\animal.dm" @@ -4470,6 +4469,7 @@ #include "maps\~map_system\maps.dm" #include "modular_chomp\code\modules\admin\functions\modify_traits.dm" #include "modular_chomp\code\modules\clothing\spacesuits\rig\rig.dm" +#include "modular_chomp\code\modules\emotes\definitions\audiable.dm" #include "modular_chomp\code\modules\mob\holder.dm" #include "modular_chomp\code\modules\mob\living\carbon\human\species\species.dm" #include "modular_chomp\code\modules\mob\living\carbon\human\species\station\protean\_protean_defines.dm" @@ -4478,4 +4478,8 @@ #include "modular_chomp\code\modules\mob\living\carbon\human\species\station\protean\protean_powers.dm" #include "modular_chomp\code\modules\mob\living\carbon\human\species\station\protean\protean_rig.dm" #include "modular_chomp\code\modules\mob\living\carbon\human\species\station\protean\protean_species.dm" +#include "modular_chomp\code\modules\mob\living\simple_mob\simple_mob.dm" +#include "modular_chomp\code\modules\mob\living\simple_mob\simple_mob_abilities.dm" +#include "modular_chomp\code\modules\mob\living\simple_mob\subtypes\vore\xenomorph.dm" +#include "modular_chomp\code\modules\mob\living\simple_mob\subtypes\vore\xenomorph_abilities.dm" // END_INCLUDE