Commit Graph

7101 Commits

Author SHA1 Message Date
Lohikar
e06fa3c795 Minor Initialize fixes (#3138)
changes:

Fixed some missing hints for gibspawners and spiders.
Removed all duplicated lattices/catwalks from the map.
2017-07-23 12:41:23 +03:00
Lohikar
0c94e7ab8e More human icons tweaks/fixes (#3136)
changes:

Updated the documentation in human update_icons a bit.
Renamed overlays_standing to overlays_raw to better describe what it is.
Nuked more compound overlays.
Ghosts now use appearance copy to copy their old mob (Fixes #3135)
Layer defines are now space-aligned instead of tab-aligned.
Renamed SURGERY_LEVEL to SURGERY_LAYER like the other layer defines.
Fixed a potential bug where belt overlays may have not cleared in certain cases.
2017-07-23 12:40:05 +03:00
Erki
07cedfb335 Some more fixes (#3130)
Fixes #2173
Fixes #1927
Fixes #3100
Fixes #3087
Fixes #3124
2017-07-23 01:03:41 +03:00
Lohikar
64e33fab83 Human icon tweaks (#3131)
Mostly efficiency changes to human icons, little bit of code deduplication in head icons.
The human overlay list has been changed to accept /list so that multiple items can be added to a layer without having to resort to adding overlays to an intermediary object like an /image.

changes:

Human skin color (not tone) is now stored as a hex string instead of a 3-value list.
Human body hair color (resomi only) is now stored as a hex string instead of a 3-value list.
Body markings now play nice with the human icon cache (Fixes #3110)
Hair properly uses its cache now in all cases.
Merged head organs and human icon's implementations of hair icon gen into a proc on human.
Replaced the individual hair and beard caches with a shared composited hair cache used by both head icon and mob icons.
Lists in the human overlay list are now flattened out onto the human, allowing for multiple objects within a single human icon layer without using an intermediary image.
Removed some unused caching lists.
Damage overlays no longer utilize overlays on a blank image for drawing, instead using a list in the human overlay list.
Shoe overlays no longer utilize overlays on the shoe image, instead using a list in the human overlay list.
Surgery overlays no longer utilize overlays on a blank image, instead using a list in the human overlay list.
2017-07-23 01:03:00 +03:00
Lohikar
6acfb4d22a Gutter language lore changes (#3103)
Changes made by loredev request.

changes:

Gutter has been renamed to "Freespeak" via. define. Define name is unchanged.
The description of Gutter has been replaced with one supplied by Jackboot.
Replaced remaining references to gutter in the code with the define.
2017-07-19 23:38:44 +03:00
Alberyk
fe151484de Hardsuit tweaks, tech levels fixes and pAI EAL addition (#3099)
-removes the plasma cutter from the ce and eva's suit, replacing it with a drill that fills the same purpose of the old plasma cutter
-adds more access restriction to the rigs as whole
-adds actuators to the terminator rig
-adds the cmo labcoats to the locker
-fixes #3097
-fixes #3098
2017-07-19 13:41:39 +03:00
skull132
97817469d2 Fixes #2978 and #3084 (#3086)
Fixes #2978
Fixes #3084
2017-07-18 12:22:52 +03:00
Lohikar
8fcad605ee More icon caching (#3078)
changes:

Human-type hair (facial & head), eyes, and lips are now cached in SSicon_cache.
Underwear, undershirts, and socks are now cached in SSicon_cache.
Removed forced icon regen for update_body - if this actually did anything, the cache key for these icons needs to be made more detailed.
Organs now fully use SSoverlays to apply overlays (previously they partially used it, which may have caused bugs).
A couple of hair styles (bald, shaved) are pretty common, so this should remove/reduce the overhead of constantly regenerating their icons. Also means that BST's icons only really need to be generated once.
2017-07-18 12:22:01 +03:00
skull132
8179a7fc74 Fix a sleep in human life. 2017-07-16 20:53:32 +03:00
skull132
0fc67f2cb9 Remove a whole bunch of in world loops and rework machinery global lists (#3053)
Removes a whole bunch of in world loops.
Reworks SSmachinery to hold two lists: all_machines and processing_machines. all_machines contains all machines 5ever. All of them. Literally. Forever. And ever. processing_machines only contains machines that process with the SSmachinery controller.

I checked most types at runtime on the live server to see whether they're in processing_machines or in all_machines, and did debug to ensure that most machinery ends up and stays in all_machines.

Includes a basic UT to make sure all mapped in machinery types remain within the all_machines list post-init.
2017-07-16 20:32:33 +03:00
AgentWhatever
8868510fb3 Agentwhatever sprite capitalization fix (#3067)
Removed another typo by me by removing capialization in borg icons all together.
Fixed two borg sprites never getting their eyes due to typos.
Brought order to the robot.dmi file.
2017-07-16 17:31:16 +03:00
Alberyk
ac5b4ea055 Food, hair and grammer fixes (#3058)
Fixes #3051
Fixes #3055
Fixes #3057
Fixes #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
2017-07-16 11:56:13 +03:00
skull132
d55a9bc42a things 2017-07-16 01:34:49 +03:00
MarinaGryphon
02a12bcb02 Fixes #258 (#3040)
Fixed #258, in my current testing.

I don't know why I didn't do this earlier.
2017-07-15 21:54:27 +03:00
MarinaGryphon
f04baf71ac No more multi-Z grabs, + ladder grabbing (#3025)
Grabs break if the mobs aren't on the same Z level. You also take someone you're grabbing up ladders with you.
2017-07-15 17:03:37 +03:00
Ярослав
4e8ee11c6e Robotics module packs overhaul (#2880) (#2949)
Reposting from PR #2880 because of branches conflict

Finally did find a way to add blueprints to construction cyborg. Engineering cyborg modules are now more related to construct things inside of an area, while construction cyborg is now have all tools which might be needed to create new areas (+APC's, air alarms and such). A bucket and a matter decomplier to a janiborg.
Maint.drones did receive their wires limit being lowered from 30 to 15, wood and plastic dispensers capacity is multiplied by 2, and a standart engi module pack is now contains 45 wire length instead of 30
2017-07-15 16:25:44 +03:00
Alberyk
2f949ecb45 Ports baystation armor system (#2954)
Ports Baystation12/Baystation12#12658

Changing how the calculation of armor works , instead of just being a check if it is protected fully, half or nothing. Making armor more reliable and less rng dependant.

Also, uranium meteors will irradiate nearby people when they explode.
2017-07-15 16:24:03 +03:00
Alberyk
1bda977ae7 Makes the cavern dweller more interesting. (#3029)
Adds an unique type of meat to the cavern dweller, with hyperzine, giving people a reason to hunt them down like carp. Also, replaces the old sculping block sprite with one that shares the same color of our mineral walls.
2017-07-15 16:21:42 +03:00
Alberyk
e6349f7f8b Adds more new hair (#3028)
Adds more hair and facial hair options, all from bay station.
Fixes #2979
2017-07-14 20:09:39 +03:00
Lohikar
687e56a8e0 Replace a bunch of overlay calls (#3005)
changes:

Converts a bunch of manual overlay manipulation to SSoverlay calls.
Moved more cache lists to SSicon_cache.
2017-07-13 21:12:53 +03:00
Alberyk
12bfdd2f79 Fixes foods not having the right tastes (#3019)
I forgot to do this in my old pr tastes, also includes changes from #3017.
2017-07-13 21:04:31 +03:00
Alberyk
c3fe2cf871 tweaks human/electrocute_act (#3022)
Reduces the damage taken from shocks, so people won't be husked by bumping into any airlock. Also adds the features of human/electrocute_act to the human proc, so, there is no need to call the carbon proc.
2017-07-13 21:02:35 +03:00
skull132
8495fdd084 Runtimes, 10JUL2017 (#3003)
Nukes a couple of RTs:
2017-07-12 00:15:11 +03:00
inselc
3e184c4eaf Bugfixes: Dronesay and Underwear/Socks in Character Setup (#2992)
This PR contains bugfixes for:

Drones being able to transmit empty messages when talking in local drone chat ("dronesay")
A possible runtime in dronesay, caused by a null-reference in player_list, or a mob not having a client
Underwear and Socks selection in Character Setup breaking when switching genders.
Character loadout is now sanitized each time before it gets displayed. Invalid selections will be reset to "None", when changing the character's gender.
2017-07-10 20:13:02 +03:00
Lohikar
606a9c7541 Icon caching & human icon tweaks (#3000)
changes:

Body marking icons are now cached in SSicon_cache.
Renamed the body-hair cache (used only by Resomi) to make it more clear what it is.
Humans now use SSoverlay for applying overlays, though they force-compile instead of waiting for it to tick.
Fixed a bug where getFlatIcon() did not work properly with SSoverlay overlays.
2017-07-10 20:09:52 +03:00
Alberyk
97d2a54ee4 Fixes canes (#2996)
Canes and concealed canes have the same size, also fixes and re-adds their old update icon proc. And also, probably fixes beepsky attacking the hos dog.
2017-07-10 20:08:54 +03:00
Lohikar
2ee49b1b9e Fix parallax (#2983)
changes:

Parallax now actually moves properly on Move().
Parallax movement can now be toggled as a preference.
Merged all movable/Move() overrides for performance reasons.
2017-07-09 19:35:02 +03:00
Lohikar
33c61f9f1e Remove some world loops (#2965)
changes:

Replaces a lot of in-world loops with more specific lists.
Recipes are now copied in SSmachinery/Recover()
Fixed bad sorting on all_areas list.
Added skeleton Destroy() to SMESes as they did not have one and are failing to GC.
Seems to shorten SSatoms init a bit, maybe from removal of in-world in MULEs?
2017-07-09 00:24:28 +03:00
Lohikar
a0ed9a393e Character spawning fixes (#2975)
changes:

Fixed a bug where non-clothing custom loadout items would not spawn.
Fixed a bug where latejoining AIs would spawn at CC / Cryo instead of the core.
Added more SSjob debug statements.
Fixes #2942.
2017-07-08 01:39:06 +03:00
Lohikar
8af0051fd6 More macros (#2955)
changes:

Holomaps now use an area flag instead of a proc to determine which areas do not draw on the holomap.
The supply shuttle once more has a roof.
The supply shuttle's landing zone is now dynamically lit.
Turfs only generate visibility updates on Initialize() after mapload - visualnet is not initialized by then anyways.
Merged /datum/gas_mixture/(init) into /datum/gas_mixture/New().
Converted a ZAS proc into a macro.
Made ZAS attempt to remove a turf from a zone instead of always rebuilding it in a certain case.
Macroized two misc procs.
Fixes #2947.
2017-07-06 23:37:58 +03:00
skull132
e92f1fdd2e Fix some RTs - 03JUL2017 (#2938)
Fix the most common RTs from Sunday's testing.

Also works on orebags. Limits their capacity to 200, as anything higher than that breaks the fancy inventory system something awful. Maybe I should write a UT to test and confirm this. Expanding: I don't think TICK_CHECK in inventory procs is a good idea, without fully implementing a non-fancy storage subclass. Non-fancy would just be speedy without all of the fancy inventory orientation bullshit. But CBA to do that now and I'm not sure if it's worth it for the edgecase of drone satchels atm.
2017-07-05 23:26:35 +03:00
skull132
405366d15f Fixes #2803, #2553, #2597 & #2498 (#2940)
Fixes #2803
Fixes #2553
Fixes #2597 (Couldn't find a cleaner way to make this work, unfortunately. Not all procs-as-verbs can be used as procs.)
Fixes #2498
Fixes #2912
2017-07-04 00:52:42 +03:00
Pacmandevil
85d0e3c1c5 Changes Electrocute_act (#2866)
As it works currently: Electrocute_act, the proc called when anybody gets shocked, has several problems.

As it is now - it only damages the hand. These changes Allow it to "arc" through one of 6 possible arcs:
*left to right hand
*right to left hand
*right hand to right foot
*right hand to left foot
*left hand to right foot
*left hand to left foot

*Snowflake hand to head to hair to ground fuck the braid

the "arcs" Check the siemens_coefficient of the entry and exit points of the Arcs when calculating damage - So you won't take any damage if you have insulated gloves, and I'm not sure if any shoes have that. but it tries to calculate it anyway. Who knows, Janitor might be buffed.

I've also taken the 60 seconds it took to add the proc to simple_animals. it's just flat damage right now though. I'll probably spruce it up in the future if nobody else does.

The proc shouldn't in theory work any differently if you provided a def_zone for it to target - it'll still just damage the one area. but if no specific area is provided. it'll "arc"
2017-07-03 21:59:37 +03:00
Ron
2477c80644 Dislocated jaw changes (#2925)
Speaking with a dislocated jaw causes a drunk-like effect and sometimes a pain message.

Related thread: https://forums.aurorastation.org/viewtopic.php?f=21&p=79658#p79658
2017-07-03 21:58:23 +03:00
Alberyk
320444fd00 Changes ipcs brute mods and fixes some issues with their external organs (#2894)
-removes the brute reduction from the regular baseline, because robotic limbs already have those
-reduces the industrial brute resist from 0.5 to 0.8, because again robotics limbs already have some
-fixes industrial and shells head not being tagged as vital and makes their max damage be equal as other external organs
2017-07-03 21:17:09 +03:00
Alberyk
6a26b8c1f3 Fix player controlled range hostiles mobs being unable to fire (#2928)
Pretty much fixes hostiles mobs that had a ranged attack being unable to use it if they are controlled by a player, so, we can have human controlled cavern dwellers and combat drones(in case of adminbus).

Also, fixes a broken design that needed mutagen and being able to transfer reagens to species without blood using an iv.
2017-07-03 12:05:42 +03:00
Lohikar
d0fcc77f31 List stuff (#2932)
changes:

Converted some list procs to macros (why the fuck was islist() a proc?!)
Removed some old sorting procs and replaced their few remaining calls with sortTim() calls.
2017-07-03 12:03:14 +03:00
Alberyk
1b19877917 Ports taste mechanics from baystation (#2864)
This pr will port the baystation 12 taste system. Also tweaks some drink's strength.
2017-07-03 02:27:43 +03:00
Wraithcraft
8b6ed6236b Wheeler Hairstyle (#2903)
Adds hair_wheeler_s to human_face.dmi, and adds a section for "wheeler"
hair in sprite_accessories.dm.
(I tested this and it works.)
The hairstyle is just a modification of "Mulder", adding some more floof, and making the hair itself a bit more grown out, hiding some of the forehead.
2017-07-02 19:48:16 +03:00
skull132
b886ef644a Implement mixed secret (#2849)
Implements mixed secret as a gamemode. It's another snowflake mode which taps into more snowflake functions. :ree:

Went over all references to "secret" and swapped them for a macro where applicable. SSticker.hide_mode now holds a reference to which type of secret was picked. "random" gamemode will now pick from both secret lists for added randomness!

Implementation of https://forums.aurorastation.org/viewtopic.php?f=18&t=8253
2017-07-02 02:38:00 +03:00
Alberyk
1365befb04 Fixes some things (#2886)
Fixes #2832
Fixes #2821
Fixes #2805
Adds a tint to the bomb suit helmet
Fixes the wizard voidsuit an outdated wizard faction check
Fixes pants don't convering the legs
Fixes hailers showing their messages on the lobby
Reduces the recharge cost of the mounted thermal drill, so, it won't use an entire powercell when you fire it once
2017-07-01 21:53:49 +03:00
Lohikar
42f91d8117 Remove privacy poll & other tweaks/fixes (#2863)
changes:

Removed the privacy poll as it is unused.
Observing no longer creates a new mannequin, instead fetching one from SSmobs.
Observer ghosts now have a description again.
Converted new_player.dm to absolute pathing.
Fixed a bad init on holomaps.
Removed a sleep from light fixture Initialize().
Added a queue length stat to the MC panel for Icon Smoothing.
Halved time taken to create lighting overlay objects.
Species & body marking lists are now sorted alphabetically.
Commented out calls to lighting profiler to remove overhead of string interpolation in some procs.
Blood dries instantly if present during mapload instead of setting a timer.
2017-07-01 21:53:39 +03:00
Lohikar
7419971a02 Vision flag tweaks (#2779)
Normalizes some vision flag operations & adds SEE_BLACKNESS to all mobs if the compiler supports it.
Shouldn't break 510 clients even if the server is 511 & using SEE_BLACKNESS.
Should fix some visual glitches with wall-mounted objects being visible when the wall they're on isn't visible.
2017-07-01 18:03:02 +03:00
skull132
9b00464951 Swap brains to absoloute pathing (#2860)
Mobs are touchy things, so having them on relative pathing is a sin.
2017-06-29 00:12:03 +03:00
Lohikar
51c967d554 Kill a bunch of unneeded lists (#2851)
Removes a bunch of default lists from /obj, /obj/item, and /obj/structure, replacing them with either lazylists or adding behavior to the null value.

Null armor is now considered identical to having armor with 0 armor in each category, null attack_verb results in the text "attacked" being used.
2017-06-28 23:10:33 +03:00
AgentWhatever
c66921b079 Agentwhatever interpretive borgs (#2848)
Added more languages for borgs, plus a short explanation on how borg languages work code-wise for future reference
* Swapped the basic and default/classic icons for all modules

Closes #2781
2017-06-28 14:25:31 +03:00
Alberyk
013a361ca3 Adds changeling horror form (#2819)
Adds an end game power for changelings (15 genomes points), allowing them to turn into a robust mob for around five minutes.

Fixes some issues with arm blades and shields, also adds a chem costs to using them.

Adds new changeling related sounds.
2017-06-28 14:23:49 +03:00
skull132
ccadcdb6f3 Support - Remove sleep() calls in various Life() chains (#2833)
Removes:

sleep in floorbot/Life() (Fixes #2578)
sleep in medbot/Life()
sleep in farmbot/Life()
a sleep in Diona specific proc chains, which sneaked into human/Life()
a sleep in coldingtons/activate, which sneaked into human/Life()
sleep in bear/misc_command (uncertain if this was ever called in Life(), but hey!)
sleep in corgi/*/Life
This covers all debug references I could find on graylog from the past 30 days.

Refactors:

Removes Nanako-style comments from diona_base.dm which break formatting in VSCode and Github
Swaps diona_base.dm to use to_chat over <<
2017-06-26 21:09:51 +03:00
Lohikar
b071bbf0d2 Parallax-related performance tweaks (#2810)
Experimental tweaks to how parallax's movement hooks work; the current ones appear to be fairly expensive for all movable movement, doing locate(/mob) in src on every forceMove(). This PR creates a new lazylist (contained_mobs) containing a list of every mob directly contained by an object. contained_mobs is updated on mob/forceMove().

Not sure how to handle mobs located deeper than directly inside an object.

Only alternative to this I see is to make SSparallax tick.
2017-06-26 12:05:17 +03:00
Lohikar
bcccd88fd4 Fastboot (#2761)
Adds a config option that disables some time consuming bootup steps that aren't generally required for debugging.
2017-06-22 13:15:20 +03:00