Commit Graph

523 Commits

Author SHA1 Message Date
TiviPlus 0eaab0bc54 Grep for space indentation (#54850)
#54604 atomizing
Since a lot of the space indents are in lists ill atomize those later
2020-11-30 12:48:40 -05:00
Arkatos1 ead0e859db Merge type variable fixes and unit test (#55173)
This PR fixes a case where certain materials caused issues when working with stacking machines, because they did not have set merge_type from the get go, which meant that initial() of that variable returned null.

To clarify further - if /obj/item/stack does not have set merge_type, it is generated merge_type upon Initialize(), which is the same as its typepath. For example, currently /obj/item/stack/sheet/bluespace_crystal does not have any merge_type set, and it is given merge_type = /obj/item/stack/sheet/bluespace_crystal upon Initialize(). Each Initialize(). Again and again.

There are quite a bit of these cases in the codebase, especially if its some older code. I have gone through them and set all of them their set merge_type, which they would inevitably receive anyway upon initializing and it fixes a bug mentioned above.

To prevent this happening again, I have also included unit test to check if merge types are set for stacks, included exceptions are usually abstract paths like /obj/item/stack/sheet/mineral, which contains zero behavior on its own and does not spawn unless done via admin tools.
2020-11-26 21:05:52 -05:00
Ghom 4c31b0e116 CanUseTopic() refactor. (#54747)
* CanUseTopic() refactor.

* Forgot about default_can_use_topic. Tested and working.

* Update bin.dm

* no-nonsense.
2020-11-25 13:12:12 +01:00
Ghom ad1c717eac Construction icon states for multiz disposals and another peeve. (#54861)
Title. Also added handle_atom_del to disposal machines/pipes in the case the stored construction part is somehow deleted.
2020-11-09 09:00:17 -03:00
TemporalOroboros edd6500d78 /obj/screen --> /atom/movable/screen (#54403)
Repaths screen objects to /atom/movable
2020-11-08 23:07:15 -03:00
Ghom 2fb34c1ca8 Fixing GBJ cases where the disposal holder is forcemoved outside a pipe. (#54643)
Title. Also turned movable/pipe_eject() into a comsig, since it was used only for gibs.
2020-11-07 01:26:31 -03:00
Rohesie c07df08690 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.
2020-10-21 05:42:38 +01:00
spookydonut cfd08435d5 Fix incorrect Initialize arguments again (#54123)
Fixes #54013 because loc is not the second arg
2020-10-01 21:49:20 -07:00
antropod c000785bad Conveyor switch tool interaction (#54022)
Adds conveyor belt switch interaction with screwdriver allowing to construct one way conveyor belt switches
and interaction with wrench allowing to reverse direction of conveyor belt switches.
Those options were available only in map editor, now you can use them in game.
Examine message is adjusted to show which tools you can use.
2020-09-29 06:28:29 -03:00
spookydonut 4157b13132 Fixes incorrect Initialize() arguments (#54013) 2020-09-28 19:02:46 -03:00
Timberpoes 1f23cc281d 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.
2020-09-26 11:52:39 -03:00
TiviPlus c35008b1b0 Optimizes Conveyors (#53220)
Less proc overhead
Made the actual moving speedier
removed a unused var
2020-09-19 10:37:15 -03:00
Donkie 53b212ddf2 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
2020-09-08 10:24:05 +02:00
AnturK 5d8c21e2d1 Fixes spacemandmm detected for mistakes. (#53503) 2020-09-07 19:05:22 -03:00
Emmanuel S 4286263a5c Replace two instances of "peice" with "piece" (#53431) 2020-09-03 20:30:15 -07:00
TiviPlus ce3d7e2f0d Mecha refactor 2020 (#52902)
-Mechs are a vehicle subtype
-Mech equipment half-rewritten
-Mech actions completely redone
-Cooldown macros
-New movement macros & replacing all var in GLOB.diagonals with ISDIAGONALDIR(var)
-New lazylist macro
-Support for lavaland only mechs
-Removed the tank because fuck off with that hacky shit
-Documentation
-Fuckton of fixes
2020-08-29 23:33:47 -03:00
Rob Bailey 533201a9f1 Smooth Movement: Resurrection: Resurgence: Revengeance 4: The Return of Smooth Movement: Smooth Edition Director's Cut (#52515)
Automatic glide size adjustment based on move delay.
Essentially a port of https://github.com/yogstation13/Yogstation/pull/8132 but that was mostly my code with some fixes.

Why again? well it turns out the recent byond fixes to glide size actually worked and solved the issues that were unsolvable.
https://file.house/0B3u.mp4
Glide size no longer incorrectly scales at fps, so it works as intended at any framerate with the only stuttering being normal byond suck stuttering.
2020-08-27 18:34:11 -07:00
Rohesie 988319b3e3 mobility refactor (#52929) 2020-08-24 13:56:07 -07:00
TemporalOroboros 6e950daccc Defines damage flags. (#53158) 2020-08-24 08:20:33 -03:00
Rohesie 7859721611 Explosions SS runtime fix + code cleanup (#52894)
* runtime fix

* turf references are immortal
2020-08-21 21:57:29 +02:00
TiviPlus 0ab4f38605 Diagonal macro thingu (#52927) 2020-08-18 22:35:33 -03:00
Qustinnus f54de4a2b8 refactors resist act to be on atom level (#53016) 2020-08-18 20:30:44 -03:00
ArcaneMusic a6b367f8c8 Adds an metric ton of belt sprites and suit sprites for worn objects. (#52390)
* Plant Belt sprites are fixed, Engy Sprites too

* I did belt sprites until my eyes started hurting
2020-07-25 02:58:52 -03:00
ShizCalev 4b6500fb67 Makes all anchored changes use setAnchored(), COMSIG_MOVABLE_SETANCHORED now only sent if an AM's anchored var has changed for more reliable usage. (#52254)
* Converts everything to use setAnchored() + other fixes

* Fixed singulo debug

* singulo again

* forgot to move the vv_edit proc

* caught that this time :)

* changes

* Update code/game/atoms_movable.dm

Co-authored-by: Rohesie <rohesie@gmail.com>

Co-authored-by: Rohesie <rohesie@gmail.com>
2020-07-21 02:20:26 -03:00
Aleksej Komarov 0cf00a2645 tgui 4.0 (#52085)
* tgui 4.0 hyper squash

* Upgrade dependencies
2020-07-16 20:13:04 +02:00
jdawg1290 62676e72a8 Force LF line endings with gitattributes and convert repo (#52266)
Co-authored-by: Aleksej Komarov <stylemistake@gmail.com>
2020-07-16 03:02:40 +03:00
ShizCalev 254536072e [s] sanity checks vv_edit_var() values (#52255)
cl ShizCalev
fix: Added some sanity checking for varedit values.
/cl
* sanity checks vv_edit_var() values

* this should be an or

* one more fix
2020-07-16 10:20:41 +12:00
LemonInTheDark dbdb2d33fe Merge conflict begone 2020-07-12 17:37:14 -07:00
skoglol 3c30af5ddc Merge pull request #52020 from Ryll-Ryll/cronch
[READY] Vendors can tip on people thrown at them extra hard, lets you set ejection speed on disposal outlets
2020-07-12 13:59:38 +02:00
skoglol aeaf321125 Merge pull request #51922 from Tlaltecuhtli/signaler-cobeyto
conveyor switches can now be actived with signalers
2020-07-12 13:02:08 +02:00
Ryll-Ryll e5c882c80d emag flag 2020-07-11 01:23:18 -04:00
zxaber 6452cc157d Fixes the Malf borg machine's conveyors not actually moving things (or people) (#51949)
* Is the device plugged in?

* processing update
2020-07-09 20:33:39 +02:00
LemonInTheDark f59207ec83 Converts rad_flags to flags_1, holy shit why 2020-07-09 00:20:46 -07:00
Tlaltecuhtli 25d3810ca5 qdel 2020-07-08 13:34:15 +02:00
Ryll-Ryll 473bae0a20 can set speed 2020-07-04 23:07:35 -04:00
Tlaltecuhtli da23d44e82 1 2020-06-29 22:13:36 +02:00
nemvar b87f65d95e Converts ALL typepaths to lowercase (#51642)
* Case of lower

* More changes

* Ruins the nice 420 diff, brainfart when doing the second batch of conversions

* More changes

* Next batch. I think

* Converts even more paths

* Restarts bots

* Capital Free Zone

* Come on travis, do something

* Renames areas

* Bots, please stop dying

* Updates CONTRIBUTING.md and updates a few paths I missed.

* APC recgarftzfvas
/obj/item/computer_hardware/recharger/apc to /obj/item/computer_hardware/recharger/apc_recharger
2020-06-17 20:47:57 -03:00
ShizCalev 1059a64a98 I before E, except after C. (#51543) 2020-06-10 23:23:50 +02:00
nemvar 6ef421be42 Renames a few variables. Also reorders icon fallback order again. (#51060)
* Renames a few variables. Also reorders fallback order again.
Renames item_state to inhand_icon_state
Renames mob_overlay_icon to worn_icon
Renames mob_overlay_state to worn_icon_state
worn_icon_state/mob_overlay_state now never gets used for inhands.

* Fixes some comments

* Fixes map issue

* Restart lints

* Properly resolves conflicts
2020-05-25 06:47:19 +02:00
Shadark a372853d71 Fixes manually attached barcodes (#51093) 2020-05-25 01:36:00 +08:00
Iamgoofball a3aa69701a [READY] Basically, Instant Explosions 2: The Search For More Money: Eternal: A Tail Of Two Kitties: 33 1/3 (#50594)
About The Pull Request

Extools maptick stuff is in the game. Stolen from BeeStation/BeeStation-Hornet#1119, improves performance. Requires ex-tools on the server, though.

Explosions have been refactored to do the actual exploding in a subsystem.

Credit to goon.

Here's some videos!

Why It's Good For The Game
Basically instant max-caps now.
We can now give more of a tick over to the sending of map updates

Changelog

cl Goonstation Coders, Beestation, Extools devs
refactor: Explosions have been heavily optimized.
/cl
2020-04-30 10:27:53 +12:00
actioninja b5dfd8880d id to component name 2020-04-19 19:36:35 +03:00
SteelSlayer b391baeb74 Republish - Machinery processing refactor (#49307)
* initial

small thing

* improvements

1. Removes loops for picking up items. its now an item by item basis unless there is an ore box involved
2. Removed pickup_rate and ore_buffer var for the ORM, they aren't needed anymore
3. Fixed conveyors not moving items that get created on top of them (New / Initialize), by sending signals when atoms are created.

* renames the registered signal proc name so travis doesn't throw a fit

* signal improvement

* forgot to update other proc names

* ninjanomnom review changes

replace NEVER_PROCESS with START_PROCESSING_MANUALLY

default_unfasten_wrench override for ORM

50 -> 5 SECONDS

I totally didn't mispell anything

* makes a new signal: COMSIG_ATOM_CREATED

* more review changes

* duh

* even more review improvements

* switch >= to >

* reverts conveyors back to using process() for moving stuff

* various touch ups, adds documentation

* rebase to fix map conflicts with forgottenship.dmm

Co-authored-by: SteelSlayer <SteelSlayer@users.noreply.github.com>
2020-03-31 01:52:25 -03:00
Rob Bailey 2f127f8b95 More glowing stuff (#50109)
* vending machine framework

* wip

* all vending masks

* more glowing stuff

* dynamic unsetting of luminosity

* use define
2020-03-22 23:38:50 -03:00
Rohesie d74c0bfba1 Merge pull request #50012 from kingofkosmos/time_tenses_to_present
Verb time tenses to present tense
2020-03-19 16:19:49 -03:00
kingofkosmos 79c5a80ca0 Visible_messages verb time tenses changed to present. 2020-03-16 14:55:25 +02:00
Time-Green c04abab2bf [READY] Makes plumbing mappable and reworks hiding (#49644)
🆑
tweak: Ducts can now be hidden under tiles
code: tile hiding is now an element and way cooler and sexier
/🆑

Ducts can now be hidden under tiles
Plumbing machinery connects can now be hidden aswell
Plumbing can now also be properly mapped in without breaking anything
Plumbing component now uses the normal overlay systeem instead of being a weird exception

You can now add the /datum/element/undertile element to instantly make something hidable under tiles when appropriate.
2020-03-16 20:37:59 +13:00
ArcaneMusic 94f27c7b25 [READY]Arconomy: Sales Taggers, split profits on barcoded, sold items! (#49111)
* Startwork

* "Arcane: Everything works up until the export datum bullshit"

* I got up to "Split Profit" in "sell object"

* This is when I switched over to components and it STILL doesn't work

* alright stopwork for the 'night'

* So this is the version that crashes

* One step further in my descent to madness.

* Alright, this should be working (Minus maybe profit_split)

* Alright splitting up custom sales splits is broken right now.

* Profit split works now.

* Alright what the hell is going on here.

* Revert "Alright what the hell is going on here."

This reverts commit 6cb3b6eb56ea45ede3496bbe219ca18302c806e2.

* Oh wait, I can do commit messages through VSC?

* Adds a quick little box with all the shipping supplies you'll ever want, unwrapping signal

* Added shipping box to all maps and the service/cargo lathes.

* Fuck you mapmerge hook you ain't shit

* Alright, yet another take of making it get rid of the pricetag

* [3:43 PM] oranges: anturk is smart (This is true)

* Tested, cleaned up component procs,  and limits signals sent a bit.

* Whoops

* Other comments from Ninja over discord

* Left in a comment line.

* Fixes the issue with ind. barcodes, adds examine.

* Well thank GOD the children wern't there to see it

* Adds a do_after to prevent accidents.

* Fixes merge conflicts

* Fixes merge conflict. Twice in one day.

* Fixes merge conflict.

* one tiny bit of documentation

* Travis play nice.
2020-02-25 20:42:01 +08:00
JJRcop a1392847bd Remove ismovableatom macro (#9) 2020-02-17 15:03:16 +01:00
Rohesie 7bef84f009 Mass-replacement of stat to machine_stat (#48758)
Living and machine stat vars are pretty different, one uses flags and other number-defines.
This should make some other mass-replacements and searches a bit easier.
2020-01-24 12:37:17 +13:00