Commit Graph

101 Commits

Author SHA1 Message Date
Luc
346a1b8142 Yet Another Surgery Refactor (#18325)
* Initial commit

Fixes up surgery.dm
Adds some tool behavior

* More basic changes

* Checkpointing: this is a little gross right now

* Add signal COMPONENT_CANCEL_ATTACK_CHAIN

* Cleans up surgery initiator

* Mostly gets surgery (and canceling it) working

* Add abstract proxy surgery steps

Also adds them to organ manipulation

* Clean up most existing surgeries

* Rework organ openness, adds define for aborting a beginstep

* surgery works again, also implements retry defines

* fix surgery computer

* add limb repair to synth implant removal

* retry implant checks

* Clean up abductor surgeries as well as some other things

* A lot
- Reworks organ manipulation to use a series of surgery steps instead
- Fixes some runtimes with open hands
- Lets mito zero out the germ level while treating necrosis
- Adds a debug surgery tool

* add debug surgery tool, note some TODOs for later

* Add conditional check for surgeries repeating

* update surgery retry logic to make it more of a bonus

* Lets abductors automatically retry any failed surgery steps

* Rework robotic surgery to use abstract/proxy steps

* Bunch of bugfixes and more!
- Limb reattachment works properly now, you can just slap a limb onto a person
- If the limb isn't robotic, it'll be useless until the surgery is finished with a hemostat, though it might be enough to get the patient out of the OR.

* Remove more now-implicit checks

* Slight reorganization

* more fixes across the board

* Remove unused variable

* Trying not to lose my mind here
- Does away with can_run() entirely
- Cleans up visible messages in code
- begin steps should now all have ..() afterwards
- slime bone surgery should be fixed now
- more docs

* Robotic  surgery is stoppable with a crowbar, all surgery can_start now checks parent

* Fix some broken robotic typepaths

* Typepath fixes, do away with some last TODOs

* Forgor

* Last cleanups before we go gold

* jk lol

* Make early surgery termination clearer

* More "last" cleanups

* Fixes tool flags, surgery initiation

- Fixes surgery not being startable by sharp objects
- Moves surgical tool flags to item traits

* Clean up surgery cancellation, especially for borgos

* I think this should GC better

* Apply suggestions from code review

Co-authored-by: Sirryan2002 <80364400+Sirryan2002@users.noreply.github.com>

* Status is now step number

* Add a 20% chance to find nothing during organ manipulation

* Improve documentation, make forced_surgery a normal arg

* Charlie's reviews

* Why are abductors like this

* Little more verification, ensuring limb augmentation and organ manip healing work properly

* Fix torso organ manip being unfinishable

* Fix cavity implants, open-hand/any item steps

* Make sharp objects not try to start an operation with help intent

* Comments, quick target fix

* Re-order list so advanced bruise pack is pulled first

* Make surgical gripper function like an open hand

* Make mito only use one unit per organ for now

* Check if user is on operable surface before trying to operate

* Reduce admin logging

* Fix some bugs that appeared during the testmerge
- you can no longer start robotic surgeries with a scalpel (lol)
- you can now cancel surgeries on the first step after I fixed some bugs that I introduced (woo hoo)
- Synthetic limb attachment is now combined into a single startable surgery step, though still retains the fun flavor of both

* Swats some more bugs
- (hopefully) fixes a huge source of runtimes where we tried to check if we could run surgeries before checking if the surgery used an organ
- In doing so, moves the logic for determining if a surgery can start to the mob-level
- Fixes robotic reattachment surgery not working

* multi-bug drifting???

- Fixes a bug where a branching surgery with an any tool option could possibly override a step with a matching tool
- Fixes some intermediate surgeries failing due to not having specified possible_locs

* A few more fixes
- Fixes any surgery tool steps again
- Fixes cavity surgery again

* Hopefully fixes getting stuck in robotic organ manip

* Remove extra parent call

* Steel review

* Steel review

* Fix spacing for possible locs

* Roundstart traits

* Advanced surgical traits and other hal fixes

Co-authored-by: Sirryan2002 <80364400+Sirryan2002@users.noreply.github.com>
2022-09-16 18:48:43 +01:00
Gatchapod
81a6cb2417 Moves chainsaw buff application to afterattack() (#18820)
* Moved chainsaw buff to afterattack()

* Fixes to oversights I wasn't aware of

* Actually fixes things

* Dangling return

Co-authored-by: Gatchapod <Gatchapod@users.noreply.github.com>
2022-08-22 23:06:26 +01:00
Charlie
634f9c72f1 Vampire Rework. (#16476)
* vampire rework

* fixes and tweaks

* cleanup + tweaks

* grug stomp

* TGUI

* TGUI rebuild

* UID fix

* debugging cooldown fix

* first review changes

* subclass refactor

* tweaks + some sprites

* blackbox logging

* tweaks + grammar

* minor UI tweaks

* ability icon sprites.

* placeholder sprite warning fix

* melee mod code comment warning

* nullification rework

* final sprites!

* fixes

* sabre review pt 1

Co-authored-by: SabreML <57483089+SabreML@users.noreply.github.com>

* sabre review pt2

* sprites readd

* tgui rebuild

* removes traitor vampires

* fixes

* readds sprites

* runtime fixes

* hotfix

* more runtime fixes

* glare tweak. less confusing when the vampire is stunned.

* gargantua nerf

* minor tweaks.

* hemomancer nerfs

* bugfixes and cleanup

* I did a dumb

* couple of fixes

* confusion and shadow snare fixes

* hemomancer nerfs part 2 electric boogaloo

* TGUI rebuild

* fixes and easier events

* Umbrae tweaks

* gargantua tweak

* umbrae nerf 2 electric boogaloo. also var edit suggestion

* runtime fix

* buffs blood nutrition to be in line with its metabolic rate

* Henk stuff

Co-authored-by: Farie82 <farie82@users.noreply.github.com>

* more review changes

* final tweak

* affected request + runtime fix

* FUCK

* fat fucks

* darkness tweaks

* UMBRAE AAAAAAAAAAAAAHH

* force doors bugfix

* either git or I am drunk

* admin rejuv fix

* I CANNOT SPELL

* shitnt code

* steel review

* tgui rebuild

* mochi review

* vampire ability usage logging

Co-authored-by: SabreML <57483089+SabreML@users.noreply.github.com>
Co-authored-by: Farie82 <farie82@users.noreply.github.com>
2021-11-14 15:34:56 +01:00
Vi3trice
640a20878a Item attacks send no logs if they have no force (#17029)
* Hush if no force

* Move it to the other force check instead
2021-11-05 10:01:58 +01:00
Mieszko Jedrzejczak
559fa37756 add defines for damage flags 2021-08-20 21:09:21 +02:00
SabreML
02fe0876f5 Fix bundle #3 (#16411)
* Explosive implant

* Package wrapper

* Venus human trap sprites

* Vine damage

* Wisp vision

* Display case

* Storage viewing

* Ghost poll nullspacing

* Inflatable barrier piercing

* Pneumatic cannon

* Cow grammar

* Centcom jaunting

* Consistency

Not actually a lazy list, as far as I can tell

* Review 1

Co-Authored-By: SteelSlayer <42044220+SteelSlayer@users.noreply.github.com>

* Review 2

Co-Authored-By: SteelSlayer <42044220+SteelSlayer@users.noreply.github.com>

* length()

Co-authored-by: SteelSlayer <42044220+SteelSlayer@users.noreply.github.com>
2021-08-05 11:04:27 +01:00
Fox McCloud
9c425cbed3 Ports Slapping and Kissing (#15539)
* Ports Slapping and Kissing

* forgot this

* table slapping
2021-03-14 10:44:43 +00:00
Fox McCloud
f65c8994ce Broad TG Sound Update (#15608)
* Broad TG Sound Update

* jester update
2021-02-27 11:59:33 +00:00
moxian
1683c4271a Refactors renaming things with a pen. (#14960)
* Refactors renaming things with a pen.

* Farie review (thanks!!)

* Derp.

* Farie take 2
2020-12-16 14:43:15 -05:00
AffectedArc07
fcd6f900b9 Merge pull request #13175 from farie82/logging-improvements
Logging view improvements
2020-08-08 16:23:06 +01:00
Fox McCloud
e438ff4d36 Makes Mobs Lazier and Removes Hard References (#13693)
* Makes Mobs Lazier and Removes Hard References

* fluff
2020-06-30 17:52:28 -06:00
Fox McCloud
b3d69aac9b Moves to BYOND 513 (#13650)
* Fixes Orbiting

* moves to 513

* travis update

* check for minor version too
2020-06-26 01:15:59 -06:00
farie82
38d854dcdd Merge branch 'master' into logging-improvements 2020-05-22 07:16:23 +02:00
SteelSlayer
ecf699562f Fixes a few runtimes 2020-05-13 00:44:25 -05:00
joep van der velden
a37652b70c Logging View scaling, health, formatting changes 2020-03-26 21:34:55 +01:00
datlo
3df52f09dd add clarity brackets 2020-02-16 00:21:30 +01:00
datlo
1d8c721d90 Fix IPC surgery 2020-02-16 00:03:59 +01:00
Citinited
fddff1049b [Testmerge ready] Ports tool behaviours; refactors all tools; adds functionality for self-filling reagent containers (#11700)
* Adds support for self-filling reagent containers

* Sets tool_behaviour on the default set of tools

* Fixing merge conflicts

* Refactors welder to use tool behaviour

* The refactor: part I

* The refactor: part II

* Tool Refactor Part III: Revenge of the Maint

* Tool Refactor Part IV: A New Hope

* Tool Refactor Part V: The Oldcoder Strikes Back

* Tool Refactor Part VI: Return of the Coder

* VII

* Holy shit, it compiles?!

* Nannek I completed your TODO, you owe me ice cream

* Tool helpers; telepad is compliant

* Bugtest, Round 1: Fight

Fuck refactoring disposals

* Buggfixing, Round 2: Electric Boogaloo

* Personal crafting uses tool behaviours now

* Construction datums use new tool behaviours; better way of handling fueltank refuelling; more bugfixing

* multitool_check_buffer change; removes some useless things in tool_helpers

* proc name change

* TRUE/FALSE changes

* Bugfixing, Round 3: A Good Day To Bugfix Hard

Fixes multiple issues raised by the testmerge

* Minor style changes
2020-02-15 13:31:08 -07:00
Fox McCloud
d6a6debf94 Traits framework (#12548) 2019-10-15 20:12:46 -04:00
Fox McCloud
03d894ecfc Merge remote-tracking branch 'upstream/master' into fix-cqc
# Conflicts:
#	code/game/objects/items.dm
2019-04-07 19:54:14 -04:00
Fox McCloud
122c17a006 oh no fox lost it 2019-03-19 18:23:04 -04:00
Fox McCloud
277722508a [Goonchem] Reagent Temperature 2019-03-18 20:06:15 -04:00
variableundefined
e19b61662f Merge pull request #10736 from datlo/ghettosurgeryfix
Refactor surgery early cautery, add cyborg medical grip, misc surgery fix/changes
2019-01-31 11:29:09 +08:00
variableundefined
70ddb65f29 Merge pull request #9287 from Citinited/funny-chemicals
Adds a new clown chemical 🤡
2019-01-28 06:11:38 +08:00
Kyep
f24b8ecb68 Fixes runtime in item_attack.dm #24 2019-01-26 16:10:00 -08:00
Citinited
eebd8d782f Uses squeak component to do this, fixes broken stuff & Travis 2019-01-26 13:21:03 +00:00
Citinited
4913f343ed Adds jestosterone component 2019-01-26 13:21:02 +00:00
datlo
fdc841be8e whole bunch of surgery changes
early cautery not compiling yet
2019-01-26 00:50:18 +00:00
Mike Long
29c9aca1a8 Devil game mode
Fixes more compile errors.  Down to 65 now.

updates << into to_chat

Down to 60 errors, also starts to port the codex gigas and law 666 for cyborg devils.

Fixes more compile errors.  Down to 41 now.

Replaces timers with spawns, and <<s with to_chats
40 compile errors.

Down to 34 compile errors.

whoops, actually down to 34 now.

Down to 25 compile errors.

Down to 15 compile errors, I'llprobably need some help at this point.

Woo!  Down to 7 compile errors.

Ported over devil hud.  Number of errors up to 19.

WOO!  It compiles.  It's completely untested, but it compiles.

Adds devils to traitor panel

Implements iron, silver and salt banes.

implements flashing lights bane

Selling your soul prevents cloning, and some other methods of revival.

Implements harvest bane

Merged and sorted icons/obj/bureaucracy.dmi

Adds toy codex gigas

Fixes compile errors, adds codex gigas sprite.

Lots of bug fixes.  Contracts work, devil revival is more consistant, etc

Adds missing icons for flaming contracts, summon pitchfork, summon wealth, employment cabinet, and sintouch.

Converts DEEP LORE explanations from hell to inferno incorporated.

Banishes the compile errors.

Devils come from hell again.

replaces offer drink obligation with a much more lore appropriate devil's fiddle reference
Also fixes contract bashing brain damage chance.

Undoes some changes I accidentally did to example config files.

Fixes up a few remaining bugs.

Puts in the codex gigas and employment contract cabinets.
 -- Lemon - I kinda skipped this one, I'll patch it back in later because
 map conflicts are suffering incarnate

Solves the devil law problem in a REALLY hacky snowflake way.

Fixes a few methods in which a hellbound can be revived.

Devils respawn with a limited number of appropriate items, instead of COMPLETELY naked upon corpse destruction.  Also adds lines to example config.

Updates devil laws to be less hacky.

Objective to sintouch x mortals now greentexts correctly.

Contracts no longer cause brain damage.  I didn't realize it was lethal on this codebase.  Oops.

Splits dust(visual_only) into dust() and dust_animation() procs

Fixes some defines.
Adds undef statements to improve compile times.

Fixes race changes from demonic form changes.

Fixes small runtime error. (Which somehow didn't break anything?)

Implements lots of small changes/corrections suggested by CrazyLemon64

I still need to test these changes, along with other potential issues he brought up.

Fixes harvest bane and power contracts.  Also adds a few </span> tag enders.

Corrects some edge cases with revival contracts.

Fixes compile error.

Reverts unneccecary change to item/weapon/reagent_containers

Cleans up the code for readability.

Prevents cloning of hellbound individuals.

Latejoins now properly have employment contracts added to employment cabinets (provided they still exist)

Infernal contracts are no longer rendered unreadable by fire and alcohol.

All fireproof paper remains readable after being fireballed, not just infernal contracts.  (Though infernal contracts are the only fireproof paper atm)

Fixes an edge case problem with cloning.

Adds is_revivable proc to mind.

Removes snowflake code involving preventing soulseller resurrection.

Indulges in the sin of sloth, and copies tg's lazy list macros

Proc calls that transform the user no longer go to a null target

Fixes devil UI, human regression will keep appearance, and adds danceoff

Devil's base forms no longer suffocate inside the devil

Fixes runtimes, gets stuff working

The arch devil can now blast down walls with their pitchfork

EXTERMINATE ALL SPIRITS

Activates devil clause in voice of god

Fawks Mcclood

Feature P A R I T Y

Fixes devil bugs from testing

- Does a death refactor to make sure that diabolical resurrection works

- Walls no longer leave girders when blasted by the devil

- Getting a new body gives you a rudimentary amount of equipment to work
with to get out of maintenance or whereever

Does all the icons in a single commit on their own because icon

conflicts suck

Starting point of extra devil rebalance/fixes

Ports devil friends

Also oops tramples all over Fethas' corpse PR that's still up I need
to take care of that one

Styling fixes
2019-01-13 12:00:49 +01:00
Fox McCloud
4969a03e94 Fixes and Updates CQC 2018-11-24 00:31:23 -05:00
variableundefined
214cf7b12e Merge pull request #10288 from datlo/basicsofCQC
Snake, try to remember some of the basics of CQC.
2018-11-22 08:53:26 +08:00
datlo
65286d7830 Adds the CQC manual to nukie uplinks 2018-11-20 03:51:52 +00:00
variableundefined
7544ae573f Add in squeak component and refactor mouse, bikehorn, clown suit to use it. 2018-11-04 14:17:45 +08:00
Fox McCloud
ecb9c11433 Updates Components Again 2018-11-02 16:23:46 -04:00
variableundefined
17a5454fbc Port over three PRs from TG about component. 2018-09-04 23:19:30 +08:00
Fox McCloud
7440dad57e further conversion 2018-07-18 01:13:24 -04:00
Fox McCloud
b2c8f051b1 Merge remote-tracking branch 'upstream/master' into camera-damage-refactor 2018-07-15 16:31:50 -04:00
Fox McCloud
27ebe7a6fe Standardized Robotic Organ Checking--Removes Mechassited Organs 2018-07-07 21:33:42 -04:00
Kyep
412341439a Fixes #8954 - splits 'attack log' preference, spam-be-gone (#8992)
* Fixes #8954

* projectile reagetns

* removes all attack logs on keyless simple_animals even by keyed mobs

* deletes 'potentially'

* Tiger request

* more comprehensive solution

* check for mob

* istype

* brevity

* Split attack logs preference

* toggle

* deletes old CHAT_ATTACKLOGS

* explains what levels do when toggling them

* clarification

* Tigercat requests
2018-06-13 16:55:21 -07:00
Fox McCloud
f328db7b2a Refactors Camera Damage and Disabling 2018-05-20 05:45:07 -04:00
Fox McCloud
c0d5655f4d Further Improves Attack Animations 2018-05-17 19:48:03 -04:00
tigercat2000
df26483e67 Fix runtime logs & Remove a bunch of painful admin notifications 2018-04-25 16:35:02 -07:00
Fox McCloud
eafd57487c Merge remote-tracking branch 'upstream/master' into component-port
# Conflicts:
#	paradise.dme
2018-04-23 13:54:50 -04:00
Fox McCloud
0382afcb33 Ports TG Components 2018-04-21 01:22:50 -04:00
tigercat2000
c03621c508 Completely Overhaul Logging
This is a merged port from /tg/station and Virgo on logging standards.
The diary has been replaced with GLOB.world_game_log, diaryofmeanpeople
is gone (because it wasn't actually used) and a whole bunch of logging
procs have been changed to optimize Splunk.
2018-04-19 15:07:59 -08:00
Fox McCloud
22dc6860b3 Ports TG's Garbage Subsystem 2018-03-28 20:02:39 -04:00
uraniummeltdown
b09e3ae6f6 spacing, src/loc consistency in playsound, reverted the weapon hitsound change, removed silicon/damage_procs.dm as it's unrelated and wasn't even included in the .dme, fixed some typos 2018-03-05 02:07:31 +05:00
uraniummeltdown
ba4571ae7f removes setting LAssailant
fixed incorrect windoor cable number
gave titanium airlocks max_integrity
2018-03-04 13:52:57 +05:00
uraniummeltdown
a2038d40b3 makes door code more OOP: reduced copypasta in shutter and poddoor code, they have their own icon files, changed name of icon_states in the maps
added a few defines and helpers
do_after family supports callbacks
added airlock security levels to airlocks
obj_integrity for doors, door assemblies, firelock frames
vault door assembly is 8 plasteel up from 6
explosion_block works better
heavy firelocks block explosions, firelock (de)construction uses crowbar instead of welder
xenos can open airlocks
minor change to attacking obj message
2018-03-04 13:52:55 +05:00
uraniummeltdown
8f26d5b8b6 rename __DEFINES/mob.dm to __DEFINES/mobs.dm
make environment_smash into bitflags
add obj_damage for simple animals
make default max_integrity and obj_integrity INFINITY for non-defined objects, until we can move more objects to obj_integrity/take_damage() system
adds examining objects to roughly check damage
more obj_defense.dm procs
tables can be attacked with items, glass tables have a narsie_act()
fixes, changes to make it compile
2018-03-04 13:52:55 +05:00