fixed templates, minecart tomfoolery, assemfac model

This commit is contained in:
Bob 2022-05-10 23:10:28 +02:00
parent 4628858d64
commit bf578c6e99
25 changed files with 8597 additions and 16 deletions

View File

@ -968,6 +968,7 @@ public class ModBlocks {
public static Block machine_assembler;
public static final int guiID_machine_assembler = 48;
public static Block machine_assemfac;
public static Block machine_chemplant;
public static final int guiID_machine_chemplant = 49;
@ -2132,6 +2133,7 @@ public class ModBlocks {
machine_mining_laser = new MachineMiningLaser(Material.iron).setBlockName("machine_mining_laser").setHardness(5.0F).setResistance(100.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":machine_mining_laser");
barricade = new BlockNoDrop(Material.sand).setBlockName("barricade").setHardness(1.0F).setResistance(2.5F).setCreativeTab(null).setBlockTextureName(RefStrings.MODID + ":barricade");
machine_assembler = new MachineAssembler(Material.iron).setBlockName("machine_assembler").setHardness(5.0F).setResistance(30.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":machine_assembler");
machine_assemfac = new MachineAssemfac(Material.iron).setBlockName("machine_assemfac").setHardness(5.0F).setResistance(30.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel");
machine_chemplant = new MachineChemplant(Material.iron).setBlockName("machine_chemplant").setHardness(5.0F).setResistance(30.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":machine_chemplant");
machine_chemfac = new MachineChemfac(Material.iron).setBlockName("machine_chemfac").setHardness(5.0F).setResistance(30.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel");
machine_fluidtank = new MachineFluidTank(Material.iron).setBlockName("machine_fluidtank").setHardness(5.0F).setResistance(30.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":machine_fluidtank");
@ -3079,6 +3081,7 @@ public class ModBlocks {
GameRegistry.registerBlock(machine_arc_furnace_on, machine_arc_furnace_on.getUnlocalizedName());
GameRegistry.registerBlock(machine_microwave, machine_microwave.getUnlocalizedName());
GameRegistry.registerBlock(machine_assembler, machine_assembler.getUnlocalizedName());
GameRegistry.registerBlock(machine_assemfac, machine_assemfac.getUnlocalizedName());
GameRegistry.registerBlock(machine_chemplant, machine_chemplant.getUnlocalizedName());
GameRegistry.registerBlock(machine_chemfac, machine_chemfac.getUnlocalizedName());
GameRegistry.registerBlock(machine_fluidtank, machine_fluidtank.getUnlocalizedName());

View File

@ -0,0 +1,39 @@
package com.hbm.blocks.machine;
import com.hbm.blocks.BlockDummyable;
import com.hbm.tileentity.TileEntityProxyCombo;
import com.hbm.tileentity.machine.TileEntityMachineAssemfac;
import net.minecraft.block.material.Material;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.tileentity.TileEntity;
import net.minecraft.world.World;
public class MachineAssemfac extends BlockDummyable {
public MachineAssemfac(Material mat) {
super(mat);
}
@Override
public TileEntity createNewTileEntity(World world, int meta) {
if(meta >= 12) return new TileEntityMachineAssemfac();
if(meta >= 6) return new TileEntityProxyCombo(false, true, true);
return null;
}
@Override
public int[] getDimensions() {
return new int[] {3, 0, 4, 3, 4, 3};
}
@Override
public boolean onBlockActivated(World world, int x, int y, int z, EntityPlayer player, int side, float hitX, float hitY, float hitZ) {
return this.standardOpenBehavior(world, x, y, z, player, 0);
}
@Override
public int getOffset() {
return 3;
}
}

View File

@ -3542,7 +3542,7 @@ public class ModItems {
canned_bark = new ItemLemon(2, 5, false).setUnlocalizedName("canned_bark").setCreativeTab(MainRegistry.consumableTab).setTextureName(RefStrings.MODID + ":canned_bark");
can_key = new Item().setUnlocalizedName("can_key").setCreativeTab(MainRegistry.consumableTab).setTextureName(RefStrings.MODID + ":can_key");
cart = new ItemModMinecart().setUnlocalizedName("cart").setTextureName(RefStrings.MODID + ":cart");
cart = new ItemModMinecart().setUnlocalizedName("cart");
coin_creeper = new ItemCustomLore().setRarity(EnumRarity.uncommon).setUnlocalizedName("coin_creeper").setCreativeTab(MainRegistry.consumableTab).setTextureName(RefStrings.MODID + ":coin_creeper");
coin_radiation = new ItemCustomLore().setRarity(EnumRarity.uncommon).setUnlocalizedName("coin_radiation").setCreativeTab(MainRegistry.consumableTab).setTextureName(RefStrings.MODID + ":coin_radiation");

View File

@ -44,6 +44,20 @@ public class ItemAssemblyTemplate extends Item {
return this.itemIcon;
}
@SideOnly(Side.CLIENT)
public IIcon getIconIndex(ItemStack stack) {
//NEW
ComparableStack out = readType(stack);
//LEGACY
if(out == null) out = AssemblerRecipes.recipeList.get(stack.getItemDamage());
if(AssemblerRecipes.hidden.get(out) != null)
return this.hiddenIcon;
return this.itemIcon;
}
@SideOnly(Side.CLIENT)
public void registerIcons(IIconRegister reg) {
super.registerIcons(reg);
@ -74,8 +88,14 @@ public class ItemAssemblyTemplate extends Item {
}
public String getItemStackDisplayName(ItemStack stack) {
//NEW
ComparableStack comp = readType(stack);
//LEGACY
if(comp == null) comp = AssemblerRecipes.recipeList.get(stack.getItemDamage());
String s = ("" + StatCollector.translateToLocal(this.getUnlocalizedName() + ".name")).trim();
ItemStack out = stack.getItemDamage() < AssemblerRecipes.recipeList.size() ? AssemblerRecipes.recipeList.get(stack.getItemDamage()).toStack() : null;
ItemStack out = comp != null ? comp.toStack() : null;
String s1 = ("" + StatCollector.translateToLocal((out != null ? out.getUnlocalizedName() : "") + ".name")).trim();
if(s1 != null) {
@ -140,8 +160,6 @@ public class ItemAssemblyTemplate extends Item {
out = AssemblerRecipes.recipeList.get(i);
nbtType = false;
}
Integer time = AssemblerRecipes.time.get(out);
HashSet<Item> folders = AssemblerRecipes.hidden.get(out);
if(folders == null)

View File

@ -1,13 +1,20 @@
package com.hbm.items.tool;
import java.util.List;
import com.hbm.entity.cart.*;
import com.hbm.entity.item.EntityMinecartOre;
import com.hbm.items.ItemEnumMulti;
import com.hbm.items.ModItems;
import com.hbm.lib.RefStrings;
import com.hbm.util.EnumUtil;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import net.minecraft.block.Block;
import net.minecraft.block.BlockDispenser;
import net.minecraft.block.BlockRailBase;
import net.minecraft.block.material.Material;
import net.minecraft.client.renderer.texture.IIconRegister;
import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.dispenser.BehaviorDefaultDispenseItem;
import net.minecraft.dispenser.IBehaviorDispenseItem;
@ -15,28 +22,159 @@ import net.minecraft.dispenser.IBlockSource;
import net.minecraft.entity.item.EntityMinecart;
import net.minecraft.entity.item.EntityMinecartEmpty;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.util.EnumFacing;
import net.minecraft.util.IIcon;
import net.minecraft.world.World;
public class ItemModMinecart extends ItemEnumMulti {
public class ItemModMinecart extends Item {
private IIcon[] icons;
private IIcon[] bases = new IIcon[4];
public static final String CART_BASE_NBT = "cartBase";
public static enum EnumCartBase {
VANILLA,
WOOD,
STEEL,
PAINTED
}
public static enum EnumMinecart {
CRATE,
DESTROYER,
EMPTY
EMPTY (EnumCartBase.STEEL),
CRATE (EnumCartBase.VANILLA),
DESTROYER (EnumCartBase.STEEL),
POWDER (EnumCartBase.WOOD);
public int types;
private EnumMinecart(EnumCartBase... types) {
this.types = 0;
for(EnumCartBase type : types) {
this.types |= (1 << type.ordinal());
}
}
private EnumMinecart(int types) {
this.types = types;
}
public boolean supportsBase(int type) {
return (this.types & (1 << type)) > 0;
}
public boolean supportsBase(EnumCartBase type) {
return supportsBase(type.ordinal());
}
/*public boolean isVanilla() {
return isType(0);
}
public boolean isSteel() {
return isType(1);
}
public boolean isWood() {
return isType(2);
}
public boolean isPainted() {
return isType(3);
}*/
}
public ItemModMinecart() {
super(EnumMinecart.class, true, true);
this.setMaxStackSize(4);
this.setCreativeTab(CreativeTabs.tabTransport);
BlockDispenser.dispenseBehaviorRegistry.putObject(this, dispenseBehavior);
}
@Override
public Item setUnlocalizedName(String unlocalizedName) {
super.setUnlocalizedName(unlocalizedName);
this.setTextureName(RefStrings.MODID + ":"+ unlocalizedName);
return this;
}
@Override
public String getUnlocalizedName(ItemStack stack) {
EnumMinecart cart = EnumUtil.grabEnumSafely(EnumMinecart.class, stack.getItemDamage());
return super.getUnlocalizedName() + "." + cart.name().toLowerCase();
}
@Override
@SideOnly(Side.CLIENT)
public void getSubItems(Item item, CreativeTabs tab, List list) {
for(int i = 0; i < EnumMinecart.values().length; i++) {
EnumMinecart cart = EnumMinecart.values()[i];
for(EnumCartBase base : EnumCartBase.values()) {
if(cart.supportsBase(base)) {
list.add(createCartItem(base, cart));
}
}
}
}
@Override
@SideOnly(Side.CLIENT)
public void registerIcons(IIconRegister reg) {
for(int i = 0; i < EnumCartBase.values().length; i++) {
EnumCartBase base = EnumCartBase.values()[i];
bases[i] = reg.registerIcon(this.getIconString() + "." + base.name().toLowerCase());
}
EnumMinecart[] enums = EnumMinecart.values();
this.icons = new IIcon[enums.length];
for(int i = 0; i < icons.length; i++) {
Enum num = enums[i];
this.icons[i] = reg.registerIcon(this.getIconString() + "_overlay." + num.name().toLowerCase());
}
}
public static EnumCartBase getBaseType(ItemStack stack) {
if(!stack.hasTagCompound())
return EnumCartBase.VANILLA;
int meta = stack.stackTagCompound.getInteger(CART_BASE_NBT);
return EnumUtil.grabEnumSafely(EnumCartBase.class, meta);
}
public static ItemStack createCartItem(EnumCartBase base, EnumMinecart cart) {
ItemStack stack = new ItemStack(ModItems.cart, 1, cart.ordinal());
stack.stackTagCompound = new NBTTagCompound();
stack.stackTagCompound.setInteger(CART_BASE_NBT, base.ordinal());
return stack;
}
@Override
@SideOnly(Side.CLIENT)
public boolean requiresMultipleRenderPasses() {
return true;
}
@Override
@SideOnly(Side.CLIENT)
public IIcon getIcon(ItemStack stack, int pass) {
if(pass == 0) {
EnumCartBase base = getBaseType(stack);
return this.bases[base.ordinal()];
}
return this.icons[stack.getItemDamage()];
}
private static final IBehaviorDispenseItem dispenseBehavior = new BehaviorDefaultDispenseItem() {
private final BehaviorDefaultDispenseItem behaviourDefaultDispenseItem = new BehaviorDefaultDispenseItem();
@Override
public ItemStack dispenseStack(IBlockSource source, ItemStack stack) {
EnumFacing enumfacing = BlockDispenser.func_149937_b(source.getBlockMetadata());
World world = source.getWorld();
@ -74,7 +212,8 @@ public class ItemModMinecart extends ItemEnumMulti {
source.getWorld().playAuxSFX(1000, source.getXInt(), source.getYInt(), source.getZInt(), 0);
}
};
@Override
public boolean onItemUse(ItemStack stack, EntityPlayer entity, World world, int x, int y, int z, int side, float fx, float fy, float fz) {
if(BlockRailBase.func_150051_a(world.getBlock(x, y, z))) {
if(!world.isRemote) {

View File

@ -210,6 +210,7 @@ public class ClientProxy extends ServerProxy {
ClientRegistry.bindTileEntitySpecialRenderer(TileEntityMachineMiningDrill.class, new RenderMiningDrill());
ClientRegistry.bindTileEntitySpecialRenderer(TileEntityMachineMiningLaser.class, new RenderLaserMiner());
ClientRegistry.bindTileEntitySpecialRenderer(TileEntityMachineAssembler.class, new RenderAssembler());
ClientRegistry.bindTileEntitySpecialRenderer(TileEntityMachineAssemfac.class, new RenderAssemfac());
ClientRegistry.bindTileEntitySpecialRenderer(TileEntityMachineChemplant.class, new RenderChemplant());
ClientRegistry.bindTileEntitySpecialRenderer(TileEntityMachineChemfac.class, new RenderChemfac());
ClientRegistry.bindTileEntitySpecialRenderer(TileEntityMachineFluidTank.class, new RenderFluidTank());

View File

@ -112,6 +112,7 @@ public class ResourceManager {
public static final IModelCustom assembler_cog = AdvancedModelLoader.loadModel(new ResourceLocation(RefStrings.MODID, "models/assembler_new_cog.obj"));
public static final IModelCustom assembler_slider = AdvancedModelLoader.loadModel(new ResourceLocation(RefStrings.MODID, "models/assembler_new_slider.obj"));
public static final IModelCustom assembler_arm = AdvancedModelLoader.loadModel(new ResourceLocation(RefStrings.MODID, "models/assembler_new_arm.obj"));
public static final IModelCustom assemfac = new HFRWavefrontObject(new ResourceLocation(RefStrings.MODID, "models/machines/assemfac.obj"));
//Chemplant
public static final IModelCustom chemplant_body = AdvancedModelLoader.loadModel(new ResourceLocation(RefStrings.MODID, "models/chemplant_new_body.obj"));
@ -414,6 +415,7 @@ public class ResourceManager {
public static final ResourceLocation assembler_cog_tex = new ResourceLocation(RefStrings.MODID, "textures/models/assembler_cog_new.png");
public static final ResourceLocation assembler_slider_tex = new ResourceLocation(RefStrings.MODID, "textures/models/assembler_slider_new.png");
public static final ResourceLocation assembler_arm_tex = new ResourceLocation(RefStrings.MODID, "textures/models/assembler_arm_new.png");
public static final ResourceLocation assemfac_tex = new ResourceLocation(RefStrings.MODID, "textures/models/machines/assemfac.png");
//Chemplant
public static final ResourceLocation chemplant_body_tex = new ResourceLocation(RefStrings.MODID, "textures/models/chemplant_base_new.png");

View File

@ -59,7 +59,17 @@ public class ItemFolderPacket implements IMessage {
ItemStack stack = new ItemStack(Item.getItemById(m.item), 1, m.meta);
if(p.capabilities.isCreativeMode) {
p.inventory.addItemStackToInventory(stack.copy());
if(stack.getItem() == ModItems.assembly_template) {
ComparableStack out = AssemblerRecipes.recipeList.get(stack.getItemDamage());
if(out != null) {
stack.setItemDamage(0);
ItemAssemblyTemplate.writeType(stack, out);
}
}
p.inventory.addItemStackToInventory(stack);
return null;
}
@ -152,7 +162,7 @@ public class ItemFolderPacket implements IMessage {
ComparableStack out = AssemblerRecipes.recipeList.get(output.getItemDamage());
if(out != null) {
out.meta = 0;
output.setItemDamage(0);
ItemAssemblyTemplate.writeType(output, out);
}
}

View File

@ -3,8 +3,10 @@ package com.hbm.render.item;
import org.lwjgl.input.Keyboard;
import org.lwjgl.opengl.GL11;
import com.hbm.inventory.RecipesCommon.ComparableStack;
import com.hbm.inventory.recipes.AssemblerRecipes;
import com.hbm.items.ModItems;
import com.hbm.items.machine.ItemAssemblyTemplate;
import com.hbm.render.util.RenderItemStack;
import net.minecraft.client.renderer.RenderHelper;
@ -19,8 +21,10 @@ public class ItemRenderTemplate implements IItemRenderer {
if (Keyboard.isKeyDown(Keyboard.KEY_LSHIFT) && (type == IItemRenderer.ItemRenderType.INVENTORY)) {
if(stack.getItem() == ModItems.assembly_template)
this.currentItem = AssemblerRecipes.recipeList.get(stack.getItemDamage()).toStack();
if(stack.getItem() == ModItems.assembly_template) {
ComparableStack st = ItemAssemblyTemplate.readType(stack);
this.currentItem = st != null ? st.toStack() : AssemblerRecipes.recipeList.get(stack.getItemDamage()).toStack();
}
if(stack.getItem() == ModItems.chemistry_template)
this.currentItem = new ItemStack(ModItems.chemistry_icon, 1, stack.getItemDamage());

View File

@ -0,0 +1,111 @@
package com.hbm.render.tileentity;
import org.lwjgl.opengl.GL11;
import com.hbm.blocks.BlockDummyable;
import com.hbm.main.ResourceManager;
import net.minecraft.client.renderer.tileentity.TileEntitySpecialRenderer;
import net.minecraft.tileentity.TileEntity;
public class RenderAssemfac extends TileEntitySpecialRenderer {
@Override
public void renderTileEntityAt(TileEntity tileEntity, double x, double y, double z, float f) {
GL11.glPushMatrix();
GL11.glTranslated(x + 0.5D, y, z + 0.5D);
GL11.glEnable(GL11.GL_LIGHTING);
GL11.glDisable(GL11.GL_CULL_FACE);
switch(tileEntity.getBlockMetadata() - BlockDummyable.offset) {
case 5: GL11.glRotatef(180, 0F, 1F, 0F); break;
case 2: GL11.glRotatef(270, 0F, 1F, 0F); break;
case 4: GL11.glRotatef(0, 0F, 1F, 0F); break;
case 3: GL11.glRotatef(90, 0F, 1F, 0F); break;
}
GL11.glTranslated(0.5D, 0.0D, -0.5D);
GL11.glShadeModel(GL11.GL_SMOOTH);
bindTexture(ResourceManager.assemfac_tex);
ResourceManager.assemfac.renderPart("Factory");
double rot = Math.sin((double)(System.currentTimeMillis() / 500D)) * 25 - 20;
double rot2 = Math.sin((double)(System.currentTimeMillis() / 400D)) * 10;
double hOff;
double sOff;
GL11.glPushMatrix();
hOff = 1.875D;
sOff = 2D;
GL11.glTranslated(sOff, hOff, sOff);
GL11.glRotated(rot, 1, 0, 0);
GL11.glTranslated(-sOff, -hOff, -sOff);
ResourceManager.assemfac.renderPart("Pivot1");
ResourceManager.assemfac.renderPart("Pivot2");
ResourceManager.assemfac.renderPart("Pivot3");
hOff = 3.375D;
sOff = 2D;
GL11.glTranslated(sOff, hOff, sOff);
GL11.glRotated(rot * 1.2, -1, 0, 0);
GL11.glTranslated(-sOff, -hOff, -sOff);
ResourceManager.assemfac.renderPart("Arm1");
ResourceManager.assemfac.renderPart("Arm2");
ResourceManager.assemfac.renderPart("Arm3");
hOff = 3.375D;
sOff = 0.625D;
GL11.glTranslated(sOff, hOff, sOff);
GL11.glRotated(rot2, 1, 0, 0);
GL11.glTranslated(-sOff, -hOff, -sOff);
ResourceManager.assemfac.renderPart("Piston1");
ResourceManager.assemfac.renderPart("Piston2");
ResourceManager.assemfac.renderPart("Piston3");
GL11.glTranslated(0, Math.sin((double)(System.currentTimeMillis() / 70D)) * 0.75 - 0.5, 0);
ResourceManager.assemfac.renderPart("Striker1");
ResourceManager.assemfac.renderPart("Striker2");
ResourceManager.assemfac.renderPart("Striker3");
GL11.glPopMatrix();
rot = -Math.sin((double)((System.currentTimeMillis() + 500) / 500D)) * 25 + 20;
rot2 = -Math.sin((double)((System.currentTimeMillis() + 150) / 400D)) * 10;
GL11.glPushMatrix();
hOff = 1.875D;
sOff = -2D;
GL11.glTranslated(sOff, hOff, sOff);
GL11.glRotated(rot, 1, 0, 0);
GL11.glTranslated(-sOff, -hOff, -sOff);
ResourceManager.assemfac.renderPart("Pivot4");
ResourceManager.assemfac.renderPart("Pivot5");
ResourceManager.assemfac.renderPart("Pivot6");
hOff = 3.375D;
sOff = -2D;
GL11.glTranslated(sOff, hOff, sOff);
GL11.glRotated(rot * 1.2, -1, 0, 0);
GL11.glTranslated(-sOff, -hOff, -sOff);
ResourceManager.assemfac.renderPart("Arm4");
ResourceManager.assemfac.renderPart("Arm5");
ResourceManager.assemfac.renderPart("Arm6");
hOff = 3.375D;
sOff = -0.625D;
GL11.glTranslated(sOff, hOff, sOff);
GL11.glRotated(rot2, 1, 0, 0);
GL11.glTranslated(-sOff, -hOff, -sOff);
ResourceManager.assemfac.renderPart("Piston4");
ResourceManager.assemfac.renderPart("Piston5");
ResourceManager.assemfac.renderPart("Piston6");
GL11.glTranslated(0, Math.sin((double)((System.currentTimeMillis() + 130) / 70D)) * 0.75 - 0.5, 0);
ResourceManager.assemfac.renderPart("Striker4");
ResourceManager.assemfac.renderPart("Striker5");
ResourceManager.assemfac.renderPart("Striker6");
GL11.glPopMatrix();
GL11.glShadeModel(GL11.GL_FLAT);
GL11.glPopMatrix();
}
}

View File

@ -79,7 +79,6 @@ public class TileMappings {
put(TileEntityMachineRTG.class, "tileentity_machine_rtg");
put(TileEntityStructureMarker.class, "tileentity_structure_marker");
put(TileEntityMachineMiningDrill.class, "tileentity_mining_drill");
put(TileEntityMachineAssembler.class, "tileentity_assembly_machine");
put(TileEntityFluidDuctSimple.class, "tileentity_universal_duct_simple");
put(TileEntityFluidDuct.class, "tileentity_universal_duct");
put(TileEntityMachineFluidTank.class, "tileentity_fluid_tank");
@ -254,6 +253,8 @@ public class TileMappings {
put(TileEntityMachineSolidifier.class, "tileentity_solidifier");
put(TileEntityElectrolyser.class, "tileentity_electrolyser");
put(TileEntityMachineAssembler.class, "tileentity_assembly_machine");
put(TileEntityMachineAssemfac.class, "tileentity_assemfac");
put(TileEntityMachineChemplant.class, "tileentity_chemical_plant");
put(TileEntityMachineChemfac.class, "tileentity_chemfac");

View File

@ -0,0 +1,20 @@
package com.hbm.tileentity.machine;
import com.hbm.tileentity.TileEntityMachineBase;
public class TileEntityMachineAssemfac extends TileEntityMachineBase {
public TileEntityMachineAssemfac() {
super(10 * 8 + 4 + 1); //8 assembler groups with 10 slots, 4 upgrade slots, 1 battery slot
}
@Override
public String getName() {
return "container.assemfac";
}
@Override
public void updateEntity() {
}
}

File diff suppressed because it is too large Load Diff

Binary file not shown.

After

Width:  |  Height:  |  Size: 661 B

Binary file not shown.

Binary file not shown.

After

Width:  |  Height:  |  Size: 493 B

View File

Before

Width:  |  Height:  |  Size: 439 B

After

Width:  |  Height:  |  Size: 439 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 433 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 477 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 270 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 303 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 91 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 178 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 6.2 KiB

After

Width:  |  Height:  |  Size: 7.0 KiB