# region Base
- type: entity
  parent: BaseBlueprint
  id: NFBaseBlueprint
  abstract: true
  components:
  - type: Sprite
    sprite: _NF/Objects/Tools/blueprints.rsi
    layers:
      - state: icon-base
        color: "#7da0ba"
      - state: icon-text
      - sprite: Objects/Misc/bureaucracy.rsi
        state: paper_stamp-generic
        offset: 0.15,-0.1
        map: ["enum.PaperVisualLayers.Stamp"]
        visible: false
      - sprite: Objects/Misc/bureaucracy.rsi # Need for PaperVisuals otherwise it wont stop complaining
        state: paper_words
        map: ["enum.PaperVisualLayers.Writing"]
        visible: false
  - type: Item
    size: Normal
    sprite: _NF/Objects/Tools/blueprints.rsi
    inhandVisuals:
      left:
      - state: inhand-left-base
        color: "#7da0ba"
      - state: inhand-left-text
      right:
      - state: inhand-right-base
        color: "#7da0ba"
      - state: inhand-right-text
  - type: Tag # defaults to autolathe-insertable
    tags:
    - BlueprintAutolathe
    - Document
    - Paper
  - type: StaticPrice
    price: 5 # Should be sold to players, not market console
  - type: PhysicalComposition
    materialComposition:
      Paper: 100
  # Paper stuff
  - type: Paper
  - type: PaperVisuals
  - type: Flammable
    fireSpread: true
    canResistFire: false
    alwaysCombustible: true
    canExtinguish: true
    damage:
      types:
        Heat: 1
  - type: Appearance
  - type: FireVisuals
    sprite: Effects/fire.rsi
    normalState: fire
  - type: Damageable
    damageModifierSet: Wood
  - type: Destructible
    thresholds:
    - trigger:
        !type:DamageTrigger
        damage: 15
      behaviors:
      - !type:SpawnEntitiesBehavior
        spawn:
            Ash:
              min: 1
              max: 1
      - !type:DoActsBehavior
        acts: [ "Destruction" ]
  - type: Food
    solution: food
    delay: 7
    forceFeedDelay: 7
  - type: FlavorProfile
    flavors:
    - paper
  - type: BadFood
  - type: SolutionContainerManager
    solutions:
      food:
        maxVol: 1
        reagents:
        - ReagentId: Fiber
          Quantity: 0.1
  - type: Blueprint
    providedRecipes: []

- type: entity
  parent: NFBaseBlueprint
  id: NFBaseBlueprintFaxable
  name: blueprint
  description: A blueprint with schematics on it. It can be inserted into a protolathe or techfab, or sent via fax.
  abstract: true
  components:
  - type: FaxableObject
  - type: Paper
    destroyOnFax: true
    destroyMessage: fax-delete-paper-intellectual-property
  - type: Sprite
    layers:
      - state: icon-base
        color: "#636363"
      - state: icon-text
      - sprite: Objects/Misc/bureaucracy.rsi
        state: paper_stamp-generic
        offset: 0.15,-0.1
        map: ["enum.PaperVisualLayers.Stamp"]
        visible: false
      - sprite: Objects/Misc/bureaucracy.rsi
        state: paper_words
        map: ["enum.PaperVisualLayers.Writing"]
        visible: false
  - type: Item
    inhandVisuals:
      left:
      - state: inhand-left-base
        color: "#636363"
      - state: inhand-left-text
      right:
      - state: inhand-right-base
        color: "#636363"
      - state: inhand-right-text

