Commit Graph

3617 Commits

Author SHA1 Message Date
Ccomp5950
bee3d30baa Oops, broke Mesons when I fixed NVG's
This should put things back where they go.
2014-03-26 17:19:51 -05:00
Mloc
38a22e880f Merge pull request #4623 from Ccomp5950/bugfixes
Bugfixes, Various
2014-03-25 08:45:53 +00:00
Ccomp5950
e54ce881eb NVG Bugfix
Now they work, and also added a green hud element that tints the screen green when nvg's are worn.
2014-03-23 13:51:57 -05:00
Ccomp5950
0225d7b3b0 Bug fix 3: Now with a vengence. Monkey pockets cause scrolled chat.
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
2014-03-23 06:05:23 -05:00
Ccomp5950
28392e9414 Code effeciency project: handle_virus_something() (human and monkey /Life())
2 for loops is more expensive then what we're doing here.
Also we check to see if virus2 is populated before starting a for loop
2014-03-22 07:50:23 -05:00
Ccomp5950
8106b6a4ae Code Effeciency project: Damn monkies Life()
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.
2014-03-22 06:56:09 -05:00
Ccomp5950
ce83c5c64e Code effeciency project: handle_environment (human/life())
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.
2014-03-22 06:22:01 -05:00
Ccomp5950
f1506acf1e Code effeciency project: Handle_Organs (human/life())
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.
2014-03-22 04:33:48 -05:00
Ccomp5950
731f08eb10 Rejuvination verb fix for IPC's limbs don't suddenly become organic. 2014-03-20 20:31:33 -05:00
Ccomp5950
5dbc141b9b IPC examination won't cause "OH NO ROBOTIC LIMBS" (no shit, yo!) messages.
Unless they are damaged.
2014-03-20 20:15:02 -05:00
Aryn
de86280434 Ctrl-H "faggot" to "meatball" and one icon state change. 2014-03-20 05:05:23 -06:00
Ccomp5950
31ed2999c5 Runtime fix on spawned mobs with no minds/client. 2014-03-15 06:31:53 -05:00
Ccomp5950
f1fdbb02c0 HUD-Optimization bugfix, mobs with no clients will update their health
HUD image as well.
2014-03-15 00:57:11 -05:00
yashaldie
55e43176b8 Merge pull request #3 from yashaldie/patch-2
Fixes Diona Nymph handling updates
2014-03-11 23:05:28 -04:00
yashaldie
bdd955b036 Fixes Diona Nymph handling updates
Diona Nymphs were not getting their Handling procs called.
2014-03-11 05:45:10 -04:00
Ccomp5950
b429605adc MedicHUD bugfix
Because the HUD stuff is now in Life() if someone dies their healthbar and status aren't updated.
We're fixing that here.
2014-03-11 02:51:13 -05:00
Ccomp5950
ebc188c600 Code effeciency project: HUD items rewrite
Before: Every tick each HUD item would recalculate and redo images for every mob in view. For items like the secHUD where we're transversing implants and the various records this gets very expensive.

After: Mobs use their hud_list variable to store varius huditem images, when conditions change for those specific huditem images it updates the specific ones on demand. As a backup every 30 ticks or so the mob will update all of their hud_list.

Also: moved proc/RoundHealth() from 2 seperate locations into __HELPERS/mobs.dm

Conflicts:
	code/modules/mob/living/living.dm
2014-03-10 21:59:58 -05:00
Mloc
16b1626b57 Merge pull request #4525 from Ccomp5950/pda_nano
PDA NanoUI Optimizations.
2014-03-06 09:09:05 +00:00
Ccomp5950
a379be8a55 Merge pull request #4533 from DJSnapshot/hotfix
Non-whitelisted IPCS. The real fix this time.
2014-03-06 02:22:41 -06:00
DJSnapshot
89114787e3 Non-whitelisted IPCS
Had to do a hacky fix. there was no real way around it.
Also, a couple balances with IPCs
And a totally silly death animation (Which has been commented out for now)
2014-03-05 23:44:03 -08:00
Ccomp5950
aa9141fb75 NanoUI Optimizations.
We won't regenerate the list for Manifests every tick while viewing the manifest, instead we have a global variable for it PDA_Manifest that we Cut() if there is a change to the manifest then when the next player goes to view the manifest on their PDA it will recreate the list that one time.

