* Sideports a couple of init unit tests from Neb.
* Trying to unfuck initialize logic.
* Removing del()s.
* Adjusting return values to Initialize().
* Moving some dangerous object logic from obj onto the two types that use it.
* Rolling back some init changes and commenting out initialized atom unit test.
* this comment formatting is a minor war crime
* Removed sleep() from signaler circuit Initialize().
* Additional Init fixes post-rebase.
* Uncomments subsystem test since that's passing.
* Begins work on internal exosuit components, similar to Borgs.
* Large volume of work on exosuit components, Durand is tweaked to be higher cost in time and resources, since it requires AP to damage, without ions or explosives.
* Component Sprites
* Actually implement component repair, I knew I missed something.
* Magic numbers, properly typed lists, and indentations oh my
* Changeling
* Indent some comments for ease of read
* Edit the armor values to be more readable, also add radiactive and bio checks.
* Add damage threshold and penetration thresholds.
If you do not enough damage, it will simply bounce off consistently. Something that does 1 damage to a person would be so ridiculously nothing to a mech that it shouldn't achieve anything.
- If you throw a pebble at a mech, it will probably do nothing unless decently good as a weapon.
Additionally, your armor reduces the effectiveness of most attacks without a minimum of armor piercing.
- A flat hit with an hammer might be damaging to a squishy human, but it would probably not be all that effective against armored outerskin. The damage will be reduced to 2/3 or x0.66 to remark on this.
* Add a couple example values to the ripley and durand.
* Move the value by which failed penetrations damage is reduced to. God this is a mouthful to say out loud.
* Change the damage message from 'no denting' to 'bounces off'
* Fix an indentation error
* Small variable tweak.
* Add some work for random mechs
- Add a few variants of worn down, slightly busted mechs, this is specifically intended for mech bay later on.
- Add a random spawner with pretty much every mecho inside of it.
-
* Several mecho things:
- Add a comment to mecha.dm
- Add a forgotten comma
- Delete the vague attempt at a marauder cleared thing.
- Correctly change max health on the gygax
* Make it so the Marauder/old doesn't spawn with stuff
* Add a weaker list of mechs without phazon & marauder
* Fix a typo in a verb.
* Add straffing to mechs. This took my entire morning goddamnit.
You now have a straffing verb. Very convenient to shoot while firing back.
Thanks to @drexample even if i didn't use all that much of the original code i stole.
* Change straffing to strafing.
* Correct an oversight.
* Add a variable that determines whether or not you are in a mech or fighter at the moment.
* Rework a lot of mech code backend and add clickable buttons.
- Gygax overload, Durand defence mode, phazon phase, marauder smoke, zoom and thrusters have been made into modular things. Just put the 'smoke_possible' var to get those actions.
- Move most abilities that aren't for default mechs to 'Mecha_actions.dm' for less huge of a file. Marauder abilities to be moved shortly.
- Lot of verbs have been broken into procs such as toggle_lights() now being a verb refering to a lights() proc for easier work later on.
- Delete some movement code duplications.
- Changed the smoke system to be more up to date, inspiration taken from the cooking machines.
* Space out some things for ease for reading.
* Improve the damage readout for mechs on examine
* Improve speed boost code to an easier to modify version.
* Deleting a couple few forgotten debug messages.
* Port ParadiseSS13/Paradise#2100 - Saycode refactor
* Removed unused old carbon slimes code
* Port ParadiseSS13/Paradise#5099 - Saycode part 2
* Ported ParadiseSS13/Paradise#7170's /datum/browser Check Known Languages
* Port ParadiseSS13/Paradise#9240 - Get rid of alt_name in favor of GetAltName()
* Port ParadiseSS13/Paradise#10330 - You can now use multiple languages in one message
* Addressed Atermonera's review.
Translators now print the full message if they find any languages within the
message that the user doesn't understand, minus languages it cannot translate.
Additionally, the combine_message proc has been significantly simplified
by eliminating an ugly tree structure with the help of a little helper
proc.
The removal of the extra span inside each piece doesn't seem to have
visually changed the messages in any other way than changing where the
wordwrap happens, strangely enough. Must be something in IE's code being
picky about invisible elements. On the bright side, it splits *later*
than it did before, thus reducing the lines a message will take up by a
tiny amount.
Also, a bunch of things now have the 'filter_say' class from
PolarisSS13/Polaris#6998. Since span classes with no definition are
totally valid and just don't do anything, this PR does **not** depend on
that PR being merged first.
* Always gotta be one
* Combat Mechs Can Punch More Things
Removes the var to check for the 5 things it can attack, instead it can punch anything (but not everything will take damage).
Gives punching objects a check so you don't accidently smash something without meaning to.
Gives closets and canisters a proc to take_damage so they'll actually get smashed by the mechs.
* Take_Damage Boogaloo
* More take_damage Stuff
Adds click delay on attacking barriers.
Proper noises when attacking material doors and barricades.
More stuff can be broken by mech punch and simple mobs.
* Adds changelong
* usr to user
* Serenity
* travis
* adminspawn
* I greatly appreciate all detailed and informative feedback provided. Per request, the Serenity is currently adminspawn-only; a new PR will be made in two weeks to add it to Robotics and resolve any issues encountered during the testing period.
* Comments out circuit for two-week testing period
* Gun sound updates
Grenade Launcher sound source:
https://freesound.org/people/LeMudCrab/sounds/163458/
* Actually, this is a better way to handle this.
* Fixed accidental inconsistent indentation
* Renames shotgun.ogg to Gunshot_shotgun.ogg
Also actually changes the file names like I was supposed to last night.
* *peers* Didn't I just fix this shit?
* Actually fixes the missing files this time
* Update audible_deception.dm
* Changed tungsten core projectile sound by request
* Actually no this line is stupid and makes me angry
Simplifies dumb code that was badly copypasted.
Also fixed missing D'eagle fire_sound
* Smarter code
Less copypasta, more runtimes prevented in case somebody decides to make
a soundless gun whether done intentionally or not.
* Update gun.dm
* Exosuits are now capable of holding more equipment, of specific types.
* Tweaks regarding feedback in staffside thread, other concerns.
* Tweak to be more consistent. Why did the Odysseus have two universals. Tweak to weapon restriction on Med - > Odyss
* Weapons only fit in universal combat slots.
More tweaks to IPC fixes.
Merge resolution/compile fixes.
Further work on properly integrating, updating and fixing prosthetic options.
Repathed internal organs to organ/internal.
More work on full synthetics, changelings, overheating.
Working on getting organs to qdel properly and spawn properly when robotized.
Finalized some overheating values, added remaining prosthetic icons.
Finalizing the testing version of the full prosthetic bodies branch.
Added suit cyclers to the autolathe and map.
Fixing runtime errors.
Fixing errors.
Changelog.
Replacing limb and organ strings with constants.
Prevented brainless species from becoming full cyborgs.
Fixed issues with brain/MMIs renaming themselves inappropriately.
Various fixes and oversights.
Updates Bump() code.
Intents now use constants.
Simple animals can now use languages without overriding say().
There is now a difference between being able to smash normal and reinforced walls.
Reworks simple_animal/attackby so that constructs don't need to override it simply to add damage resistance.