Commit Graph

1417 Commits

Author SHA1 Message Date
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
dannno c48bf44a47 framework for a future "suicide hotline" job 2015-02-01 19:44:54 -05: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
Menshin b11c6fad76 * Added a wrapper proc for A* that returns an empty list when failing to find a path
* Fixed runtimes for A* failing bots
2014-11-14 00:09:02 +01:00
paprka 0ffba02112 Merge branch 'master' of https://github.com/tgstation/-tg-station into glasstables
Conflicts:
	_maps/map_files/MetaStation.v39K.dmm
	_maps/map_files/tgstation.2.1.3.dmm
	code/game/objects/structures/tables_racks.dm
2014-11-09 14:53:19 -08:00
GunHog dd7bfbff59 Adds a sound for the RPED!
When used to exchange or install parts, the RPED will play a cool
machiney sound! Sound by Cuboos.
2014-11-08 23:49:04 -06:00
GunHog 3d6f946bcf Merge remote-tracking branch 'remotes/upstream/master' into Rapid_Part_Exchange_And_Installation_Device
Conflicts:
	code/defines/obj/weapon.dm
2014-11-08 19:16:49 -06:00
GunHog e859375d3e RPED Installation Complete Fix + Circuit changes
- The RPED now sorts its parts when installing new equipment - It will
always use the best parts contained within.
- Made all the req_component lists of circuitboards actual paths instead
of pure text. Hopefully I fixed everything that broke when I did that.
2014-11-08 19:11:04 -06:00
Aranclanos d56698f991 Exosuit fabricator revamp
Exosuits will now use the designs from RnD to create objects instead of having the object already created on their contents.
Each one of the default items to build are now designs.
Removed access required to use the exosuit fabricators.
Removed an unused mech syringe gun design and replaced with a new one, with no cost.
Added a temporal object, /obj/item/mechavars, to be able to use initalize() for the construction time. This will be later on removed and the construction time will be ported to the design datums.
Some minors issues are still present, due to the amount of files needed to fix these, it won't be part of this commit, but a future one.
Fixes issue #3893
Removed required access to access the setting controls of the RnD console.
2014-11-06 23:45:16 -03:00
paprka 85de5f7cd5 initial commit for table overhaul 2014-11-01 23:57:01 -07:00
GunHog e5b868fb27 RPED Expansion
Ports https://github.com/NTStation/NTstation13/pull/982 from NT.

Summary of changes:
- The Rapid Part Exchange Device (RPED) can now install stored parts
into unfinished machines! Once you have installed a circuit board to the
frame, use the RPED to add any required parts contained inside, then
finish with a screwdriver!
- Identical parts in the RPED are now shown in groups, just like a
mining satchel.
- RPED storage capacity increased. It can now contain up to 50 parts,
fewer if power cells are added as well.  Maximum weight class of 100
(parts except power cells are class 2).
<b>The storage values are up for discussion. I chose the original values
based on the mining satchel.<\b>

Unrelated:
- The admin-only debug research item now includes plasma and engineering
tech.
2014-10-31 10:30:43 -05:00
Remie Richards b54ed5b4e5 Merge pull request #5137 from paprka/holosignoff
Adds holographic janitor signs
2014-10-10 17:41:41 +01:00
paprka 5457503c67 adds holographic janitor signs 2014-10-08 13:48:44 -07:00
paprka d61e4ac943 big commit, handcuff overhaul 2014-10-08 13:19:54 -07:00
Remie Richards cc85f44ccb Merge pull request #4900 from MrStonedOne/erroageinjudgement
Fixes some "erros" in the database system
2014-09-26 23:41:37 +01:00
ikarrus 462ce9c877 New sound for more distressing minor announcements
- Plays every time the alert level rises, or emergency access is enabled
- Delayed the start of Intercept.ogg a bit so it doesn't overlap with the alert level sound
2014-09-21 22:33:08 -06:00
MrStonedOne e21ed011af Fixes some erros in the database system
Replaces erro_ with a configurable table prefix system
Defaults to erro_ if not configured, but configuation files default to SS13_
2014-09-19 13:37:58 -07:00
Perakp 3f451f9b1b Warning cones can be worn on your head, with original codersprites. 2014-09-19 22:44:59 +03:00
ikarrus 668db29868 Added some <BR>s to Minor Announcements
- Makes them look nicer with the title on it's own line
- Makes them a bit more noticeable
2014-09-05 20:58:43 -06:00
ikarrus 55799b2ced Resolved Conflicts:
code/defines/procs/priority_announce.dm
2014-08-18 19:44:15 -06:00
Alex 67550ba81e Merge pull request #4472 from Ikarrus/blobreports
Command Reports
2014-08-18 08:03:31 +01:00
ikarrus e06da13430 Comms console outside of Z1 will not longer receive command reports 2014-08-17 13:37:29 -06:00
ikarrus 0de9402a18 Made receiving and printing centcom reports a proc
Also changed a few "Cent. Com." strings to "Centcom"
2014-08-17 13:03:11 -06:00
Firecage 1829e70077 Absolute paths for files in the defines folder 2014-08-16 14:00:45 +02:00
ikarrus c642c7bb74 Minor Announcement format expanded to include Alert Level changes and Emergency Declarations 2014-08-14 20:44:18 -06:00
ikarrus c80f22bf52 Added a sound.
Changed Captain's arrival announcement type to General
2014-08-14 08:52:54 -06:00
ikarrus f4cfd04485 Minor Announcements
Head of Staff announcements (ie the ones made via request consoles) are now "Minor Announcements". While head announcements are unchanged, other in-game notifications have been expanded to use their format, including when the Captain joins the game, and early shuttly launch notifications.

