Commit Graph

106 Commits

Author SHA1 Message Date
Bjorn Neergaard
34b717afb4 radio_controller -> SSradio, SSbp -> SSnpc 2015-12-04 22:25:24 -06:00
Ikarrus
d1d693b4bb Announcements made by AIs have their name attached
For example, it will use LIES Announces: of the generic "Attention" header.
2015-11-10 09:24:15 -07:00
Kyle Spier-Swenson
1601c60628 Fixes text gurbling in comsconsole priority announcement
I don't want to have to find everything that uses priority_announce() and make it strip the input at the source, this seems like a better way.
2015-09-09 08:30:18 -07:00
duncathan
51c09f16bf makes all Destroy()'s return properly 2015-08-31 00:21:01 -06:00
Firecage
4688c2c969 Fixes proc arguments 2015-07-15 23:52:35 +02:00
phil235
76ff6747d7 Merge pull request #9936 from Ikarrus/usecommsoncentcom
You can use the communications console on Z2
2015-06-17 13:58:34 +02:00
Ikarrus
6bafd88ced ZLEVEL_CENTCOM 2015-06-13 10:39:01 -06:00
Ikarrus
e1c99bc27a You can use the communications console on Z2
Mostly so Captains can continue to make announcements.
2015-06-13 10:33:05 -06:00
Jordie0608
5ef93b2225 overlays for computers 2015-06-13 20:07:48 +10:00
kingofkosmos
e371dd9f35 more spans 2015-04-24 20:52:00 +03:00
phil235
29609457f5 Makes the message when you're attacked slightly bigger for better visibility."
Changes two "for... show_message()" into "visible_message()".
2015-03-12 23:15:54 +01:00
Remie Richards
5fc7af7fbf attackby() now has an argument containing the parameters of the click that called it. Items placed on tables now center their icon where the user clicked. this is NOT true for racks, since racks look organised in their sprite.
Items reset their pixel_x and pixel_y values on pickup.
2015-02-19 13:02:43 +00:00
oranges
bae27bc40b Allow station self destruct with captains identity card 2015-02-15 12:09:09 +13:00
phil235
a55e6a70be Fixes malf AI lockdown affecting doors on z levels other than station and mining.
Replaces a lot of z level numbers in code by their respective defines.
Adding a define for the Mining asteroid z level.
2015-01-11 15:39:32 +01:00
carnie
a029a49392 SubSystem rewrite
Misc:

+Fixes unreported issue with initializing lighting on a specific zlevel

+Fixes two similar issues with moveElement and moveRange. Where fromIndex or toIndex could be adjusted incorrectly in certain conditions. Potentially causing bad-sorts, or out of bound errors.

+Rewrites listclearnulls(list/L) to no longer iterate through L.len elements for every null in the list (plus 1). i.e. went from L.len*(number_of_nulls+1) list-element reads (best-case), to L.len list-element reads (worst-case)

+New proc/getElementByVar(list/L, varname, value) which finds the first datum in a list, with a variable named varname, which equals value. You can also feed it atoms instead of lists due to the way the in operator functions.

+Fixes an unreported issue with Yota's list2text rewrite. Under certain conditions, the first element would not be converted into a string. Causing type-mismatch runtimes.

+New global map_ready variable. This is not fully implemented yet, but will be used to avoid duplicate calls to initialize() for map objects.

+All turfs now maintain references to all lights currently illuminating them. This will mean higher memory use unfortunately, due to the huge number of turfs. However, it will speed up updateAffectingLights significantly. I've used list husbandry to reduce baseline memory usage, so it shouldn't be any worse than some past atmos modifications memory-wise.

-Removed 'quadratic lighting', can add this back at some point. Sorry.

+modified the way lum() works slightly, to allow turfs to have overridden delta-lumen. i.e. space cannot be illuminated more than its default ambiance. This allowed removal of some iffy special-snowflake lighting areas implemented by somebody else.

+Lighting images in the dmi can now use arbitrary naming schemes. It is reliant on order now. This allows the dmi to be replaced by simply dropping in a new dmi.

-Removed all subtypes of /area/shuttle. Shuttles now create duplicate 'rooms' of /area/shuttle. (More on this later). This will conflict with most maps. Guide on how to fix to follow.

+All verbs/tools relating to world.tick_lag were refactored to use world.fps. However old config text for setting tick_lag will still work (it converts the value to fps for you)

+MC stats improved using smoothing. They now have their own tab so they dont get in the way when you're playing as an admin.

-removed the push_mob_back stuff due to conflicting changes. Sorry Giacom.

_OK, NOW THE ACTUAL INTERESTING STUFF_

Following systems moved over to subsystem datums:
air_master
garbage_manager
lighting_controller
process_mobs (aka Life())
nanomanager
power
sun
pipenets
AFK kick loops
shuttle_controller (aka emergency shuttle/pods), supply_shuttle and other shuttles
voting
bots
radio
diseases
events
jobs
objects
ticker

