Commit Graph

174 Commits

Author SHA1 Message Date
Razharas
5c66d5ba82 Merge pull request #6036 from Aranclanos/pipenetfix
Pipenet hotfix!
2014-11-25 03:12:11 +03:00
hornygranny
6d6835e22a Merge pull request #5910 from Razharas/PipeFix
Fixes qdel kidnapping pipes
2014-11-24 10:41:26 -08:00
hornygranny
cd9a8a5125 Merge pull request #5909 from Razharas/InputFix
Fix of atmos input exploit
2014-11-24 10:40:51 -08:00
Aranclanos
bc0de70e08 Fixes addMember() not adding the pipe brought in the argument if it had no other connections. 2014-11-23 21:17:39 -03:00
Razharas
ebeb3367c2 Merge pull request #5938 from hornygranny/piperuntimes
disposals fixes
2014-11-22 14:50:42 +03:00
Cheridan
1208c48af3 Merge pull request #5652 from Menshin/atmos_z_level_fix
Atmos z level fix + radio controller code sanitization
2014-11-18 17:05:14 -06:00
Razharas
e205c8f2f6 Merge pull request #5857 from paprka/lolnames
Fixes a bunch of capitalization inconsistencies, adds names to vendors
2014-11-18 03:46:26 +03:00
Hornygranny
967689e6dc fixes #5667 remove atmos pipe fix 2014-11-17 14:00:58 -08:00
Hornygranny
2374eb9720 fixes disposals flushing their stored construct
fixes an atmos runtime
fixes a disposal pipe runtime
2014-11-17 11:30:33 -08:00
Razharas
9a0f3f0c12 Fixes pipes and qdel
They dont disappear after multiple clicks anymore
They now show success message only once
Fix #5795
2014-11-16 05:47:30 +03:00
Razharas
2a20c6bcf3 Fix of atmos input exploit
What on tin
2014-11-16 05:18:22 +03:00
Menshin
d17103a2cc Removed an unused variable in valves.dm 2014-11-14 10:24:53 +01:00
Menshin
ec944abfc6 * limit atmos/fire alerts to the current z_level
* atmos/fire alerts are now linked to an object and not its area, as intended
* simplified and full pathed the radio frequency datum
* made radio objects properly clean on del/qdel, instead of letting the radio controller remove nulls at each post_signal()
2014-11-14 10:10:45 +01:00
Cheridan
24456bcc22 Merge branch 'PipenetRevamp' of https://github.com/Aranclanos/-tg-station into Aranclanos-PipenetRevamp
Conflicts:
	_maps/map_files/tgstation.2.1.3.dmm
	code/ATMOSPHERICS/atmospherics.dm
	code/ATMOSPHERICS/components/portables_connector.dm
2014-11-13 18:55:53 -06:00
paprka
fe94f9cab0 Fixes a bunch of capitalization inconsistencies, adds names to vendors 2014-11-12 15:37:21 -08:00
Cheridan
e49e4efe29 Merge pull request #5704 from phil235/TypoFix1
Fixes the ability to beat up a pAI.
2014-11-07 23:52:31 -06:00
phil235
20e90d1168 Fixes typos in message and icon. Fixes the ability to beat up a pAI. Adds a cooldown to attack_animal on mechs. 2014-11-05 14:45:47 +01:00
phil235
74f8a08522 Merge branch 'master' of https://github.com/tgstation/-tg-station into AttackAnimation
Conflicts:
	code/modules/mob/living/living.dm
