1. When a human is hit by a bullet, check_shields() is called. If a
value different from BULLET_ACT_HIT is returned, the shield will void
the bullet.
2. In turn, check_shield() calls handle_shield() on the held shield.
3. whoever coded this shit forgot to add a default return value so the
held shield returns null when it fails to block meaning that the game
voids the bullet lol
Co-authored-by: Matt Atlas <liermattia@gmail.com>
Refactored the projectile code, mostly in line with TG's now.
Refactored various procs that are used or depends on it.
Projectiles can now ricochet if enabled to.
Damage falloffs with distance.
Homing projectiles can now have accuracy falloff with distance.
Projectiles have a maximum range.
Muzzle flash is configurable per projectile.
Impact effect of the projectile is configurable per projectile.
Accuracy decreases with distance.
Projectiles work with signals and emits them, for easy hooking up from
other parts of the code.
Meatshielding is now less effective .
Impact sound is now configurable per projectile.
High risk.
Refactored hitby to be in line with TG's version.
Refactored item weight defines to a more clear naming scheme, also in
line with TG's version.
Refactored how the movement bumps are handled, ported signals to handle
them, in preparation for the movement update.
Fixed disposal hit bouncing the hitting atom on the wall.
Items do not push other items anymore if they are tiny.
Various adjustments and fixes to TCAF Corvette, alongside fixing
Deployable Turret.
**This does not fix the issue regarding telecomms(#19033), if someone
knows the cause, contact me.**
---------
Co-authored-by: Ben10083 <Ben10083@users.noreply.github.com>
* SDQL2 update
* fix that verb
* cl
* fix that
* toworld
* this is pointless
* update info
* siiiiick..
* vv edit update
* fix that
* fix editing vars
* fix VV
* Port the /TG/ globals controller.
* part 1
* part 2
* oops
* part 3
* Hollow Purple
* sadas
* bsbsdb
* muda na agaki ta
* ids 1-15
* 16-31
* 41-75
* bring me back to how things used to be before i lost it all
* the strength of mayhem
* final touches
* cl
* protect some vars
* update sdql2 to use glob
* stuff?
* forgot that is not defined there
* whoops
* observ
* but it never gets better
* a
---------
Co-authored-by: Matt Atlas <liermattia@gmail.com>
* I wanna set the universe on fire
* dfsaaf
* setup
* dir issue?
* dsf
* Perhaps the script
* saf
* cry
* pain
* sdfas
* Try reintroduction of tag-matcher
* Failed
* Tries to suppress dotnet compile warnings
* Like this maybe?
* woopsie
* Damn pathings
* Hate
* Pragmas
* unlint?
* Maybe?
* GDI
* Redundant ifdef removed and changelog
* Did I forgot the tag matcher, or it was still broken?
* Yea no that script is still broken
* Removed tag-matcher as requested
* *sigh*
* test
* bro what?
* hope
* just fixing the input
* Let's see if we catch it...
* Mitigates research recycling exploits by minimizing what can be recycled
* Moves the research design check into a new unit test
* Adds unit test for stack material recipes costs and fixes these costs
* Instead of changing recipes the resulting materials are worth less
* Crap fix
Adds a Dominian mercenary loadout, finishing off the main Human factions that can be represented via mercs.
Also, adds two Dominian dresses to the loadout (the Dominian clothing selection) and fixes the description of the Himeo cap.
The weirdest part of this PR is the 80 melee resists on the Dominian RIG. The other stats have been lowered to compensate for this (given it's meant to be a melee-centered suit) but let me know if the stats aren't to your liking, and I'll be willing to change them.
The Dominian mercenary kit gets 4 voidsuits, the RIG, 4 energy cutlasses and 4 resprited energy shields. The resprite just turns them red.
The solo mercenary kit gives you 1 voidsuit, a shield, a cutlass, and that's it.
The RIG is below, armed and unarmed.
This pr adds the is_clumsy check, that checks if the mob has the mutation or if they are drunk enough. This fixes a bug where mobs would still have the clumsy mutation due to drinking.
This PR will lead us towards the Promised Day, for in its wake there shall be much celebration and ecstasy as this world becomes a world suitable for developer hegemony. The first strike is thusly;
All << is converted into to_chat().
Projectile hitscan effects moved to /effects/projectiles folder.
Most of projectile firing code and some of impact code refactored, and projectile hitscan effects refactored with ported TGcode (which is mostly TGcode I wrote anyways 😎)
Projectiles can now be fired at any angle, instead of just at the center of turfs!
Projectiles are now [in theory] 100% accurate down to 0.001 of a pixel.
Port of the merchant mechanics from baystation12.
All of the trader, prices and most essential system are done, as well the job datum and the like. Mapping the shuttle, the base and a new dock will be done in a later pr.
Also adds phazon construction and several other items used in this pr.
The chance of the merchant slow being open at round start can be changed via the config, it is 20% by default.
Fixes#3051Fixes#3055Fixes#3057Fixes#3061
Fixes some food having no taste, also fixe cheese tasting like meat and other minor things like grammar.
Removes the ,45 magazine from the warden's locker, and give them a helmet to match his armor
Fixes a missing window at the main central level
Fixes a messed up hall at central command
Adds a small room for interview for the ccia in the odin, that was left out due to map issues
Adds the captain chair overlay that I forgot to add way back
-adds the netgun, replacing the syndicate cyborg energy crossbow with a downgraded mounted version, and giving the heisters a chance of getting one of those in their random gun spawn
-fix the meteor gun, giving it a new sprite and fixing the wrong icon state on the projectile
-ports emp/haywire rounds from baystation, only .38 and 12 gauge rounds
-fix the action button of the am rifle not wielding it
-gives the wizard staffs tech levels
-removes the xray crate from cargo
Fixes#1923
-changes the one handed pulse rifle to be a pulse carbine and a pulse pistol, also removed a lot of useless vars from it
-changed the pulse destroyer to fire in bursts
-added some new flavors of sword with their own sprites
-added some new on hand and back sprites for some guns
-added the janitor ert hardsuit, not anywhere yet
-fix #2137
-fix the anesthetic tank having no sprite on the back
-ghetto shotgun and pistol chances of failure are now random when they are created
Energy swords, shields, and ninja blades can now deflect projectiles.
Energy swords have a fairly moderate chance of reflecting energy weapons.
Energy shields have a much higher chance of reflecting energy weapons.
The ninja blade has the highest chance of reflecting energy weapons.
Energy sword and ninja blade can only effectively reflect shots to the groin, chest, and head.
Energy shield has full body coverage.
Energy sword has less "durability" than shield and blade (Can withstand less shots before shutting off.)
Neither sword, shield, nor blade can deflect shots to the back. Only the ablative vest provides full coverage.
Probably some other stuff I'm forgetting.
-fix magic missiles not working
-corrupt form should not strip the wizard, should last longer and the fully upgraded form was buffed
-heads of staff, except implanted ones, can be converted to rev now
-cultists gets the cult language
-loyalty implants will stop rev convertion
-probably fixed ai and cyborgs being selected as cultists and getting access to aooc
- Fixes#1777
changes:
Removed shim for old spark system.
Converted all calls to old spark system with calls to new one.
Processor-based effects are no longer pooled, as it had minimal performance impact and was breaking things.
Tweaked some visible_messages for rogue drones.
PB effects' handling of location is now done at the /datum/effect_system level.
This is it. The big one.
Risk: Very large. This modifies or rewrites several important systems.
Some things still need balancing, but that's probably better done if/when this hits dev.
changes:
New smooth lighting system.
Machinery split into three processes: machinery, powernet, pipenet Removed due to breakage. Refactored into multi-step process.
Mob process rewritten.
NanoUI process rewritten.
Objects process rewritten.
Tweaked color output of station lights.
Slime core lights now emit colored light.
Fixed light update frequency issue with fire alarms, hydroponics trays, and airlocks.
Increased light emission from bolted airlocks.
Miscellaneous performance improvements.
New datum pool implementation.
New lighting usage profiler.
Lighting system now tracks UV light, which is not visible to players.
Space now has a parallax effect.
Disabled Spin View verbs due to incompatibility with the new lighting system.
Disabled hallucination view spin due to incompatibility with the new lighting system.
Lighting system now initializes in the lobby before the round starts to reduce BoR deadtime.
Added UV light tracking to lighting engine; dionae now gain energy exclusively from UV light.
Added colored lighting to a few consoles that used default (white) light.
In short, dropped has been redefined from its old usage of "left an inventory slot" to now mean "left a mob's direct contents" which is a far more useful definition programatically.
Changes:
-added some vars that allow for more pre-set borg models, ported from the newest bay changes
-added combat module and an ert borg as admin spawn presets
-fixed syndicate cyborg
-syndicate cyborgs explode when killed now
-added a limited frag grenade launcher to the syndicate module
-fixed a lot of broken guns
-fixed the bad ert id code added by the ert update
-fixed the tactical shield to have sprites and behave properly
-tweaked even more the vending machine at sec armory
-disabled joining as actor
-enabled spess bikes, heisters get two of them and can get one via cargo contraband system
-replaced advanced advanced e-guns with energy rifles
-fixed some missing id sprites
-fix #1281
Credits for content go to Serveris. All I did was fix it up for the baymerge and got it working in-game (Yes I know zipties don't stack. I couldn't figure it out. Maybe latter.)