# region General
- type: entity
  parent: NFBaseBlueprintFaxable
  id: NFBlueprintGeneral
  name: blueprint
  description: A blueprint with schematics on it. It can be inserted into a protolathe or techfab, or sent via fax.
  categories: [HideSpawnMenu, DoNotMap]
  components:
  - type: Sprite
    layers:
      - state: icon-base
        color: "#3355ff"
      - state: icon-text
      - sprite: Objects/Misc/bureaucracy.rsi
        state: paper_stamp-generic
        offset: 0.15,-0.1
        map: ["enum.PaperVisualLayers.Stamp"]
        visible: false
      - sprite: Objects/Misc/bureaucracy.rsi
        state: paper_words
        map: ["enum.PaperVisualLayers.Writing"]
        visible: false
  - type: Item
    inhandVisuals:
      left:
      - state: inhand-left-base
        color: "#3355ff"
      - state: inhand-left-text
      right:
      - state: inhand-right-base
        color: "#3355ff"
      - state: inhand-right-text
  - type: Tag
    tags:
    - NFBlueprintAdvanced
    - Document
    - Paper

# region Engineering
- type: entity
  parent: NFBaseBlueprintFaxable
  id: NFBlueprintEngineering
  name: engineering blueprint
  description: A blueprint with engineering schematics on it. It can be inserted into a protolathe or techfab, or sent via fax.
  categories: [HideSpawnMenu, DoNotMap]
  components:
  - type: Sprite
    layers:
      - state: icon-base
        color: "#fff87c"
      - state: icon-text
      - sprite: Objects/Misc/bureaucracy.rsi
        state: paper_stamp-generic
        offset: 0.15,-0.1
        map: ["enum.PaperVisualLayers.Stamp"]
        visible: false
      - sprite: Objects/Misc/bureaucracy.rsi
        state: paper_words
        map: ["enum.PaperVisualLayers.Writing"]
        visible: false
  - type: Item
    inhandVisuals:
      left:
      - state: inhand-left-base
        color: "#fff87c"
      - state: inhand-left-text
      right:
      - state: inhand-right-base
        color: "#fff87c"
      - state: inhand-right-text
  - type: Tag
    tags:
    - NFBlueprintEngineeringTechfab
    - NFBlueprintAdvanced
    - Document
    - Paper

# region Salvage
- type: entity
  parent: NFBaseBlueprintFaxable
  id: NFBlueprintSalvage
  name: salvage blueprint
  description: A blueprint with salvage schematics on it. It can be inserted into a protolathe or techfab, or sent via fax.
  categories: [HideSpawnMenu, DoNotMap]
  components:
  - type: Sprite
    layers:
      - state: icon-base
        color: "#e1ba8b"
      - state: icon-text
      - sprite: Objects/Misc/bureaucracy.rsi
        state: paper_stamp-generic
        offset: 0.15,-0.1
        map: ["enum.PaperVisualLayers.Stamp"]
        visible: false
      - sprite: Objects/Misc/bureaucracy.rsi
        state: paper_words
        map: ["enum.PaperVisualLayers.Writing"]
        visible: false
  - type: Item
    inhandVisuals:
      left:
      - state: inhand-left-base
        color: "#e1ba8b"
      - state: inhand-left-text
      right:
      - state: inhand-right-base
        color: "#e1ba8b"
      - state: inhand-right-text
  - type: Tag
    tags:
    - NFBlueprintSalvageTechfab
    - NFBlueprintAdvanced
    - Document
    - Paper

# region Science
- type: entity
  parent: NFBaseBlueprintFaxable
  id: NFBlueprintScience
  name: science blueprint
  description: A blueprint with science schematics on it. It can be inserted into a protolathe or techfab, or sent via fax.
  categories: [HideSpawnMenu, DoNotMap]
  components:
  - type: Sprite
    layers:
      - state: icon-base
        color: "#e18bd5"
      - state: icon-text
      - sprite: Objects/Misc/bureaucracy.rsi
        state: paper_stamp-generic
        offset: 0.15,-0.1
        map: ["enum.PaperVisualLayers.Stamp"]
        visible: false
      - sprite: Objects/Misc/bureaucracy.rsi
        state: paper_words
        map: ["enum.PaperVisualLayers.Writing"]
        visible: false
  - type: Item
    inhandVisuals:
      left:
      - state: inhand-left-base
        color: "#e18bd5"
      - state: inhand-left-text
      right:
      - state: inhand-right-base
        color: "#e18bd5"
      - state: inhand-right-text
  - type: Tag
    tags:
    - NFBlueprintProtolathe
    - NFBlueprintAdvanced
    - Document
    - Paper

