Commit Graph

749 Commits

Author SHA1 Message Date
cacogen
001d2ca06d Paper bins show the paper inside them (atomised) (#57907)
Co-authored-by: Mothblocks <35135081+Mothblocks@users.noreply.github.com>
2021-03-25 18:42:17 -07:00
LemonInTheDark
7f444f510e Fixes a ton of harddels (#57736)
Co-authored-by: Mothblocks <35135081+Mothblocks@users.noreply.github.com>
Co-authored-by: ShizCalev <ShizCalev@users.noreply.github.com>
2021-03-17 05:51:53 -07:00
Cimika/Lessie/KathyRyals
1a2b975ce3 Refactors pen and sleepypen attack code. (#57479) 2021-03-11 02:30:38 -08:00
spessbro
cbeb9c5be4 Refactors the paper bin behavior for dragging to pick up into an element (#57501)
* Drag pickup element for the paper bin behavior

* invokes async on put_in_hands to comply with the linter

* documented and like better names

* blackspace
2021-03-08 16:50:53 -08:00
Qustinnus
93fdfa1ab4 Adds a hotkey that puts you in throw mode aslong as you hold it (#57331)
Co-authored-by: Mothblocks <35135081+Mothblocks@users.noreply.github.com>
2021-03-08 05:17:19 -08:00
mozi_h
95ac30cbab Right-click to remove carbon-copies (#57402) 2021-03-06 17:29:09 -08:00
mozi_h
6fe4e92227 Clipboards: tgui and better functionality (#57289)
- Clipboards now use tgui
- View / write on paper on the chipboard using an attached pen
- Rename paper on the clipboard
- Attach a pen by clicking on a clipboard with one
- Attach paper by either clicking on a clipboard with some or:
- Rapidly attach paper by clicking on paper with the clipboard 🚀
2021-03-04 19:49:17 +02:00
mozi_h
a588712ca2 Refactor folder & consistency (#57400)
* refactor folder tsx

* Right-click to remove paper
2021-03-04 18:53:55 +02:00
mozi_h
71d5901da6 Folders: tgui, refactor, qol (#57320)
Snazzy new UI is always great. Makes folders more fun to use and makes it consistent with the new clipboards
2021-03-02 18:44:26 +02:00
Timberpoes
890615856e Fully implements the ID Card design document (#56910)
Co-authored-by: Rohesie <rohesie@gmail.com>
2021-02-28 19:26:45 -08:00
mozi_h
f61b0e975e Fix paper carbon invisibility and duplication (#57172) 2021-02-26 01:20:11 -08:00
Ryll Ryll
1c61ceddf5 Pens and iron rods can embed again (#57181) 2021-02-26 00:12:20 -08:00
TemporalOroboros
e4079c87b8 update_appearance (#55468)
Creates update_name and update_desc
Creates the wrapper proc update_appearance to batch update_name, update_desc, and update_icon together
Less non-icon handling code in update_icon and friends
Signal hooks for things that want to change names and descriptions
99%+ of the changes in this are just from switching everything over to update_appearance from update_icon
2021-02-19 12:06:18 -03:00
LemonInTheDark
5c22a0cfc1 Converts many proc overrides to properly use list/modifiers, lots of other smaller things (#56847)
Converts many proc overrides to properly use list/modifiers, fixes some spots where modifiers should have been passed, calls modifiers what it is, a lazy list, and cleans up some improper arg names like L, M, C, and N. Oh and I think there was a spot where someone was trying to pass M.name in as a string, but forgot to wrap it in []. I fixed that too.
2021-02-16 09:18:46 -05:00
Mothblocks
0f435d5dff Remove hideous inline tab indentation, and bans it in contributing guidelines (#56912)
Done using this command sed -Ei 's/(\s*\S+)\s*\t+/\1 /g' code/**/*.dm

We have countless examples in the codebase with this style gone wrong, and defines and such being on hideously different levels of indentation. Fixing this to keep the alignment involves tainting the blames of code your PR doesn't need to be touching at all. And ultimately, it's hideous.

There are some files that this sed makes uglier. I can fix these when they are pointed out, but I believe this is ultimately for the greater good of readability. I'm more concerned with if any strings relied on this.

Hi codeowners!

Co-authored-by: Jared-Fogle <35135081+Jared-Fogle@users.noreply.github.com>
2021-02-14 16:53:29 -08:00
LemonInTheDark
f4160f26db Converts all uses of modifiers to lazy access to avoid memes in future (#56846) 2021-02-12 15:25:31 -08:00
Mothblocks
a1046d8e37 Refactor can_inject, and introduce try_inject (#56816)
Splits can_inject into can_inject and try_inject. The latter can perform side effects, while the former cannot. Moved the show_error bool parameter to a flag that try_inject checks.

Changes the signature to can_inject(mob/user, target_zone, injection_flags). This was previously redefined in several places, making it impossible to use named parameters. This refactor now allows named parameters to be used, and thus avoiding the ugliness of TRUE, FALSE, FALSE in parameters.
2021-02-11 15:45:18 -03:00
Fikou
8d586a7cb0 Rename metal sheets to iron sheets (#56643)
It's a specific type of metal, it shouldnt just be called generic "metal".
The reagent, ore and material datum are already called iron.
2021-02-05 15:48:00 +00:00
Qustinnus
707fc287b4 Replaces intents with combat mode (#56601)
About The Pull Request

This PR removes intents and replaces them with a combat mode. An explanation of what this means can be found below
Major changes:

    Disarm and Grab intents have been removed.
    Harm/Help is now combat mode, toggled by F or 4 by default
    The context/verb/popup menu now only works when you do shift+right-click
    Right click is now disarm, both in and out of combat mode.
    Grabbing is now on ctrl-click.
    If you're in combat mode, and are currently grabbing/pulling someone, and ctrl-click somewhere else, it will not release the grab (To prevent misclicks)

Minor interaction changes:

Right click to dissasemble tables, racks, filing cabinets (When holding the right tool to do so)
Left click to stunbaton, right click to harmbaton
Right click to tip cows
Right click to malpractice surgery
Right click to hold people at gunpoint (if youre holding a gun)
Why It's Good For The Game

Intents heavily cripple both the code and the UI design of interactions. While I understand that a lot of people will dislike this PR as they are used to intents, they are one of our weakest links in terms of explaining to players how to do specific things, and require a lot more keypresses to do compared to this.

As an example, martial arts can now be done without having to juggle 1 2 3 and 4 to switch intents quickly.

As some of you who saw the first combat mode PR, the context menu used to be disabled in combat mode. In this version it is instead on shift-right click ensuring that you can always use it in the same way.

In this version, combat mode also no longer prevents you from attacking with items when you would so before, as this was something that was commonly complained about.

The full intention of this shift in control scheme is that right click will become "secondary interaction" for items, which prevents some of the awkward juggling we have now with item modes etcetera.
Changelog

cl Qustinnus
add: Intents have been replaced with a combat mode. For more info find the PR here: #56601
/cl
2021-02-04 16:37:32 +13:00
Ghom
2789501f75 Fixing yet another item that can be remotely put in hands with TK. (#55505)
I'm adding adjacency checks to paperplane folding and unfolding so the resulting item doesn't get put in hands from afar.
2021-01-03 15:12:22 -08:00
coiax
6280fa67f2 Fix observers not being able to read from afar (#55841)
From the examine() code it's clear that this was intended, just a check
in `ui_status` meant that the range check was being applied to them
anyway.
2020-12-31 17:20:55 -08:00
uomo
b679315af2 Fixes a possible oversight in photocopier code. (#55379)
I think #54336 neglected to use the icon() proc when it should have. This is a Byond proc apparently, and the rest of the code in the photocopier (and other picture related things I checked elsewhere) seems to use it when setting an image, I guess it's sort of like typecasting? So this will probably maintain consistency and prevent some weird bugs in the future
2020-12-13 19:17:14 +00:00
Jared-Fogle
7d3fd4355f Everything that uses maptext now uses the class that makes it actually readable (#55420)
Adds a MAPTEXT macro that wraps the given text in the maptext class, the thing we use for Runechat to make it so you can actually read it. Everything that sets maptext now uses this.
2020-12-10 23:25:46 +00:00
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
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
cacogen
4a339b1f41 UNIQUE_RENAME respects labels (#55121) 2020-11-24 17:52:38 +08:00
ThePotato
23806ad6fb Rotation for stamps and some other stuff for paper (#55028)
* rotation, better mouse tracking, fixed chat output for tgui paper

* revert this stuff

* made mousemove only change states

* rebuild

* fix wrapping and move all sanitization to sanitizeText
2020-11-20 04:27:08 +02:00
Ghom
91bfedcd16 Refactored 'IsAdvancedToolUser' into a macro plus relative trait. Tweaked 'can_hold_items'. (#54665)
The PR aims to allow advanced tool users to be defined by traits rather than a hardcoded proc.
Also necessary for the CanUseTopic refactor I'm working on, which will be PRed separately for atomization purposes.
This PR also fixes an inconsistency with can_hold_items (since monkeys can actually hold items).
2020-11-10 15:15:31 -03:00
TemporalOroboros
edd6500d78 /obj/screen --> /atom/movable/screen (#54403)
Repaths screen objects to /atom/movable
2020-11-08 23:07:15 -03:00
Rohesie
c55bb1b6c8 Basepixels (#54652) 2020-10-28 20:31:13 -07:00
81Denton
7c50292b03 Increases large toner cartridge capacity, adds a supply pack containing them (#54556)
This PR does two things:

    The capacity of large toner cartridges is increased from 15 to 25.
    It adds a supply pack containing large cartridges; so far the game only has a single large cartridge available on one map.
2020-10-25 00:13:36 -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
Emmanuel S
18bd7474b5 Adds the New-and-Improved Training Machine, Training Toolbox! (#54133)
Co-authored-by: Jared-Fogle <35135081+Jared-Fogle@users.noreply.github.com>
Co-authored-by: ATH1909 <42606352+ATH1909@users.noreply.github.com>
Co-authored-by: Rohesie <rohesie@gmail.com>
2020-10-16 15:56:51 -07:00
Rob Bailey
e9c1fcebaa Increases the accuracy of the photocopier (#54336)
🆑
add: Increased photocopier accuracy
2020-10-14 19:47:50 +13:00
Rohesie
3cc7733f34 Moblity refactor: hands blocked and restrained edition. (#53981)
Splits the restrained() proc into component traits: TRAIT_HANDS_BLOCKED for the general inability to use hands and TRAIT_RESTRAINED for the more specific condition that permits arrests.
    Code moved away from the update_mobility() proc so it doesn't have to wait for an update, instead changing based on events. The idea is to eventually kill that proc.
    Wrapper proc added for setting the handcuffed value so we can react to the event of it changing.
    Kills the RestrainedClickOn() proc. That is now just an UnarmedAttack(), in where the ability to use hands can be checked. Monkeys keep their bite attack and humans their self-examine.
2020-09-29 11:23:43 +01: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
ff1631b7b9 Fully removes devil and affiliated shitcode (#53612)
Its all over the place, messy, and overall a bad enough gamemode to be removed from rotation.
A rework would have to tear out everything as is so there is no reason to allow the shitcode to live beyond tripping up everything.
2020-09-23 00:46:21 +01:00
tralezab
867b5fef1e Makes Ice Box Botany Cozy as Fuck [MULTI-Z] [FUCK CABLE HUBS] (#53627)
Makes botany down a zlevel, gives them an exit so they can collect plants on the ice moon...
2020-09-13 00:50:09 +01:00
TiviPlus
ca366c3ea1 Bools and returns super-pr (#53221)
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>
2020-08-28 14:26:37 -07:00
TemporalOroboros
70d4bcaf3c Makes reagent exposure methods bitflags (#53164) 2020-08-25 16:40:15 -07:00
Jared-Fogle
9c2de42bb6 Fix signing on paper (#53121) 2020-08-23 05:12:05 -03:00
SteelSlayer
0d74626514 TGUI Photocopier (#52831)
Converts photocopier UI to TGUI.

Initially I tried to make it so you could select to make a color or greyscale copy of paper's but I couldn't really figure it out, so I decided to hide those two buttons if the inserted item isn't a photo.

Something not shown in the pictures below is that if you don't have a toner cartridge or the cartridge doesn't have enough charge, the "Copy" button is greyed out, likewise for the AI's print button.


cl
refactor: Photocopiers now use TGUI
tweak: You can insert any type of toner cartridge into photocopiers, and regardless of the currently inserted toner's charge level.
tweak: Toner cartridges can be ejected from photocopiers at any time
/cl
2020-08-14 10:24:26 +12:00
kingofkosmos
3263decaad Personalized combat messages part 2 (#52890)
Adds more "personalized" combat messages for all participants in a fight: the attacker, the victim and the spectators
2020-08-13 11:34:57 -03:00
WarlockD
6317c371c2 Various Paper bug fixes (#52470)
* Ugh too tired fix latter

* Ok think its fixed, still need to make the stamp working

* Major fixes done, but still the ui dosn't pop up once you examine the door

* Ok you can read doors now, that was annoying.

Ok we done

* Update paper.dm

oh fix

* I have DONE it! Alright

* Miner fixes on order

* Update tgui.bundle.js

* Update code/modules/paperwork/paper.dm

Sure

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

* Update code/modules/paperwork/paper.dm

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

* Alright some fixes

* Update tgstation.dme

* Revert "Update tgstation.dme"

This reverts commit 3eaa48d9fcfa2645663420165c39643c3ae5d939.

* Update tgui.bundle.js

* Update code/datums/components/honkspam.dm

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

* Update code/datums/components/honkspam.dm

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

* Update code/modules/paperwork/paper.dm

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

* Update code/modules/paperwork/paper.dm

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

* Bahhh...me..so..tired

* pointless uistate gooone

* Update tgui.bundle.js

Co-authored-by: Rohesie <rohesie@gmail.com>
2020-08-11 23:39:10 +03:00
Krysonism
35602ec6d0 [READY]syriniver nerfix / syringe projectile fix + various fixes requested by maintainer (#52019)
* syringe projectile fix

* greenman review

* oversight fix
2020-08-03 13:57:56 -04: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
Ryll Ryll
46dd89b07a [READY] Wounds part 2: Piercing wounds, dismemberment changes, housekeeping (#51786)
* pierce the heavens

* starts doing projs

* continue pierce

* before armor

* before sharpness redefine

* rename sharp defines, before further implementation

* finishing undoing atk_type back to sharpness

* neatens up sharpness defines, FALSE -> SHARP_NONE

* more piercing, removes brute damage bleed, bubblegum no longer wound

* starts letting embeds get in on the fun

* half with embed

* work on dismembering

* continued embed work

* more moving bandaging to limbs

* more dismemberment work

* removing embed pierce stuff

* tweaking bullets

* more docs and work on dismemberment

* spans, piercing, guns

* dismemberment and scar fixes

* bee changes

* bullets embedding

* more bullet and dismember work

* dismemberment, surgery, piercing, formaldehyde,

* pleases travis

* pierce smite

* nicer on blood

* Auto stash before rebase of "tgstation/master"

* more neatening

* wounds only consider up to 35 damage, wounds on l6 and 762

* updates hulk

* balance

* defines

* lower slug to 50 brute to accommodate wounds

* adds differentiation for having flesh/bones/both in mobs

* moves scar descs to json, renames organic_state

* excises removed healing skill

* fixes logs, inconsistencies, some balance changes

* untab

* slight compress

* a

* kills pointed global list

* dmdoc

* halfway through roh

* finishes roh review

* okay NOW i finished roh's reviews

* roh roh roh your boat

* gently down the stream

* global lists

* list ops, fix scanner for bone gel improvised fix

* travis moment

* sounds added and moved

* pellet clouds can join the fun fully, slight gun balancing for wounds

* doc moment

* unconflicts myself

* update hulk

* Update code/_onclick/item_attack.dm

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

* crying ascii face

* final rohview

* oops

* final final

Co-authored-by: Rohesie <rohesie@gmail.com>
2020-07-23 23:19:30 -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
ArcaneMusic
911e702540 Adds a simple payment component, photocopiers now cost 5 credits to make copies each. (#51944)
* Take 1, initial mediocity

* Stonks

* I'm working on it don't stale me

* HOOOOOOO adjusts the photocopier, extends component functionality to the medical kiosk, etc etc/

* Fixes that one bug with printers.

* Removes an unused var.

* Makes defines

* I am a champion

* Moves econ defines over... econ defines.

* Forgot the comment.

* How about now?

* Accidently excluded payments from the dme.

* Slight text tweaks, also checkmark.

* updates economy defines.

* Apply suggestions from code review

Review Commits pre-cleanup

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

* Post-Fixes from review.

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

* Upgrade dependencies
2020-07-16 20:13:04 +02:00