They're basically meant to be big and noticable, but not as annoying and spammy as Priority Announcements.

I wanted to include a sound for them, but I've been unable to find one I was satisfied with.
2014-08-14 00:03:43 -06:00
KyrahAbattoir fcb2fb9de3 Another lowercasing pass on a bunch of items and furnitures.
Synthflesh should be a plural.
Leg cuffs is better than legcuffs.
LaserTag -> laser tag is not a brand name.
centcom -> Centcom is always capitalised.
2014-07-27 19:14:40 +02:00
Menshin cd4a32309c Refined the implementation of the AStar algorithm :
*Reorganised and commented used procs for better visibility/maintenance
*Redid the PriorityQueue class
*Changed the euclidian distance to the byond one (so that we don't calculate float and square root when it's not necessary)
*Made the AStar algorithm use the closed list instead of just filling it
*Some optimization in the open list sorting : last entered is first in case of f ties, slightly less tiles are checked now
*Changes the order directions are checked when adding adjacents turfs to make for more 'realistic' path (read less 'drunk pathing' with lots of diagonals)
*Fixed some turfs densities not being check for diagonal movement
*Closed firedoors are now correctly seens as blocked by the algorithm
*Cleanbots now only moves in cardinal directions, like other bots.
*Updated the info text at the beginning of the file a bit
*Absolutely unrelated : simplified the turf.Bless() proc
2014-07-12 21:58:32 +02:00
Cheridan b02b93ce2a Notifications + Random Stuff
Adds sound notifications for Ninja and Wizard Apprentice spawning -- hopefully means fewer afk antags.

Adds a ghostnotice span class, used in the new notify_ghosts proc. Upon creation, things that require ghostly attention (NarSie, golem runes) give more visible messages to the dead.

Retires the 'moderate' span class, which was only used in tomato throwing? Refactors tomato code (this ended up being the meat of this PR, somehow...)

Reorganizes some item definition/procs.
2014-07-01 23:16:02 -05:00
ikarrus 4905beb67e Removes hacky code in favour of a process() check for the nuke disk's location
Instead of having a lot of hacky checks to prevent the disk from leaving the Z-level, it will be checked periodically by process() if Z > 2
2014-05-30 22:01:20 -06:00
Miauw62 cc7760c628 Merge pull request #3750 from hornygranny/tablethisfornow
fixes #3746 fixes #3706
2014-05-28 18:58:11 +02:00
Hornygranny af2e792036 2oop4u 2014-05-27 12:07:53 -07:00
Hornygranny 6b7d3f49a9 muh OOP 2014-05-27 10:40:15 -07:00
Miauw62 5b97955d90 Merge pull request #3719 from Perakp/astar
Fixes stinging from range pathfinding
2014-05-24 19:49:05 +02:00
ikarrus 7ccb0121e3 Swapped the order of subtitle and header of priority announcements 2014-05-18 11:36:02 -06:00
Perakp d1aade90f0 - Fixes Astar being stupid with maxnodes
- Diagonal movement now costs whatever sqrt(2) rounds to.
- Fixes #3665
2014-05-16 23:46:52 +03:00
ikarrus 5ee453901a Added a canUseTopic() 2014-05-14 20:50:46 -06:00
ikarrus 56d5412e50 Merge branch 'master' of https://github.com/tgstation/-tg-station into announcements 2014-05-14 08:34:49 -06:00
Alex 3c2bff9fbc Merge pull request #3521 from phil235/BeartrapIconFix
Beartrap  fixes
2014-05-14 10:46:55 +01:00
Jordie0608 4078973a5c Unidentinization 2014-05-13 02:18:21 +10:00
Jordie0608 dfd2cc4b60 Changed suicide messages to visible_messages and fixed relative pathing 2014-05-13 01:44:29 +10: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
phil235 7f37c303e2 fix 2014-05-06 23:24:16 +02:00
phil235 1457506878 simplifying 2014-05-06 23:10:22 +02: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
phil235 0a163bcc43 target as mob -> mob/living/target 2014-05-03 17:01:16 +02:00
phil235 f3b6de4b61 fix missing 'proc' 2014-04-26 00:40:46 +02:00
phil235 ff4b6cd9e1 trying to reduce duplicate code. 2014-04-26 00:33:39 +02:00