# region Service
- type: entity
  parent: NFBaseBlueprintFaxable
  id: NFBlueprintService
  name: service blueprint
  description: A blueprint with service schematics on it. It can be inserted into a protolathe or techfab, or sent via fax.
  categories: [HideSpawnMenu, DoNotMap]
  components:
  - type: Sprite
    layers:
      - state: icon-base
        color: "#94e18b"
      - state: icon-text
      - sprite: Objects/Misc/bureaucracy.rsi
        state: paper_stamp-generic
        offset: 0.15,-0.1
        map: ["enum.PaperVisualLayers.Stamp"]
        visible: false
      - sprite: Objects/Misc/bureaucracy.rsi
        state: paper_words
        map: ["enum.PaperVisualLayers.Writing"]
        visible: false
  - type: Item
    inhandVisuals:
      left:
      - state: inhand-left-base
        color: "#94e18b"
      - state: inhand-left-text
      right:
      - state: inhand-right-base
        color: "#94e18b"
      - state: inhand-right-text
  - type: Tag
    tags:
    - NFBlueprintServiceTechfab
    - NFBlueprintAdvanced
    - Document
    - Paper

# region Medical
- type: entity
  parent: NFBaseBlueprintFaxable
  id: NFBlueprintMedical
  name: medical blueprint
  description: A blueprint with medical schematics on it. It can be inserted into a protolathe or techfab, or sent via fax.
  categories: [HideSpawnMenu, DoNotMap]
  components:
  - type: Sprite
    layers:
      - state: icon-base
        color: "#97cae1"
      - state: icon-text
      - sprite: Objects/Misc/bureaucracy.rsi
        state: paper_stamp-generic
        offset: 0.15,-0.1
        map: ["enum.PaperVisualLayers.Stamp"]
        visible: false
      - sprite: Objects/Misc/bureaucracy.rsi
        state: paper_words
        map: ["enum.PaperVisualLayers.Writing"]
        visible: false
  - type: Item
    inhandVisuals:
      left:
      - state: inhand-left-base
        color: "#97cae1"
      - state: inhand-left-text
      right:
      - state: inhand-right-base
        color: "#97cae1"
      - state: inhand-right-text
  - type: Tag
    tags:
    - NFBlueprintMedicalTechfab
    - NFBlueprintAdvanced
    - Document
    - Paper

# region Arsenal
- type: entity
  parent: NFBaseBlueprintFaxable
  id: NFBlueprintArsenalMercenary
  name: combat blueprint
  description: A blueprint with combat schematics on it. It can be inserted into a protolathe or techfab, or sent via fax.
  categories: [HideSpawnMenu, DoNotMap]
  components:
  - type: Sprite
    layers:
      - state: icon-base
        color: "#e18b8b"
      - state: icon-text
      - sprite: Objects/Misc/bureaucracy.rsi
        state: paper_stamp-generic
        offset: 0.15,-0.1
        map: ["enum.PaperVisualLayers.Stamp"]
        visible: false
      - sprite: Objects/Misc/bureaucracy.rsi
        state: paper_words
        map: ["enum.PaperVisualLayers.Writing"]
        visible: false
  - type: Item
    inhandVisuals:
      left:
      - state: inhand-left-base
        color: "#e18b8b"
      - state: inhand-left-text
      right:
      - state: inhand-right-base
        color: "#e18b8b"
      - state: inhand-right-text
  - type: Tag
    tags:
    - NFBlueprintMercenaryTechfab
    - NFBlueprintAdvanced
    - Document
    - Paper

