Commit Graph

15 Commits

Author SHA1 Message Date
Joan Lung ec9439b915 Renames GLOB.cardinal to GLOB.cardinals to match GLOB.diagonals and GLOB.alldirs 2017-07-09 17:24:28 -04:00
Cyberboss 9e1ef0ffe2 Global variable wrappers (#25325)
* Add the system for managed global variables

* Travis ban old globals

* So you CAN inline proccall, that's neat

* Fix that

* master.dm

* Remove the hack procs

* Move InitGlobals to the proper spot

* configuration.dm

* Fix the missing pre-slash

* clockcult.dm

* This is probably for the best

* Doy

* Fix shit

* Rest of the DEFINES tree

* Fix

* Use global. for access

* Update find_references_in_globals

Always hated that proc

Whoever made it must've bee a r e a l idiot...

* __HELPERS tree

* Move global initialization to master.

Fix the declaration

* database.dm

* Dat newline

* I said DECLARATIVE order!

* Here's something you can chew on @Iamgoofball

* game_modes.dm

* Fix this

* genetics.dm

* flavor_misc.dm

* More stuff

* Do it mso's way. Keep the controllers as global

* Make master actually see it

* Fix

* Finish _globalvars/lists

* Finish the rest of the _globalvars tree

* This is weird

* Migrate the controllers

* SLOTH -> GLOB

* Lighting globals

* round_start_time -> ticker

* PAI card list -> pai SS

* record_id_num -> static

* Diseases list -> SSdisease

* More disease globals to the SS

* More disease stuff

* Emote list

* Better and better

* Bluh

* So much stuff

* Ahh

* Wires

* dview

* station_areas

* Teleportlocs

* blood_splatter_icons

* Stuff and such

* More stuff

* RAD IO

* More stuff and such

* Blob shit

* Changeling stuff

* Add "Balance" to changelogs

* Balance for changelog compiler + Auto Tagging

* Update the PR template

* hivemind_bank

* Bip

* sacrificed

* Good shit

* Better define

* More cult shit

* Devil shit

* Gang shit

* > borers

Fix shit

* Rename the define

* Nuke

* Objectives

* Sandbox

* Multiverse sword

* Announce systems

* Stuff and such

* TC con

* Airlock

* doppllllerrrrrr

* holopads

* Shut up byond you inconsistent fuck

* Sneaky fuck

* Burp

* Bip

* Fixnshit

* Port without regard

* askdlfjs;

* asdfjasoidojfi

* Protected globals and more

* SO MANY

* ajsimkvahsaoisd

* akfdsiaopwimfeoiwafaw

* gsdfigjosidjfgiosdg

* AHHHHHHHHHHHHHHHHHHHHHHH!!!!!

* facerolll

* ASDFASDFASDF

* Removes the unused parts of dmm_suite

* WIP

* Fix quote

* asdfjauwfnkjs

* afwlunhskjfda

* asfjlaiwuefhaf

* SO CLOSE

* wwwweeeeeewwwww

* agdgmoewranwg

* HOLY MOTHER OF FUCK AND THATS JUST HALF THE JOB?!?

* Fix syntax errors

* 100 errors

* Another 100

* So many...

* Ugh

* More shit

* kilme

* Stuuuuuufffff

* ajrgmrlshio;djfa;sdkl

* jkbhkhjbmjvjmh

* soi soi soi

* butt

* TODAY WE LEARNED THAT GLOBAL AND STATIC ARE THE EXACT SAME FUCKING THING

* lllllllllllllllllllllllllllllllllllllllllll

* afsdijfiawhnflnjhnwsdfs

* yugykihlugk,kj

* time to go

* STUFFF!!!

* AAAAAAAAAAAAAAAAAHHHHHHHHHHHHHHHHHHHHHHHHHHH!!!!!!!!!!!!!!!!!!!!!!!

* ngoaijdjlfkamsdlkf

* Break time

* aufjsdklfalsjfi

* CONTROL KAY AND PRAY

* IT COMPILEELEELELAKLJFKLDAFJLKFDJLADKJHFLJKAJGAHIEJALDFJ!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

* Goteem

* Fix testing mode

* This does not belong in this PR

* Convert it to a controller

* Eh, fuck this option

* Revert controllerization Ill do it some other time

* Fix

* Working controllerization

* FOR THE LOVE OF CHRIST PROTECT THE LOGS

* Protect admins and deadmins

* Use the inbuilt proc
2017-04-06 23:26:13 -06:00
Kyle Spier-Swenson dedb16826e Speeds up world init. (93s -> 49s) (#21992)
* Speeds up world init.

* Armor is now new inited for obj and the first level of subpaths.
* Actions is now lazyinited and deleted with empty.
* Actiontypes is now only inited when actually used and deleted once it pre-fills actions with the action buttons.
* Pipes now prefill their node list(s) in new() using new /list/ (count) syntax to speed up the list initaliztions and remove the init proc.
* Pipes no longer store their item version, instead creating it on the fly when deconned
* Walls no longer store their metal stacks, instead creating it on the fly when deconned.
* obj, walls, floor, plating, item, machinery, structure, pipe, pipenet, atom, and movable no longer have an (init) proc. (along with a few other smaller examples)
* Atmos can pass checking is now a var with the ability to have a proc be call in advance cases.
  * (as a side effect, I had to fix a few things that were calling atmosCanPass rather then using the pre-calculated list, this should speed up chemfoam and flame effects greatly)

* Reverts upload limit
(remind me one day to defuck this, it could easily be a config thats not editable by vv to make changes easier)

* Makes apc update icon a bit faster.
APC new is some what high on the profile of world init, still not sure why, but this stood out as a waste of cpu so i fixed it.

* Fixes runtime with atmos backpack water tanks.

* Makes smoothing faster (and fixes turfs smoothing twice at init)

* Makes apcs init faster by replacing some spawns with addtimer

* fix transit turfs.
2016-12-08 21:50:15 +13:00
MrStonedOne 78c9ce1bfc Cleans up some init procs from world start.
`/turf`, `/turf/open`, `/turf/open/space`, `/obj` should now no longer have an `init[]` proc in byond.

This mostly abuses the fact that `for (var/thing in null)` works exactly the same as `for (var/thing in emptylist)`

`atmos_adjacent_turfs` is lazy init'ed and set back to null when empty. `GetAtmosAdjacentTurfs()` will always return a list for code that doesn't want to care.

`atmos_overlay_types`, and `proximity_checkers` lazy init and reset back to null when empty.

`armor` is now init'ed in `/obj`'s `New()` if it's blank. This could also be set to some lazy init system if somebody is feeling masochistic enough.

`/obj`s that both don't call parent in `New()` and don't set their own armor will have a null armor list. This might cause bugs so this change may get removed if that becomes an issue.

Minor slightly unrelated change that made doing this change easier, `add_overlay()` now *technically* works properly if given a list
2016-10-28 13:31:08 -07:00
Joan Lung ce13143d9d Replaces yet more istypes with helpers (#20806)
* uses more istype helpers

* oranges is inefficient
2016-10-10 17:48:35 +13:00
Kyle Spier-Swenson da095c2cb4 makes some atmos procs have the right pathing
Seriously? Two separate procs under the same name. loc is typed to /atom/ so this made no sense to do.
2016-07-08 16:06:48 -07:00
Kyle Spier-Swenson c3ae0ea393 Fixes directional atmos spread blockers (like small windows/windoors)
byond and `in` are lame, and it processes wrong with tinaries this is better anyways as it avoids a list loop.
2016-04-05 10:28:12 -07:00
duncathan 497a4efc70 makes atmos_spawn_air() use the new gas string parser 2016-04-04 01:49:09 -06:00
duncathan e86cf0f280 praise the good lord, for the game finally compiles 2016-03-29 19:04:37 -06:00
duncathan b9950c4358 turf/open and turf/closed 2016-03-29 13:38:56 -06:00
duncathan 5bf31463da removes simulated turfs; adds space gas mixture for space 2016-03-10 17:27:01 -06:00
MrStonedOne a2ae265064 Brings the rest of atmos into the new turf list system (and some more speed ups for process_cell()) 2016-02-14 00:07:43 -08:00
Kyle Spier-Swenson efde9a7e3b compile error fix 2016-02-13 22:41:17 -08:00
Kyle Spier-Swenson 15e080bc07 Makes atmos treat atmos_adjacent_turfs as a list 2016-02-13 22:41:16 -08:00
Firecage 6e27893e38 Take to of grouping the atmos files in modules. 2016-01-30 21:09:38 +02:00