Skip to content

Commit 41a7b00

Browse files
committed
🚧 Step 1 of source restructure: Folder names and basic file organization
1 parent f81b6a8 commit 41a7b00

File tree

231 files changed

+3714
-5310
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

231 files changed

+3714
-5310
lines changed

.eslintrc.json

Lines changed: 0 additions & 140 deletions
This file was deleted.

.prettierrc.json

Lines changed: 26 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,5 +5,30 @@
55
"semi": false,
66
"singleQuote": true,
77
"arrowParens": "avoid",
8-
"printWidth": 100
8+
"printWidth": 100,
9+
"trailingComma": "es5",
10+
"bracketSameLine": false,
11+
"overrides": [
12+
{
13+
"files": ["**/*.yml", "**/*.yaml"],
14+
"options": {
15+
"parser": "yaml",
16+
"tabWidth": 2,
17+
"useTabs": false
18+
}
19+
},
20+
{
21+
"files": "**/*.ts",
22+
"options": {
23+
"parser": "typescript"
24+
}
25+
},
26+
{
27+
"files": "**/*.svelte",
28+
"options": {
29+
"parser": "svelte",
30+
"plugins": ["prettier-plugin-svelte"]
31+
}
32+
}
33+
]
934
}

.vscode/settings.json

Lines changed: 34 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,36 @@
11
{
2-
"typescript.tsdk": "node_modules\\typescript\\lib"
2+
"typescript.tsdk": "node_modules\\typescript\\lib",
3+
"eslint.enable": true,
4+
"editor.formatOnSave": true,
5+
"prettier.enable": true,
6+
"editor.defaultFormatter": "esbenp.prettier-vscode",
7+
"editor.codeActionsOnSave": {
8+
"source.fixAll.eslint": "explicit",
9+
"source.fixAll.ts": "explicit",
10+
"source.fixAll.sortJSON": "explicit",
11+
"source.addMissingImports.ts": "explicit",
12+
"source.organizeImports": "explicit",
13+
"source.sortImports": "explicit",
14+
"source.removeUnused.ts": "never",
15+
"source.removeUnusedImports": "explicit",
16+
"source.organizeLinkDefinitions": "explicit"
17+
},
18+
"files.exclude": {
19+
"**/.git": true,
20+
"**/.svn": true,
21+
"**/.hg": true,
22+
"**/CVS": true,
23+
"**/.DS_Store": true,
24+
"**/Thumbs.db": true,
25+
"**/node_modules": true
26+
},
27+
"npm.exclude": ["**/node_modules"],
28+
"svelte.plugin.svelte.compilerWarnings": {
29+
"a11y-click-events-have-key-events": "ignore",
30+
"a11y-no-static-element-interactions": "ignore"
31+
},
32+
"errorLens.excludePatterns": ["**/node_modules/**/*"],
33+
"eslint.validate": ["javascript", "javascriptreact", "svelte"],
34+
"eslint.useFlatConfig": true,
35+
"eslint.problems.shortenToSingleLine": true
336
}

TODO.md

Lines changed: 1 addition & 119 deletions
Original file line numberDiff line numberDiff line change
@@ -1,82 +1,5 @@
11
# Blockbench
22

