* Experimental: Port OD Pragma Lints
* first pass: Includes icon forge fixes/updates
* 2nd pass
* third pass
* debug_ai: This what you're unhappy with?
* Revert "debug_ai: This what you're unhappy with?"
This reverts commit bc178792e6.
* How about this
* Or is it the else?
* Pass summer
---------
Co-authored-by: Selis <12716288+ItsSelis@users.noreply.github.com>
* Adds Trait Genetics from Outpost21
Adds trait genetics from Outpost 21
- Tried to update each file it touched to be equivalent to their Chomp specific variants in order to maintain functionality and make sure no oddities would happen due to code differences. (Some things like the eardeaf loop were left there but commented out)
* Morph trait
* Fixes a server crashing bug with flip
aa
* flip
* Makes morph superpower better
- Makes it use the appearance_changer instead of 1000 different procs
- Makes cocoon weaver able to change eye and skin color.
I did NOT select you. BAD
* begone
* fix dna modifier
* Fixes massive memory leak
* Brain Runtime Fix
* There was no reason for this to be a spawn(0)
And no I didn't spawn with no blood - https://i.imgur.com/vPizqCD.png
* revert
revert the dna changes there
* Deconf
* gets rid of unused proc vars that did nothing
* expects enough free slots
* glob
* fixed and added two other tests
* another few tests
* this is a list
* fixed bad injector
* lets wrap these for sanity
* better feedback
* wrong name
* don't allow multiple occupants into the dna pod
* future traits will have activation levels instead of binary on/off
---------
Co-authored-by: Kashargul <144968721+Kashargul@users.noreply.github.com>
Co-authored-by: Willburd <7099514+Willburd@users.noreply.github.com>
* next set of spans
* some more
* next
* next
* next
* .
* text...
* next... rest soon
* .
* .
* ok last set for the night
* .
* .
* .
* .
* some more
* next
* next
* all for now
* .
* some more easy ones
* some more easy ones
* .
* .
* some more bolds
* oups auto complete moment
* add the remaining spans
* this as well
* this as well
* .
* .,
* resync them properly
* Update settings
* Whitespace changes
* Comment out merger hooks in gitattributes
Corrupt maps would have to be resolved in repo before hooks could be updated
* Revert "Whitespace changes"
This reverts commit afbdd1d844.
* Whitespace again minus example
* Gitignore example changelog
* Restore changelog merge setting
* Keep older dmi hook attribute until hooks can be updated
* update vscode settings too
* Renormalize remaining
* Revert "Gitignore example changelog"
This reverts commit de22ad375d.
* Attempt to normalize example.yml (and another file I guess)
* Try again
Now certain weapons can strike faster or slower than usual. No weapons currently do this as this PR just lays the groundwork for that.
The click delay can also be modified with traits. The slime agility modifier makes attacks happen 25% sooner.
Adds debug test verb to display a weapon's DPS. It's really basic but should be sufficient for future force adjustments I might do in the future.
Adds a fairly simple system that allows adjusting various numbers like max health, incoming damage, outgoing melee damage, etc. The nice part is that changing certain variables this way (like max health) is a lot safer than manually setting the max health var directly.
Changes a lot of short lines of code to point towards a variable's getter or setter helper instead of reading the var directly so the modifiers can work.
Endoarmor, delayed toxin sting, Enfeebling sting, and recursive adrenaline overdose now use the modifier system.
Enfeebling sting now only lasts two minutes, from five minutes, however it now also reduces the victim's melee damage by 25%/50%, and increases the damage they suffer by 10%/35%, for normal and recursive respectively.
Delayed Toxin Sting's effects are now felt all at once instead of over the course of a few minutes.
Hand-held flashes now do 30 halloss per flash, if the person lacks flash protection.
Hand-held flashes now can be used 10 times per minute instead of five, due to needing ~4 flashes to down someone.
Flash rounds do 20 halloss if the mob hit lacks flash protection.
A lot of new defines are now in inventory_sizes.dm, which contains;
All the size identifiers (the thing that tells the game if something is bulky, or w/e).
Storage costs for all the sizes, which are exponents of two, as previously.
A few constants for inventory size.
Also changes all storage item's capacity definitions by basing it off of how many 'normal slots' exist for it. This allows one to change the definition for all of the defines in the file, and everything will follow along without needing to change 500 files. In testing, I made all ITEMSIZE_COST_* defines doubled, and nothing had broke.
The benefit of doing all of this is that it makes adding new weight classes in the future much simpler, and makes knowing how much space a container has easier, as seeing ITEMSIZE_COST_NORMAL * 7 means it can hold seven normal items.
Replaced some attack() overrides with apply_hit_effect() or other attack
procs where appropriate.
Removed the attack() override from reagent_containers.
Conflicts:
code/game/objects/items/weapons/clown_items.dm
code/game/objects/items/weapons/material/kitchen.dm
code/game/objects/items/weapons/stunbaton.dm
code/modules/mob/living/carbon/human/human_defense.dm
code/modules/mob/living/carbon/human/species/xenomorphs/alien_facehugger.dm
code/modules/mob/living/simple_animal/friendly/spiderbot.dm
code/modules/mob/living/simple_animal/simple_animal.dm
Clothes now have a flash protection and tint level. If one is wearing multiple items with these modifiers they do stack.
Glasses also have a number of additional additions such as sight flags, see_invis level, and so forth.
Flash protection comes in 4 levels: Reduced, none, moderate, major.
Reduced protection, for example, means the user takes increased damaged from welding.
Moderate protection safeguards mobs from flashes, flash grenades, projectors, etc.
Major protection protects from the above as well as welding.
Tint also comes in 4 levels: None, moderate, heavy, blind
Moderate tint will apply the nearsighted overlay.
Major tint will apply the welding overlay.
Blind will apply the blindness overlay.
The end result is an attempt of less type checking. Any set of glasses may now also contain HUD glasses.
This should make a future rewrite of HUD glasses easier (could have the HUD functionality be a datum rather than separate item).
Replaced some attack() overrides with apply_hit_effect() or other attack
procs where appropriate.
Removed the attack() override from reagent_containers.