* TGUI upgrade project: Port initial TGUI 4.0 changes from TG (#23440)
* tgui4.0
* bugfix for un-interaction
* fix for input not resetting on close
* NTOS restore
* fix all interfaces having scrollbars, fix colours
* bundle update
* dep bumps
* bumps the deps as much as possible
* button regression fix
* TGUI test map rev 1
* fix theme and some component regression
* fix login screen regression
* fixes regression with uplink cart
* bundle
* fix regressions
* fix the input issue, again
* regression fixes, stylesheet edition, hash restore
* fixes GPS BSOD
* draggable control regression
* dev server dep regression
* byondUI regression fix
* section regression fix
* fix secure storage weirdness
* Fixed mining vendor scrolling
* Arthri review pass 1
* mining vendor double-scroll
* fix for RPD, AirAlarm, and Radio
* arthri review pass 2
* arthri review pass 3
* sanitize var setting, fix colours, delete unused file
* adds CI to branch
* god damn AI making random changes
* I should remember to compile when changes are made
* fixes scrollbar issues
* fix camera console, fix flexGrow for sections
* CI fix
* nanomap fix
* Update code/modules/atmospherics/machinery/airalarm.dm
* restore margin
* style semicolon
* TGUIv4 - Moves TGUI Window Sizing from DM to JS (#23524)
* Initial commit
* Transferring the remaining windows to JS
* Resizing part 1
* Resizing part 2
* Some reverts and polish
* Forgot that
* undeployed nuke window size
---------
Co-authored-by: Aylong <alexanderkitsa@gmail.com>
* TGUIv4: Remove force_open (#23537)
* First state fixes
* Removes "force_open"
* TGUIv4 - TGUI Version 4.1 (#23547)
* Reduced Logging Changes
* setSharedState early return for non-interactive UI
* TGUI version bump to 4.1
* Fix sending updates for non-interactive UIs
* Scalablue UI Stylesheet Changes
* CSS Tgui Bundle
* JavaScript TGUI Style Changes
* Update tgui/packages/tgui/styles/base.scss
Co-authored-by: Aylong <69762909+Aylong220@users.noreply.github.com>
* Additional changes to Input and Button scalability
* TGUI logging proc update
* Indentation fix for logging proc
* Update code/__HELPERS/_logging.dm
Co-authored-by: S34N <12197162+S34NW@users.noreply.github.com>
* Additional log_tgui changes
---------
Co-authored-by: Aylong <69762909+Aylong220@users.noreply.github.com>
Co-authored-by: S34N <12197162+S34NW@users.noreply.github.com>
* dev server hotfix (#23584)
* ui_interact object constructor argument check (#23594)
* feat: add smart asset cache, add CDN support for assets, properly group assets (#23585)
* feat: add smart asset cache, add CDN support for assets, properly group assets
* fix: make tgui actually work
* fix: keeping local name for `tgui.bundle.js` and `tgui.bundle.css` for debug and dev server functioning
* fix: make `fontawesome` assets finally work
* fix: make proper identation for `if`
* fix: add `resolveAsset` to `NanoMap.js`
* refactor: update `claw_game` and `chess` to new asset framework
* refactor/tweak: don't use string concatenation for browser `content` and `head_content`, use list instead. Don't use `common.css` for paper UI, keep local name for stamp image assets, replace hard ref of browser to `atom` (rare case) to `UID`
* refactor: remove redundant debug logs
* refactor: remove space betwee `if` and `(`
* refactor: remove one more redundant log, properly reload UI resources
* rafactor: change names of asset files
* fix: adjust existing UIs to properly use assets
* fix: properly pass args to to `onclose` proc
* Update code/modules/asset_cache/transports/asset_transport.dm
Co-authored-by: S34N <12197162+S34NW@users.noreply.github.com>
* Update code/modules/asset_cache/transports/asset_transport.dm
Co-authored-by: S34N <12197162+S34NW@users.noreply.github.com>
---------
Co-authored-by: S34N <12197162+S34NW@users.noreply.github.com>
* TGUI 4.2: TGchat + Refactor Asset Delivery + Yarn Berry (#23643)
* tgchat
* Little cleanup
* Refactor Asset Delivery (Part 2)
* Little tweaks
* fix code styling issues
* fix file name duplications
* Browser window options fix @gaxeer
* transfer valve fixes
* yarn berry initial
* vsc tasks
* yarn berry working
* node 20
* fix dev server (lol wrong yarn)
* bloody regressions
* fixes that damn scrolltracking bug
* Some tweaks and flexGrow deletions
It still doesn't work as it should, which makes me nervous
* remove unneeded deps
* 514 regression fix
* change stuff to not conflict with other servers
* name it as requested
---------
Co-authored-by: S34N <12197162+S34NW@users.noreply.github.com>
* revert test_TGUI map addition
* TGUI 4.3: Stack, Webpack 5 & UI Tweaks, Yarn 3.6.4, TS support, Jest (#23677)
* Stack & UI's Refactor
Almost final, polish required
Stack & UI's Refactor (Part 1)
Stack & UI's Refactor (Part 2)
Stack & UI's Refactor (Part 3)
* Prettier
Maybe bad
* ClearChat & some tweaks
* Adds a Chat Reliability Layer https://github.com/tgstation/tgstation/pull/79479
* Fix chat BSOD
https://github.com/tgstation/tgstation/pull/79821
* WebPack 5 (Didn't work)
I hate this shit
* Yarn 3.6.4
* make it all work
* revert snowflake fix
* Stories
* adds TS support
* re-enable test and prettier
* update yarn sdk's
* Fix some box regression
* ping/reply
* Fixes regressions and some things
* Zebra and Fix chat button transfer
+rebuild
* make VSC use the proper local typescript lib
* Popper Tooltips https://github.com/tgstation/tgstation/pull/58980
* Popper Tooltips performancy fixes
* Dropdown v2 https://github.com/tgstation/tgstation/pull/75164
Without Icon.tsx
* BB test map
* run build
---------
Co-authored-by: S34N <12197162+S34NW@users.noreply.github.com>
* we moved these
* change test values
* ignore scss files
* change hash function
* TGUIv4: TGchat fix traitor codeword highlighting (#23720)
* Codeword highlighting for TGUIv4
* null safeties
* Apply suggestions from code review
Co-authored-by: DGamerL <108773801+DGamerL@users.noreply.github.com>
---------
Co-authored-by: DGamerL <108773801+DGamerL@users.noreply.github.com>
* TGUIv4 - updates standalone build tooling (#23721)
* swap `xxhash64` for `md4`
* remove hash function
* remove old file
* TGUI 4.3+4.4: Newscaster fix, `inline-block` replacements and other fixes (#23722)
* TGUI 4.3 fixes
Newscaster fix + inline-blocks
* Be gone Box
* Mod Chat -> Mentor Chat
* Some warning filters
* Rebuild
* Delete tgui-common.bundle.js
* please work
* try it like this
* 4.3.1
* 4.3.2
* fix
* i forgot to build
* 4.4.0
* give me more diff details please so I can fix you
* its not binary pls git
* test without svgs
* removes an un-needed SVG file
* inlined SVGs test
* fix code styling
* comment these
---------
Co-authored-by: S34N <12197162+S34NW@users.noreply.github.com>
* TGUIv4 - Removes resizable and improves drag code (#23719)
* Initial commit
* bundle rebuild
* Fixes Radio Sizing
* Updates Radio sizing to fix wrapping issues
* fix dev server
---------
Co-authored-by: S34N <12197162+S34NW@users.noreply.github.com>
* fix hotkeys not being passed to BYOND
* Apply suggestions from code review
* bump deps
* forgot these deps
* ci fix
* ChemDispenser fixes and HoloControl cooldown
* Station Traits TGUI
+Rebuild
* CI
* fix CI for real this time
* I have no idea
* fix station trait panel
* Update code/controllers/subsystem/SSping.dm
Co-authored-by: DGamerL <108773801+DGamerL@users.noreply.github.com>
* Update code/controllers/subsystem/SSticker.dm
Co-authored-by: DGamerL <108773801+DGamerL@users.noreply.github.com>
* Update code/controllers/subsystem/SSping.dm
Co-authored-by: DGamerL <108773801+DGamerL@users.noreply.github.com>
* deterministic module IDs
* TGUI fixes. Again... (#23762)
* TGUI Fixes: Part 1
ORM icon for reinforced glass now showing correctly
Mining vendor moved to Stack
Exofab UI buttons descended from the heavens to the earth
* TGUI Fixes: Part 2
DestTagger now works, forgot import LabeledList
PowerMonitor graph displays correct
Request Console updated to 2.0, BUT, problem with message priority, it was there before the changes, maybe even before the project, I'll have to check it out
* TGUI Fixes: Part 2
Fixed `onEnter` input
Fixed Cloning Console storage (Im dumbass)
Some windows resizing
Fixed bad picture in security and medical records console
Fixed scrollable dropdown
Added translucent color for buttons
* Fucking uplink DONE, and Button.Input fix
* NT Recruiter and Uplink polish
* Del LabeledList from dest. tagger
* ChemMaster and OreRedemption log deletion
* Update test_tiny.dmm
* Translucent button story
* Filter for SQL error
* del: `log_debug` in `hear_say.dm`
* Some little fixes and SpecMenu Stack
* Panel.js: mx -> mr
* fix ghost spawners
* null check
---------
Co-authored-by: S34N <12197162+S34NW@users.noreply.github.com>
* fix material name in protolathe
* fix various UI interacts
* card machine runtime fix
* remove legacy folders
* TGUIv4 - TGchat Theme Adjustments (#23772)
* Initial commit
* Changes rule grouping
* Robot class style changes and webpack config
* Reverts webpack/font changes and subs robot font
* revert a state changed in error
* fix uninteractable UIs due to chunky fingers
* TGUIv4: More fixes, tweaks and fixes for tweaks (#23781)
* I fuckin hate PDA
* Vending
* Add `|` to highlight splitters and some light mode tweaks
* Teleporter rewrite
* APC and AiAirlock (God forgive me)
* clarify highlight syntax
---------
Co-authored-by: S34N <12197162+S34NW@users.noreply.github.com>
* TGUIv4 - Abductor Experiment Machine TGUI (#23776)
* Experiment Console TGUI
* Update for TGUIv4
* UI Size adjustment
* ui state and ghost attack update
* remove this
---------
Co-authored-by: S34N <12197162+S34NW@users.noreply.github.com>
* fix
* TGUIv4 - Adjustments, Fixes, and Tweaks (#23785)
* Photocopier layout adjustments
* Autolathe Text and Button spacing adjustment
* Hotkey fix for moving bug
* Removes rule sets for visited links
* Fixes ordering multiples on cargo console
* fix possible wonky json payloads
* fix admin log input list stuff
* TGUIv4: Reconnect fix and some other fixes + tweaks (#23790)
* Fix reconnecting and transfer it to TSX
* RPD polish
* RCD, AccessList, GuestPass
* Focus reset fix when camera switched. God forgive me again...
* Purple box and identation fixes
For votes and health scanner
* ChemMaster and ChemDispenser
ChemMaster - translucent pills buttons and no grow produce section
ChemDuspenser - dynamic height
* ShuttleManipulator Tabs
* RCD buttons
* make input bar mode more prominent
* fix chem master icons
* tab fix
* Properly sanitizes loaded messages in tgui chat
* TGUIv4 - Adjustments, Fixes, and Tweaks v2 (#23795)
* Fixes icon spacing for nanobank tabs
* Tweaks Dropdown styling
* Fixes sending stuff to old chat
* OpenDream TGUI fix
* Resizes Station Traits window
* Adjusts health analyzer messages for chat tabs
* Revert "Properly sanitizes loaded messages in tgui chat"
This reverts commit 4c32a7094a.
* Revert "Revert "Properly sanitizes loaded messages in tgui chat""
This reverts commit 24afa55922.
* Changes how tgui handles static data
* Reenable no-undef rule. Enable Format On Save for VSCode (#23803)
* Enable Format On Save for VSCode
* Re-enable and fix no-undef
---------
Co-authored-by: Arthri <41360489+a@users.noreply.github.com>
* pda scanner message improvements
* fix mentor/admin PMs being sent to the "unsorted" category
* fix garbled custom vote messages
* moves cyborg analyser to use chatboxes
* fixes regression
* Prevent F5 reload
* TGUIv4: Themes polish and some new ones + misc fixes (#23814)
* Little themes tweaks
* NTOS chat theme
* Update tgui-panel.bundle.js
* Capitalize themes
* Paradise theme v1.0
* Little StationTraitsPanel cleanup
* Update member_content.dmi
* NoCapitalize
* Rebuild
* Delete Paradise.scss
* Create paradise.scss
* Forgot
* Rewritten Security Records Console
For Jesus fucking christ...
* Vending and Wires sizes tweaks
* ThermoMachine
* Syndicate Theme
* Little darker
* Rewritten Medical Records Console
* PDA Nanobank fix
* Syndicate Theme Darker
* Rebuild TGUI
* Wires section grow fix
* fixes the enshittified paradise icon
* Sirryan+Warrior reviews
* bloody define comments
* comment correction
* unprivate these
* errant . begone (how did this not cause a compiler error)
* TGUIv4 - Adjustments, Fixes, and Tweaks v3 (#23807)
* Fixes ERT Manager silenced message function
* Adjusts progress bar on ExosuitFabricator
* Sets Dropdown selected to align left
* Removes the use of self_state select interfaces
* Exosuit Fabricator style adjustments
* fix sextractor UI
* remove empty tochat string
* fix human air alarm interactions
* fix modals
* add F12/IEChooser
---------
Co-authored-by: S34N <12197162+S34NW@users.noreply.github.com>
---------
Co-authored-by: Burzah <116982774+Burzah@users.noreply.github.com>
Co-authored-by: Aylong <alexanderkitsa@gmail.com>
Co-authored-by: Aylong <69762909+Aylong220@users.noreply.github.com>
Co-authored-by: Gaxeer <44334376+Gaxeer@users.noreply.github.com>
Co-authored-by: DGamerL <108773801+DGamerL@users.noreply.github.com>
Co-authored-by: Arthri <41360489+Arthri@users.noreply.github.com>
Co-authored-by: Arthri <41360489+a@users.noreply.github.com>
* TGUI pAIs
* Nukes an old template
* pAI Crew Manifest
* pAI Atmos Scan
* pAI Medical Records
* pAI Security Records + code cleanup
* pAI directives + More refactoring
* Sorts the toggles out
* pAI messenger
* WIP - Radios
* pAI radio - working
* pAI Signalers
* Nukes some arleady gone templates
* Forgot to purge this too
* pAI Door Jack
* pAI Bioscan
* Mochi tweaks
* Farie Fixes
* Spacing
* Handlers converted, now to fix 3532 compile errors
* 3532 compile fixes later, got runtimes on startup
* Well the server loads now atleast
* Take 2
* Oops
This commit changes how NanoUI's live data updating system works.
Previously, data for the template was directly gathered in the
ui_interact proc. Now, it is seperated into the proc `ui_data`.
To players, this does absolutely nothing.
To coders, this opens up the potential for a much more complicated and
fancy graphical updating system in the future, because the data is
available on-demand without ever having to call
nanomanager.try_update_ui.
Currently, to_chat is literally just a proc that does user << message.
But it'll let us do output modification in the future, especially for
something like Goon's HTML chat.
Big thanks to PJB for his to_chat script, see
https://github.com/d3athrow/vgstation13/pull/6625 for more details.
pAI has to be a special little snowflake and have it's own messenger proc instead of letting a AI-PDA handle it.
So, updated it with the newest tnote variable functionality so it can participate.
Wizards can no longer cast spells when muzzled. Fixes issue 843.
You can no longer take bags of holding or mechs to the clown planet. Fixes issue 1061.
Removed the infared sensor from the autolathe construct list. Fixes issue 1092.
- The infared sensor already does nothing, the code for it seems to have been removed ages ago, so there's no harm in doing this.
- Commenting out the define caused a few problems that I couldn't quite figure out. I'll leave it for now with a warning.
Removed the ability for pAI's to set arrest status. Dead players really shouldn't be allowed to grief people like that. Fixes issue 1093.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5060 316c924e-a436-60f5-8080-3fe189b3f50e
-Atmos delay is now based on active players, to help fight lag for massive player rounds.
-Changed some for(blah in world) loops to use the correct lists.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4958 316c924e-a436-60f5-8080-3fe189b3f50e
runtime error: list index out of bounds
proc name: attack (/obj/item/weapon/gun/projectile/russian/attack)
runtime error: Cannot read null.loc
proc name: Topic (/mob/living/silicon/pai/Topic)
I've also added Pewter to the list of spriters.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4553 316c924e-a436-60f5-8080-3fe189b3f50e
All credits to the author for this handy little script.
I Committed the modified python script to tool directory. Although it needs to be in the root folder of your repo to work.
To notice the improved compile times, in dreammaker go to Build > Preferences > and untick "automatically set file_dir for subfolders"
If this commit inteferes with any large projects just revert it, do your thing, then rerun the script. Easy-peasy.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4488 316c924e-a436-60f5-8080-3fe189b3f50e
-Almost every instance of 'for(mob in world)' has been killed. Because GODDAMN was it being run a bunch. Instead, a series of global lists have been made, and they are all handled auto-magically through New()'s, Del()'s, Login()'s, death()'s, etc...
Lists are as follows:
-mob_list : Contains all atom/mobs by ref
-player_list : Like mob_list, but only contains mobs with clients attached
-admin_list : Like player_list, but holds all mobs with clients attached and admin status
-living_mob_list : Contains all mobs that ARE alive, regardless of client status
-dead_mob_list : Contains all mobs that are dead, which comes down to corpses and ghosts
-cable_list : A list containing every obj/structure/cable in existence
Note: There is an object (/obj/item/debuglist) that you can use to check the contents of each of the lists except for cables (Since getting a message saying "a cable," x9001 isn't very helpful)
These lists have been tested as much as I could on my own, and have been mostly implemented. There are still places where they could be used, but for now it's important that the core is working. If this all checks out I would really like to implement it into the MC as well, simply so it doesn't check call Life() on every mob by checking for all the ones in world every damn tick.
Just testing locally I was able to notice improvements with certain aspects, like admin verbs being MUCH more responsive (They checked for every mob in the world every time they were clicked), many sources of needless lag were cut out (Like Adminwho and Who checking every single mob when clicked), and due to the cable_list powernet rebuilding is MUCH more efficient, because instead of checking for every cable in the world every time a powernet was broken (read: A cable was deleted), it runs though the pre-made list, and even with a singulo tearing all the way across the station, the powernet load was VERY small compared to pretty much everything else.
If you want to know how any of this works, check global_lists.dm, there I have it rigorously commented, and it should provide an understanding of what's going on.
Mob related in worlds before this commit: 1262
After: 4
I'm helping
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4179 316c924e-a436-60f5-8080-3fe189b3f50e
-Changed the class type of donuts. donut/normal is now the regular donut. All other donuts have been made this way. (I.E: donut/chaos)
-Hopefully the merged records proc will now not spit out runtimes.
-You cannot enter a name without any character now. This way you can also click on the link.
-Added some coloured caps to their respected coloured wardrobes.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4123 316c924e-a436-60f5-8080-3fe189b3f50e
-Improved the Message Monitor UI to make it easier to use.
-Added a Message Monitor in Tech Storage, hopefully so it will be used more. You will still need the key to use it.
-You need the key to turn servers on/off remotely via the Message Monitor.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4099 316c924e-a436-60f5-8080-3fe189b3f50e
- This adds a list of emoticon choices for pAIs on the pAI OS
- These choices add small overlays on top of the screen
- Credit to Willox for the code and Messycake for the sprites.
Nodrak:
pAI's with null names now get a pick(ninja_names) name instead.
- If someone wants to make it pick from a different list feel free, but having null name causes problems down the line.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4075 316c924e-a436-60f5-8080-3fe189b3f50e
pAI gets a better PDA that can actually receive messages from people. They can also instantly reply like everybody else now.
Got rid of old pAI messaging code.
pAI can toggle their receiver/signaller and their ringer.
AI Stuff
You can show the AI the notes on your PDA by holding it up to a camera.
When you show up a paper/pda to the camera the AI can now click on your name to go to you, if you're near a camera.
The AI's "track with camera" list was adjusted so that it is sorted by humans and then by other mobs. In short, the huge list of monkeys will be below the human master race.
Made the AI's PDA name look nicer.
When showing a piece of paper/your pda to a camera... people who are Unknown will not have a link; which would allow the AI to track them.
Radio/Telecomms Stuff
Made the" common server" and the "preset right receiver" listen for frequencies 144.1 to 148.9. This will allow people to use different frequencies to talk to eachother without bothering the common channel. It will also allow Revs and Cultists to work with each other; everything is still logged though so it still has risks.
Increased the maximum frequency limit for handheld radios and intercoms. It will give you the option to just use station bounced radios on a higher frequency so that anyone with a headset can't simply tune in.
All-In-One Grinder
Created an All-In-One Grinder that is suppose to replace the blender, juicer and reagent grinder altogether. Meaning any department that has a juicer, blender and grinder will instead get this. It will help people be more independent from Chemistry by recycling food and plants.
The All-In-One grinder can grind and juice. Grinding food that isn't part of a recipe will transfer the reagents of the food into the beaker. Juicing only works with certain foods.
I've updated the UI a bit, it will now tell you what's in the beaker and I made it look nicer.
Map
I removed all blenders and juicers on the station and replaced them with the All-In-One grinder!
Misc.
Added myself to the admin.txt list.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4053 316c924e-a436-60f5-8080-3fe189b3f50e
In short:
AI messaging
Time of death for health scanners
Most lists are sorted alphabetically
See http://nanotrasen.com/phpBB3/viewtopic.php?f=16&t=9220 for detailed information.
I wasn't able to test this as thoroughly as I'd like, but what I could test seems fine.
I don't forsee any issues popping up with this stuff.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@3993 316c924e-a436-60f5-8080-3fe189b3f50e
Added some WIP master controller alternatives. Located in code/WorkInProgress/carn They should stop the MC doubling up and smooth the lagspikes over a little bit (depending on how they are set up). They need a bit of work still, but are functional. Just untick code/game/master_controller.dm and tick the version you want to try out.
Committing Giacom's pai remote-signaller code.
Minor map fix for Travis (extra grille NE corner of atmos)
Added a debug tool that prints powernets into a text-based map.
Fixed a runtime that occurred everytime somebody cut a laid cable. It was updating the power networks twice each time >_>
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@3920 316c924e-a436-60f5-8080-3fe189b3f50e