Commit Graph

25 Commits

Author SHA1 Message Date
Lo6a4evskiy
50cc057504 Lots of fixes and improvements 2015-02-04 17:35:42 +04:00
Lo6a4evskiy
bfd74684b4 Tweaks as noted, added myself to admins.txt 2015-01-24 16:14:44 +04:00
Lo6a4evskiy
c6a13419a9 Compile, you damn dirty code 2015-01-21 22:09:52 +04:00
Lo6a4evskiy
3619ed4c0d Merge branch 'master' into Sec_record_photo
Conflicts:
	code/modules/mob/living/silicon/silicon.dm
2015-01-21 21:26:46 +04:00
Lo6a4evskiy
a22d1ecfe2 Adds photos and species to security and medical records, plus some other tweaking 2015-01-21 21:21:47 +04:00
Lo6a4evskiy
bebee8ded9 First iteration 2015-01-14 16:08:53 +04:00
paprka
84a943d87c adds supply job list 2015-01-03 19:49:26 -08:00
paprka
73f5d8db9c fixes bugs 2014-12-23 12:07:32 -08:00
paprka
adc09ffe41 initial commit for bay ports 2014-12-17 23:42:09 -08:00
Remie Richards
be6c8c54d1 Reverts Antag selection happening before job selection 2014-10-09 22:57:19 +01:00
Robson Richards
e704c9738e Reworks Gamemode/Job interaction a bit 2014-08-20 18:25:53 +01:00
Rockdtben
1fcd5d3ad7 Converted Major and Minor Crimes into Lists. 2014-06-07 21:00:31 -05:00
Rockdtben
c83c126839 Medical Records too now. 2014-06-07 14:09:28 -05:00
Rockdtben
701b9be244 Changed title of security record paper.
Instead of the paper being named

paper - 'Security Record'

SR-[num] '[charactername]'

SR-1 'Persh Ullman'
For example

Also title within the record

Security Record

has been changed to

Security Record - (SR-1)

This makes identifying security records without having to rename them and also adds a better paper trail to security records.
2014-06-07 13:43:21 -05:00
YotaXP
35ba26b3ea Fixed coloring, overlays on overlays, and blood trails. 2014-02-18 16:54:22 -05:00
AndroidSFV
a36fdb8628 Moves some datacore code into datacore.dm from other .dm's 2013-09-12 22:55:53 -05:00
carnie
ffa9bb51cd Helper proc /proc/find_record(field, value, list/L)
It will search list/L for a /datum/data/record with fields[field] == value, and return it.

