{
  "format_version": "1.16.0",
  "minecraft:entity": {
    "description": {
      "identifier": "minecraft:item",
      "is_spawnable": true,
      "is_summonable": true,
      "is_experimental": false,
      "scripts": {
        "animate": [
          "item"
        ]
      },
      "animations": {
        "item": "controller.animation.item"
      }
    },
    "components": {
      "minecraft:type_family": {
        "family": [
          "item"
        ]
      },
      "minecraft:collision_box": {
        "height": 0.01,
        "width": 0.01
      },
      "minecraft:physics": {
        "has_gravity": true
      },
      "minecraft:rideable": {
        "family_types": [
          "shields"
        ],
        "seat_count": 1,
        "seats": {
          "position": [ 0, 0, 0 ]
        }
      },
      "minecraft:environment_sensor": {
        "triggers": [
          {
            "event": "minecraft:juan_shield",
            "filters": {
              "all_of": [
                {
                  "operator": "==",
                  "subject": "self",
                  "test": "has_tag",
                  "value": "juan_shield"
                },
                {
                  "operator": "!=",
                  "subject": "self",
                  "test": "is_mark_variant",
                  "value": 1
                }
              ]
            }
          },
          {
            "event": "minecraft:stone_shield",
            "filters": {
              "all_of": [
                {
                  "operator": "==",
                  "subject": "self",
                  "test": "has_tag",
                  "value": "stone_shield"
                },
                {
                  "operator": "!=",
                  "subject": "self",
                  "test": "is_mark_variant",
                  "value": 3
                }
              ]
            }
          },
          {
            "event": "minecraft:gold_shield",
            "filters": {
              "all_of": [
                {
                  "operator": "==",
                  "subject": "self",
                  "test": "has_tag",
                  "value": "gold_shield"
                },
                {
                  "operator": "!=",
                  "subject": "self",
                  "test": "is_mark_variant",
                  "value": 4
                }
              ]
            }
          },
          { 
            "event": "minecraft:iron_shield",
            "filters": {
              "all_of": [
                {
                  "operator": "==",
                  "subject": "self",
                  "test": "has_tag",
                  "value": "iron_shield"
                },
                {
                  "operator": "!=",
                  "subject": "self",
                  "test": "is_mark_variant",
                  "value": 5
                }
              ]
            }
          },
          {
            "event": "minecraft:obsidian_shield",
            "filters": {
              "all_of": [
                {
                  "operator": "==",
                  "subject": "self",
                  "test": "has_tag",
                  "value": "obsidian_shield"
                },
                {
                  "operator": "!=",
                  "subject": "self",
                  "test": "is_mark_variant",
                  "value": 6
                }
              ]
            }
          },
          {
            "event": "minecraft:netherite_shield",
            "filters": {
              "all_of": [
                {
                  "operator": "==",
                  "subject": "self",
                  "test": "has_tag",
                  "value": "netherite_shield"
                },
                {
                  "operator": "!=",
                  "subject": "self",
                  "test": "is_mark_variant",
                  "value": 2
                }
              ]
            }
          }
        ]
      },
      "minecraft:is_hidden_when_invisible": {},
      "minecraft:pushable": {
        "is_pushable": true,
        "is_pushable_by_piston": true
      }
    },
    "component_groups": {
      "despawn": {
        "minecraft:instant_despawn": {}
      },
      "minecraft:juan_shield": {
        "minecraft:addrider": {
          "entity_type": "add:juan_shield",
          "spawn_event": "minecraft:juan_shield"
        },
        "minecraft:scale": {
          "value": 0
        },
        "minecraft:mark_variant": {
          "value": 1
        }
      },
      "minecraft:netherite_shield": {
        "minecraft:addrider": {
          "spawn_event": "minecraft:netherite_shield",
          "entity_type": "add:juan_shield"
        },
        "minecraft:fire_immune": true,
        "minecraft:mark_variant": {
          "value": 2
        }
      },
      "minecraft:stone_shield": {
        "minecraft:addrider": {
          "spawn_event": "minecraft:stone_shield",
          "entity_type": "add:juan_shield"
        },
        "minecraft:mark_variant": {
          "value": 3
        }
      }, 
      "minecraft:gold_shield": {
        "minecraft:addrider": {
          "spawn_event": "minecraft:gold_shield",
          "entity_type": "add:juan_shield"
        },
        "minecraft:mark_variant": {
          "value": 4
        }
      },    
      "minecraft:iron_shield": {
        "minecraft:addrider": {
          "spawn_event": "minecraft:iron_shield",
          "entity_type": "add:juan_shield"
        },
        "minecraft:mark_variant": {
          "value": 5
        }
      },
      "minecraft:obsidian_shield": {
        "minecraft:addrider": {
          "spawn_event": "minecraft:obsidian_shield",
          "entity_type": "add:juan_shield"
        },
        "minecraft:mark_variant": {
          "value": 6
        }
      },
      "minecraft:magic_puff": {
        "minecraft:spawn_entity": {
          "entities": {
            "min_wait_time": 0.0,
            "max_wait_time": 0.0,
            "single_use": true,
            "num_to_spawn": 10,
            "spawn_entity": "minecraft:xp_orb",
            "spawn_sound": "random.levelup"
          }
        }
      }
    },
    "events": {
      "despawn": {
        "add": {
          "component_groups": [
            "despawn"
          ]
        }
      },
      "minecraft:juan_shield": {
        "add": {
          "component_groups": [
            "minecraft:juan_shield"
          ]
        }
      },
      "minecraft:netherite_shield": {
        "add": {
          "component_groups": [
            "minecraft:netherite_shield"
          ]
        }
      },
      "minecraft:stone_shield": {
        "add": {
          "component_groups": [
            "minecraft:stone_shield"
          ]
        }
      },
      "minecraft:gold_shield": {
        "add": {
          "component_groups": [
            "minecraft:gold_shield"
          ]
        }
      },   
      "minecraft:iron_shield": {
        "add": {
          "component_groups": [
            "minecraft:iron_shield"
          ]
        }
      },
      "minecraft:obsidian_shield": {
        "add": {
          "component_groups": [
            "minecraft:obsidian_shield"
          ]
        }
      },
      "minecraft:magic_puff": {
        "add": {
          "component_groups": [
            "minecraft:magic_puff",
            "despawn"
          ]
        }
      },
      "lava": {
        "add": {
          "component_groups": [
            "lava"
          ]
        }
      }
    }
  }
}