Implant whitelist/blacklisting (#20678)
* add whitelist and blacklist to implant and implanter components * handle whitelist and blacklist in systems * move hardcoded whitelist/blacklist to base implanter + add admeme implanter * give implants sensible whitelists * cleaner CheckTarget and fix * remove unused imports * network lists --------- Co-authored-by: deltanedas <@deltanedas:kde.org>
This commit is contained in:
@@ -12,6 +12,12 @@
|
||||
containers:
|
||||
implanter_slot: !type:ContainerSlot { }
|
||||
- type: Implanter
|
||||
whitelist:
|
||||
components:
|
||||
- Body # no chair microbomb
|
||||
blacklist:
|
||||
components:
|
||||
- Guardian # no holoparasite macrobomb wombo combo
|
||||
currentMode: Draw
|
||||
implanterSlot:
|
||||
name: Implant
|
||||
@@ -54,6 +60,16 @@
|
||||
tags:
|
||||
- Trash
|
||||
|
||||
- type: entity
|
||||
parent: Implanter
|
||||
id: ImplanterAdmeme
|
||||
suffix: Admeme
|
||||
components:
|
||||
- type: Implanter
|
||||
# go wild with sentient chairs with macrobombs
|
||||
whitelist: null
|
||||
blacklist: null
|
||||
|
||||
- type: entity
|
||||
id: BaseImplantOnlyImplanter
|
||||
parent: Implanter
|
||||
|
||||
@@ -21,6 +21,9 @@
|
||||
noSpawn: true
|
||||
components:
|
||||
- type: SubdermalImplant
|
||||
whitelist:
|
||||
components:
|
||||
- MobState # admeme implanting a chair with trombone implant needs to give the chair mobstate so it can die first
|
||||
- type: TriggerOnMobstateChange
|
||||
mobState:
|
||||
- Dead
|
||||
@@ -81,6 +84,9 @@
|
||||
noSpawn: true
|
||||
components:
|
||||
- type: SubdermalImplant
|
||||
whitelist:
|
||||
components:
|
||||
- MobState # admeme implanting a chair with tracking implant needs to give the chair mobstate so it can die first
|
||||
- type: SuitSensor
|
||||
randomMode: false
|
||||
controlsLocked: true
|
||||
@@ -109,6 +115,9 @@
|
||||
components:
|
||||
- type: SubdermalImplant
|
||||
implantAction: ActionOpenStorageImplant
|
||||
whitelist:
|
||||
components:
|
||||
- Hands # no use giving a mouse a storage implant, but a monkey is another story...
|
||||
- type: Item
|
||||
size: 9999
|
||||
- type: Storage
|
||||
@@ -131,6 +140,9 @@
|
||||
components:
|
||||
- type: SubdermalImplant
|
||||
implantAction: ActionActivateFreedomImplant
|
||||
whitelist:
|
||||
components:
|
||||
- Cuffable # useless if you cant be cuffed
|
||||
|
||||
- type: entity
|
||||
parent: BaseSubdermalImplant
|
||||
@@ -141,6 +153,9 @@
|
||||
components:
|
||||
- type: SubdermalImplant
|
||||
implantAction: ActionOpenUplinkImplant
|
||||
whitelist:
|
||||
components:
|
||||
- Hands # prevent mouse buying grenade penguin since its not telepathic
|
||||
- type: Store
|
||||
preset: StorePresetUplink
|
||||
balance:
|
||||
@@ -174,6 +189,9 @@
|
||||
components:
|
||||
- type: SubdermalImplant
|
||||
implantAction: ActionActivateDnaScramblerImplant
|
||||
whitelist:
|
||||
components:
|
||||
- HumanoidAppearance # syndies cant turn hamlet into a human
|
||||
|
||||
#Nuclear Operative/Special Exclusive implants
|
||||
|
||||
@@ -250,6 +268,9 @@
|
||||
components:
|
||||
- type: SubdermalImplant
|
||||
permanent: true
|
||||
whitelist:
|
||||
components:
|
||||
- MobState # admeme implanting a chair with rattle implant needs to give the chair mobstate so it can die first
|
||||
- type: TriggerOnMobstateChange
|
||||
mobState:
|
||||
- Critical
|
||||
|
||||
Reference in New Issue
Block a user