{
  "format_version": "1.16.0",
  "minecraft:entity": {
    "description": {
      "identifier": "pr:endo",
      "is_spawnable": true,
      "is_summonable": true,
      "is_experimental": false
    },
    "component_groups": {
      "minecraft:baby": {
        "minecraft:type_family": {
          "family": [
            "orthocone",
            "smallorthocone"
          ]
        },
        "minecraft:collision_box": {
          "width": 0.6,
          "height": 0.2
        },
        "minecraft:underwater_movement": {
          "value": 0.4
        },
        "minecraft:is_baby": {},
        "minecraft:scale_by_age": {
          "start_scale": 0.15,
          "end_scale": 0.7
        },
        "minecraft:behavior.move_to_water": {
          "priority": 1,
          "search_range": 15,
          "search_height": 5,
          "goal_radius": 0.1
        },
        "minecraft:ageable": {
          "duration": 1200,
          "feedItems": [
            "pr:growth_syringe"
          ],
          "drop_items": [
            "air"
          ],
          "grow_up": {
            "event": "minecraft:ageable_grow_up",
            "target": "self"
          }
        }
      },
      "minecraft:adult": {
        "minecraft:type_family": {
          "family": [
            "orthocone"
          ]
        },
        "minecraft:collision_box": {
          "width": 1.2,
          "height": 0.4
        },
        "minecraft:underwater_movement": {
          "value": 0.4
        },
        "minecraft:breedable": {
          "requireTame": false,
          "breedsWith": [
            {
              "mateType": "pr:endo",
              "babyType": "pr:endo",
              "breed_event": {
                "event": "minecraft:entity_born",
                "target": "baby"
              }
            }
          ],
          "breedItems": [
            "fish",
            "pr:aquaticmeat",
            "salmon"
          ]
        },
        "minecraft:behavior.breed": {
          "priority": 2,
          "speed_multiplier": 1
        },
        "minecraft:behavior.move_to_land": {
          "priority": 6,
          "search_range": 16,
          "search_height": 5,
          "goal_radius": 0.5
        },
        "minecraft:behavior.random_stroll": {
          "priority": 9,
          "interval": 100
        }
      }
    },
    "components": {
      "minecraft:nameable": {
        "alwaysShow": false,
        "allowNameTagRenaming": true
      },
      "minecraft:health": {
        "value": 32,
        "max": 32
      },
      "minecraft:movement": {
        "value": 0.25
      },
      "minecraft:water_movement": {
        "drag_factor": 0
      },
      "minecraft:navigation.generic": {
        "is_amphibious": false,
        "can_path_over_water": true,
        "can_swim": true,
        "can_walk": false,
        "can_sink": false,
        "avoid_damage_blocks": true
      },
      "minecraft:movement.amphibious": {
        "max_turn": 5
      },
      "minecraft:jump.static": {},
      "minecraft:physics": {},
      "minecraft:home": {},
      "minecraft:follow_range": {
        "value": 1024
      },
      "minecraft:behavior.hurt_by_target": {
        "priority": 3
      },
      "minecraft:behavior.tempt": {
        "priority": 3,
        "speed_multiplier": 1.1,
        "items": [
          "beef",
          "chicken",
          "cooked_beef",
          "cooked_chicken",
          "cooked_fish",
          "cooked_rabbit",
          "cooked_salmon",
          "fish",
          "muttonraw",
          "salmon",
          "fish",
          "salmon"
        ]
      },
      "minecraft:behavior.move_to_water": {
        "priority": 4,
        "search_range": 16,
        "search_height": 5,
        "search_count": 1,
        "goal_radius": 0.1
      },
      "minecraft:behavior.random_swim": {
        "priority": 7,
        "interval": 0,
        "xz_dist": 30,
        "y_dist": 15
      },
      "minecraft:experience_reward": {
        "on_death": "query.last_hit_by_player ? 50 : 0"
      },
      "minecraft:underwater_movement": {
        "value": 0.4
      },
      "minecraft:type_family": {
        "family": [
          "orthocone"
        ]
      },
      "minecraft:scale": {
        "value": 0.7
      },
      "minecraft:attack": {
        "damage": 2,
        "effect_name": "blindness",
        "effect_duration": 30
      },
      "minecraft:behavior.melee_attack": {
        "priority": 2,
        "speed_multiplier": 0.75,
        "target_dist": 0,
        "max_dist": 3,
        "random_stop_interval": 100,
        "track_target": false,
        "reach_multiplier": 1.4
      },
      "minecraft:collision_box": {
        "height": 1.0,
        "width": 1.2
      },
      "minecraft:behavior.breed": {
        "priority": 3,
        "speed_multiplier": 1.0
      },
      "minecraft:behavior.nearest_attackable_target": {
        "priority": 3,
        "within_radius": 25,
        "must_reach": true,
        "entity_types": [
          {
            "filters": {
              "any_of": [
                {
                  "test": "is_family",
                  "subject": "other",
                  "value": "cod"
                },
                {
                  "test": "is_family",
                  "subject": "other",
                  "value": "fish"
                },
                {
                  "test": "is_family",
                  "subject": "other",
                  "value": "salmon"
                },
                {
                  "test": "is_family",
                  "subject": "other",
                  "value": "squid"
                },
                {
                  "test": "is_family",
                  "subject": "other",
                  "value": "ammonite"
                },
                {
                  "test": "is_family",
                  "subject": "other",
                  "value": "acuti"
                }
              ]
            },
            "max_dist": 35.0,
            "must_see": false
          }
        ],
        "must_see": false
      },
      "minecraft:behavior.owner_hurt_by_target": {
        "priority": 1
      },
      "minecraft:behavior.owner_hurt_target": {
        "priority": 2
      },
      "minecraft:behavior.play_dead": {
        "priority": 0,
        "duration": 20,
        "force_below_health": 20,
        "random_start_chance": 0,
        "damage_sources": [
          "contact",
          "entity_attack",
          "entity_explosion",
          "magic",
          "projectile",
          "thorns",
          "wither"
        ],
        "apply_regeneration": true,
        "filters": {
          "test": "in_water",
          "operator": "==",
          "value": true
        }
      },
      "minecraft:knockback_resistance": {
        "value": 1.5,
        "max": 2.0
      },
      "minecraft:behavior.move_to_block": {
        "priority": 0,
        "target_blocks": [
          "pr:bioblock"
        ],
        "search_range": 200,
        "search_height": 128,
        "goal_radius": 5,
        "stay_duration": 1000
      },
      "minecraft:breedable": {
        "requireTame": false,
        "breedsWith": [
          {
            "mateType": "pr:endo",
            "babyType": "pr:endo",
            "breed_event": {
              "event": "minecraft:entity_born",
              "target": "baby"
            }
          }
        ],
        "breedItems": [
          "fish",
          "pr:aquaticmeat",
          "salmon"
        ]
      },
      "minecraft:interact": {
        "interactions": [
          {
            "use_item": true,
            "transform_to_item": "pr:endop",
            "swing": false,
            "interact_text": "Scan",
            "on_interact": {
              "filters": {
                "all_of": [
                  {
                    "domain": "hand",
                    "operator": "==",
                    "subject": "other",
                    "test": "has_equipment",
                    "value": "pr:paleopedia"
                  }
                ]
              }
            }
          },
          {
            "use_item": true,
            "transform_to_item": "pr:paleopedia",
            "swing": false,
            "interact_text": "Close",
            "on_interact": {
              "filters": {
                "all_of": [
                  {
                    "domain": "hand",
                    "operator": "==",
                    "subject": "other",
                    "test": "has_equipment",
                    "value": "pr:endop"
                  }
                ]
              }
            }
          }
        ]
      },
      "minecraft:breathable": {
        "breathesWater": true,
        "totalSupply": 25,
        "suffocateTime": -1,
        "generatesBubbles": false,
        "breathesAir": false
      },
      "minecraft:loot": {
        "table": "loot_tables/entities/pr_endo.json"
      }
    },
    "events": {
      "minecraft:entity_spawned": {
        "randomize": [
          {
            "weight": 9,
            "add": {
              "component_groups": [
                "minecraft:adult"
              ]
            }
          },
          {
            "weight": 1,
            "add": {
              "component_groups": [
                "minecraft:baby"
              ]
            }
          }
        ]
      },
      "minecraft:entity_born": {
        "add": {
          "component_groups": [
            "minecraft:baby"
          ]
        }
      },
      "minecraft:ageable_grow_up": {
        "remove": {
          "component_groups": [
            "minecraft:baby"
          ]
        },
        "add": {
          "component_groups": [
            "minecraft:adult"
          ]
        }
      },
      "on:death": {
        "run_command": {
          "command": []
        }
      },
      "on:hurt": {
        "run_command": {
          "command": []
        }
      },
      "on:hurt_by_player": {
        "run_command": {
          "command": []
        }
      },
      "on:ignite": {
        "run_command": {
          "command": []
        }
      },
      "on:target_acquired": {
        "run_command": {
          "command": []
        }
      },
      "on:target_escape": {
        "run_command": {
          "command": []
        }
      },
      "on:wake_with_owner": {
        "run_command": {
          "command": []
        }
      },
      "on:tick_action": {
        "randomize": []
      }
    }
  }
}