2014-11-04 18:55:07 +01:00
Hornygranny
b7f0287469 fixes atmospherics not working 2014-11-04 01:10:18 -08:00
Cheridan
df13b0d840 Merge pull request #5591 from hornygranny/OOPgularity3
improved deconstruction, singularity stuff
2014-11-03 20:20:55 -06:00
Aranclanos
8aa5a137c5 Pipenet revamp
-Removed the pipenet network datum, now it will all be done with the pipeline datum
-All atmos pipes and machines will always have a pipeline datum
-Moved the valves to the binary subtype and the portable connectors to the unary subtype
-The pipe vents (who were barely used in three spots of the map) are removed, the map slots will replaced with outlets
-Fixes some bugs of pipenet disconnection, mostly on explosions
-Cleaned a bit the copypaste of construction.dm of pipes
-Removed the ID restrictions of digital valves and the frequency (both unused)
2014-11-03 08:21:31 -03:00
phil235
8b49caa5ee Fixes typos and show messages. Fixes attack animation code. 2014-11-03 01:06:02 +01:00
tkdrg
a97c4de972 Moves m_amt, g_amt, reliability and origin_tech to /obj/item (previously in /obj)
Removes force from pipes
Removes unused turf var icon_old
Moves pass_flags to /atom/movable
2014-11-02 14:10:03 -03:00
Hornygranny
955847de74 defines 2014-10-31 19:00:50 -07:00
Hornygranny
5815d7e011 grilles are now damaged by thrown items
disposalpipes deconstruction
atmos pipes deconstruction
2014-10-31 18:26:42 -07:00
hornygranny
7d02690a94 Merge pull request #5383 from Donkie/atmostankfixes
Fixed tank icons. Fixes #5374
2014-10-22 10:50:16 -07:00
Daniel
9a9f6c0a75 Fixed #5390 2014-10-21 18:34:28 +02:00
Daniel
1ebf27f0b5 Fixes #5374 2014-10-20 13:40:25 +02:00
Daniel
fd3287f688 Fixed tanks 2014-10-20 13:37:25 +02:00
Daniel
04f4431642 Updated maps and fixed runtime 2014-10-16 16:42:32 +02:00
Aranclanos
9077c173d1 Merge pull request #4759 from Donkie/pipes2
Major Pipe Upgrade Hashtag 2
2014-10-15 11:36:25 -03:00
Daniel
7eb4674003 Fixed dualport vents 2014-10-14 15:17:07 +02:00
MrPerson
651c3e6db5 Merge to master - sole conflicting file was ninja.dm FUCK NINJAS 2014-10-04 01:45:39 -07:00
Daniel
3ea3462e6e Squashed up 2014-09-30 23:50:51 +02:00
phil235
3248e23887 Merge branch 'master' of https://github.com/tgstation/-tg-station into AudibleMsgFix
Conflicts:
	code/modules/recycling/disposal.dm
2014-09-25 18:45:53 +02:00
Aranclanos
f1661b8ebf Fixes the multiplication of air contents inside of the pipes when disconnecting and reconnecting sections.
Removes the unused pipenet datum proc removeLastMember() and replaced it with a pipe machinery proc, releaseAirToTurf(). This will release some gas contents to the turf properly when the pipe is removed.
2014-09-16 09:32:37 -03:00
phil235
cd0590c355 Replacing two audible_message() by say().
Fixing two small mistakes.
2014-09-14 16:36:06 +02:00
phil235
87d7c9e91e Create the audible_message() proc to replace most instance of " for(var/mob/M in hearers(...) show_message(..., 2)"
fixing typos and missing emotes in emote lists.
2014-09-14 01:15:15 +02:00
Cheridan
866dbb7959 Merge pull request #4634 from Carn/timSort
TimSort for byond
2014-09-07 19:52:02 -05:00
Cheridan
0d1b47eaec Merge pull request #4627 from Aranclanos/pipenetsandpipestwo
Pipes and pipenets
2014-09-07 19:12:16 -05:00
Alex
8f81a0e766 Merge pull request #4709 from Lo6a4evskiy/2014-08-15-Welding-stuff
Removed unnecessary messages when welding
2014-09-07 15:08:01 +01:00
ikarrus
93d7aa68c2 Consistent welding sounds
Starting a weld job will always play welder.ogg
Finishing a weld job will always play welder2.ogg