Subsystems hooks and variables should be commented fairly in-depth. If anything isn't particularly clear, please make an issue.

Many system-specific global variables have been refactored into

All tickers which previously used world.timeofday now use world.time

some subsystems can iterate before round start. this resolves the issue with votes not working pregame
2014-12-31 13:25:41 +00:00
Hornygranny
af3f1aa4d8 Merge remote-tracking branch 'remotes/upstream/master' into emagrefactor
Conflicts:
	code/game/machinery/deployable.dm
	code/game/objects/items/weapons/storage/lockbox.dm
	code/game/objects/structures/crates_lockers/closets/secure/secure_closets.dm
	code/modules/clothing/glasses/hud.dm
	code/modules/mob/living/silicon/robot/robot.dm
2014-12-09 16:03:45 -08:00
Razharas
c234e2c9c8 Fix of comms console culldown and computer rework
Now computers store actual circuit instead of creating new one and
trying to pass all vars of old one to new one
Also fixes #243
2014-11-26 19:32:18 +03:00
Hornygranny
678a13c451 moves emag effects from attackby() into atom proc emag_act() 2014-11-20 17:49:06 -08:00
Menshin
26f70fd9aa * Completed the _strip_html_properly_ proc to also limit the length of the text
* Removed uses of _strip_html_simple_
* Replaced input or redondant trimming/text_copying with the new unified _stripped_input_
2014-10-15 16:00:22 +02:00
phil235
537280b4b9 Removing many instances of the no longer used second argument of message_admins() proc.
Replacing "for(var/mob/M in viewers()) M.show_message()" by "visible_message()" or audible_message()" in many places.
Changing a few span classes.
2014-10-05 01:29:30 +02:00
ikarrus
7c32420497 Resolved conflicts and added my yml changelog file 2014-09-19 09:30:59 -06:00
ikarrus
9b8322c19d Shuttle Call/Recall Tracing in Announcements
- Emergency  shuttle call/recall announcements will say when a tracing attempt has been successful, as well as explicitly telling players how to view them
- Clarified language further on how emergency shuttle tracing is done
- Increased tracing success rate from 60% to 70%
- Removed a lot of duplicated code by moving all the priority_announce() calls to incall()
2014-09-13 12:50:38 -06:00
ikarrus
51a333ebe7 Merge gang mode into latest version 2014-08-30 23:31:44 -06:00
ikarrus
4c801434a8 Gang Mode 2014-08-30 23:17:14 -06:00
Cheridan
96cf5cdedd Merge pull request #4574 from Ikarrus/commscooldown
Console Cooldown Tweaks
2014-08-27 10:16:00 -05:00
ikarrus
9cd7234fbf -Reverted AI announcement cooldown change
-AI announcements are now minor announcements
2014-08-26 10:33:47 -06:00
Firecage
6c7af5eb32 SPANCLASSES!!!!! 2014-08-26 09:52:13 +02:00
ikarrus
98cf2559c3 Console Cooldown Tweaks
-Cooldown for sending messages to centcom reduced to a minute. Often times conversations between the messenger and centcom are cut short by the very long cooldown time.
-Cooldown for AI priority announcements increased to 5 minutes. The fear I had when I implemented it was AIs misusing it by announcing pointless things for what should be reserved for actual important things.
-Ferry move request cooldown increased to a minute. Stop spamming us admins please.
2014-08-25 21:12:00 -06:00
ikarrus
e06da13430 Comms console outside of Z1 will not longer receive command reports 2014-08-17 13:37:29 -06:00
ikarrus
49b7ca2605 Updated the message on comms consoles 2014-06-14 16:51:45 -06:00
Giacomand
950835555c Fixed the "shuttle refueling, x minutes remaining" being incorrect. 2014-06-05 20:00:26 +01:00
ikarrus
5ee453901a Added a canUseTopic() 2014-05-14 20:50:46 -06:00
ikarrus
96f489800b Added a make_announcement proc to reduce duplicated code 2014-05-14 08:55:12 -06:00
ikarrus
72c2c9e016 -Merged centcom and announcements news channel into a single "Station Announcements" channel
-RC Announcements now produce news stories, too
-The AI may now make priority announcements via communications console that emulates the automated messages
2014-05-08 21:22:45 -06:00
ikarrus
8604417dea Fixed non-captains not registering their ID to the Comms console 2014-05-06 08:57:27 -06:00
ikarrus
a48ba0d256 Priority Announcement Changes
-Centcom announcement proc merged with generic priority announcement proc
-Re-added the Captain Announces accompanied by a new pleasant sound, instead of the generic priority announcement
-Captain Announcements will automatically generate a newscaster article
-Priority announcements without any defined accompanying sound will play a generic "Attention" soundbyte as an audio cue
-Communications consoles will display who is currently logged in
2014-05-05 22:18:57 -06:00
Giacomand
4deef8fb4e The AI can now properly call the shuttle, their call shuttle verb now requires a reason.
The interface uses a link instead of a form button.
2014-04-25 14:37:44 +01:00
Giacomand
4bce5c442f You now have to give a reason for shuttle calls, from the communication console. The reason must be over 12 characters.
You can open the communication console UI by using your ID card.
Added a config option for the shuttle refuel delay, defaults to 20 minutes.
Fixed a bug where the refuel delay was counting the pre-game lobby time.
2014-04-21 00:10:47 +01:00
ikarrus
2abcea32fd Emergency Shuttle Signal Tracing
Intended to cut down on shuttle ping-ponging caused by stealth comms consoles.

