Commit Graph

96 Commits

Author SHA1 Message Date
SkyratBot
6ecaa9a994 [MIRROR] Standardizes attack chain signal returns and fixes a tk bug (#1409)
* 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.

* Standardizes attack chain signal returns and fixes a tk bug

Co-authored-by: Rohesie <rohesie@gmail.com>
2020-10-21 07:39:32 +02:00
SkyratBot
204c74c435 [MIRROR] Hilbert's Hotel orb now has a bunch of checks to prevent users pulling shenanigans (#1342)
* Hilbert's Hotel orb now has a bunch of checks to prevent users pulling shenanigans (#54229)

Hilbert's Hotel now does some basic level of sanity checking after the input to cut down on a number of shenanigans.

The following are all the new changes:

    Hilbert's cannot be activated via telekinesis. It must be activated by direct player attack.
    If the item isn't adjacent to the target after their input, it aborts.
    If the player attempting to enter the hotel is incapacitated after their input, it aborts.
    If the user no longer has the item in their possession after their input, it aborts even if there is a different target.
    If the user is also the target, it will attempt to drop the item normally. If the item fails to drop, it may be teleported to the hotel with the user. The item can fail to drop when it is in the user's possession but not in their hands, or when it has TRAIT_NODROP.
    When the item enters a hotel room created by itself, it will now recursively check for the first mob in its loc stack. It will gib this mob before teleporting away.
    This prevents the warp-whistle effect where a user could put the item in their backpack at INCREDIBLY low risk to themselves (0.135685% chance of anything bad happening) to enter a hotel room and have the orb warped away at random. They could then immediately leave for a free warp whistle effect.

* Hilbert's Hotel orb now has a bunch of checks to prevent users pulling shenanigans

Co-authored-by: Timberpoes <silent_insomnia_pp@hotmail.co.uk>
2020-10-17 01:15:54 +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
970a2b03d6 [MIRROR] Mobility refactor: no more update_mobility() (#1233)
* Mobility refactor: no more update_mobility()

* Update robot.dm

Fixes robots.

* megadumb

* Update robot.dm

* weh

* Update gunpoint_datum.dm

Co-authored-by: Rohesie <rohesie@gmail.com>
Co-authored-by: Gandalf <jzo123@hotmail.com>
Co-authored-by: Azarak <azarak10@gmail.com>
2020-10-10 02:31:35 +02:00
SkyratBot
c4e85d51ae [MIRROR] Completely FIX Hilbert's Hotel and its associated ruin to the game. (#1111)
* Completely FIX Hilbert's Hotel and its associated ruin to the game. (#53830)

Reverts the removal in #53790.
Broken in #53586.

Because turfNumber++ must be incremented on turf, not on every ATOM it
EVERY TURF, and anyway it don't trigger since first turfs don't have
atoms in it.

Fix #53794, Hilbert's Hotel peephole runtime.
Fix #53795, hhmysteryRoomNumber generates only once.

* Completely FIX Hilbert's Hotel and its associated ruin to the game.

Co-authored-by: Dennok <Deneles@yandex.ru>
2020-10-02 14:56:57 +02:00
SkyratBot
98568e191a [MIRROR] Enforce preserving parent proc return values across ui_act call stacks (#999)
* 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.

* Enforce preserving parent proc return values across ui_act call stacks

Co-authored-by: Timberpoes <silent_insomnia_pp@hotmail.co.uk>
2020-09-26 17:17:59 +02:00
SkyratBot
13b96bfe01 [MIRROR] Rebalances space loot and space exploration (#981)
* Rebalances space loot and space exploration (#53916)

* Rebalances space loot and space exploration

Co-authored-by: Timberpoes <silent_insomnia_pp@hotmail.co.uk>
2020-09-25 14:34:13 +02:00
SkyratBot
3eb4b68b60 [MIRROR] Completely removes Hilbert's Hotel and its associated ruin from the game. (#881)
* Completely removes Hilbert's Hotel and its associated ruin from the game. (#53790)

The Hotel is a runtime machine. When it swaps rooms, its turfs runtime. When people are actively using it, things in it constantly runtime. It's half broken, half buggy. Turfs don't remember contents. Sometimes blank rooms spawn. Sometimes nothing at all.

It's not worth the time and effort to fix or maintain it.

I'm opening this PR to completely remove it.

* Completely removes Hilbert's Hotel and its associated ruin from the game.

Co-authored-by: Timberpoes <silent_insomnia_pp@hotmail.co.uk>
2020-09-20 00:36:15 +01:00
SkyratBot
4b6cc9d088 [MIRROR] Arcane finishes the fight and adds all the missing belt sprites and a worn sprite Admin Tool. (#830)
* Arcane finishes the fight and adds all the missing belt sprites and a worn sprite Admin Tool. (#53305)

* Arcane finishes the fight and adds all the missing belt sprites and a worn sprite Admin Tool.

Co-authored-by: ArcaneMusic <41715314+ArcaneMusic@users.noreply.github.com>
2020-09-17 02:05:30 +01:00
SkyratBot
ef634cfaf8 [MIRROR] Fixes master lint and makes hilberthotel.dm use tabs instead of spaces (#749)
* Fix sleep lint and use tabs in hilberthotel.dm (#53586)

* Fixes master lint and makes hilberthotel.dm use tabs instead of spaces

Co-authored-by: TiviPlus <57223640+TiviPlus@users.noreply.github.com>
2020-09-11 23:17:52 +02:00
SkyratBot
3bd294f26f [MIRROR] Defines damage flags. (Hopefully without 50+ commits) (#491)
* Defines damage flags. (#53158)

* Defines damage flags. (Hopefully without 50+ commits)

Co-authored-by: TemporalOroboros <TemporalOroboros@gmail.com>
2020-08-24 22:52:31 +02:00
SkyratBot
289930f2a1 [MIRROR] Icon smooth refactor (#327)
* Icon smooth refactor (#52864)



    bitflag list construct added: an associative list of bitflags for cheap and quick element comparison between two lists using the same system.

    canSmoothWith list turned into a bitflag list.

    smoothing_groups list added to substitute the type path list.

    smoothing procs turned into atom procs, refactored and optimized a bit.

    smooth directions redefined in order to fit in 8 bits for a future smoothing system

    some variable names changed, foreseeing a second smoothing system

    SMOOTH_OBJ flag added, for things that need to scan turfs for smoothing. The old locate() optimization has the risk of returning false negatives by finding a child and returning null while there might be one of the wanted type as well, as it doesn't match the type exactly.

    SMOOTH_TRUE and SMOOTH_MORE condensed into SMOOTH_CORNERS. The old behavior can be replicated using smoothing groups without loss.

    Does very minor code cleanup.

    Processing-wise didn't find a noticeable difference. The system loses on init a bit by setting the bitflag_lists, and by scanning whole turf contents for object smoothing (increasing accuracy), and gains by making less checks per target to smooth, through the same bitflag_lists.

    Memory-wise there should be a small improvement, given that on the old system we had 63512 canSmoothWith lists (a few typelists, most unique), and on this new system canSmoothWith + smoothing_groups are both bitflag_lists from the same pool, totaling 46 in number.

Could be tested a bit to see if I missed any icons not properly smoothing.

* Icon smooth refactor

Co-authored-by: Rohesie <rohesie@gmail.com>
2020-08-13 05:23:53 +02:00
SkyratBot
8ca4a452f8 [MIRROR] Refactors area stuff (#265)
* Refactors area stuff (#52751)

-bitfielded a bunch of bools on /area, I left some untouched cus they get called a lot
-Unused vars
-Fixed a var pretending to be a fake bool
-Probably more

* Refactors area stuff

Co-authored-by: TiviPlus <57223640+TiviPlus@users.noreply.github.com>
2020-08-10 23:20:00 +01:00
SkyratBot
5fd8cb072e [MIRROR] Color standardization, vars moved, and signals (#194)
* Color standardization, vars moved, and signals (#52574)

    Defined all the existing light_color values.
    Moved their definitions to colors.dm
    Made white the default color. It was so already, but that was very obscured.
    Moved the atom light-related variables to the atom definition.
    Wrapped changes to variables such as light_color into procs that report the event through signals.
    Moved the light_on variable to the atom level, also adding a signal for its changing, to represent toggling lights.
    Cleaned up a little bit of code in where new variables were defined before redefinitions.

This is all atomization to reduce changes in #52413
None of this affect gameplay at all, it's all code cleaning and refactoring.

There's more colors to standardize, a search for color = will find lots of targets, and I see little need to have both the LIGHT_COLOR and COLOR patterns, but I don't want to make this PR bigger than it already is.

* Color standardization, vars moved, and signals

Co-authored-by: Rohesie <rohesie@gmail.com>
2020-08-04 12:20:31 +02:00
Aleksej Komarov
0cf00a2645 tgui 4.0 (#52085)
* tgui 4.0 hyper squash

* Upgrade dependencies
2020-07-16 20:13:04 +02:00
nemvar
b87f65d95e Converts ALL typepaths to lowercase (#51642)
* Case of lower

* More changes

* Ruins the nice 420 diff, brainfart when doing the second batch of conversions

* More changes

* Next batch. I think

* Converts even more paths

* Restarts bots

* Capital Free Zone

* Come on travis, do something

* Renames areas

* Bots, please stop dying

* Updates CONTRIBUTING.md and updates a few paths I missed.

* APC recgarftzfvas
/obj/item/computer_hardware/recharger/apc to /obj/item/computer_hardware/recharger/apc_recharger
2020-06-17 20:47:57 -03:00
Fikou
5c88d587b4 removes king goat (#51366)
* Revert "Remodels king goat ruin (#50813)"

This reverts commit 26ffe3d539.

* numba 1

* bye

* bye 2

* bye 3

* fuck bitches get money

* hey this was actually a good change

* goat sounds

* fuck

* h

* waaaaaaaaagh
2020-05-31 17:38:07 +02:00
nemvar
6ef421be42 Renames a few variables. Also reorders icon fallback order again. (#51060)
* Renames a few variables. Also reorders fallback order again.
Renames item_state to inhand_icon_state
Renames mob_overlay_icon to worn_icon
Renames mob_overlay_state to worn_icon_state
worn_icon_state/mob_overlay_state now never gets used for inhands.

* Fixes some comments

* Fixes map issue

* Restart lints

* Properly resolves conflicts
2020-05-25 06:47:19 +02:00
LemonInTheDark
1614501d23 Datum view and some other things (#51208)
* Datumizes all uses of change_view

* Cleanup and helper procs

* tweaks values to match the format, hint hint, (value - 0.5) works just fine

* And there's the rest

* woop, braindamage

* and one more

* fuck you menu file

* woops

* we should apply that

* fixes tooltip drift, thank you goon coders

* you can shake but you can't zoom
2020-05-25 01:53:51 +08:00
Qustinnus
30d414652c Nerfs the cybersun hardsuit and moves it out of the uplink (#50721)
* nerf

* nerf this

* description
2020-04-28 13:39:04 -03:00
spookydonut
f60c57c14a Merge pull request #50541 from EgorDinamit/fluffwrench
Small fix for Forgottenship ruin.
2020-04-24 00:53:22 +08:00
actioninja
b5dfd8880d id to component name 2020-04-19 19:36:35 +03:00
EgorDinamit
1fe025bb25 deconstructible = FALSE 2020-04-18 20:22:15 +04:00
EgorDinamit
3dc4ae7bc7 [Ready] Forgottenship Ruin - rebalance, config update, uplink item. (#50529)
* Add files via upload

* Add files via upload

* Add files via upload

* Add files via upload

* Update code/modules/ruins/spaceruin_code/forgottenship.dm

Co-Authored-By: TiviPlus <57223640+TiviPlus@users.noreply.github.com>

* Lowered Cybersun hardsuit armour values.

* Upgrading energy armour value.

* Now captain isn't male-only.

* Turrets

shot_delay changed from 0.8 seconds to 1.0 second.

* Adds 3 encryption keys for cyborgs and AIs to use

* Syndi-captain gets loud-voice headset.

* Policy config

* Define space syndies

* Added Robotics access for syndies

It's really useful for when they create cyborgs.

* Adds special version of medivend instead of normal one

* Replaces basic syndi-vend with special one

* Update forgottenship.dm

* Cybersun hardsuit doesn't slow you down as said in uplink desc.

* NPC + Area sounds.

Elite Assault Officer projectile sound changed from pulse.ogg to laser.ogg.
Added ambient sounds for all areas.

* Good day sir

Lowered the amount of ores you get.

* assignedrole

Let admins know that this particular shitter is the cybersun captain!

* Weight'n'Cost of ruins fixed in another PR

* Update code/modules/uplink/uplink_items.dm

Co-Authored-By: Bobbahbrown <bobbahbrown@gmail.com>

* Cost/Weight of ALL space ruins changed

* Thanks to fikou

* Only cap's spawner leaves empty-sleeper now

* if(policy)

* Revert "Cost/Weight of ALL space ruins changed"

This reverts commit fa343547f0dcf225710895f50ac2bbf32dc07b5d.

* Fixup

* Minor fix in attempt to fix some stuff

* Update code/modules/ruins/spaceruin_code/forgottenship.dm

Thanks trollbreeder.

Co-Authored-By: trollbreeder <trollbreeder@users.noreply.github.com>

* Update code/modules/ruins/spaceruin_code/forgottenship.dm

Co-Authored-By: trollbreeder <trollbreeder@users.noreply.github.com>

* [Grammar] THE captain!

Co-Authored-By: trollbreeder <trollbreeder@users.noreply.github.com>

* grammar review man

Co-Authored-By: trollbreeder <trollbreeder@users.noreply.github.com>

* "A" vs "The"

Co-Authored-By: trollbreeder <trollbreeder@users.noreply.github.com>

* [Grammar] "an"

Co-Authored-By: trollbreeder <trollbreeder@users.noreply.github.com>

* Update uplink_items.dm

* Update code/modules/ruins/spaceruin_code/forgottenship.dm

Co-Authored-By: trollbreeder <trollbreeder@users.noreply.github.com>

Co-authored-by: TiviPlus <57223640+TiviPlus@users.noreply.github.com>
Co-authored-by: Bobbahbrown <bobbahbrown@gmail.com>
Co-authored-by: AnturK <AnturK@users.noreply.github.com>
Co-authored-by: trollbreeder <trollbreeder@users.noreply.github.com>
2020-04-18 11:16:27 +02:00
Dennok
95c6d579b7 Fix /turf/open/space/bluespace spark crash (#50229) 2020-03-28 00:40:04 -07:00
EgorDinamit
da3cdd8169 [Ready] Syndicate Forgotten Ship ruin. Balance+Bug fix. (#50120)
* Balance+Bug fix.

* Update forgottenship.dmm

* Update forgottenship.dmm

* Removes rogue table

* Give uranium to plebs.

* Beakers+Few chameleon stuff

* Fluff text rebalance. Allow people to leave the ship as long as it is protected.

* Grammar fix, I guess

* Le grammar

* Replaced interrogation room with medbay. Added tactical medkit(1) to med-vendor and 5 basic medkits to the same vendor. Additional ores, loot.

* Surgery disk update

* O2 canisters to maints area

* GPS signal

* Update code/game/objects/structures/ghost_role_spawners.dm

Co-Authored-By: Rohesie <rohesie@gmail.com>

Co-authored-by: Rohesie <rohesie@gmail.com>
2020-03-21 16:59:22 -03:00
EgorDinamit
26607236ce Update code/modules/ruins/spaceruin_code/forgottenship.dm
Co-Authored-By: Rohesie <rohesie@gmail.com>
2020-03-20 11:21:32 +04:00
EgorDinamit
b7d4ea415e Update code/modules/ruins/spaceruin_code/forgottenship.dm
Co-Authored-By: Rohesie <rohesie@gmail.com>
2020-03-20 10:20:34 +04:00
EgorDinamit
a03464b9a2 Update code/modules/ruins/spaceruin_code/forgottenship.dm
Co-Authored-By: Rohesie <rohesie@gmail.com>
2020-03-20 10:20:06 +04:00
EgorDinamit
0c0eb90c2a Merge branch 'master' of git://github.com/tgstation/tgstation 2020-02-27 22:40:42 +04:00
fluffe9911
5eea39977d [READY TO BE MERGED] King Goat Achievements, bugfixes, and minor tweaks (#49159)
* king goat memes

* I cant grammar

* newline

* the arena is no longer pressurised

* How into grammar

* I am embarrassed I did not notice this

* no hotel vacations in the arena

* better goat hoof sprite curticy of stephen

* new goat gun sprite

* might as well

* grammar

* no more king goat plushies in toy crates

* Update code/modules/mob/living/simple_animal/hostile/megafauna/king_of_goats.dm

Co-Authored-By: moo <11748095+ExcessiveUseOfCobblestone@users.noreply.github.com>

* done

* based and redpilled

Co-authored-by: moo <11748095+ExcessiveUseOfCobblestone@users.noreply.github.com>
2020-02-24 20:47:42 -05:00
EgorDinamit
a57808f45d Merge branch 'master' into master 2020-02-21 21:23:07 +04:00
EgorDinamit
e350dfe089 / 2020-02-18 18:48:36 +04:00
ShizCalev
7209ac3c93 Removes unnessacary math defines 2020-02-17 23:09:09 -05:00
EgorDinamit
41f8482e98 Merge branch 'master' into master 2020-02-16 16:59:37 +04:00
ArcaneMusic
382b91dc64 Adds a new Space Ruin, the Hell Factory. (#49186)
* The hell factory is born. Initial Commit.

* Alright just makes sure to re-add the dmi files, so at least SOMEWHERE they exist

* I somehow lost my pressure plate fix and didn't actually fix the conflict.

* No, really, how did I break this so badly. Jesus christ.

* Quick anti-cheese measures.

* Made the map a bit more comfortable, APCs/ Keycard

* mapmerge hook :(
2020-02-15 23:44:14 -08:00
EgorDinamit
0a1fad34f9 Changes cybersun hardsuit description 2020-02-15 12:07:24 +04:00
EgorDinamit
dbc6ec61cd Adds noteleport flag to vault. 2020-02-14 13:36:48 +04:00
EgorDinamit
4df27ad523 Update forgottenship.dm 2020-02-13 23:12:23 +04:00
EgorDinamit
07699113ba ruin code update 2020-02-13 21:43:53 +04:00
EgorDinamit
7ce6bad46c Update 2020-02-13 11:57:11 +04:00
EgorDinamit
e1d7000117 Update-update 2020-02-12 23:56:26 +04:00
skoglol
a28b24f149 Completely removes cloning (#48668)
* Removed from code

* Removes cloners from maps

* Some more references, now compiles.

* Reduces availability of replica pods

* DNA scanner and tech disk rebranding

* pubby door name, cargo pack description
2020-02-04 16:04:06 -05:00
cacogen
6b63bf7093 Changes $1 to 1 cr (#48414)
* $ to cr

* Payday messages use a proper span instead of asterisks
2019-12-28 16:29:36 +02:00
skoglol
4a487ca803 Refactors language holder (#48106)
* Language holder refactor

* Ironed out bugs, testing

* adds sourced language, blocking list. more useful helpers.

* Replaced old usage

* Adresses requests

* Autodoc attempt #1

* Fixed monkeyize (again)

* Travis happy

* Language menu updated

* Final pass
2019-12-18 22:22:12 +01:00
skoglol
769b34fcd8 Adds missing newline in master (#47673)
* Adds missing newline in master

* no tab
2019-11-08 17:53:12 -08:00
Potato-Masher
ccc4300f89 OldStation (Beta/Charlie/Delta) QoL Improvements (#47576)
* Beta/Charlie/Delta station QoL improvements

Atmospherics is now actually a considerable part of Beta station with basic scrubber setup.

Missing atmos pipes added, air alarms are all now unlocked rather than just some, a slight increase in available metal and glass, removed access requirements on engineering external access airlocks, one extra fuel canister, and added light switches and trash cans due to the lack of disposals.

Delta: Added an autolathe to RnD, removed most instances of multiple resin floors on one turf/resin floors in walls, reduced resin spread to be just in the AI chamber, and one extra scrubber in the AI chamber to deal with the miasma buildup after long rounds.

* Minor changes to atmos and added a camera assembly crate in AI chamber

Moved the external filling station port pipes so they are not inside walls, fixed a missing floor decal. Added a camera assembly crate in the AI chamber for making a basic camera network in the event one would like to repair the AI.
2019-11-08 22:28:00 +01:00
AnturK
17b6569ba2 Replaces mapedited turrets with structures on derelict. (#47584) 2019-11-07 11:35:07 -05:00
spookydonut
2591ce17a6 Travis EOF newline detection v3 (#47539)
* scream

* aaa

* aaa

* new one
2019-11-04 19:16:50 -08:00
ArcaneMusic
182ad29a69 Fixes atmos turf differences, creates airless carpet subtypes. (#47360)
* Fixes atmos turf differences, creates a few airless carpet subtypes.

* Moves all the airless turfs back to their home, makes sure they smooth with each other organically.
2019-10-27 00:42:18 -07:00