Commit Graph

38 Commits

Author SHA1 Message Date
Tkdrg
20fe2e4bb5 Removes PDA chatrooms
Nobody used them, and they were cluttering PDA Topic() needlessly.
Rest in peace, my child. You were too good for this world.
2015-11-07 23:51:48 -03:00
Shadowlight213
71f9bbbfe5 Fixes to fixes 2015-11-02 21:26:46 -08:00
Shadowlight213
2805d4becb Fixes runtimes in Dna console, message monitor, and igniter 2015-11-01 23:19:23 -08:00
phil235
d3ee910211 Makes effect system code more OOP.
obj/effect/effect is now renamed obj/effect/particle_effect for better usability.
datum/effect/system and /datum/effect/effect/system are now both /datum/effect_system.
Fixes a bug where wall mounted igniters (and other spark producing objects) didn't produce sparks sometimes.
Moved explosion_particles.dm into the effect_system folder, because it has effect_systems code.
2015-10-21 23:28:29 +02:00
Firecage
4688c2c969 Fixes proc arguments 2015-07-15 23:52:35 +02:00
phil235
98c158f958 Merge pull request #9845 from AnturK/buttsender
Adds PDA-Message Photo Attachment
2015-06-17 20:36:52 +02:00
Jordie0608
5ef93b2225 overlays for computers 2015-06-13 20:07:48 +10:00
AnturK
46a4d6fe8f Adds PDA-Message Photo Attachment 2015-06-08 17:40:24 +02:00
Jordie0608
edfd3b8bef fixes message monitor unable to decon when broken and unneeded emag var 2015-05-09 23:53:06 +10: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
phil235
884e2a6f73 Fixes some runtimes from audible_message proc. Fixes silent PDAs calling audible message when receiving a message. 2015-01-14 18:00:17 +01:00
tkdrg
b852aa41ea Replaces a bunch of input() with stripped_input()
Some of these were exploitable for XSS, as well.
2015-01-11 19:02:53 -03:00
Hornygranny
678a13c451 moves emag effects from attackby() into atom proc emag_act() 2014-11-20 17:49:06 -08:00
tkdrg
3a862deb6b Adds chatroom logging (both admin and IC). 2014-10-29 01:20:53 -03:00
phil235
7afbd3345b Replacing some hearers(...) with get_hearers_in_view(...).
Renaming Make Sound to Object Say.
Switching deaf_message in audible_message proc to last argument.
Replacing some "for(mob in hearers)+show_message" with audible_message()
2014-09-25 18:22:27 +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
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
Cluwnes Honk
c710b19154 Adds ckey logging to PDA message sending
Allows admins to see the ckey of those who send messages.
2013-12-29 15:26:11 -08:00
Kyrah Abattoir
422f11900e code/game/machinery/computer/* lowercase pass 2013-11-18 18:54:40 +01: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
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
carnie
b84d12d949 *Small tidy-up of various helper procs*
-Turns out there was already a Gaussian PRNG proc already, used by mechs and turrets. I've replaced it with my one as mine has almost half the cost. (currently broken! still waiting for fixes to be pulled!)
-replaced between(min, val, max) with Clamp(val, min, max)
-get_turf(thing) now uses var/list/locs to locate its turf, rather than iterating up through loc of its loc of its loc...etc
-sign(num) moved to maths.dm
-InRange(val, min, max) replaced with IsInRange(val, min, max) (they were identical)
-Removed ismultitool() iswrench() iscoil() iswire() iswelder() iscrowbar() etc
-removed modulus(num) as abs() performs the same task! *roll-eyes*
-removed get_mob_with_client_list() as it is no longer needed (we have var/list/player_list now)
-removed get_turf_or_move() as it simply called get_turf
-removed get_turf_loc() as it was identical to get_turf()

*Additions:*
-The "Declare Ready" link in the lobby will automatically become "Join Game" if the round starts before you declare ready, so you don't have to click it twice
2013-05-27 12:21:43 +01:00
MrPerson
a88b30ab31 Removed mind.original
All usage of it on silicons is replaced by is_special_character()
is_special_character moved from admin.dm to mob_helpers.dm
Also fixed a runtime having to do with objectives.
2013-03-11 05:40:21 -07:00
giacomand@gmail.com
46dc7d6084 Committing Faerdan's UI overhaul. Includes a UI browser class to easily manage and standardize user interfaces. This first release does not convert all the user interfaces in the game but only most of them. You can find samples of these user interfaces here: http://imgur.com/a/5dr6E
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5794 316c924e-a436-60f5-8080-3fe189b3f50e
2013-02-27 20:02:42 +00:00
giacomand@gmail.com
e03fed2b44 - Added a simple way to modify which PDAs should be viewable in a list. Fixes Issue 1283.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5672 316c924e-a436-60f5-8080-3fe189b3f50e
2013-02-08 19:47:17 +00:00
rockdtben@gmail.com
169c96db1b Too remove potential excessive garbage collection per tick. We will be reusing lists for overlays instead of deleting and creating them.
the .Cut() proc on a list will empty a list by default. This also will set the len to 0.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5465 316c924e-a436-60f5-8080-3fe189b3f50e
2013-01-04 15:11:06 +00:00
giacomand@gmail.com
fc86180f6c -The Military PDA will not show up on possible PDAs to message but you can reply to the PDA if it sends a message to you.
-Changed the exchange rate for plasma to supply points to 2:1
-Admins can now see photos in newscaster channels when using the button in the fun tab.
-Updated changelog.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5383 316c924e-a436-60f5-8080-3fe189b3f50e
2012-12-23 20:08:32 +00:00
giacomand@gmail.com
76a6ef2252 -Cleaned up computers. Fixes Issue 1195
-Made computers use idle_power_usage and active_power_usage that it used from the MC.

I'm sure something is likely to break because I removed a lot of snowflake code. I tried to test all the computers with what I can but if you find something odd then please tell me.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5369 316c924e-a436-60f5-8080-3fe189b3f50e
2012-12-21 20:38:36 +00:00
elly1989@rocketmail.com
4073ac9b00 Replaced all 'file.extension' references with 'relativepath/file.extension' using a script by thvortex of ss13-daedalus.
All credits to the author for this handy little script.
I Committed the modified python script to tool directory. Although it needs to be in the root folder of your repo to work.

To notice the improved compile times, in dreammaker go to Build > Preferences > and untick "automatically set file_dir for subfolders"

If this commit inteferes with any large projects just revert it, do your thing, then rerun the script. Easy-peasy.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4488 316c924e-a436-60f5-8080-3fe189b3f50e
2012-08-18 16:33:40 +00:00
giacomand@gmail.com
63ea1462ca -Fixed message monitor paper not finding a server.
-Updated changelog.html
-Fixed the new room not having the right broadcaster and receiver.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4247 316c924e-a436-60f5-8080-3fe189b3f50e
2012-07-31 10:34:08 +00:00
giacomand@gmail.com
0509b334d5 Added some sprites from WJohnston
-Added the mining borg (no jetpack yet)
-Added the high tech security airlock (no assembly for it yet)
-Added the new telecomm sprites

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4227 316c924e-a436-60f5-8080-3fe189b3f50e
2012-07-30 03:57:28 +00:00
sieve32@gmail.com
459c558898 -Make holodeck eswords a child of obj/item/weapon/holo instead of regular eswords, clumsy check removed as a result, and you can no longer do things like cutting through walls or doors or what have you. (Fixes Issue 665)
-Redid icons to be more optimized at compile by setting icon = 'icons/folder/icon.dmi' instead of just icon = 'icon.dmi', meaning that Dream Maker doesn't have to search through every single file for every single .dmi. This shouldn't lead to any errors because of how I went about it, plus the fact that Dream Maker would have freaked out if I screwed something up. Also moved around 2 icons that weren't sorted well.

r4146 compile time: 1 minute, 40 seconds
r4147 compile time: 45 seconds

[VGTG]

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4147 316c924e-a436-60f5-8080-3fe189b3f50e
2012-07-23 00:48:51 +00:00
giacomand@gmail.com
2399e8d561 -PDA notes and uplink notes are working again.
-Added light flickering
-Ghosts can now make lights flicker a little bit with a minute cooldown. (People voted for it http://www.kamletos.si/tgdb/ingamepolls.php)
-PDAs are sorted correctly on the Message Monitor
-Added some light flickering to the following events: High levels of radiation, Grey Tide virus.


git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4143 316c924e-a436-60f5-8080-3fe189b3f50e
2012-07-22 20:56:47 +00:00
giacomand@gmail.com
e4c971e3e4 -PDA is now sorted.
-Improved the Message Monitor UI to make it easier to use.
-Added a Message Monitor in Tech Storage, hopefully so it will be used more. You will still need the key to use it.
-You need the key to turn servers on/off remotely via the Message Monitor.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4099 316c924e-a436-60f5-8080-3fe189b3f50e
2012-07-17 21:30:31 +00:00
elly1989@rocketmail.com
f69f054f41 More fixes by Giacom.
"Bug Fixes

Fixed a HTML typo in job preferences, thanks Gamer_cad
Made the Message Console not list PDAs that are turned off or are not owned by someone.
Forgot to mention this: I changed preference since the jobs are now sorted after the round has started."

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4035 316c924e-a436-60f5-8080-3fe189b3f50e
2012-07-11 09:46:54 +00:00
vageyenaman@gmail.com
9a3abc1e84 Committed for Giacom, thread:
http://nanotrasen.com/phpBB3/viewtopic.php?f=16&t=9043

Basically adds multi-line input to papers.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@3846 316c924e-a436-60f5-8080-3fe189b3f50e
2012-06-16 21:01:55 +00:00
vageyenaman@gmail.com
449610bee2 Committing a patch for Giacom. See details here:
http://nanotrasen.com/phpBB3/viewtopic.php?f=16&t=9018

Also some very small metroid changes to make them more balanced and less KILL KILL KILL.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@3839 316c924e-a436-60f5-8080-3fe189b3f50e
2012-06-16 06:11:14 +00:00
petethegoat@gmail.com
524c2ae6a9 Comitting for Giacom.
Details here: http://nanotrasen.com/phpBB3/viewtopic.php?f=16&t=8960

And, to summarise:
Added a new computer, the message monitor console. It is able to access the logs on the message server.
Made PDAs dependant on the message server instead of Telecomms. This fixes PDAs not sending any messages due to no listening_freqs.

When paper is splashed with Ethanol, the contents of the paper or book disappear.
Added white coloured pens. Allows you to write hidden messages that can be revealed by highlighting the text.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@3777 316c924e-a436-60f5-8080-3fe189b3f50e
2012-06-09 22:14:09 +00:00