- type: entity
  parent: NFBaseBlueprintFaxable
  id: NFBlueprintArsenalNfsd
  name: restricted combat blueprint
  description: A blueprint with combat schematics on it. It can be inserted into a protolathe or techfab, or sent via fax.
  categories: [HideSpawnMenu, DoNotMap]
  components:
  - type: Sprite
    layers:
      - state: icon-base
        color: "#729769"
      - state: icon-text
      - sprite: Objects/Misc/bureaucracy.rsi
        state: paper_stamp-generic
        offset: 0.15,-0.1
        map: ["enum.PaperVisualLayers.Stamp"]
        visible: false
      - sprite: Objects/Misc/bureaucracy.rsi
        state: paper_words
        map: ["enum.PaperVisualLayers.Writing"]
        visible: false
  - type: Item
    inhandVisuals:
      left:
      - state: inhand-left-base
        color: "#729769"
      - state: inhand-left-text
      right:
      - state: inhand-right-base
        color: "#729769"
      - state: inhand-right-text
  - type: Tag
    tags:
    - NFBlueprintNfsdTechfab
    - NFBlueprintAdvanced
    - Document
    - Paper

# region Expedition
- type: entity
  parent: [ BaseC3Contraband, NFBaseBlueprint ]
  id: NFBaseBlueprintExpedition
  abstract: true
  components:
  - type: Paper
    stampState: paper_stamp-rd
    stampedBy:
    - reapply: false
      stampType: RubberStamp
      stampedColor: '#1F66A0FF'
      stampedName: stamp-component-stamped-name-confidential
  - type: StaticPrice
    price: 1000

- type: entity
  parent: NFBaseBlueprintExpedition
  id: NFBaseBlueprintExpeditionSalvage
  abstract: true
  components:
  - type: Sprite
    layers:
      - state: icon-base
        color: "#a6671a"
      - state: icon-text
        color: "#db7372"
      - sprite: Objects/Misc/bureaucracy.rsi
        state: paper_stamp-generic
        offset: 0.15,-0.1
        map: ["enum.PaperVisualLayers.Stamp"]
        visible: false
      - sprite: Objects/Misc/bureaucracy.rsi
        state: paper_words
        map: ["enum.PaperVisualLayers.Writing"]
        visible: false
  - type: Item
    inhandVisuals:
      left:
      - state: inhand-left-base
        color: "#a6671a"
      - state: inhand-left-text
        color: "#db7372"
      right:
      - state: inhand-right-base
        color: "#a6671a"
      - state: inhand-right-text
        color: "#db7372"
  - type: Tag
    tags:
    - NFBlueprintSalvageTechfab
    - NFBlueprintAdvanced
    - Document
    - Paper

- type: entity
  parent: NFBaseBlueprintExpedition
  id: NFBaseBlueprintExpeditionArmory
  abstract: true
  components:
  - type: Sprite
    layers:
      - state: icon-base
        color: "#d21a1a"
      - state: icon-text
        color: "#db7372"
      - sprite: Objects/Misc/bureaucracy.rsi
        state: paper_stamp-generic
        offset: 0.15,-0.1
        map: ["enum.PaperVisualLayers.Stamp"]
        visible: false
      - sprite: Objects/Misc/bureaucracy.rsi
        state: paper_words
        map: ["enum.PaperVisualLayers.Writing"]
        visible: false
  - type: Item
    inhandVisuals:
      left:
      - state: inhand-left-base
        color: "#d21a1a"
      - state: inhand-left-text
        color: "#db7372"
      right:
      - state: inhand-right-base
        color: "#d21a1a"
      - state: inhand-right-text
        color: "#db7372"
  - type: Tag
    tags:
    - NFBlueprintMercenaryTechfab
    - NFBlueprintNfsdTechfab
    - NFBlueprintAdvanced
    - Document
    - Paper
