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.
obj/on_log changed to atom/on_log. Boolean parameter in
No admin irc message now checked in client/Del instead of mob/Logout
Removed an empty New()
1 -> TRUE
removed a potential crash in mob/Login
So I changed lootspawners to Initialize, which caused some code in
easter.dm to start working and added eggs and baskets to maint loot
table.
- The maintenance loot table is now a global list
- The easter event now modifies that global list.
- Maintenance loot spawners now run on roundstart
* Refactors ear damage into ear organs
🆑 coiax
add: Centcom would like to inform all employees that they have ears.
add: Adds "ear" organs to all carbons. These organs store ear damage and
deafness. A carbon without any ears is deaf. Genetic
deafness functions as before.
/🆑
- `ear_damage` and `ear_deaf` vars removed from /mob.
- All mobs have a `can_hear` proc, which returns TRUE always except for
carbons.
- Carbons need to have an ear organ that has 0 `deaf` var.
- Explanation of how ear damage works is in the code, it hasn't been
changed from previously. Deafness is applied in number of Life ticks
until you regain hearing, while damage is long team, heals slower, and
when high enough, can cause flashbangs to make you go permamently deaf,
as before.
- Wearing earmuffs halves the healing time of deafness, and promotes
healing long term ear damage, as before. Earmuffs now have a secondary
flag HEALS_EARS, which currently only they own.
* Changes how soundbang deafness works slightly
* Ear organ icon
* Code review I
* Makes fully healing carbons not dependent on having a dna and species
* Gives monkeys and aliens ears
* Whoops
* Split organs into seperate files
* Tweaks.
* Un-removes brain damage lines
* Moved procs onto /mob for ear stuff
* Massages things into compiling
* Replacement of spam_flag with world.time tracker
* Refactors conveyor movement
* Fixes effects being affected by conveyors
* Fixes jetpacks not stopping conveyors
* Fixes /mob/dead being affected by conveyors
* Fixes butterflys being affected by conveyors
* New proximity monitor datum
* Replace the old systems
* Fixes#26254
* Ports a New and spawn to Initialize
* Switch to Moved
* Remove unused var
* Speedup and fixes
* More speed
* qdel in movable
* Uneeded now
* Fix
* Use the faster RANGE_TURFS
* Upgrading RPG loot items modifies their name accordingly
- the greater crowbar of many tales +2
- use item fortification scroll
- the greater crowbar of many tales +3
- Once the RPG loot event fires, a global is set which means all new
items will have rpg_loot datums attached to them.
Otherwise, everything functions the same. Item fortification scrolls are
only spawned when the event fires.
Using an admin spawned item fortification scroll on a non-rpg looted
item works, it'll grant that item only a RPG datum.
Made a /unlimited upgrade scroll if admins feel like buffing an item.
* Scroll
* Scroll, <i> nix
* Fixes vaporising items, negative quality
* Fixes runtime when upgrading non-rpg item
* Static lists
* Muh spelling
Two new items, one brand new, the other an RCD that works at range without any other bells and whistles.
The RLD allows you to create floor and wall lighting along with temporary (they use fuel like flares) glowsticks at range. It can also deconstruct lights. The best part of this feature (besides the visual "ammo" updating icons) is the ability to select absolutely any color you desire.
🆑 Robustin
add: Ranged RCD added to the game
add: Rapid Lighting Device (also ranged) has been added. It can create wall, floor, and temporary lights of any color you desire.
/🆑
* Fix for bug #25899 (spray guns)
- Made it so chemsprayers and extinguishers don't spray when you click your inventory items
- Spray guns now actually have their range change when changing modes between spray and stream
* Fix for bug #25899 (spray guns)
- Made it so chemsprayers and extinguishers don't spray when you click your inventory items
- Spray guns now actually have their range change when changing modes between spray and stream
* Changes suggested by duncathan
* Partial sparks boilerplate reduction
- Lots of obects are making `/datum/effect_system/spark_spread`, setting
them up, firing them, and then not qdeling them afterwards.
- Makes a `do_sparks` global proc that takes the same arguments as `set_up`
and then calls `start` and then `qdel`
- Switches a bunch of things to use this proc
- Makes emitters keep their own spark_spread datum around, since they
spark so damn much.
- Also makes some things use timers and ports some things to Initialize.
* Compilation
* Fixes cigarette branding and taste
🆑 coiax
fix: Cigarette branding has been fixed.
add: Uplift Smooth brand cigarettes now taste minty as advertised.
del: You can no longer inject cigarette packets to inject all cigarettes
simultaneously.
/🆑
- Makes subtypes of all the brands of cigarettes, and sets them to the
packets, removes the brand var and the special casing initializing that
had to be done for it.
- Adds "menthol", a do nothing drug chemical that tastes of mint to
Uplift Smooth (because they say they taste of mint, so we're fixing bugs
in the user's experience)
- Cigarettes now have a "list_reagents" var, for specifying their
initial reagents mix, like `reagent_container`
* Only trippy rollies start lit
* RRR