Commit Graph

1698 Commits

Author SHA1 Message Date
SkyratBot
f969ce5e59 [MIRROR] Fixing robot upgrades not being removed from lists all times. (#1906)
* Fixing robot upgrades sometimes not being removed from lists. (#54842)

* Fixing robot upgrades not being removed from lists all times.

Co-authored-by: Ghom <42542238+Ghommie@users.noreply.github.com>
2020-11-28 13:03:13 +01:00
SkyratBot
a92fdde30e [MIRROR] Remove duplicate definitions of /obj/effect/ex_act, explicitly noop it (#1904)
* Remove duplicate definitions of /obj/effect/ex_act, explicitly noop it (#55076)

/obj/effect/ex_act had several different re-definitions to make it a noop. The original definition would randomly delete it, which is bad news when a lot of /obj/effects are just that--effects, that shouldn't be blown up.

The ones that actually do want to be blown up (like decals) already have their own implementations. The one in place was never ran, and nobody had problems with it.

* Remove duplicate definitions of /obj/effect/ex_act, explicitly noop it

Co-authored-by: Jared-Fogle <35135081+Jared-Fogle@users.noreply.github.com>
2020-11-28 12:59:11 +01:00
SkyratBot
e7b9972087 [MIRROR] tgui: Stacking Machine Console and Safe UI fix (#1866)
* tgui: Stacking Machine Console and Safe UI fix

* frds

Co-authored-by: Arkatos1 <43862960+Arkatos1@users.noreply.github.com>
Co-authored-by: Gandalf <jzo123@hotmail.com>
2020-11-27 07:51:37 +00:00
SkyratBot
18bdebef43 Merge type variable fixes and unit test (#1867)
Co-authored-by: Arkatos1 <43862960+Arkatos1@users.noreply.github.com>
Co-authored-by: Gandalf <jzo123@hotmail.com>
2020-11-27 07:46:43 +00:00
SkyratBot
3bf844af89 [MIRROR] Fixes cyborgs in general replenishing stack modules from external sources (#1846)
* Fixes cyborgs in general replenishing stack modules from external sources (#54935)

* Cyborg stack fix

- Makes cyborgs capable of recycling floor tiles again

* Touches up module code

- Makes module code slightly more OOP-compliant
- Speeds up module creation by an imperceptable amount
- Reworks how borg modules handle stacks

* Fixes cyborgs in general replenishing stack modules from external sources

* Update robot_modules.dm

Co-authored-by: TemporalOroboros <TemporalOroboros@gmail.com>
Co-authored-by: Gandalf <jzo123@hotmail.com>
2020-11-27 07:28:50 +00:00
SkyratBot
65368300d2 [MIRROR] Refactors Pastries into newfood. (#1824)
* Refactors Pastries into newfood. (#54996)

Co-authored-by: Jared-Fogle <35135081+Jared-Fogle@ users.noreply.github.com>
Co-authored-by: Floyd <Floydje123@ hotmail.com>

* Refactors Pastries into newfood.

* Update collars.dm

Co-authored-by: ArcaneMusic <41715314+ArcaneMusic@users.noreply.github.com>
Co-authored-by: Jared-Fogle <35135081+Jared-Fogle@ users.noreply.github.com>
Co-authored-by: Floyd <Floydje123@ hotmail.com>
Co-authored-by: Gandalf <jzo123@hotmail.com>
2020-11-25 01:02:00 +00:00
SkyratBot
7d653f1f6b [MIRROR] Moves grown food to newfood (#1794)
* Moves grown food to newfood (#55040)

Moves grown food to newfood
Gives trash element support for callbacks for item creation override

* Moves grown food to newfood

Co-authored-by: Qustinnus <Floydje123@hotmail.com>
2020-11-23 22:35:35 +00:00
SkyratBot
8158c64115 [MIRROR] minor material_container args/vars refactor and Mk-honk shoes peeve. (#1755)
* minor material_container args/vars refactor and Mk-honk shoes peeve. (#54863)

My original intention was just fixing an issue with the Mk-honk banana shoes but, considering I didn't want to add two new variables to a component with already lot of args and lengthy AddComponent() calls in term of text, I had to merge some TRUE/FALSE variable/args into the breakdown_flags bitfield (now named mat_container_flags) in the process.

* minor material_container args/vars refactor and Mk-honk shoes peeve.

Co-authored-by: Ghom <42542238+Ghommie@users.noreply.github.com>
2020-11-21 16:20:29 +00:00
SkyratBot
186f4bd4c2 [MIRROR] Fixes a few bugs with greyscale stacks. (#1670)
* Fixes a few bugs with greyscale stacks. (#54858)

    Fixes greyscale floor tiles merging regardless of their materials.
    Fixes greyscale floor tiles voiding materials when splitting the stack.
    Fixes greyscale floor tile stacks being created with no mats_per_unit and only enough custom materials for a single unit.
    Fixes greyscale tile flooring being created with the wrong amount of materials.
    Fixes greyscale tile flooring not producing floor tiles/producing floor tiles with 0 units.

* Fixes a few bugs with greyscale stacks.

Co-authored-by: TemporalOroboros <TemporalOroboros@gmail.com>
2020-11-11 02:51:23 +00:00
SkyratBot
4af1148b13 [MIRROR] Non-human mobs can now benefit from held id cards and economy. (#1603)
* Non-human mobs can now benefit from held id cards and economy. (#54647)

* Non-human mobs can now benefit from held id cards and economy.

* Moved these getters toward the upper end.

* oui?
...
dump eet.

* .tee pump
      ...
     ?iuo

* Non-human mobs can now benefit from held id cards and economy.

Co-authored-by: Rohesie <rohesie@gmail.com>
2020-11-07 05:08:36 +00:00
SkyratBot
17e033011a [MIRROR] [s] Fixes gulag bypassing exploit. (#1571)
* big mistake comrade (#54781)

* [s] Fixes gulag bypassing exploit.

Co-authored-by: Krysonism <49783092+Krysonism@users.noreply.github.com>
2020-11-05 00:13:44 +00:00
SkyratBot
c66b17a120 [MIRROR] Adds Rod of Asclepius and mini-meteors inhand. (#1543)
* Merge pull request #54729 from ArcaneMusic/flowerfix

Adds Rod of Asclepius and mini-meteors inhand.

* Adds Rod of Asclepius and mini-meteors inhand.

Co-authored-by: ShizCalev <ShizCalev@users.noreply.github.com>
2020-11-02 18:45:01 +01:00
Gandalf
f9e3b58ecd Aesthetic Overhaul V3.0[SEMI-MODULAR][READY] (#1245)
* Begin

* few fixes

* WINDOWS

* Update airlock.dm

* Update status_display.dm

* Fixes plus rusty walls.

* Update walls.dm

* air alarm, intercom, apc updates, plasma windows, tinted, firealarm(todo)

* Update airlock.dm

* FINALLY FIXES THE DOORS

* Update airlock.dm

* firealarm and fixes.

* fixes

* mining vendor and washing machine

* firedoor

* blastdoor

* firealarm sound, shutters sound, blast door sounds.

* Delete window.dm

* Revert "Delete window.dm"

This reverts commit 4737c539eb9b49a526c784f45161c3189505ac57.

* fixes

* Update 2.0

newscaster DONE
bookshelf DONE
disposals chute DONE
chairs DONE
stools DONE
beds - Will upgrade later.
requests console DONE
light switch DONE
roller bed DONE
nanomed DONE
extinguisher cabnets DONE
extinguishers DONE
buttons
shield generators DONE
space heater DONE
emitter DONE
field generator DONE
rad collector DONE
cameras DONE
morgue units DONE
watercooler
bench Will upgrade later
E-N (corgi) port? Will do later.
plastic flaps Done
Guns - later

* fiox

* l o g i c

* Update extinguisher.dm

* V2.5

* racks and fixws

* computer typing noise

* gun sprite updates

* Update guns.dmi

* air alarm light mask

* better light overlays

* floors!

* gaygun, bench

* lasergun sounds - remove gun balance.

* no decals.

* Update intercom.dmi

* better directionals

* lasercannon, nucgun,

* Update laser.dm

* aaa

* aaa

* some sprite updates

* aaa

* shotgun suppressor+sound

* Update airlock.dm

* Update shieldgen.dmi

* chair fix, tools too.

* Update chairs.dmi
2020-11-01 16:35:39 +01:00
SkyratBot
119dd2ea3d [MIRROR] Basepixels (#1512)
* Basepixels (#54652)

* Basepixels

Co-authored-by: Rohesie <rohesie@gmail.com>
2020-10-30 17:30:11 +00:00
SkyratBot
0afaaa89d1 [MIRROR] rad_insulation component is now an element. (#1496)
* rad_insulation component is now an element. (#54625)

* rad_insulation component is now an element.

Co-authored-by: Ghom <42542238+Ghommie@users.noreply.github.com>
2020-10-27 22:51:52 +00:00
SkyratBot
6ecaa9a994 [MIRROR] Standardizes attack chain signal returns and fixes a tk bug (#1409)
* Standardizes attack chain signal returns and fixes a tk bug (#54475)

The attack chain is a bit of a mess, and the introduction of signals hasn't helped in simplifying it.

In order to take a step into untangling this, I re-ordered the attack signals to no longer be by source type and instead to be grouped more modularly, as they are all members of the attack chain and function similarly. They all share the trait of potentially ending the attack chain via a return, but had several different names for it. I joined it into one.

Additionally, fixed a tk bug reported by @ Timberpoes by adding a signal return check at the base of /mob/proc/RangedAttack

Lastly, removed the async call of /datum/mutation/human/telekinesis/proc/on_ranged_attack, which was added as a lazy patch to appease the linter complaining about a sleep on a signal handler (namely in /obj/singularity/attack_tk). Fixed the problem using timers.

Also cleaned some code here and there.

* Standardizes attack chain signal returns and fixes a tk bug

Co-authored-by: Rohesie <rohesie@gmail.com>
2020-10-21 07:39:32 +02:00
SkyratBot
28472fa8f3 [MIRROR] Moves screen objects from mob to hud (#1336)
* Moves screen objects from mob to hud (#54400)

This moves screen images from icons/mob to icons/hud
Makes more sense and it is easier to find

* Moves screen objects from mob to hud

* Update radial.dm

Co-authored-by: nicbn <nicolas.nattis@gmail.com>
Co-authored-by: Azarak <azarak10@gmail.com>
2020-10-16 03:37:54 +02:00
SkyratBot
b8d9874c27 [MIRROR] Converts all A && A.B into A?.B (#1292)
* Converts A && A.B into A?.B (#54342)

Implements the ?. operator, replacing code like A && A.B with A?.B

BYOND Ref:
When reading A?.B, it's equivalent to A && A.B except that A is only evaluated once, even if it's a complex expression like a proc call.

* Converts all A && A.B into A?.B

Co-authored-by: ZeWaka <zewakagamer@gmail.com>
2020-10-13 23:19:25 +02:00
SkyratBot
cae0e4cb5c [MIRROR] Adds Alloy Materials (#1228)
* Adds Alloy Materials (#53623)

Adds and implements alloy materials

Takes several materials that were mostly fluff and converts them into actual usable materials.
Messes with material code a bit to make alloys recycle back into their component materials.
Adds the alloy materials to their in-game stacks.

Materials added:
    Plasteel
    Plastitanium
    Plasmaglass
    Titaniumglass
    Plastitanium Glass
    Alien Alloy

Makes plasteel/plastitanium/plasmaglass and the rest able to have separate properties from their component materials. It doesn't make much sense that the materials used to seal off the supermatter chamber from the rest of the station would be prone to exploding when heated.

Allows for further expansion of materials, possibly including actual functional metallurgy and smelting at some point in the very distant future.

(Lemons note: Adds a regeneration component, used for alien alloy)

* Adds Alloy Materials

Co-authored-by: TemporalOroboros <TemporalOroboros@gmail.com>
2020-10-10 00:29:56 +01:00
SkyratBot
dd39e6f07e [MIRROR] Adds separate aux base access (#1084)
* Merge pull request #54049 from kriskog/auxbase

Adds separate aux base access

* Adds separate aux base access

Co-authored-by: ShizCalev <ShizCalev@users.noreply.github.com>
2020-09-30 18:47:21 +02:00
SkyratBot
ada67ac929 [MIRROR] Ports soup, snacks, icecream, salads and meat to newfood (#1074)
* Ports soup, snacks, icecream, salads and meat to newfood (#54028)

Ports soup, snacks, icecream, salads and meat to newfood

* Ports soup, snacks, icecream, salads and meat to newfood

* Update true_changeling.dm

Co-authored-by: Qustinnus <Floydje123@hotmail.com>
Co-authored-by: Azarak <azarak10@gmail.com>
2020-09-30 14:37:15 +02:00
SkyratBot
b96909fb02 [MIRROR] [READY] Refactor icon smoothing to use 8-bit bitmasking (#1053)
* Merge pull request #53906 from Rohesie/smoothing

[READY] Refactor icon smoothing to use 8-bit bitmasking

* [READY] Refactor icon smoothing to use 8-bit bitmasking

Co-authored-by: nemvar <47324920+nemvar@users.noreply.github.com>
2020-09-29 22:55:58 +01:00
SkyratBot
98568e191a [MIRROR] Enforce preserving parent proc return values across ui_act call stacks (#999)
* Enforce preserving parent proc return values across ui_act call stacks (#53964)

All ui_act procs should call parent by default. All procs should preserve the value of the parent proc when it's TRUTHY and pass it down the call stack. No UI should be interactible when its flags or state indicate it should not be, except when explicity overriden by child procs intentionally disregarding parent return values to achieve a specific goal.

* Enforce preserving parent proc return values across ui_act call stacks

Co-authored-by: Timberpoes <silent_insomnia_pp@hotmail.co.uk>
2020-09-26 17:17:59 +02:00
SkyratBot
a2511bc8bb tgui: Interface improvements (#990)
Co-authored-by: Arkatos1 <43862960+Arkatos1@users.noreply.github.com>
Co-authored-by: Azarak <azarak10@gmail.com>
2020-09-26 16:46:14 +02:00
SkyratBot
621a822227 [MIRROR] Separates mothpeople antennae into a mutant bodypart (#976)
* Separates mothpeople antennae into a mutant bodypart

* we

* Update moth_wings.dmi

Co-authored-by: ArcaneDefence <51932756+ArcaneDefence@users.noreply.github.com>
Co-authored-by: Azarak <azarak10@gmail.com>
2020-09-25 14:38:52 +02:00
SkyratBot
4b6cc9d088 [MIRROR] Arcane finishes the fight and adds all the missing belt sprites and a worn sprite Admin Tool. (#830)
* Arcane finishes the fight and adds all the missing belt sprites and a worn sprite Admin Tool. (#53305)

* Arcane finishes the fight and adds all the missing belt sprites and a worn sprite Admin Tool.

Co-authored-by: ArcaneMusic <41715314+ArcaneMusic@users.noreply.github.com>
2020-09-17 02:05:30 +01:00
SkyratBot
5831d3309e [MIRROR] Adds native chilly peppers to icebox flora. (#745)
* Adds native chilly peppers to icebox flora. (#53544)

Now, icebox has a native plant that can be picked on the surface level, where the sunlight reaches highest, and rarely seen underground, and provides you chilly peppers. Traditionally a chili pepper mutation, the theme was close enough that I felt it'd be a good fit for the map, and helps break up the monotony of the map being ice, rock, and more ice with some harvest able flora.

* Adds native chilly peppers to icebox flora.

Co-authored-by: ArcaneMusic <41715314+ArcaneMusic@users.noreply.github.com>
2020-09-11 23:15:51 +02:00
SkyratBot
1e705faa19 [MIRROR] Process procs now properly utilize deltatime when implementing rates, timers and probabilities (#709)
* Process procs now properly utilize deltatime when implementing rates, timers and probabilities (#52981)

* Process procs now properly use deltatime when implementing rates, timers and probabilities

* Review fixes

* Geiger counters cleanup

Made hardsuit geiger code more similar to geiger counter code
Geiger counters are more responsive now

* Moved SS*_DT defines to subsystems.dm

* Rebase fix

* Redefined the SS*_DT defines to use the subsystem wait vars

* Implemented suggested changes by @AnturK

* Commented /datum/proc/process about the deltatime stuff

* Send delta_time as a process parameter instead of the defines

Also DTfied acid_processing

* Dtfied new acid component

* Process procs now properly utilize deltatime when implementing rates, timers and probabilities

Co-authored-by: Donkie <daniel.cf.hultgren@gmail.com>
2020-09-09 08:19:23 +02:00
SkyratBot
3a0bbe9498 Acid Component (#53273) (#661)
Makes acid levels a component.
    Merges the acid effect object into the component.
    Reworks acids decay rates slightly.
    Rebalances xenos acid spit so that they can still melt through walls.

Misc. associated changes:

    Adds defines for a lot of the acid associated constants.
    Documents clean types and adds CLEAN_TYPE_ACID
    Adds and implements a return bitflag for COMSIG_COMPONENT_CLEAN_ACT
    Adds a looping sound for acid.
    Makes /atom/proc/acid_act return a boolean.
    Fixes waterclosets creating a new reagent holder datum every time they are used.
    Removes waterclosets regenerating reagents on-use and restricts their reaction volume to 5 units.
    Adds and implements a couple reagent signals.
    Renames a few vars so Rohesie can stop telling me to rename more vars.

Co-authored-by: TemporalOroboros <TemporalOroboros@gmail.com>
2020-09-07 03:52:59 +02:00
SkyratBot
0698a8bd61 [MIRROR] Rename orbiters list of orbiting orbiters var to something sane (#660)
* Rename orbiters.orbiters list to something sane (#53416)

* Rename orbiters list of orbiting orbiters var to something sane

Co-authored-by: Wayland-Smithy <64715958+Wayland-Smithy@users.noreply.github.com>
2020-09-06 05:56:05 +02:00
SkyratBot
3d5138261f [MIRROR] The great Spectral Blade permanent ghost trap unGBJing - 10/10 ghosts currently hate this blade (#622)
* The great Spectral Blade permanent ghost trap unGBJing - 10/10 ghosts currently hate this blade (#53324)

Fixes a bug caused by transferring an orbiter component to a parent where one already exists. Causing the old original orbiter to update the added ghosts positions when the parent moves, but not allowing them to ever break orbit and also setting the ref to null for the component on the whole due to old signals it would seem.

Also tweaks the blades use in hand ghost notification message to remove the redundant (Orbit) link.

* The great Spectral Blade permanent ghost trap unGBJing - 10/10 ghosts currently hate this blade

Co-authored-by: Wayland-Smithy <64715958+Wayland-Smithy@users.noreply.github.com>
2020-09-02 03:16:39 +02:00
SkyratBot
93fb8577b6 [MIRROR] Turns old mining "signs" into turf decals instead. (#590)
* Mining sign fix. (#53251)

Turns old mining "signs" into turf decals instead

It looks nothing like a sign, so, this just made sense.
Moved the icon from the mining survival pod walls file, to the turf decal icons file.
Replaced every instance in the maps with the new type path.

* Turns old mining "signs" into turf decals instead.

Co-authored-by: uomo <51800976+uomo91@users.noreply.github.com>
2020-09-02 02:48:29 +02:00
SkyratBot
8177144397 [MIRROR] Bring back painting arbitrary objects with spray cans (#570)
* Bring back painting arbitrary objects with spray cans (#52936)

Brings back the behavior removed from #52186 with cleaner code.

Differences in the code:

    No more explicit type checks in the spray paint code, other than a broad isobj.
    Checking for dark colors is now based on luminosity, rather than unscientifically summing all the RGB components and checking an arbitrary number.
    Removes the paintable component. This was used on one item, and its behavior is replicated in the spray can.
    Instead of checking for windows specifically and changing opacity through there, atoms can now specify through init flags whether or not they allow dark colors. Windows set this flag.
    Adds a COMSIG_OBJ_PAINTED signal. Windows use this signal to dynamically update opacity, just like how they did before.

This was a fun cosmetic feature that I'm not sure anyone had a problem with. The original reason for removal seemed to be because of code quality, and not because of negatives about the feature.

Makes canvasses unpaintable

* Bring back painting arbitrary objects with spray cans

Co-authored-by: Jared-Fogle <35135081+Jared-Fogle@users.noreply.github.com>
2020-08-30 05:25:02 +02:00
SkyratBot
ec09510459 Bools and returns super-pr (#53221) (#565)
Replaces like 70-80% of 0 and such, as a side effect cleaned up a bunch of returns
Edit: Most left out ones are in mecha which should be done in mecha refactor already
Oh my look how clean it is

Co-authored-by: TiviPlus <TiviPlus>
Co-authored-by: Couls <coul422@gmail.com>

Co-authored-by: TiviPlus <57223640+TiviPlus@users.noreply.github.com>
Co-authored-by: Couls <coul422@gmail.com>
2020-08-30 05:12:59 +02:00
SkyratBot
04cce0722d [MIRROR] Shuttle Console UI fixes (#536)
* Shuttle Console UI fixes (#53236)

* Shuttle Console UI fixes

* Labor shuttle fix

* Cleanup

* Shuttle Console UI fixes

Co-authored-by: Arkatos1 <43862960+Arkatos1@users.noreply.github.com>
2020-08-27 03:09:42 +02:00
SkyratBot
a5306924c3 [MIRROR] Makes reagent exposure methods bitflags (#527)
* Makes reagent exposure methods bitflags (#53164)

* Makes reagent exposure methods bitflags

Co-authored-by: TemporalOroboros <TemporalOroboros@gmail.com>
2020-08-26 02:37:07 +02:00
SkyratBot
ef51dfdff6 [MIRROR] tgui: Shuttle Console (#524)
* tgui: Shuttle Console (#53168)

* tgui: Shuttle Console

Co-authored-by: Arkatos1 <43862960+Arkatos1@users.noreply.github.com>
2020-08-26 01:41:58 +02:00
SkyratBot
f733bc21a8 [MIRROR] Mobility refactor and code cleanup - lacking appendages edition (#509)
* mobility refactor (#52929)

* Mobility refactor and code cleanup - lacking appendages edition

Co-authored-by: Rohesie <rohesie@gmail.com>
2020-08-25 01:34:46 +02:00
SkyratBot
3bd294f26f [MIRROR] Defines damage flags. (Hopefully without 50+ commits) (#491)
* Defines damage flags. (#53158)

* Defines damage flags. (Hopefully without 50+ commits)

Co-authored-by: TemporalOroboros <TemporalOroboros@gmail.com>
2020-08-24 22:52:31 +02:00
SkyratBot
de1f78d9a0 [MIRROR] Kills bonus ore from the ORM. (#470)
* Kills bonus ore from the ORM. (#53073)

This was a mistake, and I regret doing it.

* Kills bonus ore from the ORM.

Co-authored-by: Iamgoofball <iamgoofball@gmail.com>
2020-08-23 20:17:47 +02:00
SkyratBot
0b65cc596b [MIRROR] Overlay lighting component (#469)
* Overlay lighting component (#52413)

Sparks no longer lag, projectile beams move super smoothly, same with mobs and whatnot. This also allows for easy expansion into directional lights, field-of-view, wee-woo rotating lights or whatever.

It does have a downside: things right-clicked or checked through the alt+click tab will show the light overlay:


This is a BYOND limitation, very well worth it IMO.

🆑
add: Smooth movable lighting system implemented. Projectiles, sparks, thrown flashlights or moving mobs with lights should be much smoother and less laggy.
balance: Light sources no longer stack in range, though they still do in intensity.
/🆑

* Overlay lighting component

Co-authored-by: Rohesie <rohesie@gmail.com>
2020-08-23 20:17:12 +02:00
SkyratBot
629000e5f5 [MIRROR] Completely remove the blood contract from the game, including the blood contract antag datum. (#449)
* Completely remove the blood contract from the game, including the blood contract antag datum. (#53059)

* Completely remove the blood contract from the game, including the blood contract antag datum.

Co-authored-by: Timberpoes <silent_insomnia_pp@hotmail.co.uk>
2020-08-21 14:16:45 +01:00
SkyratBot
e65a48e91f [MIRROR] Adds SIGNAL_HANDLER and SIGNAL_HANDLER_DOES_SLEEP to prevent signal callbacks from blocking (#430)
* Adds SIGNAL_HANDLER and SIGNAL_HANDLER_DOES_SLEEP to prevent signal callbacks from blocking (#52761)

Adds SIGNAL_HANDLER, a macro that sets SHOULD_NOT_SLEEP(TRUE). This should ideally be required on all new signal callbacks.

Adds BLOCKING_SIGNAL_HANDLER, a macro that does nothing except symbolize "this is an older signal that didn't necessitate a code rewrite". It should not be allowed for new work.

This comes from discussion around #52735, which yields by calling input, and (though it sets the return type beforehand) will not properly return the flag to prevent attack from slapping.

To fix 60% of the yielding cases, WrapAdminProcCall no longer waits for another admin's proc call to finish. I'm not an admin, so I don't know how many behinds this has saved, but if this is problematic for admins I can just make it so that it lets you do it anyway. I'm not sure what the point of this babysitting was anyway.

Requested by @optimumtact.
Changelog

cl
admin: Calling a proc while another admin is calling one will no longer wait for the first to finish. You will simply just have to call it again.
/cl

* Adds SIGNAL_HANDLER and SIGNAL_HANDLER_DOES_SLEEP to prevent signal callbacks from blocking

Co-authored-by: Jared-Fogle <35135081+Jared-Fogle@users.noreply.github.com>
2020-08-19 20:17:28 -04:00
SkyratBot
42da7ac369 [MIRROR] Reworks the Hierophant Club as a general utility item and removes attacks. (#409)
* Reworks the Hierophant Club as a general utility item and removes attacks. (#52880)

This PR reworks the Hierophant Club into a utility item. Mining? Gone. Attacks? Gone.

In their place? 5-tile range point-and-click instant teleport similar to the ninja. Max charge is 1. Recharge time is 15 seconds.

With the removal of this bloat, the item is now small enough to fit in the average backpack.

The hiero club establishes itself as the entry-level megafauna drop from the entry-level megafauna.

* Reworks the Hierophant Club as a general utility item and removes attacks.

Co-authored-by: Timberpoes <silent_insomnia_pp@hotmail.co.uk>
2020-08-19 04:53:26 +02:00
SkyratBot
2e5de54f90 [MIRROR] Deconstruct ore silo (#375)
* deconstruct silo (#52923)

* Deconstruct ore silo

Co-authored-by: NightRed <nightred@gmail.com>
2020-08-17 23:32:48 +02:00
SkyratBot
cbbbc0d5d3 [MIRROR] Small TGUI tweaks and fixes (#353)
* Small TGUI tweaks and fixes (#52955)

* LaborClaimConsole cleanup

* UI tweaks

* Small TGUI tweaks and fixes

Co-authored-by: Arkatos1 <43862960+Arkatos1@users.noreply.github.com>
2020-08-15 23:04:33 +02:00
SkyratBot
49f7becb88 [MIRROR] Personalized combat messages part 2 (#334)
* Personalized combat messages part 2 (#52890)

Adds more "personalized" combat messages for all participants in a fight: the attacker, the victim and the spectators

* Personalized combat messages part 2

* Update misc.dm

Co-authored-by: kingofkosmos <riki.sundberg@gmail.com>
Co-authored-by: Gandalf <jzo123@hotmail.com>
2020-08-14 23:29:15 +02:00
SkyratBot
2b820a06d0 [MIRROR] Fixes lattice and operating table smoothing. (#340)
* Merge pull request #52920 from CRITAWAKETS/test-ur-peearrs

Fixes lattice and operating table smoothing.

* Fixes lattice and operating table smoothing.

Co-authored-by: ShizCalev <ShizCalev@users.noreply.github.com>
2020-08-14 01:21:12 +01:00
SkyratBot
a140fb7408 [MIRROR] fixes goliath tentacle crusher trophy not working (#338)
* fixes goliath tentacle crusher trophy not working (#52893)

it checked for health - max health instead of max health - health, so it would never pass the > 0 check and even if that wasnt a thing it would just heal

* fixes goliath tentacle crusher trophy not working

Co-authored-by: Fikou <piotrbryla@onet.pl>
2020-08-13 22:40:24 +02:00
SkyratBot
289930f2a1 [MIRROR] Icon smooth refactor (#327)
* Icon smooth refactor (#52864)



    bitflag list construct added: an associative list of bitflags for cheap and quick element comparison between two lists using the same system.

    canSmoothWith list turned into a bitflag list.

    smoothing_groups list added to substitute the type path list.

    smoothing procs turned into atom procs, refactored and optimized a bit.

    smooth directions redefined in order to fit in 8 bits for a future smoothing system

    some variable names changed, foreseeing a second smoothing system

    SMOOTH_OBJ flag added, for things that need to scan turfs for smoothing. The old locate() optimization has the risk of returning false negatives by finding a child and returning null while there might be one of the wanted type as well, as it doesn't match the type exactly.

    SMOOTH_TRUE and SMOOTH_MORE condensed into SMOOTH_CORNERS. The old behavior can be replicated using smoothing groups without loss.

    Does very minor code cleanup.

    Processing-wise didn't find a noticeable difference. The system loses on init a bit by setting the bitflag_lists, and by scanning whole turf contents for object smoothing (increasing accuracy), and gains by making less checks per target to smooth, through the same bitflag_lists.

    Memory-wise there should be a small improvement, given that on the old system we had 63512 canSmoothWith lists (a few typelists, most unique), and on this new system canSmoothWith + smoothing_groups are both bitflag_lists from the same pool, totaling 46 in number.

Could be tested a bit to see if I missed any icons not properly smoothing.

* Icon smooth refactor

Co-authored-by: Rohesie <rohesie@gmail.com>
2020-08-13 05:23:53 +02:00