-adds the sarlaccs from fowl's old mining pr, to be used in an event and for general adminbus/maybe in the mining mob's future pr
-blacklist some mobs from spawning via the golden slime
Adds flooring to the turret with "decorative" conduits.
Adds darkening and brightening animation when turret opens/closes to indicate the turret rising up or down.
Made new construction phase depicting nearly all steps visually (Apart from adding the prox sensor.)
Made sure almost every gun that can be turreted has a relevant sprite. These are based on gun sprites. Changing those might cause turrets to not reflect the gun look.
Some guns share sprites, some were made unturretable.
Added new set of vars on the /gun/energy level, since the /gun level had few essential vars missing and I am not really looking for any other code rewrites regarding this right now. Should not be hard to move them step up, if ever needed.
Turrets that have only one shooting mode have now the changing mode option greyed out.
Also removed leftover references to two energy carbine subtypes and removed one global list.
Changes cargo to be based on credits instead of items
The following is still ToDo:
Test SQL Loading + Add flyway migration
Add changelog
Restore the PDA Application
Fixes lag from plants processing forever instead of obeying the subsystem's tick interval. Also fixes a glitch where plants didn't continue to grow if not mature.
Fixes#3451.
Ports Polaris' integrated electronics system, whichallows for Roboticists & Electricians/Engineers to build custom devices and machines for a variety of purposes.
changes:
Stairs now actually work.
Stairs now only move your mob up when you exit the last step.
Walking off the side of a staircase will now cause your mob to faceplant on the ground briefly.
Openturf now handles objects that cover more than one turf properly, such as multi-tile doors.
changes:
Openturf starlight now actually works.
Openturf starlight is now under its own config option, so it can be toggled separately from starlight.
OT starlight no longer re-applies to a turf that already has it set.
Seems to use a fair bit of memory unfortunately, as well as adding a good 25 seconds or so to boot time.
changes:
SSoverlays only creates the our_overlays and priority_overlays lists separately and when they're actually used. This should remove a lot of unused lists as priority_overlays is relatively unused.
SSoverlays is now FIFO.
SSoverlays now uses large Cut() operations instead of continuously truncating its processing list.
SSoverlays is no longer a processing subsystem.
Performance tweaks to add_overlay()
SSoverlays no longer tries to re-process atoms that have already forcibly compiled their overlays (like human-types).
Mostly aims to reduce meaningless proc-calls in Move() and forceMove(), also inlines the rest of the power calculations in SSmachinery to remove a lot of proc-calls.
changes:
SSlighting is now FIFO - lights are processed in the order they are received instead of by whatever one was queued most recently.
Instant lighting updates now check CURRENT_TICKLIMIT instead of ITL. ITL has been removed due to it no longer being used.
SSlighting will no longer double-process lighting datums that have already been processed by instant lighting.
Instant/Intelligent lighting updates can now be disabled via. compile-time define.
Sunlight should no longer shine indoors.
Directional lighting now properly updates on direction changes again.
/datum/light_source/novis has been renamed to /datum/light_source/sunlight.
More lighting microoptimizations.
Converted two storage lists to be lazy.
Using the show server revision verb will now show the percent chance of each gamemode in the secret and mixed secret rotation. Based off of how TG did it.
changes:
Fixed#3203.
Tajara or Unathi CEs now get gloves that actually fit them.
OOs now respect direction changes from their mimicked object.
Replaced all references to trange() with RANGE_TURFS().
Replaced all references to is_type_in_oview() with locate() in oview().
Fixed a runtime caused by recursive explosions falling off the edges of the map.
Carp despawn now works properly with the new asteroid turfs.
Carp despawn now uses WEAKREF instead of SOFTREF.
Added tick-checks to the carp migration event.
Vaurca now have the IS_VAURCA reagent_tag.
Cleaned up butanol alien handling a bit.
changes:
Sunlight prebake now happens during MC Initialize instead of in the lobby.
Openturf no longer ticks in the lobby.
Openturf has been promoted to a normal SS, from SS_BACKGROUND.
Lighting no longer ticks in the lobby.
Inlined directional lighting's coordinate filter.
Directional lighting wedge caching now properly works with face-direction.
-removes the jaunt spell from the wizard corrupt form
-increases the price of raise dead to two points
-adds a new wizards spell; flesh to stone, that traps your target in a statue for some time
-added a chance of creating a central command report everytime the lich is send back to his heart, telling the possible location of the heart
changes:
Reworked how human body icon keys are generated; resulting keys should be much shorter now and involve less duplication of the same string.
Players are now shown a message when they try to add markings to a species that has none available.
Admin revive for human-types will now also re-apply their organ and marking prefs.
Admin revive now also resets shock_stage (fixes rejuv'd mobs being slow for a while)
changes:
Converted all clothing types to Initialize.
Added some missing destroys to some custom items.
Char setup now forcibly initializes the mannequin's contents if SSatoms has not finished yet.
/obj/item/clothing/under no longer does in icon_states() in New().
This pr adds the second essential part of the merchant's implementation, mapping the merchant's shuttle, base and the dock. And more merchant related fixes and tweaks.
A collection of misc. micro-optimizations to the various human update-icons procs.
changes to human update icons:
Removed some unused human layers.
Merged the l_ear and r_ear layers into one layer.
Minor optimizations to update_ears (optimized for only one ear in use)
update_collar() no longer creates an icon each time it runs just to check icon_states.
update_collar() now uses a cached assoc list of icon_states for comparison instead of in IconStates().
Human body types are now cached on first access so the proc doesn't need to be called all the time.
Contained icons now involve less temporary strings.
Manual tail swish now uses client-time timers instead of server-time timers.
Port of the merchant mechanics from baystation12.
All of the trader, prices and most essential system are done, as well the job datum and the like. Mapping the shuttle, the base and a new dock will be done in a later pr.
Also adds phazon construction and several other items used in this pr.
The chance of the merchant slow being open at round start can be changed via the config, it is 20% by default.
changes:
/obj/effect/list_container/mobl has been replaced with /datum/mobl.
/obj/effect/stop has been removed as it is unused.
/obj/effect/shut_controller has been removed as it is unused.
Uristrunes now cache in SSicon_cache.
Fixes a bug where openturf would unexpectedly delete an overlay if it was updated via. update_above() when it was already queued for update. Also fixes#3191 and includes some minor performance optimizations.
changes:
Autodrobes no longer steal your clothes if you had an oversuit on but not a custom jumpsuit.
Late Miscellaneous Init (LMI) no longer uses silent init logging.
equip_to_slot_or_del() will now equip even if the target slot would normally be inaccessible.
May fix#2826.
Fixes#2512.
changes:
The GC now truncates its lists using a single Cut() call per run instead of one cut call per item removed.
Nar-sie and Supermatter Cascades now disable the GC to reduce lag during these events - round is ending in 5 minutes anyways, so enforcing deletes is not important.
Garbage's MC status panel now displays how many objects are awaiting queueing.
changes:
Organs now use Initialize().
The observe message now shows the configured respawn delay instead of always 30 minutes.
Seed datums no longer have a timer in New().
External organs no longer have a timer in New()/Initialize()
Converted some spawns in organs to timers.
Floor init no longer breaks to plating first for mapped in tiles.
Added the INITIALIZE_IMMEDIATE macro to make Initialize() not wait for SSatoms init.
Mannequins now use INITIALIZE_IMMEDIATE instead of a custom-defined New().
Mannequins (from get_mannequin) now delete themselves if unused for 5 minutes or longer.