-After the second recall, centcom will attempt to trace the origin of emergency shuttle calls and recalls
-The results can be viewed on any authenticated communications console.
-Tracing has a 40% failure chance to further reduce the risk of metagaming the game mode
2014-04-05 01:57:39 -06:00
MrPerson
6930283efc Merge branch 'master' of https://github.com/tgstation/-tg-station into qdel_r
Conflicts:
	code/game/gamemodes/changeling/changeling_mutations.dm
	code/game/gamemodes/changeling/changeling_powers.dm
	code/game/gamemodes/malfunction/Malf_Modules.dm
	code/game/objects/items/weapons/tanks/watertank.dm
	code/game/objects/structures/tables_racks.dm
	code/modules/research/server.dm
2014-03-21 03:05:39 -07:00
Rockdtben
a034e41f25 Removing TLE comment stamps and useless comments 2014-03-13 08:25:28 -05:00
MrPerson
9eee3e5067 First pass at a qdel() garbage collection system for tgstation
Works pretty well. If it can't GC something, it'll just del() it and be done.
Speed is amazing, holy shit.

New procs you should be aware of:
qdel(atom/movable) - sets up an object for garbage collection. Call this rather than del(atom/movable).
atom/movable/Destroy() - called right before the object is GC'd, so it still has a loc. Also called if the object is del()'d.
new controller - garbage.dm has all the details on this. Basically it nulls all references on GC'd objects and force del() them if necessary.
Generally speaking, objects should use Destroy() for behavior prior to deletion rather than Del(). You should also always call the parent so the object gets the right gc_destroyed var set.

ISSUES:
Tries to GC mobs atm. This actually works for new players, not so much for humans/monkies/simple_animals/anything. I'm guessing it needs to clear out their mind and HUD and maybe other things.
Gibbing is really bugged. It works, but the overlays just sit there for awhile and ugh. I'm very tempted just to del() mob/living and mob/camera and call it a day.
qdel() equipment doesn't unequip the item.
Pipes don't generally GC correctly. Debugging suggests they get referenced in many pipenets and that isn't cleared properly. However some do work fine. Need assistance here.
Bots don't GC, probably in the radio controller.
Lots of other shit doesn't GC but it's hard to find them because of the pipe spam.
I think I'm calling Destroy() twice by accident.
2014-02-23 14:55:12 -08:00
Giacomand
ceec829294 Tons of typo fixes and renames Centcomm to Centcom. Manual merge of #1950. 2013-12-13 21:14:23 +00:00
Kyrah Abattoir
422f11900e code/game/machinery/computer/* lowercase pass 2013-11-18 18:54:40 +01:00
Cheridan
6080088664 Merge pull request #1587 from Ikarrus/emergency
Comms Console Update/Emergency Maint Access [MAP]
2013-10-21 12:08:38 -07:00
Giacomand
646d7596f2 * Made the emergency shuttle code use the defined times.
* Added a SHUTTLEAUTOCALLTIMER define for the auto call.
2013-10-16 08:30:25 +01:00
ikarrus
cb9b3cf375 Communications Console Update
-Added emergency maint access function to comms console. Removes access restrictions on maintenance and external airlocks. Can be toggled on and off. Captain-level access required.
-Minor modifications to map /area/s to make this work
-Updated Comms console interface (https://www.dropbox.com/s/zy33829tcqby9hd/comm.png)
-Message List is now restricted to Command Staff. (Classified transmissions go here!)
-AI can now control alert levels and emergency access via comms console
2013-10-15 22:42:20 -06:00
KazeEspada
38d7374bc2 Makes circuits into type paths. Dna modifiers had a bad string that showed up when converted into a type path. Power monitors are now actually computers. Makes smashing computers red. 2013-09-21 14:41:50 -07:00
KazeEspada
cbb041637b Merge branch 'master' of https://github.com/tgstation/-tg-station into computers 2013-09-17 16:43:19 -07:00
KazeEspada
630a691c6d Cleans up computer code severely. fixes issue #1004. Aliens and Monkeys can now smash computers. However, this only applies to computers with buildable circuit boards. Computers without boards are now impervious to attack and deconstruction(can't steal atmos computers or slash up the escape shuttle computer).
Hologram computer has been moved to unused. It has some interesting ideas, but it needs sprites and fix up.
2013-09-17 13:22:39 -07:00