From ebac7a0ab1091ad0695b0ac9e58fa0592989ca99 Mon Sep 17 00:00:00 2001 From: Beltsazar Date: Mon, 29 Apr 2024 20:24:55 +0700 Subject: [PATCH] Add snippets (#278) --- .../animation_controller.json | 15 ++++++++++++ source/behavior/animations/animations.json | 11 +++++++++ source/behavior/blocks/blocks.json | 16 ++++++++++++- source/behavior/dialogue/dialogue.json | 12 ++++++++++ source/behavior/entities/entities.json | 17 ++++++++++++++ source/behavior/items/items.json | 19 +++++++++++++++ source/behavior/spawn_rules/spawn_rules.json | 19 +++++++++++++-- .../animation_controller.json | 15 ++++++++++++ .../resource/animations/actor_animation.json | 11 +++++++++ source/resource/attachables/attachables.json | 23 +++++++++++++++++++ source/resource/entity/entity.json | 23 +++++++++++++++++++ .../render_controllers.json | 15 ++++++++++++ 12 files changed, 193 insertions(+), 3 deletions(-) diff --git a/source/behavior/animation_controllers/animation_controller.json b/source/behavior/animation_controllers/animation_controller.json index 45f549acd..2bedcc86c 100644 --- a/source/behavior/animation_controllers/animation_controller.json +++ b/source/behavior/animation_controllers/animation_controller.json @@ -1,6 +1,21 @@ { "$schema": "http://json-schema.org/draft-07/schema", "$id": "blockception.minecraft.behavior.animation_controller", + "defaultSnippets": [ + { + "label": "New animation controller", + "body": { + "format_version": "${1:1.10.0}", + "animation_controllers": { + "controller.animation.${2:${TM_FILENAME/[\\.].*//}}": { + "states": { + "default": "^{$3}" + } + } + } + } + } + ], "examples": [ { "format_version": "1.20.41", diff --git a/source/behavior/animations/animations.json b/source/behavior/animations/animations.json index 1f71336d7..63f2b8086 100644 --- a/source/behavior/animations/animations.json +++ b/source/behavior/animations/animations.json @@ -1,6 +1,17 @@ { "$schema": "http://json-schema.org/draft-07/schema", "$id": "blockception.minecraft.behavior.animations", + "defaultSnippets": [ + { + "label": "New animation", + "body": { + "format_version": "${1:1.10.0}", + "animations": { + "animation.${2:${TM_FILENAME/[\\.].*//}}": "^{$3}" + } + } + } + ], "examples": [{ "format_version": "1.20.41", "animations": { "animation.example": {} } }], "definitions": { "animationspec": { diff --git a/source/behavior/blocks/blocks.json b/source/behavior/blocks/blocks.json index 09f02d4d9..472c9453f 100644 --- a/source/behavior/blocks/blocks.json +++ b/source/behavior/blocks/blocks.json @@ -10,5 +10,19 @@ "properties": { "format_version": { "$ref": "../../general/format_version.json" }, "minecraft:block": { "$ref": "./format/minecraft.block.json" } - } + }, + "defaultSnippets": [ + { + "label": "New block", + "body": { + "format_version": "${1:1.20.41}", + "minecraft:block": { + "description": { + "identifier": "$2:${3:${TM_FILENAME/[\\.].*//}}" + }, + "components": "^{$4}" + } + } + } + ] } diff --git a/source/behavior/dialogue/dialogue.json b/source/behavior/dialogue/dialogue.json index 66e5a9694..c136fbcfc 100644 --- a/source/behavior/dialogue/dialogue.json +++ b/source/behavior/dialogue/dialogue.json @@ -1,6 +1,18 @@ { "$schema": "http://json-schema.org/draft-07/schema", "$id": "blockception.minecraft.behavior.dialogue", + "defaultSnippets": [ + { + "format_version": "${1:1.20.41}", + "minecraft:npc_dialogue": { + "scenes": [ + { + "scene_tag": "$2" + } + ] + } + } + ], "examples": [ { "format_version": "1.20.41", diff --git a/source/behavior/entities/entities.json b/source/behavior/entities/entities.json index f0c505a7e..57dd3d0e9 100644 --- a/source/behavior/entities/entities.json +++ b/source/behavior/entities/entities.json @@ -1,6 +1,23 @@ { "$schema": "http://json-schema.org/draft-07/schema", "$id": "blockception.minecraft.behavior.entities", + "defaultSnippets": [ + { + "label": "New entity", + "body": { + "format_version": "${1:1.20.41}", + "minecraft:entity": { + "description": { + "identifier": "$2:${3:${TM_FILENAME/[\\.].*//}}", + "is_spawnable": "^{4:true}", + "is_summonable": "^{5:true}", + "is_experimental": "^{6:false}" + }, + "components": "^{$7}" + } + } + } + ], "examples": [ { "format_version": "1.20.41", diff --git a/source/behavior/items/items.json b/source/behavior/items/items.json index c1b2853dc..7ff483893 100644 --- a/source/behavior/items/items.json +++ b/source/behavior/items/items.json @@ -1,5 +1,24 @@ { "$id": "blockception.minecraft.behavior.items", + "defaultSnippets": [ + { + "label": "New item", + "body": { + "format_version": "${1:1.20.41}", + "minecraft:item": { + "description": { + "identifier": "$2:${3:${TM_FILENAME/[\\.].*//}}", + "menu_category": { + "category": "${4:items}" + } + }, + "components": { + "minecraft:icon": "$2.${3:${TM_FILENAME/[\\.].*//}}" + } + } + } + } + ], "description": "Minecraft items", "required": ["format_version", "minecraft:item"], "title": "Item", diff --git a/source/behavior/spawn_rules/spawn_rules.json b/source/behavior/spawn_rules/spawn_rules.json index aa3d42bac..6d49ccddf 100644 --- a/source/behavior/spawn_rules/spawn_rules.json +++ b/source/behavior/spawn_rules/spawn_rules.json @@ -1,6 +1,21 @@ { "$schema": "http://json-schema.org/draft-07/schema", "$id": "blockception.behavior.spawn_rules", + "defaultSnippets": [ + { + "label": "New spawn rule", + "body": { + "format_version": "${1:1.8.0}", + "minecraft:spawn_rules": { + "description": { + "identifier": "$2:${3:${TM_FILENAME/[\\.].*//}}", + "population_control": "${4:ambient}" + }, + "conditions": ["^{$5}"] + } + } + } + ], "examples": [ { "format_version": "1.8.0", @@ -13,11 +28,11 @@ "additionalProperties": false, "required": ["format_version", "minecraft:spawn_rules"], "properties": { - "format_version": { + "format_version": { "title": "Format Version", "description": "A version that tells minecraft what type of data format can be expected when reading this file.", "enum": ["1.8.0", "1.10.0", "1.12.0"] - }, + }, "minecraft:spawn_rules": { "type": "object", "title": "Spawn Rules", diff --git a/source/resource/animation_controllers/animation_controller.json b/source/resource/animation_controllers/animation_controller.json index b20dcc5aa..9bbb7b4a4 100644 --- a/source/resource/animation_controllers/animation_controller.json +++ b/source/resource/animation_controllers/animation_controller.json @@ -1,6 +1,21 @@ { "$schema": "http://json-schema.org/draft-07/schema", "$id": "blockception.minecraft.resource.animation_controller", + "defaultSnippets": [ + { + "label": "New animation controller", + "body": { + "format_version": "${1:1.10.0}", + "animation_controllers": { + "controller.animation.${2:${TM_FILENAME/[\\.].*//}}": { + "states": { + "default": "^{$3}" + } + } + } + } + } + ], "examples": [ { "format_version": "1.20.41", diff --git a/source/resource/animations/actor_animation.json b/source/resource/animations/actor_animation.json index 8131dcb61..cac4a2af3 100644 --- a/source/resource/animations/actor_animation.json +++ b/source/resource/animations/actor_animation.json @@ -1,6 +1,17 @@ { "$schema": "http://json-schema.org/draft-07/schema", "$id": "blockception.minecraft.resource.actor_animation", + "defaultSnippets": [ + { + "label": "New animation", + "body": { + "format_version": "${1:1.10.0}", + "animations": { + "animation.${2:${TM_FILENAME/[\\.].*//}}": "^{$3}" + } + } + } + ], "examples": [{ "format_version": "1.20.41", "animations": { "animation.annie.idle": { "loop": true, "animation_length": 2.12, "bones": {} } } }], "additionalProperties": false, "type": "object", diff --git a/source/resource/attachables/attachables.json b/source/resource/attachables/attachables.json index 6fcc661f3..ccc917e6d 100644 --- a/source/resource/attachables/attachables.json +++ b/source/resource/attachables/attachables.json @@ -1,6 +1,29 @@ { "$schema": "http://json-schema.org/draft-07/schema", "$id": "blockception.minecraft.resource.attachables", + "defaultSnippets": [ + { + "label": "New attachable", + "body": { + "format_version": "${1:1.10.0}", + "minecraft:attachable": { + "description": { + "identifier": "$2:${3:${TM_FILENAME/[\\.].*//}}", + "materials": { + "default": "entity_alphatest" + }, + "textures": { + "default": "textures/items/${3:${TM_FILENAME/[\\.].*//}}" + }, + "geometry": { + "default": "geometry.${3:${TM_FILENAME/[\\.].*//}}" + }, + "render_controllers": ["controller.render.default"] + } + } + } + } + ], "examples": [ { "format_version": "1.20.41", diff --git a/source/resource/entity/entity.json b/source/resource/entity/entity.json index fb05984e5..c2871f4c0 100644 --- a/source/resource/entity/entity.json +++ b/source/resource/entity/entity.json @@ -1,6 +1,29 @@ { "$schema": "http://json-schema.org/draft-07/schema", "$id": "blockception.minecraft.resource.entity", + "defaultSnippets": [ + { + "label": "New entity", + "body": { + "format_version": "${1:1.10.0}", + "minecraft:client_entity": { + "description": { + "identifier": "$2:${3:${TM_FILENAME/[\\.].*//}}", + "materials": { + "default": "entity_alphatest" + }, + "textures": { + "default": "textures/entity/${3:${TM_FILENAME/[\\.].*//}}" + }, + "geometry": { + "default": "geometry.${3:${TM_FILENAME/[\\.].*//}}" + }, + "render_controllers": ["controller.render.default"] + } + } + } + } + ], "examples": [ { "format_version": "1.20.41", diff --git a/source/resource/render_controllers/render_controllers.json b/source/resource/render_controllers/render_controllers.json index ca89a72e2..d2c934328 100644 --- a/source/resource/render_controllers/render_controllers.json +++ b/source/resource/render_controllers/render_controllers.json @@ -1,6 +1,21 @@ { "$schema": "http://json-schema.org/draft-07/schema", "$id": "blockception.minecraft.render_controllers", + "defaultSnippets": [ + { + "label": "New render controller", + "body": { + "format_version": "${1:1.10.0}", + "render_controllers": { + "controller.render.${2:${TM_FILENAME/[\\.].*//}}": { + "geometry": "Geometry.${3:default}", + "materials": [{ "*": "Material.${4:default}" }], + "textures": ["Texture.${5:default}"] + } + } + } + } + ], "examples": [ { "format_version": "1.20.41",