From 4e8912967608965a9cb13ea2d9950ddcc5258ab1 Mon Sep 17 00:00:00 2001 From: Hell13Cat <46496367+Hell13Cat@users.noreply.github.com> Date: Mon, 7 Feb 2022 22:58:00 +0300 Subject: [PATCH] =?UTF-8?q?=D0=9D=D0=BE=D0=B2=D1=8B=D0=B9=20=D0=BC=D0=BE?= =?UTF-8?q?=D0=B1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- behavior_pack/entities/imoo_sfw.json | 158 ++++++++++++++++++ .../loot_tables/entities/imoo_sfw.json | 30 ++++ behavior_pack/manifest.json | 6 +- behavior_pack/spawn_rules/imoo_sfw.json | 31 ++++ .../silverfish.animation_controllers.json | 13 ++ .../animations/silverfish.animation.json | 38 +++++ resource_pack/entity/silverfish.entity.json | 29 ++++ resource_pack/manifest.json | 6 +- resource_pack/models/entity/imoo_sfw.geo.json | 91 ++++++++++ resource_pack/particles/silverfish_grief.json | 59 +++++++ .../silverfish.render_controllers.json | 26 +++ resource_pack/texts/en_US.lang | 4 +- resource_pack/texts/ru_RU.lang | 4 +- resource_pack/textures/entity/imoo_sfw.png | Bin 0 -> 358 bytes resource_pack/textures/item_texture.json | 3 +- .../textures/items/mob/imoo_egg_sfw.png | Bin 0 -> 330 bytes 16 files changed, 489 insertions(+), 9 deletions(-) create mode 100644 behavior_pack/entities/imoo_sfw.json create mode 100644 behavior_pack/loot_tables/entities/imoo_sfw.json create mode 100644 behavior_pack/spawn_rules/imoo_sfw.json create mode 100644 resource_pack/animation_controllers/silverfish.animation_controllers.json create mode 100644 resource_pack/animations/silverfish.animation.json create mode 100644 resource_pack/entity/silverfish.entity.json create mode 100644 resource_pack/models/entity/imoo_sfw.geo.json create mode 100644 resource_pack/particles/silverfish_grief.json create mode 100644 resource_pack/render_controllers/silverfish.render_controllers.json create mode 100644 resource_pack/textures/entity/imoo_sfw.png create mode 100644 resource_pack/textures/items/mob/imoo_egg_sfw.png diff --git a/behavior_pack/entities/imoo_sfw.json b/behavior_pack/entities/imoo_sfw.json new file mode 100644 index 0000000..615f24e --- /dev/null +++ b/behavior_pack/entities/imoo_sfw.json @@ -0,0 +1,158 @@ +{ + "format_version": "1.17.10", + "minecraft:entity": { + "description": { + "identifier": "imoo:sfw", + "is_spawnable": true, + "is_summonable": true, + "is_experimental": false + }, + + "component_groups": { + "minecraft:silverfish_calm": { + "minecraft:on_target_acquired" : { + "event": "minecraft:become_angry", + "target": "self" + } + }, + "minecraft:silverfish_angry": { + "minecraft:angry": { + "duration": -1, + "broadcast_anger": true, + "broadcast_range": 20, + "calm_event": { + "event": "minecraft:on_calm", + "target": "self" + } + }, + "minecraft:behavior.melee_attack": { + "priority": 1, + "track_target": true + }, + "minecraft:behavior.silverfish_wake_up_friends": { + "priority": 1 + } + } + }, + + "components": { + "minecraft:is_hidden_when_invisible": { + }, + "minecraft:experience_reward": { + "on_death": "query.last_hit_by_player ? 5 : 0" + }, + "minecraft:type_family": { + "family":["lightweight", "mob", "arthropod" ] + }, + "minecraft:breathable": { + "total_supply": 15, + "suffocate_time": 0 + }, + "minecraft:nameable": { + }, + "minecraft:loot": { + "table": "loot_tables/entities/imoo_sfw.json" + }, + "minecraft:health": { + "value": 4, + "max": 4 + }, + "minecraft:hurt_on_condition": { + "damage_conditions": [ + { + "filters": { "test": "in_lava", "subject": "self", "operator": "==", "value": true }, + "cause": "lava", + "damage_per_tick": 4 + } + ] + }, + "minecraft:movement": { + "value": 0.25 + }, + "minecraft:navigation.walk": { + "can_path_over_water": true + }, + "minecraft:movement.basic": { + }, + "minecraft:jump.static": { + }, + "minecraft:can_climb": { + }, + "minecraft:attack": { + "damage": 1 + }, + "minecraft:collision_box": { + "width": 0.4, + "height": 0.3 + }, + "minecraft:despawn": { + "despawn_from_distance": {} + }, + "minecraft:behavior.float": { + "priority": 1 + }, + "minecraft:behavior.silverfish_merge_with_stone": { + "priority": 5 + }, + "minecraft:behavior.nearest_attackable_target": { + "priority": 1, + "attack_interval": 10, + "entity_types": [ + { + "filters": { + "any_of": [ + { "test" : "is_family", "subject" : "other", "value" : "sheep"} + ] + }, + "max_dist": 4 + } + ] + }, + "minecraft:behavior.hurt_by_target": { + "priority": 1, + "alert_same_type": true + }, + "minecraft:physics": { + }, + "minecraft:pushable": { + "is_pushable": true, + "is_pushable_by_piston": true + }, + "minecraft:conditional_bandwidth_optimization": { + }, + "minecraft:block_climber": { + } + }, + "events": { + "minecraft:entity_spawned": { + "remove": { + }, + "add": { + "component_groups": [ + "minecraft:silverfish_calm" + ] + } + }, + "minecraft:become_angry": { + "remove": { + "minecraft:silverfish_calm": { } + }, + "add": { + "component_groups": [ + "minecraft:silverfish_angry" + ] + } + }, + "minecraft:on_calm": { + "remove": { + "minecraft:silverfish_angry": { } + }, + "add": { + "component_groups": [ + "minecraft:silverfish_calm" + ] + } + } + } + } +} \ No newline at end of file diff --git a/behavior_pack/loot_tables/entities/imoo_sfw.json b/behavior_pack/loot_tables/entities/imoo_sfw.json new file mode 100644 index 0000000..5847292 --- /dev/null +++ b/behavior_pack/loot_tables/entities/imoo_sfw.json @@ -0,0 +1,30 @@ +{ + "pools": [ + { + "rolls": 1, + "entries": [ + { + "type": "item", + "name": "minecraft:string", + "weight": 1, + "functions": [ + { + "function": "set_count", + "count": { + "min": 1, + "max": 2 + } + }, + { + "function": "looting_enchant", + "count": { + "min": 0, + "max": 1 + } + } + ] + } + ] + } + ] +} \ No newline at end of file diff --git a/behavior_pack/manifest.json b/behavior_pack/manifest.json index 273eda4..77b919f 100644 --- a/behavior_pack/manifest.json +++ b/behavior_pack/manifest.json @@ -7,7 +7,7 @@ "version": [ 0, 5, - 10 + 15 ], "min_engine_version": [ 1, @@ -23,7 +23,7 @@ "version": [ 0, 5, - 10 + 15 ] } ], @@ -33,7 +33,7 @@ "version": [ 0, 5, - 10 + 15 ] } ] diff --git a/behavior_pack/spawn_rules/imoo_sfw.json b/behavior_pack/spawn_rules/imoo_sfw.json new file mode 100644 index 0000000..d9ef493 --- /dev/null +++ b/behavior_pack/spawn_rules/imoo_sfw.json @@ -0,0 +1,31 @@ +{ + "format_version": "1.8.0", + "minecraft:spawn_rules": { + "description": { + "identifier": "imoo:sfw", + "population_control": "animal" + }, + "conditions": [ + { + "minecraft:spawns_on_surface": {}, + "minecraft:spawns_on_block_filter": "minecraft:grass", + "minecraft:brightness_filter": { + "min": 7, + "max": 15, + "adjust_for_weather": false + }, + "minecraft:weight": { + "default": 8 + }, + "minecraft:herd": { + "min_size":2, + "max_size":3 + }, + + "minecraft:biome_filter": { + "test": "has_biome_tag", "operator":"==", "value": "animal" + } + } + ] + } +} \ No newline at end of file diff --git a/resource_pack/animation_controllers/silverfish.animation_controllers.json b/resource_pack/animation_controllers/silverfish.animation_controllers.json new file mode 100644 index 0000000..03883b8 --- /dev/null +++ b/resource_pack/animation_controllers/silverfish.animation_controllers.json @@ -0,0 +1,13 @@ +{ + "format_version" : "1.10.0", + "animation_controllers" : { + "controller.animation.silverfish.move" : { + "initial_state" : "default", + "states" : { + "default" : { + "animations" : [ "move" ] + } + } + } + } +} diff --git a/resource_pack/animations/silverfish.animation.json b/resource_pack/animations/silverfish.animation.json new file mode 100644 index 0000000..43bd907 --- /dev/null +++ b/resource_pack/animations/silverfish.animation.json @@ -0,0 +1,38 @@ +{ + "format_version" : "1.8.0", + "animations" : { + "animation.silverfish.move" : { + "anim_time_update" : "query.modified_distance_moved", + "loop" : true, + "bones" : { + "bodypart_0" : { + "position" : [ "math.sin(query.life_time * 1031.4) * 1.26", 0.0, 0.0 ], + "rotation" : [ 0.0, "math.cos(query.life_time * 1031.4) * 27", 0.0 ] + }, + "bodypart_1" : { + "position" : [ "math.sin(query.life_time * 1031.4 + 27) * 0.63", 0.0, 0.0 ], + "rotation" : [ 0.0, "math.cos(query.life_time * 1031.4 + 27) * 18", 0.0 ] + }, + "bodypart_2" : { + "rotation" : [ 0.0, "math.cos(query.life_time * 1031.4 + 54) * 9", 0.0 ] + }, + "bodypart_3" : { + "position" : [ "math.sin(query.life_time * 1031.4 + 81) * 0.63", 0.0, 0.0 ], + "rotation" : [ 0.0, "math.cos(query.life_time * 1031.4 + 81) * 18", 0.0 ] + }, + "bodypart_4" : { + "position" : [ "math.sin(query.life_time * 1031.4 + 108) * 1.26", 0.0, 0.0 ], + "rotation" : [ 0.0, "math.cos(query.life_time * 1031.4 + 108) * 27", 0.0 ] + }, + "bodypart_5" : { + "position" : [ "math.sin(query.life_time * 1031.4 + 135) * 1.89", 0.0, 0.0 ], + "rotation" : [ 0.0, "math.cos(query.life_time * 1031.4 + 135) * 36", 0.0 ] + }, + "bodypart_6" : { + "position" : [ "math.sin(query.life_time * 1031.4 + 162) * 2.52", 0.0, 0.0 ], + "rotation" : [ 0.0, "math.cos(query.life_time * 1031.4 + 162) * 45", 0.0 ] + } + } + } + } +} diff --git a/resource_pack/entity/silverfish.entity.json b/resource_pack/entity/silverfish.entity.json new file mode 100644 index 0000000..4808939 --- /dev/null +++ b/resource_pack/entity/silverfish.entity.json @@ -0,0 +1,29 @@ +{ + "format_version": "1.8.0", + "minecraft:client_entity": { + "description": { + "identifier": "imoo:sfw", + "materials": { + "default": "entity", + "body_layer": "silverfish_layers" + }, + "textures": { + "default": "textures/entity/imoo_sfw" + }, + "geometry": { + "default": "geometry.imoo_sfw" + }, + "animations": { + "move": "animation.silverfish.move" + }, + "animation_controllers": [ + { "move": "controller.animation.silverfish.move" } + ], + "render_controllers": [ "controller.render.silverfish" ], + "spawn_egg": { + "texture": "mw_item", + "texture_index": 2 + } + } + } +} \ No newline at end of file diff --git a/resource_pack/manifest.json b/resource_pack/manifest.json index 14c9f2c..0f1e089 100644 --- a/resource_pack/manifest.json +++ b/resource_pack/manifest.json @@ -7,7 +7,7 @@ "version": [ 0, 5, - 10 + 15 ], "min_engine_version": [ 1, @@ -23,7 +23,7 @@ "version": [ 0, 5, - 10 + 15 ] } ], @@ -33,7 +33,7 @@ "version": [ 0, 5, - 10 + 15 ] } ] diff --git a/resource_pack/models/entity/imoo_sfw.geo.json b/resource_pack/models/entity/imoo_sfw.geo.json new file mode 100644 index 0000000..b68218e --- /dev/null +++ b/resource_pack/models/entity/imoo_sfw.geo.json @@ -0,0 +1,91 @@ +{ + "format_version": "1.8.0", + "geometry.imoo_sfw": { + "texturewidth": 64, + "textureheight": 32, + "visible_bounds_width": 3, + "visible_bounds_height": 1, + "visible_bounds_offset": [0, 0.5, 0], + "bones": [ + { + "name": "bodyPart_2", + "pivot": [0, 4, 1], + "cubes": [ + {"origin": [-3, 0, -0.5], "size": [6, 4, 3], "uv": [0, 9]} + ] + }, + { + "name": "bodyPart_0", + "parent": "bodyPart_2", + "pivot": [0, 2, -3.5], + "cubes": [ + {"origin": [-1.5, 0, -4.5], "size": [3, 2, 2], "uv": [0, 0]} + ] + }, + { + "name": "bodyPart_1", + "parent": "bodyPart_2", + "pivot": [0, 3, -1.5], + "cubes": [ + {"origin": [-2, 0, -2.5], "size": [4, 3, 2], "uv": [0, 4]} + ] + }, + { + "name": "bodyLayer_2", + "parent": "bodyPart_1", + "pivot": [0, 5, -1.5], + "cubes": [ + {"origin": [-3, 0, -3], "size": [6, 5, 2], "uv": [20, 18]} + ] + }, + { + "name": "bodyPart_3", + "parent": "bodyPart_2", + "pivot": [0, 3, 4], + "cubes": [ + {"origin": [-1.5, 0, 2.5], "size": [3, 3, 3], "uv": [0, 16]} + ] + }, + { + "name": "bodyPart_4", + "parent": "bodyPart_2", + "pivot": [0, 2, 7], + "cubes": [ + {"origin": [-1, 0, 5.5], "size": [2, 2, 3], "uv": [0, 22]} + ] + }, + { + "name": "bodyLayer_1", + "parent": "bodyPart_4", + "pivot": [0, 4, 7], + "cubes": [ + {"origin": [-3, 0, 5.5], "size": [6, 4, 3], "uv": [20, 11]} + ] + }, + { + "name": "bodyPart_5", + "parent": "bodyPart_2", + "pivot": [0, 1, 9.5], + "cubes": [ + {"origin": [-1, 0, 8.5], "size": [2, 1, 2], "uv": [11, 0]} + ] + }, + { + "name": "bodyPart_6", + "parent": "bodyPart_2", + "pivot": [0, 1, 11.5], + "cubes": [ + {"origin": [-0.5, 0, 10.5], "size": [1, 1, 2], "uv": [13, 4]} + ] + }, + { + "name": "bodyLayer_0", + "parent": "bodyPart_2", + "pivot": [0, 8, 1], + "cubes": [ + {"origin": [-5, 0, -0.5], "size": [10, 8, 3], "uv": [20, 0]} + ] + } + ] + } +} \ No newline at end of file diff --git a/resource_pack/particles/silverfish_grief.json b/resource_pack/particles/silverfish_grief.json new file mode 100644 index 0000000..5c3b68b --- /dev/null +++ b/resource_pack/particles/silverfish_grief.json @@ -0,0 +1,59 @@ +{ + "format_version": "1.10.0", + "particle_effect": { + "description": { + "identifier": "minecraft:silverfish_grief_emitter", + "basic_render_parameters": { + "material": "particles_alpha", + "texture": "textures/particle/particles" + } + }, + "components": { + "minecraft:emitter_rate_instant": { + "num_particles": 20 + }, + "minecraft:emitter_lifetime_once": { + }, + "minecraft:emitter_shape_custom": { + "offset": [ "variable.aabb.x * Math.random(0, 2) - Math.random(0, 0.2) - variable.aabb.x", + "variable.aabb.y * Math.random(0, 1) - Math.random(0, 0.2)", + "variable.aabb.z * Math.random(0, 2) - Math.random(0, 0.2) - variable.aabb.z" ], + "direction": [ "Math.random(0, 0.02)", "Math.random(0, 0.02)", "Math.random(0, 0.02)" ] + }, + "minecraft:particle_initial_speed": 2, + "minecraft:particle_lifetime_expression": { + "max_lifetime": "4 / Math.Random(1, 5) + 0.1" + }, + "minecraft:particle_motion_dynamic": { + "linear_acceleration": [ 0, 4, 0 ], + "linear_drag_coefficient": 5.25 + }, + "minecraft:particle_motion_collision": { + "coefficient_of_restitution": 0.1, + "collision_drag": 10.0, + "collision_radius": 0.1 + }, + "minecraft:particle_appearance_billboard": { + "size": [ "variable.particle_random_1 * variable.particle_random_2 * 0.6 + 0.1", "variable.particle_random_1 * variable.particle_random_2 * 0.6 + 0.1" ], + "facing_camera_mode": "lookat_xyz", + "uv": { + "texture_width": 128, + "texture_height": 128, + "flipbook": { + "base_UV": [ 56, 0 ], + "size_UV": [ 8, 8 ], + "step_UV": [ -8, 0 ], + "frames_per_second": 8, + "max_frame": 8, + "stretch_to_lifetime": true, + "loop": false + } + } + }, + "minecraft:particle_appearance_tinting": { + "color": [ "variable.particle_random_1 * 0.3 + 0.7", "variable.particle_random_1 * 0.3 + 0.7", "variable.particle_random_1 * 0.3 + 0.7", 0 ] + }, + "minecraft:particle_appearance_lighting": {} + } + } +} \ No newline at end of file diff --git a/resource_pack/render_controllers/silverfish.render_controllers.json b/resource_pack/render_controllers/silverfish.render_controllers.json new file mode 100644 index 0000000..68419f3 --- /dev/null +++ b/resource_pack/render_controllers/silverfish.render_controllers.json @@ -0,0 +1,26 @@ +{ + "format_version": "1.8.0", + "render_controllers": { + "controller.render.silverfish": { + "geometry": "Geometry.default", + "materials": [ + { "*": "Material.default" }, + { "bodyLayer_*": "Material.body_layer" } + ], + "part_visibility": [ + { "*": "0" }, + { "bodypart_0": "1" }, + { "bodypart_1": "1" }, + { "bodypart_2": "1" }, + { "bodypart_3": "1" }, + { "bodypart_4": "1" }, + { "bodypart_5": "1" }, + { "bodypart_6": "1" }, + { "bodylayer_0": "1" }, + { "bodylayer_1": "1" }, + { "bodylayer_2": "1" } + ], + "textures": [ "Texture.default" ] + } + } +} \ No newline at end of file diff --git a/resource_pack/texts/en_US.lang b/resource_pack/texts/en_US.lang index e0c5a4e..479a901 100644 --- a/resource_pack/texts/en_US.lang +++ b/resource_pack/texts/en_US.lang @@ -3,4 +3,6 @@ tile.imoo:chair.name=Chair action.hint.exit.imoo:seat_helper=Jump to get up tile.imoo:grave_1.name=Grave stone tile.imoo:grave_2.name=Grave cross -tile.imoo:grave_3.name=Gravestone \ No newline at end of file +tile.imoo:grave_3.name=Gravestone +item.spawn_egg.entity.imoo:sfw.name=Create a fluffy +entity.imoo:sfw.name=Fluffy \ No newline at end of file diff --git a/resource_pack/texts/ru_RU.lang b/resource_pack/texts/ru_RU.lang index 63d6b66..36222b8 100644 --- a/resource_pack/texts/ru_RU.lang +++ b/resource_pack/texts/ru_RU.lang @@ -3,4 +3,6 @@ tile.imoo:chair.name=Стул action.hint.exit.imoo:seat_helper=Прыжок для того чтоб встать tile.imoo:grave_1.name=Могильный камень tile.imoo:grave_2.name=Могильный крест -tile.imoo:grave_3.name=Могильная плита \ No newline at end of file +tile.imoo:grave_3.name=Могильная плита +item.spawn_egg.entity.imoo:sfw.name=Создать пушистика +entity.imoo:sfw.name=Пушистик diff --git a/resource_pack/textures/entity/imoo_sfw.png b/resource_pack/textures/entity/imoo_sfw.png new file mode 100644 index 0000000000000000000000000000000000000000..8dc908ec93d4ce3ad6550c3b50615ddbedf1344c GIT binary patch literal 358 zcmV-s0h#`ZP)eXW@#K>+Zv8Ysfh!*j+%&@>Px$1W80eR5*>zlU<60Fc5^xb#c6a5`*{y62S<0%>C~m=m`X`5DYaBi|*{GyEAY5 zy)~h$syhkrud&wB7{j+4g%A`%aKlEtOI{<9R2aXF^--jjF2PoWnfNf4h^UQi@&I?RC>M z%(Cn<1%R*Rm1Rki)LNg$-{|{(7uc6b63#gQz%UE|0HxHyD9bW<@ArBaSe7Lyief*g z>l)5ENGSmTQc6fE;l0N=j=@3TnJv-dRX#djVvM0N<}kO`nn{wp{;Z8LOw*KUno?{1 c{(pFtI~pO%@wxntDF6Tf07*qoM6N<$f)DJGmjD0& literal 0 HcmV?d00001