Commit Graph

156 Commits

Author SHA1 Message Date
Killian c346085d2f Fix up critter holes (#19239)
* Fix up critter holes

* Fix up critter holes

* pai rewrite compat

* Update unified_ghost_hole.dm

* works fine for me

* explicit glow effect

---------

Co-authored-by: Kashargul <144968721+Kashargul@users.noreply.github.com>
2026-03-09 00:31:52 +01:00
Cameron Lennox d5849910e5 Begin clickcode attack_self fix (#18797)
* Begin clickcode attack_self fix

Begins the work to make everything call back to parent for attack_self so that signals are sacred.

* Makes MORE things call the attack_self() parent

Yes, I could make special_handling a var on obj/item HOWEVER i want it to be specific so it can be tracked down later and ONLY the objects that use it can be refactored instead of sitting there literally forever and it just becoming 'a thing'.

* Finishes making the rest of attack_self call parent.

As mentioned, things such as 'specialty_goggles' 'special_handling' and the such are only there to help with attack_self until the attack_self is recoded for those items.

* begone foul demon

* some more cleanup

* These

* GOD this was annoying

* yeh

* Fix this

* fLARES

* Thesee too

* toys!

* Even more!

* More fixes

* Even more

* rest of em

* these too

* Update syndie.dm

* hardref clear

* Update code/game/gamemodes/nuclear/pinpointer.dm

* Update code/game/objects/effects/mines.dm

* Update code/game/objects/items/blueprints_vr.dm

* Update code/game/objects/items/blueprints_vr.dm

* Update code/game/objects/items/contraband_vr.dm

* Update code/game/objects/items/crayons.dm

* Update code/game/objects/items/crayons.dm

* Update code/game/objects/items/gunbox.dm

* Update code/game/objects/items/gunbox.dm

* Update code/game/objects/items/gunbox_vr.dm

* Update code/game/objects/items/gunbox_vr.dm

* Update code/game/objects/items/weapons/gift_wrappaper.dm

* Update code/game/objects/items/crayons.dm

* Update code/game/objects/items/crayons.dm

* Update code/game/objects/items/gunbox.dm

* these too

* Update maintpanel_stack.dm

* angry warning

* Fixes packaged snacks.

Fixes improper var default.

* Special handling for these

* proper poly types

* Fixes magclaws

Makes the 'features' it had just part  of base magboots that can be adjusted via varswap.

* Fixes jackets

Fixes https://github.com/VOREStation/VOREStation/issues/18941

* Small bugfix

Makes p_Theyre properly capitialize
Makes examine show proper wording

* Update gift_wrappaper.dm
2025-12-29 13:21:10 -05:00
Will 595a4a5b18 Disposal Bin Update (#18812)
* new bins and sorter

* new disposals

* added more types

* moved to their own file

* wording

* cleanout the ugly

* use define

* even cleaner

* oop

* spellcheck

---------

Co-authored-by: Cameron Lennox <killer65311@gmail.com>
2025-11-25 20:43:00 -05:00
Will 1dfae07494 Machine var shim (#18644)
* removal of machine var

* shimsham

* deprecation warnings

* COMSIG_LIVING_HANDLE_VISION signal

* improved

* more cleanup

* more fixes

* this is fine

* fixed radios

* notices for now, tgui fix

* cleaned up hud and vision parent calls, adds COMSIG_LIVING_HANDLE_HUD

* radios use tgui now

* guestpass does not need machine anymore

* cloning machine doesn't use it

* this arcade machine is tgui too

* autolathe does not need machine

* remaining cleanup

* doc fix

* fix

* logout handling

---------

Co-authored-by: Cameron Lennox <killer65311@gmail.com>
2025-10-27 02:06:29 -04:00
Will 1fe94df762 Moves destroy_on_drop to TG style and adds signal (#18454)
* to tg style

* unify drop proc

* protection and logging on qdeleted item pickup

* prevent stripping items from the inventory menu too

---------

Co-authored-by: Cameron Lennox <killer65311@gmail.com>
2025-09-14 05:27:24 -04:00
Will 22ffba8354 Rotatable Atom Element (#18440)
* initial work

* a much better way of doing this

* these are needed

* minimize change

* nope

* missing elements

* whitespace

* species cases

* reduce pasta in ghosts

* more small fixes

* fixes for windows and inventory

* unneeded

* protected

* circulator uses examine

---------

Co-authored-by: Cameron Lennox <killer65311@gmail.com>
2025-09-14 05:02:26 -04:00
Cameron Lennox d73f6b8dbd Makes uses of do_after sane (#18334)
* Prevents insta-actions

* Do_after sanity

NOTE: NUKE do_after_action

* Update bonfire.dm

* The  rest of them

Also fixes a tpyo

* no minitest :)

* .

* .

* Gets rid of the slowdown for now

---------

Co-authored-by: Kashargul <144968721+Kashargul@users.noreply.github.com>
2025-09-08 02:25:08 +02:00
Muted Kobold f51a0f4d4d Atmospheric Device Changes, Added Volume Pump (#18261)
* Volume Pump added, Can now Connect some devices to the General Atmos Controller and Large Tank Controller

* Corrected Linting Errors. Added the ability to print tank control circuits.

* Undefined some defined as per linter.

* Code style adjustments

* fixes these

* Code Standards

---------

Co-authored-by: Cameron Lennox <killer65311@gmail.com>
2025-08-28 01:12:44 +02:00
Selis 28e969778c code/global.dm => code/_global_vars/ (#17244)
* 1

* Full conversion

* .

* .

---------

Co-authored-by: Kashargul <144968721+Kashargul@users.noreply.github.com>
2025-04-21 05:55:25 -04:00
Kashargul 4f8e9f7ef8 some more new to init (#17231)
* some more new to init

* rigs

* rigs

* intellisense moment

* telcoms and landmarks

* fix that as well

* some more minor things

* re add missing message

* fix trash eating...
2025-03-01 13:39:52 -05:00
Kashargul f9e7b44dae cleans up INIT (#17130)
Co-authored-by: Selis <12716288+ItsSelis@users.noreply.github.com>
2025-02-13 23:28:01 +01:00
Kashargul 0436afea65 some dropped sanity 2025-01-06 21:14:40 +01:00
Kashargul 49d89c0059 usr to user up to player effects 2024-11-12 00:10:20 +01:00
Kashargul d40bfe9d08 also fix those 2024-10-04 23:03:01 +02:00
Kashargul a2c673ab7a refactors most spans 2024-10-02 21:10:31 +02:00
Guti 409aaba802 Remove 2024-09-09 02:36:53 +02:00
Nadyr 90720f8a67 Various fixes (#16176)
-Patches map-spawn random objects inside loot piles
-Adds counter-clockwise rotation to many objects
-Prevents borers from crashing VR
-Tweaks blood drying to not queue dry timers on mapload
-Prevents adding grabs to crates
-Fixes look up verb when outdoors
-Lets vehicles fall through open space
-Lets the cargo tug dangerously use stairs
-Fixes med/sec bot runtimes
-Fixes TECH_MAGNETS incorrect define
-Fixes damage/stumblevore procing every step when riding taurs/borgs while confused
2024-08-12 05:20:18 +10:00
Drathek 7c8bb85de3 Whitespace Standardization [MDB IGNORE] (#15748)
* Update settings

* Whitespace changes

* Comment out merger hooks in gitattributes

Corrupt maps would have to be resolved in repo before hooks could be updated

* Revert "Whitespace changes"

This reverts commit afbdd1d844.

* Whitespace again minus example

* Gitignore example changelog

* Restore changelog merge setting

* Keep older dmi hook attribute until hooks can be updated

* update vscode settings too

* Renormalize remaining

* Revert "Gitignore example changelog"

This reverts commit de22ad375d.

* Attempt to normalize example.yml (and another file I guess)

* Try again
2024-02-20 11:28:51 +01:00
Heroman 9a94306585 Refactors tool typechecks, refactors transforming tools, makes Altevian wrench into one 2023-10-01 09:34:43 +10:00
Novacat 1aa4c73e8d Revert "[MIRROR] /atom New() => Initialize() [MDB IGNORE]" 2022-08-27 08:49:56 -04:00
MistakeNot4892 3f9af78f3a /atom New() => Initialize() [MDB IGNORE] 2021-11-14 03:09:51 -05:00
FartMaster69420 3bb8e5bb2f Fixes HE Pipes
HE Pipes are no longer invisible
2021-11-10 13:43:54 -05:00
Aronai Sieyes e52031d6aa Make stack amount var private 2021-08-19 21:06:46 -04:00
Sym ed7f4b9e75 Fixes corrosive acid, makes most important things unacidable
Makes pretty much anything important to the crew unacidable, fixes how acid interacts with floors.
2021-08-14 10:49:44 -04:00
MarinaGryphon a843667af3 Fixes a bunch of bools missed in #11100 2021-07-16 15:55:49 -05:00
MarinaGryphon 577b986ba6 Convert some bools to TRUE/FALSE instead of 1/0. (#11100)
Co-authored-by: Aronai Sieyes <arokha@arokha.com>
2021-07-16 13:43:25 -04:00
Aronai Sieyes b71c7e7271 Use material defines more 2021-07-03 18:18:05 -04:00
Aronai Sieyes 4c12504e3b Replace list inputs with tgui_input_list 2021-06-26 10:39:56 -04:00
Aronai Sieyes 0da0c54388 Convert almost all alert() to tgui_alert() 2021-06-25 17:03:35 -04:00
ShadowLarkens 3d7b051f2b Convert /material to /datum/material 2020-09-27 16:16:44 -07:00
ShadowLarkens f2d180ad09 Address a number of TGUI issues
- SmartFridge has been tweaked to look better
 - ChemMaster no longer puts the units in bottle names by default
 - Trinary filter reads last_flow_rate again
 - Operating computer now works based off percentage of health, rather
   than real health (note, a tesh at -50 won't die until -100, but it'll
   trigger the -100% alarm)
 - Clicking on the knob in the canister UI no longer brings up a number
   input too small to enter values in the valid range. For right now,
   the knob stays, but this may be reconsidered in favor of a
   NumberInput if more people would prefer accessibility over
   skeuomorphism UI design.
 - Pipe dispenser has a bent pipe option again
2020-08-14 10:55:08 -07:00
ShadowLarkens 951f37d2e3 TGUI Engineering: Squashed Edition (Commits Below)
TGUI APCs

 TGUI vending machines

 Fix AI default_tgui_interaction

 TGUI Airlocks

 Station & Atmospheric Alert TGUI + Misc NTOS-TGUI Fixes

 TGUI Air Alarms & Central Atmospheric Control

 Airlock TGUI

 TG... got rid of UI for fire alarm. í´·

 TGUI Gas Heating/Cooling System

 TGUI Gas Pump & Passive Gate + Fixes

 TGUI Omni Atmospherics

 TGUI Pipe Dispensers & RPD

 TGUI IntelliCore & Vending Fix

 TGUI Handheld Tanks

 TGUI Portable Pump & Scrubber

 TGUI Tank Dispenser & Canisters

 TGUI Radios

 TGUI SMES & Air Alarm adjustment

 Tweak vending machine interfaces a tad

 TGUI Algae Farm

 TGUI general_air_control

 - Distro & Waste Console
 - Riot Control Console
 - Atmos Intake Console
 - Engine Cooling Console

 TGUI Heavy Scrubber Control (and body scanner fix)

 TGUI trinary devices & shutoff monitor

 TGUI Telecomms Log Browser

 TGUI Telecomms Machine Browser

 TGUI Spaceheater Internal Panel

 TGUI Gravity Generator

 TGUI Id Cards & Fix ID Card Images

 TGUI Id Card Redesign

 TGUI Turbolift

 TGUI Suit Cycler & Suit Storage Unit & Vending Fixes

 TGUI Power Monitor

 TGUI Signalers

 TGUI Employment Records

 TGUI Drone Console

 TGUI RIGSuits

 TGUI PA & PACMAN, and Margin Fix

 TGUI Solar Panels & Fix Power Monitor

 Adjust TGUI modules & their interaction with NTOS

 TGUI RCON

 TGUI Message Monitor

 Bump TGUI line limit to 120 (ParadiseSS13/Paradise#14002)

 TGUI Exonet & NTNet Relay

 TGUI Telecomms Multitool Menu

 TGUI Shield Capacitor & Shield Generator

 TGUI Supermatter-everything & Refactors
2020-08-09 04:46:31 -07:00
Leshana f029c555f2 Adds the Rapid Pipe Dispenser
- Adds "paintable" flag to pipe recipes so we know if we can paint it.
- Ports the RPD from Yawn Wider.
  - Brings RPD sprites from /tg instead.
  - Slightly refactors recipes to keep type-specifc vars on subtypes.
  - Refactors RPD UI icons to use iconsheet assets: Instead of sending each individual icon to the client as needed, we declare an icon sheet asset and send the entire thing to client.  Then we just use the given CSS classes to display the icons!
- Adds icon sheet asset datum for pipe and diposals construction.
2020-05-02 19:18:10 -04:00
Aronai Sieyes b9c6107f26 Merge pull request #7513 from VOREStation/upstream-merge-7038
[MIRROR] Rewrite examine() to pass a list around
2020-04-29 18:38:26 -04:00
Atermonera 84eb15f9cc Merge pull request #7041 from VOREStation/vplk-disposal-consts
Slightly clean disposal pipe construction code.
2020-04-29 16:52:26 -04:00
Aronai Sieyes 6ebd249748 Rewrite examine() to pass a list around 2020-04-29 16:42:50 -04:00
Aronai Sieyes d3da6ae4a5 Refactor move code 2020-04-26 16:42:50 -04:00
Arokha Sieyes f0bc46cc49 Add 2 new pipe types 2020-04-05 23:05:33 -04:00
Arokha Sieyes 47ccc655db Deprecate the stream operator 2020-02-12 19:38:43 -05:00
Atermonera 9b93339969 Moar descriptions for things 2020-01-20 22:50:39 -05:00
Heroman 54be18505b Removes the leaks and related mechanics 2019-07-31 09:25:07 +10:00
Mechoid 5864447d5d Pipe Clamps, Shutoff Valves, and Leaking Tubes, oh my. (#6279)
* Pipe Clamps, Shutoff Valves, and Leaking Tubes, oh my.

* Fix processing fuckery.

* Deal with Forever-Seals, and Infini-clamps.

* Update clamp.dm
2019-07-24 04:46:28 -04:00
Neerti b9adc37685 Standardizes rotation verbs 2019-03-27 03:17:07 -04:00
Atermonera 131636b1d2 Capitalizes initialize() to Initialize() because Destroy() is capitalized and this is pretty nerve-grinding 2019-03-26 13:21:08 -04:00
Anewbe eebb627f00 Partially ports the GLOB system 2018-08-14 18:14:09 -05:00
Anewbe 729ce71aa0 Converts most istype(thing,tool) procs into an appropriate thing.is_tool() format 2018-08-02 21:45:15 -05:00
Leshana bbbf927380 POLARIS: Fix pipelayer and restore pipe pulling
Turns out borgs need pipes to be able to turn pipes by pulling them since they can't pick them up.
Also the pipe layer was broken (wasn't updated in last pipe upgrade). Now it works again!
2018-03-20 23:30:21 -04:00
Leshana 131636c6b5 Fix pipe construction conflicting with existing pipes too much.
Bug in the init_dirs_cache was not setting direction of pipes, making all cached dirs be for south.
Because mapped in pipes didn't have piping layer set, mapped in pipes conflicted.
The full-tile check for unary machines forgot to exclude *itself*
2018-03-20 23:30:05 -04:00
Leshana 776b221828 Rewrite pipe construction
- Moved pipe construction defines into __defines/construction.dm
- Unified pipe *unwrenching* by creating a standard proc along with the `construction_type` var.
- Eliminated the pipe fitting name & icon_state lookup tables by adding `pipe_state` var on atmos machinery and referencing that.
    - Each pipe which can be made from a fitting object should override `pipe_state` with the icon state to be used on the pipe fitting object.
- Eliminated the giant switch statement of doom in pipe construction by delegating that work to `on_construction` proc.
    - To make this work, every pipe must implement `get_neighbor_nodes_for_init` which returns a list of nodes which should be re-initialized on that pipe's construction.
- Combined the SCRUBBERS, SUPPLY and REGULAR pipe fitting classes together by storing the `piping_layer` variable and using the `setPipingLayer` procs
- Standardized the code for searching for node neighbors into the `can_be_node` proc.
    - This proc is also improved in that is a mutual check, `check_connectable` is called on BOTH objects, so they have to mutually agree to connect as nodes. Eliminates lots of special edge case logic.
    - Updated all the `amos_init` procs to use `can_be_node`.  In the most common cases, even that boilerplate code is consolidated into the `STANDARD_ATMOS_CHOOSE_NODE` macro.
- Implemented `pipe_flags` which lets pipes declare (or override) certain requirements.
- Adds a "pipe_recipe" datum to help out things that construct pipes.  By taking it out of the dispenser, we open the road for multiple dispenser types.  No, no RPD yet.  Soon.
    - Enhances the pipe dispenser to operate on pipe recipe datums instead of hard coded lists of pipes it can construct.   These datums are also (partially) initialized from the pipe machine types themselves, reducing having to define stuff in multiple places.
    - Switched pipe dispenser UI to use browse().   Not a NanoUI, but makes it a bit prettier with low effort.
    - Changed pipe dispenser to use a button selector to switch between Regular/Scrubbers/Supply instead of having separate list items.
- Added icon states to HE pipes to support the "connected on neither side" state.
2018-03-20 23:29:27 -04:00
Leshana ba36595263 Consolidated digital t-valves type paths.
- Because mirroring is now *much* easier to setup than digital remote control, we reverse the order of inheritance to de-duplicate all the radio code from digital t-valves!
- This requires changing the following type paths:
    /obj/machinery/atmospherics/tvalve/mirrored/digital  -> /obj/machinery/atmospherics/tvalve/digital/mirrored
    /obj/machinery/atmospherics/tvalve/mirrored/digital/bypass -> /obj/machinery/atmospherics/tvalve/digital/mirrored/bypass
- Change made on all maps.

- We can eliminate any overriden methods at all on flipped trinary devices by making a `mirrored` and `tee` variable!  This allows us to do things like flip them without delete/spawning.
- T-Valves are also basically trinary.  Sadly they are not a subtype, so to share code with them I have to put it into an outside proc.  But still worth it.
2018-02-22 15:11:55 -05:00