{
    "format_version": "1.10.0",
    "minecraft:client_entity": {
        "description": {
            "identifier": "minecraft:player",
            "materials": {
                "default": "entity_alphatest",
                "cape": "entity_alphatest",
                "animated": "player_animated",
                "p90": "entity_static",
				"m4a1": "entity_static",
				"m249": "entity_static"
            },
            "textures": {
                "default": "textures/entity/steve",
                "cape": "textures/entity/cape_invisible",
                "p90": "models/entity/p90",
                "p90_noammo": "models/entity/p90",
				"m4a1": "textures/entity/m4a1",
				"m4a1_noammo": "textures/entity/m4a1",
				"m249": "textures/entity/m249",
				"m249_noammo": "textures/entity/m249"
            },
            "geometry": {
                "default": "geometry.humanoid.custom",
                "cape": "geometry.cape",
                "p90": "geometry.p90",
                "p90_noammo": "geometry.p90_noammo",
				"m4a1": "geometry.m4a1",
				"m249": "geometry.m249"
            },
            "scripts": {
                "scale": "0.9375",
                "initialize": ["variable.is_holding_right = 0.0;", "variable.is_blinking = 0.0;", "variable.last_blink_time = 0.0;", "variable.hand_bob = 0.0;"],
                "pre_animation": ["variable.is_third_person = !variable.is_first_person && !variable.map_face_icon;", "variable.helmet_layer_visible = 1.0;", "variable.leg_layer_visible = 1.0;", "variable.boot_layer_visible = 1.0;", "variable.chest_layer_visible = 1.0;", "variable.attack_body_rot_y = Math.sin(360*Math.sqrt(variable.attack_time)) * 5.0;", "variable.tcos0 = (math.cos(query.modified_distance_moved * 38.17) * query.modified_move_speed / variable.gliding_speed_value) * 57.3;", "variable.first_person_rotation_factor = math.sin((1 - variable.attack_time) * 180.0);", "variable.hand_bob = query.life_time < 0.01 ? 0.0 : variable.hand_bob + ((query.is_on_ground && query.is_alive ? math.clamp(math.sqrt(math.pow(query.position_delta(0), 2.0) + math.pow(query.position_delta(2), 2.0)), 0.0, 0.1) : 0.0) - variable.hand_bob) * 0.02;", "variable.map_angle = math.clamp(1 - variable.player_x_rotation / 45.1, 0.0, 1.0);", "variable.item_use_normalized = query.main_hand_item_use_duration / query.main_hand_item_max_duration;"],
                "animate": ["root", 
					   {
                        "fa2": "query.get_equipped_item_name=='p90_noammo'"
                    }, {
                        "hold": "query.get_equipped_item_name=='p90_noammo'"
                    }, {
                        "fa": "query.get_equipped_item_name=='p90'"
                    }, {
                        "hold": "query.get_equipped_item_name=='p90'"
                    }, {
                        "p90_reload": "query.is_using_item && query.get_equipped_item_name=='p90_noammo'"
                    }, {
                        "fa3": "query.get_equipped_item_name=='m4a1'"
                    }, {
                        "hold": "query.get_equipped_item_name=='m4a1'"
                    }, {
                        "fa3": "query.get_equipped_item_name=='m4a1_noammo'"
                    }, {
                        "hold": "query.get_equipped_item_name=='m4a1_noammo'"
                    }, {
                        "m4a1_reload": "query.is_using_item && query.get_equipped_item_name=='m4a1_noammo'"
                    }, {
                        "fa4": "query.get_equipped_item_name=='m249'"
                    }, {
                        "hold": "query.get_equipped_item_name=='m249'"
                    }, {
                        "fa4": "query.get_equipped_item_name=='m249_noammo'"
                    }, {
                        "hold": "query.get_equipped_item_name=='m249_noammo'"
                    }, {
                        "m249_reload": "query.is_using_item && query.get_equipped_item_name=='m249_noammo'"
                    }
                ]
            },
            "animations": {
				"m4a1_reload": "animation.m4a1.reload",
				"m249_reload": "animation.m249.reload",
				"p90_reload": "animation.p90_noammo.reload",
				"hold": "animation.humanoid.bow_and_arrow",
				"fa": "animation.p90.f",
				"fa2": "animation.p90_noammo.f",
				"fa3": "animation.m4a1.hold",
				"fa4": "animation.m249.hold",
                "no": "animation.p90_noammo.hold",
                "root": "controller.animation.player.root",
                "base_controller": "controller.animation.player.base",
                "humanoid_base_pose": "animation.humanoid.base_pose",
                "look_at_target": "controller.animation.humanoid.look_at_target",
                "look_at_target_ui": "animation.player.look_at_target.ui",
                "look_at_target_default": "animation.humanoid.look_at_target.default",
                "look_at_target_gliding": "animation.humanoid.look_at_target.gliding",
                "look_at_target_swimming": "animation.humanoid.look_at_target.swimming",
                "look_at_target_inverted": "animation.player.look_at_target.inverted",
                "cape": "animation.player.cape",
                "move.arms": "animation.player.move.arms",
                "move.legs": "animation.player.move.legs",
                "swimming": "animation.player.swim",
                "swimming.legs": "animation.player.swim.legs",
                "riding.arms": "animation.player.riding.arms",
                "riding.legs": "animation.player.riding.legs",
                "holding": "animation.player.holding",
                "brandish_spear": "animation.humanoid.brandish_spear",
                "charging": "animation.humanoid.charging",
                "attack.positions": "animation.player.attack.positions",
                "attack.rotations": "animation.player.attack.rotations",
                "sneaking": "animation.player.sneaking",
                "bob": "animation.player.bob",
                "damage_nearby_mobs": "animation.humanoid.damage_nearby_mobs",
                "bow_and_arrow": "animation.humanoid.bow_and_arrow",
                "use_item_progress": "animation.humanoid.use_item_progress",
                "skeleton_attack": "animation.skeleton.attack",
                "sleeping": "animation.player.sleeping",
                "first_person_base_pose": "animation.player.first_person.base_pose",
                "first_person_empty_hand": "animation.player.first_person.empty_hand",
                "first_person_swap_item": "animation.player.first_person.swap_item",
                "first_person_attack_controller": "controller.animation.player.first_person_attack",
                "first_person_attack_rotation": "animation.player.first_person.attack_rotation",
                "first_person_vr_attack_rotation": "animation.player.first_person.vr_attack_rotation",
                "first_person_walk": "animation.player.first_person.walk",
                "first_person_map_controller": "controller.animation.player.first_person_map",
                "first_person_map_hold": "animation.player.first_person.map_hold",
                "first_person_map_hold_attack": "animation.player.first_person.map_hold_attack",
                "first_person_map_hold_off_hand": "animation.player.first_person.map_hold_off_hand",
                "first_person_map_hold_main_hand": "animation.player.first_person.map_hold_main_hand",
                "first_person_crossbow_equipped": "animation.player.first_person.crossbow_equipped",
                "third_person_crossbow_equipped": "animation.player.crossbow_equipped",
                "third_person_bow_equipped": "animation.player.bow_equipped",
                "crossbow_hold": "animation.player.crossbow_hold",
                "crossbow_controller": "controller.animation.player.crossbow",
                "shield_block_main_hand": "animation.player.shield_block_main_hand",
                "shield_block_off_hand": "animation.player.shield_block_off_hand",
                "blink": "controller.animation.persona.blink"
            },
            "render_controllers": [{
                    "controller.render.player.first_person": "variable.is_first_person"
                }, {
                    "controller.render.player.third_person": "!variable.is_first_person && !variable.map_face_icon"
                }, {
                    "controller.render.player.map": "variable.map_face_icon"
                }, {
                    "controller.render.p90": "variable.is_first_person"
                }, {
                    "controller.render.p90": "variable.is_third_person"
                }, {
                    "controller.render.p90_noammo": "variable.is_third_person"
                }, {
                    "controller.render.p90_noammo": "variable.is_first_person"
                }, {
                    "controller.render.m4a1": "variable.is_third_person"
                }, {
                    "controller.render.m4a1": "variable.is_first_person"
                }, {
                    "controller.render.m4a1_noammo": "variable.is_third_person"
                }, {
                    "controller.render.m4a1_noammo": "variable.is_first_person"
                }, {
                    "controller.render.m249": "variable.is_third_person"
                }, {
                    "controller.render.m249": "variable.is_first_person"
                }, {
                    "controller.render.m249_noammo": "variable.is_third_person"
                }, {
                    "controller.render.m249_noammo": "variable.is_first_person"
                }
            ],
            "enable_attachables": true
        }
    }
}
