Commit Graph

275 Commits

Author SHA1 Message Date
ShizCalev 8f060bb5fb Fixes PDA TK exploits 2019-02-08 03:21:36 -05:00
Tad Hardesty 3b2c0e27f7 Scope various unscoped locate() calls (#42195)
* Scope locate calls which are immediately checked against a list

* Remove silly use of locate from bible Topic

* Scope various locate calls (needs testing)

* More WIP

* Buff up lightswitches while we're here

* Tidy record browsing code

* Scope a few more locates

These have caused problems in the past (#41917, #39303). Continues #29349.

Also cleans up lightswitch code while I was already touching it.

I recommend a testmerge.
2019-01-06 20:39:27 +13:00
ShizCalev 327a3d9927 Fixes sechuds not updating when inserting & removing an ID into/from a PDA/wallet/computer (#40826)
cl ShizCalev
fix: Fixed sechuds not updating when a user removes/inserts an ID from/into their PDA/wallet/computer while it's in their ID slot.
/cl
2018-10-17 23:45:35 +13:00
ShizCalev 1c10bd9256 Fix PDA light exploit (#40402) 2018-09-22 21:09:24 -07:00
AnturK 3084371f6d Failsafe uplink codes. 2018-09-16 13:35:43 +02:00
Patrick Chieppe 2c8248575a Logging system refactor and improvement (#39521)
* Refactor several log lines to use datum_info_line and atom_loc_line

* Add default return strings from datum_info_line and atom_loc_line

* Add parentheses around atom_loc_line data

* Change more logs to use atom_loc_line

* Add check in atom_loc_line for turfs to avoid calling get_turf on them

* Re-add removed 'at'

* Replace datum_info_line with key_name and atom_loc_line with loc_name

* Refactor logging functions

* Avoid double-logging self-interactions

* Fallback to simple stringification if all else fails in key_name()

* Rewrite muscle spasm logging to use log_message

* Standardize logging of martial arts

* Tweak individual logging panel look

* Fix individual logging panel source

* When I typed || I really meant &&

* Fix Telecomms logging always showing client logs in the panel

* Reverts addition of buggy ownership log to panel

* Remove colon

* Fix missing log_directed_talk tag

* Add warning for missing type in log_direted_talk

* Change warnings to stack_traces

* Add square brackets around fallthrough key_name() case to help parsing

* Allow atom arguments/src in log_*() functions

* Change log_combat call with null argument to log_message

* Change mecha types' log_message() arguments to match atom and mob version

* Add key_name() case for atoms

* Fix resist_grab() unsetting pulledby before log_combat gets a chance to use it

* Fix log_globally logic

* Add logging for hitting objects with items

* Move log_combat() to atoms.dm

* Use utility functions for object stringification in log_combat()

* Use utility functions for object stringification in log_combat()

* Add missing logs for interacting with display cases

* Rewrite log_combat() comment

* Add missing space in log_combat()

* Add logging for hitting grilles barehanded

* Add missing ..()
2018-08-12 21:41:09 +02:00
kevinz000 5b5e1ee577 Third time's the charm - Photography update: 7x7 cameras, photo logging with full metadata, persistent albums and wall frames! (#38944)
* Photography Update

* Pictures logged in their own /data/picture_logs folder rather than normal logs

* Pictures logged in their own /data/picture_logs folder rather than normal logs

* Photos broke, retrying

* Persistence stuff

* I'm almost done I promise!

* Persistence mostly working, compile, etc etc

* Persistence mostly working, compile, etc etc

* Remove something really not needed from the PR

* Prevents duplication

* default to off

* removes check tick

* increase slots in albums to 21

* Allows for singular loading

* Update camera_image_capturing.dm

* Addresses review

* Anturk

* Update camera.dm

* Update misc.dm

* Update datum.dm

* Update camera.dm
2018-08-01 14:52:41 +02:00
Tad Hardesty 59fa61113f [Ready] Communal Resource Storage II (#39118)
add: The vault now contains an ore silo where the station's minerals are stored.
add: The station's ORM, recycling, and the labor camp send materials to the silo via bluespace.
add: Protolathes, techfabs, and circuit imprinters all pull materials from the silo via bluespace.
add: Those with vault access can view mineral logs and pause or remove any machine's access, or add machines with a multitool.
tweak: The ORM's alloy recipes are now available in engineering and science protolathes.
2018-07-25 22:58:11 +12:00
Epoc 63073e95e9 Adds "Toggle Flashlight" to PDA Context Menu (#39229)
new verb for the PDA that toggles the flashlight, moved the toggle code to a
new proc

why: because i'm tired of having to open the PDA menu at the beginning of every
round to turn on the flashlight
2018-07-22 16:55:39 -07:00
Time-Green 6dd9c10392 [s]Fixes an exploit (#39081)
* nothing to see here

* Checks if it's in their contents

* i have the down

* Fixes another fuck up
2018-07-13 14:59:13 +02:00
Trevor Serpas bee0b5b2c3 Afterattack() Signal (#38606)
* adds signal and modifies each call of afterattack to call it's inherited proc

* uses new macro for sendsignal()

* map fuck

* skip precommithooks

* combine and negate 2 ifs
2018-07-07 02:00:25 -04:00
ShizCalev 7d737259e0 Fixes PDA ID teleporting (#38795) 2018-06-30 12:09:29 -07:00
ninjanomnom bbb4147aa2 Some uplink component GetComponent cleanup 2018-06-23 01:41:34 -04:00
Irafas fc14312f35 PDA can be ctrl-clicked to remove the item in its pen slot (#38577)
* Makes pens ez to remove from pda

Players can now ctrl click on the PDA to remove the pen without having to remove the ID first.

* added instructions when examined.

Like how it tells the user they can use alt-click to remove contents, it now says they can use ctrl-click to remove items from the pen slot.

* PDA can now be dragged without dropping the pen.

When ctrl-clicked it now checks to see if the PDA is on a turf and will only output the pen if its not.

* quick change to examine text.

* comma

* Improved the examine
2018-06-19 10:49:04 -04:00
Tad Hardesty 3c03f9a383 Move PDA interface to interact from attack_hand 2018-06-15 19:36:45 -07:00
vuonojenmustaturska c65a99f130 Move NODROP_1, DROPDEL_1, ABSTRACT_1 and NOBLUDGEON_1 to item_flags where they belong (#38171)
* (mostly) nodrop

* (mostly) dropdel

* (mostly) abstract

* nobludgeon

* things i missed

* forgot one

* unintended changes

* energy handcuffs
2018-06-01 11:36:31 +02:00
cyclowns 49b4aa928e Buffs atmospheric analyzers to show mole count, volume and higher degrees of precision (#37631)
add: Analyzers can now scan all kinds of atmospheric machinery - unary, binary, ternary, quaternary, you name it. This means stuff like gas pumps, gas mixers, vents and so forth can be analyzed.

tweak: Analyzers now show temperature in kelvin as well as celsius.

tweak: Analyzers now show total mole count, volume, and mole count of all gases.

tweak: Analyzers show everything at slightly higher degrees of precision.


More accurate and advanced analyzers have been something that I think atmos and toxins mains have been wanting for a while now (including myself). It's always a pain to have to manually add 273.15 to every celsius temperature, or have to use outside tools or VV (which isnt usable in actual games) to calculate mole count for a gas mixture. Not to mention, the ability to analyze things like volume pumps and gas filters makes it easier to manage larger atmos setups. This is just a QoL change for people in any of those jobs. In fact, most players probably don't even know what the fuck is a mole is so adding mole readout to analyzers is a good way to get people to understand atmospherics better.
2018-05-23 13:38:59 +12:00
vuonojenmustaturska 1eccbcca18 Adds an EMP protection component, allowing ANYTHING to be protected from EMP (#37671)
The component is initialized with any combination of three flags, EMP_PROTECT_SELF protects against effects that target the object itself, EMP_PROTECT_WIRES protects against wires being messed with similar to the NO_EMP_WIRES_1 flag which this PR removes, EMP_PROTECT_CONTENTS protects against things that are inside the object like organs, internal "non-virtual" power cells and the like

This enables (but doesn't introduce) new mechanics such as adding EMP shielding at runtime to any atom, or taking it away.
2018-05-22 11:38:02 +12:00
Tad Hardesty f53caac04a Refresh mob views when atoms enter/exit storage (#37954) 2018-05-21 12:45:52 +03:00
Iamgoofball ea6eced91f improves pda message immersion (#37735) 2018-05-10 18:08:09 +12:00
Tad Hardesty cf6f064e21 Use spritesheets to reduce time spent sending PNG assets by 90+% (#37399)
The total number of assets to be sent has been reduced from 1532 to 76, with time between first asset and last going from about 112s to about 7s (a 93% reduction) by my measure. The following assets have been coalesced:

    705 pipe images (used by RPD) -> 1 spritesheet + css
    595 research design icons (used by R&D console) -> 3 spritesheets + css
    116 OOC emoji + 15 language icons -> 1 spritesheet + css
    27 PDA icons -> 1 spritesheet + css
    11 paperwork stamps -> 1 spritesheet + css
2018-05-10 14:34:57 +12:00
Dax Dupont 8adbe2ed8e Adds a cooldown to PDA send to all messages. (#37422)
* Adds a cooldown to PDA send to all messages.

* aaa

aaa

* forgot this one

* condom
2018-04-30 02:09:10 -04:00
AnturK 4c5a43eeb8 Prefix for item flag slot defines. 2018-04-27 10:30:48 +02:00
Fox McCloud 057aa31cda Kills off /obj/item/device (#37297)
* Kills off /obj/item/device

* whoops

* whoops

* Fix
2018-04-23 15:00:23 +02:00
John Ginnane d434cac5b7 Sender of PDA messages is told when their message is sent (#37055)
* Adds "sent message" to the sender of PDA messages

* Added span to message
2018-04-14 17:13:52 -04:00
kevinz000 f300a5c155 Interaction/Attack Hand Refactor (#36405) 2018-03-23 11:20:54 +01:00
cyclowns 97aeab66c4 Atmos unary devices can now be analyzed (#36485)
tweak: Unary devices can now be analyzed using gas scanners. This means stuff like vents, scrubbers, cryo tubes, or heaters/freezers.


fixes #36448

this means stuff like cryo, vents, scrubbers, heat exchangers, heaters/freezers, injectors, those big pressure tanks etc. can now be analyzed by gas analyzers/PDA gas scanners
2018-03-21 16:21:40 +13:00
kevinz000 8ebc63d2f2 Randomized Station Time + Night Shifts 2018-02-20 21:59:44 -08:00
Jordan Brown d282c60c7d Quote the armor lists (#35668) 2018-02-16 01:25:42 -05:00
ShizCalev f7fe600540 Cleans up vars with defines 2018-02-09 00:20:41 -05:00
Jordan Brown f98a4e66cd Merge pull request #34755 from ChuckTheSheep/Current-Color-as-Default-Color-in-Inputs
All color inputs use current color as default choice
2018-01-24 19:13:58 -05:00
MrDoomBringer 20a6c0cdd7 Adds ~70 more suicides (#34522)
Does what it says on the tin, probably a terrible idea
2018-01-23 20:38:31 +13:00
ChuckTheJittai 02033f1756 All color inputs use current color as default choice
Went through all the color inputs and made the "default" argument the current color of what is being selected.
2018-01-21 13:07:35 -05:00
ShizCalev 18c0928903 Redundant params 2018-01-15 10:22:58 -05:00
Cruix ec790fd7bb Fixed PDAs not calling parent in equipped() (#34081) 2018-01-05 06:56:10 -05:00
Dax Dupont 03982074c5 PDA Interface color is now an option 2018-01-01 23:23:02 +01:00
Tad Hardesty 911cb97718 Tidy telecomms radio code, make PDA server real telecomms machinery (#33647)
* Refactor radio message broadcasting in a major way

Broacast_Message and everywhere that uses it, including radio talk_into
and the telecomms broadcaster and allinone. Other telecomms machinery
has had dead code excised.

Functionality should be roughly the same as before, but:
- CentCom headsets are only magic when using the CentCom frequency
- Syndicate frequency speech on the station no longer double-talks
- Talking directly into an intercom or radio which also has its
  microphone on no longer double-talks.

* Split signal/vocal into subspace and subspace/vocal

* Move the message server and its computer to telecomms folder

* Slightly tidy the message server and computer

* Move subspace receiver logic to a proc on signal/subspace

* Repath the message server under machinery/telecomms

* Largely get PDA messages onto subspace proper

* Actually require the server for PDA messages

* Improve signal/subspace/New() and copy()

* Improve input handling on the message server

* Fix initialization and Z checks of allinones

* Add a constructor for virtualspeaker

* Fix radiation storms initializing a bad virtualspeaker

* Fix runtimes with machines talking into radios

* Finish making the message server a real telecomms machine

* Make CTF radios independent also

* Fix window IDs of message server PDA photos
2017-12-20 22:02:55 +01:00
Tad Hardesty 71659b1e1a Tidy non-telecomms radio code (#33381)
* Remove extraneous parameters of receive_signal

* Delete unused signal datum procs

* Remove signal/var/encryption in favor of data

* Add and use datum/signal/New

* Clean up PDA and pAI integrated signalers

* Remove unused send_hear proc

* Clean up vars on obj/item/radio, change receive_range to can_receive

* Remove suffix var from radios

* Fix cell timer radios
2017-12-15 11:37:58 +13:00
vuonojenmustaturska 5233ec1f6a Finishes the forceMove port (#33519)
* a thing

* thingy 2: electric boogaloo

* Obligatory webeditor commit
2017-12-15 10:39:34 +13:00
kevinz000 beb255dbf1 Refactors uplinks to a component 2017-11-20 00:13:26 -08:00
kevinz000 caa1e1f400 Massive research refactor; changes research system to techwebs; Decentralized research 2017-11-18 19:55:40 -08:00
Emmett Gaines 825ab4def4 [512] The great \ref purge (#31824)
* The great \ref purge

* cleanup
2017-10-28 17:20:04 -04:00
AnturK 309d3f3bfb Fixes recipient in pda logs 2017-10-17 09:49:07 +02:00
AlecW 7982ceddb2 Adds Toggle Underline button to PDA menu (#31604)
* Add Toggle Underline button to PDA.dm

-Adds Toggle Underline button to PDA menu that, when pressed, applies underline styling to all <a> elements.

* Changed 1/0 to bools

Now using TRUE and FALSE, also cleaned some HTML I missed the first time
2017-10-13 15:51:17 -06:00
Firecage ee3e8d2846 merge conflict fix 2017-10-05 11:22:57 +02:00
Firecage 2ae0380fef Does some code standardization/consistency 2017-10-05 11:13:47 +02:00
Supermichael777 f770b69d5b Makes the pda font a prefernce (#31193) 2017-10-04 21:28:44 -03:00
nicbn 6fb896e4c3 Paper markdown (#30873)
* why it doesn't work

* list thing

* oops

* fixes list. maybe

* Less regex

* wip

* Done I think. I think

* return your functions

* Replace $10 by $a
2017-09-30 09:08:25 -04:00
kingofkosmos 086d636b17 Alt-clicking descriptions when examining (#30988)
* Adds what alt-clicking does into examine-messages.

* whoops fix

* AI holopad examine remove

* Fixed cigarette pack alt-clicking.

* Spear alt-click-message set to show only if explosive lance.
2017-09-29 15:51:31 +13:00
Tungsten ac8eee7d4d Applying PDA overhaul Upstream (#30613)
* Applying PDA overhaul Upstream

Yeet?

* Used lordpidey's change

Like this?

* The build failed so I'm changing it back

* Update PDA.dm

* Update PDA.dm

* Make the settings visible only on the main screen

mode 0 is the hub, and the hub is the main menu. I think it'd be a lot more convenient for players to always have these options on the main menu if they need them. Makes it really easy to swap colors and fonts at the beginning of the round. I can put it in a settings menu if everyone really thinks it's necessary, but then someone would have to help me actually make the damn icons show up.

* Update PDA.dm

* Update PDA.dm

* Wait, I'm an idiot. I was editing the wrong thing.

* Here's your switch statements boi

* Declare font_index at the "Toggle_Font" code

I declared it exactly where it's relevant, but I think this looks unclean. I also redefined it which I actually needed to do.

* Replaced it where it was

cuz the build broke

* Make the color changer a picker instead of a field

An attempt

* Made these defines

@optimumtact @Cyberboss Like this?
2017-09-29 15:43:22 +13:00