* Initial commit. Event.
* Started converting mobs to basic mobs. Migo and Creature. Needs aggressiveness AI
* Makes CI happy
* Fixes some file names
* Ticks files
* Fixes file again
* Update code/modules/events/demon_incursion.dm
Co-authored-by: Luc <89928798+lewcc@users.noreply.github.com>
Signed-off-by: PollardTheDragon <144391971+PollardTheDragon@users.noreply.github.com>
* Announcement sound, spawn adjustments
* Reduced spread when portals multiply
* Elite spawns when portal count gets high
* Fixes missing comma
* Converted migo, blank, and most of hellhounds to basic mobs. Added new controllers and behaviors
* Fixes
* Linters!
* Faithless moved to basic mob
* LINTERS
* Makes skeletons basic mobs
* Fixes, Ranged Attacks, Ranged variants of nether mobs
* Handles portal expansion chance
* Linters
* Fixes mobs not breaking shit
* Fixes ranged attacks
* Fixes ranged attacks
* oops
* Another oops. No config changes are needed here
* Twenty percent chance that a nether mob is a grappler
* Dimensional tear fixes
* Adjusts awaken distance for hostile mobs, makes variable melee attack rate for basic mobs
* Variable initial spawns, variable spread rates.
* Whole lot of fixes from merge, hellhound completion
* Updated lavaland winter biodome
* Makes basic mobs able to hurt other mobs
* Makes spawners properly rally basic mobs to beat up the attacker
* Extra line
* Removed comment
* Makes hellhounds stop resting when attacked or when they find a new target
* Fixed initial portal spawn amounts
* Borgs now affected by basic mobs
* Nerfs portal spawn rate, nerfs portal integrity, nerfs portal max mobs
* Grapplers now teleport to missed turfs
* Removes duplicate notices
* Buff portals a small bit
* Makes nether portals no longer RR - the body is now recoverable from the blank it became
* Makes portals layer above mobs
* Removed excess ranged attack var
* Changes list for determining start count to rely on mobs with client instead of all clients
* Nerfs portal max mobs
* Portals can no longer spread to within 3 tiles of another portal except on initial event start
* Adjusts target portal count for big mobs
* Spawners now properly remove nest values of basic mobs
* Portals now glow an evil red. When portals are destroyed, 50% chance per mob to slay the mob
* add prowling and return to home behaviors
* cut this down
* be a tiny bit smarter
* Some code cleanup
* Removes hostile base type, removing excess code
* Gives /obj/ a basic mob attack handler. Fixes turrets
* Gives basic mobs a HUD
* Fixes skeleton death flag
* Adjusted initial spawns
* Incursion portals now slowly convert turfs, up to range 3 of them, to hellish flooring
* Increases reward per destroyed portal
* Makes the final portal of an incursion play a sound on destruction, couple portal fixes
* Fixes basic mob xenobiology interactions
* Non-shit portal sprites
* Adds hostile machine element, mobs now actively target turrets and emitters
* Properly gibs things when they should gib
* Linter fix
* Portals now layer under living mobs but over dead ones
* Adds blackbox checking for demon incursion portal counts
* Increases mob sight range slightly to account for widescreen, adds alt-color for grappler, delays incursion announcement a bit more
* Portals now are more likely to spread the less there are
* Incursion portals now repair themselves after not being damaged for some time
* Grilles now shock basic mobs
* Portals will now clean up basic mob corpses near them by gibbing them
* Portal spread chance is now exponential regression
* Portal mob spawns now linearly scale in time
* Fixes some skeleton oversights in ruin mapping
* Demon incursions no longer can spread to tiles in a space area, such as near brig plating
* Moves corpse cleanup to mobs via component
* Portals now drop bodies that are being eaten when they're destroyed.
* Addresses code review
* Docs some vars
---------
Signed-off-by: PollardTheDragon <144391971+PollardTheDragon@users.noreply.github.com>
Co-authored-by: Luc <89928798+lewcc@users.noreply.github.com>
Co-authored-by: warriorstar-orion <orion@snowfrost.garden>
* Mechas no longer get their attack cooldowns taken up by clicking the floor, and phazons finally deal burn on the burn mode
* lewc cooldown timer review
* Fixes#28022: mecha/AI/hologram bugs from #25078
PR #25078 introduced a few bugs related to AI eyes, mechs, and
holograms. This change fixes those bugs. Now, entering a mech with an
active hologram eye will first release that eye before granting control
of the mech. Double clicking on a turf as an AI while in a mech will no
longer unstick the camera from the mech. When exiting a mech, the AI
will now properly refocus on its core instead of on the spot that it
first entered the mech. AI holograms no longer receive normal audio
near their holopads, receiving only holopad-relayed speech now instead.
AIs will no longer be able to activate a holopad while occupying a mech.
* Update code/_onclick/ai_onclick.dm
Co-authored-by: Luc <89928798+lewcc@users.noreply.github.com>
Signed-off-by: Burzah <116982774+Burzah@users.noreply.github.com>
---------
Signed-off-by: Burzah <116982774+Burzah@users.noreply.github.com>
Co-authored-by: Burzah <116982774+Burzah@users.noreply.github.com>
Co-authored-by: Luc <89928798+lewcc@users.noreply.github.com>
* Port /tg/ move manager, drift and jetpack components.
* don't add go through newtonian movement if not moved to a turf
* various cleans for blood drifts and mob speed
* fix slow meteors
* why on fuck's earth aren't speedbikes vehicles
* style lint
* also wtf
* okay i'm an idiot
* fix meaty ore speed and blood decal double stepping
* fix not unbuckling pulled object occupants
* don't bother dealing with immovable rods just yet
* exclude bubblegum and vetus from move manager for now
* fix issues related to null weightless blood icons
* reset blood icon state properly
* fuck it, we'll deal with mobs when basic mobs happen
* break infinite loop in decal splat
* Refactor/deduplicate camera eye code
Camera Eyes previously had duplicated logic across several files. This
change uncooks the spaghetti. Additionally, half-baked support for TG's
multicam feature has been removed, as it was not functional or in use.
* lets ff now
* Camera Eye refactor fixes and finishing touches
This change completes a refactor of AI eyes, which were previously used
by xenobio consoles, syndicate and abductor camera consoles, shuttle
docking computers, holograms, and, of course, the AI. Duplicated logic
has been extracted to an abstract base mob, /mob/camera/eye, from which
new types for each of the above now derive.
Functionality is largely the same, with only a few minor cosmetic
differences (i.e. camera eyes are now appropriately named given their
type and user), as well as a quality-of-life enhancement for holograms,
slowing their movement speed to base run speed to prevent users from
accidentally zooming out of calls.
* Camera eye refactor: Fix AI acceleration toggle
The acceleration toggle was broken in the camera eye refactor, as
previously the boolean was stored on the AI rather than its eye. This
change fixes that.
* Camera eye refactor: Fix syndicate cam visibility
With the camera eye refactor, the syndicate advanced camera consoles
lost the ability to view maintenance tunnels and other areas without
active cameras, seeing static in their place instead (as all other
cameras do). This change reinstates the original behavior.
* Camera eye refactor: Convert spaces to tabs
* Camera eye refactor: Fix CRLF
* Apply suggestions from code review
General minor code quality improvements suggested by GDNgit
Co-authored-by: GDN <96800819+GDNgit@users.noreply.github.com>
* Apply suggestions from code review
Rename parameter names to avoid src accesses, remove an ambiguous and
unused mob_define and holopad range variable from a previous WIP, change
the for loop in /mob/camera/eye/relaymove to a for-to loop, and change
the chat message warning, sent when an AI Eye is created on an AI that
already has one, to a stack trace
* Adds toggle to AI commands for fast holograms
* Refactor ripped Hologram Eye relaymove
Previously, the relaymove proc for hologram eyes was redundant and
nearly impossible to read. It has been separated out into a few
different named procs, and has had its use of `spawn` removed.
* Remove unnecessary src access
* Fix bug involving shuttle placement outlines
The camera eye refactor that this commit is a part of introduced a bug
that prevented shuttle placement outlines from showing up on first use
of the shuttle console. This change fixes that bug.
* Unrevert some changes from #26306 lost in merge
* Remove erroneous free xray vision on advanced cams
* Autodoc camera acceleration vars
* Remove redundant null var initialization per code review
Co-authored-by: Drsmail <60036448+Drsmail@users.noreply.github.com>
Signed-off-by: asciodev <81930475+asciodev@users.noreply.github.com>
* Changed variables to camel_case, autodocs, cleanup
Changed a number of camera eye-related variables to camel_case style,
added appropriate autodoc comments, as per code review. Also removed an
unused cameranet function, modified the call signature of a cameranet
function to be more semantic, and changed a qdel-on-initialize in camera
eyes to return INITIALIZE_HINT_QDEL instead.
Co-authored-by: Luc <89928798+lewcc@users.noreply.github.com>
* Remove stray qdel(src) per code review
Co-authored-by: Luc <89928798+lewcc@users.noreply.github.com>
Signed-off-by: asciodev <81930475+asciodev@users.noreply.github.com>
---------
Signed-off-by: asciodev <81930475+asciodev@users.noreply.github.com>
Co-authored-by: GDN <96800819+GDNgit@users.noreply.github.com>
Co-authored-by: Drsmail <60036448+Drsmail@users.noreply.github.com>
Co-authored-by: Luc <89928798+lewcc@users.noreply.github.com>
* Refactor /mob/unEquip.
* fix things found in testing
* more fixes from testing
* fix removal of hooded suits
* fix flayers inability to deploy swarmprod
* fix changeling blade activation
* unnecessary parens
* pass default unequip args to proc overrides
* fix belts being able to forceMove into full hands
* refactor: Movement cross/uncross implementation.
* wrong var name
* fix unit tests dropping PDAs into nowhere
* Add documentation.
* remove unused constants
* say which procs are off limits
* fix simpleanimal z change runtime
* helps not to leave merge conflicts
* kill me
* fix typecast
* fix projectile/table collision
* treadmills don't cause MC to crash anymore
* connect_loc is appropriate here
* fix windoors and teleporters
* fix bonfires and clarify docs
* fix proximity sensors
Tested with sensors in crates, sensors in modsuits
Tested new proximity component with firing projectiles at singularity
Tested new proximity component with portable flashes
Tested new proximity component with facehuggers
* lint
* fix: polarized access helper false positives
* Revert "fix: polarized access helper false positives"
This reverts commit 9814f98cf6.
* hopefully the right change for mindflayer steam
* Changes following cameras
* fix glass table collision
* appears to fix doorspam
* fix ore bags not picking up ore
* fix signatures of /Exited
* remove debug log
* remove duplicate signal registrar
* fix emptying bags into locations
* I don't trust these nested Move calls
* use connect_loc for upgraded resonator fields
* use moveToNullspace
* fix spiderweb crossing
* fix pass checking for windows from a tile off
* fix bluespace closet/transparency issues
* fix mechs not interacting with doors and probably other things
* fix debug
* fix telepete
* add some docs
* stop trying to shoehorn prox monitor into cards
* I should make sure things build
* kill override signal warning
* undef signal
* not many prox monitors survive going off like this
* small fixes to storage
* make moving wormholes respect signals
* use correct signals for pulse demon
* fix pulse heart too
* fix smoke signals
* may have fucked singulo projectile swerve
* fix singulo projectile arcing
* remove duplicate define
* just look at it
* hopefully last cleanups of incorrect signal usage
* fix squeaking
* may god have mercy on my soul
* Apply suggestions from code review
Co-authored-by: Luc <89928798+lewcc@users.noreply.github.com>
Signed-off-by: warriorstar-orion <orion@snowfrost.garden>
* lewc review
* Apply suggestions from code review
Co-authored-by: Burzah <116982774+Burzah@users.noreply.github.com>
Signed-off-by: warriorstar-orion <orion@snowfrost.garden>
* burza review
* fix bad args for grenade assemblies
* Update code/__DEFINES/is_helpers.dm
Co-authored-by: Luc <89928798+lewcc@users.noreply.github.com>
Signed-off-by: warriorstar-orion <orion@snowfrost.garden>
---------
Signed-off-by: warriorstar-orion <orion@snowfrost.garden>
Co-authored-by: DGamerL <daan.lyklema@gmail.com>
Co-authored-by: Luc <89928798+lewcc@users.noreply.github.com>
Co-authored-by: Burzah <116982774+Burzah@users.noreply.github.com>
* refactor: Attack chain, initial setup.
* migrate curtain to make dreamchecker happy
* update thurible
* don't call attacked_by separately for legacy attack chain
* remove duplicate proc
* condense similar code, put allowances for legacy code in new procs
* update docs, include diagram source
* add comment on how to update diagram
* fix admonition
* mindflayer updates
* remove commented out code
* clarify all steps
* after_attack should be overridable
* whoops
* retrofit recent changes
* duh, can't restrict this yet because of tool_acts
* i hate ore bags with the fire of a thousand suns
* return correct value for object attack logic
* Various cleanups.
We don't want to attempt to pull stuff out of `/obj/item/attackby`,
because those pieces are part of the related objects' migrations, not
`/obj/item` itself. Attempting to do this causes knockon effects where
things expected to call e.g. `/obj/item/storage/attackby` in the call
chain were not ferried over to the new item interaction code, because
the related objects hadn't actually been migrated over yet.
I've used refactoring /obj/vehicle as the example for migrating
`attackby` methods instead.
* simplify some argument names
* fuck it
* make it do the thing
* Rename CI module call
* Prove that CI works
* improve test output
* aaand fix it again
* fix curtain tool interactions
* fix compile error
* fix compile error
* Better docs, introduce migration plan tool.
* refactor: Rename all non-snake_case types (not procs or vars (yet)).
* completely dynamic update script
* might help to include the data
* update aa's scuffed python
* oh
* set script PR number
* run updatepaths again
* Add other table updates with JSON columns
* bump SQL version
* just fucking end my life
* move JSON data
* LINDA -> MILLA
* Tiles now change their atmos mode properly.
* Fixed a bug that made walls generate supercold air when deconstructed/destroyed.
* Apply suggestions from code review
Co-authored-by: Burzah <116982774+Burzah@users.noreply.github.com>
Co-authored-by: GDN <96800819+GDNgit@users.noreply.github.com>
Signed-off-by: Charlie Nolan <funnyman3595@gmail.com>
* Begone, var!
* MILLA -> milla
* Lint.
* More lint.
* Prevent negative/NaN atmos from spreading.
* Made fires start more reliably.
* Undef what the rest should not see.
* Enums are nice.
* Match LINDA better.
* Debugging verbs.
* Debug verb fixes.
* Labelled more lavaland stuff with ATMOS_MODE_LAVALAND
* Block superconductivity on a couple more things for Lavaland.
* Updated milla.dll
* Lavaland map fixes.
* Missed a spot.
* Begone, var! (again)
* Add libmilla_ci.so for continuous integration tests.
* Install/contributing instructions for MILLA.
* Directional plasmaglass windows on shuttles shouldn't stop protecting from heat after moving.
* Banish bad naming.
* Better naming and debug stats for SSair.
* Apply suggestions from code review
Co-authored-by: AffectedArc07 <25063394+AffectedArc07@users.noreply.github.com>
Signed-off-by: Charlie Nolan <funnyman3595@gmail.com>
* Magic numbers and formatting.
* Don't screw up the temperature during reactions.
* Efficiency and readability.
* Fix hotspots.
* Removed redundant safety (MILLA will already output an error)
* Optimizations.
* oops
* TGS build script update.
* Change API of gas_mixture and how you get one from a turf.
* Get in there.
* so many vars
* MILLA binary updates.
* Lint
* Made MT cost more honest.
* Gave MILLA a read-only mode.
* More read-only vs synchronized mode work.
* Even more.
* Synchronize disposals.
* Updated a bunch of stuff to use SSair.synchronize or GM.synchronize.
* MILLA <3 Tracy
* lint
* cargo fmt
* more lint
* Test needed MILLA sync.
* Silence atmos machinery that's behaving as intended, but continue objecting to other potential failures to synchronize.
* Push new MILLA DLL
* Build MILLA
* Update PR instructions for MILLA.
* Add some fancy plasmaglass windows to the Lifebringers' ship.
* The golems remembered that they should insulate *all* their engines.
* First round of TM bugfixes.
* Build MILLA
* fix two lavaland ruin turf types
* bunch more maps
* fixes milla ci and makes the interesting turf verb better
* Solid turfs can no longer conduct heat (for now...)
* Made indoor tiles in beach and winter biodomes not lavaland air.
* Re-added random IT teleport, adjusted warning message
* Fixed a tinted window on Lavaland to be a plasglass window instead.
* Made firelocks and holofans heatproof
* Made RPD auto-wrench pipes if you have a wrench in your offhand.
* Runtime fixes.
* Made visuals update more reliably.
* Lint
* Update .github/CONTRIBUTING.md
Co-authored-by: AffectedArc07 <25063394+AffectedArc07@users.noreply.github.com>
Signed-off-by: Charlie Nolan <funnyman3595@gmail.com>
* Build MILLA
* The Syndicate have installed tiny fans on their research base.
* The syndicate have figured out how to make plastitanium windows heatproof.
* This is getting out of hand. Now there are two of them.
* Un-break the auto-wrenching that I broke before committing.
* Build MILLA
* Build MILLA
* Massive MILLA refactor, assorted bugfixes.
* Build MILLA
* Explicit typing.
* Less sleeping/blocking.
* Build MILLA
* Yes, yes, this part can sleep.
* Build MILLA
* SSair reporting improvements.
* Build MILLA
* Please do not dock twice and splat yourself.
* Build MILLA
* Pls to not make SM go nuts.
* Build MILLA
* Build MILLA
* Added stricter lower bounds on plasmafire, fixing perpetually-burning SM.
* Build MILLA
* Lint
* Temporary logging, begone.
* Build MILLA
* Prevent hotspot strobing.
* Add in radiate_to_spess behavior.
* Build MILLA
* progress
* Compiling is good.
* bugfixes
* Progress.
* Ruins update.
* This one exists.
* Fixup temporary hotspots to last longer than one tick.
* Add/fix comments.
* Cut the slash.
* Fix test.
* No sleep for you.
* Build MILLA
* Prevent nested MILLA safety from runtiming.
* Build MILLA
* Runtime fix.
* Build MILLA
* Fix canisters not updating icon when gas contents change.
* Build MILLA
* Build MILLA
* Fixed an issue that made mechs very cold on environment air.
* Build MILLA
* oops
* Build MILLA
* Walls can make loud noises again.
* Build MILLA
* Fixes a rare runtime.
* Build MILLA
* Update .github/DOWNLOADING.md
Co-authored-by: AffectedArc07 <25063394+AffectedArc07@users.noreply.github.com>
Signed-off-by: Charlie Nolan <funnyman3595@gmail.com>
* Review suggestions
* Lint
* Build MILLA
* bound_mixtures now only contains mixtures that can be written
* Build MILLA
* Apply suggestions from code review
Co-authored-by: Matt <116982774+Burzah@users.noreply.github.com>
Signed-off-by: Charlie Nolan <funnyman3595@gmail.com>
* Build MILLA
* Restore the original async behavior of pyro anomalies.
* Build MILLA
* Build MILLA
* Make the safety assertion in /datum/milla_safe safer.
* Build MILLA
---------
Signed-off-by: Charlie Nolan <funnyman3595@gmail.com>
Co-authored-by: FunnyMan3595 (Charlie Nolan) <funnyman@google.com>
Co-authored-by: Burzah <116982774+Burzah@users.noreply.github.com>
Co-authored-by: GDN <96800819+GDNgit@users.noreply.github.com>
Co-authored-by: AffectedArc07 <25063394+AffectedArc07@users.noreply.github.com>
Co-authored-by: paradisess13[bot] <165046124+paradisess13[bot]@users.noreply.github.com>
Co-authored-by: warriorstar-orion <orion@snowfrost.garden>
Co-authored-by: GDN <Roanrichards1@Gmail.com>
* feat: Better Gas Analyzer AND TGUI!
https://github.com/ss220-space/Paradise/pull/2333https://github.com/ss220-space/Paradise/pull/2461https://github.com/ss220-space/Paradise/pull/2522
* rename atmos helpers
* remove tgui
* more fixes
* better act self
* now scanner finally works again
* what if we want turf beneath the target?
* fix chatbox
* color code the gases
* unnecessary stuff removal
* ghosts can now scan portable atmospherics
* better code
* do we really need to know that?
* change colors
* add a space to separate gases from other info
* update tgui bundle
* update dark-theme CO2 color
* Globals work
* Double access works
* All other things
* Revert "All other things"
This reverts commit 6574442eb6.
* More changes that compile and work
* IT WORKS AAAAAA
* Changes even more .len to length()
* Apply suggestions from code review
* Update code/datums/mind.dm
* Update code/__HELPERS/sorts/InsertSort.dm
Co-authored-by: Deniz <66401072+Oyu07@users.noreply.github.com>
* Update code/__HELPERS/sanitize_values.dm
Co-authored-by: Deniz <66401072+Oyu07@users.noreply.github.com>
---------
Co-authored-by: FunnyMan3595 (Charlie Nolan) <funnyman@google.com>
Co-authored-by: Deniz <66401072+Oyu07@users.noreply.github.com>
* Fix duplicate tracking beacon issue
emoved the possibility of having both an AI tracking beacon and a standard one, ensuring that the "tracking" can no longer appear twice in the "robotic control console".
Whenever someone add a different tracking to a mech, the old one is returned upon the player hand while the new one is within the mech.
* Update code/game/mecha/mecha.dm
Co-authored-by: S34N <12197162+S34NW@users.noreply.github.com>
---------
Co-authored-by: Pierre-Louis <hernandezpierrelouis@protonmail.com>
Co-authored-by: S34N <12197162+S34NW@users.noreply.github.com>