Commit Graph

53 Commits

Author SHA1 Message Date
SkyratBot
357150d50e [MIRROR] Change the word filter configuration to allow providing reasons, fix emotes not working in filters, and implement separate OOC/IC/PDA filters (#8406)
* Change the word filter configuration to allow providing reasons, fix emotes not working in filters, and implement separate OOC/IC/PDA filters (#61606)

* Change the word filter configuration to allow providing reasons, fix emotes not working in filters, and implement separate OOC/IC/PDA filters

Co-authored-by: Mothblocks <35135081+Mothblocks@users.noreply.github.com>
2021-09-26 14:26:51 +01:00
SkyratBot
124ddd7cca [MIRROR] tgui Preferences Menu + total rewrite of the preferences backend (#8153)
* tgui Preferences Menu + total rewrite of the preferences backend

* nah, we dont need to ping those people

* trying to remove the funny stuff

* unmodularizing this

* prefs reset

* this may need to be reverted, who knows

* okay, this part

* perhaps

* EEEEEEEEE

* unsanitary

* E

* Stage 1 + loadout system

* more fixes

* E

* I mean, it launches?

* More fixes and reorganisation

* E

* customisation code is spaget.

* disable ERP prefs

* Update erp_preferences.dm

* Update erp_preferences.dm

* E

* Slowly getting there

* It may be time for help :)

* tri...colors... help

* preferences now pass preferences

* Update dna.dm

* Fuck this man

* missing savefile return, set_species works, removed dumb stuff from updateappearance

* https://github.com/Skyrat-SS13/Skyrat-tg/pull/8199

* https://github.com/Skyrat-SS13/Skyrat-tg/pull/8224

* https://github.com/tgstation/tgstation/pull/61519

* https://github.com/Skyrat-SS13/Skyrat-tg/pull/8278

* e

* le butonAZARAK HELLO

* hhh

* Proper recognition where it's due, MrMelbert!

* EEEE

* examine block

* Better gen hit sounds from whitedream

* final loadout touches, more bug fixes im sure to come

* i said there would be bugfixes

* Update LoadoutManager.js

* Missing preferences in the html menu

* LIVE TESTING PHASE BABY

* Update LoadoutManager.js

* EEE

* LAUNCH TEST FIRE

* Update job.dm

* Update new_player.dm

* 50gb DAY ONE PATCH

* EEE

* Update preferences.dm

* buggle fixes

* Update examine.dm

* >LOOC starts on

Co-authored-by: Mothblocks <35135081+Mothblocks@users.noreply.github.com>
Co-authored-by: jjpark-kb <55967837+jjpark-kb@users.noreply.github.com>
Co-authored-by: Gandalf <jzo123@hotmail.com>
Co-authored-by: Azarak <azarak10@gmail.com>
2021-09-23 00:40:37 +01:00
SkyratBot
6b2b908b5b [MIRROR] adds infinity to vv classes (#8110)
* adds infinity to vv classes (#61302)

adds infinity as a vv option

* adds infinity to vv classes

Co-authored-by: Fikou <23585223+Fikou@users.noreply.github.com>
2021-09-11 12:16:07 +01:00
SkyratBot
f1c39adacd Added component manipulation on objects (#60771) (#7682)
Co-authored-by: Watermelon914 <3052169-Watermelon914@users.noreply.gitlab.com>

Co-authored-by: Watermelon914 <37270891+Watermelon914@users.noreply.github.com>
Co-authored-by: Watermelon914 <3052169-Watermelon914@users.noreply.gitlab.com>
2021-08-21 10:20:01 -04:00
SkyratBot
b4e301d655 Changes the input list in VV add component to tgui_input_list() (#60755) (#7665)
* Changes the input list in VV add component to tgui_input_list

* fuck

Co-authored-by: Thunder12345 <stewart@critar.demon.co.uk>

Co-authored-by: Thunder12345 <Thunder12345@users.noreply.github.com>
Co-authored-by: Thunder12345 <stewart@critar.demon.co.uk>
2021-08-20 18:53:35 +01:00
SkyratBot
b0c01e40af [MIRROR] Del The World: Unit testing for hard deletes (#7589)
* Del The World: Unit testing for hard deletes (#59612)

Co-authored-by: SteelSlayer <42044220+SteelSlayer@ users.noreply.github.com>

* Del The World: Unit testing for hard deletes

Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@users.noreply.github.com>
Co-authored-by: SteelSlayer <42044220+SteelSlayer@ users.noreply.github.com>
2021-08-17 18:58:57 +01:00
Gandalf
778a589555 Removes a lot of redundant non-modular changes and maybe fixes cleanbots (#6615)
* oof

* Update _ai_controller.dm

* no need for this anymore
2021-06-30 21:50:50 +02:00
SkyratBot
8c6ea00947 [MIRROR] Properly fix postpones in the mc. (#6524)
* Properly fix postpones in the mc. (#59813)

I broke shuttles and other things by trusting queued_time.

This fixes it better, by tracking the ticks it's suppose to miss.

closes: #59805 (this doesn't actually work anymore it seems)

* Properly fix postpones in the mc.

Co-authored-by: Kyle Spier-Swenson <kyleshome@gmail.com>
2021-06-25 22:14:55 +01:00
SkyratBot
7d1d0e1fad [MIRROR] Refactors most spans into span procs (#6315)
* Refactors most spans into span procs

* AA

* a

* AAAAAAAAAAAAAAAAAAAAAA

* Update species.dm

Co-authored-by: Watermelon914 <37270891+Watermelon914@users.noreply.github.com>
Co-authored-by: Gandalf <jzo123@hotmail.com>
2021-06-16 00:24:49 +01:00
SkyratBot
6f3b151bb8 [MIRROR] Fixes a bunch of harddels that are sourced from player action (#6252)
* Fixes a bunch of harddels that are sourced from player action

* Mirror!

Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@users.noreply.github.com>
Co-authored-by: Funce <funce.973@gmail.com>
2021-06-11 03:13:33 +01:00
Matthew J
aac40d2ed3 [TM-ONLY][DNM] Attempts to remove all instances where a list is accessed with a '?' (#5932)
* I hate TGUI even if its better than what we had before

* this is why linters exist

* you need to be a Head or the Warden to get items

* does this please you linter?

* foundation

* basic interactions

* yea I can spell okay?

* linters please leave me alone

* begone debug code

* if you are dead, no interacting

* linters leave me alone

* linters are stealing my soul

* forgot to do this

* sound framework, probably wont work though

* max length, and interaction cooldowns

* message can now be a list and minor code improve

* I am a slave and linters are my master

* fix improper static reference

* add json loading/saving functionality

* default for message is now a list

* jsonize def interactions; implement requirements

* bad

* bug fix; CtrlShiftClick to interact

* minor qol fix

* fix CtrlShiftClick and remove debug code

* haha docker has security measures

* this was painful

* why are you in this branch

* begone

* bruh

* begone

Co-authored-by: Matthew <matthew@tfaluc.com>
Co-authored-by: Matthew J <GoldenKeyboard@users.noreply.github.com>
2021-05-25 16:26:39 +01:00
SkyratBot
ea9aed5554 [MIRROR] Replace alert usage with tgui_alert (#5815)
* Replace alert usage with tgui_alert

* a

* Update observer.dm

Co-authored-by: Celotajs <81999976+celotajstg@users.noreply.github.com>
Co-authored-by: Gandalf <jzo123@hotmail.com>
2021-05-21 00:06:09 +01:00
NotRanged
5563291ed7 [semi-modular] Adds optional bluespace sparks to admin delete (#5791)
* Tested and working

* Admin only

* Adds it to buildmode too

Co-authored-by: Ranged <nickvanderkroon@gmail.com>
2021-05-20 23:36:27 +01:00
SkyratBot
c3a1b78d8f [MIRROR] Adds greyscale color selection to vending machines (#5814)
* Adds greyscale color selection to vending machines

* conflicts?

Co-authored-by: Emmett Gaines <ninjanomnom@gmail.com>
Co-authored-by: KathrinBailey <53862927+KathrinBailey@users.noreply.github.com>
2021-05-20 23:25:31 +01:00
SkyratBot
88b544e75a [MIRROR] actionninja's code now properly insults admins without any messed up spans (#5715)
* actionninja's code now properly insults admins without any messed up spans  (#59102)

* actionninja's code now properly insults admins without any messed up spans

Co-authored-by: tralezab <40974010+tralezab@users.noreply.github.com>
2021-05-15 19:51:44 +01:00
SkyratBot
74eba88158 [MIRROR] Fixes some more holes in the ref tracker (#5701)
* Fixes some more holes in the ref tracker (#58972)

* Fixes some more holes in the ref tracker

The reference tracker was failing to check null keyed assoc list entries, along with being unable to check both
lists in a list(list() = list()) pair
This resolves that, and adds some new logic to the unit test to check for this sort of thing

* Seperates the ref tracking unit test into 6 subtasks as requested

* Fixes some more holes in the ref tracker

Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@users.noreply.github.com>
2021-05-15 02:09:45 +01:00
SkyratBot
c5bf6ff695 [MIRROR] Fixes woke plushie; Adds back in a signal dropped by #45217 (#5637)
* Adds back in a signal dropped by #45217 (#59053)

* Fixes woke plushie; Adds back in a signal dropped by #45217

Co-authored-by: Emmett Gaines <ninjanomnom@gmail.com>
2021-05-13 12:49:13 +01:00
SkyratBot
42bd885efd [MIRROR] Fixes a fuck ton more harddels (#5476)
* Fixes a fuck ton more harddels (#58779)

Redoes how geese handle eating shit, it was fucking stupid and caused harddels, and while this method is technically slower in the best case, it's a fucking goose
Fixes action related harddels, I hate how they work but at least this way they won't hold refs.
Fixes the hierophont causing its beacon to harddel
Removes the M variable from megafauna actions, it was used like a typed owner and caused harddels, so I burned it
Fixes target and targets_from harddels, replaces all setters of target with LoseTarget and GiveTarget, which should help maintain behavior. I'm not sure if this breaks anything, but if it does we should fix the assumptions that code makes instead of reverting this change
Fixes more area_senstive_contents related harddels, we need to allow the mob to move before clearing out its list.
Fixes marked object harddels (I'm coming for you admin team)
Fixes a language based human harddel
Fixes managed overlay related harddels (This was just emissive blockers, but I think this is a good safety net to have. If we clear the overlay list we should clear this one as well)
Fixes bot core harddels, I hate the fact that this exists but it has no reason to know who its owner is
Adds a walk(src, 0) to simple_animal destroy, it's the best bang for the buck in terms of stopping spurious harddels. Walk related harddels aren't that expensive in the first place, since byond does the same thing I'm doing here, but this makes finding mob harddels easier, so let's go with it
I fixed another source of part harddels, I hate fullupgrade so much
Fixes all the sound loop harddels

* Fixes a fuck ton more harddels

Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@users.noreply.github.com>
2021-05-05 17:46:22 +01:00
SkyratBot
bc6c285adb [MIRROR] Advanced Greyscale Sprite Generation (#4792)
* Advanced Greyscale Sprite Generation (#58112)

* Nonfunctional greyscale code

* Functional greyscale sprites via filter

Probably going to set the icon instead later

* Switches to greyscale json config

* Adds the reference layer type and converts the other canister types

* Working previews

* Adds readme

* Fixes overlays and breaking

* Removes old canister sprites

* Removes an unused var

* Fixes tgui lints

* Removes a bunch of the old canister icon states

Yeah I need to fix relabeling as well

* Removes some debug sprites

* Sorts canister type list and breaks up base shader step

* Removes an unnecessary preview hack

* Makes prototype canister greyscale

* Properly sizes the ui

* Fills in the canister map sprite

* Adds some more warnings to layers

* Makes broken overlay more prominent

* Removes a preview var that isn't needed anymore

* Cleans up client ref in Destroy

* Cleans up the tgui window a bit

* Update GreyscaleModifyMenu.tsx

* Animates the canister falling over

* Removes a commented out line that's no longer needed

Co-authored-by: Aleksej Komarov <stylemistake@ gmail.com>

* Advanced Greyscale Sprite Generation

Co-authored-by: Emmett Gaines <ninjanomnom@gmail.com>
Co-authored-by: Aleksej Komarov <stylemistake@ gmail.com>
2021-04-10 17:59:30 +01:00
SkyratBot
1048fc554f [MIRROR] Allows admins to pick colours in VV (#4698)
* added colour picking to VV (#58173)

Co-authored-by: Thunder12345 <stewart@ critar.demon.co.uk>

* Allows admins to pick colours in VV

Co-authored-by: Thunder12345 <Thunder12345@users.noreply.github.com>
Co-authored-by: Thunder12345 <stewart@ critar.demon.co.uk>
2021-04-06 13:44:00 +01:00
SkyratBot
a3f6a41ee9 [MIRROR] Ref Tracking: Revengance (#4413)
* Ref Tracking: Revengance (#57728)

* Ref Tracking: Revengance

Fixes reference tracking ignoring self references due to a poorly thought out tick checking system.
Fixes reference tracking ignoring the contents of assoc lists
Makes the reference tracking printouts actually describe what list the ref is in, rather then just saying "list"

Adds REFERENCE_TRACKING_DEBUG, a define which toggles tracking info for the ref tracking procs, which allows for
oversight on how the proc is working

Allows for direct calls of qdel_and_find_ref_if_fail(), makes it use ref rather then REF(), fixing it breaking
for mobs. (Ditto for the qdel hint which does the same thing)

Moves REAGENTS_TESTING out of the reftracking define block
Makes unit tests define REFERENCE_TRACKING, REFERENCE_TRACKING_DEBUG, and FIND_REF_NO_CHECK_TICK

Adds a unit test that sanity checks the reference finder proc

* Ref Tracking: Revengance

Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@users.noreply.github.com>
2021-03-26 10:30:59 +00:00
SkyratBot
b332b46b65 [MIRROR] Remove hideous inline tab indentation, and bans it in contributing guidelines (#3394)
* Remove hideous inline tab indentation, and bans it in contributing guidelines

* a

Co-authored-by: Mothblocks <35135081+Mothblocks@users.noreply.github.com>
Co-authored-by: Gandalf2k15 <jzo123@hotmail.com>
2021-02-15 15:32:02 +00:00
SkyratBot
ea7677aedb [MIRROR] Enables 514 testing on master, Removes all reliance on extools outside of maptick (#3224)
* Enables 514 testing on master, Removes all reliance on extools outside of maptick (#56724)

* Uses 514's map_cpu var when it's available

* Uses auxtools for the debugger, to supply cross verison compatibility

* Nukes extools reference tracking, reinstates the old ref tracking system

* Enables 514 testing on master, Removes all reliance on extools outside of maptick

Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@users.noreply.github.com>
2021-02-09 09:46:34 +00:00
SkyratBot
d7f054b035 [MIRROR] Refactors monkeys into a species (#2379)
* Refactors monkeys into a species

* aaa

Co-authored-by: Qustinnus <Floydje123@hotmail.com>
Co-authored-by: Azarak <azarak10@gmail.com>
2020-12-31 21:08:07 +01:00
SkyratBot
35aaa84a84 [MIRROR] Filterrific! (#2233)
* Filterrific!

* a

Co-authored-by: Rob Bailey <actioninja@gmail.com>
Co-authored-by: Azarak <azarak10@gmail.com>
2020-12-19 06:29:54 +01:00
SkyratBot
e881d55ba4 [MIRROR] Extends the IC chat filter to be checked in two major renaming procs (#2015)
* Extends the IC chat filter to be checked in two major renaming procs (#55217)

About The Pull Request

Honestly, I'm not sure this is the... Correct solution? But people more familiar with this will likely show me da wae.

Prohibits creating names that can't actually be spoken in-character due to chat filters by adding CHAT_FILTER_CHECKs to the procs that handle sanitising them.

For admin-utilised renaming procs, they'll be given a simple alert box to warn them their chosen name contains words prohibited by the IC chat filter and be allowed to confirm or cancel out.
Why It's Good For The Game

If you can't speak the name IC, chances are the name shouldn't be allowed at all. Players may occasionally be forced to ahelp certain names because they contain words prohibited in chat filters.

* Extends the IC chat filter to be checked in two major renaming procs

Co-authored-by: Timberpoes <silent_insomnia_pp@hotmail.co.uk>
2020-12-02 23:53:40 +01:00
SkyratBot
89a21458b5 [MIRROR] Replace tgalert with tgui_alert, a new TGUI-based alert system (#1833)
* Replace tgalert with tgui_alert, a new TGUI-based alert system

* a

* a

Co-authored-by: Bobbahbrown <bobbahbrown@gmail.com>
Co-authored-by: Gandalf <jzo123@hotmail.com>
2020-11-26 08:05:45 +00:00
SkyratBot
263bb50a31 [MIRROR] Makes the old reftracking option compile! (#1671)
* fixes a compile error in reference tracking verbs caused by an improper versioning change (#54877)

* Makes the old reftracking option compile!

Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@users.noreply.github.com>
2020-11-11 02:51:49 +00:00
SkyratBot
73007a8859 [MIRROR] Adds confirmation message for VV mass-edits (#1375)
* Adds confirmation message for VV mass-edits (#54417)

Adds confirmation message for VV mass-edits

* Adds confirmation message for VV mass-edits

Co-authored-by: Rohesie <rohesie@gmail.com>
2020-10-19 17:22:38 +01: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
77abf57467 [MIRROR] Makes vv css work on local (#440)
* Makes vv css work on local (#53067)

* Makes vv css work on local

Co-authored-by: AnturK <AnturK@users.noreply.github.com>
2020-08-20 19:02:43 -04:00
SkyratBot
e8bfe6eb68 [MIRROR] [Ready] CDN browser assets! (#312)
* [Ready] CDN browser assets! (#52681)

Rewrites the asset_cache system to handle sending assets to a CDN via a webroot.

see https://github.com/MrStonedOne/tgstation/blob/asset-cdn/code/modules/asset_cache/readme.md

Fixed a lot of bugs with assets, removed some dead code.

Changes:
    Moved asset cache code to transport datums, the currently loaded one is located at SSassets.transport, asset cache calls made before the config is loaded use the simple browse_rsc transport.
    Added subsystem call for when the config loads or reloads.
    Added a webroot CDN asset transport. assets are saved to a file in a format based on the file's hash (currently md5).
    Assets that don't use get_asset_url or get_url_mappings (such as browser assets referred to by static html files like changelog.html or static css files) can be saved to browse_rsc even when in cdn asset mode by setting legacy to TRUE on the datum returned by register_assets
    Added a system for saving assets on a cdn in a hash based namespace (folder), assets within the same namespace will always be able to refer to each other by relative names. (used to allow cdn'ing font awesome without having to make something that regenerates it's css files.).
    The simple/namespaced asset cache datum helper will handle generating a namespace composed of the combined md5 of everything in the same datum, as well as registering them properly.
    Moved external resource from a snowflake loaded file to a config entry, added it to resources.txt
    To ensure the system breaks in local testing in any situation that wouldn't work in cdn mode, the simple transport will mutate the filenames of non-legacy and non-namespaced assets and return this with get_asset_url.
    Simple transport's passive send of all roundstart assets to all clients is now a config that defaults to off. this is to break race conditions during local testings from devs accidentally relying on this instead of using send() properly.

cl
refactor: Interface assets (js/css/images) can now be managed using an external webserver instead of byond's one at a time file transfer queue.
admin: Adds admin verb toggle-cdn that allows admins to disable the external webserver asset transport and revert to the old system. Useful if the webserver backing this goes down (thanks cloudflare).
config: New config file, resources.txt, (must be loaded by an $include statement from the main config)
server: The external_rsc_urls.txt config has been moved to the main config system.
/cl
Porting notes:

Interface webpages must refer to their assets (css/js/image/etc) by a generated url, or the asset must register itself as a legacy asset. The system is designed to break in localtest (on simple/legacy mode) in most situations that would break in cdn mode.

Requires latest tgui.

The webserver must set the proper CORS headers for font files or font awesome (and other fonts) won't load.

/tg/'s webserver config: https://gist.github.com/MrStonedOne/523388b2f161af832292d98a8aad0eae

* [Ready] CDN browser assets!

Co-authored-by: Kyle Spier-Swenson <kyleshome@gmail.com>
2020-08-12 11:32:37 +01:00
SkyratBot
4209fbf095 [MIRROR] Fixes admin add component log (#286)
* Fixes admin add component log (#52840)

* Fixes admin add component log

Co-authored-by: AnturK <AnturK@users.noreply.github.com>
2020-08-11 22:46:09 +02:00
SkyratBot
ee324ab3c2 [MIRROR] Cleanup up all instances of using var/ definitions in proc parameters. (#240)
* Cleanup up all instances of using var/ definitions in proc parameters. (#52728)

* var/list cleanup

* The rest of the owl

* plushvar bad

* Can't follow my own advice.

* Cleanup up all instances of using var/ definitions in proc parameters.

Co-authored-by: Timberpoes <silent_insomnia_pp@hotmail.co.uk>
2020-08-07 18:26:21 +01:00
Rohesie
903f2d7450 Reference tracking (#52403)
* ref tracking

* legacy

* legacy procs

* fixes

* tweaks

* clarity comments

* wth
2020-07-28 05:56:57 -04:00
MCHSL
331365b422 Adds reference tracking (#51467)
About The Pull Request

Adds extools-powered reference tracking. Includes a couple procs that retrieve the back and forward references of a datum - Back references let you see what is referencing your object and potentially preventing it from garbage collecting, and forward ones show you what your object in turn references. Also made a cool GUI to inspect and follow these references.

The tracking adds some overhead to all variable sets and list operations. Init time is increased by ~15%. I haven't actually benched it so it might impact the actual game less.
Why It's Good For The Game

no lagging caused by hard dels scanning the entire planet (once coders fix them)
2020-06-25 11:26:59 +12:00
AnturK
2d1f38e100 Cleans up sensors nonsense (#51623)
* Cleans up sensor mess

* Makes refresh button work on lists in vv
2020-06-14 19:01:04 +02:00
AnturK
b8722c6c83 Datums and lists used as keys in assoc lists are now linked in vv. (#51451)
* Datums and lists used as keys in assoc lists are now linked in vv.

* Ok, uniform interface for lists.
2020-06-10 00:26:30 +12:00
AnturK
de21384476 Fixes orbit offsets and adds matrix vv preview. (#51198)
* Adds matrix vv preview and moves vv css into separate file.

* Fixes orbit offsets.
2020-05-25 02:01:41 +08:00
Rob Bailey
c20a04543b Port of Replays from Yogstation (#48579)
* demos (ported from yogstation)

rustg update + write with no format

use external hook for logging

use proper log vars

fix + clarifying comment

don't start the log

release build of rust-g

fix something caught by the lint

Update code/__DEFINES/subsystems.dm

Co-Authored-By: Jordan Brown <Cyberboss@users.noreply.github.com>

Update code/controllers/subsystem/demo.dm

Co-Authored-By: JJRcop <jrubcop@gmail.com>

Update code/controllers/subsystem/demo.dm

Co-Authored-By: JJRcop <jrubcop@gmail.com>

moves hooks out of a dedicated file

len = 0 to Cut(), remove semicolons

untyped loop

* updated rust_g

* 513 updates
2020-04-06 13:15:48 -04:00
Emmett Gaines
9e34b3d6a1 Supports named arguments in AddComponent and AddElement (#49098)
AddComponent/AddElement now support named arguments. This requires passing around an argument list instead of using actual proc args which a bit gross but we can blame byond for forcing this.

InheritComponent uses mirrored init arguments instead of an argument list which means no more accessing it via index to get to the same arguments as in init.

As a small bonus I restructured dcs defines to be a bit more manageable. Mainly just splits them into separate files and gives them their own folder.
2020-02-17 17:57:52 +13:00
MrPerson
12eecfd181 Makes raw HTML and browser datum popups UTF-8 aware (#49066)
* Makes raw HTML and browser datum popups UTF-8 aware

Admin menus specifically really shouldn't break just because you named some guy "☺s the Clown"

* Fixed new_player.dm

* Fucking filing cabinets
2020-02-01 22:14:31 +01:00
MrPerson
f7eb2c905b Unicode awareness Part 2 -- copytext() (#48512)
* Unicode support Part 2 -- copytext()

This is the transition of all copytext() calls to be unicode aware and also some nearby calls in the same functions. Most things are just replacing copytext() with copytext_char() as a terrible character limiter but a few others were slightly more involved.

I replaced a ton of
````
var/something = sanitize(input())
something = copytext(something, 1, MAX_MESSAGE_LEN)
````

with a single stripped_input() call. stripped_input() already calls html_encode(), trim(), and some other sanitization so there shouldn't be any major issues there.

This is still VERY rough btw; DNA is a mess, the status displays are complete ass, there's a copytext() in code\datums\shuttles.dm that I'm not sure what to do with, and I didn't touch anything in the tools folder. I haven't tested this much at all yet, I only got it to compile earlier this morning. There's also likely to be weird bugs until I get around to fixing length(), findtext(), and the rest of the string procs.

* Makes the code functional

* Assume color hex strings are always # followed by ascii.
Properly encodes and decodes the stuff in mob_helpers.dm which fixes some issues there.

* Removes ninjaspeak since it's unused
2020-01-18 13:07:22 +13:00
AnturK
c20b4d5ab2 Replaces lentext with length (#47585) 2019-11-07 11:42:33 -05:00
skoglol
938e66f62c Adds sorting to most input() lists (#47117)
* Adds sorting to most input() lists.

* Sorted some global lists, added more input sorting

* Should now use correct sort everywhere.

* compiles

* Last fixes.
2019-10-22 04:28:42 -07:00
nemvar
159d2ec79d Allows proper application of arguments to components via dropdown (#47112) 2019-10-19 01:15:18 +02:00
AnturK
823c09b01e Fixes list vv with numeric values (#47120) 2019-10-17 11:49:09 -04:00
Bobbahbrown
cc32c7fee1 fixes all the bugs you probably didnt know about (#46264)
About The Pull Request

As mentioned in codebus with the recent patch for circuits being able to produce any item (see BeeStation/BeeStation-Hornet#345), people often make a mistake in attempting to check if a collection does not contain an element. The proper execution of such a check, following the attempted formatting, would be...

!(x in y)

But instead we have lots of

!x in y

In other words, 1 or 0 in collection y, not good!
Why It's Good For The Game

Fixes a lot of bugs that likely nobody has ever noticed, probably introduces features that were intended but incorrectly coded. I have attempted to summarize what are probably the effects of this change below. I've moved interesting fixes to the top of this list.

    Dynamic mode ruleset should no longer ignore player preferences when selecting antagonist candidates.
    Pet carriers should now properly cancel callbacks for a mob escaping the carrier if they are no longer an occupant of it.
    Eightballs should now prevent ghosts from voting on answers that are not expected by the eightball.
    Modifying variables in view variables should now prevent you from adding a non-existent variable to a datum.
    The Herald's Beacon should no longer attempt to remove a non-existent voter from its list of users who need to vote. (Likely prevents a runtime)

Changelog

cl bobbahbrown
fix: Dynamic mode ruleset will now respect your player preferences when selecting antag candidates
code: Fixed 9 instances of incorrect not-in-list expressions.
/cl
2019-09-01 19:55:59 +12:00
oranges
968e90ba35 Merge pull request #45929 from tralezab/imgur.com/a/t97VXU7
New VV dropdown for adding components and elements to something
2019-08-21 11:45:14 +12:00
Akrilla
c5b11dc283 Adds cancel buttons to inputs (#45825)
About The Pull Request

Adds cancel buttons to input boxes that didn't have them before.
Why It's Good For The Game

Good UX.
Changelog

cl
add: More cancel buttons.
/cl
2019-08-21 11:25:41 +12:00