In cases where you're creating an image to use as an overlay, it makes more sense to use a mutable_appearance if you can. The image will create a static appearance for not just the image but also each intermediate step if you change vars along the way. The mutable appearance avoids this unnecessary and expensive process. The only situation that requires an image instead of a mutable_appearance is if the overlay is supposed to be directional. MA's ignore direction while images don't. I dunno why, probably another BYOND-ism.
I added a convenience function, mutable_appearance(), designed to emulate image(). Also went ahead and set the default plane of /mutable_appearance to FLOAT_PLANE because it's fucking 0 by default.
Several overlays that were image() calls were changed to just text strings when I could. overlays += "string" has the same result as overlays += image(icon, "string") and saves a proc call.
- Removed spawns from medbots.
- Made facehuggers use timers, added #undefs.
- Made hive nodes use timers for clearing the queen death debuff.
- Make necropolis chests use PopulateContents()
- Use INVOKE_ASYNC for making bloodbath mines apply their affects
- Replaced spawn with addtimer for immortality talisman
* 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
* Wizards can now Summon Ghosts
🆑 coiax
add: Wizards can now use their magic to make ghosts visible to haunt
the crew, and possibly attempt to betray the wizard.
/🆑
- Summon Ghosts, makes ghosts visible for the rest of the round.
- Modifies the Summon Events G-g-ghosts! event to also use the same
mechanism of making all ghosts visible.
- New global var `observer_default_invisibility`, which all ghosts load
their invisibility from when created. You need this because ghosts get
destroyed and created every time you exit and reenter a body. Modified
the spectral sword to use this, instead of initial().
- Pros for wizards to summon ghosts: It's spooky, and distracts the
crew, they get to see the ghosts come out of the dead people they just
murdered.
- Downsides of wizards to summon ghosts: They'll be always obvious when
etheraling around, they can't really stealth, ghosts will do their best
to upset the wizard's plans.
- If you were playing to WIN as a wizard, you probably wouldn't summon
ghosts. But you wouldn't summon guns or magic either.
* Makes it buyable
* Overlay queuing
* Fix SS flags
* Don't copy on assignment
* Flags processing
* Fix icon_smoothing
* MSO's helper proc
* Legacy detection
* Make it work
* Fixes shitcode
* Fix the flag
* |= -> +=
* OK, how did I fuck that up?
* shitcode
* Conditional assoc queue while initializing
* Cleanup everything
* Orange meme
* This isn't perfect, but its the best byond will give us.
* forgot about dir
* oh ya
* This was litterally the last thing i did last night before heading to bed
You can tell can't you?
* Fixes various shit
* Let's not ever pause
* Fix the flag
* Cleaned up some missing shit. Added image dummys
* Remove the one usage of FPRINT
* Jesus get rid of this
* Fixes drag drop deletion
* Fix it for clothing as well
* Do it properly
* Various other incap checks I noticed from the unequip refactor
* Time to generalize this shitty shit
* PADDLING!!!
* A whole bunch of ree
* Makes qdeleted and qdestroying macros
* Makes QDELETED and QDESTROYING uppercase
* Swap qdel checks istype's for != null's
* Fix it
* How was this missed?
* Part1
* IT COMPILES!!!!
* Fuck wait this was missing from that last
* Update handlabeler.dm
* Update handlabeler.dm
* Fixes n shit
* Fix this
* Fixes#23310
* Fucking @RemieRichards was right
* Fixes devil unEquip
* WTF ARE BITFLAGS?
* THERES THE FUCKING PROBLEM
* Fixes
* Fixes some bad addtimers
* Adds INVOKE
* Warning for addtimer
* Working syntax
* Another bad call
* Fixes the addtimer warning
* Add suppress_zero_warning to addtimer
Useful for addtimer that uses vars
* Add INVOKE_AGAIN for when the var is already defined
* Replace addtimer(...,0) with INVOKE((...))
* Much more sensible syntax
* Less overhead, less copypaste
* Rename INVOKE_ASYNC
* Use a macro
* Allman style
* Wait, why make it a datum in the first place?
* Revert the rename
* Rename again, keep line endings
* typo
* More typos
* Untouches Addtimer
* Update callbacks.dm
* Update timer.dm
* Revert allman style
* Revert "Revert allman style"
This reverts commit 47361da15bd04eca138be5f13acdc9dd5ba89331.
* Trying to match that whitespace diff
* Why is this missing?
* I'm not fucking dealing with this!
* sleepight pupper
* boop
* boom explosion habbon
* wew ladder.
kor tell me the varname cock tobbagan dont just tell me it exists and you dont poin
* bambi in spess
* more shitfuck
* GOD DAMMIT ITS GONNA BE FUCKING HOT AAA
* commit this dick you fucking tub
* GIGANTIC REFACTOR 2.0
* OH YEAH THE CREAM RISES TO THE TOP
* antur
* aaaaaa
* boat
* wew ladder
* bman
* yaaaaaaaaaaaaaaaaaaawwwwwwwwwwwwwwwwwww
* STEEL CORRIDOR
* Fix a bug in forceMove
Don't call Exited/Entered if the loc is the same
* Added forced_movement
* Remove usages comment
Fixed a parameters bug
* Refactor slips
* Refactors meathook
* Negative check
* Shittier syntax, more performance
* Seperation of src and args
* Sanity check
Because you know someone will fuck it up
* X to Y is inclusive
* Bettter diagonals
* Remove unused var
* Better suggestion
* This was never used, why was it here?
* Arg prefixing...
* Better cleanup
* Do not touch the self managing var
* Cleanup
* More cleanup
* Missed 2
* Added callbacks
* Fix ice again
* Sanity checks
* Applied to larva/attack_hulk
* Fix the chain's usage
* LDFJAHDJKAGFHLJKDSAGHJKLSDAGBLKJADGFHKLJADGNLKAMDFNBJK:ANFDJKLADSNLSJKDFHNASFADSFLK:AJFL:KASJFKLASJF:LAJSF:LKJASKFMSALKF
* icon, icon_state defined twice
* desc defined twice
* desc defined twice
* desc, icon_state defined twice
* icon_state, name defined twice
* item_state defined twice
* gender defined twice
* stop_automated_movement_when_pulled defined twice
* attacktext defined twice
* speak_emote defined twice
* flying defined twice
* item_state defined twice
* speak_chance defined twice
* attack_sound defined twice (x2)
* icon_state, item_state defined twice
* icon_state defined twice
* Revert "desc defined twice"
This reverts commit 18d74f442441078a7d8e8cfaddbef1c4646b6bb9.
* desc defined twice
* Revert "desc defined twice"
This reverts commit e167c0812c94a96dfb3f6888c77cee868cc37c03.
* desc defined twice
The var will be used to store the various coloring that happen for the atom so that we can separate paint coloring from color that must be inherent to the atom (an initial color for example), or from certain coloring effect like revenant's blight, mob electrocution's black color, admin edit of the color var, green color from holding the greentext item, etc.
The list has four elements, used for four categories:
ADMIN_COLOUR_PRIORITY for admin varedits and very rate color effect like holding the greentext item (and other effects that should prime over any other potential source of coloring even temporary effects).
TEMPORARY_COLOUR_PRIORITY for short color effects like revenant blight on mob, mob electrocution making you all black for a couple seconds, effects that should be appearing above paint coloring.
WASHABLE_COLOUR_PRIORITY for pretty much all paint coloring like colorful reagent on mobs, coloring turfs with paint, etc.
FIXED_COLOUR_PRIORITY for color inherent to the atom, like a blob's color, any object with a color value given in its definition.
Fixes electocution animation on mob not making the mob all black (with the skeleton overlay blinking over it)
Spray cleaner and soap can now wash paint off mobs, turfs and objects.
Fixes issue with area power alerts, related to many space ruins using the same area and thus having multiple apcs in the same area with some wanting the area to be powered and some unpowered, leading to the area's power state constantly switching (area/procpoweralert() becoming the second most costly proc on the profile).
I fixed it by giving to many space ruins their own area (mostly those who have an APC).
Making a global list var "teleportbeacons" so we don't have to use "in world" to fing all tracking beacons used by teleporters.