This removes a vast amount of copypasta (there's still so much left in there though). It also removes all the locate(\ref[record]) I could find, which were normal used with topic(), meaning it was susceptible to abuse.

Secbots, ed209s and turrets are now smarter with their record-checks. They now prefer to use our face-name rather than id-name. ICly, this is the bot using facial recognition. This fixes an issue where it'd try to use the name variable which could be in the format "Unknown (as their id name)" when they were disfigured, etc. causing record-lookup to fail.

Additionally, these bots will treat those without a valid record in the security database, to be treated like criminals.
2013-08-11 12:49:55 +01:00
carnie
02be173c60 Renamed variables:
b_type to blood_type
h_color to hair_color
f_color to facial_hair_color
f_style to facial_hair_style
h_style to hair_style
2013-08-01 13:48:41 +01:00
carnie
52e2efdb7f *Fixes the gaussian PRNG
*Fixes a minor mistake in num2hex
*Fixes a bad call to num2hex which was causing data_core records to all have an ID of "000000". Fixes #583
*Rebalances dna modification to match the PRNG fixes.
*Fixes cloning computer not copying b_type to data disks

DNA modifier features:
*Probability indicators for emitter settings
*Info on last pulse operation
*Cannot operate on dead subjects
*UE/UI/SE spaced out more

Modified   code/__HELPERS/maths.dm
Modified   code/__HELPERS/type2type.dm
Modified   code/__HELPERS/unsorted.dm
Modified   code/datums/datacore.dm
Modified   code/game/dna.dm
Modified   code/game/machinery/computer/cloning.dm
Modified   code/game/machinery/computer/security.dm
2013-05-23 12:05:04 +01:00
elly1989@rocketmail.com
e0b538ea77 Runtime fix: getFlatIcon() - Will no longer runtime should overlays contain any nulls. (Interesting note: I was intending to fix this to try speed up update_icons() even more but it turns out BYOND really dislikes overlays += null. the optimisation took twice as long o.O)
Removed unused caching code from getFlatIcon(). We handle our own caching using datacore.dm

Runtime fix: datacore wasn't checking the type of object in the wear_id inventory slot. I've removed that so it now uses mind.assigned_role instead.
The following runtime has occured 1 time(s).
runtime error: undefined variable /obj/item/device/pda/warden/var/assignment
proc name: manifest (/obj/effect/datacore/proc/manifest)
  source file: datacore.dm,14
  usr: null
  src: the datacore (/obj/effect/datacore)

Runtime fix: staff-of-change projectiles were runtiminng when transforming somebody with implants. Cause: forgot a "continue" >.<
The following runtime has occured 4 time(s).
runtime error: Cannot modify null.layer.
proc name: wabbajack (/obj/item/projectile/change/proc/wabbajack)
  source file: change.dm,37
  usr: 0
  src: the bolt of change (/obj/item/projectile/change)



git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4412 316c924e-a436-60f5-8080-3fe189b3f50e
2012-08-14 23:46:03 +00:00
petethegoat@gmail.com
517a0d8add Fixed issue 570.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4398 316c924e-a436-60f5-8080-3fe189b3f50e
2012-08-14 13:44:58 +00:00
elly1989@rocketmail.com
4c87332cc1 Resolves Issue 734
> A clown's medical, crew, and security records are updated with his newname. (read below for details)

> reject_bad_name() now checks for dumb names like "space","floor","wall","r-wall","monkey","unknown","inactive ai" (if you know any other important ones let me know)

> clname() [clown-name] and ainame() [AI name], procs which allow those players to rename themselves, were merged into /mob/proc/rename_self(var/role, var/allow_numbers=0)
This proc gives the mob 3 chances to name itself. It checks names using reject_bad_name() (the same thing that checks the round-start names). If it fails 3 times it will not change the name. If it succeeds it will call the proc in the next bullet point.

> /mob/proc/fully_replace_character_name(var/oldname,var/newname) will replace most references to a mob's oldname and replace it with newname. It updates name, real_name, mind.name, updates their id, updates their pda and updates all their data_core records (manifest records like medical, security, general, locked)

> data_core procs merged because they were massive and all identical.

> accidentally fixed an AI sound which accidentally played upon login. It conflicted with the "Welcome to the station crew" announcement. So I commented that out to try the 'new' fixed one. If people hate it I'll comment it back to how it was.

> naming a mob with the big name  at the top of viewvars will use fully_replace_character_name()

> Removed an uneccessary regenerate_icons() proc from every player which spawns. Should speed up spawns a smidge



git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4396 316c924e-a436-60f5-8080-3fe189b3f50e
2012-08-14 10:44:41 +00:00
sieve32@gmail.com
7bf6788082 -OPTIMIZATION TIME
-Almost every instance of 'for(mob in world)' has been killed. Because GODDAMN was it being run a bunch. Instead, a series of global lists have been made, and they are all handled auto-magically through New()'s, Del()'s, Login()'s, death()'s, etc...

Lists are as follows:
-mob_list : Contains all atom/mobs by ref
-player_list : Like mob_list, but only contains mobs with clients attached
-admin_list : Like player_list, but holds all mobs with clients attached and admin status
-living_mob_list : Contains all mobs that ARE alive, regardless of client status
-dead_mob_list : Contains all mobs that are dead, which comes down to corpses and ghosts
-cable_list : A list containing every obj/structure/cable in existence
Note: There is an object (/obj/item/debuglist) that you can use to check the contents of each of the lists except for cables (Since getting a message saying "a cable," x9001 isn't very helpful)

These lists have been tested as much as I could on my own, and have been mostly implemented. There are still places where they could be used, but for now it's important that the core is working. If this all checks out I would really like to implement it into the MC as well, simply so it doesn't check call Life() on every mob by checking for all the ones in world every damn tick.

Just testing locally I was able to notice improvements with certain aspects, like admin verbs being MUCH more responsive (They checked for every mob in the world every time they were clicked), many sources of needless lag were cut out (Like Adminwho and Who checking every single mob when clicked), and due to the cable_list powernet rebuilding is MUCH more efficient, because instead of checking for every cable in the world every time a powernet was broken (read: A cable was deleted), it runs though the pre-made list, and even with a singulo tearing all the way across the station, the powernet load was VERY small compared to pretty much everything else.

If you want to know how any of this works, check global_lists.dm, there I have it rigorously commented, and it should provide an understanding of what's going on.

Mob related in worlds before this commit: 1262
After: 4
I'm helping


git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4179 316c924e-a436-60f5-8080-3fe189b3f50e
2012-07-26 03:04:05 +00:00
baloh.matevz
2233548788 - Deleted ERP.dmi
- Moved some objects into /effect
- Removed the debugger object

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@3739 316c924e-a436-60f5-8080-3fe189b3f50e
2012-06-04 21:49:28 +00:00
mport2004@gmail.com
b5944308c7 Moved most of the computer defines into the proper code file.
Moved a few of the computers into their own files.
Security records now shows rank on the browse screen.


git-svn-id: http://tgstation13.googlecode.com/svn/trunk@2909 316c924e-a436-60f5-8080-3fe189b3f50e
2012-01-03 21:16:48 +00:00