Files
PollardTheDragon 24845b238a The Divine Flock - DaedalusDock Flockmind Port (#31984)
* Initial commit - FLOCKMIND - Probably has like a billion things to fix

* Do after conversions

* Config

* Moved the files, icon fixes

* Tick everything, language work, event, spawn landmark, role prefs, beginning mob port

* Spans and some other fixes. Also the tickening

* More tickening

* More fixes. Lots of fixes.

* More Fixes

* A whole lot more. Also flock TGUI.

* Fixes fixes fixes fixes fixes

* FIXES

* More fixes - PR ready, still needs a fuckton of testing

* Fixes

* fix incomplete upstream merge

* fix FlockPanel + sort button name

* TGUI review

* Fixes tealprint list

* Fixes

* More fixes

* Incapacitator Fix

* Filenames

* Linters

* Interceptor range buff

* Reagent counts

* Linters

* Fabricator vendor fix

* Keybinds and HUD - Flockdrones, Fixes Vendor Conversion, Cube Materials

* Reworks reagent, adds flock grilles, fixes compute node overlays

* Intent-based flockdrone parts

* Intent based drone parts

* Radial control panel for controlling drones manually, phasing through windows/grilles

* Movement fixes

* Radio talk power, stare fix

* Flock health HUD

* Fixes flock lights, linters

* Unit tests

* Adds countdown to relay

* Relay improvements

* Small fix

* Logic Schmogic

* Relay overlay and looping sound effect

* Ignore air when converting turfs

* Cage fixes and improvements

* Improved flock bolt

* Turret conversions

* Flock bolts taze simple or basic mobs

* Sentience type

* Fixe

* Linter

* tgui review stage 2

* Concentrated Repair Burst

* Improves radio detection

* Removes extra space

* Adds healing visual effect

* Cube tech levels

* Ghooost

* Excess

* Flock doors, chairs, lattices. Centralizes conversion code.  Crafting with Gnesis

* Update code/modules/antagonists/flockmind/ai_behaviors/flock_wander.dm

Co-authored-by: Kapu1178 <75460809+Kapu1178@users.noreply.github.com>
Signed-off-by: PollardTheDragon <144391971+PollardTheDragon@users.noreply.github.com>

* Fixes the fix

* Astar movement detection

* Fix, extraneous code, language stuff

* Language fixes and wander fix

* Fixes

* Another fix

* Lints

* Another linter

* Language improvement

* More language improvements

* Time requirement and appearing in orbit menu as an antag

* Cube glow

* TGUI

* Minicache

* Linters

* Grammar

* Material ID fix

* Lid fix

* Reagent turf reaction

* Reagent fix

* Butcher results

* Conversion rates

* Flock stare fix

* Fixes stare behavior

* Staring

* Flock mob blood

* Flock mobs gibs and blood. Also some runtime fixes

* Flock mobs now resist out of grabs, buckles, lockers, and more

* Fixes flock orbit, fixes a runtime I think,

* Target mechs, damage mechs, other bug fixes

* Cage fix

* Cage resist change

* Some mind changes, gatecrash buff

* Drones now shoot mechs, stare improvement

* Cut down on spam a little

* Nest fix

* No more resist spam

* Fixed drone death control

* Resist statement

* Makes the relay alarm scarier

* Fixes dead flock camera mobs having no ghost sprite, something with ghosting

* Enhanced flockphasing

* Improved flockmob pathing

* Added required turf restriction to relay

* Increased needed bandwidth for relay construction

* Nerfed drone substrate rate

* Added new status tab items for relay progress

* Another relay cost adjustment

* Improves drone AI responsiveness

* Computer frames now become flock computers

* Improves target finding for conversion, building, and replicating

* Reduced flock event pop requirements

* Adjusts flock protection on structures. Adjusts overlays.

* Relay unlock tweak

* Fixwes flock being able to gib mech'd AIs with one button

* Map conflict

* Flock can no longer be outed by merely existing

* Fied bug causing drones to shoot themselves

* Prevents mobs from attacking while in a cage

* Converter tool can now open closets and crates.

* Adds descriptions to flockdrone tools.

* More informatic blurbs

* Adds xenobiology organs

* Organ lint

* TGUI merge

* bundle and mm

---------

Signed-off-by: PollardTheDragon <144391971+PollardTheDragon@users.noreply.github.com>
Co-authored-by: Toastical <20125180+Toastical@users.noreply.github.com>
Co-authored-by: Kapu1178 <75460809+Kapu1178@users.noreply.github.com>
Co-authored-by: Burzah <116982774+Burzah@users.noreply.github.com>
2026-07-08 21:31:28 +00:00

117 lines
4.1 KiB
Plaintext

/turf/simulated/wall/cult
name = "runed metal wall"
desc = "A cold metal wall engraved with indecipherable symbols. Studying them causes your head to pound."
icon = 'icons/turf/walls/32x40cult_wall.dmi'
icon_state = "cult_wall-0"
base_icon_state = "cult_wall"
smoothing_groups = list(SMOOTH_GROUP_SIMULATED_TURFS, SMOOTH_GROUP_WALLS, SMOOTH_GROUP_CULT_WALLS)
canSmoothWith = list(SMOOTH_GROUP_AIRLOCK, SMOOTH_GROUP_WALLS, SMOOTH_GROUP_REGULAR_WALLS, SMOOTH_GROUP_REINFORCED_WALLS)
sheet_type = /obj/item/stack/sheet/runed_metal
sheet_amount = 1
girder_type = /obj/structure/girder/cult
/turf/simulated/wall/cult/Initialize(mapload)
. = ..()
if(SSticker.mode)//game hasn't started officially don't do shit..
new /obj/effect/temp_visual/cult/turf(src)
icon_state = GET_CULT_DATA(cult_wall_icon_state, initial(icon_state))
/turf/simulated/wall/cult/bullet_act(obj/projectile/Proj)
. = ..()
new /obj/effect/temp_visual/cult/turf(src)
/turf/simulated/wall/cult/artificer
name = "runed stone wall"
desc = "A cold stone wall engraved with indecipherable symbols. Studying them causes your head to pound."
/turf/simulated/wall/cult/artificer/break_wall()
new /obj/effect/temp_visual/cult/turf(get_turf(src))
return //excuse me we want no runed metal here
/turf/simulated/wall/cult/artificer/devastate_wall()
new /obj/effect/temp_visual/cult/turf(get_turf(src))
/turf/simulated/wall/cult/narsie_act()
return
/turf/simulated/wall/cult/devastate_wall()
new sheet_type(get_turf(src), sheet_amount)
//Clockwork walls
/turf/simulated/wall/clockwork
name = "clockwork wall"
desc = "A huge chunk of warm metal. The clanging of machinery emanates from within."
icon = 'icons/turf/walls/32x40clockwork_wall.dmi'
icon_state = "clockwork_wall-0"
base_icon_state = "clockwork_wall"
explosion_block = 2
hardness = 10
slicing_duration = 80
sheet_type = /obj/item/stack/tile/brass
girder_type = /obj/structure/clockwork/wall_gear
var/heated
smoothing_groups = list(SMOOTH_GROUP_WALLS, SMOOTH_GROUP_BRASS_WALL)
canSmoothWith = list(SMOOTH_GROUP_AIRLOCK, SMOOTH_GROUP_BRASS_WALL)
/turf/simulated/wall/clockwork/Initialize(mapload)
. = ..()
new /obj/effect/temp_visual/ratvar/beam(src)
/turf/simulated/wall/clockwork/bullet_act(obj/projectile/Proj)
. = ..()
new /obj/effect/temp_visual/ratvar/beam(get_turf(src))
/turf/simulated/wall/clockwork/narsie_act()
..()
if(istype(src, /turf/simulated/wall/clockwork)) //if we haven't changed type
var/previouscolor = color
color = "#960000"
animate(src, color = previouscolor, time = 8)
addtimer(CALLBACK(src, TYPE_PROC_REF(/atom, update_atom_colour)), 8)
/turf/simulated/wall/clockwork/devastate_wall()
for(var/i in 1 to 2)
new/obj/item/clockwork/alloy_shards/large(src)
for(var/i in 1 to 2)
new/obj/item/clockwork/alloy_shards/medium(src)
for(var/i in 1 to 3)
new/obj/item/clockwork/alloy_shards/small(src)
/turf/simulated/wall/clockwork/attack_hulk(mob/living/user, does_attack_animation = 0)
..()
if(heated)
to_chat(user, SPAN_USERDANGER("The wall is searing hot to the touch!"))
user.adjustFireLoss(5)
playsound(src, 'sound/machines/fryer/deep_fryer_emerge.ogg', 50, TRUE)
/turf/simulated/wall/clockwork/mech_melee_attack(obj/mecha/M)
..()
if(heated)
to_chat(M.occupant, SPAN_USERDANGER("The wall's intense heat completely reflects your [M.name]'s attack!"))
M.take_damage(20, BURN)
/turf/simulated/wall/boss
name = "ancient wall"
desc = "A thick metal wall, it look very old."
icon = 'icons/turf/walls/32x40boss_wall.dmi'
icon_state = "boss_wall-0"
base_icon_state = "boss_wall"
baseturf = /turf/simulated/floor/lava/mapping_lava
explosion_block = 2
damage_cap = 600
hardness = 10
heat_resistance = 20000
can_dismantle_with_welder = FALSE
smoothing_groups = list(SMOOTH_GROUP_WALLS, SMOOTH_GROUP_BOSS_WALLS)
canSmoothWith = list(SMOOTH_GROUP_AIRLOCK, SMOOTH_GROUP_BOSS_WALLS)
sheet_type = /obj/item/stack/sheet/runed_metal
sheet_amount = 1
girder_type = /obj/structure/girder/cult
/turf/simulated/wall/gnesis
name = "gnesis wall"
desc = "A thick metal wall, it look very old."
icon = 'icons/goonstation/turf/flock.dmi'
color = "#1bdebd"
sheet_type = /obj/item/stack/sheet/gnesis