Commit Graph

46 Commits

Author SHA1 Message Date
AffectedArc07 210f8badf4 Makes all global variables handled by the GLOB controller (#13152)
* Handlers converted, now to fix 3532 compile errors

* 3532 compile fixes later, got runtimes on startup

* Well the server loads now atleast

* Take 2

* Oops
2020-03-20 21:56:37 -06:00
AffectedArc07 04ba5c1cc9 File standardisation (#13131)
* Adds the check components

* Adds in trailing newlines

* Converts all CRLF to LF

* Post merge EOF

* Post merge line endings

* Final commit
2020-03-17 18:08:51 -04:00
Citinited fddff1049b [Testmerge ready] Ports tool behaviours; refactors all tools; adds functionality for self-filling reagent containers (#11700)
* Adds support for self-filling reagent containers

* Sets tool_behaviour on the default set of tools

* Fixing merge conflicts

* Refactors welder to use tool behaviour

* The refactor: part I

* The refactor: part II

* Tool Refactor Part III: Revenge of the Maint

* Tool Refactor Part IV: A New Hope

* Tool Refactor Part V: The Oldcoder Strikes Back

* Tool Refactor Part VI: Return of the Coder

* VII

* Holy shit, it compiles?!

* Nannek I completed your TODO, you owe me ice cream

* Tool helpers; telepad is compliant

* Bugtest, Round 1: Fight

Fuck refactoring disposals

* Buggfixing, Round 2: Electric Boogaloo

* Personal crafting uses tool behaviours now

* Construction datums use new tool behaviours; better way of handling fueltank refuelling; more bugfixing

* multitool_check_buffer change; removes some useless things in tool_helpers

* proc name change

* TRUE/FALSE changes

* Bugfixing, Round 3: A Good Day To Bugfix Hard

Fixes multiple issues raised by the testmerge

* Minor style changes
2020-02-15 13:31:08 -07:00
Kyep 2fd66d8510 replaces lentext() with length() 2020-01-06 16:01:20 -08:00
joep van der velden 8d59cbeefb Check first 2018-10-27 16:24:32 +02:00
tigercat2000 7d8c9a731a SS Conversion: Atoms, Machines, n' Mobs
This converts the machine and mob processes to the SMC. Additionally, it
adds the Atom subsystem, which handles all Initialize() calls in place
of the old gameticker. Due to incompatibility with our atmospherics
(FUCK OUR ATMOSPHERICS FOR FUCKING EVER JESUS CHRIST WHO THE FUCK MADE
THIS PIECE OF GODDAMN SHIT) atmospherics machines do not use
Initialize() as they should, instead opting for a custom atmos_init
proc that the air controller handles.
2018-04-28 17:55:15 -07:00
Fox McCloud 5701ea7c75 Ports Nano UI to Subsystems 2018-03-26 23:59:52 -04:00
Fox-McCloud 16bff9cc86 longer musics 2017-08-27 19:49:40 -04:00
Fox-McCloud ba9f53ba21 small performance tweak 2017-08-08 23:17:21 -04:00
Fox-McCloud d7da6cb94c Adds a Bunch of Instruments 2017-08-02 03:19:03 -04:00
Fox-McCloud 6bd0d17527 performance 2017-07-31 14:01:15 -04:00
Fox-McCloud 0b8e61e2cc Instruments Refactor and Electric Guitars 2017-07-02 03:52:42 -04:00
Fox-McCloud 5631d36ff8 Converts Most Destroys to use QDEL_NULL 2017-04-04 23:08:41 -04:00
Markolie 3aa1399995 Implement usesound/toolspeed 2017-03-07 16:46:28 +01:00
Markolie dec9bc71ac Fix music import runtime 2017-02-10 18:59:58 +01:00
Markolie a4422a41ee Re-add anchored check 2017-02-10 18:57:57 +01:00
Markolie b0d4f5d92a Various fixes 2017-02-10 18:55:23 +01:00
Crazylemon64 f954382619 Adds a ui_key arg to ui_data 2016-12-31 12:51:07 -08:00
Tigercat2000 b9abce843d NanoUI Update: Seperate UI Data into ui_data() proc
This commit changes how NanoUI's live data updating system works.
Previously, data for the template was directly gathered in the
ui_interact proc. Now, it is seperated into the proc `ui_data`.

To players, this does absolutely nothing.
To coders, this opens up the potential for a much more complicated and
fancy graphical updating system in the future, because the data is
available on-demand without ever having to call
nanomanager.try_update_ui.
2016-12-14 13:37:34 -08:00
Tigercat2000 71e5344a98 Mass replace 2016-07-07 19:34:02 -07:00
Fox-McCloud 2df7ff16d8 Fixes Sound/Debug Preferences 2016-06-30 10:57:58 -04:00
Tigercat2000 78f53553f8 Reduce lines by removing blank lines added by PJ's script 2016-04-05 08:25:57 -07:00
Tigercat2000 9d430844c3 Replace most (if not all) output << operators with to_chat(user, message)
Currently, to_chat is literally just a proc that does user << message.
But it'll let us do output modification in the future, especially for
something like Goon's HTML chat.

Big thanks to PJB for his to_chat script, see
https://github.com/d3athrow/vgstation13/pull/6625 for more details.
2016-04-05 08:15:05 -07:00
Tigercat2000 976887b2e0 Replace text2list and list2text 2016-02-28 12:07:19 -08:00
Tastyfish 65e2a7fdff Updates/fixes instrument ui to be a nanoui 2016-01-05 02:26:45 -05:00
Fox-McCloud e60edf9345 Garbage Collect Everything 2015-10-13 20:23:26 -04:00
Markolie 9adff714b9 Merge branch 'master' of https://github.com/ParadiseSS13/Paradise into sql
Conflicts:
	code/controllers/configuration.dm
	config/example/config.txt
2015-09-23 07:07:17 +02:00
Markolie 73bacbf17f Preference option for instruments/sanitize tempo 2015-09-23 07:00:01 +02:00
Fox-McCloud bd3696523b GC a few Datums 2015-09-20 22:40:13 -04:00
Tigercat2000 7f4ac72910 Progress bars + Wall Rationalization
This commit does the following:
 - Ports progress bars from -tg- (tgstation/-tg-station#9921)
 - Refactors wall attackby code to make it 100% less insane; Instead of
   manually checking every little thing, it uses do_after,
   consequentially, making the new progress bars affect dealing with walls
   as well.

Wall code makes a tiger sad.
2015-08-31 13:38:51 -07:00
Fox-McCloud 6e87b96501 Pass 3 2015-07-08 01:34:53 -04:00
Tigercat2000 d20298e996 -tg- atom pooling system, qdel changes
This commit first and foremost ports the -tg- atom pooling system, and
removes the old experimental system entirely.

Secondly, this PR modifies the qdel system to use a -tg- lookalike
"destroy hint" system, which means that individual objects can tell qdel
what to do with them beyond taking care of things they need to delete.
This ties into the atom pooling system via a new hint define,
QDEL_HINT_PUTINPOOL, which will place the atom in the pool instead of
deleting it as per standard.

Emitter beams are now fully pooled.

Qdel now has semi-compatibility with all datum types, however it is not
the same as -tg-'s "Queue everything!" system. It simply passes it through
the GC immediately and adds it to the "hard del" lists. This means that
reagents can be qdel'ed, but there is no purpose as of yet, as it is more
or less the same as just deleting them, with the added effect of adding
logs of them being deleted to the garbage collector.
2015-06-21 15:47:57 -07:00
ZomgPonies 5c14d9c5f2 vg Garbage Collector 2015-02-23 17:18:38 -05:00
Markolie 672305e034 Adds a "params" parameter to attackby(), so it keeps track of pixel_x and pixel_y among other things 2015-02-22 22:12:11 +01:00
Fox-McCloud c879ead4f7 Music Updates 2014-10-31 21:55:25 -04:00
johnsonmt88@gmail.com 154a7c0f76 The code compiles again but I make no promises about whether or not the piano works.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5425 316c924e-a436-60f5-8080-3fe189b3f50e
2012-12-30 17:51:49 +00:00
daniel.cf.hultgren@gmail.com 49d87eed07 Reverted to oldpiano until me or somebody else decides to fix baysongs and whatever bugs there are.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5422 316c924e-a436-60f5-8080-3fe189b3f50e
2012-12-30 10:03:38 +00:00
elly1989@rocketmail.com 4d9876fd65 Fixes issues with pen bbcode. Replacetext did not work correctly after I changed text2list - (It was missing 'needles' at the beginning of 'haystacks').
>dd_replacetext and dd_replacetext_case are now replacetext and replacetextEx respectively.
>replacetext and replacetextEx works using strings only; it doesn't convert it into a list and then back into a string.

Fixes some dumb-dumbs in textlist and text2listEx
> "<" where there should be a "<="
> no else case for when the separator is longer than the text (causing empty lists to be returned)

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4971 316c924e-a436-60f5-8080-3fe189b3f50e
2012-10-27 21:21:17 +00:00
giacomand@gmail.com 6a2d78bc94 -Killed the updateDialog lag. I added a check to see if there were any mobs to update, if not it will stop checking until a user uses the machine again. I had to replace all the machine = src and machine = null with procs to help make it manageable. I believe this is one of the culprits causing the server to lag as the round goes on, as more players will interact with machines.
-Atmos delay is now based on active players, to help fight lag for massive player rounds.

-Changed some for(blah in world) loops to use the correct lists.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4958 316c924e-a436-60f5-8080-3fe189b3f50e
2012-10-25 19:15:51 +00:00
elly1989@rocketmail.com 7b720a20b6 >Moved most of the helper procs into code/__HELPERS. If you see ANYTHING generic enough to be a helper proc just throw it in there and help purge the copypasta 5ever
>Replaced dd_text2list, dd_text2listcase, tg_text2listcase and tg_text2list with text2list and text2listEx. text2list will return a list of each and every character in the string if you set separator=""
>added return_file_text(filepath) which returns text from a file after doing some checks: does the file exist? is the file empty? It prints helpful error messages to the world.log if it runs into problems
>Replaced dd_file2list(filepath, seperator) with file2list(filepath, seperator). It just calls text2list(return_file_text(filepath), seperator). rather than copypasta
>Replaced time_stamp() so it's not as retarded
>Lots of the world setup stuff uses file2list now, rather than file2text -> sanity -> text2list
>Added error() warning() testing() procs. These print messages to world.log with a prefix. e.g. ## ERROR: msg.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4948 316c924e-a436-60f5-8080-3fe189b3f50e
2012-10-24 14:39:36 +00:00
daniel.cf.hultgren@gmail.com 58dfdf5026 uruereruguu
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4776 316c924e-a436-60f5-8080-3fe189b3f50e
2012-09-29 23:14:57 +00:00
daniel.cf.hultgren@gmail.com 20edf15eab * You can now properly import baystation and oldpiano to the new piano
* Fixed the BPM +/- signs
* Fixed the violin


git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4775 316c924e-a436-60f5-8080-3fe189b3f50e
2012-09-29 23:11:19 +00:00
daniel.cf.hultgren@gmail.com fc4a98ba39 *Reworked Piano, now optimized and whatnot, new interface
*Updated changelog

Please notify me of any bug so it can get fixed.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4757 316c924e-a436-60f5-8080-3fe189b3f50e
2012-09-25 18:35:16 +00:00
elly1989@rocketmail.com bbd020b436 Runtime fixes for:
runtime error: bad icon operation
proc name: New (/icon/New)
  usr: Charles Mycroft (/mob/living/carbon/human)
  src: /icon (/icon)
  call stack:
/icon (/icon): New("plating", "metal1", null, null, null)
the wall (185,137,1) (/turf/simulated/wall): clean blood()
Space cleaner (/datum/reagent/space_cleaner): reaction turf(the wall (185,137,1) (/turf/simulated/wall), 11.6)
/datum/reagents (/datum/reagents): reaction(the wall (185,137,1) (/turf/simulated/wall), 1, 10)

runtime error: list index out of bounds
proc name: Topic (/obj/structure/device/piano/Topic)
  source file: musician.dm,525
  usr: Toto (/mob/living/carbon/human)
  src: the space minimoog (/obj/structure/device/piano)
  call stack:
the space minimoog (/obj/structure/device/piano): Topic("src=\[0x200723e];modifyline=1", /list (/list))
Octisetti (/client): Topic("src=\[0x200723e];modifyline=1", /list (/list), the space minimoog (/obj/structure/device/piano))

Added sanitization to user inputs in piano/Topic()

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4605 316c924e-a436-60f5-8080-3fe189b3f50e
2012-09-02 22:32:24 +00:00
johnsonmt88@gmail.com ecd5a2283d Standardized musician.dm
Also the piano now has a 50/50 chance to spawn as the minimoog or space piano

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4577 316c924e-a436-60f5-8080-3fe189b3f50e
2012-08-28 16:21:34 +00:00
johnsonmt88@gmail.com 19135de9eb Changes to the file structure!
There are many files, folders and chunks of code in areas that make absolutely no sense and thanks to the defines being located mostly in a completely separate file, it can be damn-near impossible to find something. Before moving defines to where the rest of their code is located; I'm going to move some code around into places that actually make sense to begin with. I'll mainly be focusing on the code/game/objects folder.

This commit mainly lays the groundwork for the work I'll be doing by adding in the effects, structures, decals and turfs folders. I'll slowly be moving appropriate files and code into these folders. I may end up moving machinery into 'objects' and mech stuff into its own module folder but I'll ask for some opinions on coderbus before doing that.

I've also gotten rid of the /magic/ folder. I've moved the library stuff into its own folder in modules/library, the cult stuff is now in gamemode/cult with the rest of it and musician.dm is now in objects/structures since the piano is a structure apparently.


I think I've got the hang of how DM and SVN handles folders and files but it's quite possible that something will break simply by svn committing it oddly. Please let me know if that's the case!

Remember to clean compile.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4513 316c924e-a436-60f5-8080-3fe189b3f50e
2012-08-22 15:50:09 +00:00