From 1de48ea7ca7e19e2b27e8608e3910b25e5ae7bdb Mon Sep 17 00:00:00 2001
From: Kepplerx <65926304+Kepplerx@users.noreply.github.com>
Date: Wed, 17 Feb 2021 17:37:56 +0100
Subject: [PATCH 001/172] Activatable always
---
code/datums/action.dm | 3 +++
code/game/objects/items/weapons/implants/implant_explosive.dm | 1 +
2 files changed, 4 insertions(+)
diff --git a/code/datums/action.dm b/code/datums/action.dm
index 8d02d4622cf..136a96b1eb6 100644
--- a/code/datums/action.dm
+++ b/code/datums/action.dm
@@ -383,6 +383,9 @@
/datum/action/item_action/hands_free/activate
name = "Activate"
+/datum/action/item_action/hands_free/activate/always
+ check_flags = null
+
/datum/action/item_action/toggle_research_scanner
name = "Toggle Research Scanner"
button_icon_state = "scan_mode"
diff --git a/code/game/objects/items/weapons/implants/implant_explosive.dm b/code/game/objects/items/weapons/implants/implant_explosive.dm
index 52262ac8edb..2633797b7b6 100644
--- a/code/game/objects/items/weapons/implants/implant_explosive.dm
+++ b/code/game/objects/items/weapons/implants/implant_explosive.dm
@@ -3,6 +3,7 @@
desc = "And boom goes the weasel."
icon_state = "explosive"
origin_tech = "materials=2;combat=3;biotech=4;syndicate=4"
+ actions_types = list(/datum/action/item_action/hands_free/activate/always)
var/weak = 2
var/medium = 0.8
var/heavy = 0.4
From 3a07d1c0f6524a8914a15dfacda22b80ca56809c Mon Sep 17 00:00:00 2001
From: Kepplerx <65926304+Kepplerx@users.noreply.github.com>
Date: Fri, 19 Feb 2021 16:41:24 +0100
Subject: [PATCH 002/172] Update implant_explosive.dm
---
code/game/objects/items/weapons/implants/implant_explosive.dm | 1 +
1 file changed, 1 insertion(+)
diff --git a/code/game/objects/items/weapons/implants/implant_explosive.dm b/code/game/objects/items/weapons/implants/implant_explosive.dm
index 2633797b7b6..a776cbce2aa 100644
--- a/code/game/objects/items/weapons/implants/implant_explosive.dm
+++ b/code/game/objects/items/weapons/implants/implant_explosive.dm
@@ -136,6 +136,7 @@
desc = "An alarm which monitors host vital signs, transmitting a radio message and dusting the corpse on death."
icon = 'icons/effects/blood.dmi'
icon_state = "remains"
+ actions_types = list(/datum/action/item_action/hands_free/activate/always)
/obj/item/implant/dust/get_data()
var/dat = {"Implant Specifications:
From ef07325a9a9e147409cd6ecb8fbd62c5c9aff418 Mon Sep 17 00:00:00 2001
From: mochi
Date: Wed, 17 Mar 2021 11:48:49 +0100
Subject: [PATCH 003/172] Give eyes default lighting alpha of
LIGHTING_PLANE_ALPHA_VISIBLE
---
code/modules/surgery/organs/eyes.dm | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/code/modules/surgery/organs/eyes.dm b/code/modules/surgery/organs/eyes.dm
index b317266dab0..b5df8f90479 100644
--- a/code/modules/surgery/organs/eyes.dm
+++ b/code/modules/surgery/organs/eyes.dm
@@ -17,7 +17,7 @@
var/tint = 0
var/flash_protect = FLASH_PROTECTION_NONE
var/see_invisible = SEE_INVISIBLE_LIVING
- var/lighting_alpha
+ var/lighting_alpha = LIGHTING_PLANE_ALPHA_VISIBLE
/obj/item/organ/internal/eyes/proc/update_colour()
dna.write_eyes_attributes(src)
From 3f565462913b2065c38360f8a07ca25cc1e6892e Mon Sep 17 00:00:00 2001
From: AffectedArc07 <25063394+AffectedArc07@users.noreply.github.com>
Date: Thu, 18 Mar 2021 14:26:49 +0000
Subject: [PATCH 004/172] Converts MyISAM tables to InnoDB
---
SQL/paradise_schema.sql | 16 +-
SQL/paradise_schema_prefixed.sql | 16 +-
SQL/updates/22-23.sql | 11 ++
code/__DEFINES/misc.dm | 2 +-
config/example/dbconfig.txt | 2 +-
tgui/log.txt | 293 +++++++++++++++++++++++++++++++
tools/ci/dbconfig.txt | 2 +-
7 files changed, 323 insertions(+), 19 deletions(-)
create mode 100644 SQL/updates/22-23.sql
create mode 100644 tgui/log.txt
diff --git a/SQL/paradise_schema.sql b/SQL/paradise_schema.sql
index 8917d28d6bb..a1ece757484 100644
--- a/SQL/paradise_schema.sql
+++ b/SQL/paradise_schema.sql
@@ -99,7 +99,7 @@ CREATE TABLE `customuseritems` (
`cuiJobMask` text NOT NULL,
PRIMARY KEY (`id`),
KEY `cuiCKey` (`cuiCKey`)
-) ENGINE=MyISAM AUTO_INCREMENT=56 DEFAULT CHARSET=utf8mb4;
+) ENGINE=InnoDB AUTO_INCREMENT=56 DEFAULT CHARSET=utf8mb4;
/*!40101 SET character_set_client = @saved_cs_client */;
--
@@ -126,7 +126,7 @@ CREATE TABLE `death` (
`fireloss` int(11) NOT NULL,
`oxyloss` int(11) NOT NULL,
PRIMARY KEY (`id`)
-) ENGINE=MyISAM AUTO_INCREMENT=166546 DEFAULT CHARSET=utf8mb4;
+) ENGINE=InnoDB AUTO_INCREMENT=166546 DEFAULT CHARSET=utf8mb4;
/*!40101 SET character_set_client = @saved_cs_client */;
--
@@ -241,7 +241,7 @@ CREATE TABLE `feedback` (
`version` tinyint(3) UNSIGNED NOT NULL,
`json` LONGTEXT NOT NULL COLLATE 'utf8mb4_general_ci',
PRIMARY KEY (`id`)
-) ENGINE=MyISAM AUTO_INCREMENT=257638 DEFAULT CHARSET=utf8mb4;
+) ENGINE=InnoDB AUTO_INCREMENT=257638 DEFAULT CHARSET=utf8mb4;
/*!40101 SET character_set_client = @saved_cs_client */;
--
@@ -321,7 +321,7 @@ CREATE TABLE `karma` (
`spenderip` text NOT NULL,
`time` datetime NOT NULL,
PRIMARY KEY (`id`)
-) ENGINE=MyISAM AUTO_INCREMENT=73614 DEFAULT CHARSET=utf8mb4;
+) ENGINE=InnoDB AUTO_INCREMENT=73614 DEFAULT CHARSET=utf8mb4;
/*!40101 SET character_set_client = @saved_cs_client */;
--
@@ -338,7 +338,7 @@ CREATE TABLE `karmatotals` (
`karmaspent` int(11) NOT NULL DEFAULT 0,
PRIMARY KEY (`id`),
KEY `byondkey` (`byondkey`)
-) ENGINE=MyISAM AUTO_INCREMENT=25715 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
+) ENGINE=InnoDB AUTO_INCREMENT=25715 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
@@ -359,7 +359,7 @@ CREATE TABLE `library` (
PRIMARY KEY (`id`),
KEY `ckey` (`ckey`),
KEY `flagged` (`flagged`)
-) ENGINE=MyISAM AUTO_INCREMENT=4537 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
+) ENGINE=InnoDB AUTO_INCREMENT=4537 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
@@ -375,7 +375,7 @@ CREATE TABLE `legacy_population` (
`admincount` int(11) DEFAULT NULL,
`time` datetime NOT NULL,
PRIMARY KEY (`id`)
-) ENGINE=MyISAM AUTO_INCREMENT=2550 DEFAULT CHARSET=utf8mb4;
+) ENGINE=InnoDB AUTO_INCREMENT=2550 DEFAULT CHARSET=utf8mb4;
/*!40101 SET character_set_client = @saved_cs_client */;
--
@@ -392,7 +392,7 @@ CREATE TABLE `whitelist` (
`species` mediumtext COLLATE utf8mb4_unicode_ci DEFAULT NULL,
PRIMARY KEY (`id`),
KEY `ckey` (`ckey`)
-) ENGINE=MyISAM AUTO_INCREMENT=4080 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
+) ENGINE=InnoDB AUTO_INCREMENT=4080 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
/*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */;
diff --git a/SQL/paradise_schema_prefixed.sql b/SQL/paradise_schema_prefixed.sql
index b3c8f1f7643..9b2fdb845e0 100644
--- a/SQL/paradise_schema_prefixed.sql
+++ b/SQL/paradise_schema_prefixed.sql
@@ -98,7 +98,7 @@ CREATE TABLE `SS13_customuseritems` (
`cuiPropAdjust` text,
`cuiJobMask` text NOT NULL,
PRIMARY KEY (`id`)
-) ENGINE=MyISAM AUTO_INCREMENT=56 DEFAULT CHARSET=utf8mb4;
+) ENGINE=InnoDB AUTO_INCREMENT=56 DEFAULT CHARSET=utf8mb4;
ALTER TABLE `SS13_customuseritems` ADD INDEX(`cuiCKey`);
/*!40101 SET character_set_client = @saved_cs_client */;
@@ -126,7 +126,7 @@ CREATE TABLE `SS13_death` (
`fireloss` int(11) NOT NULL,
`oxyloss` int(11) NOT NULL,
PRIMARY KEY (`id`)
-) ENGINE=MyISAM AUTO_INCREMENT=166546 DEFAULT CHARSET=utf8mb4;
+) ENGINE=InnoDB AUTO_INCREMENT=166546 DEFAULT CHARSET=utf8mb4;
/*!40101 SET character_set_client = @saved_cs_client */;
--
@@ -240,7 +240,7 @@ CREATE TABLE `SS13_feedback` (
`version` tinyint(3) UNSIGNED NOT NULL,
`json` LONGTEXT NOT NULL COLLATE 'utf8mb4_general_ci',
PRIMARY KEY (`id`)
-) ENGINE=MyISAM AUTO_INCREMENT=257638 DEFAULT CHARSET=utf8mb4;
+) ENGINE=InnoDB AUTO_INCREMENT=257638 DEFAULT CHARSET=utf8mb4;
/*!40101 SET character_set_client = @saved_cs_client */;
--
@@ -320,7 +320,7 @@ CREATE TABLE `SS13_karma` (
`spenderip` text NOT NULL,
`time` datetime NOT NULL,
PRIMARY KEY (`id`)
-) ENGINE=MyISAM AUTO_INCREMENT=73614 DEFAULT CHARSET=utf8mb4;
+) ENGINE=InnoDB AUTO_INCREMENT=73614 DEFAULT CHARSET=utf8mb4;
/*!40101 SET character_set_client = @saved_cs_client */;
--
@@ -337,7 +337,7 @@ CREATE TABLE `SS13_karmatotals` (
`karmaspent` int(11) NOT NULL DEFAULT 0,
PRIMARY KEY (`id`),
KEY `byondkey` (`byondkey`)
-) ENGINE=MyISAM AUTO_INCREMENT=25715 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
+) ENGINE=InnoDB AUTO_INCREMENT=25715 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
@@ -358,7 +358,7 @@ CREATE TABLE `SS13_library` (
PRIMARY KEY (`id`),
KEY `ckey` (`ckey`),
KEY `flagged` (`flagged`)
-) ENGINE=MyISAM AUTO_INCREMENT=4537 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
+) ENGINE=InnoDB AUTO_INCREMENT=4537 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
@@ -374,7 +374,7 @@ CREATE TABLE `SS13_legacy_population` (
`admincount` int(11) DEFAULT NULL,
`time` datetime NOT NULL,
PRIMARY KEY (`id`)
-) ENGINE=MyISAM AUTO_INCREMENT=2550 DEFAULT CHARSET=utf8mb4;
+) ENGINE=InnoDB AUTO_INCREMENT=2550 DEFAULT CHARSET=utf8mb4;
/*!40101 SET character_set_client = @saved_cs_client */;
--
@@ -391,7 +391,7 @@ CREATE TABLE `SS13_whitelist` (
`species` mediumtext COLLATE utf8mb4_unicode_ci DEFAULT NULL,
PRIMARY KEY (`id`),
KEY `ckey` (`ckey`)
-) ENGINE=MyISAM AUTO_INCREMENT=4080 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
+) ENGINE=InnoDB AUTO_INCREMENT=4080 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
/*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */;
diff --git a/SQL/updates/22-23.sql b/SQL/updates/22-23.sql
new file mode 100644
index 00000000000..975e8acd413
--- /dev/null
+++ b/SQL/updates/22-23.sql
@@ -0,0 +1,11 @@
+# Updating SQL from version 22 to 23 -AffectedArc07
+# Converts existing MyISAM tables to InnoDB
+
+ALTER TABLE `customuseritems` ENGINE=InnoDB;
+ALTER TABLE `death` ENGINE=InnoDB;
+ALTER TABLE `feedback` ENGINE=InnoDB;
+ALTER TABLE `karma` ENGINE=InnoDB;
+ALTER TABLE `karmatotals` ENGINE=InnoDB;
+ALTER TABLE `legacy_population` ENGINE=InnoDB;
+ALTER TABLE `library` ENGINE=InnoDB;
+ALTER TABLE `whitelist` ENGINE=InnoDB;
diff --git a/code/__DEFINES/misc.dm b/code/__DEFINES/misc.dm
index e75eb49a02e..f9aba1efc1b 100644
--- a/code/__DEFINES/misc.dm
+++ b/code/__DEFINES/misc.dm
@@ -363,7 +363,7 @@
#define INVESTIGATE_BOMB "bombs"
// The SQL version required by this version of the code
-#define SQL_VERSION 22
+#define SQL_VERSION 23
// Vending machine stuff
#define CAT_NORMAL 1
diff --git a/config/example/dbconfig.txt b/config/example/dbconfig.txt
index 1cf22d60895..7c8f67e57c4 100644
--- a/config/example/dbconfig.txt
+++ b/config/example/dbconfig.txt
@@ -9,7 +9,7 @@
## This value must be set to the version of the paradise schema in use.
## If this value does not match, the SQL database will not be loaded and an error will be generated.
## Roundstart will be delayed.
-DB_VERSION 22
+DB_VERSION 23
## Server the MySQL database can be found at.
# Examples: localhost, 200.135.5.43, www.mysqldb.com, etc.
diff --git a/tgui/log.txt b/tgui/log.txt
new file mode 100644
index 00000000000..21f36619f85
--- /dev/null
+++ b/tgui/log.txt
@@ -0,0 +1,293 @@
+yarn install v1.22.4
+[1/4] Resolving packages...
+success Already up-to-date.
+Done in 1.09s.
+
+C:\Users\AffectedArc07\Documents\Paradise\tgui\packages\tgui\components\Dropdown.js
+ 74:18 error Expected newline between test and consequent of ternary expression multiline-ternary
+ 74:36 error Expected newline between consequent and alternate of ternary expression multiline-ternary
+
+C:\Users\AffectedArc07\Documents\Paradise\tgui\packages\tgui\components\Input.js
+ 138:10 error Expected newline between test and consequent of ternary expression multiline-ternary
+ 138:22 error Expected newline between consequent and alternate of ternary expression multiline-ternary
+
+C:\Users\AffectedArc07\Documents\Paradise\tgui\packages\tgui\interfaces\AirAlarm.js
+ 65:8 error Expected newline between test and consequent of ternary expression multiline-ternary
+ 65:14 error Expected newline between consequent and alternate of ternary expression multiline-ternary
+
+C:\Users\AffectedArc07\Documents\Paradise\tgui\packages\tgui\interfaces\BodyScanner.js
+ 81:16 error Expected newline between test and consequent of ternary expression multiline-ternary
+ 81:27 error Expected newline between consequent and alternate of ternary expression multiline-ternary
+ 160:12 error Expected newline between test and consequent of ternary expression multiline-ternary
+ 160:35 error Expected newline between consequent and alternate of ternary expression multiline-ternary
+
+C:\Users\AffectedArc07\Documents\Paradise\tgui\packages\tgui\interfaces\ChemMaster.js
+ 276:8 error Expected newline between test and consequent of ternary expression multiline-ternary
+ 276:29 error Expected newline between consequent and alternate of ternary expression multiline-ternary
+
+C:\Users\AffectedArc07\Documents\Paradise\tgui\packages\tgui\interfaces\CloningConsole.js
+ 30:12 error Expected newline between test and consequent of ternary expression multiline-ternary
+ 30:33 error Expected newline between consequent and alternate of ternary expression multiline-ternary
+ 220:14 error Expected newline between test and consequent of ternary expression multiline-ternary
+ 220:24 error Expected newline between consequent and alternate of ternary expression multiline-ternary
+ 437:12 error Expected newline between test and consequent of ternary expression multiline-ternary
+ 437:22 error Expected newline between consequent and alternate of ternary expression multiline-ternary
+ 448:12 error Expected newline between test and consequent of ternary expression multiline-ternary
+ 448:27 error Expected newline between consequent and alternate of ternary expression multiline-ternary
+
+C:\Users\AffectedArc07\Documents\Paradise\tgui\packages\tgui\interfaces\Contractor.js
+ 72:12 error Expected newline between test and consequent of ternary expression multiline-ternary
+ 72:30 error Expected newline between consequent and alternate of ternary expression multiline-ternary
+
+C:\Users\AffectedArc07\Documents\Paradise\tgui\packages\tgui\interfaces\CrewMonitor.js
+ 109:16 error Expected newline between test and consequent of ternary expression multiline-ternary
+ 109:38 error Expected newline between consequent and alternate of ternary expression multiline-ternary
+ 136:16 error Expected newline between test and consequent of ternary expression multiline-ternary
+ 136:39 error Expected newline between consequent and alternate of ternary expression multiline-ternary
+ 137:17 error Expected newline between test and consequent of ternary expression multiline-ternary
+ 137:29 error Expected newline between consequent and alternate of ternary expression multiline-ternary
+
+C:\Users\AffectedArc07\Documents\Paradise\tgui\packages\tgui\interfaces\Cryo.js
+ 66:10 error Expected newline between test and consequent of ternary expression multiline-ternary
+ 66:24 error Expected newline between consequent and alternate of ternary expression multiline-ternary
+ 190:12 error Expected newline between test and consequent of ternary expression multiline-ternary
+ 190:27 error Expected newline between consequent and alternate of ternary expression multiline-ternary
+
+C:\Users\AffectedArc07\Documents\Paradise\tgui\packages\tgui\interfaces\DNAModifier.js
+ 79:8 error Expected newline between test and consequent of ternary expression multiline-ternary
+ 79:22 error Expected newline between consequent and alternate of ternary expression multiline-ternary
+ 104:12 error Expected newline between test and consequent of ternary expression multiline-ternary
+ 104:35 error Expected newline between consequent and alternate of ternary expression multiline-ternary
+ 122:21 error Expected newline between consequent and alternate of ternary expression multiline-ternary
+ 535:8 error Expected newline between test and consequent of ternary expression multiline-ternary
+ 535:18 error Expected newline between consequent and alternate of ternary expression multiline-ternary
+ 536:9 error Expected newline between test and consequent of ternary expression multiline-ternary
+ 536:21 error Expected newline between consequent and alternate of ternary expression multiline-ternary
+ 543:19 error Expected newline between consequent and alternate of ternary expression multiline-ternary
+ 590:8 error Expected newline between test and consequent of ternary expression multiline-ternary
+ 590:25 error Expected newline between consequent and alternate of ternary expression multiline-ternary
+ 617:14 error Expected newline between test and consequent of ternary expression multiline-ternary
+ 617:29 error Expected newline between consequent and alternate of ternary expression multiline-ternary
+
+C:\Users\AffectedArc07\Documents\Paradise\tgui\packages\tgui\interfaces\EFTPOS.js
+ 17:10 error Expected newline between test and consequent of ternary expression multiline-ternary
+ 17:31 error Expected newline between consequent and alternate of ternary expression multiline-ternary
+
+C:\Users\AffectedArc07\Documents\Paradise\tgui\packages\tgui\interfaces\ExosuitFabricator.js
+ 208:10 error Expected newline between test and consequent of ternary expression multiline-ternary
+ 208:31 error Expected newline between consequent and alternate of ternary expression multiline-ternary
+ 310:10 error Expected newline between test and consequent of ternary expression multiline-ternary
+ 310:25 error Expected newline between consequent and alternate of ternary expression multiline-ternary
+ 361:10 error Expected newline between test and consequent of ternary expression multiline-ternary
+ 361:28 error Expected newline between consequent and alternate of ternary expression multiline-ternary
+
+C:\Users\AffectedArc07\Documents\Paradise\tgui\packages\tgui\interfaces\FloorPainter.js
+ 93:28 error Expected newline between test and consequent of ternary expression multiline-ternary
+ 93:41 error Expected newline between consequent and alternate of ternary expression multiline-ternary
+
+C:\Users\AffectedArc07\Documents\Paradise\tgui\packages\tgui\interfaces\GPS.js
+ 37:12 error Expected newline between test and consequent of ternary expression multiline-ternary
+ 37:20 error Expected newline between consequent and alternate of ternary expression multiline-ternary
+ 46:16 error Expected newline between test and consequent of ternary expression multiline-ternary
+ 46:25 error Expected newline between consequent and alternate of ternary expression multiline-ternary
+
+C:\Users\AffectedArc07\Documents\Paradise\tgui\packages\tgui\interfaces\Instrument.js
+ 302:12 error Expected newline between test and consequent of ternary expression multiline-ternary
+ 302:20 error Expected newline between consequent and alternate of ternary expression multiline-ternary
+ 376:16 error Expected newline between test and consequent of ternary expression multiline-ternary
+ 376:35 error Expected newline between consequent and alternate of ternary expression multiline-ternary
+ 479:9 error Expected newline between test and consequent of ternary expression multiline-ternary
+ 479:28 error Expected newline between consequent and alternate of ternary expression multiline-ternary
+
+C:\Users\AffectedArc07\Documents\Paradise\tgui\packages\tgui\interfaces\MedicalRecords.js
+ 288:10 error Expected newline between test and consequent of ternary expression multiline-ternary
+ 363:14 error Expected newline between test and consequent of ternary expression multiline-ternary
+ 363:26 error Expected newline between consequent and alternate of ternary expression multiline-ternary
+
+C:\Users\AffectedArc07\Documents\Paradise\tgui\packages\tgui\interfaces\MiningVendor.js
+ 33:8 error Expected newline between test and consequent of ternary expression multiline-ternary
+ 33:17 error Expected newline between consequent and alternate of ternary expression multiline-ternary
+ 118:13 error Expected newline between consequent and alternate of ternary expression multiline-ternary
+
+C:\Users\AffectedArc07\Documents\Paradise\tgui\packages\tgui\interfaces\Newscaster.js
+ 63:8 error Expected newline between test and consequent of ternary expression multiline-ternary
+ 63:23 error Expected newline between consequent and alternate of ternary expression multiline-ternary
+ 428:10 error Expected newline between test and consequent of ternary expression multiline-ternary
+ 428:37 error Expected newline between consequent and alternate of ternary expression multiline-ternary
+
+C:\Users\AffectedArc07\Documents\Paradise\tgui\packages\tgui\interfaces\OperatingComputer.js
+ 145:10 error Expected newline between test and consequent of ternary expression multiline-ternary
+ 145:31 error Expected newline between consequent and alternate of ternary expression multiline-ternary
+
+C:\Users\AffectedArc07\Documents\Paradise\tgui\packages\tgui\interfaces\OreRedemption.js
+ 51:12 error Expected newline between test and consequent of ternary expression multiline-ternary
+ 51:17 error Expected newline between consequent and alternate of ternary expression multiline-ternary
+ 96:8 error Expected newline between test and consequent of ternary expression multiline-ternary
+ 96:15 error Expected newline between consequent and alternate of ternary expression multiline-ternary
+
+C:\Users\AffectedArc07\Documents\Paradise\tgui\packages\tgui\interfaces\PDA.js
+ 82:10 error Expected newline between test and consequent of ternary expression multiline-ternary
+ 82:23 error Expected newline between consequent and alternate of ternary expression multiline-ternary
+ 96:10 error Expected newline between test and consequent of ternary expression multiline-ternary
+ 96:27 error Expected newline between consequent and alternate of ternary expression multiline-ternary
+
+C:\Users\AffectedArc07\Documents\Paradise\tgui\packages\tgui\interfaces\PersonalCrafting.js
+ 76:12 error Expected newline between test and consequent of ternary expression multiline-ternary
+ 76:30 error Expected newline between consequent and alternate of ternary expression multiline-ternary
+
+C:\Users\AffectedArc07\Documents\Paradise\tgui\packages\tgui\interfaces\PoolController.js
+ 58:16 error Expected newline between test and consequent of ternary expression multiline-ternary
+ 58:26 error Expected newline between consequent and alternate of ternary expression multiline-ternary
+
+C:\Users\AffectedArc07\Documents\Paradise\tgui\packages\tgui\interfaces\PortablePump.js
+ 14:10 error Expected newline between test and consequent of ternary expression multiline-ternary
+ 14:29 error Expected newline between consequent and alternate of ternary expression multiline-ternary
+
+C:\Users\AffectedArc07\Documents\Paradise\tgui\packages\tgui\interfaces\PortableScrubber.js
+ 14:10 error Expected newline between test and consequent of ternary expression multiline-ternary
+ 14:29 error Expected newline between consequent and alternate of ternary expression multiline-ternary
+
+C:\Users\AffectedArc07\Documents\Paradise\tgui\packages\tgui\interfaces\RCD.js
+ 133:8 error Expected newline between test and consequent of ternary expression multiline-ternary
+ 133:20 error Expected newline between consequent and alternate of ternary expression multiline-ternary
+ 146:11 error Expected newline between test and consequent of ternary expression multiline-ternary
+ 146:35 error Expected newline between consequent and alternate of ternary expression multiline-ternary
+
+C:\Users\AffectedArc07\Documents\Paradise\tgui\packages\tgui\interfaces\RPD.js
+ 103:18 error Expected newline between test and consequent of ternary expression multiline-ternary
+ 103:28 error Expected newline between consequent and alternate of ternary expression multiline-ternary
+
+C:\Users\AffectedArc07\Documents\Paradise\tgui\packages\tgui\interfaces\RequestConsole.js
+ 330:8 error Expected newline between test and consequent of ternary expression multiline-ternary
+ 330:23 error Expected newline between consequent and alternate of ternary expression multiline-ternary
+
+C:\Users\AffectedArc07\Documents\Paradise\tgui\packages\tgui\interfaces\RndConsole.js
+ 49:12 error Expected newline between test and consequent of ternary expression multiline-ternary
+ 49:27 error Expected newline between consequent and alternate of ternary expression multiline-ternary
+
+C:\Users\AffectedArc07\Documents\Paradise\tgui\packages\tgui\interfaces\RndConsoleComponents\DataDiskMenu.js
+ 48:10 error Expected newline between test and consequent of ternary expression multiline-ternary
+ 48:28 error Expected newline between consequent and alternate of ternary expression multiline-ternary
+
+C:\Users\AffectedArc07\Documents\Paradise\tgui\packages\tgui\interfaces\RndConsoleComponents\DeconstructionMenu.js
+ 40:16 error Expected newline between test and consequent of ternary expression multiline-ternary
+ 40:37 error Expected newline between consequent and alternate of ternary expression multiline-ternary
+
+C:\Users\AffectedArc07\Documents\Paradise\tgui\packages\tgui\interfaces\RndConsoleComponents\LatheCategory.js
+ 34:18 error Expected newline between test and consequent of ternary expression multiline-ternary
+ 34:35 error Expected newline between consequent and alternate of ternary expression multiline-ternary
+ 41:18 error Expected newline between test and consequent of ternary expression multiline-ternary
+ 41:36 error Expected newline between consequent and alternate of ternary expression multiline-ternary
+
+C:\Users\AffectedArc07\Documents\Paradise\tgui\packages\tgui\interfaces\RndConsoleComponents\LatheMaterialStorage.js
+ 29:18 error Expected newline between test and consequent of ternary expression multiline-ternary
+ 29:35 error Expected newline between consequent and alternate of ternary expression multiline-ternary
+ 33:22 error Expected newline between test and consequent of ternary expression multiline-ternary
+ 33:43 error Expected newline between consequent and alternate of ternary expression multiline-ternary
+
+C:\Users\AffectedArc07\Documents\Paradise\tgui\packages\tgui\interfaces\RndConsoleComponents\LatheMaterials.js
+ 21:12 error Expected newline between test and consequent of ternary expression multiline-ternary
+ 21:28 error Expected newline between consequent and alternate of ternary expression multiline-ternary
+ 30:12 error Expected newline between test and consequent of ternary expression multiline-ternary
+ 30:28 error Expected newline between consequent and alternate of ternary expression multiline-ternary
+
+C:\Users\AffectedArc07\Documents\Paradise\tgui\packages\tgui\interfaces\RndConsoleComponents\SettingsMenu.js
+ 53:14 error Expected newline between test and consequent of ternary expression multiline-ternary
+ 53:28 error Expected newline between consequent and alternate of ternary expression multiline-ternary
+ 75:14 error Expected newline between test and consequent of ternary expression multiline-ternary
+ 75:31 error Expected newline between consequent and alternate of ternary expression multiline-ternary
+ 86:14 error Expected newline between test and consequent of ternary expression multiline-ternary
+ 86:29 error Expected newline between consequent and alternate of ternary expression multiline-ternary
+ 99:14 error Expected newline between test and consequent of ternary expression multiline-ternary
+ 99:33 error Expected newline between consequent and alternate of ternary expression multiline-ternary
+
+C:\Users\AffectedArc07\Documents\Paradise\tgui\packages\tgui\interfaces\Safe.js
+ 28:12 error Expected newline between test and consequent of ternary expression multiline-ternary
+ 28:19 error Expected newline between consequent and alternate of ternary expression multiline-ternary
+
+C:\Users\AffectedArc07\Documents\Paradise\tgui\packages\tgui\interfaces\SecurityRecords.js
+ 418:10 error Expected newline between test and consequent of ternary expression multiline-ternary
+ 418:43 error Expected newline between consequent and alternate of ternary expression multiline-ternary
+
+C:\Users\AffectedArc07\Documents\Paradise\tgui\packages\tgui\interfaces\ShuttleConsole.js
+ 14:16 error Expected newline between test and consequent of ternary expression multiline-ternary
+ 14:30 error Expected newline between consequent and alternate of ternary expression multiline-ternary
+
+C:\Users\AffectedArc07\Documents\Paradise\tgui\packages\tgui\interfaces\ShuttleManipulator.js
+ 159:8 error Expected newline between test and consequent of ternary expression multiline-ternary
+ 159:27 error Expected newline between consequent and alternate of ternary expression multiline-ternary
+ 184:8 error Expected newline between test and consequent of ternary expression multiline-ternary
+ 184:19 error Expected newline between consequent and alternate of ternary expression multiline-ternary
+
+C:\Users\AffectedArc07\Documents\Paradise\tgui\packages\tgui\interfaces\Sleeper.js
+ 204:8 error Expected newline between test and consequent of ternary expression multiline-ternary
+ 204:25 error Expected newline between consequent and alternate of ternary expression multiline-ternary
+
+C:\Users\AffectedArc07\Documents\Paradise\tgui\packages\tgui\interfaces\TachyonArray.js
+ 41:10 error Expected newline between test and consequent of ternary expression multiline-ternary
+ 41:28 error Expected newline between consequent and alternate of ternary expression multiline-ternary
+
+C:\Users\AffectedArc07\Documents\Paradise\tgui\packages\tgui\interfaces\TcommsCore.js
+ 235:16 error Expected newline between test and consequent of ternary expression multiline-ternary
+ 235:33 error Expected newline between consequent and alternate of ternary expression multiline-ternary
+
+C:\Users\AffectedArc07\Documents\Paradise\tgui\packages\tgui\interfaces\TcommsRelay.js
+ 35:16 error Expected newline between test and consequent of ternary expression multiline-ternary
+ 35:31 error Expected newline between consequent and alternate of ternary expression multiline-ternary
+ 47:10 error Expected newline between test and consequent of ternary expression multiline-ternary
+ 47:25 error Expected newline between consequent and alternate of ternary expression multiline-ternary
+
+C:\Users\AffectedArc07\Documents\Paradise\tgui\packages\tgui\interfaces\TransferValve.js
+ 39:14 error Expected newline between test and consequent of ternary expression multiline-ternary
+ 39:32 error Expected newline between consequent and alternate of ternary expression multiline-ternary
+ 56:14 error Expected newline between test and consequent of ternary expression multiline-ternary
+ 56:25 error Expected newline between consequent and alternate of ternary expression multiline-ternary
+ 73:14 error Expected newline between test and consequent of ternary expression multiline-ternary
+ 73:25 error Expected newline between consequent and alternate of ternary expression multiline-ternary
+
+C:\Users\AffectedArc07\Documents\Paradise\tgui\packages\tgui\interfaces\common\SimpleRecords.js
+ 14:8 error Expected newline between test and consequent of ternary expression multiline-ternary
+ 14:19 error Expected newline between consequent and alternate of ternary expression multiline-ternary
+ 86:12 error Expected newline between test and consequent of ternary expression multiline-ternary
+ 86:22 error Expected newline between consequent and alternate of ternary expression multiline-ternary
+ 130:12 error Expected newline between test and consequent of ternary expression multiline-ternary
+ 130:23 error Expected newline between consequent and alternate of ternary expression multiline-ternary
+ 168:10 error Expected newline between test and consequent of ternary expression multiline-ternary
+ 168:20 error Expected newline between consequent and alternate of ternary expression multiline-ternary
+
+C:\Users\AffectedArc07\Documents\Paradise\tgui\packages\tgui\interfaces\pai\pai_bioscan.js
+ 27:10 error Expected newline between test and consequent of ternary expression multiline-ternary
+ 27:17 error Expected newline between consequent and alternate of ternary expression multiline-ternary
+
+C:\Users\AffectedArc07\Documents\Paradise\tgui\packages\tgui\interfaces\pai\pai_directives.js
+ 17:12 error Expected newline between test and consequent of ternary expression multiline-ternary
+ 17:21 error Expected newline between consequent and alternate of ternary expression multiline-ternary
+ 35:12 error Expected newline between test and consequent of ternary expression multiline-ternary
+ 35:27 error Expected newline between consequent and alternate of ternary expression multiline-ternary
+
+C:\Users\AffectedArc07\Documents\Paradise\tgui\packages\tgui\interfaces\pai\pai_doorjack.js
+ 42:10 error Expected newline between test and consequent of ternary expression multiline-ternary
+ 42:23 error Expected newline between consequent and alternate of ternary expression multiline-ternary
+
+C:\Users\AffectedArc07\Documents\Paradise\tgui\packages\tgui\interfaces\pda\pda_mob_hunt.js
+ 18:12 error Expected newline between test and consequent of ternary expression multiline-ternary
+ 18:24 error Expected newline between consequent and alternate of ternary expression multiline-ternary
+ 65:10 error Expected newline between test and consequent of ternary expression multiline-ternary
+ 65:26 error Expected newline between consequent and alternate of ternary expression multiline-ternary
+ 68:11 error Expected newline between test and consequent of ternary expression multiline-ternary
+ 68:19 error Expected newline between consequent and alternate of ternary expression multiline-ternary
+
+C:\Users\AffectedArc07\Documents\Paradise\tgui\packages\tgui\interfaces\pda\pda_mule.js
+ 13:8 error Expected newline between test and consequent of ternary expression multiline-ternary
+ 13:17 error Expected newline between consequent and alternate of ternary expression multiline-ternary
+
+C:\Users\AffectedArc07\Documents\Paradise\tgui\packages\tgui\interfaces\pda\pda_secbot.js
+ 13:8 error Expected newline between test and consequent of ternary expression multiline-ternary
+ 13:17 error Expected newline between consequent and alternate of ternary expression multiline-ternary
+
+C:\Users\AffectedArc07\Documents\Paradise\tgui\packages\tgui\interfaces\pda\pda_supplyrecords.js
+ 21:12 error Expected newline between test and consequent of ternary expression multiline-ternary
+ 21:29 error Expected newline between consequent and alternate of ternary expression multiline-ternary
+
+✖ 182 problems (182 errors, 0 warnings)
+
diff --git a/tools/ci/dbconfig.txt b/tools/ci/dbconfig.txt
index 2fff6faf540..fc7d80f39aa 100644
--- a/tools/ci/dbconfig.txt
+++ b/tools/ci/dbconfig.txt
@@ -2,7 +2,7 @@
# Dont use it ingame
# Remember to update this when you increase the SQL version! -aa
SQL_ENABLED
-DB_VERSION 22
+DB_VERSION 23
ADDRESS 127.0.0.1
PORT 3306
FEEDBACK_DATABASE feedback
From 5bc2ebca11804ccd42f947edc6f02f783eec17b0 Mon Sep 17 00:00:00 2001
From: AffectedArc07 <25063394+AffectedArc07@users.noreply.github.com>
Date: Thu, 18 Mar 2021 14:40:26 +0000
Subject: [PATCH 005/172] oops
---
tgui/log.txt | 293 ---------------------------------------------------
1 file changed, 293 deletions(-)
delete mode 100644 tgui/log.txt
diff --git a/tgui/log.txt b/tgui/log.txt
deleted file mode 100644
index 21f36619f85..00000000000
--- a/tgui/log.txt
+++ /dev/null
@@ -1,293 +0,0 @@
-yarn install v1.22.4
-[1/4] Resolving packages...
-success Already up-to-date.
-Done in 1.09s.
-
-C:\Users\AffectedArc07\Documents\Paradise\tgui\packages\tgui\components\Dropdown.js
- 74:18 error Expected newline between test and consequent of ternary expression multiline-ternary
- 74:36 error Expected newline between consequent and alternate of ternary expression multiline-ternary
-
-C:\Users\AffectedArc07\Documents\Paradise\tgui\packages\tgui\components\Input.js
- 138:10 error Expected newline between test and consequent of ternary expression multiline-ternary
- 138:22 error Expected newline between consequent and alternate of ternary expression multiline-ternary
-
-C:\Users\AffectedArc07\Documents\Paradise\tgui\packages\tgui\interfaces\AirAlarm.js
- 65:8 error Expected newline between test and consequent of ternary expression multiline-ternary
- 65:14 error Expected newline between consequent and alternate of ternary expression multiline-ternary
-
-C:\Users\AffectedArc07\Documents\Paradise\tgui\packages\tgui\interfaces\BodyScanner.js
- 81:16 error Expected newline between test and consequent of ternary expression multiline-ternary
- 81:27 error Expected newline between consequent and alternate of ternary expression multiline-ternary
- 160:12 error Expected newline between test and consequent of ternary expression multiline-ternary
- 160:35 error Expected newline between consequent and alternate of ternary expression multiline-ternary
-
-C:\Users\AffectedArc07\Documents\Paradise\tgui\packages\tgui\interfaces\ChemMaster.js
- 276:8 error Expected newline between test and consequent of ternary expression multiline-ternary
- 276:29 error Expected newline between consequent and alternate of ternary expression multiline-ternary
-
-C:\Users\AffectedArc07\Documents\Paradise\tgui\packages\tgui\interfaces\CloningConsole.js
- 30:12 error Expected newline between test and consequent of ternary expression multiline-ternary
- 30:33 error Expected newline between consequent and alternate of ternary expression multiline-ternary
- 220:14 error Expected newline between test and consequent of ternary expression multiline-ternary
- 220:24 error Expected newline between consequent and alternate of ternary expression multiline-ternary
- 437:12 error Expected newline between test and consequent of ternary expression multiline-ternary
- 437:22 error Expected newline between consequent and alternate of ternary expression multiline-ternary
- 448:12 error Expected newline between test and consequent of ternary expression multiline-ternary
- 448:27 error Expected newline between consequent and alternate of ternary expression multiline-ternary
-
-C:\Users\AffectedArc07\Documents\Paradise\tgui\packages\tgui\interfaces\Contractor.js
- 72:12 error Expected newline between test and consequent of ternary expression multiline-ternary
- 72:30 error Expected newline between consequent and alternate of ternary expression multiline-ternary
-
-C:\Users\AffectedArc07\Documents\Paradise\tgui\packages\tgui\interfaces\CrewMonitor.js
- 109:16 error Expected newline between test and consequent of ternary expression multiline-ternary
- 109:38 error Expected newline between consequent and alternate of ternary expression multiline-ternary
- 136:16 error Expected newline between test and consequent of ternary expression multiline-ternary
- 136:39 error Expected newline between consequent and alternate of ternary expression multiline-ternary
- 137:17 error Expected newline between test and consequent of ternary expression multiline-ternary
- 137:29 error Expected newline between consequent and alternate of ternary expression multiline-ternary
-
-C:\Users\AffectedArc07\Documents\Paradise\tgui\packages\tgui\interfaces\Cryo.js
- 66:10 error Expected newline between test and consequent of ternary expression multiline-ternary
- 66:24 error Expected newline between consequent and alternate of ternary expression multiline-ternary
- 190:12 error Expected newline between test and consequent of ternary expression multiline-ternary
- 190:27 error Expected newline between consequent and alternate of ternary expression multiline-ternary
-
-C:\Users\AffectedArc07\Documents\Paradise\tgui\packages\tgui\interfaces\DNAModifier.js
- 79:8 error Expected newline between test and consequent of ternary expression multiline-ternary
- 79:22 error Expected newline between consequent and alternate of ternary expression multiline-ternary
- 104:12 error Expected newline between test and consequent of ternary expression multiline-ternary
- 104:35 error Expected newline between consequent and alternate of ternary expression multiline-ternary
- 122:21 error Expected newline between consequent and alternate of ternary expression multiline-ternary
- 535:8 error Expected newline between test and consequent of ternary expression multiline-ternary
- 535:18 error Expected newline between consequent and alternate of ternary expression multiline-ternary
- 536:9 error Expected newline between test and consequent of ternary expression multiline-ternary
- 536:21 error Expected newline between consequent and alternate of ternary expression multiline-ternary
- 543:19 error Expected newline between consequent and alternate of ternary expression multiline-ternary
- 590:8 error Expected newline between test and consequent of ternary expression multiline-ternary
- 590:25 error Expected newline between consequent and alternate of ternary expression multiline-ternary
- 617:14 error Expected newline between test and consequent of ternary expression multiline-ternary
- 617:29 error Expected newline between consequent and alternate of ternary expression multiline-ternary
-
-C:\Users\AffectedArc07\Documents\Paradise\tgui\packages\tgui\interfaces\EFTPOS.js
- 17:10 error Expected newline between test and consequent of ternary expression multiline-ternary
- 17:31 error Expected newline between consequent and alternate of ternary expression multiline-ternary
-
-C:\Users\AffectedArc07\Documents\Paradise\tgui\packages\tgui\interfaces\ExosuitFabricator.js
- 208:10 error Expected newline between test and consequent of ternary expression multiline-ternary
- 208:31 error Expected newline between consequent and alternate of ternary expression multiline-ternary
- 310:10 error Expected newline between test and consequent of ternary expression multiline-ternary
- 310:25 error Expected newline between consequent and alternate of ternary expression multiline-ternary
- 361:10 error Expected newline between test and consequent of ternary expression multiline-ternary
- 361:28 error Expected newline between consequent and alternate of ternary expression multiline-ternary
-
-C:\Users\AffectedArc07\Documents\Paradise\tgui\packages\tgui\interfaces\FloorPainter.js
- 93:28 error Expected newline between test and consequent of ternary expression multiline-ternary
- 93:41 error Expected newline between consequent and alternate of ternary expression multiline-ternary
-
-C:\Users\AffectedArc07\Documents\Paradise\tgui\packages\tgui\interfaces\GPS.js
- 37:12 error Expected newline between test and consequent of ternary expression multiline-ternary
- 37:20 error Expected newline between consequent and alternate of ternary expression multiline-ternary
- 46:16 error Expected newline between test and consequent of ternary expression multiline-ternary
- 46:25 error Expected newline between consequent and alternate of ternary expression multiline-ternary
-
-C:\Users\AffectedArc07\Documents\Paradise\tgui\packages\tgui\interfaces\Instrument.js
- 302:12 error Expected newline between test and consequent of ternary expression multiline-ternary
- 302:20 error Expected newline between consequent and alternate of ternary expression multiline-ternary
- 376:16 error Expected newline between test and consequent of ternary expression multiline-ternary
- 376:35 error Expected newline between consequent and alternate of ternary expression multiline-ternary
- 479:9 error Expected newline between test and consequent of ternary expression multiline-ternary
- 479:28 error Expected newline between consequent and alternate of ternary expression multiline-ternary
-
-C:\Users\AffectedArc07\Documents\Paradise\tgui\packages\tgui\interfaces\MedicalRecords.js
- 288:10 error Expected newline between test and consequent of ternary expression multiline-ternary
- 363:14 error Expected newline between test and consequent of ternary expression multiline-ternary
- 363:26 error Expected newline between consequent and alternate of ternary expression multiline-ternary
-
-C:\Users\AffectedArc07\Documents\Paradise\tgui\packages\tgui\interfaces\MiningVendor.js
- 33:8 error Expected newline between test and consequent of ternary expression multiline-ternary
- 33:17 error Expected newline between consequent and alternate of ternary expression multiline-ternary
- 118:13 error Expected newline between consequent and alternate of ternary expression multiline-ternary
-
-C:\Users\AffectedArc07\Documents\Paradise\tgui\packages\tgui\interfaces\Newscaster.js
- 63:8 error Expected newline between test and consequent of ternary expression multiline-ternary
- 63:23 error Expected newline between consequent and alternate of ternary expression multiline-ternary
- 428:10 error Expected newline between test and consequent of ternary expression multiline-ternary
- 428:37 error Expected newline between consequent and alternate of ternary expression multiline-ternary
-
-C:\Users\AffectedArc07\Documents\Paradise\tgui\packages\tgui\interfaces\OperatingComputer.js
- 145:10 error Expected newline between test and consequent of ternary expression multiline-ternary
- 145:31 error Expected newline between consequent and alternate of ternary expression multiline-ternary
-
-C:\Users\AffectedArc07\Documents\Paradise\tgui\packages\tgui\interfaces\OreRedemption.js
- 51:12 error Expected newline between test and consequent of ternary expression multiline-ternary
- 51:17 error Expected newline between consequent and alternate of ternary expression multiline-ternary
- 96:8 error Expected newline between test and consequent of ternary expression multiline-ternary
- 96:15 error Expected newline between consequent and alternate of ternary expression multiline-ternary
-
-C:\Users\AffectedArc07\Documents\Paradise\tgui\packages\tgui\interfaces\PDA.js
- 82:10 error Expected newline between test and consequent of ternary expression multiline-ternary
- 82:23 error Expected newline between consequent and alternate of ternary expression multiline-ternary
- 96:10 error Expected newline between test and consequent of ternary expression multiline-ternary
- 96:27 error Expected newline between consequent and alternate of ternary expression multiline-ternary
-
-C:\Users\AffectedArc07\Documents\Paradise\tgui\packages\tgui\interfaces\PersonalCrafting.js
- 76:12 error Expected newline between test and consequent of ternary expression multiline-ternary
- 76:30 error Expected newline between consequent and alternate of ternary expression multiline-ternary
-
-C:\Users\AffectedArc07\Documents\Paradise\tgui\packages\tgui\interfaces\PoolController.js
- 58:16 error Expected newline between test and consequent of ternary expression multiline-ternary
- 58:26 error Expected newline between consequent and alternate of ternary expression multiline-ternary
-
-C:\Users\AffectedArc07\Documents\Paradise\tgui\packages\tgui\interfaces\PortablePump.js
- 14:10 error Expected newline between test and consequent of ternary expression multiline-ternary
- 14:29 error Expected newline between consequent and alternate of ternary expression multiline-ternary
-
-C:\Users\AffectedArc07\Documents\Paradise\tgui\packages\tgui\interfaces\PortableScrubber.js
- 14:10 error Expected newline between test and consequent of ternary expression multiline-ternary
- 14:29 error Expected newline between consequent and alternate of ternary expression multiline-ternary
-
-C:\Users\AffectedArc07\Documents\Paradise\tgui\packages\tgui\interfaces\RCD.js
- 133:8 error Expected newline between test and consequent of ternary expression multiline-ternary
- 133:20 error Expected newline between consequent and alternate of ternary expression multiline-ternary
- 146:11 error Expected newline between test and consequent of ternary expression multiline-ternary
- 146:35 error Expected newline between consequent and alternate of ternary expression multiline-ternary
-
-C:\Users\AffectedArc07\Documents\Paradise\tgui\packages\tgui\interfaces\RPD.js
- 103:18 error Expected newline between test and consequent of ternary expression multiline-ternary
- 103:28 error Expected newline between consequent and alternate of ternary expression multiline-ternary
-
-C:\Users\AffectedArc07\Documents\Paradise\tgui\packages\tgui\interfaces\RequestConsole.js
- 330:8 error Expected newline between test and consequent of ternary expression multiline-ternary
- 330:23 error Expected newline between consequent and alternate of ternary expression multiline-ternary
-
-C:\Users\AffectedArc07\Documents\Paradise\tgui\packages\tgui\interfaces\RndConsole.js
- 49:12 error Expected newline between test and consequent of ternary expression multiline-ternary
- 49:27 error Expected newline between consequent and alternate of ternary expression multiline-ternary
-
-C:\Users\AffectedArc07\Documents\Paradise\tgui\packages\tgui\interfaces\RndConsoleComponents\DataDiskMenu.js
- 48:10 error Expected newline between test and consequent of ternary expression multiline-ternary
- 48:28 error Expected newline between consequent and alternate of ternary expression multiline-ternary
-
-C:\Users\AffectedArc07\Documents\Paradise\tgui\packages\tgui\interfaces\RndConsoleComponents\DeconstructionMenu.js
- 40:16 error Expected newline between test and consequent of ternary expression multiline-ternary
- 40:37 error Expected newline between consequent and alternate of ternary expression multiline-ternary
-
-C:\Users\AffectedArc07\Documents\Paradise\tgui\packages\tgui\interfaces\RndConsoleComponents\LatheCategory.js
- 34:18 error Expected newline between test and consequent of ternary expression multiline-ternary
- 34:35 error Expected newline between consequent and alternate of ternary expression multiline-ternary
- 41:18 error Expected newline between test and consequent of ternary expression multiline-ternary
- 41:36 error Expected newline between consequent and alternate of ternary expression multiline-ternary
-
-C:\Users\AffectedArc07\Documents\Paradise\tgui\packages\tgui\interfaces\RndConsoleComponents\LatheMaterialStorage.js
- 29:18 error Expected newline between test and consequent of ternary expression multiline-ternary
- 29:35 error Expected newline between consequent and alternate of ternary expression multiline-ternary
- 33:22 error Expected newline between test and consequent of ternary expression multiline-ternary
- 33:43 error Expected newline between consequent and alternate of ternary expression multiline-ternary
-
-C:\Users\AffectedArc07\Documents\Paradise\tgui\packages\tgui\interfaces\RndConsoleComponents\LatheMaterials.js
- 21:12 error Expected newline between test and consequent of ternary expression multiline-ternary
- 21:28 error Expected newline between consequent and alternate of ternary expression multiline-ternary
- 30:12 error Expected newline between test and consequent of ternary expression multiline-ternary
- 30:28 error Expected newline between consequent and alternate of ternary expression multiline-ternary
-
-C:\Users\AffectedArc07\Documents\Paradise\tgui\packages\tgui\interfaces\RndConsoleComponents\SettingsMenu.js
- 53:14 error Expected newline between test and consequent of ternary expression multiline-ternary
- 53:28 error Expected newline between consequent and alternate of ternary expression multiline-ternary
- 75:14 error Expected newline between test and consequent of ternary expression multiline-ternary
- 75:31 error Expected newline between consequent and alternate of ternary expression multiline-ternary
- 86:14 error Expected newline between test and consequent of ternary expression multiline-ternary
- 86:29 error Expected newline between consequent and alternate of ternary expression multiline-ternary
- 99:14 error Expected newline between test and consequent of ternary expression multiline-ternary
- 99:33 error Expected newline between consequent and alternate of ternary expression multiline-ternary
-
-C:\Users\AffectedArc07\Documents\Paradise\tgui\packages\tgui\interfaces\Safe.js
- 28:12 error Expected newline between test and consequent of ternary expression multiline-ternary
- 28:19 error Expected newline between consequent and alternate of ternary expression multiline-ternary
-
-C:\Users\AffectedArc07\Documents\Paradise\tgui\packages\tgui\interfaces\SecurityRecords.js
- 418:10 error Expected newline between test and consequent of ternary expression multiline-ternary
- 418:43 error Expected newline between consequent and alternate of ternary expression multiline-ternary
-
-C:\Users\AffectedArc07\Documents\Paradise\tgui\packages\tgui\interfaces\ShuttleConsole.js
- 14:16 error Expected newline between test and consequent of ternary expression multiline-ternary
- 14:30 error Expected newline between consequent and alternate of ternary expression multiline-ternary
-
-C:\Users\AffectedArc07\Documents\Paradise\tgui\packages\tgui\interfaces\ShuttleManipulator.js
- 159:8 error Expected newline between test and consequent of ternary expression multiline-ternary
- 159:27 error Expected newline between consequent and alternate of ternary expression multiline-ternary
- 184:8 error Expected newline between test and consequent of ternary expression multiline-ternary
- 184:19 error Expected newline between consequent and alternate of ternary expression multiline-ternary
-
-C:\Users\AffectedArc07\Documents\Paradise\tgui\packages\tgui\interfaces\Sleeper.js
- 204:8 error Expected newline between test and consequent of ternary expression multiline-ternary
- 204:25 error Expected newline between consequent and alternate of ternary expression multiline-ternary
-
-C:\Users\AffectedArc07\Documents\Paradise\tgui\packages\tgui\interfaces\TachyonArray.js
- 41:10 error Expected newline between test and consequent of ternary expression multiline-ternary
- 41:28 error Expected newline between consequent and alternate of ternary expression multiline-ternary
-
-C:\Users\AffectedArc07\Documents\Paradise\tgui\packages\tgui\interfaces\TcommsCore.js
- 235:16 error Expected newline between test and consequent of ternary expression multiline-ternary
- 235:33 error Expected newline between consequent and alternate of ternary expression multiline-ternary
-
-C:\Users\AffectedArc07\Documents\Paradise\tgui\packages\tgui\interfaces\TcommsRelay.js
- 35:16 error Expected newline between test and consequent of ternary expression multiline-ternary
- 35:31 error Expected newline between consequent and alternate of ternary expression multiline-ternary
- 47:10 error Expected newline between test and consequent of ternary expression multiline-ternary
- 47:25 error Expected newline between consequent and alternate of ternary expression multiline-ternary
-
-C:\Users\AffectedArc07\Documents\Paradise\tgui\packages\tgui\interfaces\TransferValve.js
- 39:14 error Expected newline between test and consequent of ternary expression multiline-ternary
- 39:32 error Expected newline between consequent and alternate of ternary expression multiline-ternary
- 56:14 error Expected newline between test and consequent of ternary expression multiline-ternary
- 56:25 error Expected newline between consequent and alternate of ternary expression multiline-ternary
- 73:14 error Expected newline between test and consequent of ternary expression multiline-ternary
- 73:25 error Expected newline between consequent and alternate of ternary expression multiline-ternary
-
-C:\Users\AffectedArc07\Documents\Paradise\tgui\packages\tgui\interfaces\common\SimpleRecords.js
- 14:8 error Expected newline between test and consequent of ternary expression multiline-ternary
- 14:19 error Expected newline between consequent and alternate of ternary expression multiline-ternary
- 86:12 error Expected newline between test and consequent of ternary expression multiline-ternary
- 86:22 error Expected newline between consequent and alternate of ternary expression multiline-ternary
- 130:12 error Expected newline between test and consequent of ternary expression multiline-ternary
- 130:23 error Expected newline between consequent and alternate of ternary expression multiline-ternary
- 168:10 error Expected newline between test and consequent of ternary expression multiline-ternary
- 168:20 error Expected newline between consequent and alternate of ternary expression multiline-ternary
-
-C:\Users\AffectedArc07\Documents\Paradise\tgui\packages\tgui\interfaces\pai\pai_bioscan.js
- 27:10 error Expected newline between test and consequent of ternary expression multiline-ternary
- 27:17 error Expected newline between consequent and alternate of ternary expression multiline-ternary
-
-C:\Users\AffectedArc07\Documents\Paradise\tgui\packages\tgui\interfaces\pai\pai_directives.js
- 17:12 error Expected newline between test and consequent of ternary expression multiline-ternary
- 17:21 error Expected newline between consequent and alternate of ternary expression multiline-ternary
- 35:12 error Expected newline between test and consequent of ternary expression multiline-ternary
- 35:27 error Expected newline between consequent and alternate of ternary expression multiline-ternary
-
-C:\Users\AffectedArc07\Documents\Paradise\tgui\packages\tgui\interfaces\pai\pai_doorjack.js
- 42:10 error Expected newline between test and consequent of ternary expression multiline-ternary
- 42:23 error Expected newline between consequent and alternate of ternary expression multiline-ternary
-
-C:\Users\AffectedArc07\Documents\Paradise\tgui\packages\tgui\interfaces\pda\pda_mob_hunt.js
- 18:12 error Expected newline between test and consequent of ternary expression multiline-ternary
- 18:24 error Expected newline between consequent and alternate of ternary expression multiline-ternary
- 65:10 error Expected newline between test and consequent of ternary expression multiline-ternary
- 65:26 error Expected newline between consequent and alternate of ternary expression multiline-ternary
- 68:11 error Expected newline between test and consequent of ternary expression multiline-ternary
- 68:19 error Expected newline between consequent and alternate of ternary expression multiline-ternary
-
-C:\Users\AffectedArc07\Documents\Paradise\tgui\packages\tgui\interfaces\pda\pda_mule.js
- 13:8 error Expected newline between test and consequent of ternary expression multiline-ternary
- 13:17 error Expected newline between consequent and alternate of ternary expression multiline-ternary
-
-C:\Users\AffectedArc07\Documents\Paradise\tgui\packages\tgui\interfaces\pda\pda_secbot.js
- 13:8 error Expected newline between test and consequent of ternary expression multiline-ternary
- 13:17 error Expected newline between consequent and alternate of ternary expression multiline-ternary
-
-C:\Users\AffectedArc07\Documents\Paradise\tgui\packages\tgui\interfaces\pda\pda_supplyrecords.js
- 21:12 error Expected newline between test and consequent of ternary expression multiline-ternary
- 21:29 error Expected newline between consequent and alternate of ternary expression multiline-ternary
-
-✖ 182 problems (182 errors, 0 warnings)
-
From 5bec6c4c09e2d41524e2ca61c1df40d366a60672 Mon Sep 17 00:00:00 2001
From: Sean Williams <06sean@gmail.com>
Date: Tue, 30 Mar 2021 22:03:25 +0100
Subject: [PATCH 006/172] fix the tracker (#15780)
---
.../computer/pod_tracking_console.dm | 23 ++++++++++---------
1 file changed, 12 insertions(+), 11 deletions(-)
diff --git a/code/game/machinery/computer/pod_tracking_console.dm b/code/game/machinery/computer/pod_tracking_console.dm
index 6af1ab0bdf4..e8072d9e1d7 100644
--- a/code/game/machinery/computer/pod_tracking_console.dm
+++ b/code/game/machinery/computer/pod_tracking_console.dm
@@ -23,18 +23,19 @@
var/list/data = list()
var/list/pods = list()
for(var/obj/item/spacepod_equipment/misc/tracker/TR in GLOB.pod_trackers)
- var/obj/spacepod/my_pod = TR.my_atom
- var/podname = capitalize(sanitize(my_pod.name))
- var/pilot = "None"
- var/passengers = list()
- if(my_pod.pilot)
- pilot = my_pod.pilot
- if(my_pod.passengers)
- for(var/mob/M in my_pod.passengers)
- passengers += M.name
- var/passengers_text = english_list(passengers, "None")
+ if(TR.my_atom)
+ var/obj/spacepod/my_pod = TR.my_atom
+ var/podname = capitalize(sanitize(my_pod.name))
+ var/pilot = "None"
+ var/passengers = list()
+ if(my_pod.pilot)
+ pilot = my_pod.pilot
+ if(my_pod.passengers)
+ for(var/mob/M in my_pod.passengers)
+ passengers += M.name
+ var/passengers_text = english_list(passengers, "None")
- pods.Add(list(list("name" = podname, "podx" = my_pod.x, "pody" = my_pod.y, "podz" = my_pod.z, "pilot" = pilot, "passengers" = passengers_text)))
+ pods.Add(list(list("name" = podname, "podx" = my_pod.x, "pody" = my_pod.y, "podz" = my_pod.z, "pilot" = pilot, "passengers" = passengers_text)))
data["pods"] = pods
return data
From 43104f882609cd23ca600209c0999b17d9bc13b2 Mon Sep 17 00:00:00 2001
From: Adrer
Date: Wed, 31 Mar 2021 16:40:53 +0200
Subject: [PATCH 007/172] Charge check in area teleport to FALSE (#15775)
Co-authored-by: adrermail@gmail.com
---
code/datums/spells/area_teleport.dm | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/code/datums/spells/area_teleport.dm b/code/datums/spells/area_teleport.dm
index 5986da3a412..b931bd9840f 100644
--- a/code/datums/spells/area_teleport.dm
+++ b/code/datums/spells/area_teleport.dm
@@ -11,7 +11,7 @@
/obj/effect/proc_holder/spell/targeted/area_teleport/perform(list/targets, recharge = 1, mob/living/user = usr)
var/thearea = before_cast(targets)
- if(!thearea || !cast_check(TRUE, FALSE, user))
+ if(!thearea || !cast_check(FALSE, FALSE, user))
revert_cast()
return
invocation(thearea)
From dc08268e67473b07e6496529b5491e23cce386d2 Mon Sep 17 00:00:00 2001
From: LordShekelstein <81524060+LordShekelstein@users.noreply.github.com>
Date: Wed, 31 Mar 2021 14:37:58 -0400
Subject: [PATCH 008/172] Fixes Gloves of the North Star exploit. (#15762)
* Fixes Gloves of the North Star exploit.
* Update miscellaneous.dm
* Update miscellaneous.dm
* Create miscellaneous.dm
* Update code/modules/clothing/gloves/miscellaneous.dm
Co-authored-by: SteelSlayer <42044220+SteelSlayer@users.noreply.github.com>
* Update code/modules/clothing/gloves/miscellaneous.dm
Co-authored-by: SteelSlayer <42044220+SteelSlayer@users.noreply.github.com>
Co-authored-by: SteelSlayer <42044220+SteelSlayer@users.noreply.github.com>
---
code/modules/clothing/gloves/miscellaneous.dm | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/code/modules/clothing/gloves/miscellaneous.dm b/code/modules/clothing/gloves/miscellaneous.dm
index 9292bd85292..a6ece08feee 100644
--- a/code/modules/clothing/gloves/miscellaneous.dm
+++ b/code/modules/clothing/gloves/miscellaneous.dm
@@ -166,7 +166,7 @@
var/mob/living/M = loc
if(M.a_intent in accepted_intents)
- if(istype(M.mind.martial_art, /datum/martial_art/cqc))
+ if(M.mind.martial_art || HAS_TRAIT(M, TRAIT_HULK))
M.changeNext_move(CLICK_CD_MELEE)//normal attack speed for hulk, CQC and Carp.
else
M.changeNext_move(click_speed_modifier)
From cb7aadf62d895f53c4b72c6337f9a5d14765a4b9 Mon Sep 17 00:00:00 2001
From: SteelSlayer <42044220+SteelSlayer@users.noreply.github.com>
Date: Wed, 31 Mar 2021 13:42:19 -0500
Subject: [PATCH 009/172] smooth firelock (#15759)
---
icons/obj/doors/doorfireglass.dmi | Bin 4604 -> 9478 bytes
1 file changed, 0 insertions(+), 0 deletions(-)
diff --git a/icons/obj/doors/doorfireglass.dmi b/icons/obj/doors/doorfireglass.dmi
index 33eec5599272b25c8b65e519b363156b59a7a87e..61e7dbb174fdbf23006569d68e44cf97e6f42591 100644
GIT binary patch
literal 9478
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
literal 4604
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
Date: Wed, 31 Mar 2021 20:46:15 +0200
Subject: [PATCH 010/172] Make RND machines check for upgraded parts when
checking if an item is constructable (#15753)
* Protolathe design buildability check efficiency
* Efficiency_coeff rounding error fix
Co-authored-by: adrermail@gmail.com
---
code/modules/research/protolathe.dm | 10 +++++-----
code/modules/research/rdconsole.dm | 2 +-
2 files changed, 6 insertions(+), 6 deletions(-)
diff --git a/code/modules/research/protolathe.dm b/code/modules/research/protolathe.dm
index 485039c56b7..44fa7e00e1b 100644
--- a/code/modules/research/protolathe.dm
+++ b/code/modules/research/protolathe.dm
@@ -63,18 +63,18 @@ Note: Must be placed west/left of and R&D console to function.
for(var/obj/item/stock_parts/matter_bin/M in component_parts)
T += M.rating
materials.max_amount = T * 75000
- T = 1.2
+ T = 12
for(var/obj/item/stock_parts/manipulator/M in component_parts)
- T -= M.rating/10
- efficiency_coeff = min(max(0, T), 1)
+ T -= M.rating
+ efficiency_coeff = min(max(0, T / 10), 1)
/obj/machinery/r_n_d/protolathe/check_mat(datum/design/being_built, M) // now returns how many times the item can be built with the material
var/A = materials.amount(M)
if(!A)
A = reagents.get_reagent_amount(M)
- A = A / max(1, (being_built.reagents_list[M]))
+ A = A / max(1, (being_built.reagents_list[M] * efficiency_coeff))
else
- A = A / max(1, (being_built.materials[M]))
+ A = A / max(1, (being_built.materials[M] * efficiency_coeff))
return A
/obj/machinery/r_n_d/protolathe/attackby(obj/item/O as obj, mob/user as mob, params)
diff --git a/code/modules/research/rdconsole.dm b/code/modules/research/rdconsole.dm
index 7d146e08feb..da21ae77d78 100644
--- a/code/modules/research/rdconsole.dm
+++ b/code/modules/research/rdconsole.dm
@@ -427,7 +427,7 @@ won't update every console in existence) but it's more of a hassle to do. Also,
var/enough_materials = TRUE
- if(!machine.materials.has_materials(efficient_mats, amount))
+ if(!machine.materials.has_materials(being_built.materials, coeff))
atom_say("Not enough materials to complete prototype.")
enough_materials = FALSE
else
From 0f4e4530a9fec9d13ddbfbc75bc1eafb32d40696 Mon Sep 17 00:00:00 2001
From: hal9000PR <69320440+hal9000PR@users.noreply.github.com>
Date: Wed, 31 Mar 2021 19:46:50 +0100
Subject: [PATCH 011/172] Gives plasmaman and skeleton an emote to rattle their
bones. (#15752)
* squish
* doot doot
---
code/modules/mob/living/carbon/human/emote.dm | 15 +++++++++++++++
1 file changed, 15 insertions(+)
diff --git a/code/modules/mob/living/carbon/human/emote.dm b/code/modules/mob/living/carbon/human/emote.dm
index b8257bb877f..d80ab50e0b0 100644
--- a/code/modules/mob/living/carbon/human/emote.dm
+++ b/code/modules/mob/living/carbon/human/emote.dm
@@ -118,6 +118,11 @@
on_CD = handle_emote_CD() //proc located in code\modules\mob\emote.dm'
else //Everyone else fails, skip the emote attempt
return
+ if("rattle", "rattles")
+ if(isskeleton(src) || isplasmaman(src)) //Only Plasmamen and Skeletons can rattle.
+ on_CD = handle_emote_CD() //proc located in code\modules\mob\emote.dm'
+ else //Everyone else fails, skip the emote attempt
+ return
if("scream", "screams")
on_CD = handle_emote_CD(50) //longer cooldown
@@ -269,6 +274,12 @@
playsound(loc, 'sound/machines/synth_no.ogg', 50, 1, frequency = get_age_pitch())
m_type = 2
+ if("rattle", "rattles")
+ var/M = handle_emote_param(param)
+
+ message = "[src] rattles [p_their()] bones[M ? " at [M]" : ""]."
+ m_type = 1
+
if("wag", "wags")
if(body_accessory)
if(body_accessory.try_restrictions(src))
@@ -966,6 +977,10 @@
emotelist += "\nVox specific emotes :- wag(s), swag(s), quill(s)"
if("Vulpkanin")
emotelist += "\nVulpkanin specific emotes :- wag(s), swag(s), growl(s)-none/mob, howl(s)-none/mob"
+ if("Plasmaman")
+ emotelist += "\nPlasmaman specific emotes :- rattle(s)-none/mob"
+ if("Skeleton")
+ emotelist += "\nSkeleton specific emotes :- rattle(s)-none/mob"
if(ismachineperson(src))
emotelist += "\nMachine specific emotes :- beep(s)-none/mob, buzz(es)-none/mob, no-none/mob, ping(s)-none/mob, yes-none/mob, buzz2-none/mob"
From acdbed28d416dfbbafa09f75730dbe8f7829ad6c Mon Sep 17 00:00:00 2001
From: Onyxarias <70349271+Onyxarias@users.noreply.github.com>
Date: Wed, 31 Mar 2021 11:47:37 -0700
Subject: [PATCH 012/172] Goggle fix (#15751)
Adds in sprites for the Engineering Scanner goggles on Vox, Grey, and Drask
---
icons/mob/species/drask/eyes.dmi | Bin 9800 -> 10221 bytes
icons/mob/species/grey/eyes.dmi | Bin 12698 -> 13207 bytes
icons/mob/species/vox/eyes.dmi | Bin 11913 -> 12507 bytes
3 files changed, 0 insertions(+), 0 deletions(-)
diff --git a/icons/mob/species/drask/eyes.dmi b/icons/mob/species/drask/eyes.dmi
index 697a8c7fa8da4a28d04daf9487f683c96f9d1f29..04771713282c8ae101f8ef55df7b5403f335d024 100644
GIT binary patch
literal 10221
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
U*++?=tGsXM-ho#9_~6O^131egIRF3v
literal 12698
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