diff --git a/Resources/Locale/en-US/recipes/tags.ftl b/Resources/Locale/en-US/recipes/tags.ftl index 1b4ca5656d..8d739eef6f 100644 --- a/Resources/Locale/en-US/recipes/tags.ftl +++ b/Resources/Locale/en-US/recipes/tags.ftl @@ -73,6 +73,7 @@ construction-graph-tag-apron = an apron construction-graph-tag-utility-belt = a utility belt soil-construction-graph-any-mushroom = any mushroom construction-graph-tag-mop-basic = mop +construction-graph-tag-core-pinpointer-piece = piece of core pinpointer # toys construction-graph-tag-rubber-ducky = a rubber ducky diff --git a/Resources/Prototypes/Entities/Mobs/Cyborgs/base_borg_chassis.yml b/Resources/Prototypes/Entities/Mobs/Cyborgs/base_borg_chassis.yml index 7f1a7cc184..ade10ab5fd 100644 --- a/Resources/Prototypes/Entities/Mobs/Cyborgs/base_borg_chassis.yml +++ b/Resources/Prototypes/Entities/Mobs/Cyborgs/base_borg_chassis.yml @@ -561,7 +561,7 @@ collection: MetalBreak - !type:SpawnEntitiesBehavior spawn: - PinpointerMothership: # drop a pinpointer to the mothership upon being destructed + PinpointerMothershipPiece: # drop a piece of core pinpointer upon being destructed (4 pieces to make a core pinpointer) min: 1 max: 1 - !type:EmptyContainersBehaviour diff --git a/Resources/Prototypes/Entities/Mobs/Cyborgs/xenoborgs.yml b/Resources/Prototypes/Entities/Mobs/Cyborgs/xenoborgs.yml index ecd44279fd..eb0edc8f4c 100644 --- a/Resources/Prototypes/Entities/Mobs/Cyborgs/xenoborgs.yml +++ b/Resources/Prototypes/Entities/Mobs/Cyborgs/xenoborgs.yml @@ -122,7 +122,7 @@ collection: MetalBreak - !type:SpawnEntitiesBehavior spawn: - PinpointerMothership: # drop a pinpointer to the mothership upon being destructed + PinpointerMothershipPiece: # drop a piece of core pinpointer upon being destructed (4 pieces to make a core pinpointer) min: 1 max: 1 - !type:EmptyContainersBehaviour diff --git a/Resources/Prototypes/Entities/Objects/Devices/pinpointer.yml b/Resources/Prototypes/Entities/Objects/Devices/pinpointer.yml index e6ab450c93..f71cb29b36 100644 --- a/Resources/Prototypes/Entities/Objects/Devices/pinpointer.yml +++ b/Resources/Prototypes/Entities/Objects/Devices/pinpointer.yml @@ -168,12 +168,11 @@ parent: [ PinpointerBase, BaseXenoborgContraband ] id: PinpointerMothership name: core pinpointer - suffix: Mothership description: A handheld tracking device that leads to the direction of the Mothership core. components: - type: Sprite layers: - - state: pinpointer-station + - state: pinpointer-xenoborg map: ["enum.PinpointerLayers.Base"] - state: pinonnull map: ["enum.PinpointerLayers.Screen"] @@ -194,7 +193,49 @@ color: "#3a3a3a" - state: inhand-right-top - type: Icon - state: pinpointer-station + state: pinpointer-xenoborg - type: Pinpointer component: MothershipCore targetName: the Mothership + +- type: entity + parent: BaseItem + id: PinpointerMothershipPiece + name: piece of core pinpointer + description: A piece of a core pinpointer. You need four pieces to repair it. + components: + - type: Sprite + sprite: Objects/Devices/pinpointer.rsi + layers: + - state: pinpointer-xenoborg-piece-1 + map: [ "base" ] + - type: RandomSprite + available: + - base: + pinpointer-xenoborg-piece-1: "" + pinpointer-xenoborg-piece-2: "" + pinpointer-xenoborg-piece-3: "" + pinpointer-xenoborg-piece-4: "" + - type: Item + - type: Tag + tags: + - MothershipPinpointerPiece + - type: Construction + graph: RepairMothershipPinpointer + node: start + +- type: entity + parent: PinpointerMothership + id: PinpointerMothershipRepaired + name: repaired core pinpointer + description: A handheld tracking device that leads to the direction of the Mothership core. This one has seen better days. + components: + - type: Sprite + layers: + - state: pinpointer-xenoborg-repaired + map: ["enum.PinpointerLayers.Base"] + - type: Icon + state: pinpointer-xenoborg-repaired + - type: Construction + graph: RepairMothershipPinpointer + node: repairedPinpointer diff --git a/Resources/Prototypes/Recipes/Crafting/Graphs/repaired_xenoborg_pinpointer.yml b/Resources/Prototypes/Recipes/Crafting/Graphs/repaired_xenoborg_pinpointer.yml new file mode 100644 index 0000000000..beaf73dd6c --- /dev/null +++ b/Resources/Prototypes/Recipes/Crafting/Graphs/repaired_xenoborg_pinpointer.yml @@ -0,0 +1,34 @@ +- type: constructionGraph + id: RepairMothershipPinpointer + start: start + graph: + - node: start + edges: + - to: repairedPinpointer + steps: + - tag: MothershipPinpointerPiece + name: construction-graph-tag-core-pinpointer-piece + icon: + sprite: Objects/Devices/pinpointer.rsi + state: pinpointer-xenoborg-piece-1 + doAfter: 4 + - tag: MothershipPinpointerPiece + name: construction-graph-tag-core-pinpointer-piece + icon: + sprite: Objects/Devices/pinpointer.rsi + state: pinpointer-xenoborg-piece-1 + doAfter: 4 + - tag: MothershipPinpointerPiece + name: construction-graph-tag-core-pinpointer-piece + icon: + sprite: Objects/Devices/pinpointer.rsi + state: pinpointer-xenoborg-piece-1 + doAfter: 4 + - tag: MothershipPinpointerPiece + name: construction-graph-tag-core-pinpointer-piece + icon: + sprite: Objects/Devices/pinpointer.rsi + state: pinpointer-xenoborg-piece-1 + doAfter: 4 + - node: repairedPinpointer + entity: PinpointerMothershipRepaired diff --git a/Resources/Prototypes/Recipes/Crafting/improvised.yml b/Resources/Prototypes/Recipes/Crafting/improvised.yml index d7e03c5257..357aa6c6ab 100644 --- a/Resources/Prototypes/Recipes/Crafting/improvised.yml +++ b/Resources/Prototypes/Recipes/Crafting/improvised.yml @@ -150,6 +150,14 @@ category: construction-category-misc objectType: Item +- type: construction + id: RepairMothershipPinpointer + graph: RepairMothershipPinpointer + startNode: start + targetNode: repairedPinpointer + category: construction-category-misc + objectType: Item + - type: construction id: HardsuitGoliath graph: HardsuitGoliath diff --git a/Resources/Prototypes/tags.yml b/Resources/Prototypes/tags.yml index ae28f4350b..057d524224 100644 --- a/Resources/Prototypes/tags.yml +++ b/Resources/Prototypes/tags.yml @@ -978,6 +978,9 @@ - type: Tag id: MothershipModule # Cyborg module category for evil xenoborg core +- type: Tag + id: MothershipPinpointerPiece # ConstructionGraph: RepairMothershipPinpointer + - type: Tag id: Mouse # CargoBounty: BountyMouse diff --git a/Resources/Textures/Objects/Devices/pinpointer.rsi/meta.json b/Resources/Textures/Objects/Devices/pinpointer.rsi/meta.json index fe592577c4..785bc392a8 100644 --- a/Resources/Textures/Objects/Devices/pinpointer.rsi/meta.json +++ b/Resources/Textures/Objects/Devices/pinpointer.rsi/meta.json @@ -5,7 +5,7 @@ "y": 32 }, "license": "CC-BY-SA-3.0", - "copyright": "Taken from tgstation at https://github.com/tgstation/tgstation/commit/59f2a4e10e5ba36033c9734ddebfbbdc6157472d, station and syndicate pinpointer resprited by Ubaser, inhands by TiniestShark (github). Modified by @whatston3 and @Quantum-cross (github) to center the sprite so arrow rotation is around the proper axis.", + "copyright": "Taken from tgstation at https://github.com/tgstation/tgstation/commit/59f2a4e10e5ba36033c9734ddebfbbdc6157472d, station and syndicate pinpointer resprited by Ubaser, inhands by TiniestShark (github). xenoborg by Samuka-C (github). Modified by @whatston3 and @Quantum-cross (github) to center the sprite so arrow rotation is around the proper axis.", "states": [ { "name": "pinonalert", @@ -156,6 +156,24 @@ { "name": "pinpointer-station" }, + { + "name": "pinpointer-xenoborg" + }, + { + "name": "pinpointer-xenoborg-piece-1" + }, + { + "name": "pinpointer-xenoborg-piece-2" + }, + { + "name": "pinpointer-xenoborg-piece-3" + }, + { + "name": "pinpointer-xenoborg-piece-4" + }, + { + "name": "pinpointer-xenoborg-repaired" + }, { "name": "inhand-left-base", "directions": 4 diff --git a/Resources/Textures/Objects/Devices/pinpointer.rsi/pinpointer-xenoborg-piece-1.png b/Resources/Textures/Objects/Devices/pinpointer.rsi/pinpointer-xenoborg-piece-1.png new file mode 100644 index 0000000000..fe3c864ff0 Binary files /dev/null and b/Resources/Textures/Objects/Devices/pinpointer.rsi/pinpointer-xenoborg-piece-1.png differ diff --git a/Resources/Textures/Objects/Devices/pinpointer.rsi/pinpointer-xenoborg-piece-2.png b/Resources/Textures/Objects/Devices/pinpointer.rsi/pinpointer-xenoborg-piece-2.png new file mode 100644 index 0000000000..1049c5afc0 Binary files /dev/null and b/Resources/Textures/Objects/Devices/pinpointer.rsi/pinpointer-xenoborg-piece-2.png differ diff --git a/Resources/Textures/Objects/Devices/pinpointer.rsi/pinpointer-xenoborg-piece-3.png b/Resources/Textures/Objects/Devices/pinpointer.rsi/pinpointer-xenoborg-piece-3.png new file mode 100644 index 0000000000..e26c14f12a Binary files /dev/null and b/Resources/Textures/Objects/Devices/pinpointer.rsi/pinpointer-xenoborg-piece-3.png differ diff --git a/Resources/Textures/Objects/Devices/pinpointer.rsi/pinpointer-xenoborg-piece-4.png b/Resources/Textures/Objects/Devices/pinpointer.rsi/pinpointer-xenoborg-piece-4.png new file mode 100644 index 0000000000..359aab7db4 Binary files /dev/null and b/Resources/Textures/Objects/Devices/pinpointer.rsi/pinpointer-xenoborg-piece-4.png differ diff --git a/Resources/Textures/Objects/Devices/pinpointer.rsi/pinpointer-xenoborg-repaired.png b/Resources/Textures/Objects/Devices/pinpointer.rsi/pinpointer-xenoborg-repaired.png new file mode 100644 index 0000000000..c7431a6b38 Binary files /dev/null and b/Resources/Textures/Objects/Devices/pinpointer.rsi/pinpointer-xenoborg-repaired.png differ diff --git a/Resources/Textures/Objects/Devices/pinpointer.rsi/pinpointer-xenoborg.png b/Resources/Textures/Objects/Devices/pinpointer.rsi/pinpointer-xenoborg.png new file mode 100644 index 0000000000..d114b9f062 Binary files /dev/null and b/Resources/Textures/Objects/Devices/pinpointer.rsi/pinpointer-xenoborg.png differ