Commit b1546ee3eb contained a rather
bone-headed mistake, that resulted in embedding with penetrating
projectiles to not behave as desired.
This commit fixes that, and provides a cleaner implementation.
Collection of gear and changes from the four gear polls on the forums
includes:
2 new automatic weapons, mapped in to ERT and random weapon spawns.
Laser carbine balance.
Slow emergency softsuits, no armor value other than bio and rad, 4
slowdown.
1 knife, not mapped in, available for Psi's uplink merge.
New vests: 2 types, 2 pocket no slowdown,
4 pocket with slowdown, second is available from cargo and one random
vest
spawn in armory. The first replaces all instances of the old vests. Old
vests still exist in code.
Mercenary vest with no slowdown, 4 pockets, and slightly better armor,
not on map, possibly for Nukes or Traitor Uplink
Holster rearrangement for custom loadout.
Acid dispenser, mapped into robotics and science.
New food items, added to vendors and rations crate.
New random medical spawns, added to medbay.
Cargo and loadout additions to accommodate new items.
1 beanbag loaded 5 round shotgun added to Warden's closet to compensate
for officers having .45 ltls and the HoS having an e-gun, suggested by
IRC and server.
http://baystation12.net/forums/viewtopic.php?f=5&t=12064http://baystation12.net/forums/viewtopic.php?f=5&t=12031http://baystation12.net/forums/viewtopic.php?f=5&t=12027http://baystation12.net/forums/viewtopic.php?f=5&t=12007
Adds ability to wear female underwear as male and vice versa.
Changes 'underwear'/'undershirt' vars to hold iconstate instead of esoteric dances with array indexes.
Announcements are no longer parsed twice, avoiding messages such as "T's nice".
Fixes the strip_html_properly proc, to avoid out of memory runtimes.
Makes syringe guns a type of launcher gun, and removes the hack
projectile.
Also moves syringe and dart gun source files into the modules/projectile
folder.
Removes can_fire() and moves some of it's functionality into
get_next_projectile(), which was renamed to consume_next_projectile() to
indicate the possibility of side-effects.
Also renamed flag var to check_armour
Rewrites gun.dm. Reorganizes the firing procedure into logical procs and cleans up some unnecessary variables or demotes them to the subtypes that actually care. Energy weapons that create their own projectiles no longer care about in_chamber. Launcher support is much more natural now.
Cleans up duplicated cyborg energy weapon power supply code. Adds support for energy weapons to recharge from external power sources, unifying cyborg and hardsuit mounted weapons. Incorporates the cyborg taser recharging mechanism. Cleans up laser tag gun duplication
Changes path strings to actual paths. Changes relative paths to absolute paths.
Renamed several targeting vars to make their purposes more clear.
Fixed targeting not handling firing correctly for certain subtypes.
Moves them away from 'tie' legacy - path change, and different code files.
Changed single hastie var into accessories list, to allow multiple articles worn at same time. Updated all affected places in code to work with it.
Currently any number of decorative accessories can be attached, one utility (holster/webbing) and one armband.
* Refactors projectile Bump()
* Converts projectile_type var strings to paths
* Reorganizes bullet projectile paths
* Made a pass through all the bullet_act() definitions. Mainly ensured that damage_type is checked when dealing damage to certain objects. Removed stupid /turf bullet_act() override, replaced with on_hit() overrides on the relevant projectiles.
* Adds shotgun pellets projectile. Adds Raptor's shotgun slug sprite.
* Gives stunshots more of their own identity, refluffs them as taser cartridges for shotguns. They still aren't obtainable anywhere unless spawned.
* Makes projectiles pass through girders and cultgirders with a certain probability, unless the girder itself was clicked.
* Projectiles are also able to pass through grilles. Low damage projectiles have a chance to be blocked by grilles. High damage projectiles have a chance to have some damage absorbed by the grille.
* Makes projectiles for blanks invisible.
* Adds flash bullet types
* Adds support for 'penetrating' projectiles
* Swaps .45 and 9mm projectile types. .45s hit slightly harder, 9mils have more ammo capacity.
This means that you'll no longer get the radio message being entirely different from the non-radio message, and that all players will see the same scrambled string