mirror of
https://git.huckle.dev/Huckles-Minecraft-Archive/PCK-Studio.git
synced 2026-07-09 14:59:30 +00:00
Core - Move ColorEntry info into colorEntries.json
This commit is contained in:
@@ -16,10 +16,8 @@
|
||||
* 3. This notice may not be removed or altered from any source distribution.
|
||||
**/
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Diagnostics;
|
||||
using System.Drawing;
|
||||
using System.Drawing.Drawing2D;
|
||||
using System.Drawing.Imaging;
|
||||
using System.IO;
|
||||
using System.Linq;
|
||||
@@ -34,6 +32,7 @@ using PckStudio.Core.IO;
|
||||
using PckStudio.Core.Json;
|
||||
using PckStudio.Interfaces;
|
||||
using PckStudio.Internal;
|
||||
using PckStudio.Json;
|
||||
using PckStudio.Properties;
|
||||
|
||||
namespace PckStudio.Forms.Editor
|
||||
@@ -43,7 +42,7 @@ namespace PckStudio.Forms.Editor
|
||||
private readonly ITryGet<string, Animation> _tryGetAnimation;
|
||||
private readonly ITryGet<string, ISaveContext<Animation>> _tryGetAnimationSaveContext;
|
||||
private readonly AtlasResource _atlasResource;
|
||||
private readonly ColorContainer _colourTable;
|
||||
private readonly ColorContainer _colorTable;
|
||||
private readonly ResourceCategory _resourceLocationCategory;
|
||||
private readonly Atlas _atlas;
|
||||
|
||||
@@ -70,7 +69,7 @@ namespace PckStudio.Forms.Editor
|
||||
Text += _atlas.Name;
|
||||
originalPictureBox.Image = atlas;
|
||||
|
||||
_colourTable = colorContainer ?? AppResourceManager.Default.GetData(Resources.tu69colours, new COLFileReader());
|
||||
_colorTable = colorContainer ?? AppResourceManager.Default.GetData(Resources.tu69colours, new COLFileReader());
|
||||
_tryGetAnimation = tryGetAnimation;
|
||||
_tryGetAnimationSaveContext = tryGetAnimationSaveContext;
|
||||
_atlasResource = resourceLocation as AtlasResource;
|
||||
@@ -115,15 +114,22 @@ namespace PckStudio.Forms.Editor
|
||||
|
||||
private void UpdateAtlasDisplay()
|
||||
{
|
||||
using (var g = Graphics.FromImage(originalPictureBox.Image))
|
||||
{
|
||||
g.ApplyConfig(_graphicsConfig);
|
||||
g.Clear(Color.Transparent);
|
||||
Image image = EditorValue;
|
||||
g.DrawImage(image, 0, 0, image.Width, image.Height);
|
||||
using Graphics g = Graphics.FromImage(originalPictureBox.Image);
|
||||
g.ApplyConfig(_graphicsConfig);
|
||||
g.Clear(Color.Transparent);
|
||||
Image image = EditorValue;
|
||||
g.DrawImage(image, 0, 0, image.Width, image.Height);
|
||||
|
||||
SolidBrush brush = new SolidBrush(Color.FromArgb(127, Color.White));
|
||||
g.FillRectangle(brush, allowGroupsToolStripMenuItem.Checked ? _atlas.GetTileArea(_selectedTile) : _selectedTile.GetArea(_atlas.TileSize));
|
||||
SolidBrush brush = new SolidBrush(Color.FromArgb(127, Color.White));
|
||||
if (!allowGroupsToolStripMenuItem.Checked)
|
||||
{
|
||||
g.FillRectangle(brush, _selectedTile.GetArea(_atlas.TileSize));
|
||||
originalPictureBox.Invalidate();
|
||||
return;
|
||||
}
|
||||
foreach (Rectangle area in _atlas.GetTileArea(_selectedTile))
|
||||
{
|
||||
g.FillRectangle(brush, area);
|
||||
}
|
||||
originalPictureBox.Invalidate();
|
||||
}
|
||||
@@ -146,13 +152,13 @@ namespace PckStudio.Forms.Editor
|
||||
tileNameLabel.Text = $"{tileInfo?.DisplayName}";
|
||||
internalTileNameLabel.Text = $"{tileInfo?.InternalName}";
|
||||
setColorButton.Enabled = tileInfo.AllowCustomColour;
|
||||
variantComboBox.Enabled = variantComboBox.Visible = tileInfo.HasColourEntry && tileInfo.ColourEntry?.Variants?.Length > 1;
|
||||
variantComboBox.Enabled = Tiles.ColorEntries.TryGetValue(tileInfo.ColorKey, out JsonColorEntry colorEntry) && colorEntry?.Variants?.Length > 1 || _colorTable.Colors.Any(c => c.Name == tileInfo.ColorKey);
|
||||
|
||||
if (variantComboBox.Enabled)
|
||||
{
|
||||
if (tileInfo.ColourEntry.IsWaterColour)
|
||||
if (colorEntry?.IsWaterColour ?? default)
|
||||
{
|
||||
foreach (ColorContainer.WaterColor col in _colourTable.WaterColors)
|
||||
foreach (ColorContainer.WaterColor col in _colorTable.WaterColors)
|
||||
{
|
||||
if (!variantComboBox.Items.Contains(col.Name))
|
||||
variantComboBox.Items.Add(col.Name);
|
||||
@@ -160,10 +166,22 @@ namespace PckStudio.Forms.Editor
|
||||
}
|
||||
|
||||
// TODO: only add variants that are available in the color table
|
||||
variantComboBox.Items.AddRange(tileInfo.ColourEntry.Variants.Where(colorName => _colourTable.Colors.Any(c => c.Name == colorName) || _colourTable.WaterColors.Any(c => c.Name == colorName)).ToArray());
|
||||
if (_colorTable.Colors.Where(c => c.Name == tileInfo.ColorKey).FirstOrDefault() is ColorContainer.Color c)
|
||||
variantComboBox.Items.Add(c.Name);
|
||||
if (_colorTable.WaterColors.Where(c => c.Name == tileInfo.ColorKey).FirstOrDefault() is ColorContainer.WaterColor wc)
|
||||
variantComboBox.Items.Add(wc.Name);
|
||||
if (tileInfo.HasColourEntry)
|
||||
{
|
||||
if (!string.IsNullOrWhiteSpace(colorEntry.DefaultName))
|
||||
variantComboBox.Items.Add(colorEntry.DefaultName);
|
||||
variantComboBox.Items.AddRange(colorEntry.Variants.Where(colorName => _colorTable.Colors.Any(c => c.Name == colorName) || _colorTable.WaterColors.Any(c => c.Name == colorName)).ToArray());
|
||||
}
|
||||
|
||||
if (variantComboBox.Items.Count > 0)
|
||||
{
|
||||
variantComboBox.Visible = variantComboBox.Items.Count > 1;
|
||||
variantComboBox.SelectedIndex = 0;
|
||||
}
|
||||
}
|
||||
|
||||
CheckForAnimation();
|
||||
@@ -197,7 +215,8 @@ namespace PckStudio.Forms.Editor
|
||||
if (_selectedTile.IsPartOfGroup && allowGroupsToolStripMenuItem.Checked)
|
||||
{
|
||||
AtlasGroup group = _selectedTile.GetGroup();
|
||||
tileNameLabel.Text = $"{group.Name}";
|
||||
if (!string.IsNullOrWhiteSpace(group.Name))
|
||||
tileNameLabel.Text = group.Name;
|
||||
internalTileNameLabel.Text = string.Empty;
|
||||
if (group.IsAnimation())
|
||||
{
|
||||
@@ -211,10 +230,9 @@ namespace PckStudio.Forms.Editor
|
||||
return;
|
||||
}
|
||||
}
|
||||
if (group.IsLargeTile())
|
||||
{
|
||||
selectTilePictureBox.Image = _atlas.GetTileTexture(_selectedTile);
|
||||
}
|
||||
selectTilePictureBox.UseBlendColor = false;
|
||||
setColorButton.Enabled |= group.AllowCustomColor;
|
||||
selectTilePictureBox.Image = _atlas.GetTileTexture(_selectedTile, selectTilePictureBox.BlendColor);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -324,11 +342,11 @@ namespace PckStudio.Forms.Editor
|
||||
|
||||
private void SetTile(Image texture)
|
||||
{
|
||||
if (_selectedTile.IsPartOfGroup)
|
||||
if (_selectedTile.IsPartOfGroup && allowGroupsToolStripMenuItem.Checked)
|
||||
{
|
||||
AtlasGroup group = _selectedTile.GetGroup();
|
||||
_atlas.SetGroup(group, texture);
|
||||
selectTilePictureBox.Image = _atlas.GetTileTexture(_selectedTile);
|
||||
selectTilePictureBox.Image = _atlas.GetTileTexture(_selectedTile, selectTilePictureBox.BlendColor);
|
||||
UpdateAtlasDisplay();
|
||||
return;
|
||||
}
|
||||
@@ -343,55 +361,45 @@ namespace PckStudio.Forms.Editor
|
||||
|
||||
private Color GetBlendColor()
|
||||
{
|
||||
if (_selectedTile.TryGetUserDataOfType(out JsonTileInfo tileInfo) && tileInfo.HasColourEntry)
|
||||
if (_selectedTile.TryGetUserDataOfType(out JsonTileInfo tileInfo))
|
||||
{
|
||||
return FindBlendColorByKey(tileInfo.ColourEntry.DefaultName);
|
||||
string colorKey = tileInfo.InternalName;
|
||||
|
||||
colorSlider.Visible = colorSliderLabel.Visible = true;
|
||||
// Simply, Experience orbs red value is just sliding between 255 and 0
|
||||
if (colorKey.StartsWith("experience_orb"))
|
||||
return Color.FromArgb(colorSlider.Value, 255, 0);
|
||||
|
||||
// Similar story for critical hits, but for all values
|
||||
if (colorKey == "critical_hit")
|
||||
return Color.FromArgb(colorSlider.Value, colorSlider.Value, colorSlider.Value);
|
||||
|
||||
// Enchanted hits are modified critical hit particles
|
||||
if (colorKey == "enchanted_hit")
|
||||
{
|
||||
// This is directly based on Java's source code for handling enchanted hits
|
||||
// it just multiplies the red by 0.3 and green by .8 of the color assigned to the critical hit particle
|
||||
var c = Color.FromArgb(colorSlider.Value, colorSlider.Value, colorSlider.Value);
|
||||
return Color.FromArgb((byte)(c.R * 0.3f), (byte)(c.G * 0.8f), c.B);
|
||||
}
|
||||
colorSlider.Visible = colorSliderLabel.Visible = false;
|
||||
if (tileInfo.HasColourEntry)
|
||||
return FindBlendColorByKey(tileInfo.ColorEntry.DefaultName);
|
||||
}
|
||||
return Color.White;
|
||||
}
|
||||
|
||||
private Color GetSpecificBlendColor(string colorKey)
|
||||
private Color FindBlendColorByKey(string colorKey, bool isWaterColour = default)
|
||||
{
|
||||
colorSlider.Visible = colorSliderLabel.Visible = true;
|
||||
|
||||
// Simply, Experience orbs red value is just sliding between 255 and 0
|
||||
if (colorKey == "experience_orb")
|
||||
return Color.FromArgb(colorSlider.Value, 255, 0);
|
||||
|
||||
// Similar story for critical hits, but for all values
|
||||
return Color.FromArgb(colorSlider.Value, colorSlider.Value, colorSlider.Value);
|
||||
}
|
||||
|
||||
private Color FindBlendColorByKey(string colorKey)
|
||||
{
|
||||
// The following tiles are hardcoded within a range and do not have color table entries
|
||||
if (colorKey == "experience_orb" || colorKey == "critical_hit")
|
||||
return GetSpecificBlendColor(colorKey);
|
||||
|
||||
if (!_selectedTile.TryGetUserDataOfType(out JsonTileInfo tileInfo) || !tileInfo.HasColourEntry)
|
||||
{
|
||||
Debug.WriteLine("Could not find: " + colorKey);
|
||||
if (string.IsNullOrWhiteSpace(colorKey))
|
||||
return Color.White;
|
||||
}
|
||||
|
||||
// Enchanted hits are modified critical hit particles
|
||||
if (tileInfo.InternalName == "enchanted_hit")
|
||||
{
|
||||
// This is directly based on Java's source code for handling enchanted hits
|
||||
// it just multiplies the red by 0.3 and green by .8 of the color assigned to the critical hit particle
|
||||
var c = Color.FromArgb(colorSlider.Value, colorSlider.Value, colorSlider.Value);
|
||||
return Color.FromArgb((int)(c.R * 0.3f), (int)(c.R * 0.8f), c.B);
|
||||
}
|
||||
|
||||
// basic way to check for classic water colors
|
||||
if (!tileInfo.ColourEntry.IsWaterColour || colorKey.StartsWith("Water_"))
|
||||
if (!isWaterColour && !colorKey.StartsWith("Water_") && _colorTable.Colors.FirstOrDefault(entry => entry.Name == colorKey) is ColorContainer.Color color)
|
||||
{
|
||||
if (_colourTable.Colors.FirstOrDefault(entry => entry.Name == colorKey) is ColorContainer.Color color)
|
||||
{
|
||||
return color.ColorPallette;
|
||||
}
|
||||
return color.ColorPallette;
|
||||
}
|
||||
else if (_colourTable.WaterColors.FirstOrDefault(entry => entry.Name == colorKey) is ColorContainer.WaterColor waterColor)
|
||||
if (_colorTable.WaterColors.FirstOrDefault(entry => entry.Name == colorKey) is ColorContainer.WaterColor waterColor)
|
||||
{
|
||||
return waterColor.SurfaceColor;
|
||||
}
|
||||
@@ -407,6 +415,18 @@ namespace PckStudio.Forms.Editor
|
||||
int down = _atlas.Rows;
|
||||
int left = -1;
|
||||
int right = 1;
|
||||
if (_selectedTile.IsPartOfGroup)
|
||||
{
|
||||
AtlasGroup group = _selectedTile.GetGroup();
|
||||
if (!group.IsComposedOfMultipleTiles())
|
||||
{
|
||||
Size s = group.GetSize(new Size(1, 1));
|
||||
up = -_atlas.Rows * (group.Column - _selectedTile.Column + 1);
|
||||
down = _atlas.Rows * (group.Column - _selectedTile.Column + s.Height);
|
||||
left = group.Row - _selectedTile.Row - 1;
|
||||
right = group.Row - _selectedTile.Row + s.Width;
|
||||
}
|
||||
}
|
||||
switch (keyData)
|
||||
{
|
||||
case Keys.R:
|
||||
@@ -513,14 +533,14 @@ namespace PckStudio.Forms.Editor
|
||||
};
|
||||
if (saveFileDialog.ShowDialog(this) == DialogResult.OK)
|
||||
{
|
||||
_atlas.GetTileTexture(_selectedTile).Save(saveFileDialog.FileName, ImageFormat.Png);
|
||||
_atlas.GetTileTexture(_selectedTile, selectTilePictureBox.BlendColor).Save(saveFileDialog.FileName, ImageFormat.Png);
|
||||
Action<AtlasTile, FileInfo> onChange = new Action<AtlasTile, FileInfo>((tile, fileInfo) =>
|
||||
{
|
||||
Image img = Image.FromFile(fileInfo.FullName).ReleaseFromFile();
|
||||
bool success = _atlas.SetTile(tile, img);
|
||||
if (!success)
|
||||
{
|
||||
Size s = _atlas.GetTileArea(tile).Size;
|
||||
Size s = _atlas.GetTileArea(tile).FirstOrDefault().Size;
|
||||
new ToastContentBuilder()
|
||||
.AddText("Invalid Image Dimensions")
|
||||
.AddText($"Required: {s.Width}x{s.Height} Recived: {img.Width}x{img.Height}")
|
||||
@@ -555,13 +575,8 @@ namespace PckStudio.Forms.Editor
|
||||
{
|
||||
string colorKey = variantComboBox.SelectedItem.ToString();
|
||||
Color blendColor = FindBlendColorByKey(colorKey);
|
||||
if (_selectedTile.IsPartOfGroup && _selectedTile.GetGroup().IsAnimation())
|
||||
{
|
||||
selectTilePictureBox.Image = _atlas.GetAnimationFromGroup(_selectedTile.GetGroup()).CreateAnimationImage(blendColor);
|
||||
selectTilePictureBox.Start();
|
||||
return;
|
||||
}
|
||||
selectTilePictureBox.BlendColor = blendColor;
|
||||
CheckForAnimation();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -590,6 +605,7 @@ namespace PckStudio.Forms.Editor
|
||||
selectTilePictureBox.BlendColor = _colorPick.Color;
|
||||
variantComboBox.Enabled = false;
|
||||
clearColorButton.Enabled = true;
|
||||
CheckForAnimation();
|
||||
}
|
||||
|
||||
private void clearColorButton_Click(object sender, EventArgs e)
|
||||
@@ -599,6 +615,7 @@ namespace PckStudio.Forms.Editor
|
||||
selectTilePictureBox.BlendColor = Color.White;
|
||||
|
||||
clearColorButton.Enabled = false;
|
||||
CheckForAnimation();
|
||||
}
|
||||
|
||||
private void colorSlider_ValueChanged(object sender, EventArgs e)
|
||||
|
||||
@@ -156,19 +156,19 @@ namespace PckStudio.Core
|
||||
{
|
||||
if (!group.IsAnimation())
|
||||
return Animation.CreateEmpty();
|
||||
if (group is AtlasGroupLargeTileAnimation largeTileAnimation)
|
||||
if (group is AtlasLargeTileAnimation largeTileAnimation)
|
||||
return GetLargeAnimation(largeTileAnimation);
|
||||
return GetAnimation(group as AtlasGroupAnimation);
|
||||
return GetAnimation(group as AtlasAnimation);
|
||||
}
|
||||
|
||||
private Animation GetLargeAnimation(AtlasGroupLargeTileAnimation group)
|
||||
private Animation GetLargeAnimation(AtlasLargeTileAnimation group)
|
||||
{
|
||||
return new Animation(GetLargeAnimationTiles(group).Select(largeTileParts => largeTileParts.Select(t => t.Texture).Combine(group.RowSpan, group.ColumnSpan, _layoutDirection)), true, group.FrameTime);
|
||||
}
|
||||
|
||||
private IEnumerable<IEnumerable<AtlasTile>> GetLargeAnimationTiles(AtlasGroupLargeTileAnimation group) => group.GetLargeTiles().Select(GetLargeTile);
|
||||
private IEnumerable<IEnumerable<AtlasTile>> GetLargeAnimationTiles(AtlasLargeTileAnimation group) => group.GetLargeTiles().Select(GetLargeTile);
|
||||
|
||||
private Animation GetAnimation(AtlasGroupAnimation groupAnimation) => new Animation(GetRange(groupAnimation.Row, groupAnimation.Column, groupAnimation.Direction == ImageLayoutDirection.Horizontal ? groupAnimation.Count : 1, groupAnimation.Direction == ImageLayoutDirection.Vertical ? groupAnimation.Count : 1).Select(t => t.Texture), true, groupAnimation.FrameTime);
|
||||
private Animation GetAnimation(AtlasAnimation groupAnimation) => new Animation(GetRange(groupAnimation.Row, groupAnimation.Column, groupAnimation.Direction == ImageLayoutDirection.Horizontal ? groupAnimation.Count : 1, groupAnimation.Direction == ImageLayoutDirection.Vertical ? groupAnimation.Count : 1).Select(t => t.Texture), true, groupAnimation.FrameTime);
|
||||
|
||||
private Image BuildFinalImage() => _tiles.Select(t => t.Texture).Combine(Rows, Columns, _layoutDirection);
|
||||
|
||||
@@ -179,30 +179,50 @@ namespace PckStudio.Core
|
||||
SetRange(group.Row, group.Column, group.Count, group.Direction, animation.GetFrames().Select(f => f.Texture));
|
||||
}
|
||||
|
||||
private IEnumerable<AtlasTile> GetLargeTile(AtlasGroupLargeTile group) => GetRange(group.Row, group.Column, group.RowSpan, group.ColumnSpan);
|
||||
private IEnumerable<AtlasTile> GetLargeTile(AtlasLargeTile group) => GetRange(group.Row, group.Column, group.RowSpan, group.ColumnSpan);
|
||||
|
||||
public Image GetTileTexture(AtlasTile tile)
|
||||
public Image GetTileTexture(AtlasTile tile, Color blendColor)
|
||||
{
|
||||
if (!tile.IsPartOfGroup)
|
||||
return tile;
|
||||
AtlasGroup atlasGroup = tile.GetGroup();
|
||||
|
||||
if (atlasGroup.IsComposedOfMultipleTiles())
|
||||
return ComposeTileTexture(atlasGroup, blendColor);
|
||||
|
||||
if (!atlasGroup.IsLargeTile())
|
||||
return tile;
|
||||
|
||||
AtlasGroupLargeTile largeTile = atlasGroup is AtlasGroupLargeTileAnimation largeTileAnimation ? largeTileAnimation.GetTile(tile.Row, tile.Column) : atlasGroup as AtlasGroupLargeTile;
|
||||
return GetLargeTile(largeTile).Select(t => t.Texture).Combine(largeTile.RowSpan, largeTile.ColumnSpan, _layoutDirection);
|
||||
AtlasLargeTile largeTile = atlasGroup is AtlasLargeTileAnimation largeTileAnimation ? largeTileAnimation.GetTile(tile.Row, tile.Column) : atlasGroup as AtlasLargeTile;
|
||||
Image tileTexture = GetLargeTile(largeTile).Select(t => t.Texture).Combine(largeTile.RowSpan, largeTile.ColumnSpan, _layoutDirection);
|
||||
return atlasGroup.AllowCustomColor ? tileTexture.Blend(BlendOption.Multiply(blendColor)) : tileTexture;
|
||||
}
|
||||
|
||||
private Image ComposeTileTexture(AtlasGroup atlasGroup, Color blendColor)
|
||||
{
|
||||
Image result = new Bitmap(TileSize.Width, TileSize.Height);
|
||||
using Graphics g = Graphics.FromImage(result);
|
||||
g.ApplyConfig(GraphicsConfig.PixelPerfect());
|
||||
|
||||
AtlasTile[] textures = atlasGroup.GetTileArea(new Size(1, 1)).Select(r => this[r.X, r.Y]).ToArray();
|
||||
if (textures.Length > 1)
|
||||
{
|
||||
g.DrawImage(textures[0].Texture.Blend(BlendOption.Multiply(blendColor)), Point.Empty);
|
||||
g.DrawImage(textures[1], Point.Empty);
|
||||
}
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
private IEnumerable<AtlasTile> InternalGetTilesFromGroup(AtlasGroup atlasGroup, out int rowSpan, out int columnSpan)
|
||||
{
|
||||
if (atlasGroup is AtlasGroupLargeTileAnimation largeTileAnimation)
|
||||
if (atlasGroup is AtlasLargeTileAnimation largeTileAnimation)
|
||||
{
|
||||
rowSpan = largeTileAnimation.RowSpan;
|
||||
columnSpan = largeTileAnimation.ColumnSpan;
|
||||
return largeTileAnimation.GetLargeTiles().SelectMany(GetLargeTile);
|
||||
}
|
||||
if (atlasGroup is AtlasGroupLargeTile largeTile)
|
||||
if (atlasGroup is AtlasLargeTile largeTile)
|
||||
{
|
||||
rowSpan = largeTile.RowSpan;
|
||||
columnSpan = largeTile.ColumnSpan;
|
||||
@@ -210,15 +230,17 @@ namespace PckStudio.Core
|
||||
}
|
||||
rowSpan = 1;
|
||||
columnSpan = 1;
|
||||
if (atlasGroup is AtlasOverlayGroup multipleTiles)
|
||||
return multipleTiles.GetTileArea(new Size(1, 1)).Select(r => this[r.X, r.Y]);
|
||||
return GetRange(atlasGroup.Row, atlasGroup.Column, atlasGroup.Count, atlasGroup.Direction);
|
||||
}
|
||||
|
||||
public Rectangle GetTileArea(AtlasTile tile)
|
||||
public Rectangle[] GetTileArea(AtlasTile tile)
|
||||
{
|
||||
if (!tile.IsPartOfGroup)
|
||||
return tile.GetArea(TileSize);
|
||||
return [tile.GetArea(TileSize)];
|
||||
AtlasGroup group = tile.GetGroup();
|
||||
return new Rectangle(new Point(group.Row * TileSize.Width, group.Column * TileSize.Height), group.GetSize(TileSize));
|
||||
return group.GetTileArea(TileSize);
|
||||
}
|
||||
|
||||
public bool SetGroup(AtlasGroup group, Image texture)
|
||||
@@ -21,7 +21,7 @@ using Newtonsoft.Json.Serialization;
|
||||
|
||||
namespace PckStudio.Core
|
||||
{
|
||||
internal sealed class AtlasGroupAnimation : AtlasGroup
|
||||
internal sealed class AtlasAnimation : AtlasGroup
|
||||
{
|
||||
[JsonProperty("frameCount", Required = Required.Always)]
|
||||
private int _frameCount;
|
||||
@@ -40,10 +40,12 @@ namespace PckStudio.Core
|
||||
[JsonIgnore]
|
||||
protected override bool isLargeTile => false;
|
||||
|
||||
protected override bool isComposedOfMultipleTiles => false;
|
||||
|
||||
public override Size GetSize(Size tileSize) => new Size(tileSize.Width * (Direction == ImageLayoutDirection.Horizontal ? Count : 1), tileSize.Height * (Direction == ImageLayoutDirection.Vertical ? Count : 1));
|
||||
|
||||
public AtlasGroupAnimation(string name, int row, int column, int frameCount, ImageLayoutDirection direction, int frameTime = Animation.MINIMUM_FRAME_TIME)
|
||||
: base(name, row, column)
|
||||
public AtlasAnimation(string name, int row, int column, int frameCount, ImageLayoutDirection direction, int frameTime = Animation.MINIMUM_FRAME_TIME, bool allowCustomColor = default)
|
||||
: base(name, row, column, allowCustomColor)
|
||||
{
|
||||
_frameCount = frameCount;
|
||||
Direction = direction;
|
||||
@@ -16,7 +16,6 @@
|
||||
* 3. This notice may not be removed or altered from any source distribution.
|
||||
**/
|
||||
using System;
|
||||
using System.Data.SqlTypes;
|
||||
using System.Drawing;
|
||||
using Newtonsoft.Json;
|
||||
|
||||
@@ -30,6 +29,8 @@ namespace PckStudio.Core
|
||||
public int Row { get; }
|
||||
[JsonProperty("column", Required = Required.Always, Order = 2)]
|
||||
public int Column { get; }
|
||||
[JsonProperty("allowCustomColor", DefaultValueHandling = DefaultValueHandling.Populate)]
|
||||
public bool AllowCustomColor { get; }
|
||||
|
||||
[JsonIgnore]
|
||||
public virtual int Count => 1;
|
||||
@@ -38,20 +39,28 @@ namespace PckStudio.Core
|
||||
protected abstract bool isAnimation { get; }
|
||||
[JsonIgnore]
|
||||
protected abstract bool isLargeTile { get; }
|
||||
[JsonIgnore]
|
||||
protected abstract bool isComposedOfMultipleTiles { get; }
|
||||
[JsonProperty("direction")]
|
||||
public virtual ImageLayoutDirection Direction => Column > Row ? ImageLayoutDirection.Vertical : ImageLayoutDirection.Horizontal;
|
||||
|
||||
public AtlasGroup(string name, int row, int column)
|
||||
public AtlasGroup(string name, int row, int column, bool allowCustomColor)
|
||||
{
|
||||
Name = name;
|
||||
Row = Math.Max(0, row);
|
||||
Column = Math.Max(0, column);
|
||||
AllowCustomColor = allowCustomColor;
|
||||
}
|
||||
|
||||
public bool IsAnimation() => isAnimation;
|
||||
public bool IsLargeTile() => isLargeTile;
|
||||
public bool IsComposedOfMultipleTiles() => isComposedOfMultipleTiles;
|
||||
|
||||
public abstract Size GetSize(Size tileSize);
|
||||
|
||||
internal virtual Rectangle[] GetTileArea(Size tileSize)
|
||||
{
|
||||
return [new Rectangle(new Point(Row * tileSize.Width, Column * tileSize.Height), GetSize(tileSize))];
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -19,6 +19,7 @@ using System;
|
||||
using Newtonsoft.Json;
|
||||
using Newtonsoft.Json.Linq;
|
||||
using PckStudio.Core.Extensions;
|
||||
using PckStudio.Core.Json;
|
||||
|
||||
namespace PckStudio.Core
|
||||
{
|
||||
@@ -31,6 +32,11 @@ namespace PckStudio.Core
|
||||
if (!jObject.TryGetValue("name", out string name) || !jObject.TryGetValue("row", out int row) || !jObject.TryGetValue("column", out int column))
|
||||
return default;
|
||||
|
||||
bool allowCustomColor = default;
|
||||
jObject.TryGetValue("allowCustomColor", out allowCustomColor);
|
||||
if (jObject.TryGetValue("overlay", out JsonRowAndColumn rowsAndColumns))
|
||||
return new AtlasOverlayGroup(name, row, column, rowsAndColumns, allowCustomColor);
|
||||
|
||||
int frameTime = Animation.MINIMUM_FRAME_TIME;
|
||||
int frameCount = default;
|
||||
int rowSpan = default;
|
||||
@@ -41,11 +47,11 @@ namespace PckStudio.Core
|
||||
jObject.TryGetValue("direction", out direction);
|
||||
bool isLargeTile = jObject.TryGetValue("rowSpan", out rowSpan) && jObject.TryGetValue("columnSpan", out columnSpan);
|
||||
if (isAnimation && isLargeTile)
|
||||
return new AtlasGroupLargeTileAnimation(name, row, column, rowSpan, columnSpan, frameCount, direction, frameTime);
|
||||
return new AtlasLargeTileAnimation(name, row, column, rowSpan, columnSpan, frameCount, direction, frameTime, allowCustomColor);
|
||||
if (isAnimation)
|
||||
return new AtlasGroupAnimation(name, row, column, frameCount, direction, frameTime);
|
||||
return new AtlasAnimation(name, row, column, frameCount, direction, frameTime, allowCustomColor);
|
||||
if (isLargeTile)
|
||||
return new AtlasGroupLargeTile(name, row, column, rowSpan, columnSpan);
|
||||
return new AtlasLargeTile(name, row, column, rowSpan, columnSpan, allowCustomColor);
|
||||
return default;
|
||||
}
|
||||
|
||||
@@ -21,7 +21,7 @@ using Newtonsoft.Json;
|
||||
|
||||
namespace PckStudio.Core
|
||||
{
|
||||
internal sealed class AtlasGroupLargeTile : AtlasGroup
|
||||
internal sealed class AtlasLargeTile : AtlasGroup
|
||||
{
|
||||
[JsonProperty("rowSpan")]
|
||||
public int RowSpan { get; }
|
||||
@@ -37,10 +37,12 @@ namespace PckStudio.Core
|
||||
[JsonIgnore]
|
||||
protected override bool isLargeTile => true;
|
||||
|
||||
protected override bool isComposedOfMultipleTiles => false;
|
||||
|
||||
public override Size GetSize(Size tileSize) => new Size(RowSpan * tileSize.Width, ColumnSpan * tileSize.Height);
|
||||
|
||||
public AtlasGroupLargeTile(string name, int row, int column, int rowSpan, int columnSpan)
|
||||
: base(name, row, column)
|
||||
public AtlasLargeTile(string name, int row, int column, int rowSpan, int columnSpan, bool allowCustomColor)
|
||||
: base(name, row, column, allowCustomColor)
|
||||
{
|
||||
RowSpan = Math.Max(1, rowSpan);
|
||||
ColumnSpan = Math.Max(1, columnSpan);
|
||||
@@ -23,10 +23,10 @@ using Newtonsoft.Json;
|
||||
|
||||
namespace PckStudio.Core
|
||||
{
|
||||
internal sealed class AtlasGroupLargeTileAnimation : AtlasGroup
|
||||
internal sealed class AtlasLargeTileAnimation : AtlasGroup
|
||||
{
|
||||
[JsonIgnore]
|
||||
private AtlasGroupLargeTile[] _largeTiles;
|
||||
private AtlasLargeTile[] _largeTiles;
|
||||
|
||||
[JsonProperty("frameCount")]
|
||||
private int _frameCount;
|
||||
@@ -50,10 +50,12 @@ namespace PckStudio.Core
|
||||
[JsonIgnore]
|
||||
protected override bool isLargeTile => true;
|
||||
|
||||
protected override bool isComposedOfMultipleTiles => false;
|
||||
|
||||
public override Size GetSize(Size tileSize) => new Size(RowSpan * tileSize.Width * (Direction == ImageLayoutDirection.Horizontal ? _frameCount : 1), ColumnSpan * tileSize.Height * (Direction == ImageLayoutDirection.Vertical ? _frameCount : 1));
|
||||
|
||||
public AtlasGroupLargeTileAnimation(string name, int row, int column, int rowSpan, int columnSpan, int frameCount, ImageLayoutDirection direction, int frameTime = Animation.MINIMUM_FRAME_TIME)
|
||||
: base(name, row, column)
|
||||
public AtlasLargeTileAnimation(string name, int row, int column, int rowSpan, int columnSpan, int frameCount, ImageLayoutDirection direction, int frameTime = Animation.MINIMUM_FRAME_TIME, bool allowCustomColor = default)
|
||||
: base(name, row, column, allowCustomColor)
|
||||
{
|
||||
_frameCount = Math.Abs(frameCount);
|
||||
RowSpan = Math.Max(1, rowSpan);
|
||||
@@ -63,16 +65,16 @@ namespace PckStudio.Core
|
||||
_largeTiles = InternalGetLargeTiles().ToArray();
|
||||
}
|
||||
|
||||
private IEnumerable<AtlasGroupLargeTile> InternalGetLargeTiles()
|
||||
private IEnumerable<AtlasLargeTile> InternalGetLargeTiles()
|
||||
{
|
||||
for (int i = 0; i < _frameCount; i++)
|
||||
{
|
||||
yield return new AtlasGroupLargeTile($"{Name}_{i}", Row + (Direction == ImageLayoutDirection.Horizontal ? i * RowSpan : 0), Column + (Direction == ImageLayoutDirection.Vertical ? i * ColumnSpan : 0), RowSpan, ColumnSpan);
|
||||
yield return new AtlasLargeTile($"{Name}_{i}", Row + (Direction == ImageLayoutDirection.Horizontal ? i * RowSpan : 0), Column + (Direction == ImageLayoutDirection.Vertical ? i * ColumnSpan : 0), RowSpan, ColumnSpan, AllowCustomColor);
|
||||
}
|
||||
yield break;
|
||||
}
|
||||
|
||||
internal AtlasGroupLargeTile GetTile(int row, int col)
|
||||
internal AtlasLargeTile GetTile(int row, int col)
|
||||
{
|
||||
if (!IsInRange(row, col))
|
||||
return default;
|
||||
@@ -85,6 +87,6 @@ namespace PckStudio.Core
|
||||
return Row <= row && row < (Row + (RowSpan * (Direction == ImageLayoutDirection.Horizontal ? _frameCount : 1))) && Column <= col && col < (Column + (ColumnSpan * (Direction == ImageLayoutDirection.Horizontal ? _frameCount : 1)));
|
||||
}
|
||||
|
||||
internal IEnumerable<AtlasGroupLargeTile> GetLargeTiles() => _largeTiles;
|
||||
internal IEnumerable<AtlasLargeTile> GetLargeTiles() => _largeTiles;
|
||||
}
|
||||
}
|
||||
31
PckStudio.Core/Atlas/AtlasOverlayGroup.cs
Normal file
31
PckStudio.Core/Atlas/AtlasOverlayGroup.cs
Normal file
@@ -0,0 +1,31 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Drawing;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using PckStudio.Core.Json;
|
||||
|
||||
namespace PckStudio.Core
|
||||
{
|
||||
internal class AtlasOverlayGroup : AtlasGroup
|
||||
{
|
||||
private JsonRowAndColumn _overlayAtlasLocation;
|
||||
|
||||
public AtlasOverlayGroup(string name, int row, int column, JsonRowAndColumn overlayAtlasLocation, bool allowCustomColor)
|
||||
: base(name, row, column, allowCustomColor)
|
||||
{
|
||||
_overlayAtlasLocation = overlayAtlasLocation;
|
||||
}
|
||||
|
||||
protected override bool isAnimation => false;
|
||||
|
||||
protected override bool isLargeTile => false;
|
||||
|
||||
protected override bool isComposedOfMultipleTiles => true;
|
||||
|
||||
public override Size GetSize(Size tileSize) => tileSize;
|
||||
|
||||
internal override Rectangle[] GetTileArea(Size tileSize) => [new Rectangle(new Point(Row * tileSize.Width, Column * tileSize.Height), tileSize), new Rectangle(new Point(_overlayAtlasLocation.Row * tileSize.Width, _overlayAtlasLocation.Column * tileSize.Height), tileSize)];
|
||||
}
|
||||
}
|
||||
@@ -16,6 +16,7 @@
|
||||
* 3. This notice may not be removed or altered from any source distribution.
|
||||
**/
|
||||
using System;
|
||||
using System.Diagnostics;
|
||||
using System.Drawing;
|
||||
|
||||
namespace PckStudio.Core
|
||||
@@ -44,6 +45,7 @@ namespace PckStudio.Core
|
||||
|
||||
internal void SetGroup(AtlasGroup group)
|
||||
{
|
||||
Debug.Assert(_group is null, $"Tile is already part of group:'{_group?.Name}'");
|
||||
_group = group;
|
||||
}
|
||||
|
||||
@@ -9,13 +9,13 @@ namespace PckStudio.Core.Json
|
||||
{
|
||||
public class JsonColorEntry
|
||||
{
|
||||
[JsonProperty("defaultName", Required = Required.Always)]
|
||||
[JsonProperty("defaultName", DefaultValueHandling = DefaultValueHandling.Populate)]
|
||||
public string DefaultName { get; set; }
|
||||
|
||||
[JsonProperty("isWaterColour", DefaultValueHandling = DefaultValueHandling.Populate)]
|
||||
public bool IsWaterColour { get; set; }
|
||||
|
||||
[JsonProperty("variants", DefaultValueHandling = DefaultValueHandling.Populate)]
|
||||
public string[] Variants { get; set; }
|
||||
[JsonProperty("variants", NullValueHandling = NullValueHandling.Ignore)]
|
||||
public string[] Variants { get; set; } = Array.Empty<string>();
|
||||
}
|
||||
}
|
||||
|
||||
17
PckStudio.Core/Json/JsonRowAndColumn.cs
Normal file
17
PckStudio.Core/Json/JsonRowAndColumn.cs
Normal file
@@ -0,0 +1,17 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using Newtonsoft.Json;
|
||||
|
||||
namespace PckStudio.Core.Json
|
||||
{
|
||||
internal class JsonRowAndColumn
|
||||
{
|
||||
[JsonProperty("row", Required = Required.Always)]
|
||||
public int Row { get; set; }
|
||||
[JsonProperty("column", Required = Required.Always)]
|
||||
public int Column { get; set; }
|
||||
}
|
||||
}
|
||||
@@ -4,6 +4,7 @@ using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using Newtonsoft.Json;
|
||||
using PckStudio.Json;
|
||||
|
||||
namespace PckStudio.Core.Json
|
||||
{
|
||||
@@ -15,21 +16,18 @@ namespace PckStudio.Core.Json
|
||||
[JsonProperty("internalName")]
|
||||
public string InternalName { get; set; }
|
||||
|
||||
[JsonProperty("width")]
|
||||
public int TileWidth { get; set; } = 1;
|
||||
|
||||
[JsonProperty("height")]
|
||||
public int TileHeight { get; set; } = 1;
|
||||
|
||||
[JsonIgnore]
|
||||
public bool HasColourEntry => ColourEntry != null;
|
||||
|
||||
[JsonProperty("colourEntry", DefaultValueHandling = DefaultValueHandling.Ignore)]
|
||||
public JsonColorEntry ColourEntry { get; set; }
|
||||
|
||||
[JsonProperty("allowCustomColour", DefaultValueHandling = DefaultValueHandling.Populate)]
|
||||
public bool AllowCustomColour { get; set; }
|
||||
|
||||
[JsonProperty("colorKey", DefaultValueHandling = DefaultValueHandling.Ignore)]
|
||||
public string ColorKey { get; set; } = string.Empty;
|
||||
|
||||
[JsonIgnore]
|
||||
public bool HasColourEntry => Tiles.ColorEntries.ContainsKey(ColorKey);
|
||||
|
||||
[JsonIgnore]
|
||||
public JsonColorEntry ColorEntry => Tiles.ColorEntries[ColorKey];
|
||||
|
||||
public JsonTileInfo(string displayName, string internalName)
|
||||
{
|
||||
DisplayName = displayName;
|
||||
|
||||
@@ -56,14 +56,15 @@
|
||||
<Compile Include="ArmorPiece.cs" />
|
||||
<Compile Include="ArmorSet.cs" />
|
||||
<Compile Include="ArmorSetDescription.cs" />
|
||||
<Compile Include="Atlas.cs" />
|
||||
<Compile Include="AtlasGroup.cs" />
|
||||
<Compile Include="AtlasGroupAnimation.cs" />
|
||||
<Compile Include="AtlasGroupJsonConverter.cs" />
|
||||
<Compile Include="AtlasGroupLargeTile.cs" />
|
||||
<Compile Include="AtlasGroupLargeTileAnimation.cs" />
|
||||
<Compile Include="Atlas\Atlas.cs" />
|
||||
<Compile Include="Atlas\AtlasGroup.cs" />
|
||||
<Compile Include="Atlas\AtlasAnimation.cs" />
|
||||
<Compile Include="Atlas\AtlasGroupJsonConverter.cs" />
|
||||
<Compile Include="Atlas\AtlasLargeTile.cs" />
|
||||
<Compile Include="Atlas\AtlasLargeTileAnimation.cs" />
|
||||
<Compile Include="AtlasResource.cs" />
|
||||
<Compile Include="AtlasTile.cs" />
|
||||
<Compile Include="Atlas\AtlasOverlayGroup.cs" />
|
||||
<Compile Include="Atlas\AtlasTile.cs" />
|
||||
<Compile Include="BoundingBox.cs" />
|
||||
<Compile Include="ConsolePlatform.cs" />
|
||||
<Compile Include="DelegatedFileSaveContext.cs" />
|
||||
@@ -155,6 +156,7 @@
|
||||
<Compile Include="Json\EntityInfo.cs" />
|
||||
<Compile Include="Json\JsonDefaultModel.cs" />
|
||||
<Compile Include="Json\JsonModelMetaData.cs" />
|
||||
<Compile Include="Json\JsonRowAndColumn.cs" />
|
||||
<Compile Include="Json\TileInfo.cs" />
|
||||
<Compile Include="Json\UpdateInformation.cs" />
|
||||
<Compile Include="MapData.cs" />
|
||||
@@ -221,6 +223,7 @@
|
||||
<None Include="Resources\atlas\additionalMapiconsData.json" />
|
||||
<None Include="Resources\atlas\bannerData.json" />
|
||||
<None Include="Resources\atlas\blockData.json" />
|
||||
<None Include="Resources\atlas\colorEntries.json" />
|
||||
<None Include="Resources\atlas\experienceOrbData.json" />
|
||||
<None Include="Resources\atlas\explosionData.json" />
|
||||
<None Include="Resources\atlas\groups\item_groups.json" />
|
||||
|
||||
294
PckStudio.Core/Properties/Resources.Designer.cs
generated
294
PckStudio.Core/Properties/Resources.Designer.cs
generated
@@ -105,30 +105,28 @@ namespace PckStudio.Core.Properties {
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to {
|
||||
/// "COMMENT_1": "JSON by MattNL",
|
||||
/// "entries": [
|
||||
/// {
|
||||
/// "internalName": "base",
|
||||
/// "displayName": "Base",
|
||||
///
|
||||
/// "colourEntry": {
|
||||
/// "defaultName": "Banner_White",
|
||||
/// "variants": [
|
||||
/// "Banner_Black",
|
||||
/// "Banner_Blue",
|
||||
/// "Banner_Brown",
|
||||
/// "Banner_Cyan",
|
||||
/// "Banner_Gray",
|
||||
/// "Banner_Green",
|
||||
/// "Banner_Light_Blue",
|
||||
/// "Banner_Lime",
|
||||
/// "Banner_Magenta",
|
||||
/// "Banner_Orange",
|
||||
/// "Banner_Pink",
|
||||
/// "Banner_Purple",
|
||||
/// "Banner_Red",
|
||||
/// "Banner_Silver",
|
||||
/// "Banner [rest of string was truncated]";.
|
||||
/// "COMMENT_1": "JSON by MattNL",
|
||||
/// "entries": [
|
||||
/// {
|
||||
/// "internalName": "base",
|
||||
/// "displayName": "Base",
|
||||
/// "colorKey": "Banner_Color"
|
||||
/// },
|
||||
/// {
|
||||
/// "internalName": "border",
|
||||
/// "displayName": "Bordure",
|
||||
/// "colorKey": "Banner_Color"
|
||||
/// },
|
||||
/// {
|
||||
/// "internalName": "bricks",
|
||||
/// "displayName": "Field Masoned",
|
||||
/// "colorKey": "Banner_Color"
|
||||
/// },
|
||||
/// {
|
||||
/// "internalName": "circle",
|
||||
/// "displayName": "Roundel",
|
||||
/// "colorKey": "Banner_Color"
|
||||
/// }, [rest of string was truncated]";.
|
||||
/// </summary>
|
||||
public static string bannerData {
|
||||
get {
|
||||
@@ -157,12 +155,7 @@ namespace PckStudio.Core.Properties {
|
||||
///
|
||||
/// "colourEntry": {
|
||||
/// "defaultName": "Grass_Common",
|
||||
/// "variants": [
|
||||
/// "Grass_Common",
|
||||
/// "Grass_Mesa",
|
||||
/// "Grass_Swamp1",
|
||||
/// "Grass_Swamp2"
|
||||
/// ]
|
||||
/// "colorCategory": ["Grass"]
|
||||
/// }
|
||||
/// },
|
||||
/// {
|
||||
@@ -171,7 +164,11 @@ namespace PckStudio.Core.Properties {
|
||||
/// },
|
||||
/// {
|
||||
/// "internalName": "dirt",
|
||||
/// "displayName" [rest of string was truncated]";.
|
||||
/// "displayName": "Dirt"
|
||||
/// },
|
||||
/// {
|
||||
/// "internalName": "grass_side",
|
||||
/// "displayName": "Grass [rest of string was truncated]";.
|
||||
/// </summary>
|
||||
public static string blockData {
|
||||
get {
|
||||
@@ -229,6 +226,37 @@ namespace PckStudio.Core.Properties {
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to {
|
||||
/// "Particle": {
|
||||
/// "variants": [
|
||||
/// "Particle_Smoke",
|
||||
/// "Particle_NetherPortal",
|
||||
/// "Particle_EnderPortal",
|
||||
/// "Particle_Ender",
|
||||
/// "Particle_DragonBreathMin",
|
||||
/// "Particle_DragonBreathMax"
|
||||
/// ]
|
||||
/// },
|
||||
/// "Particle_EnchantmentTable": {
|
||||
/// "defaultName": "Particle_EnchantmentTable"
|
||||
/// },
|
||||
/// "Particle_ScoreRing": {
|
||||
/// "variants": [
|
||||
/// "Particle_ScoreRing_Small",
|
||||
/// "Particle_ScoreRing_Medium",
|
||||
/// "Particle_ScoreRing_Large"
|
||||
/// ]
|
||||
/// },
|
||||
/// "Potion_Effect": {
|
||||
/// [rest of string was truncated]";.
|
||||
/// </summary>
|
||||
public static string colorEntries {
|
||||
get {
|
||||
return ResourceManager.GetString("colorEntries", resourceCulture);
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized resource of type System.Drawing.Bitmap.
|
||||
/// </summary>
|
||||
@@ -298,24 +326,23 @@ namespace PckStudio.Core.Properties {
|
||||
/// "entries": [
|
||||
/// {
|
||||
/// "internalName": "experience_orb_0",
|
||||
/// "displayName": "Experience Orb (Size 1)",
|
||||
/// "hasColourEntry": true,
|
||||
/// "colourEntry": {
|
||||
/// "defaultName": "experience_orb",
|
||||
/// "variants": ["experience_orb"]
|
||||
/// }
|
||||
/// "displayName": "Experience Orb (Size 1)"
|
||||
/// },
|
||||
/// {
|
||||
/// "internalName": "experience_orb_1",
|
||||
/// "displayName": "Experience Orb (Size 2)",
|
||||
/// "hasColourEntry": true,
|
||||
/// "colourEntry": {
|
||||
/// "defaultName": "experience_orb",
|
||||
/// "variants": ["experience_orb"]
|
||||
/// }
|
||||
/// "displayName": "Experience Orb (Size 2)"
|
||||
/// },
|
||||
/// {
|
||||
/// " [rest of string was truncated]";.
|
||||
/// "internalName": "experience_orb_2",
|
||||
/// "displayName": "Experience Orb (Size 3)"
|
||||
/// },
|
||||
/// {
|
||||
/// "internalName": "experience_orb_3",
|
||||
/// "displayName": "Experience Orb (Size 4)"
|
||||
/// },
|
||||
/// {
|
||||
/// "internalName": "experience_orb_4",
|
||||
/// "displayName": "Experience Or [rest of string was truncated]";.
|
||||
/// </summary>
|
||||
public static string experienceOrbData {
|
||||
get {
|
||||
@@ -325,28 +352,26 @@ namespace PckStudio.Core.Properties {
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to {
|
||||
/// "COMMENT_1": "JSON by MattNL",
|
||||
/// "entries": [
|
||||
/// {
|
||||
/// "internalName": "explosion_0",
|
||||
/// "displayName": "Explosion (Stage 1)",
|
||||
/// "hasColourEntry": true,
|
||||
/// "colourEntry": {
|
||||
/// "defaultName": "Particle_Explode",
|
||||
/// "variants": [
|
||||
/// "Particle_Explode",
|
||||
/// "Particle_HugeExplosion"
|
||||
/// ]
|
||||
/// }
|
||||
/// },
|
||||
/// {
|
||||
/// "internalName": "explosion_1",
|
||||
/// "displayName": "Explosion (Stage 2)",
|
||||
/// "hasColourEntry": true,
|
||||
/// "colourEntry": {
|
||||
/// "defaultName": "Particle_Explode",
|
||||
/// "variants": [
|
||||
/// [rest of string was truncated]";.
|
||||
/// "COMMENT_1": "JSON by MattNL",
|
||||
/// "entries": [
|
||||
/// {
|
||||
/// "internalName": "explosion_0",
|
||||
/// "displayName": "Explosion (Stage 1)",
|
||||
/// "colorKey": "Particle_Explode"
|
||||
/// },
|
||||
/// {
|
||||
/// "internalName": "explosion_1",
|
||||
/// "displayName": "Explosion (Stage 2)",
|
||||
/// "colorKey": "Particle_Explode"
|
||||
/// },
|
||||
/// {
|
||||
/// "internalName": "explosion_2",
|
||||
/// "displayName": "Explosion (Stage 3)",
|
||||
/// "colorKey": "Particle_Explode"
|
||||
/// },
|
||||
/// {
|
||||
/// "internalName": "explosion_3",
|
||||
/// [rest of string was truncated]";.
|
||||
/// </summary>
|
||||
public static string explosionData {
|
||||
get {
|
||||
@@ -413,18 +438,19 @@ namespace PckStudio.Core.Properties {
|
||||
/// "internalName": "helmetCloth",
|
||||
/// "displayName": "Leather Cap",
|
||||
/// "allowCustomColour": true,
|
||||
/// "hasColourEntry": true,
|
||||
/// "colourEntry": {
|
||||
/// "defaultName": "Armour_Default_Leather_Colour",
|
||||
/// "variants": [ "Armour_Default_Leather_Colour" ]
|
||||
/// }
|
||||
/// "colorKey": "Armour_Default_Leather_Colour"
|
||||
/// },
|
||||
/// {
|
||||
/// "internalName": "helmetChain",
|
||||
/// "displayName": "Chain Helmet"
|
||||
/// },
|
||||
/// {
|
||||
/// "internalName": [rest of string was truncated]";.
|
||||
/// "internalName": "helmetIron",
|
||||
/// "displayName": "Iron Helmet"
|
||||
/// },
|
||||
/// {
|
||||
/// "internalName": "helmetDiamond",
|
||||
/// "displayName": [rest of string was truncated]";.
|
||||
/// </summary>
|
||||
public static string itemData {
|
||||
get {
|
||||
@@ -445,14 +471,33 @@ namespace PckStudio.Core.Properties {
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to [
|
||||
/// {
|
||||
/// "frameCount": 3,
|
||||
/// "frameTime": 6,
|
||||
/// "direction": 1,
|
||||
/// "name": "Bow Pulling",
|
||||
/// "row": 5,
|
||||
/// "column": 6
|
||||
/// }
|
||||
///].
|
||||
/// "column": 6,
|
||||
/// "frameCount": 3,
|
||||
/// "frameTime": 6,
|
||||
/// "direction": 1
|
||||
/// },
|
||||
/// {
|
||||
/// "name": "Leather Cap",
|
||||
/// "row": 0,
|
||||
/// "column": 0,
|
||||
/// "overlay": { "row": 0, "column": 9 }
|
||||
/// },
|
||||
/// {
|
||||
/// "name": "Leather Tunic",
|
||||
/// "row": 0,
|
||||
/// "column": 1,
|
||||
/// "overlay": { "row": 0, "column": 10 }
|
||||
/// },
|
||||
/// {
|
||||
/// "name": "Leather Pants",
|
||||
/// "row": 0,
|
||||
/// "column": 2,
|
||||
/// "overlay": { "row": 0, "column": 11 }
|
||||
/// },
|
||||
/// {
|
||||
/// "name": "Leather [rest of string was truncated]";.
|
||||
/// </summary>
|
||||
public static string items_groups {
|
||||
get {
|
||||
@@ -588,35 +633,35 @@ namespace PckStudio.Core.Properties {
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to [
|
||||
/// {
|
||||
/// "rowSpan": 2,
|
||||
/// "columnSpan": 1,
|
||||
/// "name": "The Pool",
|
||||
/// "row": 0,
|
||||
/// "column": 2,
|
||||
/// "rowSpan": 2,
|
||||
/// "columnSpan": 1,
|
||||
/// "direction": 1
|
||||
/// },
|
||||
/// {
|
||||
/// "rowSpan": 2,
|
||||
/// "columnSpan": 1,
|
||||
/// "name": "Bonjour Monsiuer Courbet",
|
||||
/// "row": 2,
|
||||
/// "column": 2,
|
||||
/// "rowSpan": 2,
|
||||
/// "columnSpan": 1,
|
||||
/// "direction": 0
|
||||
/// },
|
||||
/// {
|
||||
/// "rowSpan": 2,
|
||||
/// "columnSpan": 1,
|
||||
/// "name": "Seaside",
|
||||
/// "row": 4,
|
||||
/// "column": 2,
|
||||
/// "rowSpan": 2,
|
||||
/// "columnSpan": 1,
|
||||
/// "direction": 0
|
||||
/// },
|
||||
/// {
|
||||
/// "rowSpan": 2,
|
||||
/// "columnSpan": 1,
|
||||
/// "name": "sunset_dense",
|
||||
/// "row": 6,
|
||||
/// "column": [rest of string was truncated]";.
|
||||
/// "column": 2,
|
||||
/// "rowSpan": 2,
|
||||
/// "columnSpan": [rest of string was truncated]";.
|
||||
/// </summary>
|
||||
public static string painting_groups {
|
||||
get {
|
||||
@@ -671,21 +716,22 @@ namespace PckStudio.Core.Properties {
|
||||
/// {
|
||||
/// "internalName": "generic_0",
|
||||
/// "displayName": "Generic (Stage 1)",
|
||||
/// "colourEntry": {
|
||||
/// "defaultName": "None",
|
||||
/// "variants": [
|
||||
/// "None",
|
||||
/// "Particle_Smoke",
|
||||
/// "Particle_NetherPortal",
|
||||
/// "Particle_EnderPortal",
|
||||
/// "Particle_Ender",
|
||||
/// "Particle_DragonBreathMin",
|
||||
/// "Particle_DragonBreathMax"
|
||||
/// ]
|
||||
/// }
|
||||
/// "colorKey": "Particle"
|
||||
/// },
|
||||
/// {
|
||||
/// "internalName": "generic_1", [rest of string was truncated]";.
|
||||
/// "internalName": "generic_1",
|
||||
/// "displayName": "Generic (Stage 2)",
|
||||
/// "colorKey": "Particle"
|
||||
/// },
|
||||
/// {
|
||||
/// "internalName": "generic_2",
|
||||
/// "displayName": "Generic (Stage 3)",
|
||||
/// "colorKey": "Particle"
|
||||
/// },
|
||||
/// {
|
||||
/// "internalName": "generic_3",
|
||||
/// "displayName": "Generic (Stage 4)",
|
||||
/// [rest of string was truncated]";.
|
||||
/// </summary>
|
||||
public static string particleData {
|
||||
get {
|
||||
@@ -706,36 +752,36 @@ namespace PckStudio.Core.Properties {
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to [
|
||||
/// {
|
||||
/// "name": "Generic",
|
||||
/// "row": 0,
|
||||
/// "column": 0,
|
||||
/// "frameCount": 8,
|
||||
/// "frameTime": 2,
|
||||
/// "direction": 0,
|
||||
/// "name": "generic",
|
||||
/// "row": 0,
|
||||
/// "column": 0
|
||||
/// "direction": 0
|
||||
/// },
|
||||
/// {
|
||||
/// "name": "Splash",
|
||||
/// "row": 3,
|
||||
/// "column": 1,
|
||||
/// "frameCount": 4,
|
||||
/// "frameTime": 2,
|
||||
/// "direction": 0,
|
||||
/// "name": "splash",
|
||||
/// "row": 3,
|
||||
/// "column": 1
|
||||
/// "direction": 0
|
||||
/// },
|
||||
/// {
|
||||
/// "name": "Drip",
|
||||
/// "row": 0,
|
||||
/// "column": 7,
|
||||
/// "frameCount": 3,
|
||||
/// "frameTime": 4,
|
||||
/// "direction": 0,
|
||||
/// "name": "drip",
|
||||
/// "row": 0,
|
||||
/// "column": 7
|
||||
/// "direction": 0
|
||||
/// },
|
||||
/// {
|
||||
/// "name": "Effect",
|
||||
/// "row": 0,
|
||||
/// "column": 8,
|
||||
/// "frameCount": 8,
|
||||
/// "frameTime": 2,
|
||||
/// "direction": 0,
|
||||
/// "name": "effect",
|
||||
/// "row": 0,
|
||||
/// "column": [rest of string was truncated]";.
|
||||
/// "direction": [rest of string was truncated]";.
|
||||
/// </summary>
|
||||
public static string particles_groups {
|
||||
get {
|
||||
@@ -776,35 +822,35 @@ namespace PckStudio.Core.Properties {
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to [
|
||||
/// {
|
||||
/// "rowSpan": 1,
|
||||
/// "columnSpan": 2,
|
||||
/// "name": "Oak Door",
|
||||
/// "row": 1,
|
||||
/// "column": 5,
|
||||
/// "rowSpan": 1,
|
||||
/// "columnSpan": 2,
|
||||
/// "direction": 1
|
||||
/// },
|
||||
/// {
|
||||
/// "rowSpan": 1,
|
||||
/// "columnSpan": 2,
|
||||
/// "name": "Iron Door",
|
||||
/// "row": 2,
|
||||
/// "column": 5,
|
||||
/// "rowSpan": 1,
|
||||
/// "columnSpan": 2,
|
||||
/// "direction": 1
|
||||
/// },
|
||||
/// {
|
||||
/// "rowSpan": 1,
|
||||
/// "columnSpan": 2,
|
||||
/// "name": "Acacia Door",
|
||||
/// "row": 0,
|
||||
/// "column": 23,
|
||||
/// "rowSpan": 1,
|
||||
/// "columnSpan": 2,
|
||||
/// "direction": 1
|
||||
/// },
|
||||
/// {
|
||||
/// "rowSpan": 1,
|
||||
/// "columnSpan": 2,
|
||||
/// "name": "Birch Door",
|
||||
/// "row": 1,
|
||||
/// "column": 23,
|
||||
/// "rowSpan": 1,
|
||||
/// "columnSpan": 2,
|
||||
/// "di [rest of string was truncated]";.
|
||||
/// </summary>
|
||||
public static string terrain_groups {
|
||||
|
||||
@@ -247,4 +247,7 @@
|
||||
<data name="unknown_pack" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Resources\unknown_pack.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||
</data>
|
||||
<data name="colorEntries" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Resources\atlas\colorEntries.json;System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089;Windows-1252</value>
|
||||
</data>
|
||||
</root>
|
||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
376
PckStudio.Core/Resources/atlas/colorEntries.json
Normal file
376
PckStudio.Core/Resources/atlas/colorEntries.json
Normal file
@@ -0,0 +1,376 @@
|
||||
{
|
||||
"Grass": {
|
||||
"variants": [
|
||||
"Grass_Common",
|
||||
"Grass_Mesa",
|
||||
"Grass_Swamp1",
|
||||
"Grass_Swamp2"
|
||||
]
|
||||
},
|
||||
"Foliage": {
|
||||
"variants": [
|
||||
"Foliage_Default",
|
||||
"Foliage_Evergreen",
|
||||
"Foliage_Birch",
|
||||
"Foliage_Mesa",
|
||||
"Foliage_Swampland"
|
||||
]
|
||||
},
|
||||
"RedstoneDust": {
|
||||
"variants": [
|
||||
"Tile_RedstoneDust",
|
||||
"Tile_RedstoneDustUnlit",
|
||||
"Tile_RedstoneDustLitMin",
|
||||
"Tile_RedstoneDustLitMax"
|
||||
]
|
||||
},
|
||||
"Particle": {
|
||||
"variants": [
|
||||
"Particle_Smoke",
|
||||
"Particle_NetherPortal",
|
||||
"Particle_EnderPortal",
|
||||
"Particle_Ender",
|
||||
"Particle_DragonBreathMin",
|
||||
"Particle_DragonBreathMax"
|
||||
]
|
||||
},
|
||||
"Particle_ScoreRing": {
|
||||
"variants": [
|
||||
"Particle_ScoreRing_Small",
|
||||
"Particle_ScoreRing_Medium",
|
||||
"Particle_ScoreRing_Large"
|
||||
]
|
||||
},
|
||||
"Potion_Effect": {
|
||||
"variants": [
|
||||
"Potion_BaseColour",
|
||||
"Effect_MovementSpeed",
|
||||
"Effect_MovementSlowDown",
|
||||
"Effect_DigSpeed",
|
||||
"Effect_DigSlowdown",
|
||||
"Effect_DamageBoost",
|
||||
"Effect_Heal",
|
||||
"Effect_Harm",
|
||||
"Effect_Jump",
|
||||
"Effect_Confusion",
|
||||
"Effect_Regeneration",
|
||||
"Effect_DamageResistance",
|
||||
"Effect_FireResistance",
|
||||
"Effect_WaterBreathing",
|
||||
"Effect_Invisibility",
|
||||
"Effect_Blindness",
|
||||
"Effect_NightVision",
|
||||
"Effect_Hunger",
|
||||
"Effect_Weakness",
|
||||
"Effect_Poison",
|
||||
"Effect_Wither",
|
||||
"Effect_HealthBoost",
|
||||
"Effect_Absorption",
|
||||
"Effect_Saturation",
|
||||
"Effect_Levitation",
|
||||
"Effect_Luck",
|
||||
"Effect_BadLuck",
|
||||
"Effect_TurtleMaster",
|
||||
"Effect_SlowFall"
|
||||
]
|
||||
},
|
||||
"Particle_Drip": {
|
||||
"variants": [
|
||||
"Particle_DripWater",
|
||||
"Particle_DripLavaStart",
|
||||
"Particle_DripLavaEnd"
|
||||
]
|
||||
},
|
||||
"Particle_Note": {
|
||||
"variants": [
|
||||
"Particle_Note_00",
|
||||
"Particle_Note_01",
|
||||
"Particle_Note_02",
|
||||
"Particle_Note_03",
|
||||
"Particle_Note_04",
|
||||
"Particle_Note_05",
|
||||
"Particle_Note_06",
|
||||
"Particle_Note_07",
|
||||
"Particle_Note_08",
|
||||
"Particle_Note_09",
|
||||
"Particle_Note_10",
|
||||
"Particle_Note_11",
|
||||
"Particle_Note_12",
|
||||
"Particle_Note_13",
|
||||
"Particle_Note_14",
|
||||
"Particle_Note_15",
|
||||
"Particle_Note_16",
|
||||
"Particle_Note_17",
|
||||
"Particle_Note_18",
|
||||
"Particle_Note_19",
|
||||
"Particle_Note_20",
|
||||
"Particle_Note_21",
|
||||
"Particle_Note_22",
|
||||
"Particle_Note_23",
|
||||
"Particle_Note_24"
|
||||
]
|
||||
},
|
||||
"Water": {
|
||||
"isWaterColour": true,
|
||||
"variants": [
|
||||
"Water_Plains",
|
||||
"Water_Ocean",
|
||||
"Water_Desert",
|
||||
"Water_ExtremeHills",
|
||||
"Water_Forest",
|
||||
"Water_Taiga",
|
||||
"Water_Swampland",
|
||||
"Water_River",
|
||||
"Water_Hell",
|
||||
"Water_Sky",
|
||||
"Water_FrozenOcean",
|
||||
"Water_FrozenRiver",
|
||||
"Water_IcePlains",
|
||||
"Water_IceMountains",
|
||||
"Water_MushroomIsland",
|
||||
"Water_MushroomIslandShore",
|
||||
"Water_Beach",
|
||||
"Water_DesertHills",
|
||||
"Water_ForestHills",
|
||||
"Water_TaigaHills",
|
||||
"Water_ExtremeHillsEdge",
|
||||
"Water_Jungle",
|
||||
"Water_JungleHills",
|
||||
"Water_JungleEdge",
|
||||
"Water_DeepOcean",
|
||||
"Water_StoneBeach",
|
||||
"Water_ColdBeach",
|
||||
"Water_BirchForest",
|
||||
"Water_BirchForestHills",
|
||||
"Water_RoofedForest",
|
||||
"Water_ColdTaiga",
|
||||
"Water_ColdTaigaHills",
|
||||
"Water_MegaTaiga",
|
||||
"Water_MegaTaigaHills",
|
||||
"Water_ExtremeHillsPlus",
|
||||
"Water_Savanna",
|
||||
"Water_SavannaPlateau",
|
||||
"Water_Mesa",
|
||||
"Water_MesaPlateauF",
|
||||
"Water_MesaPlateau"
|
||||
]
|
||||
},
|
||||
"SpawnEggBaseColor": {
|
||||
"variants": [
|
||||
"Mob_Creeper_Colour1",
|
||||
"Mob_Skeleton_Colour1",
|
||||
"Mob_Spider_Colour1",
|
||||
"Mob_Zombie_Colour1",
|
||||
"Mob_Slime_Colour1",
|
||||
"Mob_Ghast_Colour1",
|
||||
"Mob_PigZombie_Colour1",
|
||||
"Mob_Enderman_Colour1",
|
||||
"Mob_CaveSpider_Colour1",
|
||||
"Mob_Silverfish_Colour1",
|
||||
"Mob_Blaze_Colour1",
|
||||
"Mob_LavaSlime_Colour1",
|
||||
"Mob_Pig_Colour1",
|
||||
"Mob_Sheep_Colour1",
|
||||
"Mob_Cow_Colour1",
|
||||
"Mob_Chicken_Colour1",
|
||||
"Mob_Squid_Colour1",
|
||||
"Mob_Wolf_Colour1",
|
||||
"Mob_MushroomCow_Colour1",
|
||||
"Mob_Ocelot_Colour1",
|
||||
"Mob_Villager_Colour1",
|
||||
"Mob_Bat_Colour1",
|
||||
"Mob_Witch_Colour1",
|
||||
"Mob_Horse_Colour1",
|
||||
"Mob_Endermite_Color1",
|
||||
"Mob_Guardian_Color1",
|
||||
"Mob_Rabbit_Colour1",
|
||||
"Mob_PolarBear_Colour1",
|
||||
"Mob_Shulker_Colour1",
|
||||
"Mob_Elder_Guardian_Colour1",
|
||||
"Mob_Evocation_Illager_Colour1",
|
||||
"Mob_Llama_Colour1",
|
||||
"Mob_Donkey_Colour1",
|
||||
"Mob_Skeleton_Horse_Colour1",
|
||||
"Mob_Zombie_Horse_Colour1",
|
||||
"Mob_Mule_Colour1",
|
||||
"Mob_Stray_Colour1",
|
||||
"Mob_Husk_Colour1",
|
||||
"Mob_Vex_Colour1",
|
||||
"Mob_Vindication_Illager_Colour1",
|
||||
"Mob_Zombie_Villager_Colour1",
|
||||
"Mob_Parrot_Colour1",
|
||||
"Mob_Wither_Skeleton_Colour1",
|
||||
"Mob_Turtle_Colour1",
|
||||
"Mob_Tropical_Colour1",
|
||||
"Mob_Cod_Colour1",
|
||||
"Mob_Pufferfish_Colour1",
|
||||
"Mob_Salmon_Colour1",
|
||||
"Mob_Drowned_Colour1",
|
||||
"Mob_Dolphin_Colour1",
|
||||
"Mob_Phantom_Colour1"
|
||||
]
|
||||
},
|
||||
"SpawnEggOverlayColor": {
|
||||
"variants": [
|
||||
"Mob_Creeper_Colour2",
|
||||
"Mob_Skeleton_Colour2",
|
||||
"Mob_Spider_Colour2",
|
||||
"Mob_Zombie_Colour2",
|
||||
"Mob_Slime_Colour2",
|
||||
"Mob_Ghast_Colour2",
|
||||
"Mob_PigZombie_Colour2",
|
||||
"Mob_Enderman_Colour2",
|
||||
"Mob_CaveSpider_Colour2",
|
||||
"Mob_Silverfish_Colour2",
|
||||
"Mob_Blaze_Colour2",
|
||||
"Mob_LavaSlime_Colour2",
|
||||
"Mob_Pig_Colour2",
|
||||
"Mob_Sheep_Colour2",
|
||||
"Mob_Cow_Colour2",
|
||||
"Mob_Chicken_Colour2",
|
||||
"Mob_Squid_Colour2",
|
||||
"Mob_Wolf_Colour2",
|
||||
"Mob_MushroomCow_Colour2",
|
||||
"Mob_Ocelot_Colour2",
|
||||
"Mob_Villager_Colour2",
|
||||
"Mob_Bat_Colour2",
|
||||
"Mob_Witch_Colour2",
|
||||
"Mob_Horse_Colour2",
|
||||
"Mob_Endermite_Color2",
|
||||
"Mob_Guardian_Color2",
|
||||
"Mob_Rabbit_Colour2",
|
||||
"Mob_PolarBear_Colour2",
|
||||
"Mob_Shulker_Colour2",
|
||||
"Mob_Elder_Guardian_Colour2",
|
||||
"Mob_Evocation_Illager_Colour2",
|
||||
"Mob_Llama_Colour2",
|
||||
"Mob_Donkey_Colour2",
|
||||
"Mob_Skeleton_Horse_Colour2",
|
||||
"Mob_Zombie_Horse_Colour2",
|
||||
"Mob_Mule_Colour2",
|
||||
"Mob_Stray_Colour2",
|
||||
"Mob_Husk_Colour2",
|
||||
"Mob_Vex_Colour2",
|
||||
"Mob_Vindication_Illager_Colour2",
|
||||
"Mob_Zombie_Villager_Colour2",
|
||||
"Mob_Parrot_Colour2",
|
||||
"Mob_Wither_Skeleton_Colour2",
|
||||
"Mob_Turtle_Colour2",
|
||||
"Mob_Tropical_Colour2",
|
||||
"Mob_Cod_Colour2",
|
||||
"Mob_Pufferfish_Colour2",
|
||||
"Mob_Salmon_Colour2",
|
||||
"Mob_Drowned_Colour2",
|
||||
"Mob_Dolphin_Colour2",
|
||||
"Mob_Phantom_Colour2"
|
||||
]
|
||||
},
|
||||
"Bed_Color": {
|
||||
"defaultName": "Bed_White",
|
||||
"variants": [
|
||||
"Bed_Black",
|
||||
"Bed_Blue",
|
||||
"Bed_Brown",
|
||||
"Bed_Cyan",
|
||||
"Bed_Grey",
|
||||
"Bed_Green",
|
||||
"Bed_Light_Blue",
|
||||
"Bed_Lime",
|
||||
"Bed_Magenta",
|
||||
"Bed_Orange",
|
||||
"Bed_Pink",
|
||||
"Bed_Purple",
|
||||
"Bed_Red",
|
||||
"Bed_Silver",
|
||||
"Bed_White",
|
||||
"Bed_Yellow"
|
||||
]
|
||||
},
|
||||
"Particle_Explode": {
|
||||
"variants": [
|
||||
"Particle_Explode",
|
||||
"Particle_HugeExplosion"
|
||||
]
|
||||
},
|
||||
"Banner_Color": {
|
||||
"defaultName": "Banner_White",
|
||||
"variants": [
|
||||
"Banner_Black",
|
||||
"Banner_Blue",
|
||||
"Banner_Brown",
|
||||
"Banner_Cyan",
|
||||
"Banner_Gray",
|
||||
"Banner_Green",
|
||||
"Banner_Light_Blue",
|
||||
"Banner_Lime",
|
||||
"Banner_Magenta",
|
||||
"Banner_Orange",
|
||||
"Banner_Pink",
|
||||
"Banner_Purple",
|
||||
"Banner_Red",
|
||||
"Banner_Silver",
|
||||
"Banner_White",
|
||||
"Banner_Yellow"
|
||||
]
|
||||
},
|
||||
"Cauldron_Water_Effect": {
|
||||
"variants": [
|
||||
"Cauldron_Water",
|
||||
"Effect_MovementSpeed",
|
||||
"Effect_MovementSlowDown",
|
||||
"Effect_DigSpeed",
|
||||
"Effect_DigSlowdown",
|
||||
"Effect_DamageBoost",
|
||||
"Effect_Heal",
|
||||
"Effect_Harm",
|
||||
"Effect_Jump",
|
||||
"Effect_Confusion",
|
||||
"Effect_Regeneration",
|
||||
"Effect_DamageResistance",
|
||||
"Effect_FireResistance",
|
||||
"Effect_WaterBreathing",
|
||||
"Effect_Invisibility",
|
||||
"Effect_Blindness",
|
||||
"Effect_NightVision",
|
||||
"Effect_Hunger",
|
||||
"Effect_Weakness",
|
||||
"Effect_Poison",
|
||||
"Effect_Wither",
|
||||
"Effect_HealthBoost",
|
||||
"Effect_Absorption",
|
||||
"Effect_Saturation",
|
||||
"Effect_Levitation",
|
||||
"Effect_Luck",
|
||||
"Effect_BadLuck",
|
||||
"Effect_TurtleMaster",
|
||||
"Effect_SlowFall"
|
||||
]
|
||||
},
|
||||
"Shulker_Box_Color": {
|
||||
"defaultName": "Shulker_Box_Purple",
|
||||
"variants": [
|
||||
"Shulker_Box_Black",
|
||||
"Shulker_Box_Blue",
|
||||
"Shulker_Box_Brown",
|
||||
"Shulker_Box_Cyan",
|
||||
"Shulker_Box_Grey",
|
||||
"Shulker_Box_Green",
|
||||
"Shulker_Box_Light_Blue",
|
||||
"Shulker_Box_Light_Green",
|
||||
"Shulker_Box_Magenta",
|
||||
"Shulker_Box_Orange",
|
||||
"Shulker_Box_Pink",
|
||||
"Shulker_Box_Purple",
|
||||
"Shulker_Box_Red",
|
||||
"Shulker_Box_Silver",
|
||||
"Shulker_Box_White",
|
||||
"Shulker_Box_Yellow"
|
||||
]
|
||||
},
|
||||
"Stem_Color": {
|
||||
"variants": [
|
||||
"Tile_StemMin",
|
||||
"Tile_StemMax"
|
||||
]
|
||||
}
|
||||
}
|
||||
@@ -3,102 +3,47 @@
|
||||
"entries": [
|
||||
{
|
||||
"internalName": "experience_orb_0",
|
||||
"displayName": "Experience Orb (Size 1)",
|
||||
"hasColourEntry": true,
|
||||
"colourEntry": {
|
||||
"defaultName": "experience_orb",
|
||||
"variants": ["experience_orb"]
|
||||
}
|
||||
"displayName": "Experience Orb (Size 1)"
|
||||
},
|
||||
{
|
||||
"internalName": "experience_orb_1",
|
||||
"displayName": "Experience Orb (Size 2)",
|
||||
"hasColourEntry": true,
|
||||
"colourEntry": {
|
||||
"defaultName": "experience_orb",
|
||||
"variants": ["experience_orb"]
|
||||
}
|
||||
"displayName": "Experience Orb (Size 2)"
|
||||
},
|
||||
{
|
||||
"internalName": "experience_orb_2",
|
||||
"displayName": "Experience Orb (Size 3)",
|
||||
"hasColourEntry": true,
|
||||
"colourEntry": {
|
||||
"defaultName": "experience_orb",
|
||||
"variants": ["experience_orb"]
|
||||
}
|
||||
"displayName": "Experience Orb (Size 3)"
|
||||
},
|
||||
{
|
||||
"internalName": "experience_orb_3",
|
||||
"displayName": "Experience Orb (Size 4)",
|
||||
"hasColourEntry": true,
|
||||
"colourEntry": {
|
||||
"defaultName": "experience_orb",
|
||||
"variants": ["experience_orb"]
|
||||
}
|
||||
"displayName": "Experience Orb (Size 4)"
|
||||
},
|
||||
{
|
||||
"internalName": "experience_orb_4",
|
||||
"displayName": "Experience Orb (Size 5)",
|
||||
"hasColourEntry": true,
|
||||
"colourEntry": {
|
||||
"defaultName": "experience_orb",
|
||||
"variants": ["experience_orb"]
|
||||
}
|
||||
"displayName": "Experience Orb (Size 5)"
|
||||
},
|
||||
{
|
||||
"internalName": "experience_orb_5",
|
||||
"displayName": "Experience Orb (Size 6)",
|
||||
"hasColourEntry": true,
|
||||
"colourEntry": {
|
||||
"defaultName": "experience_orb",
|
||||
"variants": ["experience_orb"]
|
||||
}
|
||||
"displayName": "Experience Orb (Size 6)"
|
||||
},
|
||||
{
|
||||
"internalName": "experience_orb_6",
|
||||
"displayName": "Experience Orb (Size 7)",
|
||||
"hasColourEntry": true,
|
||||
"colourEntry": {
|
||||
"defaultName": "experience_orb",
|
||||
"variants": ["experience_orb"]
|
||||
}
|
||||
"displayName": "Experience Orb (Size 7)"
|
||||
},
|
||||
{
|
||||
"internalName": "experience_orb_7",
|
||||
"displayName": "Experience Orb (Size 8)",
|
||||
"hasColourEntry": true,
|
||||
"colourEntry": {
|
||||
"defaultName": "experience_orb",
|
||||
"variants": ["experience_orb"]
|
||||
}
|
||||
"displayName": "Experience Orb (Size 8)"
|
||||
},
|
||||
{
|
||||
"internalName": "experience_orb_8",
|
||||
"displayName": "Experience Orb (Size 9)",
|
||||
"hasColourEntry": true,
|
||||
"colourEntry": {
|
||||
"defaultName": "experience_orb",
|
||||
"variants": ["experience_orb"]
|
||||
}
|
||||
"displayName": "Experience Orb (Size 9)"
|
||||
},
|
||||
{
|
||||
"internalName": "experience_orb_9",
|
||||
"displayName": "Experience Orb (Size 10)",
|
||||
"hasColourEntry": true,
|
||||
"colourEntry": {
|
||||
"defaultName": "experience_orb",
|
||||
"variants": ["experience_orb"]
|
||||
}
|
||||
"displayName": "Experience Orb (Size 10)"
|
||||
},
|
||||
{
|
||||
"internalName": "experience_orb_10",
|
||||
"displayName": "Experience Orb (Size 11)",
|
||||
"hasColourEntry": true,
|
||||
"colourEntry": {
|
||||
"defaultName": "experience_orb",
|
||||
"variants": ["experience_orb"]
|
||||
}
|
||||
"displayName": "Experience Orb (Size 11)"
|
||||
},
|
||||
{
|
||||
"internalName": "",
|
||||
|
||||
@@ -1,197 +1,85 @@
|
||||
{
|
||||
"COMMENT_1": "JSON by MattNL",
|
||||
"entries": [
|
||||
{
|
||||
"internalName": "explosion_0",
|
||||
"displayName": "Explosion (Stage 1)",
|
||||
"hasColourEntry": true,
|
||||
"colourEntry": {
|
||||
"defaultName": "Particle_Explode",
|
||||
"variants": [
|
||||
"Particle_Explode",
|
||||
"Particle_HugeExplosion"
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
"internalName": "explosion_1",
|
||||
"displayName": "Explosion (Stage 2)",
|
||||
"hasColourEntry": true,
|
||||
"colourEntry": {
|
||||
"defaultName": "Particle_Explode",
|
||||
"variants": [
|
||||
"Particle_Explode",
|
||||
"Particle_HugeExplosion"
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
"internalName": "explosion_2",
|
||||
"displayName": "Explosion (Stage 3)",
|
||||
"hasColourEntry": true,
|
||||
"colourEntry": {
|
||||
"defaultName": "Particle_Explode",
|
||||
"variants": [
|
||||
"Particle_Explode",
|
||||
"Particle_HugeExplosion"
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
"internalName": "explosion_3",
|
||||
"displayName": "Explosion (Stage 4)",
|
||||
"hasColourEntry": true,
|
||||
"colourEntry": {
|
||||
"defaultName": "Particle_Explode",
|
||||
"variants": [
|
||||
"Particle_Explode",
|
||||
"Particle_HugeExplosion"
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
"internalName": "explosion_4",
|
||||
"displayName": "Explosion (Stage 5)",
|
||||
"hasColourEntry": true,
|
||||
"colourEntry": {
|
||||
"defaultName": "Particle_Explode",
|
||||
"variants": [
|
||||
"Particle_Explode",
|
||||
"Particle_HugeExplosion"
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
"internalName": "explosion_5",
|
||||
"displayName": "Explosion (Stage 6)",
|
||||
"hasColourEntry": true,
|
||||
"colourEntry": {
|
||||
"defaultName": "Particle_Explode",
|
||||
"variants": [
|
||||
"Particle_Explode",
|
||||
"Particle_HugeExplosion"
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
"internalName": "explosion_6",
|
||||
"displayName": "Explosion (Stage 7)",
|
||||
"hasColourEntry": true,
|
||||
"colourEntry": {
|
||||
"defaultName": "Particle_Explode",
|
||||
"variants": [
|
||||
"Particle_Explode",
|
||||
"Particle_HugeExplosion"
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
"internalName": "explosion_7",
|
||||
"displayName": "Explosion (Stage 8)",
|
||||
"hasColourEntry": true,
|
||||
"colourEntry": {
|
||||
"defaultName": "Particle_Explode",
|
||||
"variants": [
|
||||
"Particle_Explode",
|
||||
"Particle_HugeExplosion"
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
"internalName": "explosion_8",
|
||||
"displayName": "Explosion (Stage 9)",
|
||||
"hasColourEntry": true,
|
||||
"colourEntry": {
|
||||
"defaultName": "Particle_Explode",
|
||||
"variants": [
|
||||
"Particle_Explode",
|
||||
"Particle_HugeExplosion"
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
"internalName": "explosion_9",
|
||||
"displayName": "Explosion (Stage 10)",
|
||||
"hasColourEntry": true,
|
||||
"colourEntry": {
|
||||
"defaultName": "Particle_Explode",
|
||||
"variants": [
|
||||
"Particle_Explode",
|
||||
"Particle_HugeExplosion"
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
"internalName": "explosion_10",
|
||||
"displayName": "Explosion (Stage 11)",
|
||||
"hasColourEntry": true,
|
||||
"colourEntry": {
|
||||
"defaultName": "Particle_Explode",
|
||||
"variants": [
|
||||
"Particle_Explode",
|
||||
"Particle_HugeExplosion"
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
"internalName": "explosion_11",
|
||||
"displayName": "Explosion (Stage 12)",
|
||||
"hasColourEntry": true,
|
||||
"colourEntry": {
|
||||
"defaultName": "Particle_Explode",
|
||||
"variants": [
|
||||
"Particle_Explode",
|
||||
"Particle_HugeExplosion"
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
"internalName": "explosion_12",
|
||||
"displayName": "Explosion (Stage 13)",
|
||||
"hasColourEntry": true,
|
||||
"colourEntry": {
|
||||
"defaultName": "Particle_Explode",
|
||||
"variants": [
|
||||
"Particle_Explode",
|
||||
"Particle_HugeExplosion"
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
"internalName": "explosion_13",
|
||||
"displayName": "Explosion (Stage 14)",
|
||||
"hasColourEntry": true,
|
||||
"colourEntry": {
|
||||
"defaultName": "Particle_Explode",
|
||||
"variants": [
|
||||
"Particle_Explode",
|
||||
"Particle_HugeExplosion"
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
"internalName": "explosion_14",
|
||||
"displayName": "Explosion (Stage 15)",
|
||||
"hasColourEntry": true,
|
||||
"colourEntry": {
|
||||
"defaultName": "Particle_Explode",
|
||||
"variants": [
|
||||
"Particle_Explode",
|
||||
"Particle_HugeExplosion"
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
"internalName": "explosion_15",
|
||||
"displayName": "Explosion (Stage 16)",
|
||||
"hasColourEntry": true,
|
||||
"colourEntry": {
|
||||
"defaultName": "Particle_Explode",
|
||||
"variants": [
|
||||
"Particle_Explode",
|
||||
"Particle_HugeExplosion"
|
||||
]
|
||||
}
|
||||
}
|
||||
]
|
||||
"COMMENT_1": "JSON by MattNL",
|
||||
"entries": [
|
||||
{
|
||||
"internalName": "explosion_0",
|
||||
"displayName": "Explosion (Stage 1)",
|
||||
"colorKey": "Particle_Explode"
|
||||
},
|
||||
{
|
||||
"internalName": "explosion_1",
|
||||
"displayName": "Explosion (Stage 2)",
|
||||
"colorKey": "Particle_Explode"
|
||||
},
|
||||
{
|
||||
"internalName": "explosion_2",
|
||||
"displayName": "Explosion (Stage 3)",
|
||||
"colorKey": "Particle_Explode"
|
||||
},
|
||||
{
|
||||
"internalName": "explosion_3",
|
||||
"displayName": "Explosion (Stage 4)",
|
||||
"colorKey": "Particle_Explode"
|
||||
},
|
||||
{
|
||||
"internalName": "explosion_4",
|
||||
"displayName": "Explosion (Stage 5)",
|
||||
"colorKey": "Particle_Explode"
|
||||
},
|
||||
{
|
||||
"internalName": "explosion_5",
|
||||
"displayName": "Explosion (Stage 6)",
|
||||
"colorKey": "Particle_Explode"
|
||||
},
|
||||
{
|
||||
"internalName": "explosion_6",
|
||||
"displayName": "Explosion (Stage 7)",
|
||||
"colorKey": "Particle_Explode"
|
||||
},
|
||||
{
|
||||
"internalName": "explosion_7",
|
||||
"displayName": "Explosion (Stage 8)",
|
||||
"colorKey": "Particle_Explode"
|
||||
},
|
||||
{
|
||||
"internalName": "explosion_8",
|
||||
"displayName": "Explosion (Stage 9)",
|
||||
"colorKey": "Particle_Explode"
|
||||
},
|
||||
{
|
||||
"internalName": "explosion_9",
|
||||
"displayName": "Explosion (Stage 10)",
|
||||
"colorKey": "Particle_Explode"
|
||||
},
|
||||
{
|
||||
"internalName": "explosion_10",
|
||||
"displayName": "Explosion (Stage 11)",
|
||||
"colorKey": "Particle_Explode"
|
||||
},
|
||||
{
|
||||
"internalName": "explosion_11",
|
||||
"displayName": "Explosion (Stage 12)",
|
||||
"colorKey": "Particle_Explode"
|
||||
},
|
||||
{
|
||||
"internalName": "explosion_12",
|
||||
"displayName": "Explosion (Stage 13)",
|
||||
"colorKey": "Particle_Explode"
|
||||
},
|
||||
{
|
||||
"internalName": "explosion_13",
|
||||
"displayName": "Explosion (Stage 14)",
|
||||
"colorKey": "Particle_Explode"
|
||||
},
|
||||
{
|
||||
"internalName": "explosion_14",
|
||||
"displayName": "Explosion (Stage 15)",
|
||||
"colorKey": "Particle_Explode"
|
||||
},
|
||||
{
|
||||
"internalName": "explosion_15",
|
||||
"displayName": "Explosion (Stage 16)",
|
||||
"colorKey": "Particle_Explode"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -6,5 +6,35 @@
|
||||
"frameCount": 3,
|
||||
"frameTime": 6,
|
||||
"direction": 1
|
||||
},
|
||||
{
|
||||
"name": "Leather Cap",
|
||||
"row": 0,
|
||||
"column": 0,
|
||||
"overlay": { "row": 0, "column": 9 }
|
||||
},
|
||||
{
|
||||
"name": "Leather Tunic",
|
||||
"row": 0,
|
||||
"column": 1,
|
||||
"overlay": { "row": 0, "column": 10 }
|
||||
},
|
||||
{
|
||||
"name": "Leather Pants",
|
||||
"row": 0,
|
||||
"column": 2,
|
||||
"overlay": { "row": 0, "column": 11 }
|
||||
},
|
||||
{
|
||||
"name": "Leather Boots",
|
||||
"row": 0,
|
||||
"column": 3,
|
||||
"overlay": { "row": 0, "column": 12 }
|
||||
},
|
||||
{
|
||||
"name": "Leather Horse Armor",
|
||||
"row": 15,
|
||||
"column": 13,
|
||||
"overlay": { "row": 0, "column": 16 }
|
||||
}
|
||||
]
|
||||
@@ -1,6 +1,6 @@
|
||||
[
|
||||
{
|
||||
"name": "generic",
|
||||
"name": "Generic",
|
||||
"row": 0,
|
||||
"column": 0,
|
||||
"frameCount": 8,
|
||||
@@ -8,7 +8,7 @@
|
||||
"direction": 0
|
||||
},
|
||||
{
|
||||
"name": "splash",
|
||||
"name": "Splash",
|
||||
"row": 3,
|
||||
"column": 1,
|
||||
"frameCount": 4,
|
||||
@@ -16,7 +16,7 @@
|
||||
"direction": 0
|
||||
},
|
||||
{
|
||||
"name": "drip",
|
||||
"name": "Drip",
|
||||
"row": 0,
|
||||
"column": 7,
|
||||
"frameCount": 3,
|
||||
@@ -24,7 +24,7 @@
|
||||
"direction": 0
|
||||
},
|
||||
{
|
||||
"name": "effect",
|
||||
"name": "Effect",
|
||||
"row": 0,
|
||||
"column": 8,
|
||||
"frameCount": 8,
|
||||
@@ -32,7 +32,7 @@
|
||||
"direction": 0
|
||||
},
|
||||
{
|
||||
"name": "splash_effect",
|
||||
"name": "Splash Effect",
|
||||
"row": 0,
|
||||
"column": 9,
|
||||
"frameCount": 8,
|
||||
@@ -40,7 +40,7 @@
|
||||
"direction": 0
|
||||
},
|
||||
{
|
||||
"name": "firework_spark",
|
||||
"name": "Firework Spark",
|
||||
"row": 0,
|
||||
"column": 10,
|
||||
"frameCount": 8,
|
||||
@@ -48,7 +48,7 @@
|
||||
"direction": 0
|
||||
},
|
||||
{
|
||||
"name": "glitter",
|
||||
"name": "Shulker/End Rod Glitter",
|
||||
"row": 0,
|
||||
"column": 11,
|
||||
"frameCount": 8,
|
||||
@@ -56,7 +56,7 @@
|
||||
"direction": 0
|
||||
},
|
||||
{
|
||||
"name": "BE_explosion",
|
||||
"name": "Bedrock Edition Explosion (Unused)",
|
||||
"row": 0,
|
||||
"column": 12,
|
||||
"frameCount": 16,
|
||||
@@ -64,15 +64,16 @@
|
||||
"direction": 0
|
||||
},
|
||||
{
|
||||
"name": "flash",
|
||||
"name": "Firework Flash",
|
||||
"row": 4,
|
||||
"column": 2,
|
||||
"rowSpan": 4,
|
||||
"columnSpan": 4,
|
||||
"direction": 0
|
||||
"direction": 0,
|
||||
"allowCustomColor": true
|
||||
},
|
||||
{
|
||||
"name": "bubble_pop",
|
||||
"name": "Bubble Pop (Unused)",
|
||||
"row": 6,
|
||||
"column": 6,
|
||||
"frameCount": 5,
|
||||
|
||||
@@ -6,11 +6,7 @@
|
||||
"internalName": "helmetCloth",
|
||||
"displayName": "Leather Cap",
|
||||
"allowCustomColour": true,
|
||||
"hasColourEntry": true,
|
||||
"colourEntry": {
|
||||
"defaultName": "Armour_Default_Leather_Colour",
|
||||
"variants": [ "Armour_Default_Leather_Colour" ]
|
||||
}
|
||||
"colorKey": "Armour_Default_Leather_Colour"
|
||||
},
|
||||
{
|
||||
"internalName": "helmetChain",
|
||||
@@ -76,11 +72,7 @@
|
||||
"internalName": "chestplateCloth",
|
||||
"displayName": "Leather Tunic",
|
||||
"allowCustomColour": true,
|
||||
"hasColourEntry": true,
|
||||
"colourEntry": {
|
||||
"defaultName": "Armour_Default_Leather_Colour",
|
||||
"variants": [ "Armour_Default_Leather_Colour" ]
|
||||
}
|
||||
"colorKey": "Armour_Default_Leather_Colour"
|
||||
},
|
||||
{
|
||||
"internalName": "chestplateChain",
|
||||
@@ -146,11 +138,7 @@
|
||||
"internalName": "leggingsCloth",
|
||||
"displayName": "Leather Pants",
|
||||
"allowCustomColour": true,
|
||||
"hasColourEntry": true,
|
||||
"colourEntry": {
|
||||
"defaultName": "Armour_Default_Leather_Colour",
|
||||
"variants": [ "Armour_Default_Leather_Colour" ]
|
||||
}
|
||||
"colorKey": "Armour_Default_Leather_Colour"
|
||||
},
|
||||
{
|
||||
"internalName": "leggingsChain",
|
||||
@@ -216,11 +204,7 @@
|
||||
"internalName": "bootsCloth",
|
||||
"displayName": "Leather Boots",
|
||||
"allowCustomColour": true,
|
||||
"hasColourEntry": true,
|
||||
"colourEntry": {
|
||||
"defaultName": "Armour_Default_Leather_Colour",
|
||||
"variants": [ "Armour_Default_Leather_Colour" ]
|
||||
}
|
||||
"colorKey": "Armour_Default_Leather_Colour"
|
||||
},
|
||||
{
|
||||
"internalName": "bootsChain",
|
||||
@@ -594,41 +578,7 @@
|
||||
"internalName": "potion_contents",
|
||||
"displayName": "Potion (Overlay)",
|
||||
"allowCustomColour": true,
|
||||
"hasColourEntry": true,
|
||||
"colourEntry": {
|
||||
"defaultName": "Potion_BaseColour",
|
||||
"variants": [
|
||||
"Potion_BaseColour",
|
||||
"Effect_MovementSpeed",
|
||||
"Effect_MovementSlowDown",
|
||||
"Effect_DigSpeed",
|
||||
"Effect_DigSlowdown",
|
||||
"Effect_DamageBoost",
|
||||
"Effect_Heal",
|
||||
"Effect_Harm",
|
||||
"Effect_Jump",
|
||||
"Effect_Confusion",
|
||||
"Effect_Regeneration",
|
||||
"Effect_DamageResistance",
|
||||
"Effect_FireResistance",
|
||||
"Effect_WaterBreathing",
|
||||
"Effect_Invisibility",
|
||||
"Effect_Blindness",
|
||||
"Effect_NightVision",
|
||||
"Effect_Hunger",
|
||||
"Effect_Weakness",
|
||||
"Effect_Poison",
|
||||
"Effect_Wither",
|
||||
"Effect_HealthBoost",
|
||||
"Effect_Absorption",
|
||||
"Effect_Saturation",
|
||||
"Effect_Levitation",
|
||||
"Effect_Luck",
|
||||
"Effect_BadLuck",
|
||||
"Effect_TurtleMaster",
|
||||
"Effect_SlowFall"
|
||||
]
|
||||
}
|
||||
"colorKey": "Potion_Effect"
|
||||
},
|
||||
{
|
||||
"internalName": "dyePowder_blue",
|
||||
@@ -677,63 +627,7 @@
|
||||
{
|
||||
"internalName": "monsterPlacer",
|
||||
"displayName": "Spawn Egg",
|
||||
"hasColourEntry": true,
|
||||
"colourEntry": {
|
||||
"defaultName": "Mob_Creeper_Colour1",
|
||||
"variants": [
|
||||
"Mob_Creeper_Colour1",
|
||||
"Mob_Skeleton_Colour1",
|
||||
"Mob_Spider_Colour1",
|
||||
"Mob_Zombie_Colour1",
|
||||
"Mob_Slime_Colour1",
|
||||
"Mob_Ghast_Colour1",
|
||||
"Mob_PigZombie_Colour1",
|
||||
"Mob_Enderman_Colour1",
|
||||
"Mob_CaveSpider_Colour1",
|
||||
"Mob_Silverfish_Colour1",
|
||||
"Mob_Blaze_Colour1",
|
||||
"Mob_LavaSlime_Colour1",
|
||||
"Mob_Pig_Colour1",
|
||||
"Mob_Sheep_Colour1",
|
||||
"Mob_Cow_Colour1",
|
||||
"Mob_Chicken_Colour1",
|
||||
"Mob_Squid_Colour1",
|
||||
"Mob_Wolf_Colour1",
|
||||
"Mob_MushroomCow_Colour1",
|
||||
"Mob_Ocelot_Colour1",
|
||||
"Mob_Villager_Colour1",
|
||||
"Mob_Bat_Colour1",
|
||||
"Mob_Witch_Colour1",
|
||||
"Mob_Horse_Colour1",
|
||||
"Mob_Endermite_Color1",
|
||||
"Mob_Guardian_Color1",
|
||||
"Mob_Rabbit_Colour1",
|
||||
"Mob_PolarBear_Colour1",
|
||||
"Mob_Shulker_Colour1",
|
||||
"Mob_Elder_Guardian_Colour1",
|
||||
"Mob_Evocation_Illager_Colour1",
|
||||
"Mob_Llama_Colour1",
|
||||
"Mob_Donkey_Colour1",
|
||||
"Mob_Skeleton_Horse_Colour1",
|
||||
"Mob_Zombie_Horse_Colour1",
|
||||
"Mob_Mule_Colour1",
|
||||
"Mob_Stray_Colour1",
|
||||
"Mob_Husk_Colour1",
|
||||
"Mob_Vex_Colour1",
|
||||
"Mob_Vindication_Illager_Colour1",
|
||||
"Mob_Zombie_Villager_Colour1",
|
||||
"Mob_Parrot_Colour1",
|
||||
"Mob_Wither_Skeleton_Colour1",
|
||||
"Mob_Turtle_Colour1",
|
||||
"Mob_Tropical_Colour1",
|
||||
"Mob_Cod_Colour1",
|
||||
"Mob_Pufferfish_Colour1",
|
||||
"Mob_Salmon_Colour1",
|
||||
"Mob_Drowned_Colour1",
|
||||
"Mob_Dolphin_Colour1",
|
||||
"Mob_Phantom_Colour1"
|
||||
]
|
||||
}
|
||||
"colorKey": "SpawnEggBaseColor"
|
||||
},
|
||||
{
|
||||
"internalName": "potion_splash",
|
||||
@@ -798,89 +692,12 @@
|
||||
{
|
||||
"internalName": "monsterPlacer_overlay",
|
||||
"displayName": "Spawn Egg (Overlay)",
|
||||
"hasColourEntry": true,
|
||||
"colourEntry": {
|
||||
"defaultName": "Mob_Creeper_Colour2",
|
||||
"variants": [
|
||||
"Mob_Creeper_Colour2",
|
||||
"Mob_Skeleton_Colour2",
|
||||
"Mob_Spider_Colour2",
|
||||
"Mob_Zombie_Colour2",
|
||||
"Mob_Slime_Colour2",
|
||||
"Mob_Ghast_Colour2",
|
||||
"Mob_PigZombie_Colour2",
|
||||
"Mob_Enderman_Colour2",
|
||||
"Mob_CaveSpider_Colour2",
|
||||
"Mob_Silverfish_Colour2",
|
||||
"Mob_Blaze_Colour2",
|
||||
"Mob_LavaSlime_Colour2",
|
||||
"Mob_Pig_Colour2",
|
||||
"Mob_Sheep_Colour2",
|
||||
"Mob_Cow_Colour2",
|
||||
"Mob_Chicken_Colour2",
|
||||
"Mob_Squid_Colour2",
|
||||
"Mob_Wolf_Colour2",
|
||||
"Mob_MushroomCow_Colour2",
|
||||
"Mob_Ocelot_Colour2",
|
||||
"Mob_Villager_Colour2",
|
||||
"Mob_Bat_Colour2",
|
||||
"Mob_Witch_Colour2",
|
||||
"Mob_Horse_Colour2",
|
||||
"Mob_Endermite_Color2",
|
||||
"Mob_Guardian_Color2",
|
||||
"Mob_Rabbit_Colour2",
|
||||
"Mob_PolarBear_Colour2",
|
||||
"Mob_Shulker_Colour2",
|
||||
"Mob_Elder_Guardian_Colour2",
|
||||
"Mob_Evocation_Illager_Colour2",
|
||||
"Mob_Llama_Colour2",
|
||||
"Mob_Donkey_Colour2",
|
||||
"Mob_Skeleton_Horse_Colour2",
|
||||
"Mob_Zombie_Horse_Colour2",
|
||||
"Mob_Mule_Colour2",
|
||||
"Mob_Stray_Colour2",
|
||||
"Mob_Husk_Colour2",
|
||||
"Mob_Vex_Colour2",
|
||||
"Mob_Vindication_Illager_Colour2",
|
||||
"Mob_Zombie_Villager_Colour2",
|
||||
"Mob_Parrot_Colour2",
|
||||
"Mob_Wither_Skeleton_Colour2",
|
||||
"Mob_Turtle_Colour2",
|
||||
"Mob_Tropical_Colour2",
|
||||
"Mob_Cod_Colour2",
|
||||
"Mob_Pufferfish_Colour2",
|
||||
"Mob_Salmon_Colour2",
|
||||
"Mob_Drowned_Colour2",
|
||||
"Mob_Dolphin_Colour2",
|
||||
"Mob_Phantom_Colour2"
|
||||
]
|
||||
}
|
||||
"colorKey": "SpawnEggOverlayColor"
|
||||
},
|
||||
{
|
||||
"internalName": "bed_overlay",
|
||||
"displayName": "Bed (Overlay)",
|
||||
"hasColourEntry": true,
|
||||
"colourEntry": {
|
||||
"defaultName": "Bed_White",
|
||||
"variants": [
|
||||
"Bed_Black",
|
||||
"Bed_Blue",
|
||||
"Bed_Brown",
|
||||
"Bed_Cyan",
|
||||
"Bed_Grey",
|
||||
"Bed_Green",
|
||||
"Bed_Light_Blue",
|
||||
"Bed_Lime",
|
||||
"Bed_Magenta",
|
||||
"Bed_Orange",
|
||||
"Bed_Pink",
|
||||
"Bed_Purple",
|
||||
"Bed_Red",
|
||||
"Bed_Silver",
|
||||
"Bed_White",
|
||||
"Bed_Yellow"
|
||||
]
|
||||
}
|
||||
"colorKey": "Bed_Color"
|
||||
},
|
||||
{
|
||||
"internalName": "expBottle",
|
||||
@@ -1095,11 +912,7 @@
|
||||
"internalName": "leather_horse_armor_base",
|
||||
"displayName": "Leather Horse Armor",
|
||||
"allowCustomColour": true,
|
||||
"hasColourEntry": true,
|
||||
"colourEntry": {
|
||||
"defaultName": "Armour_Default_Leather_Colour",
|
||||
"variants": [ "Armour_Default_Leather_Colour" ]
|
||||
}
|
||||
"colorKey": "Armour_Default_Leather_Colour"
|
||||
},
|
||||
{
|
||||
"internalName": "structure_void",
|
||||
|
||||
@@ -51,21 +51,19 @@
|
||||
},
|
||||
{
|
||||
"internalName": "Back",
|
||||
"displayName": "Back Texture",
|
||||
"width": 4,
|
||||
"height": 4
|
||||
"displayName": "Back Texture"
|
||||
},
|
||||
{
|
||||
"internalName": "Back",
|
||||
"displayName": "",
|
||||
"displayName": ""
|
||||
},
|
||||
{
|
||||
"internalName": "Back",
|
||||
"displayName": "",
|
||||
"displayName": ""
|
||||
},
|
||||
{
|
||||
"internalName": "Back",
|
||||
"displayName": "",
|
||||
"displayName": ""
|
||||
},
|
||||
{
|
||||
"internalName": "1x1E1",
|
||||
@@ -121,20 +119,19 @@
|
||||
},
|
||||
{
|
||||
"internalName": "Back",
|
||||
"displayName": "",
|
||||
"displayName": ""
|
||||
},
|
||||
{
|
||||
"internalName": "Back",
|
||||
"displayName": "",
|
||||
"displayName": ""
|
||||
},
|
||||
{
|
||||
"internalName": "Back",
|
||||
"displayName": "",
|
||||
"displayName": ""
|
||||
},
|
||||
{
|
||||
"internalName": "Pool",
|
||||
"displayName": "\"The Pool\" by Kristoffer Zetterstrand",
|
||||
"width": 2
|
||||
"displayName": "\"The Pool\" by Kristoffer Zetterstrand"
|
||||
},
|
||||
{
|
||||
"internalName": "Pool",
|
||||
@@ -142,8 +139,7 @@
|
||||
},
|
||||
{
|
||||
"internalName": "Courbet",
|
||||
"displayName": "\"Bonjour Monsieur Courbet\" by Kristoffer Zetterstrand",
|
||||
"width": 2
|
||||
"displayName": "\"Bonjour Monsieur Courbet\" by Kristoffer Zetterstrand"
|
||||
},
|
||||
{
|
||||
"internalName": "Courbet",
|
||||
@@ -151,8 +147,7 @@
|
||||
},
|
||||
{
|
||||
"internalName": "Sea",
|
||||
"displayName": "\"Seaside\" by Kristoffer Zetterstrand",
|
||||
"width": 2
|
||||
"displayName": "\"Seaside\" by Kristoffer Zetterstrand"
|
||||
},
|
||||
{
|
||||
"internalName": "Sea",
|
||||
@@ -160,8 +155,7 @@
|
||||
},
|
||||
{
|
||||
"internalName": "Sunset",
|
||||
"displayName": "\"sunset_dense\" by Kristoffer Zetterstrand",
|
||||
"width": 2
|
||||
"displayName": "\"sunset_dense\" by Kristoffer Zetterstrand"
|
||||
},
|
||||
{
|
||||
"internalName": "Sunset",
|
||||
@@ -169,8 +163,7 @@
|
||||
},
|
||||
{
|
||||
"internalName": "Creebet",
|
||||
"displayName": "\"Creebet\" by Kristoffer Zetterstrand",
|
||||
"width": 2
|
||||
"displayName": "\"Creebet\" by Kristoffer Zetterstrand"
|
||||
},
|
||||
{
|
||||
"internalName": "Creebet",
|
||||
@@ -190,15 +183,15 @@
|
||||
},
|
||||
{
|
||||
"internalName": "Back",
|
||||
"displayName": "",
|
||||
"displayName": ""
|
||||
},
|
||||
{
|
||||
"internalName": "Back",
|
||||
"displayName": "",
|
||||
"displayName": ""
|
||||
},
|
||||
{
|
||||
"internalName": "Back",
|
||||
"displayName": "",
|
||||
"displayName": ""
|
||||
},
|
||||
{
|
||||
"internalName": "",
|
||||
@@ -254,25 +247,23 @@
|
||||
},
|
||||
{
|
||||
"internalName": "Back",
|
||||
"displayName": "",
|
||||
"displayName": ""
|
||||
},
|
||||
{
|
||||
"internalName": "Back",
|
||||
"displayName": "",
|
||||
"displayName": ""
|
||||
},
|
||||
{
|
||||
"internalName": "Back",
|
||||
"displayName": "",
|
||||
"displayName": ""
|
||||
},
|
||||
{
|
||||
"internalName": "Wanderer",
|
||||
"displayName": "\"Wanderer\" by Kristoffer Zetterstrand",
|
||||
"height": 2
|
||||
"displayName": "\"Wanderer\" by Kristoffer Zetterstrand"
|
||||
},
|
||||
{
|
||||
"internalName": "Graham",
|
||||
"displayName": "\"Graham\" by Kristoffer Zetterstrand",
|
||||
"height": 2
|
||||
"displayName": "\"Graham\" by Kristoffer Zetterstrand"
|
||||
},
|
||||
{
|
||||
"internalName": "",
|
||||
@@ -316,21 +307,19 @@
|
||||
},
|
||||
{
|
||||
"internalName": "Skeleton",
|
||||
"displayName": "\"Mortal Coil\" by Kristoffer Zetterstrand",
|
||||
"width": 4,
|
||||
"height": 3
|
||||
"displayName": "\"Mortal Coil\" by Kristoffer Zetterstrand"
|
||||
},
|
||||
{
|
||||
"internalName": "Skeleton",
|
||||
"displayName": "",
|
||||
"displayName": ""
|
||||
},
|
||||
{
|
||||
"internalName": "Skeleton",
|
||||
"displayName": "",
|
||||
"displayName": ""
|
||||
},
|
||||
{
|
||||
"internalName": "Skeleton",
|
||||
"displayName": "",
|
||||
"displayName": ""
|
||||
},
|
||||
{
|
||||
"internalName": "Wanderer",
|
||||
@@ -382,25 +371,23 @@
|
||||
},
|
||||
{
|
||||
"internalName": "Skeleton",
|
||||
"displayName": "",
|
||||
"displayName": ""
|
||||
},
|
||||
{
|
||||
"internalName": "Skeleton",
|
||||
"displayName": "",
|
||||
"displayName": ""
|
||||
},
|
||||
{
|
||||
"internalName": "Skeleton",
|
||||
"displayName": "",
|
||||
"displayName": ""
|
||||
},
|
||||
{
|
||||
"internalName": "Skeleton",
|
||||
"displayName": "",
|
||||
"displayName": ""
|
||||
},
|
||||
{
|
||||
"internalName": "Fighters",
|
||||
"displayName": "\"Fighters\" by Kristoffer Zetterstrand",
|
||||
"width": 4,
|
||||
"height": 2
|
||||
"displayName": "\"Fighters\" by Kristoffer Zetterstrand"
|
||||
},
|
||||
{
|
||||
"internalName": "Fighters",
|
||||
@@ -512,9 +499,7 @@
|
||||
},
|
||||
{
|
||||
"internalName": "DonkeyKong",
|
||||
"displayName": "\"Kong\" by Kristoffer Zetterstrand",
|
||||
"width": 4,
|
||||
"height": 3
|
||||
"displayName": "\"Kong\" by Kristoffer Zetterstrand"
|
||||
},
|
||||
{
|
||||
"internalName": "DonkeyKong",
|
||||
@@ -530,9 +515,7 @@
|
||||
},
|
||||
{
|
||||
"internalName": "Match",
|
||||
"displayName": "\"Match\" by Kristoffer Zetterstrand",
|
||||
"width": 2,
|
||||
"height": 2
|
||||
"displayName": "\"Match\" by Kristoffer Zetterstrand"
|
||||
},
|
||||
{
|
||||
"internalName": "Match",
|
||||
@@ -540,9 +523,7 @@
|
||||
},
|
||||
{
|
||||
"internalName": "Bust",
|
||||
"displayName": "\"Bust\" by Kristoffer Zetterstrand",
|
||||
"width": 2,
|
||||
"height": 2
|
||||
"displayName": "\"Bust\" by Kristoffer Zetterstrand"
|
||||
},
|
||||
{
|
||||
"internalName": "Bust",
|
||||
@@ -550,9 +531,7 @@
|
||||
},
|
||||
{
|
||||
"internalName": "Stage",
|
||||
"displayName": "\"The stage is set\" by Kristoffer Zetterstrand",
|
||||
"width": 2,
|
||||
"height": 2
|
||||
"displayName": "\"The stage is set\" by Kristoffer Zetterstrand"
|
||||
},
|
||||
{
|
||||
"internalName": "Stage",
|
||||
@@ -560,9 +539,7 @@
|
||||
},
|
||||
{
|
||||
"internalName": "Void",
|
||||
"displayName": "\"The Void\" by Kristoffer Zetterstrand",
|
||||
"width": 2,
|
||||
"height": 2
|
||||
"displayName": "\"The Void\" by Kristoffer Zetterstrand"
|
||||
},
|
||||
{
|
||||
"internalName": "Void",
|
||||
@@ -570,9 +547,7 @@
|
||||
},
|
||||
{
|
||||
"internalName": "SkullAndRoses",
|
||||
"displayName": "\"Skull and Roses\" by Kristoffer Zetterstrand",
|
||||
"width": 2,
|
||||
"height": 2
|
||||
"displayName": "\"Skull and Roses\" by Kristoffer Zetterstrand"
|
||||
},
|
||||
{
|
||||
"internalName": "SkullAndRoses",
|
||||
@@ -580,9 +555,7 @@
|
||||
},
|
||||
{
|
||||
"internalName": "Wither",
|
||||
"displayName": "\"Wither\" by Jens Bergensten",
|
||||
"width": 2,
|
||||
"height": 2
|
||||
"displayName": "\"Wither\" by Jens Bergensten"
|
||||
},
|
||||
{
|
||||
"internalName": "Wither",
|
||||
@@ -654,19 +627,19 @@
|
||||
},
|
||||
{
|
||||
"internalName": "DonkeyKong",
|
||||
"displayName": "",
|
||||
"displayName": ""
|
||||
},
|
||||
{
|
||||
"internalName": "DonkeyKong",
|
||||
"displayName": "",
|
||||
"displayName": ""
|
||||
},
|
||||
{
|
||||
"internalName": "DonkeyKong",
|
||||
"displayName": "",
|
||||
"displayName": ""
|
||||
},
|
||||
{
|
||||
"internalName": "DonkeyKong",
|
||||
"displayName": "",
|
||||
"displayName": ""
|
||||
},
|
||||
{
|
||||
"internalName": "",
|
||||
@@ -798,9 +771,7 @@
|
||||
},
|
||||
{
|
||||
"internalName": "Pointer",
|
||||
"displayName": "\"Pointer\" by Kristoffer Zetterstrand",
|
||||
"width": 4,
|
||||
"height": 4
|
||||
"displayName": "\"Pointer\" by Kristoffer Zetterstrand"
|
||||
},
|
||||
{
|
||||
"internalName": "Pointer",
|
||||
@@ -816,9 +787,7 @@
|
||||
},
|
||||
{
|
||||
"internalName": "Pigscene",
|
||||
"displayName": "\"Pigscene\" by Kristoffer Zetterstrand",
|
||||
"width": 4,
|
||||
"height": 4
|
||||
"displayName": "\"Pigscene\" by Kristoffer Zetterstrand"
|
||||
},
|
||||
{
|
||||
"internalName": "Pigscene",
|
||||
@@ -834,9 +803,7 @@
|
||||
},
|
||||
{
|
||||
"internalName": "BurningSkull",
|
||||
"displayName": "\"Skull On Fire\" by Kristoffer Zetterstrand",
|
||||
"width": 4,
|
||||
"height": 4
|
||||
"displayName": "\"Skull On Fire\" by Kristoffer Zetterstrand"
|
||||
},
|
||||
{
|
||||
"internalName": "BurningSkull",
|
||||
@@ -852,83 +819,19 @@
|
||||
},
|
||||
{
|
||||
"internalName": "",
|
||||
"displayName": "",
|
||||
},
|
||||
{
|
||||
"internalName": "",
|
||||
"displayName": "",
|
||||
},
|
||||
{
|
||||
"internalName": "",
|
||||
"displayName": "",
|
||||
},
|
||||
{
|
||||
"internalName": "",
|
||||
"displayName": "",
|
||||
},
|
||||
{
|
||||
"internalName": "Pointer",
|
||||
"displayName": "",
|
||||
},
|
||||
{
|
||||
"internalName": "Pointer",
|
||||
"displayName": ""
|
||||
},
|
||||
{
|
||||
"internalName": "Pointer",
|
||||
"displayName": ""
|
||||
},
|
||||
{
|
||||
"internalName": "Pointer",
|
||||
"displayName": ""
|
||||
},
|
||||
{
|
||||
"internalName": "Pigscene",
|
||||
"displayName": ""
|
||||
},
|
||||
{
|
||||
"internalName": "Pigscene",
|
||||
"displayName": ""
|
||||
},
|
||||
{
|
||||
"internalName": "Pigscene",
|
||||
"displayName": ""
|
||||
},
|
||||
{
|
||||
"internalName": "Pigscene",
|
||||
"displayName": ""
|
||||
},
|
||||
{
|
||||
"internalName": "BurningSkull",
|
||||
"displayName": ""
|
||||
},
|
||||
{
|
||||
"internalName": "BurningSkull",
|
||||
"displayName": ""
|
||||
},
|
||||
{
|
||||
"internalName": "BurningSkull",
|
||||
"displayName": ""
|
||||
},
|
||||
{
|
||||
"internalName": "BurningSkull",
|
||||
"displayName": ""
|
||||
},
|
||||
{
|
||||
"internalName": "",
|
||||
"displayName": "",
|
||||
"displayName": ""
|
||||
},
|
||||
{
|
||||
"internalName": "",
|
||||
"displayName": "",
|
||||
"displayName": ""
|
||||
},
|
||||
{
|
||||
"internalName": "",
|
||||
"displayName": "",
|
||||
},
|
||||
{
|
||||
"internalName": "",
|
||||
"displayName": "",
|
||||
"displayName": ""
|
||||
},
|
||||
{
|
||||
"internalName": "Pointer",
|
||||
@@ -948,7 +851,7 @@
|
||||
},
|
||||
{
|
||||
"internalName": "Pigscene",
|
||||
"displayName": "",
|
||||
"displayName": ""
|
||||
},
|
||||
{
|
||||
"internalName": "Pigscene",
|
||||
@@ -964,7 +867,7 @@
|
||||
},
|
||||
{
|
||||
"internalName": "BurningSkull",
|
||||
"displayName": "",
|
||||
"displayName": ""
|
||||
},
|
||||
{
|
||||
"internalName": "BurningSkull",
|
||||
@@ -980,23 +883,23 @@
|
||||
},
|
||||
{
|
||||
"internalName": "",
|
||||
"displayName": "",
|
||||
"displayName": ""
|
||||
},
|
||||
{
|
||||
"internalName": "",
|
||||
"displayName": "",
|
||||
"displayName": ""
|
||||
},
|
||||
{
|
||||
"internalName": "",
|
||||
"displayName": "",
|
||||
"displayName": ""
|
||||
},
|
||||
{
|
||||
"internalName": "",
|
||||
"displayName": "",
|
||||
"displayName": ""
|
||||
},
|
||||
{
|
||||
"internalName": "Pointer",
|
||||
"displayName": "",
|
||||
"displayName": ""
|
||||
},
|
||||
{
|
||||
"internalName": "Pointer",
|
||||
@@ -1012,7 +915,7 @@
|
||||
},
|
||||
{
|
||||
"internalName": "Pigscene",
|
||||
"displayName": "",
|
||||
"displayName": ""
|
||||
},
|
||||
{
|
||||
"internalName": "Pigscene",
|
||||
@@ -1028,7 +931,7 @@
|
||||
},
|
||||
{
|
||||
"internalName": "BurningSkull",
|
||||
"displayName": "",
|
||||
"displayName": ""
|
||||
},
|
||||
{
|
||||
"internalName": "BurningSkull",
|
||||
@@ -1044,19 +947,83 @@
|
||||
},
|
||||
{
|
||||
"internalName": "",
|
||||
"displayName": "",
|
||||
"displayName": ""
|
||||
},
|
||||
{
|
||||
"internalName": "",
|
||||
"displayName": "",
|
||||
"displayName": ""
|
||||
},
|
||||
{
|
||||
"internalName": "",
|
||||
"displayName": "",
|
||||
"displayName": ""
|
||||
},
|
||||
{
|
||||
"internalName": "",
|
||||
"displayName": "",
|
||||
"displayName": ""
|
||||
},
|
||||
{
|
||||
"internalName": "Pointer",
|
||||
"displayName": ""
|
||||
},
|
||||
{
|
||||
"internalName": "Pointer",
|
||||
"displayName": ""
|
||||
},
|
||||
{
|
||||
"internalName": "Pointer",
|
||||
"displayName": ""
|
||||
},
|
||||
{
|
||||
"internalName": "Pointer",
|
||||
"displayName": ""
|
||||
},
|
||||
{
|
||||
"internalName": "Pigscene",
|
||||
"displayName": ""
|
||||
},
|
||||
{
|
||||
"internalName": "Pigscene",
|
||||
"displayName": ""
|
||||
},
|
||||
{
|
||||
"internalName": "Pigscene",
|
||||
"displayName": ""
|
||||
},
|
||||
{
|
||||
"internalName": "Pigscene",
|
||||
"displayName": ""
|
||||
},
|
||||
{
|
||||
"internalName": "BurningSkull",
|
||||
"displayName": ""
|
||||
},
|
||||
{
|
||||
"internalName": "BurningSkull",
|
||||
"displayName": ""
|
||||
},
|
||||
{
|
||||
"internalName": "BurningSkull",
|
||||
"displayName": ""
|
||||
},
|
||||
{
|
||||
"internalName": "BurningSkull",
|
||||
"displayName": ""
|
||||
},
|
||||
{
|
||||
"internalName": "",
|
||||
"displayName": ""
|
||||
},
|
||||
{
|
||||
"internalName": "",
|
||||
"displayName": ""
|
||||
},
|
||||
{
|
||||
"internalName": "",
|
||||
"displayName": ""
|
||||
},
|
||||
{
|
||||
"internalName": "",
|
||||
"displayName": ""
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -1,5 +1,6 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Collections.ObjectModel;
|
||||
using System.Drawing;
|
||||
using System.Linq;
|
||||
using System.Windows.Forms;
|
||||
@@ -29,6 +30,7 @@ namespace PckStudio.Json
|
||||
public static JsonTiles JsonPaintingData { get; } = JsonConvert.DeserializeObject<JsonTiles>(Resources.paintingData);
|
||||
public static JsonTiles JsonBannerData { get; } = JsonConvert.DeserializeObject<JsonTiles>(Resources.bannerData);
|
||||
|
||||
public static ReadOnlyDictionary<string, JsonColorEntry> ColorEntries { get; } = JsonConvert.DeserializeObject<ReadOnlyDictionary<string, JsonColorEntry>>(Resources.colorEntries);
|
||||
public static List<JsonTileInfo> ItemTileInfos => JsonItemData.Entries;
|
||||
public static List<JsonTileInfo> BlockTileInfos => JsonBlockData.Entries;
|
||||
public static List<JsonTileInfo> ParticleTileInfos => JsonParticleData.Entries;
|
||||
|
||||
Reference in New Issue
Block a user