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.
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
* 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.
Computer boards are now in /code/game/objects/items/weapons/circuitboards/computer/.
Buildable machinery boards are in /code/game/objects/items/weapons/circuitboards/machinery/.
Everything else is just in /code/game/objects/items/weapons/circuitboards/.
The circuitboard parent definition is in /code/game/objects/items/weapons/circuitboards/circuitboard.dm.
Did some minor renaming and capitalization fixes on the boards.
Also moved RCON console board and SMES board where they belong. Formatted some board code and fixed some typos, too.
Cloning console renamed to Cloning Control Console.
The teleporter console is now called Teleporter Control Console.
The power monitor is now called Power Monitoring Console.
SMES board glass and acid construction price normalized (though other resources are still required; is that a good thing? It would be better to just introduce a new expensive part that is used to build it (if the coils aren't enough) rather than have a single board with atypical price.
Holopads can receive and send emotes.
The AI, when using 'me', will check if a holopad is being used. If so, the holopad will output the emote. If not, it's outputted from the core.
The AI will hear emotes from near an active holopad.
There is a new obj verb called 'see_emote()', that works similarly to hear_talk().
custom_emote() modified to have 'seeing_obj' list. May be resource-intensive, not sure.
pAIs can now hear emotes, without issue.
Carded AIs can hear emotes, but they hear themselves twice.
Mechs do not hear emotes correctly at this time.
This should have little/no gameplay effect right now, just paving the
way for directional lights.
Replaced handle_rotation() on buckly things with this.
Signed-off-by: Mloc-Argent <colmohici@gmail.com>