3-
- [x] ~~Add a root NBT blueprint setting~~ Add a custom summon commands setting.
4-
- [x] Custom animation properties dialog
5-
- [x] Prevent the user setting their export namespace to 'global' or 'minecraft'
6-
- [x] Add affected bones list to variant, and animation properties.
7-
- [x] Variant Properties
8-
- [x] Animation Properties
9-
- [x] Implement .ajmodel to blueprint conversion.
10-
- [x] Change .ajmeta to use relative file paths.
11-
- [x] Resolve env variables in blueprint settings.
12-
- [x] Add renderbox options to the blueprint settings.
13-
- [x] Render and handle invalid cubes with a red outline.
14-
- [x] Force animations to be at least 1 tick long
15-
- [x] Respect Variant inheritance when applying variants in the animation preview.
16-
- [x] Add a transparency option to the variant texture map selection. (And don't export completely transparent bones)
17-
- [x] Locators
18-
- [x] Custom command keyframes.
19-
- [x] Locator config.
20-
- [x] Data Pack Compiler support.
21-
- [x] Natively support step keyframes.
22-
- [x] When upgrading old ajmodels, if they have command keyframes in the effect animator, create a locator at 0 0 0 with those keyframes.
23-
- [x] Add support for Text Displays
24-
- [x] Basic rendering
25-
- [x] Word wrapping - Thanks Fetchbot!
26-
- [x] Italic
27-
- [x] Bold
28-
- [x] Underline
29-
- [x] Strikethrough
30-
- [x] Array style inheritance
31-
- [x] Support vanilla fonts
32-
- [x] minecraft:default
33-
- [x] minecraft:alt
34-
- [x] minecraft:illageralt
35-
- [x] User interface
36-
- [x] Figure out a nice way to configure text displays...
37-
- [x] Include an option to change the text.
38-
- [x] Include an option to change the max line width.
39-
- [x] Animation
40-
- [x] Make sure the text display is animatable.
41-
- [x] Add a TextDisplay config.
42-
- [x] Add support for billboarding to TextDisplays.
43-
- [ ] Add an option to change the alignment of the text.
44-
- [x] Respect inheritance in the bone config.
45-
- [x] Change font rendering to use a geometry for each character instead of a single plane for the entire text display. This will open the possibility of loading custom fonts and spacing.
46-
- [x] Add vanilla block displays
47-
- [x] Create a custom element type for block displays.
48-
- [x] Add rendering for vanilla block models.
49-
- [x] Use Blockstates to select models.
50-
- [x] Parent model inheritance
51-
- [x] block/block
52-
- [x] Add overrides for entity-based block models.
53-
- [x] chest
54-
- [x] ender_chest
55-
- [x] mob heads
56-
- [x] shulker boxes
57-
- [x] beds
58-
- [x] multi-parts like walls throw an intneral error if they don't have any elements.
59-
- [x] Add an option to Locators to use the old entity-based functionality.
60-
- [x] Add an about page.
61-
- [x] Camera Plugin Support
62-
- [x] Data Pack Compiler support.
63-
- [x] Add vanilla item displays
64-
- [x] Create a custom element type for item displays.
65-
- [x] Add rendering for vanilla item models.
66-
- [x] Parent model inheritance
67-
- [x] item/generated
68-
- [x] item/handheld
69-
- [x] item/handheld_rod
70-
- [x] item/handheld_mace
71-
- [ ] Add overrides for entity-based models.
72-
- [x] conduit
73-
- [x] decorated_pot
74-
- [x] template_banner
75-
- [x] template_shulker_box
76-
- [x] template_skull
77-
- [x] banners
78-
- [x] shield
79-
- [x] trident
803
- [ ] Change the Collection setting type to allow single-click swapping of items between lists.
814
- [ ] Look into adding a color picker for tintable vanilla items.
825
- [ ] Add Variants to the UndoSystem (Blocked by vanilla Blockbench not supporting custom undo actions).
@@ -86,31 +9,9 @@
869

8710
# Data Pack Compiler
8811

89-
- [x] Merge on_tick and on_load function tags
90-
- [x] When merging the new minecraft:tick tag with old one, try and find any old style function references (AKA animated_java:my_project/zzzzzz/tick), and remove them.
91-
- [x] Animation Tweening
92-
- [x] Implement animation loop mode tech.
93-
- [x] Write files after compilaion is done by using a queue system.
94-
- [x] Make data pack compiler as async as possible.
95-
- [x] Actually respect variant config options.
96-
- [x] Warn the user when a previously summoned rig needs to be re-summoned due to changes in the blueprint.
97-
- [x] Figure out how to add repeating functionality to command keyframes.
98-
- [x] Add toggles to command keyframes to allow continuously running the commands in the keyframe instead of only once when the keyframe is reached.
99-
- [x] Teleport the rig to the execution location of the summon command.
100-
- [x] Rotate the bones with the root entity.
101-
- [x] Add default saved Locator positions to the summoned rig.
102-
- [x] Add support for text displays.
103-
- [x] Add support for vanilla item displays.
104-
- [x] Add support for vanilla block displays.
105-
- [x] Locator rotation inheritance support - looks like they've supported it all this time...
106-
- [x] Apply variant keyframes in animations.
107-
- [x] Figure out how cameras will work.
108-
- [x] See how much swapping to a static list of UUIDs for selecting bones effects performance.
109-
- [x] Split up animation storage data command to avoid command length limit.
110-
- [x] Check for references to non-existant functions in merged function tags, and remove them.
11112
- [ ] When applying variants, remove / replace any bones that have / had no elements with textured faces.
13+
- [ ] Add a system that detects the version of Minecraft that the data pack is being exported into. (Can probably use the level.dat of the world if it exists?)
11214

113-
- [x] Add a toast notification for when the model has invalid rotations.
11415
# Resource Pack
11516

11617
- [x] Warn the user when they have custom elements in their model, but have disabled the resource pack export.
@@ -119,25 +20,6 @@
11920

12021
- [x] Add an option to export a JSON file.
12122

122-
# List of numbers to track
123-
124-
- [ ] Total exports
125-
- Stored in amount per day
126-
- [ ] Total functions created by the data pack compiler
127-
- Stored in amount per day
128-
129-
# Github
130-
131-
- [x] Reorganize the repo's branches.
132-
- [x] Create a `release` branch.
133-
- [x] Create a `dev` branch.
134-
- [x] Create a `legacy-beta` tag.
135-
- [x] Create a `legacy-armorstands` tag.
136-
- [ ] Reorganize the repo's tags.
137-
- [ ] Create a `v1.0.0` tag.
138-
- [x] Create a `legacy-beta` tag.
139-
- [x] Create a `legacy-armorstands` tag.
140-
14123
# Post 1.0.0
14224

14325
- [ ] Add support for [block-display.com's API](https://wiki.block-display.com/api/get-api)

0 commit comments

Comments
 (0)