* Fixes#4632.
* 1:27 am coding best coding
* fixes a warning
* Removes the last of the gender macros. Gender is dead.
* gender II: the travis-ing
* linebreaks are dead too.
* oops i accidentally the gender, also ambiguous gender is now taken into account for get_visible_gender
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
Replaced some attack() overrides with apply_hit_effect() or other attack
procs where appropriate.
Removed the attack() override from reagent_containers.
- Fixes#9543
- Removes ugly floodlight/proc/updateicon() and replaces it with proper floodlight/update_icon() which is standard on all objects/items. Does the same refactor for power cells and adjusts the proc call in relevant files (hence the amount of 1-line changes in various files)
- Makes floodlights properly use CELLRATE. Their load is 200 watts. Cell adjusted accordingly, it starts with 1k cell, which is enough for ~40 minutes (roughly)
- Floodlights with almost discharged cell (less than 10%) ocassionally "flicker", dimming for few seconds. This serves as indicator that the power cell is running low.
- Floodlight luminosity adjusted. They now shine slightly more, espicially closer to the floodlight.
Protolathe and CI build procs moved to them from RD console.
Protolathe and CI now have a build queue. Designs take varying time to
build.
P and CI material storage is now a list instead of a set of vars.
origin_tech is now a list.
All sheets now contain exactly 2000 units of matter.
In design datum, chemicals and materials are two separate lists.
Designs are now sorted. The method is kinda hacky but flexible. They
have a var, sort_string. Designs are sorted alphabetically using it.
Circuits how show whether they build a machine or a computer in CI menu.
Adds item construction, for now protolathe is used.
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.
Stun batons and brute attacks have a chance to interrupt whatever guy was saying and send out incomplete version of whatever he had in chatbar.
Credit to Petethegoat.
Conflicts:
code/game/objects/items/weapons/stunbaton.dm
Made all obj/item/weapons have "swing_hit" as their default hitsound.
Made hitsound not play when the attack misses.
Adds agonyforce var to stun batons, which causes halloss and eye blur.
Also did some clean up of stun batons, and fixed the stun baton's bcell
var being of type weapon/cell/high instead of weapon/cell.