diff --git a/src/bb/dronel.bbmodel b/src/bb/dronel.bbmodel new file mode 100644 index 000000000..cf41385c4 --- /dev/null +++ b/src/bb/dronel.bbmodel @@ -0,0 +1 @@ +{"meta":{"format_version":"4.10","model_format":"modded_entity","box_uv":true},"name":"dronel","model_identifier":"","modded_entity_entity_class":"","modded_entity_version":"1.17","modded_entity_flip_y":true,"visible_box":[1,1,0],"variable_placeholders":"","variable_placeholder_buttons":[],"timeline_setups":[],"unhandled_root_fields":{},"resolution":{"width":64,"height":64},"elements":[{"name":"core","box_uv":true,"rescale":false,"locked":false,"light_emission":0,"render_order":"default","allow_mirror_modeling":true,"from":[-3,5,1],"to":[3,11,7],"autouv":0,"color":5,"origin":[0,7,4],"uv_offset":[0,21],"faces":{"north":{"uv":[6,27,12,33],"texture":0},"east":{"uv":[0,27,6,33],"texture":0},"south":{"uv":[18,27,24,33],"texture":0},"west":{"uv":[12,27,18,33],"texture":0},"up":{"uv":[12,27,6,21],"texture":0},"down":{"uv":[18,21,12,27],"texture":0}},"type":"cube","uuid":"398e4ddd-892e-77c5-f02c-cc94c56f4450"},{"name":"shell","box_uv":true,"rescale":false,"locked":false,"light_emission":0,"render_order":"default","allow_mirror_modeling":true,"from":[-6,2,-7],"to":[6,14,2],"autouv":0,"color":5,"origin":[0,5,-1],"faces":{"north":{"uv":[9,9,21,21],"texture":0},"east":{"uv":[0,9,9,21],"texture":0},"south":{"uv":[30,9,42,21],"texture":0},"west":{"uv":[21,9,30,21],"texture":0},"up":{"uv":[21,9,9,0],"texture":0},"down":{"uv":[33,0,21,9],"texture":0}},"type":"cube","uuid":"622a9242-b2ef-e2b9-940a-85846b37f941"},{"name":"lens","box_uv":true,"rescale":false,"locked":false,"light_emission":0,"render_order":"default","allow_mirror_modeling":true,"from":[-4,4,-9],"to":[4,12,-7],"autouv":0,"color":2,"origin":[0,10,-8],"uv_offset":[24,21],"faces":{"north":{"uv":[26,23,34,31],"texture":0},"east":{"uv":[24,23,26,31],"texture":0},"south":{"uv":[36,23,44,31],"texture":0},"west":{"uv":[34,23,36,31],"texture":0},"up":{"uv":[34,23,26,21],"texture":0},"down":{"uv":[42,21,34,23],"texture":0}},"type":"cube","uuid":"37bc9228-8e1a-ca13-e2cf-5647ac104e0b"},{"name":"EYE","box_uv":true,"rescale":false,"locked":false,"light_emission":0,"render_order":"default","allow_mirror_modeling":true,"from":[-3,5,-6.5],"to":[3,11,-0.5],"autouv":0,"color":3,"inflate":-0.2,"origin":[0,9,-1.5],"uv_offset":[0,33],"faces":{"north":{"uv":[6,39,12,45],"texture":0},"east":{"uv":[0,39,6,45],"texture":0},"south":{"uv":[18,39,24,45],"texture":0},"west":{"uv":[12,39,18,45],"texture":0},"up":{"uv":[12,39,6,33],"texture":0},"down":{"uv":[18,33,12,39],"texture":0}},"type":"cube","uuid":"52df1897-0bf1-a6dd-1ac1-cfb48e2ba5f7"},{"name":"gyro","box_uv":true,"rescale":false,"locked":false,"light_emission":0,"render_order":"default","allow_mirror_modeling":true,"from":[-5,5,-2],"to":[-3,11,4],"autouv":0,"color":9,"origin":[-4,7,-1],"uv_offset":[40,31],"faces":{"north":{"uv":[46,37,48,43],"texture":0},"east":{"uv":[40,37,46,43],"texture":0},"south":{"uv":[54,37,56,43],"texture":0},"west":{"uv":[48,37,54,43],"texture":0},"up":{"uv":[48,37,46,31],"texture":0},"down":{"uv":[50,31,48,37],"texture":0}},"type":"cube","uuid":"4613ca9b-d1e9-e165-c37f-0405295e2734"},{"name":"gyro","box_uv":true,"rescale":false,"locked":false,"light_emission":0,"render_order":"default","allow_mirror_modeling":true,"from":[3,5,-2],"to":[5,11,4],"autouv":0,"color":9,"origin":[4,7,-1],"uv_offset":[24,31],"faces":{"north":{"uv":[30,37,32,43],"texture":0},"east":{"uv":[24,37,30,43],"texture":0},"south":{"uv":[38,37,40,43],"texture":0},"west":{"uv":[32,37,38,43],"texture":0},"up":{"uv":[32,37,30,31],"texture":0},"down":{"uv":[34,31,32,37],"texture":0}},"type":"cube","uuid":"1929c45e-7043-c717-c2fb-4d58c6d20409"},{"name":"frame","box_uv":true,"rescale":false,"locked":false,"light_emission":0,"render_order":"default","allow_mirror_modeling":true,"from":[-5,3,-5],"to":[5,13,6],"autouv":0,"color":5,"origin":[0,3,0],"uv_offset":[13,43],"faces":{"north":{"uv":[24,54,34,64],"texture":0},"east":{"uv":[13,54,24,64],"texture":0},"south":{"uv":[45,54,55,64],"texture":0},"west":{"uv":[34,54,45,64],"texture":0},"up":{"uv":[34,54,24,43],"texture":0},"down":{"uv":[44,43,34,54],"texture":0}},"type":"cube","uuid":"ae27ee57-bbe1-8948-54e9-91b794a6e285"},{"name":"antenna","box_uv":true,"rescale":false,"locked":false,"light_emission":0,"render_order":"default","allow_mirror_modeling":true,"from":[4,9,3],"to":[4,32,5],"autouv":0,"color":7,"origin":[3,8,4],"uv_offset":[42,-2],"faces":{"north":{"uv":[44,0,44,23],"texture":0},"east":{"uv":[42,0,44,23],"texture":0},"south":{"uv":[46,0,46,23],"texture":0},"west":{"uv":[44,0,46,23],"texture":0},"up":{"uv":[44,0,44,-2],"texture":0},"down":{"uv":[44,-2,44,0],"texture":0}},"type":"cube","uuid":"d2329857-d441-adbf-7cd4-7b4f7467223f"},{"name":"antenna","box_uv":true,"rescale":false,"locked":false,"light_emission":0,"render_order":"default","allow_mirror_modeling":true,"from":[-4,9,3],"to":[-4,32,5],"autouv":0,"color":7,"origin":[-5,8,4],"uv_offset":[46,-2],"faces":{"north":{"uv":[48,0,48,23],"texture":0},"east":{"uv":[46,0,48,23],"texture":0},"south":{"uv":[50,0,50,23],"texture":0},"west":{"uv":[48,0,50,23],"texture":0},"up":{"uv":[48,0,48,-2],"texture":0},"down":{"uv":[48,-2,48,0],"texture":0}},"type":"cube","uuid":"298610eb-f1bf-aae7-3596-4bfdf6900fa5"},{"name":"fin","box_uv":true,"rescale":false,"locked":false,"light_emission":0,"render_order":"default","allow_mirror_modeling":true,"from":[-9,3.5,4],"to":[-4,3.5,15],"autouv":0,"color":7,"origin":[-5,3.5,5],"uv_offset":[39,0],"faces":{"north":{"uv":[50,11,55,11],"texture":0},"east":{"uv":[39,11,50,11],"texture":0},"south":{"uv":[66,11,71,11],"texture":0},"west":{"uv":[55,11,66,11],"texture":0},"up":{"uv":[55,11,50,0],"texture":0},"down":{"uv":[60,0,55,11],"texture":0}},"type":"cube","uuid":"054e6056-fb16-3ab1-b3f5-a36693f75b4f"},{"name":"fin","box_uv":true,"rescale":false,"locked":false,"light_emission":0,"render_order":"default","allow_mirror_modeling":true,"from":[4,3.5,4],"to":[9,3.5,15],"autouv":0,"color":7,"origin":[8,3.5,5],"uv_offset":[39,11],"faces":{"north":{"uv":[50,22,55,22],"texture":0},"east":{"uv":[39,22,50,22],"texture":0},"south":{"uv":[66,22,71,22],"texture":0},"west":{"uv":[55,22,66,22],"texture":0},"up":{"uv":[55,22,50,11],"texture":0},"down":{"uv":[60,11,55,22],"texture":0}},"type":"cube","uuid":"7b7e7823-7d86-0451-7a52-5ac75f11deae"}],"outliner":[{"name":"root","origin":[0,0,0],"color":0,"uuid":"2f0d2aa6-30da-3fa4-0039-dd6a901fd0f6","export":true,"mirror_uv":false,"isOpen":true,"locked":false,"visibility":true,"autouv":0,"selected":false,"children":[{"name":"body","origin":[0,8,1],"color":0,"uuid":"e5c68f11-81c7-7bc6-b958-dd965c3f7d16","export":true,"mirror_uv":false,"isOpen":true,"locked":false,"visibility":true,"autouv":0,"selected":false,"children":["398e4ddd-892e-77c5-f02c-cc94c56f4450","622a9242-b2ef-e2b9-940a-85846b37f941","37bc9228-8e1a-ca13-e2cf-5647ac104e0b","ae27ee57-bbe1-8948-54e9-91b794a6e285",{"name":"eye","origin":[0,8,-3.5],"color":0,"uuid":"b3d240d9-b51d-5f53-db7b-0441e501c651","export":true,"mirror_uv":false,"isOpen":true,"locked":false,"visibility":true,"autouv":0,"selected":false,"children":["52df1897-0bf1-a6dd-1ac1-cfb48e2ba5f7"]},{"name":"gyroL","origin":[-4,8,1],"color":0,"uuid":"00f4bd9e-483b-fc7b-623d-ddd46a1b1c25","export":true,"mirror_uv":false,"isOpen":false,"locked":false,"visibility":true,"autouv":0,"selected":false,"children":["4613ca9b-d1e9-e165-c37f-0405295e2734"]},{"name":"gyroR","origin":[4,8,1],"color":0,"uuid":"33925794-2b06-ea58-b7d2-c6eb8897c17a","export":true,"mirror_uv":false,"isOpen":false,"locked":false,"visibility":true,"autouv":0,"selected":false,"children":["1929c45e-7043-c717-c2fb-4d58c6d20409"]},{"name":"antennaL","origin":[-4,10,4],"rotation":[67.00992,-11.53486,4.8493],"color":0,"uuid":"b3162c45-4e47-2e1f-c3a8-3ef65b73f12d","export":true,"mirror_uv":false,"isOpen":true,"locked":false,"visibility":true,"autouv":0,"selected":false,"children":["298610eb-f1bf-aae7-3596-4bfdf6900fa5"]},{"name":"antennaR","origin":[4,10,4],"rotation":[67.00992,11.53486,-4.8493],"color":0,"uuid":"611ebc16-b7f4-d477-a5cb-894be7ac03bc","export":true,"mirror_uv":false,"isOpen":true,"locked":false,"visibility":true,"autouv":0,"selected":false,"children":["d2329857-d441-adbf-7cd4-7b4f7467223f"]},{"name":"finL","origin":[-5,3.5,5],"rotation":[-16.32495,-15.69986,47.26579],"color":0,"uuid":"f335fbfc-504c-1621-da22-351713ed7ac5","export":true,"mirror_uv":false,"isOpen":true,"locked":false,"visibility":true,"autouv":0,"selected":false,"children":["054e6056-fb16-3ab1-b3f5-a36693f75b4f"]},{"name":"finR","origin":[5,3.5,5],"rotation":[-16.32495,15.69986,-47.26579],"color":0,"uuid":"7b565066-85f1-5dc4-6d52-bfbe3357fff3","export":true,"mirror_uv":false,"isOpen":true,"locked":false,"visibility":true,"autouv":0,"selected":false,"children":["7b7e7823-7d86-0451-7a52-5ac75f11deae"]}]}]}],"textures":[{"path":"L:\\overdrive_that_matters\\src\\main\\resources\\assets\\overdrive_that_matters\\textures\\entity\\drone.png","name":"drone.png","folder":"block","namespace":"","id":"0","group":"","width":64,"height":64,"uv_width":64,"uv_height":64,"particle":false,"use_as_default":false,"layers_enabled":false,"sync_to_project":"","render_mode":"default","render_sides":"auto","pbr_channel":"color","frame_time":1,"frame_order_type":"loop","frame_order":"","frame_interpolate":false,"visible":true,"internal":true,"saved":true,"uuid":"ed39a88e-361d-42a5-888f-2dac5761e94e","relative_path":"../main/resources/assets/overdrive_that_matters/textures/entity/drone.png","source":"data:image/png;base64,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"}],"animations":[{"uuid":"32d0dd19-9d37-d728-21de-79ddba86d02b","name":"loop","loop":"loop","override":false,"length":3,"snapping":25,"selected":false,"anim_time_update":"","blend_weight":"","start_delay":"","loop_delay":"","animators":{"b3d240d9-b51d-5f53-db7b-0441e501c651":{"name":"eye","type":"bone","keyframes":[{"channel":"position","data_points":[{"x":"0","y":"0.2","z":"0"}],"uuid":"e9da9fc9-049b-6f4f-921b-d57effbf77ed","time":0.4,"color":-1,"interpolation":"linear","easing":"linear","easingArgs":[]},{"channel":"position","data_points":[{"x":"0","y":"0","z":"0"}],"uuid":"cda25fab-16cf-e2f9-912d-9a64017adb74","time":0.52,"color":-1,"interpolation":"linear","easing":"linear","easingArgs":[]},{"channel":"position","data_points":[{"x":"0","y":"0","z":"0"}],"uuid":"2a3a07d8-922d-9460-dfbd-54f96d61c192","time":0,"color":-1,"interpolation":"linear","easing":"linear","easingArgs":[]},{"channel":"position","data_points":[{"x":"0","y":"0","z":"0"}],"uuid":"8022cc11-fa61-0578-a40d-3724d75ad6b1","time":0.32,"color":-1,"interpolation":"linear","easing":"linear","easingArgs":[]},{"channel":"position","data_points":[{"x":"0","y":"0","z":"0"}],"uuid":"79a70714-8eae-4511-3602-101e098eb7a3","time":1.08,"color":-1,"interpolation":"linear","easing":"linear","easingArgs":[]},{"channel":"position","data_points":[{"x":"-0.3","y":"-0.3","z":"0.3"}],"uuid":"2a8ab5bc-60bc-fdc9-2e36-3683304ebe82","time":1.16,"color":-1,"interpolation":"linear","easing":"linear","easingArgs":[]},{"channel":"position","data_points":[{"x":"0","y":"0","z":"0"}],"uuid":"29300f0a-7fff-39a8-0bd2-ff7f4bdb2e1c","time":1.28,"color":-1,"interpolation":"linear","easing":"linear","easingArgs":[]},{"channel":"position","data_points":[{"x":"0","y":"0","z":"0"}],"uuid":"3b51c3ee-db44-e8aa-c3b7-a31da821fdc4","time":2.72,"color":-1,"interpolation":"linear","easing":"linear","easingArgs":[]},{"channel":"position","data_points":[{"x":"0.3","y":"0.3","z":"0"}],"uuid":"36573f62-c184-5826-9ec2-aa3a6596ab63","time":2.8,"color":-1,"interpolation":"linear","easing":"linear","easingArgs":[]},{"channel":"position","data_points":[{"x":"0","y":"0","z":"0"}],"uuid":"782c0fa1-7c28-55c2-932f-394c67ee3fe0","time":2.92,"color":-1,"interpolation":"linear","easing":"linear","easingArgs":[]},{"channel":"position","data_points":[{"x":"0","y":"0","z":"0"}],"uuid":"f7382d3e-b874-aa12-6d0a-c835407ed2ad","time":1.92,"color":-1,"interpolation":"linear","easing":"linear","easingArgs":[]},{"channel":"position","data_points":[{"x":"0","y":"0","z":"-0.4"}],"uuid":"872351cb-cccf-4960-5b9e-153c8a5010fe","time":2,"color":-1,"interpolation":"linear","easing":"linear","easingArgs":[]},{"channel":"position","data_points":[{"x":"0","y":"0","z":"0"}],"uuid":"ccb3e444-0291-bdac-1083-3b406be5b10d","time":2.12,"color":-1,"interpolation":"linear","easing":"linear","easingArgs":[]}]},"00f4bd9e-483b-fc7b-623d-ddd46a1b1c25":{"name":"gyroL","type":"bone","keyframes":[{"channel":"rotation","data_points":[{"x":"720\n","y":"0","z":"0"}],"uuid":"f19805d3-0c27-5608-9b38-1aa8efb7dcc6","time":3,"color":-1,"interpolation":"linear","easing":"linear","easingArgs":[]},{"channel":"rotation","data_points":[{"x":"0","y":"0","z":"0"}],"uuid":"48e176d7-1418-bb80-8334-575425b607f5","time":0,"color":-1,"interpolation":"linear","easing":"linear","easingArgs":[]}]},"33925794-2b06-ea58-b7d2-c6eb8897c17a":{"name":"gyroR","type":"bone","keyframes":[{"channel":"rotation","data_points":[{"x":"720\n","y":"0","z":"0"}],"uuid":"5d01c323-0fcc-6aa1-6c7d-177f53172af6","time":3,"color":-1,"interpolation":"linear","easing":"linear","easingArgs":[]},{"channel":"rotation","data_points":[{"x":"0","y":"0","z":"0"}],"uuid":"d79fa787-a43b-381f-ee0d-8f73df08b22e","time":0,"color":-1,"interpolation":"linear","easing":"linear","easingArgs":[]}]},"b3162c45-4e47-2e1f-c3a8-3ef65b73f12d":{"name":"antennaL","type":"bone","keyframes":[{"channel":"rotation","data_points":[{"x":"5.5794559921","y":"4.4039053538","z":"2.4380526159"}],"uuid":"7d9a0bc7-9a83-e2b3-1ca2-3301c8eaf61b","time":1.52,"color":-1,"interpolation":"catmullrom","easing":"linear","easingArgs":[]},{"channel":"rotation","data_points":[{"x":"0","y":"0","z":"0"}],"uuid":"d29a2f0f-7ac0-7aa3-a877-7db260036e8c","time":0,"color":-1,"interpolation":"catmullrom","easing":"linear","easingArgs":[]},{"channel":"rotation","data_points":[{"x":"0","y":"0","z":"0"}],"uuid":"ceea190d-b781-fa42-0312-c775ec0e731e","time":3,"color":-1,"interpolation":"catmullrom","easing":"linear","easingArgs":[]}]},"611ebc16-b7f4-d477-a5cb-894be7ac03bc":{"name":"antennaR","type":"bone","keyframes":[{"channel":"rotation","data_points":[{"x":"5.5794559921","y":"-4.4039053538","z":"-2.4380526159"}],"uuid":"e2195965-085a-2972-79ae-d6e892964d0e","time":1.52,"color":-1,"interpolation":"catmullrom","easing":"linear","easingArgs":[]},{"channel":"rotation","data_points":[{"x":"0","y":"0","z":"0"}],"uuid":"be3ca1f9-f260-ade2-d885-2150c07d9a91","time":0,"color":-1,"interpolation":"catmullrom","easing":"linear","easingArgs":[]},{"channel":"rotation","data_points":[{"x":"0","y":"0","z":"0"}],"uuid":"1ce2778b-76f7-d39e-8c3f-b4a186a6a46f","time":3,"color":-1,"interpolation":"catmullrom","easing":"linear","easingArgs":[]}]},"f335fbfc-504c-1621-da22-351713ed7ac5":{"name":"finL","type":"bone","keyframes":[{"channel":"rotation","data_points":[{"x":"0","y":"20","z":"0"}],"uuid":"887fa13d-f992-98b2-acc0-a36ca9c929bb","time":1.52,"color":-1,"interpolation":"catmullrom","easing":"linear","easingArgs":[]},{"channel":"rotation","data_points":[{"x":"0","y":"0","z":"0"}],"uuid":"a369e719-1fe3-4baf-170c-8e8a528c4a27","time":0,"color":-1,"interpolation":"catmullrom","easing":"linear","easingArgs":[]},{"channel":"rotation","data_points":[{"x":"0","y":"0","z":"0"}],"uuid":"4c798be6-11c2-d8fb-1f70-50c17f505309","time":3,"color":-1,"interpolation":"catmullrom","easing":"linear","easingArgs":[]}]},"7b565066-85f1-5dc4-6d52-bfbe3357fff3":{"name":"finR","type":"bone","keyframes":[{"channel":"rotation","data_points":[{"x":"0","y":"-20","z":"0"}],"uuid":"c55c02cf-2a67-c261-7011-77701bd4fd58","time":1.52,"color":-1,"interpolation":"catmullrom","easing":"linear","easingArgs":[]},{"channel":"rotation","data_points":[{"x":"0","y":"0","z":"0"}],"uuid":"6cd31d51-0246-68c5-e768-f0f00a13de92","time":0,"color":-1,"interpolation":"catmullrom","easing":"linear","easingArgs":[]},{"channel":"rotation","data_points":[{"x":"0","y":"0","z":"0"}],"uuid":"eaf10f82-6335-850d-65cd-cd12767c86d7","time":3,"color":-1,"interpolation":"catmullrom","easing":"linear","easingArgs":[]}]}}}]} \ No newline at end of file diff --git a/src/bb/enforcer.bbmodel b/src/bb/enforcer.bbmodel index 64ab22826..031335af9 100644 --- a/src/bb/enforcer.bbmodel +++ b/src/bb/enforcer.bbmodel @@ -1 +1 @@ -{"meta":{"format_version":"4.10","model_format":"modded_entity","box_uv":true},"name":"enforcer","model_identifier":"","modded_entity_entity_class":"","modded_entity_version":"1.17","modded_entity_flip_y":true,"visible_box":[1,1,0],"variable_placeholders":"","variable_placeholder_buttons":[],"timeline_setups":[],"unhandled_root_fields":{},"resolution":{"width":256,"height":256},"elements":[{"name":"cube","box_uv":true,"rescale":false,"locked":false,"light_emission":0,"render_order":"default","allow_mirror_modeling":true,"from":[-5,10,-10],"to":[5,24,10],"autouv":0,"color":9,"origin":[0,22,0],"uv_offset":[92,33],"faces":{"north":{"uv":[112,53,122,67],"texture":0},"east":{"uv":[92,53,112,67],"texture":0},"south":{"uv":[142,53,152,67],"texture":0},"west":{"uv":[122,53,142,67],"texture":0},"up":{"uv":[122,53,112,33],"texture":0},"down":{"uv":[132,33,122,53],"texture":0}},"type":"cube","uuid":"51db3e3f-941d-a163-138b-940354b747c5"},{"name":"cube","box_uv":true,"rescale":false,"locked":false,"light_emission":0,"render_order":"default","allow_mirror_modeling":true,"from":[-8,21,-7],"to":[8,26,7],"autouv":0,"color":2,"origin":[0,36,0],"uv_offset":[140,104],"faces":{"north":{"uv":[154,118,170,123],"texture":0},"east":{"uv":[140,118,154,123],"texture":0},"south":{"uv":[184,118,200,123],"texture":0},"west":{"uv":[170,118,184,123],"texture":0},"up":{"uv":[170,118,154,104],"texture":0},"down":{"uv":[186,104,170,118],"texture":0}},"type":"cube","uuid":"ecbfa3cf-448b-7558-b3df-99c345bbb9e2"},{"name":"leg","box_uv":true,"rescale":false,"locked":false,"light_emission":0,"render_order":"default","allow_mirror_modeling":true,"from":[-15,3,-31],"to":[-4,16,-12],"autouv":0,"color":9,"origin":[-6,5,-13],"uv_offset":[80,104],"faces":{"north":{"uv":[99,123,110,136],"texture":0},"east":{"uv":[80,123,99,136],"texture":0},"south":{"uv":[129,123,140,136],"texture":0},"west":{"uv":[110,123,129,136],"texture":0},"up":{"uv":[110,123,99,104],"texture":0},"down":{"uv":[121,104,110,123],"texture":0}},"type":"cube","uuid":"e91e22e6-dd1c-5be1-ff03-b3ca89426ee7"},{"name":"leg","box_uv":true,"rescale":false,"locked":false,"light_emission":0,"render_order":"default","allow_mirror_modeling":true,"from":[4,3,-31],"to":[15,16,-12],"autouv":0,"color":9,"origin":[11,5,-13],"uv_offset":[0,125],"faces":{"north":{"uv":[19,144,30,157],"texture":0},"east":{"uv":[0,144,19,157],"texture":0},"south":{"uv":[49,144,60,157],"texture":0},"west":{"uv":[30,144,49,157],"texture":0},"up":{"uv":[30,144,19,125],"texture":0},"down":{"uv":[41,125,30,144],"texture":0}},"type":"cube","uuid":"2a055131-4940-38a2-e455-93ec71b3f1a9"},{"name":"leg","box_uv":true,"rescale":false,"locked":false,"light_emission":0,"render_order":"default","allow_mirror_modeling":true,"from":[-15,3,12],"to":[-4,16,31],"autouv":0,"color":9,"origin":[-6,5,28],"uv_offset":[60,136],"faces":{"north":{"uv":[79,155,90,168],"texture":0},"east":{"uv":[60,155,79,168],"texture":0},"south":{"uv":[109,155,120,168],"texture":0},"west":{"uv":[90,155,109,168],"texture":0},"up":{"uv":[90,155,79,136],"texture":0},"down":{"uv":[101,136,90,155],"texture":0}},"type":"cube","uuid":"976e9083-9210-40cb-ef08-fac284f39296"},{"name":"leg","box_uv":true,"rescale":false,"locked":false,"light_emission":0,"render_order":"default","allow_mirror_modeling":true,"from":[4,3,12],"to":[15,16,31],"autouv":0,"color":9,"origin":[11,5,28],"uv_offset":[120,136],"faces":{"north":{"uv":[139,155,150,168],"texture":0},"east":{"uv":[120,155,139,168],"texture":0},"south":{"uv":[169,155,180,168],"texture":0},"west":{"uv":[150,155,169,168],"texture":0},"up":{"uv":[150,155,139,136],"texture":0},"down":{"uv":[161,136,150,155],"texture":0}},"type":"cube","uuid":"5e050313-2d39-2c10-29b7-71c1a43982de"},{"name":"body","box_uv":true,"rescale":false,"locked":false,"light_emission":0,"render_order":"default","allow_mirror_modeling":true,"from":[-12,26,-11],"to":[12,42,11],"autouv":0,"color":9,"origin":[0,41,0],"faces":{"north":{"uv":[22,22,46,38],"texture":0},"east":{"uv":[0,22,22,38],"texture":0},"south":{"uv":[68,22,92,38],"texture":0},"west":{"uv":[46,22,68,38],"texture":0},"up":{"uv":[46,22,22,0],"texture":0},"down":{"uv":[70,0,46,22],"texture":0}},"type":"cube","uuid":"18a0442e-ac0d-2ba5-7278-92865b6326dc"},{"name":"cube","box_uv":true,"rescale":false,"locked":false,"light_emission":0,"render_order":"default","allow_mirror_modeling":true,"from":[1,25,-12],"to":[8,28,-9],"autouv":0,"color":4,"origin":[4,25,-10],"uv_offset":[92,67],"faces":{"north":{"uv":[95,70,102,73],"texture":0},"east":{"uv":[92,70,95,73],"texture":0},"south":{"uv":[105,70,112,73],"texture":0},"west":{"uv":[102,70,105,73],"texture":0},"up":{"uv":[102,70,95,67],"texture":0},"down":{"uv":[109,67,102,70],"texture":0}},"type":"cube","uuid":"5c456e12-bfd4-4a1e-e9c0-18662c0d6eca"},{"name":"joint","box_uv":true,"rescale":false,"locked":false,"light_emission":0,"render_order":"default","allow_mirror_modeling":true,"from":[-14,28,-6],"to":[-12,40,6],"autouv":0,"color":6,"origin":[-13,34,0],"uv_offset":[122,168],"faces":{"north":{"uv":[134,180,136,192],"texture":0},"east":{"uv":[122,180,134,192],"texture":0},"south":{"uv":[148,180,150,192],"texture":0},"west":{"uv":[136,180,148,192],"texture":0},"up":{"uv":[136,180,134,168],"texture":0},"down":{"uv":[138,168,136,180],"texture":0}},"type":"cube","uuid":"faa924f5-be91-ab45-6398-19c35f0c6331"},{"name":"joint","box_uv":true,"rescale":false,"locked":false,"light_emission":0,"render_order":"default","allow_mirror_modeling":true,"from":[12,28,-6],"to":[14,40,6],"autouv":0,"color":6,"origin":[13,34,0],"uv_offset":[150,168],"faces":{"north":{"uv":[162,180,164,192],"texture":0},"east":{"uv":[150,180,162,192],"texture":0},"south":{"uv":[176,180,178,192],"texture":0},"west":{"uv":[164,180,176,192],"texture":0},"up":{"uv":[164,180,162,168],"texture":0},"down":{"uv":[166,168,164,180],"texture":0}},"type":"cube","uuid":"ce24f9d6-789b-4ef8-dbd8-f9df3b6a2e6d"},{"name":"cube","box_uv":true,"rescale":false,"locked":false,"light_emission":0,"render_order":"default","allow_mirror_modeling":true,"from":[-24,29,-5],"to":[-14,39,5],"autouv":0,"color":2,"origin":[-19,34,0],"uv_offset":[44,168],"faces":{"north":{"uv":[54,178,64,188],"texture":0},"east":{"uv":[44,178,54,188],"texture":0},"south":{"uv":[74,178,84,188],"texture":0},"west":{"uv":[64,178,74,188],"texture":0},"up":{"uv":[64,178,54,168],"texture":0},"down":{"uv":[74,168,64,178],"texture":0}},"type":"cube","uuid":"ab09beae-cb19-1ad3-f574-463eb7a40186"},{"name":"rocket","box_uv":true,"rescale":false,"locked":false,"light_emission":0,"render_order":"default","allow_mirror_modeling":true,"from":[14,24,-14],"to":[26,45,14],"autouv":0,"color":9,"origin":[19,28,10],"uv_offset":[0,76],"faces":{"north":{"uv":[28,104,40,125],"texture":0},"east":{"uv":[0,104,28,125],"texture":0},"south":{"uv":[68,104,80,125],"texture":0},"west":{"uv":[40,104,68,125],"texture":0},"up":{"uv":[40,104,28,76],"texture":0},"down":{"uv":[52,76,40,104],"texture":0}},"type":"cube","uuid":"c796e69b-9886-7252-bb1e-5ccccced1c67"},{"name":"cube","box_uv":true,"rescale":false,"locked":false,"light_emission":0,"render_order":"default","allow_mirror_modeling":true,"from":[-26,24,7],"to":[-18,32,22],"autouv":0,"color":3,"rotation":[-30,0,0],"origin":[-22,28,6.5],"uv_offset":[152,33],"faces":{"north":{"uv":[167,48,175,56],"texture":0},"east":{"uv":[152,48,167,56],"texture":0},"south":{"uv":[190,48,198,56],"texture":0},"west":{"uv":[175,48,190,56],"texture":0},"up":{"uv":[175,48,167,33],"texture":0},"down":{"uv":[183,33,175,48],"texture":0}},"type":"cube","uuid":"dcdb7038-230d-4c24-d311-48a5ee0938f3"},{"name":"body","box_uv":true,"rescale":false,"locked":false,"light_emission":0,"render_order":"default","allow_mirror_modeling":true,"from":[-11,30,11],"to":[11,44,25],"autouv":0,"color":2,"origin":[0,46,22],"uv_offset":[80,76],"faces":{"north":{"uv":[94,90,116,104],"texture":0},"east":{"uv":[80,90,94,104],"texture":0},"south":{"uv":[130,90,152,104],"texture":0},"west":{"uv":[116,90,130,104],"texture":0},"up":{"uv":[116,90,94,76],"texture":0},"down":{"uv":[138,76,116,90],"texture":0}},"type":"cube","uuid":"38e205f5-7da0-0e07-a1d2-cee48435acf7"},{"name":"leg","box_uv":true,"rescale":false,"locked":false,"light_emission":0,"render_order":"default","allow_mirror_modeling":true,"from":[5,8,3],"to":[14,19,16],"autouv":0,"color":2,"origin":[11,10,17],"uv_offset":[152,56],"faces":{"north":{"uv":[165,69,174,80],"texture":0},"east":{"uv":[152,69,165,80],"texture":0},"south":{"uv":[187,69,196,80],"texture":0},"west":{"uv":[174,69,187,80],"texture":0},"up":{"uv":[174,69,165,56],"texture":0},"down":{"uv":[183,56,174,69],"texture":0}},"type":"cube","uuid":"faa3b117-7d2d-e54e-b77c-8b1d21711a20"},{"name":"leg","box_uv":true,"rescale":false,"locked":false,"light_emission":0,"render_order":"default","allow_mirror_modeling":true,"from":[5,8,-16],"to":[14,19,-3],"autouv":0,"color":2,"origin":[11,10,-4],"uv_offset":[152,80],"faces":{"north":{"uv":[165,93,174,104],"texture":0},"east":{"uv":[152,93,165,104],"texture":0},"south":{"uv":[187,93,196,104],"texture":0},"west":{"uv":[174,93,187,104],"texture":0},"up":{"uv":[174,93,165,80],"texture":0},"down":{"uv":[183,80,174,93],"texture":0}},"type":"cube","uuid":"89827b33-6902-67fa-b09c-4e351bb818fa"},{"name":"leg","box_uv":true,"rescale":false,"locked":false,"light_emission":0,"render_order":"default","allow_mirror_modeling":true,"from":[-14,8,3],"to":[-5,19,16],"autouv":0,"color":2,"origin":[-6,10,17],"uv_offset":[0,157],"faces":{"north":{"uv":[13,170,22,181],"texture":0},"east":{"uv":[0,170,13,181],"texture":0},"south":{"uv":[35,170,44,181],"texture":0},"west":{"uv":[22,170,35,181],"texture":0},"up":{"uv":[22,170,13,157],"texture":0},"down":{"uv":[31,157,22,170],"texture":0}},"type":"cube","uuid":"04e9cb1e-65b4-1fa1-b868-a4eed1111aa7"},{"name":"leg","box_uv":true,"rescale":false,"locked":false,"light_emission":0,"render_order":"default","allow_mirror_modeling":true,"from":[-14,8,-16],"to":[-5,19,-3],"autouv":0,"color":2,"origin":[-6,10,-4],"uv_offset":[158,0],"faces":{"north":{"uv":[171,13,180,24],"texture":0},"east":{"uv":[158,13,171,24],"texture":0},"south":{"uv":[193,13,202,24],"texture":0},"west":{"uv":[180,13,193,24],"texture":0},"up":{"uv":[180,13,171,0],"texture":0},"down":{"uv":[189,0,180,13],"texture":0}},"type":"cube","uuid":"8d98dbdd-30e3-df6c-6347-f0eaa042ae2f"},{"name":"cube","box_uv":true,"rescale":false,"locked":false,"light_emission":0,"render_order":"default","allow_mirror_modeling":true,"from":[-8,41,7],"to":[-8,60,9],"autouv":0,"color":2,"rotation":[10,0,0],"origin":[-8,41.5,8],"uv_offset":[178,168],"faces":{"north":{"uv":[180,170,180,189],"texture":0},"east":{"uv":[178,170,180,189],"texture":0},"south":{"uv":[182,170,182,189],"texture":0},"west":{"uv":[180,170,182,189],"texture":0},"up":{"uv":[180,170,180,168],"texture":0},"down":{"uv":[180,168,180,170],"texture":0}},"type":"cube","uuid":"0dcb1d3c-1ed2-76a9-9e0d-15979e5cc46e"},{"name":"cube","box_uv":true,"rescale":false,"locked":false,"light_emission":0,"render_order":"default","allow_mirror_modeling":true,"from":[-27,22,-14],"to":[-17,32,9],"autouv":0,"color":9,"origin":[-22,27,4],"uv_offset":[92,0],"faces":{"north":{"uv":[115,23,125,33],"texture":0},"east":{"uv":[92,23,115,33],"texture":0},"south":{"uv":[148,23,158,33],"texture":0},"west":{"uv":[125,23,148,33],"texture":0},"up":{"uv":[125,23,115,0],"texture":0},"down":{"uv":[135,0,125,23],"texture":0}},"type":"cube","uuid":"d2aeaf8c-33b1-e950-3fd9-01db9be3cc55"},{"name":"cube","box_uv":true,"rescale":false,"locked":false,"light_emission":0,"render_order":"default","allow_mirror_modeling":true,"from":[-25,24,-27],"to":[-19,30,-14],"autouv":0,"color":9,"origin":[-22,27,-19],"uv_offset":[84,168],"faces":{"north":{"uv":[97,181,103,187],"texture":0},"east":{"uv":[84,181,97,187],"texture":0},"south":{"uv":[116,181,122,187],"texture":0},"west":{"uv":[103,181,116,187],"texture":0},"up":{"uv":[103,181,97,168],"texture":0},"down":{"uv":[109,168,103,181],"texture":0}},"type":"cube","uuid":"2804b1d0-70d2-f51f-303e-07ea18a5f473"},{"name":"body","box_uv":true,"rescale":false,"locked":false,"light_emission":0,"render_order":"default","allow_mirror_modeling":true,"from":[-12,26,-11],"to":[12,42,11],"autouv":0,"color":9,"inflate":0.5,"origin":[0,41,0],"uv_offset":[0,38],"faces":{"north":{"uv":[22,60,46,76],"texture":0},"east":{"uv":[0,60,22,76],"texture":0},"south":{"uv":[68,60,92,76],"texture":0},"west":{"uv":[46,60,68,76],"texture":0},"up":{"uv":[46,60,22,38],"texture":0},"down":{"uv":[70,38,46,60],"texture":0}},"type":"cube","uuid":"7e750d0b-499f-fbda-69b8-d38802f89bfa"},{"name":"leg","box_uv":true,"rescale":false,"locked":false,"light_emission":0,"render_order":"default","allow_mirror_modeling":true,"from":[5,10,20],"to":[14,21,33],"autouv":0,"color":2,"origin":[11,12,34],"uv_offset":[202,0],"faces":{"north":{"uv":[215,13,224,24],"texture":0},"east":{"uv":[202,13,215,24],"texture":0},"south":{"uv":[237,13,246,24],"texture":0},"west":{"uv":[224,13,237,24],"texture":0},"up":{"uv":[224,13,215,0],"texture":0},"down":{"uv":[233,0,224,13],"texture":0}},"type":"cube","uuid":"83ccd667-0450-3e8a-6db3-4ad7761ff4ca"},{"name":"leg","box_uv":true,"rescale":false,"locked":false,"light_emission":0,"render_order":"default","allow_mirror_modeling":true,"from":[-14,10,20],"to":[-5,21,33],"autouv":0,"color":2,"origin":[-6,12,34],"uv_offset":[199,24],"faces":{"north":{"uv":[212,37,221,48],"texture":0},"east":{"uv":[199,37,212,48],"texture":0},"south":{"uv":[234,37,243,48],"texture":0},"west":{"uv":[221,37,234,48],"texture":0},"up":{"uv":[221,37,212,24],"texture":0},"down":{"uv":[230,24,221,37],"texture":0}},"type":"cube","uuid":"b7a8c5da-82bc-c37a-d7be-04e8f8c7f2ba"},{"name":"headlight","box_uv":true,"rescale":false,"locked":false,"light_emission":0,"render_order":"default","allow_mirror_modeling":true,"from":[5,20,-11],"to":[8,23,-9],"autouv":0,"color":7,"origin":[6,20,-10],"uv_offset":[70,0],"faces":{"north":{"uv":[72,2,75,5],"texture":0},"east":{"uv":[70,2,72,5],"texture":0},"south":{"uv":[77,2,80,5],"texture":0},"west":{"uv":[75,2,77,5],"texture":0},"up":{"uv":[75,2,72,0],"texture":0},"down":{"uv":[78,0,75,2],"texture":0}},"type":"cube","uuid":"015cdbb1-3393-e476-cc80-497d6efa4322"},{"name":"headlight","box_uv":true,"rescale":false,"locked":false,"light_emission":0,"render_order":"default","allow_mirror_modeling":true,"from":[-8,20,-11],"to":[-5,23,-9],"autouv":0,"color":7,"origin":[-7,20,-10],"uv_offset":[70,5],"faces":{"north":{"uv":[72,7,75,10],"texture":0},"east":{"uv":[70,7,72,10],"texture":0},"south":{"uv":[77,7,80,10],"texture":0},"west":{"uv":[75,7,77,10],"texture":0},"up":{"uv":[75,7,72,5],"texture":0},"down":{"uv":[78,5,75,7],"texture":0}},"type":"cube","uuid":"14005ab5-f1a4-b406-e3e8-c2c77de3f637"},{"name":"headlight","box_uv":true,"rescale":false,"locked":false,"light_emission":0,"render_order":"default","allow_mirror_modeling":true,"from":[2,42,-8],"to":[5,45,-6],"autouv":0,"color":7,"origin":[3,42,-7],"uv_offset":[70,5],"faces":{"north":{"uv":[72,7,75,10],"texture":0},"east":{"uv":[70,7,72,10],"texture":0},"south":{"uv":[77,7,80,10],"texture":0},"west":{"uv":[75,7,77,10],"texture":0},"up":{"uv":[75,7,72,5],"texture":0},"down":{"uv":[78,5,75,7],"texture":0}},"type":"cube","uuid":"5fcac4f2-bf9b-77b9-d3fe-0e51adb5b4f7"},{"name":"headlight","box_uv":true,"rescale":false,"locked":false,"light_emission":0,"render_order":"default","allow_mirror_modeling":true,"from":[6,42,-8],"to":[9,45,-6],"autouv":0,"color":7,"origin":[7,42,-7],"uv_offset":[70,0],"faces":{"north":{"uv":[72,2,75,5],"texture":0},"east":{"uv":[70,2,72,5],"texture":0},"south":{"uv":[77,2,80,5],"texture":0},"west":{"uv":[75,2,77,5],"texture":0},"up":{"uv":[75,2,72,0],"texture":0},"down":{"uv":[78,0,75,2],"texture":0}},"type":"cube","uuid":"2c73e44f-1c91-d77f-6a4f-a80d717e9cbd"},{"name":"cube","box_uv":true,"rescale":false,"locked":false,"light_emission":0,"render_order":"default","allow_mirror_modeling":true,"from":[-8,23.6,10.1],"to":[7,28.6,15.1],"autouv":0,"color":7,"origin":[1,26.6,11.1],"uv_offset":[140,123],"faces":{"north":{"uv":[145,128,160,133],"texture":0},"east":{"uv":[140,128,145,133],"texture":0},"south":{"uv":[165,128,180,133],"texture":0},"west":{"uv":[160,128,165,133],"texture":0},"up":{"uv":[160,128,145,123],"texture":0},"down":{"uv":[175,123,160,128],"texture":0}},"type":"cube","uuid":"074a5973-c1b1-cf46-0634-7627ca7c38bc"}],"outliner":[{"name":"root","origin":[0,0,0],"color":0,"uuid":"514b90ff-4605-7406-ef71-75c69305c9d4","export":true,"mirror_uv":false,"isOpen":true,"locked":false,"visibility":true,"autouv":0,"selected":false,"children":[{"name":"base","origin":[0,22,0],"color":0,"uuid":"e5b07f56-68f3-ab08-dc53-e954c1a5d4d4","export":true,"mirror_uv":false,"isOpen":true,"locked":false,"visibility":true,"autouv":0,"selected":false,"children":["ecbfa3cf-448b-7558-b3df-99c345bbb9e2","51db3e3f-941d-a163-138b-940354b747c5",{"name":"Body","origin":[0,26.6,0.1],"color":0,"uuid":"e997d144-259f-c084-afec-71d628f74e44","export":true,"mirror_uv":false,"isOpen":true,"locked":false,"visibility":true,"autouv":0,"selected":false,"children":["2c73e44f-1c91-d77f-6a4f-a80d717e9cbd","5fcac4f2-bf9b-77b9-d3fe-0e51adb5b4f7",{"name":"Head","origin":[4,25,-11],"color":0,"uuid":"b1f278a9-008b-1267-0c2c-ae897dc873a8","export":true,"mirror_uv":false,"isOpen":true,"locked":false,"visibility":true,"autouv":0,"selected":false,"children":["5c456e12-bfd4-4a1e-e9c0-18662c0d6eca"]},"38e205f5-7da0-0e07-a1d2-cee48435acf7","18a0442e-ac0d-2ba5-7278-92865b6326dc","7e750d0b-499f-fbda-69b8-d38802f89bfa","faa924f5-be91-ab45-6398-19c35f0c6331","ce24f9d6-789b-4ef8-dbd8-f9df3b6a2e6d",{"name":"rocket","origin":[14,34.5,0],"color":0,"uuid":"01051101-03aa-b5ec-21e8-cb3be8f9f9c1","export":true,"mirror_uv":false,"isOpen":true,"locked":false,"visibility":true,"autouv":0,"selected":false,"children":["c796e69b-9886-7252-bb1e-5ccccced1c67"]},{"name":"flamethrower","origin":[-14.25,33.73463,-0.02724],"color":0,"uuid":"cd435f3d-825a-e33a-0fe3-ccaf16bc672a","export":true,"mirror_uv":false,"isOpen":true,"locked":false,"visibility":true,"autouv":0,"selected":false,"children":["ab09beae-cb19-1ad3-f574-463eb7a40186","d2aeaf8c-33b1-e950-3fd9-01db9be3cc55","2804b1d0-70d2-f51f-303e-07ea18a5f473","dcdb7038-230d-4c24-d311-48a5ee0938f3"]},"0dcb1d3c-1ed2-76a9-9e0d-15979e5cc46e","074a5973-c1b1-cf46-0634-7627ca7c38bc"]},"015cdbb1-3393-e476-cc80-497d6efa4322","14005ab5-f1a4-b406-e3e8-c2c77de3f637"]},{"name":"leg_FL","origin":[-9.5,13.5,-6.5],"rotation":[-9,29,-2],"color":0,"uuid":"3f32d854-7384-3d6a-eca8-d1eb13e387ed","export":true,"mirror_uv":false,"isOpen":true,"locked":false,"visibility":true,"autouv":0,"selected":false,"children":["e91e22e6-dd1c-5be1-ff03-b3ca89426ee7","8d98dbdd-30e3-df6c-6347-f0eaa042ae2f"]},{"name":"leg_FR","origin":[9.5,13.5,-6.5],"rotation":[-9,-29,2],"color":0,"uuid":"fb1128ec-3b6f-3075-483e-508c13085c24","export":true,"mirror_uv":false,"isOpen":true,"locked":false,"visibility":true,"autouv":0,"selected":false,"children":["2a055131-4940-38a2-e455-93ec71b3f1a9","89827b33-6902-67fa-b09c-4e351bb818fa"]},{"name":"leg_BL","origin":[-9.5,13.83333,6.83333],"rotation":[9,-29,-2],"color":0,"uuid":"4edb4056-fbbd-3038-f4cb-b27262858b3d","export":true,"mirror_uv":false,"isOpen":true,"locked":false,"visibility":true,"autouv":0,"selected":false,"children":["976e9083-9210-40cb-ef08-fac284f39296","b7a8c5da-82bc-c37a-d7be-04e8f8c7f2ba","04e9cb1e-65b4-1fa1-b868-a4eed1111aa7"]},{"name":"leg_BR","origin":[9.5,13.83333,6.16667],"rotation":[9,29,2],"color":0,"uuid":"e11d5a6f-8c6b-cbbc-0b01-7e5ac89bcbe6","export":true,"mirror_uv":false,"isOpen":true,"locked":false,"visibility":true,"autouv":0,"selected":false,"children":["faa3b117-7d2d-e54e-b77c-8b1d21711a20","5e050313-2d39-2c10-29b7-71c1a43982de","83ccd667-0450-3e8a-6db3-4ad7761ff4ca"]}]}],"textures":[{"path":"L:\\overdrive_that_matters\\src\\main\\resources\\assets\\overdrive_that_matters\\textures\\entity\\enforcer.png","name":"enforcer.png","folder":"block","namespace":"","id":"0","group":"","width":256,"height":256,"uv_width":256,"uv_height":256,"particle":false,"use_as_default":false,"layers_enabled":false,"sync_to_project":"","render_mode":"default","render_sides":"auto","pbr_channel":"color","frame_time":1,"frame_order_type":"loop","frame_order":"","frame_interpolate":false,"visible":true,"internal":true,"saved":true,"uuid":"09bca0d4-3d23-9475-2877-88d954c83ace","relative_path":"../main/resources/assets/overdrive_that_matters/textures/entity/enforcer.png","source":"data:image/png;base64,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"}],"animations":[{"uuid":"4aa48af6-3354-d0cf-0a74-11bfa885c91a","name":"charge","loop":"loop","override":false,"length":0.12,"snapping":25,"selected":true,"anim_time_update":"","blend_weight":"","start_delay":"","loop_delay":"","animators":{"514b90ff-4605-7406-ef71-75c69305c9d4":{"name":"root","type":"bone","keyframes":[{"channel":"position","data_points":[{"x":"0","y":"-1.1","z":"0"}],"uuid":"8685d823-bebc-4c99-cd89-2649290b07f1","time":0.12,"color":-1,"interpolation":"linear","easing":"linear","easingArgs":[]},{"channel":"position","data_points":[{"x":"0","y":"-1","z":"0"}],"uuid":"fbf3e22a-9bcb-fa8a-d42a-457446869532","time":0,"color":-1,"interpolation":"linear","easing":"linear","easingArgs":[]}]},"e997d144-259f-c084-afec-71d628f74e44":{"name":"Body","type":"bone","keyframes":[{"channel":"rotation","data_points":[{"x":"7.5","y":"0","z":"0"}],"uuid":"8f016955-0dbf-2085-d67e-bafce1116644","time":0,"color":-1,"interpolation":"linear","easing":"linear","easingArgs":[]}]},"3f32d854-7384-3d6a-eca8-d1eb13e387ed":{"name":"leg_FL","type":"bone","keyframes":[{"channel":"rotation","data_points":[{"x":"-0.0089483843","y":"24.7407963749","z":"-0.0341929576"}],"uuid":"f57e17fa-52fc-bdc7-ae2f-d69a041598c8","time":0,"color":-1,"interpolation":"linear","easing":"linear","easingArgs":[]},{"channel":"rotation","data_points":[{"x":"-0.8437910097","y":"24.7407963749","z":"-0.0341929576"}],"uuid":"c30c851e-cf1c-3bfe-17ad-2bc14cdc64e9","time":0.12,"color":-1,"interpolation":"linear","easing":"linear","easingArgs":[]}]},"fb1128ec-3b6f-3075-483e-508c13085c24":{"name":"leg_FR","type":"bone","keyframes":[{"channel":"rotation","data_points":[{"x":"-0.0451688841","y":"-24.7102066475","z":"-0.3574045982"}],"uuid":"7cf6dcf9-1f7a-fb78-ded0-7e252fe09b0b","time":0,"color":-1,"interpolation":"linear","easing":"linear","easingArgs":[]},{"channel":"rotation","data_points":[{"x":"-0.876517407","y":"-24.7156137397","z":"-0.3212922278"}],"uuid":"3b817039-7a7c-91c7-e727-3b6aed57148d","time":0.12,"color":-1,"interpolation":"linear","easing":"linear","easingArgs":[]}]},"e11d5a6f-8c6b-cbbc-0b01-7e5ac89bcbe6":{"name":"leg_BR","type":"bone","keyframes":[{"channel":"rotation","data_points":[{"x":"0.0089483843","y":"24.7407963749","z":"0.0341929576"}],"uuid":"c83d1f7f-0a1f-e430-28e9-b0130ffe9dd6","time":0,"color":-1,"interpolation":"linear","easing":"linear","easingArgs":[]},{"channel":"rotation","data_points":[{"x":"0.950615051","y":"24.7407963749","z":"0.0341929576"}],"uuid":"9d1ce2a1-33f0-662d-74ef-92c3b477915e","time":0.12,"color":-1,"interpolation":"linear","easing":"linear","easingArgs":[]}]},"4edb4056-fbbd-3038-f4cb-b27262858b3d":{"name":"leg_BL","type":"bone","keyframes":[{"channel":"rotation","data_points":[{"x":"0.0089483843","y":"-24.7407963749","z":"-0.0341929576"}],"uuid":"23970bfb-8236-66e8-c2e4-5c80195cd39a","time":0,"color":-1,"interpolation":"linear","easing":"linear","easingArgs":[]},{"channel":"rotation","data_points":[{"x":"0.950615051","y":"-24.7407963749","z":"-0.0341929576"}],"uuid":"758bba9c-cf7c-cadc-9b05-2ebdcfcdec35","time":0.12,"color":-1,"interpolation":"linear","easing":"linear","easingArgs":[]}]}}},{"uuid":"e8ba13f9-538b-5a86-af35-af51b7634ee6","name":"idle","loop":"loop","override":false,"length":0.12,"snapping":25,"selected":false,"anim_time_update":"","blend_weight":"","start_delay":"","loop_delay":"","animators":{"e997d144-259f-c084-afec-71d628f74e44":{"name":"Body","type":"bone","keyframes":[{"channel":"position","data_points":[{"x":"0","y":"-0.2","z":"0"}],"uuid":"f6cb4d65-41ca-cbec-b17b-fc3cd849df17","time":0.12,"color":-1,"interpolation":"linear","easing":"linear","easingArgs":[]},{"channel":"position","data_points":[{"x":"0","y":"0","z":"0"}],"uuid":"f2e49355-efa3-8100-c43d-71cd3e1d535f","time":0,"color":-1,"interpolation":"linear","easing":"linear","easingArgs":[]}]}}}]} \ No newline at end of file +{"meta":{"format_version":"4.10","model_format":"modded_entity","box_uv":true},"name":"enforcer2","model_identifier":"","modded_entity_entity_class":"","modded_entity_version":"1.17","modded_entity_flip_y":true,"visible_box":[1,1,0],"variable_placeholders":"","variable_placeholder_buttons":[],"timeline_setups":[],"unhandled_root_fields":{},"resolution":{"width":256,"height":256},"elements":[{"name":"cube","box_uv":true,"rescale":false,"locked":false,"light_emission":0,"render_order":"default","allow_mirror_modeling":true,"from":[-5,14,-10],"to":[5,28,10],"autouv":0,"color":9,"origin":[0,26,0],"uv_offset":[92,0],"faces":{"north":{"uv":[112,20,122,34],"texture":0},"east":{"uv":[92,20,112,34],"texture":0},"south":{"uv":[142,20,152,34],"texture":0},"west":{"uv":[122,20,142,34],"texture":0},"up":{"uv":[122,20,112,0],"texture":0},"down":{"uv":[132,0,122,20],"texture":0}},"type":"cube","uuid":"51db3e3f-941d-a163-138b-940354b747c5"},{"name":"cube","box_uv":true,"rescale":false,"locked":false,"light_emission":0,"render_order":"default","allow_mirror_modeling":true,"from":[-8,25,-7],"to":[8,30,7],"autouv":0,"color":2,"origin":[0,40,0],"uv_offset":[132,1],"faces":{"north":{"uv":[146,15,162,20],"texture":0},"east":{"uv":[132,15,146,20],"texture":0},"south":{"uv":[176,15,192,20],"texture":0},"west":{"uv":[162,15,176,20],"texture":0},"up":{"uv":[162,15,146,1],"texture":0},"down":{"uv":[178,1,162,15],"texture":0}},"type":"cube","uuid":"ecbfa3cf-448b-7558-b3df-99c345bbb9e2"},{"name":"body","box_uv":true,"rescale":false,"locked":false,"light_emission":0,"render_order":"default","allow_mirror_modeling":true,"from":[-12,32,-11],"to":[12,48,11],"autouv":0,"color":9,"origin":[0,47,0],"faces":{"north":{"uv":[22,22,46,38],"texture":0},"east":{"uv":[0,22,22,38],"texture":0},"south":{"uv":[68,22,92,38],"texture":0},"west":{"uv":[46,22,68,38],"texture":0},"up":{"uv":[46,22,22,0],"texture":0},"down":{"uv":[70,0,46,22],"texture":0}},"type":"cube","uuid":"18a0442e-ac0d-2ba5-7278-92865b6326dc"},{"name":"cube","box_uv":true,"rescale":false,"locked":false,"light_emission":0,"render_order":"default","allow_mirror_modeling":true,"from":[1,31,-12],"to":[8,34,-9],"autouv":0,"color":4,"origin":[4,31,-10],"faces":{"north":{"uv":[3,3,10,6],"texture":0},"east":{"uv":[0,3,3,6],"texture":0},"south":{"uv":[13,3,20,6],"texture":0},"west":{"uv":[10,3,13,6],"texture":0},"up":{"uv":[10,3,3,0],"texture":0},"down":{"uv":[17,0,10,3],"texture":0}},"type":"cube","uuid":"5c456e12-bfd4-4a1e-e9c0-18662c0d6eca"},{"name":"joint","box_uv":true,"rescale":false,"locked":false,"light_emission":0,"render_order":"default","allow_mirror_modeling":true,"from":[-14,34,-6],"to":[-12,46,6],"autouv":0,"color":6,"origin":[-13,40,0],"uv_offset":[192,49],"faces":{"north":{"uv":[204,61,206,73],"texture":0},"east":{"uv":[192,61,204,73],"texture":0},"south":{"uv":[218,61,220,73],"texture":0},"west":{"uv":[206,61,218,73],"texture":0},"up":{"uv":[206,61,204,49],"texture":0},"down":{"uv":[208,49,206,61],"texture":0}},"type":"cube","uuid":"faa924f5-be91-ab45-6398-19c35f0c6331"},{"name":"joint","box_uv":true,"rescale":false,"locked":false,"light_emission":0,"render_order":"default","allow_mirror_modeling":true,"from":[12,34,-6],"to":[14,46,6],"autouv":0,"color":6,"origin":[13,40,0],"uv_offset":[164,49],"faces":{"north":{"uv":[176,61,178,73],"texture":0},"east":{"uv":[164,61,176,73],"texture":0},"south":{"uv":[190,61,192,73],"texture":0},"west":{"uv":[178,61,190,73],"texture":0},"up":{"uv":[178,61,176,49],"texture":0},"down":{"uv":[180,49,178,61],"texture":0}},"type":"cube","uuid":"ce24f9d6-789b-4ef8-dbd8-f9df3b6a2e6d"},{"name":"rocket","box_uv":true,"rescale":false,"locked":false,"light_emission":0,"render_order":"default","allow_mirror_modeling":true,"from":[14,30,-14],"to":[27,51,14],"autouv":0,"color":9,"origin":[19,34,10],"uv_offset":[164,0],"faces":{"north":{"uv":[192,28,205,49],"texture":0},"east":{"uv":[164,28,192,49],"texture":0},"south":{"uv":[233,28,246,49],"texture":0},"west":{"uv":[205,28,233,49],"texture":0},"up":{"uv":[205,28,192,0],"texture":0},"down":{"uv":[218,0,205,28],"texture":0}},"type":"cube","uuid":"c796e69b-9886-7252-bb1e-5ccccced1c67"},{"name":"body","box_uv":true,"rescale":false,"locked":false,"light_emission":0,"render_order":"default","allow_mirror_modeling":true,"from":[-11,36,11],"to":[11,50,25],"autouv":0,"color":2,"origin":[0,52,22],"uv_offset":[92,34],"faces":{"north":{"uv":[106,48,128,62],"texture":0},"east":{"uv":[92,48,106,62],"texture":0},"south":{"uv":[142,48,164,62],"texture":0},"west":{"uv":[128,48,142,62],"texture":0},"up":{"uv":[128,48,106,34],"texture":0},"down":{"uv":[150,34,128,48],"texture":0}},"type":"cube","uuid":"38e205f5-7da0-0e07-a1d2-cee48435acf7"},{"name":"leg","box_uv":true,"rescale":false,"locked":false,"light_emission":0,"render_order":"default","allow_mirror_modeling":true,"from":[5.93895,16.79777,3.59716],"to":[12.93895,25.79777,16.59716],"autouv":0,"color":2,"origin":[11,18,16],"uv_offset":[1,100],"faces":{"north":{"uv":[14,113,21,122],"texture":0},"east":{"uv":[1,113,14,122],"texture":0},"south":{"uv":[34,113,41,122],"texture":0},"west":{"uv":[21,113,34,122],"texture":0},"up":{"uv":[21,113,14,100],"texture":0},"down":{"uv":[28,100,21,113],"texture":0}},"type":"cube","uuid":"faa3b117-7d2d-e54e-b77c-8b1d21711a20"},{"name":"leg","box_uv":true,"rescale":false,"locked":false,"light_emission":0,"render_order":"default","allow_mirror_modeling":true,"from":[5.93895,16.79777,-16.59716],"to":[12.93895,25.79777,-3.59716],"autouv":0,"color":2,"origin":[11,18,-3],"uv_offset":[1,76],"faces":{"north":{"uv":[14,89,21,98],"texture":0},"east":{"uv":[1,89,14,98],"texture":0},"south":{"uv":[34,89,41,98],"texture":0},"west":{"uv":[21,89,34,98],"texture":0},"up":{"uv":[21,89,14,76],"texture":0},"down":{"uv":[28,76,21,89],"texture":0}},"type":"cube","uuid":"89827b33-6902-67fa-b09c-4e351bb818fa"},{"name":"leg","box_uv":true,"rescale":false,"locked":false,"light_emission":0,"render_order":"default","allow_mirror_modeling":true,"from":[-12.93895,16.79777,3.59716],"to":[-5.93895,25.79777,16.59716],"autouv":0,"color":2,"origin":[-6,18,16],"uv_offset":[45,100],"faces":{"north":{"uv":[58,113,65,122],"texture":0},"east":{"uv":[45,113,58,122],"texture":0},"south":{"uv":[78,113,85,122],"texture":0},"west":{"uv":[65,113,78,122],"texture":0},"up":{"uv":[65,113,58,100],"texture":0},"down":{"uv":[72,100,65,113],"texture":0}},"type":"cube","uuid":"04e9cb1e-65b4-1fa1-b868-a4eed1111aa7"},{"name":"leg","box_uv":true,"rescale":false,"locked":false,"light_emission":0,"render_order":"default","allow_mirror_modeling":true,"from":[-12.93895,16.79777,-16.59716],"to":[-5.93895,25.79777,-3.59716],"autouv":0,"color":2,"origin":[-6,18,-3],"uv_offset":[45,76],"faces":{"north":{"uv":[58,89,65,98],"texture":0},"east":{"uv":[45,89,58,98],"texture":0},"south":{"uv":[78,89,85,98],"texture":0},"west":{"uv":[65,89,78,98],"texture":0},"up":{"uv":[65,89,58,76],"texture":0},"down":{"uv":[72,76,65,89],"texture":0}},"type":"cube","uuid":"8d98dbdd-30e3-df6c-6347-f0eaa042ae2f"},{"name":"cube","box_uv":true,"rescale":false,"locked":false,"light_emission":0,"render_order":"default","allow_mirror_modeling":true,"from":[-8,47,7],"to":[-8,66,9],"autouv":0,"color":2,"rotation":[10,0,0],"origin":[-8,47.5,8],"uv_offset":[80,-2],"faces":{"north":{"uv":[82,0,82,19],"texture":0},"east":{"uv":[80,0,82,19],"texture":0},"south":{"uv":[84,0,84,19],"texture":0},"west":{"uv":[82,0,84,19],"texture":0},"up":{"uv":[82,0,82,-2],"texture":0},"down":{"uv":[82,-2,82,0],"texture":0}},"type":"cube","uuid":"0dcb1d3c-1ed2-76a9-9e0d-15979e5cc46e"},{"name":"body","box_uv":true,"rescale":false,"locked":false,"light_emission":0,"render_order":"default","allow_mirror_modeling":true,"from":[-12,32,-11],"to":[12,48,11],"autouv":0,"color":9,"inflate":0.5,"origin":[0,47,0],"uv_offset":[0,38],"faces":{"north":{"uv":[22,60,46,76],"texture":0},"east":{"uv":[0,60,22,76],"texture":0},"south":{"uv":[68,60,92,76],"texture":0},"west":{"uv":[46,60,68,76],"texture":0},"up":{"uv":[46,60,22,38],"texture":0},"down":{"uv":[70,38,46,60],"texture":0}},"type":"cube","uuid":"7e750d0b-499f-fbda-69b8-d38802f89bfa"},{"name":"headlight","box_uv":true,"rescale":false,"locked":false,"light_emission":0,"render_order":"default","allow_mirror_modeling":true,"from":[4,24,-11],"to":[7,27,-9],"autouv":0,"color":7,"origin":[5,24,-10],"uv_offset":[70,0],"faces":{"north":{"uv":[72,2,75,5],"texture":0},"east":{"uv":[70,2,72,5],"texture":0},"south":{"uv":[77,2,80,5],"texture":0},"west":{"uv":[75,2,77,5],"texture":0},"up":{"uv":[75,2,72,0],"texture":0},"down":{"uv":[78,0,75,2],"texture":0}},"type":"cube","uuid":"015cdbb1-3393-e476-cc80-497d6efa4322"},{"name":"headlight","box_uv":true,"rescale":false,"locked":false,"light_emission":0,"render_order":"default","allow_mirror_modeling":true,"from":[-7,24,-11],"to":[-4,27,-9],"autouv":0,"color":7,"origin":[-6,24,-10],"uv_offset":[70,5],"faces":{"north":{"uv":[72,7,75,10],"texture":0},"east":{"uv":[70,7,72,10],"texture":0},"south":{"uv":[77,7,80,10],"texture":0},"west":{"uv":[75,7,77,10],"texture":0},"up":{"uv":[75,7,72,5],"texture":0},"down":{"uv":[78,5,75,7],"texture":0}},"type":"cube","uuid":"14005ab5-f1a4-b406-e3e8-c2c77de3f637"},{"name":"headlight","box_uv":true,"rescale":false,"locked":false,"light_emission":0,"render_order":"default","allow_mirror_modeling":true,"from":[2,48,-8],"to":[5,51,-6],"autouv":0,"color":7,"origin":[3,48,-7],"uv_offset":[70,5],"faces":{"north":{"uv":[72,7,75,10],"texture":0},"east":{"uv":[70,7,72,10],"texture":0},"south":{"uv":[77,7,80,10],"texture":0},"west":{"uv":[75,7,77,10],"texture":0},"up":{"uv":[75,7,72,5],"texture":0},"down":{"uv":[78,5,75,7],"texture":0}},"type":"cube","uuid":"5fcac4f2-bf9b-77b9-d3fe-0e51adb5b4f7"},{"name":"headlight","box_uv":true,"rescale":false,"locked":false,"light_emission":0,"render_order":"default","allow_mirror_modeling":true,"from":[6,48,-8],"to":[9,51,-6],"autouv":0,"color":7,"origin":[7,48,-7],"uv_offset":[70,0],"faces":{"north":{"uv":[72,2,75,5],"texture":0},"east":{"uv":[70,2,72,5],"texture":0},"south":{"uv":[77,2,80,5],"texture":0},"west":{"uv":[75,2,77,5],"texture":0},"up":{"uv":[75,2,72,0],"texture":0},"down":{"uv":[78,0,75,2],"texture":0}},"type":"cube","uuid":"2c73e44f-1c91-d77f-6a4f-a80d717e9cbd"},{"name":"cube","box_uv":true,"rescale":false,"locked":false,"light_emission":0,"render_order":"default","allow_mirror_modeling":true,"from":[-8,29.6,10.1],"to":[7,34.6,15.1],"autouv":0,"color":7,"origin":[1,32.6,11.1],"uv_offset":[92,62],"faces":{"north":{"uv":[97,67,112,72],"texture":0},"east":{"uv":[92,67,97,72],"texture":0},"south":{"uv":[117,67,132,72],"texture":0},"west":{"uv":[112,67,117,72],"texture":0},"up":{"uv":[112,67,97,62],"texture":0},"down":{"uv":[127,62,112,67],"texture":0}},"type":"cube","uuid":"074a5973-c1b1-cf46-0634-7627ca7c38bc"},{"name":"cube","box_uv":true,"rescale":false,"locked":false,"light_emission":0,"render_order":"default","allow_mirror_modeling":true,"from":[7.43895,32.27265,-32.22134],"to":[11.43895,35.27265,-16.22134],"autouv":0,"color":0,"origin":[9.5,41.73396,-18.85721],"uv_offset":[88,72],"faces":{"north":{"uv":[104,88,108,91],"texture":0},"east":{"uv":[88,88,104,91],"texture":0},"south":{"uv":[124,88,128,91],"texture":0},"west":{"uv":[108,88,124,91],"texture":0},"up":{"uv":[108,88,104,72],"texture":0},"down":{"uv":[112,72,108,88],"texture":0}},"type":"cube","uuid":"80f848b9-d363-4113-5e11-af36e8e93b2c"},{"name":"cube","box_uv":true,"rescale":false,"locked":false,"light_emission":0,"render_order":"default","allow_mirror_modeling":true,"from":[6.43895,29.27265,-33.22134],"to":[12.43895,38.27265,-27.22134],"autouv":0,"color":0,"origin":[9.5,37.73396,-27.85721],"uv_offset":[21,225],"faces":{"north":{"uv":[27,231,33,240],"texture":0},"east":{"uv":[21,231,27,240],"texture":0},"south":{"uv":[39,231,45,240],"texture":0},"west":{"uv":[33,231,39,240],"texture":0},"up":{"uv":[33,231,27,225],"texture":0},"down":{"uv":[39,225,33,231],"texture":0}},"type":"cube","uuid":"b14447a0-c0b0-eae8-3180-46fd39d98c6e"},{"name":"cube","box_uv":true,"rescale":false,"locked":false,"light_emission":0,"render_order":"default","allow_mirror_modeling":true,"from":[5.43895,35.27265,-33.22134],"to":[13.43895,42.27265,-14.22134],"autouv":0,"color":0,"origin":[9.5,43.73396,-18.85721],"uv_offset":[28,230],"faces":{"north":{"uv":[47,249,55,256],"texture":0},"east":{"uv":[28,249,47,256],"texture":0},"south":{"uv":[74,249,82,256],"texture":0},"west":{"uv":[55,249,74,256],"texture":0},"up":{"uv":[55,249,47,230],"texture":0},"down":{"uv":[63,230,55,249],"texture":0}},"type":"cube","uuid":"e17cf2b7-96ee-3417-8ef2-55a6dbb1192e"},{"name":"cube","box_uv":true,"rescale":false,"locked":false,"light_emission":0,"render_order":"default","allow_mirror_modeling":true,"from":[6.43895,28.66524,-47.8551],"to":[12.43895,40.66524,-35.8551],"autouv":0,"color":0,"rotation":[-45,0,0],"origin":[9.5,34.73396,-39.85721],"uv_offset":[220,232],"faces":{"north":{"uv":[232,244,238,256],"texture":0},"east":{"uv":[220,244,232,256],"texture":0},"south":{"uv":[250,244,256,256],"texture":0},"west":{"uv":[238,244,250,256],"texture":0},"up":{"uv":[238,244,232,232],"texture":0},"down":{"uv":[244,232,238,244],"texture":0}},"type":"cube","uuid":"bc3416c6-8e97-d80f-ed58-a3c7dcbf2fbe"},{"name":"cube","box_uv":true,"rescale":false,"locked":false,"light_emission":0,"render_order":"default","allow_mirror_modeling":true,"from":[12.43895,31.27265,-43.22134],"to":[14.43895,36.27265,-30.22134],"autouv":0,"color":0,"origin":[15.5,37.73396,-27.85721],"uv_offset":[0,124],"faces":{"north":{"uv":[13,137,15,142],"texture":0},"east":{"uv":[0,137,13,142],"texture":0},"south":{"uv":[28,137,30,142],"texture":0},"west":{"uv":[15,137,28,142],"texture":0},"up":{"uv":[15,137,13,124],"texture":0},"down":{"uv":[17,124,15,137],"texture":0}},"type":"cube","uuid":"665bded6-ea4f-8dfe-d4ed-18fed61aa4ba"},{"name":"cube","box_uv":true,"rescale":false,"locked":false,"light_emission":0,"render_order":"default","allow_mirror_modeling":true,"from":[4.43895,31.27265,-43.22134],"to":[6.43895,36.27265,-30.22134],"autouv":0,"color":0,"origin":[7.5,37.73396,-27.85721],"uv_offset":[0,142],"faces":{"north":{"uv":[13,155,15,160],"texture":0},"east":{"uv":[0,155,13,160],"texture":0},"south":{"uv":[28,155,30,160],"texture":0},"west":{"uv":[15,155,28,160],"texture":0},"up":{"uv":[15,155,13,142],"texture":0},"down":{"uv":[17,142,15,155],"texture":0}},"type":"cube","uuid":"8c342a2f-d08d-70fa-49ad-d632a8ce3812"},{"name":"cube","box_uv":true,"rescale":false,"locked":false,"light_emission":0,"render_order":"default","allow_mirror_modeling":true,"from":[6.43895,18.87314,-20.66172],"to":[12.43895,33.87314,-12.66172],"autouv":0,"color":4,"origin":[9.5,29.5,-14.5],"uv_offset":[0,233],"faces":{"north":{"uv":[8,241,14,256],"texture":0},"east":{"uv":[0,241,8,256],"texture":0},"south":{"uv":[22,241,28,256],"texture":0},"west":{"uv":[14,241,22,256],"texture":0},"up":{"uv":[14,241,8,233],"texture":0},"down":{"uv":[20,233,14,241],"texture":0}},"type":"cube","uuid":"ab5406e6-e46e-8fc0-18b7-7eb23ddf9dbf"},{"name":"cube","box_uv":true,"rescale":false,"locked":false,"light_emission":0,"render_order":"default","allow_mirror_modeling":true,"from":[-12.43895,18.57491,12.70522],"to":[-6.43895,33.57491,20.70522],"autouv":0,"color":4,"origin":[-9.5,29.25089,16.61557],"uv_offset":[0,202],"faces":{"north":{"uv":[8,210,14,225],"texture":0},"east":{"uv":[0,210,8,225],"texture":0},"south":{"uv":[22,210,28,225],"texture":0},"west":{"uv":[14,210,22,225],"texture":0},"up":{"uv":[14,210,8,202],"texture":0},"down":{"uv":[20,202,14,210],"texture":0}},"type":"cube","uuid":"5a4249d5-a140-66b4-f4fa-b306ad211bd4"},{"name":"cube","box_uv":true,"rescale":false,"locked":false,"light_emission":0,"render_order":"default","allow_mirror_modeling":true,"from":[-11.56105,32.02354,2.89423],"to":[-7.56105,35.02354,18.89423],"autouv":0,"color":0,"origin":[-9.5,41.48485,16.25836],"uv_offset":[128,72],"faces":{"north":{"uv":[144,88,148,91],"texture":0},"east":{"uv":[128,88,144,91],"texture":0},"south":{"uv":[164,88,168,91],"texture":0},"west":{"uv":[148,88,164,91],"texture":0},"up":{"uv":[148,88,144,72],"texture":0},"down":{"uv":[152,72,148,88],"texture":0}},"type":"cube","uuid":"76d8926d-c88f-8a59-80f4-0d65b543cd5f"},{"name":"cube","box_uv":true,"rescale":false,"locked":false,"light_emission":0,"render_order":"default","allow_mirror_modeling":true,"from":[-13.56105,35.02354,1.89423],"to":[-5.56105,42.02354,20.89423],"autouv":0,"color":0,"origin":[-9.5,43.48485,16.25836],"uv_offset":[28,199],"faces":{"north":{"uv":[47,218,55,225],"texture":0},"east":{"uv":[28,218,47,225],"texture":0},"south":{"uv":[74,218,82,225],"texture":0},"west":{"uv":[55,218,74,225],"texture":0},"up":{"uv":[55,218,47,199],"texture":0},"down":{"uv":[63,199,55,218],"texture":0}},"type":"cube","uuid":"5c11197a-9c13-9054-e276-d330562e4ae0"},{"name":"cube","box_uv":true,"rescale":false,"locked":false,"light_emission":0,"render_order":"default","allow_mirror_modeling":true,"from":[-12.56105,29.12354,1.89423],"to":[-6.56105,38.12354,7.89423],"autouv":0,"color":0,"origin":[-9.5,37.58485,7.25836],"uv_offset":[0,187],"faces":{"north":{"uv":[6,193,12,202],"texture":0},"east":{"uv":[0,193,6,202],"texture":0},"south":{"uv":[18,193,24,202],"texture":0},"west":{"uv":[12,193,18,202],"texture":0},"up":{"uv":[12,193,6,187],"texture":0},"down":{"uv":[18,187,12,193],"texture":0}},"type":"cube","uuid":"a6479087-e215-cdbe-4a42-22d1763249cf"},{"name":"cube","box_uv":true,"rescale":false,"locked":false,"light_emission":0,"render_order":"default","allow_mirror_modeling":true,"from":[-6.56105,31.02354,-8.10577],"to":[-4.56105,36.02354,4.89423],"autouv":0,"color":0,"origin":[-3.5,37.48485,7.25836],"uv_offset":[60,124],"faces":{"north":{"uv":[73,137,75,142],"texture":0},"east":{"uv":[60,137,73,142],"texture":0},"south":{"uv":[88,137,90,142],"texture":0},"west":{"uv":[75,137,88,142],"texture":0},"up":{"uv":[75,137,73,124],"texture":0},"down":{"uv":[77,124,75,137],"texture":0}},"type":"cube","uuid":"3044c8d9-15e3-583e-f87f-395e6e5b6355"},{"name":"cube","box_uv":true,"rescale":false,"locked":false,"light_emission":0,"render_order":"default","allow_mirror_modeling":true,"from":[-14.56105,31.12354,-8.10577],"to":[-12.56105,36.12354,4.89423],"autouv":0,"color":0,"origin":[-11.5,37.58485,7.25836],"uv_offset":[60,142],"faces":{"north":{"uv":[73,155,75,160],"texture":0},"east":{"uv":[60,155,73,160],"texture":0},"south":{"uv":[88,155,90,160],"texture":0},"west":{"uv":[75,155,88,160],"texture":0},"up":{"uv":[75,155,73,142],"texture":0},"down":{"uv":[77,142,75,155],"texture":0}},"type":"cube","uuid":"29dda652-ba32-8826-0cea-34550b44b480"},{"name":"cube","box_uv":true,"rescale":false,"locked":false,"light_emission":0,"render_order":"default","allow_mirror_modeling":true,"from":[-12.56105,28.41613,-11.73953],"to":[-6.56105,40.41613,0.26047],"autouv":0,"color":0,"rotation":[-45,0,0],"origin":[-9.5,34.48485,-3.74164],"uv_offset":[184,208],"faces":{"north":{"uv":[196,220,202,232],"texture":0},"east":{"uv":[184,220,196,232],"texture":0},"south":{"uv":[214,220,220,232],"texture":0},"west":{"uv":[202,220,214,232],"texture":0},"up":{"uv":[202,220,196,208],"texture":0},"down":{"uv":[208,208,202,220],"texture":0}},"type":"cube","uuid":"6b8b9d1d-1717-ff73-394b-c558b75ef93d"},{"name":"cube","box_uv":true,"rescale":false,"locked":false,"light_emission":0,"render_order":"default","allow_mirror_modeling":true,"from":[-12.43895,18.87314,-20.66172],"to":[-6.43895,33.87314,-12.66172],"autouv":0,"color":4,"origin":[-9.5,29.5,-14.5],"uv_offset":[82,233],"faces":{"north":{"uv":[90,241,96,256],"texture":0},"east":{"uv":[82,241,90,256],"texture":0},"south":{"uv":[104,241,110,256],"texture":0},"west":{"uv":[96,241,104,256],"texture":0},"up":{"uv":[96,241,90,233],"texture":0},"down":{"uv":[102,233,96,241],"texture":0}},"type":"cube","uuid":"63a70bb5-3f9b-55c6-cc6b-772c205edbd6"},{"name":"cube","box_uv":true,"rescale":false,"locked":false,"light_emission":0,"render_order":"default","allow_mirror_modeling":true,"from":[-11.43895,32.27265,-32.22134],"to":[-7.43895,35.27265,-16.22134],"autouv":0,"color":0,"origin":[-9.5,41.73396,-18.85721],"uv_offset":[88,91],"faces":{"north":{"uv":[104,107,108,110],"texture":0},"east":{"uv":[88,107,104,110],"texture":0},"south":{"uv":[124,107,128,110],"texture":0},"west":{"uv":[108,107,124,110],"texture":0},"up":{"uv":[108,107,104,91],"texture":0},"down":{"uv":[112,91,108,107],"texture":0}},"type":"cube","uuid":"6e944130-2621-eb49-a1c4-560bb8d7f43a"},{"name":"cube","box_uv":true,"rescale":false,"locked":false,"light_emission":0,"render_order":"default","allow_mirror_modeling":true,"from":[-13.43895,35.27265,-33.22134],"to":[-5.43895,42.27265,-14.22134],"autouv":0,"color":0,"origin":[-9.5,43.73396,-18.85721],"uv_offset":[110,230],"faces":{"north":{"uv":[129,249,137,256],"texture":0},"east":{"uv":[110,249,129,256],"texture":0},"south":{"uv":[156,249,164,256],"texture":0},"west":{"uv":[137,249,156,256],"texture":0},"up":{"uv":[137,249,129,230],"texture":0},"down":{"uv":[145,230,137,249],"texture":0}},"type":"cube","uuid":"6c8a07b7-cd18-d22d-7dd2-cb088f5825a7"},{"name":"cube","box_uv":true,"rescale":false,"locked":false,"light_emission":0,"render_order":"default","allow_mirror_modeling":true,"from":[-12.43895,29.27265,-33.22134],"to":[-6.43895,38.27265,-27.22134],"autouv":0,"color":0,"origin":[-9.5,37.73396,-27.85721],"uv_offset":[103,225],"faces":{"north":{"uv":[109,231,115,240],"texture":0},"east":{"uv":[103,231,109,240],"texture":0},"south":{"uv":[121,231,127,240],"texture":0},"west":{"uv":[115,231,121,240],"texture":0},"up":{"uv":[115,231,109,225],"texture":0},"down":{"uv":[121,225,115,231],"texture":0}},"type":"cube","uuid":"14d28b33-fd81-4c2c-7c97-66ce33128bca"},{"name":"cube","box_uv":true,"rescale":false,"locked":false,"light_emission":0,"render_order":"default","allow_mirror_modeling":true,"from":[-6.43895,31.27265,-43.22134],"to":[-4.43895,36.27265,-30.22134],"autouv":0,"color":0,"origin":[-3.5,37.73396,-27.85721],"uv_offset":[30,124],"faces":{"north":{"uv":[43,137,45,142],"texture":0},"east":{"uv":[30,137,43,142],"texture":0},"south":{"uv":[58,137,60,142],"texture":0},"west":{"uv":[45,137,58,142],"texture":0},"up":{"uv":[45,137,43,124],"texture":0},"down":{"uv":[47,124,45,137],"texture":0}},"type":"cube","uuid":"7abd02a1-1f45-2836-a5bb-51d9a40fb36e"},{"name":"cube","box_uv":true,"rescale":false,"locked":false,"light_emission":0,"render_order":"default","allow_mirror_modeling":true,"from":[-14.43895,30.27265,-43.22134],"to":[-12.43895,35.27265,-30.22134],"autouv":0,"color":0,"origin":[-11.5,36.73396,-27.85721],"uv_offset":[30,142],"faces":{"north":{"uv":[43,155,45,160],"texture":0},"east":{"uv":[30,155,43,160],"texture":0},"south":{"uv":[58,155,60,160],"texture":0},"west":{"uv":[45,155,58,160],"texture":0},"up":{"uv":[45,155,43,142],"texture":0},"down":{"uv":[47,142,45,155],"texture":0}},"type":"cube","uuid":"a8d9f9b4-2bfb-7210-837e-9b459de502b5"},{"name":"cube","box_uv":true,"rescale":false,"locked":false,"light_emission":0,"render_order":"default","allow_mirror_modeling":true,"from":[-12.43895,28.66524,-47.8551],"to":[-6.43895,40.66524,-35.8551],"autouv":0,"color":0,"rotation":[-45,0,0],"origin":[-9.5,34.73396,-39.85721],"uv_offset":[184,232],"faces":{"north":{"uv":[196,244,202,256],"texture":0},"east":{"uv":[184,244,196,256],"texture":0},"south":{"uv":[214,244,220,256],"texture":0},"west":{"uv":[202,244,214,256],"texture":0},"up":{"uv":[202,244,196,232],"texture":0},"down":{"uv":[208,232,202,244],"texture":0}},"type":"cube","uuid":"fab285d5-7c20-f262-eedc-92911a0b9c95"},{"name":"cube","box_uv":true,"rescale":false,"locked":false,"light_emission":0,"render_order":"default","allow_mirror_modeling":true,"from":[6.43895,18.57491,12.70522],"to":[12.43895,33.57491,20.70522],"autouv":0,"color":4,"origin":[9.5,29.25089,16.61557],"uv_offset":[82,202],"faces":{"north":{"uv":[90,210,96,225],"texture":0},"east":{"uv":[82,210,90,225],"texture":0},"south":{"uv":[104,210,110,225],"texture":0},"west":{"uv":[96,210,104,225],"texture":0},"up":{"uv":[96,210,90,202],"texture":0},"down":{"uv":[102,202,96,210],"texture":0}},"type":"cube","uuid":"52957efe-ebdc-0936-bdaa-7f12ec22246f"},{"name":"cube","box_uv":true,"rescale":false,"locked":false,"light_emission":0,"render_order":"default","allow_mirror_modeling":true,"from":[7.56105,32.02354,2.89423],"to":[11.56105,35.02354,18.89423],"autouv":0,"color":0,"origin":[9.5,41.48485,16.25836],"uv_offset":[128,91],"faces":{"north":{"uv":[144,107,148,110],"texture":0},"east":{"uv":[128,107,144,110],"texture":0},"south":{"uv":[164,107,168,110],"texture":0},"west":{"uv":[148,107,164,110],"texture":0},"up":{"uv":[148,107,144,91],"texture":0},"down":{"uv":[152,91,148,107],"texture":0}},"type":"cube","uuid":"e41a77e8-13a8-b6cf-4860-8fb32d43af69"},{"name":"cube","box_uv":true,"rescale":false,"locked":false,"light_emission":0,"render_order":"default","allow_mirror_modeling":true,"from":[5.56105,35.02354,1.89423],"to":[13.56105,42.02354,20.89423],"autouv":0,"color":0,"origin":[9.5,43.48485,16.25836],"uv_offset":[110,199],"faces":{"north":{"uv":[129,218,137,225],"texture":0},"east":{"uv":[110,218,129,225],"texture":0},"south":{"uv":[156,218,164,225],"texture":0},"west":{"uv":[137,218,156,225],"texture":0},"up":{"uv":[137,218,129,199],"texture":0},"down":{"uv":[145,199,137,218],"texture":0}},"type":"cube","uuid":"0c99df44-4c6a-57a2-bf6d-1496a1de4bad"},{"name":"cube","box_uv":true,"rescale":false,"locked":false,"light_emission":0,"render_order":"default","allow_mirror_modeling":true,"from":[6.56105,29.02354,1.89423],"to":[12.56105,38.02354,7.89423],"autouv":0,"color":0,"origin":[9.5,37.48485,7.25836],"uv_offset":[83,187],"faces":{"north":{"uv":[89,193,95,202],"texture":0},"east":{"uv":[83,193,89,202],"texture":0},"south":{"uv":[101,193,107,202],"texture":0},"west":{"uv":[95,193,101,202],"texture":0},"up":{"uv":[95,193,89,187],"texture":0},"down":{"uv":[101,187,95,193],"texture":0}},"type":"cube","uuid":"44dbff98-6b9b-6428-e8c2-f2bd4f987904"},{"name":"cube","box_uv":true,"rescale":false,"locked":false,"light_emission":0,"render_order":"default","allow_mirror_modeling":true,"from":[12.56105,31.02354,-8.10577],"to":[14.56105,36.02354,4.89423],"autouv":0,"color":0,"origin":[15.5,37.48485,7.25836],"uv_offset":[90,124],"faces":{"north":{"uv":[103,137,105,142],"texture":0},"east":{"uv":[90,137,103,142],"texture":0},"south":{"uv":[118,137,120,142],"texture":0},"west":{"uv":[105,137,118,142],"texture":0},"up":{"uv":[105,137,103,124],"texture":0},"down":{"uv":[107,124,105,137],"texture":0}},"type":"cube","uuid":"42a7307b-8a2e-cb7e-353d-59c7997f0f1f"},{"name":"cube","box_uv":true,"rescale":false,"locked":false,"light_emission":0,"render_order":"default","allow_mirror_modeling":true,"from":[4.56105,31.02354,-8.10577],"to":[6.56105,36.02354,4.89423],"autouv":0,"color":0,"origin":[7.5,37.48485,7.25836],"uv_offset":[90,142],"faces":{"north":{"uv":[103,155,105,160],"texture":0},"east":{"uv":[90,155,103,160],"texture":0},"south":{"uv":[118,155,120,160],"texture":0},"west":{"uv":[105,155,118,160],"texture":0},"up":{"uv":[105,155,103,142],"texture":0},"down":{"uv":[107,142,105,155],"texture":0}},"type":"cube","uuid":"3ba2b425-d987-28c6-41c4-115ef61a2df0"},{"name":"cube","box_uv":true,"rescale":false,"locked":false,"light_emission":0,"render_order":"default","allow_mirror_modeling":true,"from":[6.56105,28.41613,-12.73953],"to":[12.56105,40.41613,-0.73953],"autouv":0,"color":0,"rotation":[-45,0,0],"origin":[9.5,34.48485,-4.74164],"uv_offset":[220,208],"faces":{"north":{"uv":[232,220,238,232],"texture":0},"east":{"uv":[220,220,232,232],"texture":0},"south":{"uv":[250,220,256,232],"texture":0},"west":{"uv":[238,220,250,232],"texture":0},"up":{"uv":[238,220,232,208],"texture":0},"down":{"uv":[244,208,238,220],"texture":0}},"type":"cube","uuid":"3458ba7e-bc83-a52c-cb5f-0673f0260ed3"},{"name":"thruster","box_uv":true,"rescale":false,"locked":false,"light_emission":0,"render_order":"default","allow_mirror_modeling":true,"from":[-13,34,0],"to":[-6,45,13],"autouv":0,"color":2,"rotation":[42.5,0,0],"origin":[-6,36,14],"uv_offset":[0,160],"faces":{"north":{"uv":[13,173,20,184],"texture":0},"east":{"uv":[0,173,13,184],"texture":0},"south":{"uv":[33,173,40,184],"texture":0},"west":{"uv":[20,173,33,184],"texture":0},"up":{"uv":[20,173,13,160],"texture":0},"down":{"uv":[27,160,20,173],"texture":0}},"type":"cube","uuid":"a0007412-0dda-7d2c-9d08-3334e42d3391"},{"name":"thruster","box_uv":true,"rescale":false,"locked":false,"light_emission":0,"render_order":"default","allow_mirror_modeling":true,"from":[6,34,0],"to":[13,45,13],"autouv":0,"color":2,"rotation":[42.5,0,0],"origin":[13,36,14],"uv_offset":[40,160],"faces":{"north":{"uv":[53,173,60,184],"texture":0},"east":{"uv":[40,173,53,184],"texture":0},"south":{"uv":[73,173,80,184],"texture":0},"west":{"uv":[60,173,73,184],"texture":0},"up":{"uv":[60,173,53,160],"texture":0},"down":{"uv":[67,160,60,173],"texture":0}},"type":"cube","uuid":"3fa1dfef-9b30-e927-e5c1-d355860ecf28"},{"name":"cube","box_uv":true,"rescale":false,"locked":false,"light_emission":0,"render_order":"default","allow_mirror_modeling":true,"from":[-6,30,-6],"to":[6,33,6],"autouv":0,"color":1,"origin":[0,30,0],"uv_offset":[152,73],"faces":{"north":{"uv":[164,85,176,88],"texture":0},"east":{"uv":[152,85,164,88],"texture":0},"south":{"uv":[188,85,200,88],"texture":0},"west":{"uv":[176,85,188,88],"texture":0},"up":{"uv":[176,85,164,73],"texture":0},"down":{"uv":[188,73,176,85],"texture":0}},"type":"cube","uuid":"b0503467-ebb6-0dce-17ce-e94f35a5bd2f"},{"name":"cube","box_uv":true,"rescale":false,"locked":false,"light_emission":0,"render_order":"default","allow_mirror_modeling":true,"from":[5.93895,28.37314,-29.66172],"to":[12.93895,38.37314,-24.66172],"autouv":0,"color":4,"rotation":[112.5,0,0],"origin":[9,40,-29.5],"uv_offset":[24,184],"faces":{"north":{"uv":[29,189,36,199],"texture":0},"east":{"uv":[24,189,29,199],"texture":0},"south":{"uv":[41,189,48,199],"texture":0},"west":{"uv":[36,189,41,199],"texture":0},"up":{"uv":[36,189,29,184],"texture":0},"down":{"uv":[43,184,36,189],"texture":0}},"type":"cube","uuid":"31eee6ee-21d2-f0f1-5099-27aaf66b2c04"},{"name":"cube","box_uv":true,"rescale":false,"locked":false,"light_emission":0,"render_order":"default","allow_mirror_modeling":true,"from":[-13.06105,28.37314,-8.66172],"to":[-6.06105,38.37314,-3.66172],"autouv":0,"color":4,"rotation":[-67.5,0,0],"origin":[-10,40,-8.5],"uv_offset":[48,184],"faces":{"north":{"uv":[53,189,60,199],"texture":0},"east":{"uv":[48,189,53,199],"texture":0},"south":{"uv":[65,189,72,199],"texture":0},"west":{"uv":[60,189,65,199],"texture":0},"up":{"uv":[60,189,53,184],"texture":0},"down":{"uv":[67,184,60,189],"texture":0}},"type":"cube","uuid":"87de2b1b-d447-594d-fa88-353cc78c9624"},{"name":"cube","box_uv":true,"rescale":false,"locked":false,"light_emission":0,"render_order":"default","allow_mirror_modeling":true,"from":[5.93895,28.37314,-8.66172],"to":[12.93895,38.37314,-3.66172],"autouv":0,"color":4,"rotation":[-67.5,0,0],"origin":[9,40,-8.5],"uv_offset":[48,184],"faces":{"north":{"uv":[53,189,60,199],"texture":0},"east":{"uv":[48,189,53,199],"texture":0},"south":{"uv":[65,189,72,199],"texture":0},"west":{"uv":[60,189,65,199],"texture":0},"up":{"uv":[60,189,53,184],"texture":0},"down":{"uv":[67,184,60,189],"texture":0}},"type":"cube","uuid":"d94b390d-c966-2bc6-52d9-eec003d07a93"},{"name":"cube","box_uv":true,"rescale":false,"locked":false,"light_emission":0,"render_order":"default","allow_mirror_modeling":true,"from":[-13.06105,28.37314,-29.66172],"to":[-6.06105,38.37314,-24.66172],"autouv":0,"color":4,"rotation":[112.5,0,0],"origin":[-10,40,-29.5],"uv_offset":[24,184],"faces":{"north":{"uv":[29,189,36,199],"texture":0},"east":{"uv":[24,189,29,199],"texture":0},"south":{"uv":[41,189,48,199],"texture":0},"west":{"uv":[36,189,41,199],"texture":0},"up":{"uv":[36,189,29,184],"texture":0},"down":{"uv":[43,184,36,189],"texture":0}},"type":"cube","uuid":"fc8067ad-8add-c75c-7eee-85f5240e4de6"},{"name":"cube","box_uv":true,"rescale":false,"locked":false,"light_emission":0,"render_order":"default","allow_mirror_modeling":true,"from":[-23,32.1,-6.9],"to":[-16,46.1,8.1],"autouv":0,"color":2,"origin":[-17,38.1,0.1],"uv_offset":[185,73],"faces":{"north":{"uv":[200,88,207,102],"texture":0},"east":{"uv":[185,88,200,102],"texture":0},"south":{"uv":[222,88,229,102],"texture":0},"west":{"uv":[207,88,222,102],"texture":0},"up":{"uv":[207,88,200,73],"texture":0},"down":{"uv":[214,73,207,88],"texture":0}},"type":"cube","uuid":"36b7ea26-0bcb-d4f4-6410-25206d85b20c"},{"name":"cube","box_uv":true,"rescale":false,"locked":false,"light_emission":0,"render_order":"default","allow_mirror_modeling":true,"from":[-22.5,30.1,-0.9],"to":[-16.5,36.1,12.1],"autouv":0,"color":2,"origin":[-17.5,28.1,11.1],"uv_offset":[218,170],"faces":{"north":{"uv":[231,183,237,189],"texture":0},"east":{"uv":[218,183,231,189],"texture":0},"south":{"uv":[250,183,256,189],"texture":0},"west":{"uv":[237,183,250,189],"texture":0},"up":{"uv":[237,183,231,170],"texture":0},"down":{"uv":[243,170,237,183],"texture":0}},"type":"cube","uuid":"3bdd1b36-0f8b-7ec1-ed6f-ce62db781576"},{"name":"cube","box_uv":true,"rescale":false,"locked":false,"light_emission":0,"render_order":"default","allow_mirror_modeling":true,"from":[-21.5,40.1,-19.9],"to":[-17.5,46.1,-6.9],"autouv":0,"color":2,"origin":[-17.5,38.1,-7.9],"uv_offset":[184,170],"faces":{"north":{"uv":[197,183,201,189],"texture":0},"east":{"uv":[184,183,197,189],"texture":0},"south":{"uv":[214,183,218,189],"texture":0},"west":{"uv":[201,183,214,189],"texture":0},"up":{"uv":[201,183,197,170],"texture":0},"down":{"uv":[205,170,201,183],"texture":0}},"type":"cube","uuid":"70fe1a31-a992-23d4-716e-0899927878e4"},{"name":"cube","box_uv":true,"rescale":false,"locked":false,"light_emission":0,"render_order":"default","allow_mirror_modeling":true,"from":[-21.5,32.1,-19.9],"to":[-17.5,38.1,-6.9],"autouv":0,"color":2,"origin":[-17.5,30.1,-7.9],"uv_offset":[184,189],"faces":{"north":{"uv":[197,202,201,208],"texture":0},"east":{"uv":[184,202,197,208],"texture":0},"south":{"uv":[214,202,218,208],"texture":0},"west":{"uv":[201,202,214,208],"texture":0},"up":{"uv":[201,202,197,189],"texture":0},"down":{"uv":[205,189,201,202],"texture":0}},"type":"cube","uuid":"8c4c4252-75e1-33ae-4adf-599ff2285c71"},{"name":"cube","box_uv":true,"rescale":false,"locked":false,"light_emission":0,"render_order":"default","allow_mirror_modeling":true,"from":[-22.5,36.1,-16.9],"to":[-16.5,42.1,-5.9],"autouv":0,"color":2,"origin":[-17.5,34.1,-6.9],"uv_offset":[220,56],"faces":{"north":{"uv":[231,67,237,73],"texture":0},"east":{"uv":[220,67,231,73],"texture":0},"south":{"uv":[248,67,254,73],"texture":0},"west":{"uv":[237,67,248,73],"texture":0},"up":{"uv":[237,67,231,56],"texture":0},"down":{"uv":[243,56,237,67],"texture":0}},"type":"cube","uuid":"4d6f61df-cbdd-b63e-2bfa-180ce0e75eb7"},{"name":"cube","box_uv":true,"rescale":false,"locked":false,"light_emission":0,"render_order":"default","allow_mirror_modeling":true,"from":[-22.5,42.1,-0.9],"to":[-16.5,48.1,12.1],"autouv":0,"color":2,"origin":[-17.5,40.1,11.1],"uv_offset":[218,189],"faces":{"north":{"uv":[231,202,237,208],"texture":0},"east":{"uv":[218,202,231,208],"texture":0},"south":{"uv":[250,202,256,208],"texture":0},"west":{"uv":[237,202,250,208],"texture":0},"up":{"uv":[237,202,231,189],"texture":0},"down":{"uv":[243,189,237,202],"texture":0}},"type":"cube","uuid":"75b96b72-823c-7108-8493-84e69e304e85"},{"name":"cube","box_uv":true,"rescale":false,"locked":false,"light_emission":0,"render_order":"default","allow_mirror_modeling":true,"from":[-24,31.1,-5.9],"to":[-15,47.1,7.1],"autouv":0,"color":2,"inflate":-0.6,"origin":[-17,38.1,0.1],"uv_offset":[187,102],"faces":{"north":{"uv":[200,115,209,131],"texture":0},"east":{"uv":[187,115,200,131],"texture":0},"south":{"uv":[222,115,231,131],"texture":0},"west":{"uv":[209,115,222,131],"texture":0},"up":{"uv":[209,115,200,102],"texture":0},"down":{"uv":[218,102,209,115],"texture":0}},"type":"cube","uuid":"898fd39d-1c7a-5a4f-365f-1538007a50f5"},{"name":"cube","box_uv":true,"rescale":false,"locked":false,"light_emission":0,"render_order":"default","allow_mirror_modeling":true,"from":[-18,35.1,-4.9],"to":[-8,45.1,5.1],"autouv":0,"color":6,"origin":[-9,35.1,4.1],"uv_offset":[80,160],"faces":{"north":{"uv":[90,170,100,180],"texture":0},"east":{"uv":[80,170,90,180],"texture":0},"south":{"uv":[110,170,120,180],"texture":0},"west":{"uv":[100,170,110,180],"texture":0},"up":{"uv":[100,170,90,160],"texture":0},"down":{"uv":[110,160,100,170],"texture":0}},"type":"cube","uuid":"1ccfe80d-e208-0222-cdb4-879fda329049"}],"outliner":[{"name":"root","origin":[0,6,0],"color":0,"uuid":"514b90ff-4605-7406-ef71-75c69305c9d4","export":true,"mirror_uv":false,"isOpen":true,"locked":false,"visibility":true,"autouv":0,"selected":false,"children":[{"name":"base","origin":[0,28,0],"color":0,"uuid":"e5b07f56-68f3-ab08-dc53-e954c1a5d4d4","export":true,"mirror_uv":false,"isOpen":true,"locked":false,"visibility":true,"autouv":0,"selected":false,"children":["ecbfa3cf-448b-7558-b3df-99c345bbb9e2","51db3e3f-941d-a163-138b-940354b747c5",{"name":"Body","origin":[0,34.6,0.1],"color":0,"uuid":"e997d144-259f-c084-afec-71d628f74e44","export":true,"mirror_uv":false,"isOpen":true,"locked":false,"visibility":true,"autouv":0,"selected":false,"children":["2c73e44f-1c91-d77f-6a4f-a80d717e9cbd","5fcac4f2-bf9b-77b9-d3fe-0e51adb5b4f7",{"name":"Head","origin":[4,33,-11],"color":0,"uuid":"b1f278a9-008b-1267-0c2c-ae897dc873a8","export":true,"mirror_uv":false,"isOpen":false,"locked":false,"visibility":true,"autouv":0,"selected":false,"children":["5c456e12-bfd4-4a1e-e9c0-18662c0d6eca"]},"38e205f5-7da0-0e07-a1d2-cee48435acf7","18a0442e-ac0d-2ba5-7278-92865b6326dc","7e750d0b-499f-fbda-69b8-d38802f89bfa","faa924f5-be91-ab45-6398-19c35f0c6331","ce24f9d6-789b-4ef8-dbd8-f9df3b6a2e6d",{"name":"rocket","origin":[14,42.5,0],"color":0,"uuid":"01051101-03aa-b5ec-21e8-cb3be8f9f9c1","export":true,"mirror_uv":false,"isOpen":false,"locked":false,"visibility":true,"autouv":0,"selected":false,"children":["c796e69b-9886-7252-bb1e-5ccccced1c67"]},"0dcb1d3c-1ed2-76a9-9e0d-15979e5cc46e","074a5973-c1b1-cf46-0634-7627ca7c38bc",{"name":"gun","origin":[-14,40.1,0.1],"color":0,"uuid":"cf86a4c4-770b-b3d8-7e12-362b88ecfb16","export":true,"mirror_uv":false,"isOpen":true,"locked":false,"visibility":true,"autouv":0,"selected":false,"children":["36b7ea26-0bcb-d4f4-6410-25206d85b20c","898fd39d-1c7a-5a4f-365f-1538007a50f5","3bdd1b36-0f8b-7ec1-ed6f-ce62db781576","75b96b72-823c-7108-8493-84e69e304e85","70fe1a31-a992-23d4-716e-0899927878e4","4d6f61df-cbdd-b63e-2bfa-180ce0e75eb7","8c4c4252-75e1-33ae-4adf-599ff2285c71","1ccfe80d-e208-0222-cdb4-879fda329049"]}]},"015cdbb1-3393-e476-cc80-497d6efa4322","14005ab5-f1a4-b406-e3e8-c2c77de3f637","b0503467-ebb6-0dce-17ce-e94f35a5bd2f"]},{"name":"leg_FL","origin":[-9.5,21.5,-5.5],"rotation":[-54,29,-2],"color":0,"uuid":"3f32d854-7384-3d6a-eca8-d1eb13e387ed","export":true,"mirror_uv":false,"isOpen":true,"locked":false,"visibility":true,"autouv":0,"selected":false,"children":[{"name":"joint0_FL","origin":[-9.5,24.5,-13.5],"rotation":[17.5,0,0],"color":0,"uuid":"0cb3812e-1980-a834-143d-5c4c8ba0ea7c","export":true,"mirror_uv":false,"isOpen":true,"locked":false,"visibility":true,"autouv":0,"selected":false,"children":["63a70bb5-3f9b-55c6-cc6b-772c205edbd6",{"name":"joint1_FL","origin":[-9.5,33.5,-17.5],"rotation":[-7.5,0,0],"color":0,"uuid":"ebb2fe99-b1a6-5a26-5954-9c27a8c6e586","export":true,"mirror_uv":false,"isOpen":true,"locked":false,"visibility":true,"autouv":0,"selected":false,"children":["6e944130-2621-eb49-a1c4-560bb8d7f43a","6c8a07b7-cd18-d22d-7dd2-cb088f5825a7","14d28b33-fd81-4c2c-7c97-66ce33128bca","7abd02a1-1f45-2836-a5bb-51d9a40fb36e","a8d9f9b4-2bfb-7210-837e-9b459de502b5","fc8067ad-8add-c75c-7eee-85f5240e4de6",{"name":"wheelFL","origin":[-9.43895,33.27265,-41.22134],"color":0,"uuid":"4812de02-0911-93ef-38b9-54e3b5558ec1","export":true,"mirror_uv":false,"isOpen":true,"locked":false,"visibility":true,"autouv":0,"selected":false,"children":["fab285d5-7c20-f262-eedc-92911a0b9c95"]}]}]},"8d98dbdd-30e3-df6c-6347-f0eaa042ae2f"]},{"name":"leg_FR","origin":[9.5,21.5,-5.5],"rotation":[-54,-29,2],"color":0,"uuid":"fb1128ec-3b6f-3075-483e-508c13085c24","export":true,"mirror_uv":false,"isOpen":true,"locked":false,"visibility":true,"autouv":0,"selected":false,"children":["89827b33-6902-67fa-b09c-4e351bb818fa",{"name":"joint0_FR","origin":[9.5,24.5,-13.5],"rotation":[17.5,0,0],"color":0,"uuid":"6955de22-65f2-904b-e7f9-e37db01e1e30","export":true,"mirror_uv":false,"isOpen":true,"locked":false,"visibility":true,"autouv":0,"selected":false,"children":["ab5406e6-e46e-8fc0-18b7-7eb23ddf9dbf",{"name":"joint1_FR","origin":[9.5,33.5,-17.5],"rotation":[-7.5,0,0],"color":0,"uuid":"72b7f134-6abd-85a2-6fc8-5af30ca6e6ec","export":true,"mirror_uv":false,"isOpen":true,"locked":false,"visibility":true,"autouv":0,"selected":false,"children":["80f848b9-d363-4113-5e11-af36e8e93b2c","e17cf2b7-96ee-3417-8ef2-55a6dbb1192e","b14447a0-c0b0-eae8-3180-46fd39d98c6e","665bded6-ea4f-8dfe-d4ed-18fed61aa4ba","8c342a2f-d08d-70fa-49ad-d632a8ce3812","31eee6ee-21d2-f0f1-5099-27aaf66b2c04",{"name":"wheelFR","origin":[9.43895,33.27265,-41.22134],"color":0,"uuid":"9ac3f84b-97d4-e802-6497-7a4deaa2e3e9","export":true,"mirror_uv":false,"isOpen":true,"locked":false,"visibility":true,"autouv":0,"selected":false,"children":["bc3416c6-8e97-d80f-ed58-a3c7dcbf2fbe"]}]}]}]},{"name":"leg_BL","origin":[-9.5,21.83333,5.83333],"rotation":[54,-29,-2],"color":0,"uuid":"4edb4056-fbbd-3038-f4cb-b27262858b3d","export":true,"mirror_uv":false,"isOpen":true,"locked":false,"visibility":true,"autouv":0,"selected":false,"children":[{"name":"joint0_BL","origin":[-9.5,24.5,13.5],"rotation":[-20,0,0],"color":0,"uuid":"a73b6676-24b9-4468-dca6-8a2be61a7f9f","export":true,"mirror_uv":false,"isOpen":true,"locked":false,"visibility":true,"autouv":0,"selected":false,"children":["5a4249d5-a140-66b4-f4fa-b306ad211bd4",{"name":"joint1_BL","origin":[-9.5,33.25089,17.61557],"rotation":[170,0,-180],"color":0,"uuid":"164dbb88-4e01-c3a7-5a98-5268a7abe7bb","export":true,"mirror_uv":false,"isOpen":true,"locked":false,"visibility":true,"autouv":0,"selected":false,"children":["87de2b1b-d447-594d-fa88-353cc78c9624","a0007412-0dda-7d2c-9d08-3334e42d3391","76d8926d-c88f-8a59-80f4-0d65b543cd5f","5c11197a-9c13-9054-e276-d330562e4ae0","a6479087-e215-cdbe-4a42-22d1763249cf","3044c8d9-15e3-583e-f87f-395e6e5b6355","29dda652-ba32-8826-0cea-34550b44b480",{"name":"wheelBL","origin":[-9.56105,33.02354,-5.10577],"color":0,"uuid":"4dd5adc8-973a-bf11-4fe7-effcda2e3d2b","export":true,"mirror_uv":false,"isOpen":true,"locked":false,"visibility":true,"autouv":0,"selected":false,"children":["6b8b9d1d-1717-ff73-394b-c558b75ef93d"]}]}]},"04e9cb1e-65b4-1fa1-b868-a4eed1111aa7"]},{"name":"leg_BR","origin":[9.5,21.83333,5.16667],"rotation":[54,29,2],"color":0,"uuid":"e11d5a6f-8c6b-cbbc-0b01-7e5ac89bcbe6","export":true,"mirror_uv":false,"isOpen":true,"locked":false,"visibility":true,"autouv":0,"selected":false,"children":[{"name":"joint0_BR","origin":[9.5,24.5,13.5],"rotation":[-20,0,0],"color":0,"uuid":"183a2e67-9b3e-1ad1-b9f2-886791f8c94b","export":true,"mirror_uv":false,"isOpen":true,"locked":false,"visibility":true,"autouv":0,"selected":false,"children":["52957efe-ebdc-0936-bdaa-7f12ec22246f",{"name":"joint1_BR","origin":[9.5,33.25089,17.61557],"rotation":[170,0,-180],"color":0,"uuid":"2be813b0-44cb-addb-2ab1-353c10c8819d","export":true,"mirror_uv":false,"isOpen":true,"locked":false,"visibility":true,"autouv":0,"selected":false,"children":["d94b390d-c966-2bc6-52d9-eec003d07a93","3fa1dfef-9b30-e927-e5c1-d355860ecf28","e41a77e8-13a8-b6cf-4860-8fb32d43af69","0c99df44-4c6a-57a2-bf6d-1496a1de4bad","44dbff98-6b9b-6428-e8c2-f2bd4f987904","42a7307b-8a2e-cb7e-353d-59c7997f0f1f","3ba2b425-d987-28c6-41c4-115ef61a2df0",{"name":"wheelBR","origin":[9.56105,33.02354,-6.10577],"color":0,"uuid":"af26c95a-788c-34b1-533b-03814483a9ea","export":true,"mirror_uv":false,"isOpen":true,"locked":false,"visibility":true,"autouv":0,"selected":false,"children":["3458ba7e-bc83-a52c-cb5f-0673f0260ed3"]}]}]},"faa3b117-7d2d-e54e-b77c-8b1d21711a20"]}]}],"textures":[{"path":"L:\\overdrive_that_matters\\src\\main\\resources\\assets\\overdrive_that_matters\\textures\\entity\\enforcer.png","name":"enforcer.png","folder":"block","namespace":"","id":"0","group":"","width":256,"height":256,"uv_width":256,"uv_height":256,"particle":false,"use_as_default":false,"layers_enabled":false,"sync_to_project":"","render_mode":"default","render_sides":"auto","pbr_channel":"color","frame_time":1,"frame_order_type":"loop","frame_order":"","frame_interpolate":false,"visible":true,"internal":true,"saved":true,"uuid":"09bca0d4-3d23-9475-2877-88d954c83ace","relative_path":"../main/resources/assets/overdrive_that_matters/textures/entity/enforcer.png","source":"data:image/png;base64,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"}],"animations":[{"uuid":"4aa48af6-3354-d0cf-0a74-11bfa885c91a","name":"charge","loop":"loop","override":false,"length":0.6,"snapping":25,"selected":true,"anim_time_update":"","blend_weight":"","start_delay":"","loop_delay":"","animators":{"514b90ff-4605-7406-ef71-75c69305c9d4":{"name":"root","type":"bone","keyframes":[{"channel":"position","data_points":[{"x":"0","y":"-1.1","z":"0"}],"uuid":"8685d823-bebc-4c99-cd89-2649290b07f1","time":0.12,"color":-1,"interpolation":"linear","easing":"linear","easingArgs":[]},{"channel":"position","data_points":[{"x":"0","y":"-1","z":"0"}],"uuid":"fbf3e22a-9bcb-fa8a-d42a-457446869532","time":0,"color":-1,"interpolation":"linear","easing":"linear","easingArgs":[]},{"channel":"position","data_points":[{"x":"0","y":"-1.1","z":"0"}],"uuid":"d6f31aed-ac03-54a9-94ec-44c5c9ba1ce2","time":0.36,"color":-1,"interpolation":"linear","easing":"linear","easingArgs":[]},{"channel":"position","data_points":[{"x":"0","y":"-1","z":"0"}],"uuid":"833d08fb-82bb-38b5-4548-eb475286568f","time":0.24,"color":-1,"interpolation":"linear","easing":"linear","easingArgs":[]},{"channel":"position","data_points":[{"x":"0","y":"-1.1","z":"0"}],"uuid":"e7972201-871f-eadf-e277-b6503c112efd","time":0.6,"color":-1,"interpolation":"linear","easing":"linear","easingArgs":[]},{"channel":"position","data_points":[{"x":"0","y":"-1","z":"0"}],"uuid":"2d6d9049-1144-6354-3371-ce5724746e2f","time":0.48,"color":-1,"interpolation":"linear","easing":"linear","easingArgs":[]}]},"e997d144-259f-c084-afec-71d628f74e44":{"name":"Body","type":"bone","keyframes":[{"channel":"rotation","data_points":[{"x":"7.5","y":"0","z":"0"}],"uuid":"8f016955-0dbf-2085-d67e-bafce1116644","time":0,"color":-1,"interpolation":"linear","easing":"linear","easingArgs":[]}]},"3f32d854-7384-3d6a-eca8-d1eb13e387ed":{"name":"leg_FL","type":"bone","keyframes":[{"channel":"rotation","data_points":[{"x":"0.3976588741","y":"21.8143686189","z":"-4.1090985254"}],"uuid":"f57e17fa-52fc-bdc7-ae2f-d69a041598c8","time":0,"color":-1,"interpolation":"linear","easing":"linear","easingArgs":[]},{"channel":"rotation","data_points":[{"x":"-0.4394239812","y":"21.7555195725","z":"-4.0659678952"}],"uuid":"c30c851e-cf1c-3bfe-17ad-2bc14cdc64e9","time":0.12,"color":-1,"interpolation":"linear","easing":"linear","easingArgs":[]},{"channel":"rotation","data_points":[{"x":"0.3976588741","y":"21.8143686189","z":"-4.1090985254"}],"uuid":"7892642f-952d-d729-21e4-d512b2250b4c","time":0.24,"color":-1,"interpolation":"linear","easing":"linear","easingArgs":[]},{"channel":"rotation","data_points":[{"x":"-0.4394239812","y":"21.7555195725","z":"-4.0659678952"}],"uuid":"fb387d55-1e9e-a682-77a4-6ab980199eb5","time":0.36,"color":-1,"interpolation":"linear","easing":"linear","easingArgs":[]},{"channel":"rotation","data_points":[{"x":"0.3976588741","y":"21.8143686189","z":"-4.1090985254"}],"uuid":"ee6a7917-d196-dcc9-b6f0-46e146109b75","time":0.48,"color":-1,"interpolation":"linear","easing":"linear","easingArgs":[]},{"channel":"rotation","data_points":[{"x":"-0.4394239812","y":"21.7555195725","z":"-4.0659678952"}],"uuid":"5b761273-18e2-7375-bf9e-0723bbdae32d","time":0.6,"color":-1,"interpolation":"linear","easing":"linear","easingArgs":[]}]},"fb1128ec-3b6f-3075-483e-508c13085c24":{"name":"leg_FR","type":"bone","keyframes":[{"channel":"rotation","data_points":[{"x":"0.3635344604","y":"-21.7812899984","z":"3.7159224546"}],"uuid":"7cf6dcf9-1f7a-fb78-ded0-7e252fe09b0b","time":0,"color":-1,"interpolation":"linear","easing":"linear","easingArgs":[]},{"channel":"rotation","data_points":[{"x":"-0.4704571393","y":"-21.7281050669","z":"3.7089996764"}],"uuid":"3b817039-7a7c-91c7-e727-3b6aed57148d","time":0.12,"color":-1,"interpolation":"linear","easing":"linear","easingArgs":[]},{"channel":"rotation","data_points":[{"x":"0.3635344604","y":"-21.7812899984","z":"3.7159224546"}],"uuid":"69937717-1e52-6191-ac73-4434a1733012","time":0.24,"color":-1,"interpolation":"linear","easing":"linear","easingArgs":[]},{"channel":"rotation","data_points":[{"x":"-0.4704571393","y":"-21.7281050669","z":"3.7089996764"}],"uuid":"f2ba4944-dcc3-bf83-b162-76126a2f2509","time":0.36,"color":-1,"interpolation":"linear","easing":"linear","easingArgs":[]},{"channel":"rotation","data_points":[{"x":"0.3635344604","y":"-21.7812899984","z":"3.7159224546"}],"uuid":"7152e63d-5e04-b067-aa2a-82a21fa365e7","time":0.48,"color":-1,"interpolation":"linear","easing":"linear","easingArgs":[]},{"channel":"rotation","data_points":[{"x":"-0.4704571393","y":"-21.7281050669","z":"3.7089996764"}],"uuid":"c0f8f885-ea98-1c47-2f89-b625ce85450f","time":0.6,"color":-1,"interpolation":"linear","easing":"linear","easingArgs":[]}]},"e11d5a6f-8c6b-cbbc-0b01-7e5ac89bcbe6":{"name":"leg_BR","type":"bone","keyframes":[{"channel":"rotation","data_points":[{"x":"-0.3976588741","y":"21.8143686189","z":"4.1090985254"}],"uuid":"c83d1f7f-0a1f-e430-28e9-b0130ffe9dd6","time":0,"color":-1,"interpolation":"linear","easing":"linear","easingArgs":[]},{"channel":"rotation","data_points":[{"x":"0.5465457559","y":"21.748034724","z":"4.0603862128"}],"uuid":"9d1ce2a1-33f0-662d-74ef-92c3b477915e","time":0.12,"color":-1,"interpolation":"linear","easing":"linear","easingArgs":[]},{"channel":"rotation","data_points":[{"x":"-0.3976588741","y":"21.8143686189","z":"4.1090985254"}],"uuid":"4c5af6d5-4c00-9a1a-04dd-c350e1d5802f","time":0.24,"color":-1,"interpolation":"linear","easing":"linear","easingArgs":[]},{"channel":"rotation","data_points":[{"x":"0.5465457559","y":"21.748034724","z":"4.0603862128"}],"uuid":"78cd02da-e74b-d7e7-638d-21b1c4aedb34","time":0.36,"color":-1,"interpolation":"linear","easing":"linear","easingArgs":[]},{"channel":"rotation","data_points":[{"x":"-0.3976588741","y":"21.8143686189","z":"4.1090985254"}],"uuid":"828d4d4e-1901-dd98-f940-4b56e8f14714","time":0.48,"color":-1,"interpolation":"linear","easing":"linear","easingArgs":[]},{"channel":"rotation","data_points":[{"x":"0.5465457559","y":"21.748034724","z":"4.0603862128"}],"uuid":"ee9748f9-a47f-63e2-7913-4246e1fa3002","time":0.6,"color":-1,"interpolation":"linear","easing":"linear","easingArgs":[]}]},"4edb4056-fbbd-3038-f4cb-b27262858b3d":{"name":"leg_BL","type":"bone","keyframes":[{"channel":"rotation","data_points":[{"x":"-0.3976588741","y":"-21.8143686189","z":"-4.1090985254"}],"uuid":"23970bfb-8236-66e8-c2e4-5c80195cd39a","time":0,"color":-1,"interpolation":"linear","easing":"linear","easingArgs":[]},{"channel":"rotation","data_points":[{"x":"0.5465457559","y":"-21.748034724","z":"-4.0603862128"}],"uuid":"758bba9c-cf7c-cadc-9b05-2ebdcfcdec35","time":0.12,"color":-1,"interpolation":"linear","easing":"linear","easingArgs":[]},{"channel":"rotation","data_points":[{"x":"-0.3976588741","y":"-21.8143686189","z":"-4.1090985254"}],"uuid":"b824e126-97fb-aa6c-517f-56df5a6a5103","time":0.24,"color":-1,"interpolation":"linear","easing":"linear","easingArgs":[]},{"channel":"rotation","data_points":[{"x":"0.5465457559","y":"-21.748034724","z":"-4.0603862128"}],"uuid":"6defe6cd-671d-7a31-0934-8cac74dab550","time":0.36,"color":-1,"interpolation":"linear","easing":"linear","easingArgs":[]},{"channel":"rotation","data_points":[{"x":"-0.3976588741","y":"-21.8143686189","z":"-4.1090985254"}],"uuid":"d4b135fa-e132-72ac-8150-8c63493eae41","time":0.48,"color":-1,"interpolation":"linear","easing":"linear","easingArgs":[]},{"channel":"rotation","data_points":[{"x":"0.5465457559","y":"-21.748034724","z":"-4.0603862128"}],"uuid":"74f7657b-eafe-1541-6244-9bb8442ae2d2","time":0.6,"color":-1,"interpolation":"linear","easing":"linear","easingArgs":[]}]},"0cb3812e-1980-a834-143d-5c4c8ba0ea7c":{"name":"joint0_FL","type":"bone","keyframes":[{"channel":"rotation","data_points":[{"x":"-22.5","y":"0","z":"0"}],"uuid":"ac72b1da-38de-7afa-afdf-2ad3dee37417","time":0,"color":-1,"interpolation":"linear","easing":"linear","easingArgs":[]}]},"ebb2fe99-b1a6-5a26-5954-9c27a8c6e586":{"name":"joint1_FL","type":"bone","keyframes":[{"channel":"rotation","data_points":[{"x":"22.5","y":"0","z":"0"}],"uuid":"58f9059a-6423-deab-39ef-aae2668f9e48","time":0,"color":-1,"interpolation":"linear","easing":"linear","easingArgs":[]}]},"6955de22-65f2-904b-e7f9-e37db01e1e30":{"name":"joint0_FR","type":"bone","keyframes":[{"channel":"rotation","data_points":[{"x":"-22.5","y":"0","z":"0"}],"uuid":"3b68e448-fb5b-1cfc-0da6-be19922b3a53","time":0,"color":-1,"interpolation":"linear","easing":"linear","easingArgs":[]}]},"72b7f134-6abd-85a2-6fc8-5af30ca6e6ec":{"name":"joint1_FR","type":"bone","keyframes":[{"channel":"rotation","data_points":[{"x":"22.5","y":"0","z":"0"}],"uuid":"fa91b9d8-28fe-590b-255d-5d054f8a91b0","time":0,"color":-1,"interpolation":"linear","easing":"linear","easingArgs":[]}]},"a73b6676-24b9-4468-dca6-8a2be61a7f9f":{"name":"joint0_BL","type":"bone","keyframes":[{"channel":"rotation","data_points":[{"x":"22.5","y":"0","z":"0"}],"uuid":"0637890a-25e7-55a1-0514-c95bcf3c2a22","time":0,"color":-1,"interpolation":"linear","easing":"linear","easingArgs":[]}]},"164dbb88-4e01-c3a7-5a98-5268a7abe7bb":{"name":"joint1_BL","type":"bone","keyframes":[{"channel":"rotation","data_points":[{"x":"22.5","y":"0","z":"0"}],"uuid":"21dc6b6f-4edf-92a5-eb2a-5708378bb4b5","time":0,"color":-1,"interpolation":"linear","easing":"linear","easingArgs":[]}]},"183a2e67-9b3e-1ad1-b9f2-886791f8c94b":{"name":"joint0_BR","type":"bone","keyframes":[{"channel":"rotation","data_points":[{"x":"22.5","y":"0","z":"0"}],"uuid":"c1bb2454-22c3-cba7-013f-fc31dbf9ebc1","time":0,"color":-1,"interpolation":"linear","easing":"linear","easingArgs":[]}]},"2be813b0-44cb-addb-2ab1-353c10c8819d":{"name":"joint1_BR","type":"bone","keyframes":[{"channel":"rotation","data_points":[{"x":"22.5","y":"0","z":"0"}],"uuid":"8fb0ba41-804c-6865-1994-2ffec779c763","time":0,"color":-1,"interpolation":"linear","easing":"linear","easingArgs":[]}]},"9ac3f84b-97d4-e802-6497-7a4deaa2e3e9":{"name":"wheelFR","type":"bone","keyframes":[{"channel":"rotation","data_points":[{"x":"360","y":"0","z":"0"}],"uuid":"0f9dddb9-c584-3eac-0109-5c07bb64e1e0","time":0.6,"color":-1,"interpolation":"linear","easing":"linear","easingArgs":[]},{"channel":"rotation","data_points":[{"x":"0","y":"0","z":"0"}],"uuid":"e94bf506-3056-7c20-95df-de672bbb6d33","time":0,"color":-1,"interpolation":"linear","easing":"linear","easingArgs":[]}]},"4812de02-0911-93ef-38b9-54e3b5558ec1":{"name":"wheelFL","type":"bone","keyframes":[{"channel":"rotation","data_points":[{"x":"355","y":"0","z":"0"}],"uuid":"0e39dd3c-bfe2-e0bb-c621-fc589a38e816","time":0.6,"color":-1,"interpolation":"linear","easing":"linear","easingArgs":[]},{"channel":"rotation","data_points":[{"x":"0","y":"0","z":"0"}],"uuid":"23f8a1c2-bf1f-7244-8355-3c5ab1a87a73","time":0,"color":-1,"interpolation":"linear","easing":"linear","easingArgs":[]}]},"4dd5adc8-973a-bf11-4fe7-effcda2e3d2b":{"name":"wheelBL","type":"bone","keyframes":[{"channel":"rotation","data_points":[{"x":"-360","y":"0","z":"0"}],"uuid":"f2c27b79-b9fb-5690-98d8-9836c28f5484","time":0.6,"color":-1,"interpolation":"linear","easing":"linear","easingArgs":[]},{"channel":"rotation","data_points":[{"x":"0","y":"0","z":"0"}],"uuid":"714496b2-f5e6-34cc-5269-0c0572b570d7","time":0,"color":-1,"interpolation":"linear","easing":"linear","easingArgs":[]}]},"af26c95a-788c-34b1-533b-03814483a9ea":{"name":"wheelBR","type":"bone","keyframes":[{"channel":"rotation","data_points":[{"x":"-360","y":"0","z":"0"}],"uuid":"e2166f61-c4c6-5de8-8054-55a00fdbc667","time":0.6,"color":-1,"interpolation":"linear","easing":"linear","easingArgs":[]},{"channel":"rotation","data_points":[{"x":"0","y":"0","z":"0"}],"uuid":"5b09f93f-672d-df42-e5b7-e11c2f3b92f1","time":0,"color":-1,"interpolation":"linear","easing":"linear","easingArgs":[]}]}}},{"uuid":"e8ba13f9-538b-5a86-af35-af51b7634ee6","name":"idle","loop":"loop","override":false,"length":0.12,"snapping":25,"selected":false,"anim_time_update":"","blend_weight":"","start_delay":"","loop_delay":"","animators":{"e997d144-259f-c084-afec-71d628f74e44":{"name":"Body","type":"bone","keyframes":[{"channel":"position","data_points":[{"x":"0","y":"-0.2","z":"0"}],"uuid":"f6cb4d65-41ca-cbec-b17b-fc3cd849df17","time":0.12,"color":-1,"interpolation":"linear","easing":"linear","easingArgs":[]},{"channel":"position","data_points":[{"x":"0","y":"0","z":"0"}],"uuid":"f2e49355-efa3-8100-c43d-71cd3e1d535f","time":0,"color":-1,"interpolation":"linear","easing":"linear","easingArgs":[]}]}}}]} \ No newline at end of file diff --git a/src/main/java/ru/dbotthepony/mc/otm/client/animation/DroneAnimation.java b/src/main/java/ru/dbotthepony/mc/otm/client/animation/DroneAnimation.java new file mode 100644 index 000000000..fd1bf5e93 --- /dev/null +++ b/src/main/java/ru/dbotthepony/mc/otm/client/animation/DroneAnimation.java @@ -0,0 +1,55 @@ +package ru.dbotthepony.mc.otm.client.animation; + +import net.minecraft.client.animation.AnimationChannel; +import net.minecraft.client.animation.AnimationDefinition; +import net.minecraft.client.animation.Keyframe; +import net.minecraft.client.animation.KeyframeAnimations; + +public class DroneAnimation { + public static final AnimationDefinition LOOP = AnimationDefinition.Builder.withLength(3.0F).looping() + .addAnimation("eye", new AnimationChannel(AnimationChannel.Targets.POSITION, + new Keyframe(0.0F, KeyframeAnimations.posVec(0.0F, 0.0F, 0.0F), AnimationChannel.Interpolations.LINEAR), + new Keyframe(0.32F, KeyframeAnimations.posVec(0.0F, 0.0F, 0.0F), AnimationChannel.Interpolations.LINEAR), + new Keyframe(0.4F, KeyframeAnimations.posVec(0.0F, 0.2F, 0.0F), AnimationChannel.Interpolations.LINEAR), + new Keyframe(0.52F, KeyframeAnimations.posVec(0.0F, 0.0F, 0.0F), AnimationChannel.Interpolations.LINEAR), + new Keyframe(1.08F, KeyframeAnimations.posVec(0.0F, 0.0F, 0.0F), AnimationChannel.Interpolations.LINEAR), + new Keyframe(1.16F, KeyframeAnimations.posVec(-0.3F, -0.3F, 0.3F), AnimationChannel.Interpolations.LINEAR), + new Keyframe(1.28F, KeyframeAnimations.posVec(0.0F, 0.0F, 0.0F), AnimationChannel.Interpolations.LINEAR), + new Keyframe(1.92F, KeyframeAnimations.posVec(0.0F, 0.0F, 0.0F), AnimationChannel.Interpolations.LINEAR), + new Keyframe(2.0F, KeyframeAnimations.posVec(0.0F, 0.0F, -0.4F), AnimationChannel.Interpolations.LINEAR), + new Keyframe(2.12F, KeyframeAnimations.posVec(0.0F, 0.0F, 0.0F), AnimationChannel.Interpolations.LINEAR), + new Keyframe(2.72F, KeyframeAnimations.posVec(0.0F, 0.0F, 0.0F), AnimationChannel.Interpolations.LINEAR), + new Keyframe(2.8F, KeyframeAnimations.posVec(0.3F, 0.3F, 0.0F), AnimationChannel.Interpolations.LINEAR), + new Keyframe(2.92F, KeyframeAnimations.posVec(0.0F, 0.0F, 0.0F), AnimationChannel.Interpolations.LINEAR) + )) + .addAnimation("gyroL", new AnimationChannel(AnimationChannel.Targets.ROTATION, + new Keyframe(0.0F, KeyframeAnimations.degreeVec(0.0F, 0.0F, 0.0F), AnimationChannel.Interpolations.LINEAR), + new Keyframe(3.0F, KeyframeAnimations.degreeVec(720.0F, 0.0F, 0.0F), AnimationChannel.Interpolations.LINEAR) + )) + .addAnimation("gyroR", new AnimationChannel(AnimationChannel.Targets.ROTATION, + new Keyframe(0.0F, KeyframeAnimations.degreeVec(0.0F, 0.0F, 0.0F), AnimationChannel.Interpolations.LINEAR), + new Keyframe(3.0F, KeyframeAnimations.degreeVec(720.0F, 0.0F, 0.0F), AnimationChannel.Interpolations.LINEAR) + )) + .addAnimation("antennaL", new AnimationChannel(AnimationChannel.Targets.ROTATION, + new Keyframe(0.0F, KeyframeAnimations.degreeVec(0.0F, 0.0F, 0.0F), AnimationChannel.Interpolations.CATMULLROM), + new Keyframe(1.52F, KeyframeAnimations.degreeVec(5.5795F, 4.4039F, 2.4381F), AnimationChannel.Interpolations.CATMULLROM), + new Keyframe(3.0F, KeyframeAnimations.degreeVec(0.0F, 0.0F, 0.0F), AnimationChannel.Interpolations.CATMULLROM) + )) + .addAnimation("antennaR", new AnimationChannel(AnimationChannel.Targets.ROTATION, + new Keyframe(0.0F, KeyframeAnimations.degreeVec(0.0F, 0.0F, 0.0F), AnimationChannel.Interpolations.CATMULLROM), + new Keyframe(1.52F, KeyframeAnimations.degreeVec(5.5795F, -4.4039F, -2.4381F), AnimationChannel.Interpolations.CATMULLROM), + new Keyframe(3.0F, KeyframeAnimations.degreeVec(0.0F, 0.0F, 0.0F), AnimationChannel.Interpolations.CATMULLROM) + )) + .addAnimation("finL", new AnimationChannel(AnimationChannel.Targets.ROTATION, + new Keyframe(0.0F, KeyframeAnimations.degreeVec(0.0F, 0.0F, 0.0F), AnimationChannel.Interpolations.CATMULLROM), + new Keyframe(1.52F, KeyframeAnimations.degreeVec(0.0F, 20.0F, 0.0F), AnimationChannel.Interpolations.CATMULLROM), + new Keyframe(3.0F, KeyframeAnimations.degreeVec(0.0F, 0.0F, 0.0F), AnimationChannel.Interpolations.CATMULLROM) + )) + .addAnimation("finR", new AnimationChannel(AnimationChannel.Targets.ROTATION, + new Keyframe(0.0F, KeyframeAnimations.degreeVec(0.0F, 0.0F, 0.0F), AnimationChannel.Interpolations.CATMULLROM), + new Keyframe(1.52F, KeyframeAnimations.degreeVec(0.0F, -20.0F, 0.0F), AnimationChannel.Interpolations.CATMULLROM), + new Keyframe(3.0F, KeyframeAnimations.degreeVec(0.0F, 0.0F, 0.0F), AnimationChannel.Interpolations.CATMULLROM) + )) + .build(); + +} diff --git a/src/main/java/ru/dbotthepony/mc/otm/client/animation/EnforcerAnimation.java b/src/main/java/ru/dbotthepony/mc/otm/client/animation/EnforcerAnimation.java index 2cba6cbcb..666bee6cc 100644 --- a/src/main/java/ru/dbotthepony/mc/otm/client/animation/EnforcerAnimation.java +++ b/src/main/java/ru/dbotthepony/mc/otm/client/animation/EnforcerAnimation.java @@ -6,29 +6,89 @@ import net.minecraft.client.animation.Keyframe; import net.minecraft.client.animation.KeyframeAnimations; public class EnforcerAnimation { - public static final AnimationDefinition CHARGE = AnimationDefinition.Builder.withLength(0.12F).looping() + public static final AnimationDefinition CHARGE = AnimationDefinition.Builder.withLength(0.6F).looping() .addAnimation("root", new AnimationChannel(AnimationChannel.Targets.POSITION, new Keyframe(0.0F, KeyframeAnimations.posVec(0.0F, -1.0F, 0.0F), AnimationChannel.Interpolations.LINEAR), - new Keyframe(0.12F, KeyframeAnimations.posVec(0.0F, -1.1F, 0.0F), AnimationChannel.Interpolations.LINEAR) + new Keyframe(0.12F, KeyframeAnimations.posVec(0.0F, -1.1F, 0.0F), AnimationChannel.Interpolations.LINEAR), + new Keyframe(0.24F, KeyframeAnimations.posVec(0.0F, -1.0F, 0.0F), AnimationChannel.Interpolations.LINEAR), + new Keyframe(0.36F, KeyframeAnimations.posVec(0.0F, -1.1F, 0.0F), AnimationChannel.Interpolations.LINEAR), + new Keyframe(0.48F, KeyframeAnimations.posVec(0.0F, -1.0F, 0.0F), AnimationChannel.Interpolations.LINEAR), + new Keyframe(0.6F, KeyframeAnimations.posVec(0.0F, -1.1F, 0.0F), AnimationChannel.Interpolations.LINEAR) )) .addAnimation("Body", new AnimationChannel(AnimationChannel.Targets.ROTATION, new Keyframe(0.0F, KeyframeAnimations.degreeVec(7.5F, 0.0F, 0.0F), AnimationChannel.Interpolations.LINEAR) )) .addAnimation("leg_FL", new AnimationChannel(AnimationChannel.Targets.ROTATION, - new Keyframe(0.0F, KeyframeAnimations.degreeVec(-0.0089F, 24.7408F, -0.0342F), AnimationChannel.Interpolations.LINEAR), - new Keyframe(0.12F, KeyframeAnimations.degreeVec(-0.8438F, 24.7408F, -0.0342F), AnimationChannel.Interpolations.LINEAR) + new Keyframe(0.0F, KeyframeAnimations.degreeVec(0.3977F, 21.8144F, -4.1091F), AnimationChannel.Interpolations.LINEAR), + new Keyframe(0.12F, KeyframeAnimations.degreeVec(-0.4394F, 21.7555F, -4.066F), AnimationChannel.Interpolations.LINEAR), + new Keyframe(0.24F, KeyframeAnimations.degreeVec(0.3977F, 21.8144F, -4.1091F), AnimationChannel.Interpolations.LINEAR), + new Keyframe(0.36F, KeyframeAnimations.degreeVec(-0.4394F, 21.7555F, -4.066F), AnimationChannel.Interpolations.LINEAR), + new Keyframe(0.48F, KeyframeAnimations.degreeVec(0.3977F, 21.8144F, -4.1091F), AnimationChannel.Interpolations.LINEAR), + new Keyframe(0.6F, KeyframeAnimations.degreeVec(-0.4394F, 21.7555F, -4.066F), AnimationChannel.Interpolations.LINEAR) )) .addAnimation("leg_FR", new AnimationChannel(AnimationChannel.Targets.ROTATION, - new Keyframe(0.0F, KeyframeAnimations.degreeVec(-0.0452F, -24.7102F, -0.3574F), AnimationChannel.Interpolations.LINEAR), - new Keyframe(0.12F, KeyframeAnimations.degreeVec(-0.8765F, -24.7156F, -0.3213F), AnimationChannel.Interpolations.LINEAR) + new Keyframe(0.0F, KeyframeAnimations.degreeVec(0.3635F, -21.7813F, 3.7159F), AnimationChannel.Interpolations.LINEAR), + new Keyframe(0.12F, KeyframeAnimations.degreeVec(-0.4705F, -21.7281F, 3.709F), AnimationChannel.Interpolations.LINEAR), + new Keyframe(0.24F, KeyframeAnimations.degreeVec(0.3635F, -21.7813F, 3.7159F), AnimationChannel.Interpolations.LINEAR), + new Keyframe(0.36F, KeyframeAnimations.degreeVec(-0.4705F, -21.7281F, 3.709F), AnimationChannel.Interpolations.LINEAR), + new Keyframe(0.48F, KeyframeAnimations.degreeVec(0.3635F, -21.7813F, 3.7159F), AnimationChannel.Interpolations.LINEAR), + new Keyframe(0.6F, KeyframeAnimations.degreeVec(-0.4705F, -21.7281F, 3.709F), AnimationChannel.Interpolations.LINEAR) )) .addAnimation("leg_BR", new AnimationChannel(AnimationChannel.Targets.ROTATION, - new Keyframe(0.0F, KeyframeAnimations.degreeVec(0.0089F, 24.7408F, 0.0342F), AnimationChannel.Interpolations.LINEAR), - new Keyframe(0.12F, KeyframeAnimations.degreeVec(0.9506F, 24.7408F, 0.0342F), AnimationChannel.Interpolations.LINEAR) + new Keyframe(0.0F, KeyframeAnimations.degreeVec(-0.3977F, 21.8144F, 4.1091F), AnimationChannel.Interpolations.LINEAR), + new Keyframe(0.12F, KeyframeAnimations.degreeVec(0.5465F, 21.748F, 4.0604F), AnimationChannel.Interpolations.LINEAR), + new Keyframe(0.24F, KeyframeAnimations.degreeVec(-0.3977F, 21.8144F, 4.1091F), AnimationChannel.Interpolations.LINEAR), + new Keyframe(0.36F, KeyframeAnimations.degreeVec(0.5465F, 21.748F, 4.0604F), AnimationChannel.Interpolations.LINEAR), + new Keyframe(0.48F, KeyframeAnimations.degreeVec(-0.3977F, 21.8144F, 4.1091F), AnimationChannel.Interpolations.LINEAR), + new Keyframe(0.6F, KeyframeAnimations.degreeVec(0.5465F, 21.748F, 4.0604F), AnimationChannel.Interpolations.LINEAR) )) .addAnimation("leg_BL", new AnimationChannel(AnimationChannel.Targets.ROTATION, - new Keyframe(0.0F, KeyframeAnimations.degreeVec(0.0089F, -24.7408F, -0.0342F), AnimationChannel.Interpolations.LINEAR), - new Keyframe(0.12F, KeyframeAnimations.degreeVec(0.9506F, -24.7408F, -0.0342F), AnimationChannel.Interpolations.LINEAR) + new Keyframe(0.0F, KeyframeAnimations.degreeVec(-0.3977F, -21.8144F, -4.1091F), AnimationChannel.Interpolations.LINEAR), + new Keyframe(0.12F, KeyframeAnimations.degreeVec(0.5465F, -21.748F, -4.0604F), AnimationChannel.Interpolations.LINEAR), + new Keyframe(0.24F, KeyframeAnimations.degreeVec(-0.3977F, -21.8144F, -4.1091F), AnimationChannel.Interpolations.LINEAR), + new Keyframe(0.36F, KeyframeAnimations.degreeVec(0.5465F, -21.748F, -4.0604F), AnimationChannel.Interpolations.LINEAR), + new Keyframe(0.48F, KeyframeAnimations.degreeVec(-0.3977F, -21.8144F, -4.1091F), AnimationChannel.Interpolations.LINEAR), + new Keyframe(0.6F, KeyframeAnimations.degreeVec(0.5465F, -21.748F, -4.0604F), AnimationChannel.Interpolations.LINEAR) + )) + .addAnimation("joint0_FL", new AnimationChannel(AnimationChannel.Targets.ROTATION, + new Keyframe(0.0F, KeyframeAnimations.degreeVec(-22.5F, 0.0F, 0.0F), AnimationChannel.Interpolations.LINEAR) + )) + .addAnimation("joint1_FL", new AnimationChannel(AnimationChannel.Targets.ROTATION, + new Keyframe(0.0F, KeyframeAnimations.degreeVec(22.5F, 0.0F, 0.0F), AnimationChannel.Interpolations.LINEAR) + )) + .addAnimation("joint0_FR", new AnimationChannel(AnimationChannel.Targets.ROTATION, + new Keyframe(0.0F, KeyframeAnimations.degreeVec(-22.5F, 0.0F, 0.0F), AnimationChannel.Interpolations.LINEAR) + )) + .addAnimation("joint1_FR", new AnimationChannel(AnimationChannel.Targets.ROTATION, + new Keyframe(0.0F, KeyframeAnimations.degreeVec(22.5F, 0.0F, 0.0F), AnimationChannel.Interpolations.LINEAR) + )) + .addAnimation("joint0_BL", new AnimationChannel(AnimationChannel.Targets.ROTATION, + new Keyframe(0.0F, KeyframeAnimations.degreeVec(22.5F, 0.0F, 0.0F), AnimationChannel.Interpolations.LINEAR) + )) + .addAnimation("joint1_BL", new AnimationChannel(AnimationChannel.Targets.ROTATION, + new Keyframe(0.0F, KeyframeAnimations.degreeVec(22.5F, 0.0F, 0.0F), AnimationChannel.Interpolations.LINEAR) + )) + .addAnimation("joint0_BR", new AnimationChannel(AnimationChannel.Targets.ROTATION, + new Keyframe(0.0F, KeyframeAnimations.degreeVec(22.5F, 0.0F, 0.0F), AnimationChannel.Interpolations.LINEAR) + )) + .addAnimation("joint1_BR", new AnimationChannel(AnimationChannel.Targets.ROTATION, + new Keyframe(0.0F, KeyframeAnimations.degreeVec(22.5F, 0.0F, 0.0F), AnimationChannel.Interpolations.LINEAR) + )) + .addAnimation("wheelFR", new AnimationChannel(AnimationChannel.Targets.ROTATION, + new Keyframe(0.0F, KeyframeAnimations.degreeVec(0.0F, 0.0F, 0.0F), AnimationChannel.Interpolations.LINEAR), + new Keyframe(0.6F, KeyframeAnimations.degreeVec(360.0F, 0.0F, 0.0F), AnimationChannel.Interpolations.LINEAR) + )) + .addAnimation("wheelFL", new AnimationChannel(AnimationChannel.Targets.ROTATION, + new Keyframe(0.0F, KeyframeAnimations.degreeVec(0.0F, 0.0F, 0.0F), AnimationChannel.Interpolations.LINEAR), + new Keyframe(0.6F, KeyframeAnimations.degreeVec(355.0F, 0.0F, 0.0F), AnimationChannel.Interpolations.LINEAR) + )) + .addAnimation("wheelBL", new AnimationChannel(AnimationChannel.Targets.ROTATION, + new Keyframe(0.0F, KeyframeAnimations.degreeVec(0.0F, 0.0F, 0.0F), AnimationChannel.Interpolations.LINEAR), + new Keyframe(0.6F, KeyframeAnimations.degreeVec(-360.0F, 0.0F, 0.0F), AnimationChannel.Interpolations.LINEAR) + )) + .addAnimation("wheelBR", new AnimationChannel(AnimationChannel.Targets.ROTATION, + new Keyframe(0.0F, KeyframeAnimations.degreeVec(0.0F, 0.0F, 0.0F), AnimationChannel.Interpolations.LINEAR), + new Keyframe(0.6F, KeyframeAnimations.degreeVec(-360.0F, 0.0F, 0.0F), AnimationChannel.Interpolations.LINEAR) )) .build(); diff --git a/src/main/java/ru/dbotthepony/mc/otm/client/model/entity/DroneModel.java b/src/main/java/ru/dbotthepony/mc/otm/client/model/entity/DroneModel.java new file mode 100644 index 000000000..9617e0751 --- /dev/null +++ b/src/main/java/ru/dbotthepony/mc/otm/client/model/entity/DroneModel.java @@ -0,0 +1,95 @@ +package ru.dbotthepony.mc.otm.client.model.entity; + +import net.minecraft.client.model.HierarchicalModel; +import net.minecraft.client.model.geom.ModelLayerLocation; +import net.minecraft.client.model.geom.ModelPart; +import net.minecraft.client.model.geom.PartPose; +import net.minecraft.client.model.geom.builders.*; +import net.neoforged.neoforge.client.event.EntityRenderersEvent; +import org.jetbrains.annotations.NotNull; +import ru.dbotthepony.mc.otm.client.animation.BreadMonsterAnimation; +import ru.dbotthepony.mc.otm.client.animation.DroneAnimation; +import ru.dbotthepony.mc.otm.entity.BreadMonster; +import ru.dbotthepony.mc.otm.entity.Drone; +import ru.dbotthepony.mc.otm.registry.MNames; + +import static ru.dbotthepony.mc.otm.OverdriveThatMatters.loc; + +public class DroneModel { + public static final ModelLayerLocation LAYER_LOCATION = new ModelLayerLocation(loc(MNames.DRONE), "main"); + + private static HierarchicalModel model; + private static LayerDefinition def; + + public static HierarchicalModel getModel() { + if (def == null) { + def = createBodyLayer(); + } + + if (model == null) { + return model = new DroneModel.DroneHierarchicalModel<>(def.bakeRoot()); + } + + + return model; + } + + public static LayerDefinition createBodyLayer() { + MeshDefinition meshdefinition = new MeshDefinition(); + PartDefinition partdefinition = meshdefinition.getRoot(); + + PartDefinition root = partdefinition.addOrReplaceChild("root", CubeListBuilder.create(), PartPose.offset(0.0F, 24.0F, 0.0F)); + + PartDefinition body = root.addOrReplaceChild("body", CubeListBuilder.create().texOffs(0, 21).addBox(-3.0F, -3.0F, 0.0F, 6.0F, 6.0F, 6.0F, new CubeDeformation(0.0F)) + .texOffs(0, 0).addBox(-6.0F, -6.0F, -8.0F, 12.0F, 12.0F, 9.0F, new CubeDeformation(0.0F)) + .texOffs(24, 21).addBox(-4.0F, -4.0F, -10.0F, 8.0F, 8.0F, 2.0F, new CubeDeformation(0.0F)) + .texOffs(13, 43).addBox(-5.0F, -5.0F, -6.0F, 10.0F, 10.0F, 11.0F, new CubeDeformation(0.0F)), PartPose.offset(0.0F, -8.0F, 1.0F)); + + PartDefinition eye = body.addOrReplaceChild("eye", CubeListBuilder.create().texOffs(0, 33).addBox(-3.0F, -3.0F, -3.0F, 6.0F, 6.0F, 6.0F, new CubeDeformation(-0.2F)), PartPose.offsetAndRotation(0.0F, 0.0F, -4.5F, 0.0F, 0.0F, 0.0F)); + + PartDefinition gyroL = body.addOrReplaceChild("gyroL", CubeListBuilder.create().texOffs(40, 31).addBox(-1.0F, -3.0F, -3.0F, 2.0F, 6.0F, 6.0F, new CubeDeformation(0.0F)), PartPose.offset(4.0F, 0.0F, 0.0F)); + + PartDefinition gyroR = body.addOrReplaceChild("gyroR", CubeListBuilder.create().texOffs(24, 31).addBox(-1.0F, -3.0F, -3.0F, 2.0F, 6.0F, 6.0F, new CubeDeformation(0.0F)), PartPose.offset(-4.0F, 0.0F, 0.0F)); + + PartDefinition antennaL = body.addOrReplaceChild("antennaL", CubeListBuilder.create().texOffs(46, -2).addBox(0.0F, -22.0F, -1.0F, 0.0F, 23.0F, 2.0F, new CubeDeformation(0.0F)), PartPose.offsetAndRotation(4.0F, -2.0F, 3.0F, -1.1695F, 0.2013F, 0.0846F)); + + PartDefinition antennaR = body.addOrReplaceChild("antennaR", CubeListBuilder.create().texOffs(42, -2).addBox(0.0F, -22.0F, -1.0F, 0.0F, 23.0F, 2.0F, new CubeDeformation(0.0F)), PartPose.offsetAndRotation(-4.0F, -2.0F, 3.0F, -1.1695F, -0.2013F, -0.0846F)); + + PartDefinition finL = body.addOrReplaceChild("finL", CubeListBuilder.create().texOffs(39, 0).addBox(-1.0F, 0.0F, -1.0F, 5.0F, 0.0F, 11.0F, new CubeDeformation(0.0F)), PartPose.offsetAndRotation(5.0F, 4.5F, 4.0F, 0.2849F, 0.274F, 0.8249F)); + + PartDefinition finR = body.addOrReplaceChild("finR", CubeListBuilder.create().texOffs(39, 11).addBox(-4.0F, 0.0F, -1.0F, 5.0F, 0.0F, 11.0F, new CubeDeformation(0.0F)), PartPose.offsetAndRotation(-5.0F, 4.5F, 4.0F, 0.2849F, -0.274F, -0.8249F)); + + model = null; + return def = LayerDefinition.create(meshdefinition, 64, 64); + } + + private static class DroneHierarchicalModel extends HierarchicalModel { + private final ModelPart root; + private final ModelPart body; + private final ModelPart eye; + public DroneHierarchicalModel(ModelPart root) { + this.root = root.getChild("root"); + this.body = this.root.getChild("body"); + this.eye = this.body.getChild("eye"); + } + + @Override + public void setupAnim(@NotNull T entity, float limbSwing, float limbSwingAmount, float ageInTicks, float netHeadYaw, float headPitch) { + this.root().getAllParts().forEach(ModelPart::resetPose); + + this.body.getChild("eye").yRot = netHeadYaw * ((float) Math.PI / 180F); + this.body.getChild("eye").xRot = headPitch * ((float) Math.PI / 180F); + + this.animate(entity.getIdleState(), DroneAnimation.LOOP, ageInTicks, 1.0F); + } + + @Override + public @NotNull ModelPart root() { + return this.root; + } + } + + public static void register(EntityRenderersEvent.RegisterLayerDefinitions event) { + event.registerLayerDefinition(LAYER_LOCATION, DroneModel::createBodyLayer); + } +} diff --git a/src/main/java/ru/dbotthepony/mc/otm/client/model/entity/EnforcerModel.java b/src/main/java/ru/dbotthepony/mc/otm/client/model/entity/EnforcerModel.java index 1940ba1fc..f570d7bcb 100644 --- a/src/main/java/ru/dbotthepony/mc/otm/client/model/entity/EnforcerModel.java +++ b/src/main/java/ru/dbotthepony/mc/otm/client/model/entity/EnforcerModel.java @@ -37,47 +37,106 @@ public class EnforcerModel { MeshDefinition meshdefinition = new MeshDefinition(); PartDefinition partdefinition = meshdefinition.getRoot(); - PartDefinition root = partdefinition.addOrReplaceChild("root", CubeListBuilder.create(), PartPose.offset(0.0F, 24.0F, 0.0F)); + PartDefinition root = partdefinition.addOrReplaceChild("root", CubeListBuilder.create(), PartPose.offset(0.0F, 18.0F, 0.0F)); - PartDefinition base = root.addOrReplaceChild("base", CubeListBuilder.create().texOffs(140, 104).addBox(-8.0F, -4.0F, -7.0F, 16.0F, 5.0F, 14.0F, new CubeDeformation(0.0F)) - .texOffs(92, 33).addBox(-5.0F, -2.0F, -10.0F, 10.0F, 14.0F, 20.0F, new CubeDeformation(0.0F)) - .texOffs(70, 0).addBox(-8.0F, -1.0F, -11.0F, 3.0F, 3.0F, 2.0F, new CubeDeformation(0.0F)) - .texOffs(70, 5).addBox(5.0F, -1.0F, -11.0F, 3.0F, 3.0F, 2.0F, new CubeDeformation(0.0F)), PartPose.offset(0.0F, -22.0F, 0.0F)); + PartDefinition base = root.addOrReplaceChild("base", CubeListBuilder.create().texOffs(132, 1).addBox(-8.0F, -2.0F, -7.0F, 16.0F, 5.0F, 14.0F, new CubeDeformation(0.0F)) + .texOffs(92, 0).addBox(-5.0F, 0.0F, -10.0F, 10.0F, 14.0F, 20.0F, new CubeDeformation(0.0F)) + .texOffs(70, 0).addBox(-7.0F, 1.0F, -11.0F, 3.0F, 3.0F, 2.0F, new CubeDeformation(0.0F)) + .texOffs(70, 5).addBox(4.0F, 1.0F, -11.0F, 3.0F, 3.0F, 2.0F, new CubeDeformation(0.0F)) + .texOffs(152, 73).addBox(-6.0F, -5.0F, -6.0F, 12.0F, 3.0F, 12.0F, new CubeDeformation(0.0F)), PartPose.offset(0.0F, -22.0F, 0.0F)); - PartDefinition Body = base.addOrReplaceChild("Body", CubeListBuilder.create().texOffs(70, 0).addBox(-9.0F, -18.4F, -8.1F, 3.0F, 3.0F, 2.0F, new CubeDeformation(0.0F)) - .texOffs(70, 5).addBox(-5.0F, -18.4F, -8.1F, 3.0F, 3.0F, 2.0F, new CubeDeformation(0.0F)) - .texOffs(80, 76).addBox(-11.0F, -17.4F, 10.9F, 22.0F, 14.0F, 14.0F, new CubeDeformation(0.0F)) - .texOffs(0, 0).addBox(-12.0F, -15.4F, -11.1F, 24.0F, 16.0F, 22.0F, new CubeDeformation(0.0F)) - .texOffs(0, 38).addBox(-12.0F, -15.4F, -11.1F, 24.0F, 16.0F, 22.0F, new CubeDeformation(0.5F)) - .texOffs(122, 168).addBox(12.0F, -13.4F, -6.1F, 2.0F, 12.0F, 12.0F, new CubeDeformation(0.0F)) - .texOffs(150, 168).addBox(-14.0F, -13.4F, -6.1F, 2.0F, 12.0F, 12.0F, new CubeDeformation(0.0F)) - .texOffs(140, 123).addBox(-7.0F, -2.0F, 10.0F, 15.0F, 5.0F, 5.0F, new CubeDeformation(0.0F)), PartPose.offset(0.0F, -4.6F, 0.1F)); + PartDefinition Body = base.addOrReplaceChild("Body", CubeListBuilder.create().texOffs(70, 0).addBox(-9.0F, -16.4F, -8.1F, 3.0F, 3.0F, 2.0F, new CubeDeformation(0.0F)) + .texOffs(70, 5).addBox(-5.0F, -16.4F, -8.1F, 3.0F, 3.0F, 2.0F, new CubeDeformation(0.0F)) + .texOffs(92, 34).addBox(-11.0F, -15.4F, 10.9F, 22.0F, 14.0F, 14.0F, new CubeDeformation(0.0F)) + .texOffs(0, 0).addBox(-12.0F, -13.4F, -11.1F, 24.0F, 16.0F, 22.0F, new CubeDeformation(0.0F)) + .texOffs(0, 38).addBox(-12.0F, -13.4F, -11.1F, 24.0F, 16.0F, 22.0F, new CubeDeformation(0.5F)) + .texOffs(192, 49).addBox(12.0F, -11.4F, -6.1F, 2.0F, 12.0F, 12.0F, new CubeDeformation(0.0F)) + .texOffs(164, 49).addBox(-14.0F, -11.4F, -6.1F, 2.0F, 12.0F, 12.0F, new CubeDeformation(0.0F)) + .texOffs(92, 62).addBox(-7.0F, 0.0F, 10.0F, 15.0F, 5.0F, 5.0F, new CubeDeformation(0.0F)), PartPose.offset(0.0F, -6.6F, 0.1F)); - PartDefinition cube_r1 = Body.addOrReplaceChild("cube_r1", CubeListBuilder.create().texOffs(178, 168).addBox(0.0F, -18.5F, -1.0F, 0.0F, 19.0F, 2.0F, new CubeDeformation(0.0F)), PartPose.offsetAndRotation(8.0F, -14.9F, 7.9F, -0.1745F, 0.0F, 0.0F)); + PartDefinition cube_r1 = Body.addOrReplaceChild("cube_r1", CubeListBuilder.create().texOffs(80, -2).addBox(0.0F, -18.5F, -1.0F, 0.0F, 19.0F, 2.0F, new CubeDeformation(0.0F)), PartPose.offsetAndRotation(8.0F, -12.9F, 7.9F, -0.1745F, 0.0F, 0.0F)); - PartDefinition Head = Body.addOrReplaceChild("Head", CubeListBuilder.create().texOffs(92, 67).addBox(-4.0F, -3.0F, -1.0F, 7.0F, 3.0F, 3.0F, new CubeDeformation(0.0F)), PartPose.offset(-4.0F, 1.6F, -11.1F)); + PartDefinition Head = Body.addOrReplaceChild("Head", CubeListBuilder.create().texOffs(0, 0).addBox(-4.0F, -1.0F, -1.0F, 7.0F, 3.0F, 3.0F, new CubeDeformation(0.0F)), PartPose.offset(-4.0F, 1.6F, -11.1F)); - PartDefinition rocket = Body.addOrReplaceChild("rocket", CubeListBuilder.create().texOffs(0, 76).addBox(-12.0F, -10.5F, -14.0F, 12.0F, 21.0F, 28.0F, new CubeDeformation(0.0F)), PartPose.offset(-14.0F, -7.9F, -0.1F)); + PartDefinition rocket = Body.addOrReplaceChild("rocket", CubeListBuilder.create().texOffs(164, 0).addBox(-13.0F, -8.5F, -14.0F, 13.0F, 21.0F, 28.0F, new CubeDeformation(0.0F)), PartPose.offset(-14.0F, -7.9F, -0.1F)); - PartDefinition flamethrower = Body.addOrReplaceChild("flamethrower", CubeListBuilder.create().texOffs(44, 168).addBox(-0.25F, -5.2654F, -4.9728F, 10.0F, 10.0F, 10.0F, new CubeDeformation(0.0F)) - .texOffs(92, 0).addBox(2.75F, 1.7346F, -13.9728F, 10.0F, 10.0F, 23.0F, new CubeDeformation(0.0F)) - .texOffs(84, 168).addBox(4.75F, 3.7346F, -26.9728F, 6.0F, 6.0F, 13.0F, new CubeDeformation(0.0F)), PartPose.offset(14.25F, -7.1346F, -0.1272F)); + PartDefinition gun = Body.addOrReplaceChild("gun", CubeListBuilder.create().texOffs(185, 73).addBox(2.0F, -6.0F, -7.0F, 7.0F, 14.0F, 15.0F, new CubeDeformation(0.0F)) + .texOffs(187, 102).addBox(1.0F, -7.0F, -6.0F, 9.0F, 16.0F, 13.0F, new CubeDeformation(-0.6F)) + .texOffs(218, 170).addBox(2.5F, 4.0F, -1.0F, 6.0F, 6.0F, 13.0F, new CubeDeformation(0.0F)) + .texOffs(218, 189).addBox(2.5F, -8.0F, -1.0F, 6.0F, 6.0F, 13.0F, new CubeDeformation(0.0F)) + .texOffs(184, 170).addBox(3.5F, -6.0F, -20.0F, 4.0F, 6.0F, 13.0F, new CubeDeformation(0.0F)) + .texOffs(220, 56).addBox(2.5F, -2.0F, -17.0F, 6.0F, 6.0F, 11.0F, new CubeDeformation(0.0F)) + .texOffs(184, 189).addBox(3.5F, 2.0F, -20.0F, 4.0F, 6.0F, 13.0F, new CubeDeformation(0.0F)) + .texOffs(80, 160).addBox(-6.0F, -5.0F, -5.0F, 10.0F, 10.0F, 10.0F, new CubeDeformation(0.0F)), PartPose.offset(14.0F, -5.5F, 0.0F)); - PartDefinition cube_r2 = flamethrower.addOrReplaceChild("cube_r2", CubeListBuilder.create().texOffs(152, 33).addBox(-4.0F, -4.0F, 0.5F, 8.0F, 8.0F, 15.0F, new CubeDeformation(0.0F)), PartPose.offsetAndRotation(7.75F, 5.7346F, 6.5272F, 0.5236F, 0.0F, 0.0F)); + PartDefinition leg_FL = root.addOrReplaceChild("leg_FL", CubeListBuilder.create().texOffs(45, 76).addBox(-3.561F, -4.2978F, -11.0972F, 7.0F, 9.0F, 13.0F, new CubeDeformation(0.0F)), PartPose.offsetAndRotation(9.5F, -15.5F, -5.5F, 0.9425F, -0.5061F, -0.0349F)); - PartDefinition leg_FL = root.addOrReplaceChild("leg_FL", CubeListBuilder.create().texOffs(80, 104).addBox(-5.5F, -2.5F, -24.5F, 11.0F, 13.0F, 19.0F, new CubeDeformation(0.0F)) - .texOffs(158, 0).addBox(-4.5F, -5.5F, -9.5F, 9.0F, 11.0F, 13.0F, new CubeDeformation(0.0F)), PartPose.offsetAndRotation(9.5F, -13.5F, -6.5F, 0.1571F, -0.5061F, -0.0349F)); + PartDefinition joint0_FL = leg_FL.addOrReplaceChild("joint0_FL", CubeListBuilder.create().texOffs(82, 233).addBox(-3.061F, -9.3731F, -7.1617F, 6.0F, 15.0F, 8.0F, new CubeDeformation(0.0F)), PartPose.offsetAndRotation(0.0F, -3.0F, -8.0F, -0.3054F, 0.0F, 0.0F)); - PartDefinition leg_FR = root.addOrReplaceChild("leg_FR", CubeListBuilder.create().texOffs(0, 125).addBox(-5.5F, -2.5F, -24.5F, 11.0F, 13.0F, 19.0F, new CubeDeformation(0.0F)) - .texOffs(152, 80).addBox(-4.5F, -5.5F, -9.5F, 9.0F, 11.0F, 13.0F, new CubeDeformation(0.0F)), PartPose.offsetAndRotation(-9.5F, -13.5F, -6.5F, 0.1571F, 0.5061F, 0.0349F)); + PartDefinition joint1_FL = joint0_FL.addOrReplaceChild("joint1_FL", CubeListBuilder.create().texOffs(88, 91).addBox(-2.061F, -1.7726F, -14.7213F, 4.0F, 3.0F, 16.0F, new CubeDeformation(0.0F)) + .texOffs(110, 230).addBox(-4.061F, -8.7726F, -15.7213F, 8.0F, 7.0F, 19.0F, new CubeDeformation(0.0F)) + .texOffs(103, 225).addBox(-3.061F, -4.7726F, -15.7213F, 6.0F, 9.0F, 6.0F, new CubeDeformation(0.0F)) + .texOffs(30, 124).addBox(-5.061F, -2.7726F, -25.7213F, 2.0F, 5.0F, 13.0F, new CubeDeformation(0.0F)) + .texOffs(30, 142).addBox(2.939F, -1.7726F, -25.7213F, 2.0F, 5.0F, 13.0F, new CubeDeformation(0.0F)), PartPose.offsetAndRotation(0.0F, -9.0F, -4.0F, 0.1309F, 0.0F, 0.0F)); - PartDefinition leg_BL = root.addOrReplaceChild("leg_BL", CubeListBuilder.create().texOffs(60, 136).addBox(-5.5F, -2.1667F, 5.1667F, 11.0F, 13.0F, 19.0F, new CubeDeformation(0.0F)) - .texOffs(199, 24).addBox(-4.5F, -7.1667F, 13.1667F, 9.0F, 11.0F, 13.0F, new CubeDeformation(0.0F)) - .texOffs(0, 157).addBox(-4.5F, -5.1667F, -3.8333F, 9.0F, 11.0F, 13.0F, new CubeDeformation(0.0F)), PartPose.offsetAndRotation(9.5F, -13.8333F, 6.8333F, -0.1571F, 0.5061F, -0.0349F)); + PartDefinition cube_r2 = joint1_FL.addOrReplaceChild("cube_r2", CubeListBuilder.create().texOffs(24, 184).addBox(-3.939F, 1.6269F, -0.1617F, 7.0F, 10.0F, 5.0F, new CubeDeformation(0.0F)), PartPose.offsetAndRotation(0.5F, -6.5F, -12.0F, -1.9635F, 0.0F, 0.0F)); + + PartDefinition wheelFL = joint1_FL.addOrReplaceChild("wheelFL", CubeListBuilder.create(), PartPose.offset(-0.061F, 0.2274F, -23.7213F)); + + PartDefinition cube_r3 = wheelFL.addOrReplaceChild("cube_r3", CubeListBuilder.create().texOffs(184, 232).addBox(-3.061F, -5.9313F, -7.9979F, 6.0F, 12.0F, 12.0F, new CubeDeformation(0.0F)), PartPose.offsetAndRotation(0.061F, -1.4613F, 1.3641F, 0.7854F, 0.0F, 0.0F)); + + PartDefinition leg_FR = root.addOrReplaceChild("leg_FR", CubeListBuilder.create().texOffs(0, 76).addBox(-3.439F, -4.2978F, -11.0972F, 7.0F, 9.0F, 13.0F, new CubeDeformation(0.0F)), PartPose.offsetAndRotation(-9.5F, -15.5F, -5.5F, 0.9425F, 0.5061F, 0.0349F)); + + PartDefinition joint0_FR = leg_FR.addOrReplaceChild("joint0_FR", CubeListBuilder.create().texOffs(0, 233).addBox(-2.939F, -9.3731F, -7.1617F, 6.0F, 15.0F, 8.0F, new CubeDeformation(0.0F)), PartPose.offsetAndRotation(0.0F, -3.0F, -8.0F, -0.3054F, 0.0F, 0.0F)); + + PartDefinition joint1_FR = joint0_FR.addOrReplaceChild("joint1_FR", CubeListBuilder.create().texOffs(88, 72).addBox(-1.939F, -1.7726F, -14.7213F, 4.0F, 3.0F, 16.0F, new CubeDeformation(0.0F)) + .texOffs(28, 230).addBox(-3.939F, -8.7726F, -15.7213F, 8.0F, 7.0F, 19.0F, new CubeDeformation(0.0F)) + .texOffs(21, 225).addBox(-2.939F, -4.7726F, -15.7213F, 6.0F, 9.0F, 6.0F, new CubeDeformation(0.0F)) + .texOffs(0, 124).addBox(-4.939F, -2.7726F, -25.7213F, 2.0F, 5.0F, 13.0F, new CubeDeformation(0.0F)) + .texOffs(0, 142).addBox(3.061F, -2.7726F, -25.7213F, 2.0F, 5.0F, 13.0F, new CubeDeformation(0.0F)), PartPose.offsetAndRotation(0.0F, -9.0F, -4.0F, 0.1309F, 0.0F, 0.0F)); + + PartDefinition cube_r4 = joint1_FR.addOrReplaceChild("cube_r4", CubeListBuilder.create().texOffs(24, 184).addBox(-3.939F, 1.6269F, -0.1617F, 7.0F, 10.0F, 5.0F, new CubeDeformation(0.0F)), PartPose.offsetAndRotation(0.5F, -6.5F, -12.0F, -1.9635F, 0.0F, 0.0F)); + + PartDefinition wheelFR = joint1_FR.addOrReplaceChild("wheelFR", CubeListBuilder.create(), PartPose.offset(0.061F, 0.2274F, -23.7213F)); + + PartDefinition cube_r5 = wheelFR.addOrReplaceChild("cube_r5", CubeListBuilder.create().texOffs(220, 232).addBox(-2.939F, -5.9313F, -7.9979F, 6.0F, 12.0F, 12.0F, new CubeDeformation(0.0F)), PartPose.offsetAndRotation(-0.061F, -1.4613F, 1.3641F, 0.7854F, 0.0F, 0.0F)); + + PartDefinition leg_BL = root.addOrReplaceChild("leg_BL", CubeListBuilder.create().texOffs(45, 100).addBox(-3.561F, -3.9644F, -2.2362F, 7.0F, 9.0F, 13.0F, new CubeDeformation(0.0F)), PartPose.offsetAndRotation(9.5F, -15.8333F, 5.8333F, -0.9425F, 0.5061F, -0.0349F)); + + PartDefinition joint0_BL = leg_BL.addOrReplaceChild("joint0_BL", CubeListBuilder.create().texOffs(0, 202).addBox(-3.061F, -9.0749F, -0.7948F, 6.0F, 15.0F, 8.0F, new CubeDeformation(0.0F)), PartPose.offsetAndRotation(0.0F, -2.6667F, 7.6667F, 0.3491F, 0.0F, 0.0F)); + + PartDefinition joint1_BL = joint0_BL.addOrReplaceChild("joint1_BL", CubeListBuilder.create().texOffs(128, 72).addBox(-1.939F, -1.7726F, -14.7213F, 4.0F, 3.0F, 16.0F, new CubeDeformation(0.0F)) + .texOffs(28, 199).addBox(-3.939F, -8.7726F, -15.7213F, 8.0F, 7.0F, 19.0F, new CubeDeformation(0.0F)) + .texOffs(0, 187).addBox(-2.939F, -4.8726F, -15.7213F, 6.0F, 9.0F, 6.0F, new CubeDeformation(0.0F)) + .texOffs(60, 124).addBox(-4.939F, -2.7726F, -25.7213F, 2.0F, 5.0F, 13.0F, new CubeDeformation(0.0F)) + .texOffs(60, 142).addBox(3.061F, -2.8726F, -25.7213F, 2.0F, 5.0F, 13.0F, new CubeDeformation(0.0F)), PartPose.offsetAndRotation(0.0F, -8.7509F, 4.1156F, -2.9671F, 0.0F, -3.1416F)); + + PartDefinition thruster_r1 = joint1_BL.addOrReplaceChild("thruster_r1", CubeListBuilder.create().texOffs(0, 160).addBox(0.0F, -9.0F, -14.0F, 7.0F, 11.0F, 13.0F, new CubeDeformation(0.0F)), PartPose.offsetAndRotation(-3.5F, -2.7491F, -3.6156F, -0.7418F, 0.0F, 0.0F)); + + PartDefinition cube_r6 = joint1_BL.addOrReplaceChild("cube_r6", CubeListBuilder.create().texOffs(48, 184).addBox(-3.939F, 1.6269F, -0.1617F, 7.0F, 10.0F, 5.0F, new CubeDeformation(0.0F)), PartPose.offsetAndRotation(0.5F, -6.7491F, -26.1156F, 1.1781F, 0.0F, 0.0F)); + + PartDefinition wheelBL = joint1_BL.addOrReplaceChild("wheelBL", CubeListBuilder.create(), PartPose.offset(0.061F, 0.2274F, -22.7213F)); + + PartDefinition cube_r7 = wheelBL.addOrReplaceChild("cube_r7", CubeListBuilder.create().texOffs(184, 208).addBox(-2.939F, -5.9313F, -7.9979F, 6.0F, 12.0F, 12.0F, new CubeDeformation(0.0F)), PartPose.offsetAndRotation(-0.061F, -1.4613F, 1.3641F, 0.7854F, 0.0F, 0.0F)); + + PartDefinition leg_BR = root.addOrReplaceChild("leg_BR", CubeListBuilder.create().texOffs(1, 100).addBox(-3.439F, -3.9644F, -1.5695F, 7.0F, 9.0F, 13.0F, new CubeDeformation(0.0F)), PartPose.offsetAndRotation(-9.5F, -15.8333F, 5.1667F, -0.9425F, -0.5061F, 0.0349F)); + + PartDefinition joint0_BR = leg_BR.addOrReplaceChild("joint0_BR", CubeListBuilder.create().texOffs(82, 202).addBox(-2.939F, -9.0749F, -0.7948F, 6.0F, 15.0F, 8.0F, new CubeDeformation(0.0F)), PartPose.offsetAndRotation(0.0F, -2.6667F, 8.3333F, 0.3491F, 0.0F, 0.0F)); + + PartDefinition joint1_BR = joint0_BR.addOrReplaceChild("joint1_BR", CubeListBuilder.create().texOffs(128, 91).addBox(-2.061F, -1.7726F, -14.7213F, 4.0F, 3.0F, 16.0F, new CubeDeformation(0.0F)) + .texOffs(110, 199).addBox(-4.061F, -8.7726F, -15.7213F, 8.0F, 7.0F, 19.0F, new CubeDeformation(0.0F)) + .texOffs(83, 187).addBox(-3.061F, -4.7726F, -15.7213F, 6.0F, 9.0F, 6.0F, new CubeDeformation(0.0F)) + .texOffs(90, 124).addBox(-5.061F, -2.7726F, -25.7213F, 2.0F, 5.0F, 13.0F, new CubeDeformation(0.0F)) + .texOffs(90, 142).addBox(2.939F, -2.7726F, -25.7213F, 2.0F, 5.0F, 13.0F, new CubeDeformation(0.0F)), PartPose.offsetAndRotation(0.0F, -8.7509F, 4.1156F, -2.9671F, 0.0F, -3.1416F)); + + PartDefinition thruster_r2 = joint1_BR.addOrReplaceChild("thruster_r2", CubeListBuilder.create().texOffs(40, 160).addBox(0.0F, -9.0F, -14.0F, 7.0F, 11.0F, 13.0F, new CubeDeformation(0.0F)), PartPose.offsetAndRotation(-3.5F, -2.7491F, -3.6156F, -0.7418F, 0.0F, 0.0F)); + + PartDefinition cube_r8 = joint1_BR.addOrReplaceChild("cube_r8", CubeListBuilder.create().texOffs(48, 184).addBox(-3.939F, 1.6269F, -0.1617F, 7.0F, 10.0F, 5.0F, new CubeDeformation(0.0F)), PartPose.offsetAndRotation(0.5F, -6.7491F, -26.1156F, 1.1781F, 0.0F, 0.0F)); + + PartDefinition wheelBR = joint1_BR.addOrReplaceChild("wheelBR", CubeListBuilder.create(), PartPose.offset(-0.061F, 0.2274F, -23.7213F)); + + PartDefinition cube_r9 = wheelBR.addOrReplaceChild("cube_r9", CubeListBuilder.create().texOffs(220, 208).addBox(-3.061F, -5.9313F, -7.9979F, 6.0F, 12.0F, 12.0F, new CubeDeformation(0.0F)), PartPose.offsetAndRotation(0.061F, -1.4613F, 1.3641F, 0.7854F, 0.0F, 0.0F)); - PartDefinition leg_BR = root.addOrReplaceChild("leg_BR", CubeListBuilder.create().texOffs(152, 56).addBox(-4.5F, -5.1667F, -3.1667F, 9.0F, 11.0F, 13.0F, new CubeDeformation(0.0F)) - .texOffs(120, 136).addBox(-5.5F, -2.1667F, 5.8333F, 11.0F, 13.0F, 19.0F, new CubeDeformation(0.0F)) - .texOffs(202, 0).addBox(-4.5F, -7.1667F, 13.8333F, 9.0F, 11.0F, 13.0F, new CubeDeformation(0.0F)), PartPose.offsetAndRotation(-9.5F, -13.8333F, 6.1667F, -0.1571F, -0.5061F, 0.0349F)); model = null; return def = LayerDefinition.create(meshdefinition, 256, 256); @@ -89,25 +148,25 @@ public class EnforcerModel { private final ModelPart Body; private final ModelPart Head; private final ModelPart rocket; - private final ModelPart flamethrower; + private final ModelPart gun; public EnforcerHierarchicalModel(ModelPart root) { this.root = root.getChild("root"); this.base = this.root.getChild("base"); this.Body = this.base.getChild("Body"); this.Head = this.Body.getChild("Head"); this.rocket = this.Body.getChild("rocket"); - this.flamethrower = this.Body.getChild("flamethrower"); + this.gun = this.Body.getChild("gun"); } @Override public void setupAnim(@NotNull T entity, float limbSwing, float limbSwingAmount, float ageInTicks, float netHeadYaw, float headPitch) { this.root().getAllParts().forEach(ModelPart::resetPose); - this.Body.getChild("Head").xRot = headPitch * ((float) Math.PI / 180F); - this.base.getChild("Body").yRot = netHeadYaw * ((float) Math.PI / 180F); + this.Head.xRot = headPitch * ((float) Math.PI / 180F); + this.Body.yRot = netHeadYaw * ((float) Math.PI / 180F); - this.Body.getChild("rocket").xRot = headPitch * ((float) Math.PI / 180F); - this.Body.getChild("flamethrower").xRot = headPitch * ((float) Math.PI / 180F); + this.rocket.xRot = headPitch * ((float) Math.PI / 180F); + this.gun.xRot = headPitch * ((float) Math.PI / 180F); //this.animate(entity.getChargeState(), EnforcerAnimation.CHARGE, ageInTicks, 1.0F); diff --git a/src/main/kotlin/ru/dbotthepony/mc/otm/client/render/entity/DroneRenderer.kt b/src/main/kotlin/ru/dbotthepony/mc/otm/client/render/entity/DroneRenderer.kt new file mode 100644 index 000000000..5b2aba065 --- /dev/null +++ b/src/main/kotlin/ru/dbotthepony/mc/otm/client/render/entity/DroneRenderer.kt @@ -0,0 +1,58 @@ +package ru.dbotthepony.mc.otm.client.render.entity + +import com.mojang.blaze3d.vertex.PoseStack +import net.minecraft.client.model.HierarchicalModel +import net.minecraft.client.renderer.MultiBufferSource +import net.minecraft.client.renderer.RenderType +import net.minecraft.client.renderer.entity.EntityRendererProvider +import net.minecraft.client.renderer.entity.MobRenderer +import net.minecraft.client.renderer.entity.layers.RenderLayer +import net.minecraft.client.renderer.texture.OverlayTexture +import net.minecraft.resources.ResourceLocation +import ru.dbotthepony.mc.otm.OverdriveThatMatters.loc +import ru.dbotthepony.mc.otm.client.model.entity.DroneModel +import ru.dbotthepony.mc.otm.entity.Drone + +class DroneRenderer(context: EntityRendererProvider.Context) + : MobRenderer>(context, DroneModel.getModel(), 0.8f) { + override fun getTextureLocation(entity: Drone): ResourceLocation = TEXTURE_LOCATION + + init { + this.addLayer(DroneEmissiveLayer(this, model)) + } + + companion object { + private val TEXTURE_LOCATION = loc("textures/entity/drone.png") + } +} + +class DroneEmissiveLayer( + entityRenderer: DroneRenderer, + model: HierarchicalModel +) : RenderLayer>(entityRenderer) { + + private val emissive = loc("textures/entity/drone_emissive.png") + + + override fun render( + poseStack: PoseStack, + bufferSource: MultiBufferSource, + packedLight: Int, + entity: Drone, + limbSwing: Float, + limbSwingAmount: Float, + partialTicks: Float, + ageInTicks: Float, + netHeadYaw: Float, + headPitch: Float + ) { + val buffer = bufferSource.getBuffer(RenderType.eyes(emissive)) + + this.parentModel.renderToBuffer( + poseStack, + buffer, + 15728640, + OverlayTexture.NO_OVERLAY + ) + } +} diff --git a/src/main/kotlin/ru/dbotthepony/mc/otm/client/render/entity/EnforcerRenderer.kt b/src/main/kotlin/ru/dbotthepony/mc/otm/client/render/entity/EnforcerRenderer.kt index fc37ec67a..8908136a7 100644 --- a/src/main/kotlin/ru/dbotthepony/mc/otm/client/render/entity/EnforcerRenderer.kt +++ b/src/main/kotlin/ru/dbotthepony/mc/otm/client/render/entity/EnforcerRenderer.kt @@ -9,7 +9,6 @@ import net.minecraft.client.renderer.entity.MobRenderer import net.minecraft.client.renderer.entity.layers.RenderLayer import net.minecraft.client.renderer.texture.OverlayTexture import net.minecraft.resources.ResourceLocation -import ru.dbotthepony.mc.otm.OverdriveThatMatters import ru.dbotthepony.mc.otm.OverdriveThatMatters.loc import ru.dbotthepony.mc.otm.client.model.entity.EnforcerModel import ru.dbotthepony.mc.otm.entity.Enforcer diff --git a/src/main/kotlin/ru/dbotthepony/mc/otm/client/render/entity/LoaderRenderer.kt b/src/main/kotlin/ru/dbotthepony/mc/otm/client/render/entity/LoaderRenderer.kt index 360c49274..4636d3218 100644 --- a/src/main/kotlin/ru/dbotthepony/mc/otm/client/render/entity/LoaderRenderer.kt +++ b/src/main/kotlin/ru/dbotthepony/mc/otm/client/render/entity/LoaderRenderer.kt @@ -1,8 +1,13 @@ package ru.dbotthepony.mc.otm.client.render.entity +import com.mojang.blaze3d.vertex.PoseStack import net.minecraft.client.model.HierarchicalModel +import net.minecraft.client.renderer.MultiBufferSource +import net.minecraft.client.renderer.RenderType import net.minecraft.client.renderer.entity.EntityRendererProvider import net.minecraft.client.renderer.entity.MobRenderer +import net.minecraft.client.renderer.entity.layers.RenderLayer +import net.minecraft.client.renderer.texture.OverlayTexture import net.minecraft.resources.ResourceLocation import ru.dbotthepony.mc.otm.OverdriveThatMatters.loc import ru.dbotthepony.mc.otm.client.model.entity.LoaderModel @@ -12,7 +17,42 @@ class LoaderRenderer(context: EntityRendererProvider.Context) : MobRenderer>(context, LoaderModel.getModel(), 0.8f) { override fun getTextureLocation(entity: Loader): ResourceLocation = TEXTURE_LOCATION + init { + this.addLayer(LoaderEmissiveLayer(this, model)) + } + companion object { private val TEXTURE_LOCATION = loc("textures/entity/loader.png") } } + +class LoaderEmissiveLayer( + entityRenderer: LoaderRenderer, + model: HierarchicalModel +) : RenderLayer>(entityRenderer) { + + private val emissive = loc("textures/entity/loader_emissive.png") + + + override fun render( + poseStack: PoseStack, + bufferSource: MultiBufferSource, + packedLight: Int, + entity: Loader, + limbSwing: Float, + limbSwingAmount: Float, + partialTicks: Float, + ageInTicks: Float, + netHeadYaw: Float, + headPitch: Float + ) { + val buffer = bufferSource.getBuffer(RenderType.eyes(emissive)) + + this.parentModel.renderToBuffer( + poseStack, + buffer, + 15728640, + OverlayTexture.NO_OVERLAY + ) + } +} diff --git a/src/main/kotlin/ru/dbotthepony/mc/otm/entity/AndroidMelee.kt b/src/main/kotlin/ru/dbotthepony/mc/otm/entity/AndroidMelee.kt index ae69b5cea..1c65d060c 100644 --- a/src/main/kotlin/ru/dbotthepony/mc/otm/entity/AndroidMelee.kt +++ b/src/main/kotlin/ru/dbotthepony/mc/otm/entity/AndroidMelee.kt @@ -73,6 +73,7 @@ class AndroidMelee(type: EntityType, level: Level) : Monster(type, return createMonsterAttributes() .add(Attributes.MAX_HEALTH, 30.0) .add(Attributes.ARMOR, 4.0) + .add(Attributes.ARMOR_TOUGHNESS, 2.0) .add(Attributes.SCALE, 1.1) .add(Attributes.MOVEMENT_SPEED, 0.3) .add(Attributes.ATTACK_DAMAGE, 4.0) diff --git a/src/main/kotlin/ru/dbotthepony/mc/otm/entity/BreadMonster.kt b/src/main/kotlin/ru/dbotthepony/mc/otm/entity/BreadMonster.kt index 1303709cd..4146fa24b 100644 --- a/src/main/kotlin/ru/dbotthepony/mc/otm/entity/BreadMonster.kt +++ b/src/main/kotlin/ru/dbotthepony/mc/otm/entity/BreadMonster.kt @@ -14,11 +14,7 @@ import net.minecraft.world.entity.ai.goal.target.HurtByTargetGoal import net.minecraft.world.entity.ai.goal.target.NearestAttackableTargetGoal import net.minecraft.world.entity.ai.navigation.GroundPathNavigation import net.minecraft.world.entity.ai.navigation.PathNavigation -import net.minecraft.world.entity.monster.AbstractIllager -import net.minecraft.world.entity.monster.AbstractSkeleton import net.minecraft.world.entity.monster.Monster -import net.minecraft.world.entity.monster.Zombie -import net.minecraft.world.entity.npc.Villager import net.minecraft.world.entity.player.Player import net.minecraft.world.level.Level import ru.dbotthepony.mc.otm.registry.game.MEntityTypes diff --git a/src/main/kotlin/ru/dbotthepony/mc/otm/entity/Drone.kt b/src/main/kotlin/ru/dbotthepony/mc/otm/entity/Drone.kt new file mode 100644 index 000000000..0f65b3a14 --- /dev/null +++ b/src/main/kotlin/ru/dbotthepony/mc/otm/entity/Drone.kt @@ -0,0 +1,114 @@ +package ru.dbotthepony.mc.otm.entity +import net.minecraft.sounds.SoundEvent +import net.minecraft.sounds.SoundEvents +import net.minecraft.world.entity.* +import net.minecraft.world.entity.ai.attributes.AttributeSupplier +import net.minecraft.world.entity.ai.attributes.Attributes +import net.minecraft.world.entity.ai.control.MoveControl +import net.minecraft.world.entity.ai.goal.* +import net.minecraft.world.entity.ai.goal.target.HurtByTargetGoal +import net.minecraft.world.entity.ai.goal.target.NearestAttackableTargetGoal +import net.minecraft.world.entity.ai.navigation.FlyingPathNavigation +import net.minecraft.world.entity.ai.navigation.PathNavigation +import net.minecraft.world.entity.monster.Monster +import net.minecraft.world.entity.player.Player +import net.minecraft.world.level.Level +import net.minecraft.world.phys.Vec3 +import ru.dbotthepony.mc.otm.registry.game.MEntityTypes +import java.util.* +import kotlin.math.cos +import kotlin.math.sin + +class Drone(type: EntityType, level: Level) : Monster(type, level) { + constructor(level: Level) : this(MEntityTypes.DRONE, level) + + var attackTarget: LivingEntity? = null + var attackTime = 0 + var attackDuration = 40 + + val idleState = AnimationState() + + override fun createNavigation(level: Level): PathNavigation = FlyingPathNavigation(this, level()) + + init { + idleState.start(tickCount) + this.isNoGravity = true + } + + override fun registerGoals() { + goalSelector.addGoal(8, RandomLookAroundGoal(this)) + + goalSelector.addGoal(8, LookAtPlayerGoal(this, Player::class.java, 12f)) + + goalSelector.addGoal(3, NearestAttackableTargetGoal(this, Player::class.java , true, true)) + + goalSelector.addGoal(2, DroneBeamAttackGoal(this)) + + targetSelector.addGoal(1, HurtByTargetGoal(this)) + } + + + override fun getHurtSound(damageSource: net.minecraft.world.damagesource.DamageSource): SoundEvent { + return SoundEvents.HEAVY_CORE_BREAK + } + + override fun getDeathSound(): SoundEvent { + return SoundEvents.VAULT_BREAK + } + + //essentially same attack as guardians + //probably needs to render a beam too + class DroneBeamAttackGoal(private val mob: Drone) : Goal() { + private var attackCooldown = 0 + + override fun canUse(): Boolean { + val target = mob.target + return target != null && mob.distanceToSqr(target) < 100 + } + + override fun start() { + mob.attackTarget = mob.target + mob.attackTime = 0 + } + + override fun stop() { + mob.attackTarget = null + mob.attackTime = 0 + } + + override fun tick() { + val target = mob.attackTarget ?: return + + mob.lookAt(target, 30.0f, 30.0f) + + if (mob.attackTime < mob.attackDuration) { + mob.attackTime++ + if (mob.attackTime == mob.attackDuration / 2) { + mob.playSound(SoundEvents.GUARDIAN_ATTACK, 1.0f, 1.0f) + } + } else { + val direction = Vec3(target.x - mob.x, target.eyeY - mob.eyeY, target.z - mob.z).normalize() + target.hurt(mob.damageSources().magic(), 6.0f) + + mob.attackTime = 0 + attackCooldown = 60 + } + + if (attackCooldown > 0) { + attackCooldown-- + } + } + } + + companion object { + fun createAttributes() : AttributeSupplier.Builder { + return createMonsterAttributes() + .add(Attributes.MAX_HEALTH, 10.0) + .add(Attributes.MOVEMENT_SPEED, 0.4) + .add(Attributes.ATTACK_DAMAGE, 3.0) + .add(Attributes.GRAVITY, 0.0) + .add(Attributes.KNOCKBACK_RESISTANCE, 0.4) + .add(Attributes.FALL_DAMAGE_MULTIPLIER, 0.0) + } + } +} diff --git a/src/main/kotlin/ru/dbotthepony/mc/otm/entity/Enforcer.kt b/src/main/kotlin/ru/dbotthepony/mc/otm/entity/Enforcer.kt index 2b2b15835..54a71a88e 100644 --- a/src/main/kotlin/ru/dbotthepony/mc/otm/entity/Enforcer.kt +++ b/src/main/kotlin/ru/dbotthepony/mc/otm/entity/Enforcer.kt @@ -48,6 +48,7 @@ class Enforcer(type: EntityType, level: Level) : Monster(type,level) { init { idleState.start(tickCount) + this.setPersistenceRequired() } companion object { @@ -55,6 +56,7 @@ class Enforcer(type: EntityType, level: Level) : Monster(type,level) { return createMonsterAttributes() .add(Attributes.MAX_HEALTH, 300.0) .add(Attributes.ARMOR, 20.0) + .add(Attributes.ARMOR_TOUGHNESS, 6.0) .add(Attributes.MOVEMENT_SPEED, 0.3) .add(Attributes.STEP_HEIGHT, 1.0) .add(Attributes.KNOCKBACK_RESISTANCE, 1.0) @@ -143,13 +145,13 @@ class Enforcer(type: EntityType, level: Level) : Monster(type,level) { private fun shootFireball(math: Float) { if (level().isClientSide) return - val offset_dist = 1.4 + val offset_dist = 1.2 val viewVector = this.getViewVector(1.0F).normalize() val leftVec = Vec3(viewVector.z, 0.0, -viewVector.x).normalize().scale(offset_dist) val gun_x = x + leftVec.x val gun_z = z + leftVec.z - val gun_y = y + 1.2 + val gun_y = y + 2.2 //stfu idea i like my underscores @@ -168,6 +170,9 @@ class Enforcer(type: EntityType, level: Level) : Monster(type,level) { private fun shootMissile(math: Float) { if (level().isClientSide) return + //idea: make it fire 3 rockets that fall onto the ground instead of just straight/homing missiles/rockets + //TODO + val offset_dist = 1.4 val viewVector = this.getViewVector(1.0F).normalize() val leftVec = Vec3(-viewVector.z, 0.0, viewVector.x).normalize().scale(offset_dist) @@ -242,7 +247,7 @@ class Enforcer(type: EntityType, level: Level) : Monster(type,level) { val leftPartic_x = mob.x - mob.lookAngle.x * 2 - 0.8f * mob.lookAngle.z val rightPartic_x = mob.x - mob.lookAngle.x * 2 + 0.8f * mob.lookAngle.z - val smoke_y = mob.y + 0.6f + val smoke_y = mob.y + 1.6f val leftPartic_z = mob.z - mob.lookAngle.z * 2 + 0.8f * mob.lookAngle.x val rightPartic_z = mob.z - mob.lookAngle.z * 2 - 0.8f * mob.lookAngle.x @@ -399,7 +404,7 @@ class Enforcer(type: EntityType, level: Level) : Monster(type,level) { } companion object { - private val SHOOT_AT = intArrayOf(5, 10, 15) + private val SHOOT_AT = intArrayOf(5, 7, 9) private const val MIN_COOLDOWN = 5 private const val MAX_COOLDOWN = 15 private const val CYCLE_LENGTH = 20 diff --git a/src/main/kotlin/ru/dbotthepony/mc/otm/registry/MNames.kt b/src/main/kotlin/ru/dbotthepony/mc/otm/registry/MNames.kt index b44ceaaee..8449119e4 100644 --- a/src/main/kotlin/ru/dbotthepony/mc/otm/registry/MNames.kt +++ b/src/main/kotlin/ru/dbotthepony/mc/otm/registry/MNames.kt @@ -344,6 +344,7 @@ object MNames { const val BREAD_MONSTER = "bread_monster" const val LOADER = "loader" const val CLEANER = "cleaner" + const val DRONE = "drone" const val ANDROID_MELEE = "android_melee" const val ANDROID_RANGED = "android_ranged" diff --git a/src/main/kotlin/ru/dbotthepony/mc/otm/registry/game/MEntityTypes.kt b/src/main/kotlin/ru/dbotthepony/mc/otm/registry/game/MEntityTypes.kt index e092496f2..16f23debb 100644 --- a/src/main/kotlin/ru/dbotthepony/mc/otm/registry/game/MEntityTypes.kt +++ b/src/main/kotlin/ru/dbotthepony/mc/otm/registry/game/MEntityTypes.kt @@ -60,6 +60,15 @@ object MEntityTypes { .build(MNames.CLEANER) } + val DRONE: EntityType by registry.register(MNames.DRONE) { + EntityType.Builder.of(::Drone, MobCategory.MONSTER) + .sized(0.8f, 0.8f) + .eyeHeight(0.3f) + .passengerAttachments(0.8f) + .clientTrackingRange(8) + .build(MNames.DRONE) + } + val LOADER: EntityType by registry.register(MNames.LOADER) { EntityType.Builder.of(::Loader, MobCategory.MONSTER) .sized(1.2f, 2.5f) @@ -80,9 +89,9 @@ object MEntityTypes { val ENFORCER: EntityType by registry.register(MNames.ENFORCER) { EntityType.Builder.of(::Enforcer, MobCategory.MONSTER) - .sized(2.4f, 2.5f) + .sized(2.4f, 3f) .eyeHeight(2.0f) - .passengerAttachments(2.5f) + .passengerAttachments(3f) .clientTrackingRange(12) .fireImmune() .build(MNames.ENFORCER) @@ -103,6 +112,7 @@ object MEntityTypes { event.put(ENFORCER, Enforcer.createAttributes().build()) event.put(CLEANER, Cleaner.createAttributes().build()) + event.put(DRONE, Drone.createAttributes().build()) } @Suppress("unchecked_cast") @@ -119,6 +129,7 @@ object MEntityTypes { EntityRenderers.register(LOADER, ::LoaderRenderer) EntityRenderers.register(CLEANER, ::CleanerRenderer) + EntityRenderers.register(DRONE, ::DroneRenderer) EntityRenderers.register(ENFORCER, ::EnforcerRenderer) diff --git a/src/main/resources/assets/overdrive_that_matters/sounds/entity/drone/drone_ambient_0.ogg b/src/main/resources/assets/overdrive_that_matters/sounds/entity/drone/drone_ambient_0.ogg new file mode 100644 index 000000000..4dbefd0a1 Binary files /dev/null and b/src/main/resources/assets/overdrive_that_matters/sounds/entity/drone/drone_ambient_0.ogg differ diff --git a/src/main/resources/assets/overdrive_that_matters/sounds/entity/drone/drone_ambient_1.ogg b/src/main/resources/assets/overdrive_that_matters/sounds/entity/drone/drone_ambient_1.ogg new file mode 100644 index 000000000..7bbedc5df Binary files /dev/null and b/src/main/resources/assets/overdrive_that_matters/sounds/entity/drone/drone_ambient_1.ogg differ diff --git a/src/main/resources/assets/overdrive_that_matters/sounds/entity/drone/drone_ambient_2.ogg b/src/main/resources/assets/overdrive_that_matters/sounds/entity/drone/drone_ambient_2.ogg new file mode 100644 index 000000000..4508ab175 Binary files /dev/null and b/src/main/resources/assets/overdrive_that_matters/sounds/entity/drone/drone_ambient_2.ogg differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/entity/android/melee_emissive.png b/src/main/resources/assets/overdrive_that_matters/textures/entity/android/melee_emissive.png new file mode 100644 index 000000000..4de2b0ff5 Binary files /dev/null and b/src/main/resources/assets/overdrive_that_matters/textures/entity/android/melee_emissive.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/entity/android/ranged_emissive.png b/src/main/resources/assets/overdrive_that_matters/textures/entity/android/ranged_emissive.png new file mode 100644 index 000000000..e2ac522c4 Binary files /dev/null and b/src/main/resources/assets/overdrive_that_matters/textures/entity/android/ranged_emissive.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/entity/drone.png b/src/main/resources/assets/overdrive_that_matters/textures/entity/drone.png new file mode 100644 index 000000000..ef553d0ed Binary files /dev/null and b/src/main/resources/assets/overdrive_that_matters/textures/entity/drone.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/entity/drone_emissive.png b/src/main/resources/assets/overdrive_that_matters/textures/entity/drone_emissive.png new file mode 100644 index 000000000..396ae4705 Binary files /dev/null and b/src/main/resources/assets/overdrive_that_matters/textures/entity/drone_emissive.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/entity/enforcer.png b/src/main/resources/assets/overdrive_that_matters/textures/entity/enforcer.png index 58a697fb4..595662a0a 100644 Binary files a/src/main/resources/assets/overdrive_that_matters/textures/entity/enforcer.png and b/src/main/resources/assets/overdrive_that_matters/textures/entity/enforcer.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/entity/enforcer_emissive.png b/src/main/resources/assets/overdrive_that_matters/textures/entity/enforcer_emissive.png index 000abb39b..66645f41c 100644 Binary files a/src/main/resources/assets/overdrive_that_matters/textures/entity/enforcer_emissive.png and b/src/main/resources/assets/overdrive_that_matters/textures/entity/enforcer_emissive.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/entity/enforcer_old.png b/src/main/resources/assets/overdrive_that_matters/textures/entity/enforcer_old.png new file mode 100644 index 000000000..c5e3e806a Binary files /dev/null and b/src/main/resources/assets/overdrive_that_matters/textures/entity/enforcer_old.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/entity/loader.png b/src/main/resources/assets/overdrive_that_matters/textures/entity/loader.png index 7c2bc4a92..6c0d534f7 100644 Binary files a/src/main/resources/assets/overdrive_that_matters/textures/entity/loader.png and b/src/main/resources/assets/overdrive_that_matters/textures/entity/loader.png differ diff --git a/src/main/resources/assets/overdrive_that_matters/textures/entity/loader_emissive.png b/src/main/resources/assets/overdrive_that_matters/textures/entity/loader_emissive.png new file mode 100644 index 000000000..f4595d386 Binary files /dev/null and b/src/main/resources/assets/overdrive_that_matters/textures/entity/loader_emissive.png differ