# SPDX-FileCopyrightText: 2023 20kdc <asdd2808@gmail.com>
# SPDX-FileCopyrightText: 2023 Flareguy <78941145+Flareguy@users.noreply.github.com>
# SPDX-FileCopyrightText: 2023 Jeff <velcroboy333@hotmail.com>
# SPDX-FileCopyrightText: 2023 Moony <moony@hellomouse.net>
# SPDX-FileCopyrightText: 2023 Nemanja <98561806+EmoGarbage404@users.noreply.github.com>
# SPDX-FileCopyrightText: 2023 Velcroboy <107660393+IamVelcroboy@users.noreply.github.com>
# SPDX-FileCopyrightText: 2023 metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
# SPDX-FileCopyrightText: 2023 moonheart08 <moonheart08@users.noreply.github.com>
# SPDX-FileCopyrightText: 2024 Aiden <aiden@djkraz.com>
# SPDX-FileCopyrightText: 2024 Ed <96445749+TheShuEd@users.noreply.github.com>
# SPDX-FileCopyrightText: 2024 Plykiya <58439124+Plykiya@users.noreply.github.com>
# SPDX-FileCopyrightText: 2024 Zadeon <loldude9000@gmail.com>
# SPDX-FileCopyrightText: 2024 lanse12 <cloudability.ez@gmail.com>
# SPDX-FileCopyrightText: 2024 lzk <124214523+lzk228@users.noreply.github.com>
# SPDX-FileCopyrightText: 2024 plykiya <plykiya@protonmail.com>
# SPDX-FileCopyrightText: 2024 yglop <95057024+yglop@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Aiden <28298836+Aidenkrz@users.noreply.github.com>
#
# SPDX-License-Identifier: AGPL-3.0-or-later

- type: entity
  id: BaseAsteroidDebris
  parent: BaseDebris
  name: asteroid debris
  abstract: true
  components:
    - type: MapGrid
    - type: BlobFloorPlanBuilder
      floorTileset:
      - FloorAsteroidSand
      blobDrawProb: 0.6
      radius: 6
      floorPlacements: 16
    - type: SimpleFloorPlanPopulator
      entries:
        FloorAsteroidSand:
          - id: WallRock
            prob: 0.5
            orGroup: rock
          - id: WallRockCoal
            prob: 0.15
            orGroup: rock
          - id: WallRockTin
            prob: 0.15
            orGroup: rock
          - id: WallRockQuartz
            prob: 0.15
            orGroup: rock
          - id: WallRockGold
            prob: 0.05
            orGroup: rock
          - id: WallRockDiamond
            prob: 0.01
            orGroup: rock
          - id: WallRockSilver
            prob: 0.05
            orGroup: rock
          - id: WallRockPlasma
            prob: 0.05
            orGroup: rock
          - id: WallRockUranium
            prob: 0.03
            orGroup: rock
          - id: WallRockBananium
            prob: 0.02
            orGroup: rock
          - id: WallRockArtifactFragment
            prob: 0.02
            orGroup: rock
          - id: WallRockBSCrystal # Goobstation
            prob: 0.05
            orGroup: rock
          - id: WallRockBSCrystal # Goobstation
            prob: 0.01
            orGroup: rock
    - type: IFF
      flags: HideLabel
      color: "#d67e27"

- type: entity
  id: AsteroidDebrisSmall
  parent: BaseAsteroidDebris
  name: asteroid debris small
  categories: [ HideSpawnMenu ]
  components:
    - type: MapGrid
    - type: BlobFloorPlanBuilder
      floorPlacements: 8

- type: entity
  id: AsteroidDebrisMedium
  parent: BaseAsteroidDebris
  name: asteroid debris medium
  categories: [ HideSpawnMenu ]
  components:
    - type: MapGrid
    - type: BlobFloorPlanBuilder
      floorPlacements: 16

- type: entity
  id: AsteroidDebrisLarge
  parent: BaseAsteroidDebris
  name: asteroid debris large
  categories: [ HideSpawnMenu ]
  components:
    - type: MapGrid
    - type: BlobFloorPlanBuilder
      floorPlacements: 24

- type: entity
  id: AsteroidDebrisLarger
  parent: BaseAsteroidDebris
  name: asteroid debris larger
  categories: [ HideSpawnMenu ]
  components:
    - type: MapGrid
    - type: BlobFloorPlanBuilder
      radius: 12
      floorPlacements: 36

- type: entity
  id: AsteroidSalvageSmall
  parent: BaseAsteroidDebris
  name: salvage asteroid small
  categories: [ HideSpawnMenu ]
  components:
    - type: MapGrid
    - type: BlobFloorPlanBuilder
      blobDrawProb: 0.66
      radius: 15
      floorPlacements: 100

- type: entity
  id: AsteroidSalvageMedium
  parent: BaseAsteroidDebris
  name: salvage asteroid medium
  categories: [ HideSpawnMenu ]
  components:
    - type: MapGrid
    - type: BlobFloorPlanBuilder
      blobDrawProb: 0.66
      radius: 17
      floorPlacements: 150

- type: entity
  id: AsteroidSalvageLarge
  parent: BaseAsteroidDebris
  name: salvage asteroid large
  categories: [ HideSpawnMenu ]
  components:
    - type: MapGrid
    - type: BlobFloorPlanBuilder
      blobDrawProb: 0.66
      radius: 20
      floorPlacements: 200

- type: entity
  id: AsteroidSalvageHuge
  parent: BaseAsteroidDebris
  name: salvage asteroid huge
  categories: [ HideSpawnMenu ]
  components:
    - type: MapGrid
    - type: BlobFloorPlanBuilder
      blobDrawProb: 0.66
      radius: 23
      floorPlacements: 250
