Derp fix on objects, we check mob contents instead of src.contents for any objects that can hear and pass hear_talk on to it.
Tape recorder will record the verb sent instead of doing it's own thing with verbs.
Binary channel now doesn't crop out the entire message when used.
Simple Animals won't talk while dead.
Poly/Parrots can use the radio and learn new phrases.
Lobby players won't hear stuffs
Universal hearing with animals won't be a thing.
Players won't hear stuff if they are sleeping, though somethings might slip through...
Tracking added for AI's and Observers
Instead of calling GetVoice() over and over for everyone that can hear you we're checking a variable that is updated with Life()
removed a bunch of my debug verbs.
CR+LF added to new lines, created a global variable log_end that can be used
on newlines
log_misc("blahblah...[log_end]\nMoreblahblah[log_end]")
put [log_end] prior to any \n and it will show up correctly in windows.
Also created log_misc() proc to log to diary, and removed a bunch of
diary << stuff all over the place.
Added the check to see what you clicked in the inventory when clicking on pockets and added a message for it. Now it won't just be a line break.
Fixes#4601
pretty much the same effeciencies from human/life()
no need to updatehealth() over and over and over
no need to process environment if everything is normal
etc.
Before: We process a whole lot of bullshit for no real reason most of the time because temperatures are perfect.
Now: We check if our temperatures and environment are within normal bounds and get the hell out of the proc.
Also: Mobs that are long dead or just dead mobs spawned at round start won't process Life(), those 3 clowns don't need Life(), those jerks.
We do a bit of pre-processing to see if we want to do checks on all the organs.
First we don't even do preprocessing unless we have damage of some kind
afterwards we process what is hurt until it gets better or overall we get worse
when we go ahead and check everything else out again.
Can add a safety check in life every 30 ticks or so go ahead and check every organ again but I don't think it's needed.
Before: AI's on new APC system would constantly add more and more power usage to the APC
After: AI's no longer handle their power consumption, that has been pushed off to an /obj/machinery/ai_powersupply dummy object which will process the power usage. This is much cleaner because machinery objects are already processed properly for the new system and keeps us from having to rewrite a bunch of AI code to bring the AI in line with how the new APC system works.