Some sections of the PDA will no longer auto-refresh every tick because...well that's dumb.

Modes that will no longer autoupdate at all:  Viewing medical/sec records, viewing notes (will update when you change them of course), and the station alert menu.
Modes that will only autoupdate every 5 ticks:  APC list (Because it's a huge fuck off list), the manifest, mulebots and secbots screens, supply requests/orders, and janitor supply locator)

Some other things that I just can't remember right now.
2014-03-03 22:50:24 -06:00
Mloc-Argent
8deed8dddd Dionaea can no longer steal blood from species which have the NO_BLOOD flag
Fixes #4510

Signed-off-by: Mloc-Argent <colmohici@gmail.com>
2014-03-03 09:15:35 +00:00
Ccomp5950
5c482f1c8c Merge pull request #4494 from yashaldie/master
Fixed Borg toggling broadcast mode
2014-03-01 11:07:41 -06:00
DJSnapshot
1e186839c6 added IPCs(machines) to list to make it easier on everyone. 2014-02-28 17:36:50 -08:00
DJSnapshot
3b10ee3ad5 Removing IPC whitelist requirement. 2014-02-28 17:32:29 -08:00
yashaldie
96dc185fde Update robot_modules.dm 2014-02-28 04:42:27 -05:00
yashaldie
36b4af57f2 made module contain channel list 2014-02-28 04:40:36 -05:00
Ccomp5950
c56ec21ee3 Merge branch 'master' of github.com:Baystation12/Baystation12 into dev-freeze
Conflicts:
	code/modules/reagents/Chemistry-Reagents.dm
2014-02-26 09:34:38 -06:00
Mloc-Argent
f5ab084eac Fixes admin attack logs to show up in-game as well as in the logfiles.
Signed-off-by: Mloc-Argent <colmohici@gmail.com>
2014-02-25 20:36:46 +00:00
Ccomp5950
ceb220f705 Runtime fix: OH GOD NOT THE BEEs WON'T SOMEONE CALM THEM DOWN?
Other then NULL?

runtime error: Cannot read null.type
proc name: Life (/mob/living/simple_animal/bee/Life)
  source file: bees.dm,91
runtime error: Cannot read null.type
proc name: Life (/mob/living/simple_animal/bee/Life)
  source file: bees.dm,91
runtime error: Cannot read null.type
proc name: Life (/mob/living/simple_animal/bee/Life)
  source file: bees.dm,91
runtime error: Cannot read null.type
proc name: Life (/mob/living/simple_animal/bee/Life)
  source file: bees.dm,91
runtime error: Cannot read null.type
proc name: Life (/mob/living/simple_animal/bee/Life)
  source file: bees.dm,91
runtime error: Cannot read null.type
proc name: Life (/mob/living/simple_animal/bee/Life)
  source file: bees.dm,91
runtime error: Cannot read null.type
proc name: Life (/mob/living/simple_animal/bee/Life)
  source file: bees.dm,91
runtime error: Cannot read null.type
proc name: Life (/mob/living/simple_animal/bee/Life)
  source file: bees.dm,91
2014-02-25 00:21:41 -06:00
Chinsky
0ba65efd18 Merge pull request #4477 from Ccomp5950/runtimefixes
Runtimefixes
2014-02-25 06:01:59 +04:00
Ccomp5950
23faf801ae Merge pull request #4468 from Segrain/master
Bugfixes.
2014-02-24 18:59:54 -06:00
Ccomp5950
75116bfd53 Runtime fix: Someone using a gas mask with no tank...IN SPACE
runtime error: Cannot read null.oxygen
proc name: copy from (/datum/gas_mixture/proc/copy_from)
  source file: FEA_gas_mixture.dm,480
  usr: null
  src: /datum/gas_mixture (/datum/gas_mixture)
  call stack:
/datum/gas_mixture (/datum/gas_mixture): copy from(null)
Basileus (/mob/living/carbon/human): breathe()
Basileus (/mob/living/carbon/human): Life()
/datum/controller/game_control... (/datum/controller/game_controller): process mobs()
/datum/controller/game_control... (/datum/controller/game_controller): process()
runtime error: Cannot read null.toxins
proc name: breathe (/mob/living/carbon/human/proc/breathe)
  source file: life.dm,339
  usr: null
  src: Basileus (/mob/living/carbon/human)
  call stack:
Basileus (/mob/living/carbon/human): breathe()
Basileus (/mob/living/carbon/human): Life()
/datum/controller/game_control... (/datum/controller/game_controller): process mobs()
/datum/controller/game_control... (/datum/controller/game_controller): process()
2014-02-24 01:16:19 -06:00
Ccomp5950
e72c584ac8 Reapplys this runtime fix when dead /mob/living would not have a client. 2014-02-22 03:47:46 -06:00
Ccomp5950
8ef2e10237 This reverts commit all the say code changes over the last couple of days.
Except for the removal of the redundant get_mobs_in_view used for bolding ghosts text.
2014-02-22 03:46:10 -06:00
Segrain
ef3b565f64 Fix for #4458. 2014-02-22 06:53:37 +03:00
Ccomp5950
6dc330a398 Bugfix: get_mobs_in_view won't allow AIeyes to hear chat.
Also:  Added a client check to saycode for now that stops runtimes when you have a dead body with no client and removed colons from it.
herp derp.
2014-02-21 21:29:34 -06:00
Ccomp5950
63a0f1185e Merge branch 'master' of github.com:Baystation12/Baystation12 into dev-freeze
Conflicts:
	code/ATMOSPHERICS/pipes.dm
	code/game/dna/genes/powers.dm
	code/game/objects/items/devices/PDA/PDA.dm
2014-02-20 19:16:23 -06:00
Ccomp5950
d29a7fb260 pAI / MMI emote fixes.
Fixes #4191
2014-02-18 06:47:06 -06:00
Ccomp5950
5909abb080 This is rather ironic...
My VERY FIRST PR, I used it to make ghost chat be bold, instead of using viewers() to figure out
what ghosts could see the mob, I used get_mob_in_view() which sounded pretty descriptive.

Unfortunately for me it was one of the most CPU intensive ways of determining who could view the speaker for this.

So yeah, removing the second get_mobs_in_view and replacing it with viewers()

Yes this code has been in since Oct/Nov time frame :(
2014-02-18 05:40:06 -06:00
Ccomp5950
de865875cb DNA2 fix.
Before:  If you shoved a skrell, cat, or any species other then human in the cloner, they came out human.

After:   Cloning works like it should.
2014-02-16 14:18:30 -06:00
Ccomp5950
b392ab8e0e Code effeciency project: handle_embedded_objects
Before:  EVERYTIME someone moved their character this proc would be called and loop through every organ looking for implanted items to see if it needs to apply damage.

After:  We create a flag that is set when an item embeddes, only when that flag is set do we do that loop through organs upon movement.  Also every 10 ticks while that flag
is set we will check to see if we need to unset it.
2014-02-13 21:56:58 -06:00
Chinsky
8e0c06c541 Merge pull request #4412 from Ccomp5950/pai-messenger
pAI messenger bugfix.
2014-02-14 01:32:30 +04:00
Mloc
09bdc9492a Merge pull request #4410 from Ccomp5950/dna2-cherrypick
DNA2 Cherry-pick (Dev -> Master)
2014-02-12 09:54:13 +00:00
Ccomp5950
942ce6ebc7 Merge branch 'master' of github.com:Baystation12/Baystation12 into dev 2014-02-11 18:07:19 -06:00
alex-gh
841333bc30 Fixed halloss not slowing you down 2014-02-11 18:01:37 +01:00
Ccomp5950
62b70bb827 Bugfix: AI Camera light toggle
Fixes #3676

Before:  Toggling would get stuck where it wouldn't toggle the camera until you reset your view.

After:  Camera light toggles, you have to toggle off before turning on a new camera light though.
2014-02-11 03:20:22 -06:00
Ccomp5950
87cf8bb219 pAI messenger bugfix.
pAI has to be a special little snowflake and have it's own messenger proc instead of letting a AI-PDA handle it.

So, updated it with the newest tnote variable functionality so it can participate.
2014-02-11 01:55:32 -06:00
Rob Nelson
64f83c51ad And now tested in game, with some fixes. 2014-02-10 22:47:29 -06:00
Rob Nelson
9d33964061 Missed the gene Life() call. 2014-02-10 22:47:08 -06:00