Closets and airlocks were backwards.
2014-09-06 10:06:17 -06:00
Lo6a4evskiy
82f869c9a6 Updated to resolve conflicts 2014-09-06 13:34:43 +04:00
Aranclanos
aa4ebacbf1 Adds some dots to the end of three sentences related to messages given to the user by pipes. 2014-09-02 20:31:09 -03:00
Aranclanos
8cb30cf950 Adds back the span class tags that I removed on previous commits while updating the branch. 2014-09-02 20:26:33 -03:00
Aranclanos
86387a2218 Updated heat pipes, red pipes, manifolds and normal pipes icons to show completely disconnected pipes.
Allows the heat exchanging pipe to be wrenched without having anything to connect it to.
2014-09-02 20:13:01 -03:00
Aranclanos
646e8d0b83 added a new proc for atmos machinery, nullifyPipenetwork(). As their name says, it will nullify the references of a pipenet network datum.
Added qdel for pipenet network datums, this removes most of the singularity lag.
Makes datums work on the garbage collector.
2014-09-02 19:22:27 -03:00
carnie
05b76b123e TimSort for byond:
RESULTS:
sorting 10 random lists of length 3 to 303 in increments of 3
(Meh, I forgot to refresh this one, there were only 338 trials rather than 1010, can't be bothered to recode the test)
                                    Profile results (total time)
Proc Name                                             Self CPU    Total CPU    Real Time        Calls
-------------------------------------------------    ---------    ---------    ---------    ---------
/proc/sortList                                           0.672       16.141       16.243       171226  <--TG's current mergesort(recursive, hence the higher number of calls)
/proc/sortTim                                            0.008        3.278        3.274          338  <--TimSort
/proc/sortMerge                                          0.011        2.839        2.855          338  <--new mergesort
/proc/sortInsert                                         0.010        2.124        2.103          338  <--binary insertion

Sorting 10 presorted lists with 3 inversions (3 elements shuffled up), Lists of length 3 to 303 (increments of 3)
                                    Profile results (total time)
Proc Name                                             Self CPU    Total CPU    Real Time        Calls
-------------------------------------------------    ---------    ---------    ---------    ---------
/proc/sortList                                           1.290       23.056       23.254       308050	<--rather cataclysmic
/proc/sortMerge                                          0.015        4.077        4.068         1010	<--
/proc/sortInsert                                         2.639        3.472        3.464         1010	<--
/proc/sortTim                                            0.014        1.567        1.576         1010	<--TimSort is faaar more effective in these cases,
Timsort can exploit runs effectively

sorting 10 presorted lists which have been reversed
                                    Profile results (total time)
Proc Name                                             Self CPU    Total CPU    Real Time        Calls
-------------------------------------------------    ---------    ---------    ---------    ---------
/proc/sortList                                           1.234       23.193       23.295       308050
/proc/sortMerge                                          0.023        4.681        4.686         1010
/proc/sortInsert                                         2.875        3.750        3.765         1010
/proc/sortTim                                            0.020        3.294        3.284         1010	//This can be lower by using a different comparison method
 *Corrected: /proc/sortTim                                0.017        0.665        0.663         1010	//Using a non-strictly ascending comparison

sorting 10 presorted lists
                                    Profile results (total time)
Proc Name                                             Self CPU    Total CPU    Real Time        Calls
-------------------------------------------------    ---------    ---------    ---------    ---------
/proc/sortList                                           1.199       21.391       21.517       308050
/proc/sortMerge                                          0.018        3.724        3.729         1010
/proc/sortInsert                                         2.497        3.302        3.309         1010
/proc/sortTim                                            0.024        0.586        0.584         1010

Summary, all the new procs are faster than the old ones. TimSort is ever so slightly slower than Insertion and Merging on random lists. But on lists with natural runs (partially sorted data) it is far faster than all others.

The old merge sort was removed and replaced with timSort. Other algorithms are provided as alternatives.

All algorithms use a central datum, so accept many of the same parameters. For instance, setting associative=1 will make them sort associative lists by their associated values, rather than keys.
They also accept a cmp argument. This allows sorting of lists of datums, text, numbers or whatever. The pre-existing helpers in lists.dm were rewritten as examples.
2014-09-01 11:29:49 +01:00
Aranclanos
2514c2a63d Fixes manifold pipe initialization, they would place the same connection on several nodes.
Fixes the qdel() of pipes, scrubbers, vents and others atmos related machines.
Adds an error message when a pipe is in at least two pipenets.
Adds a new proc to add pipes to a pipenet datum, addMember().
Stops the mass creation of pipenet datums that would not be used.
Makes pipenet datums more stable, a pipe will be a member of only one pipenet datum.
Removes a lot of initialization() and build_network() calls around pipe code.
Pipes can now be wrenched without the need of a connector next to them.
2014-08-31 20:22:59 -03:00
MrPerson
a23dbe2357 Merge branch 'master' of https://github.com/tgstation/-tg-station into examinate_the_doctor
Conflicts:
	code/game/objects/items/devices/radio/radio.dm
	code/game/objects/items/toys.dm
	code/game/objects/items/weapons/tanks/tank_types.dm
	code/game/objects/items/weapons/tanks/tanks.dm
	code/modules/events/ninja.dm
	code/modules/power/cell.dm
	code/modules/power/port_gen.dm
	code/modules/reagents/reagent_dispenser.dm
2014-08-29 04:21:15 -07:00