More Scala to Java. Armor rendering simplified to port to Java.

This commit is contained in:
Leon 2016-11-06 18:57:57 -05:00
parent 72355a8882
commit a1bff1be20
14 changed files with 685 additions and 272 deletions

View file

@ -1,49 +1,436 @@
////package net.machinemuse.general.gui.frame;
////
////import net.machinemuse.general.gui.clickable.ClickableItem;
////import net.machinemuse.numina.general.MuseLogger;
////import net.machinemuse.numina.general.MuseMathUtils;
////import net.machinemuse.numina.geometry.Colour;
////import net.machinemuse.numina.geometry.MuseRect;
////import net.machinemuse.numina.geometry.MuseRelativeRect;
////import net.machinemuse.numina.network.PacketSender;
////import net.machinemuse.numina.render.RenderState;
////import net.machinemuse.powersuits.client.render.modelspec.ModelPartSpec;
////import net.machinemuse.powersuits.client.render.modelspec.ModelRegistry;
////import net.machinemuse.powersuits.client.render.modelspec.ModelSpec;
////import net.machinemuse.powersuits.network.packets.MusePacketCosmeticInfo;
////import net.machinemuse.utils.MuseItemUtils;
////import net.machinemuse.utils.render.GuiIcons;
////import net.machinemuse.utils.render.MuseRenderer;
////import net.minecraft.client.Minecraft;
////import net.minecraft.client.entity.EntityClientPlayerMP;
////import net.minecraft.entity.Entity;
////import net.minecraft.entity.player.EntityPlayer;
////import net.minecraft.item.ItemArmor;
////import net.minecraft.nbt.NBTBase;
////import net.minecraft.nbt.NBTTagCompound;
////import org.lwjgl.opengl.GL11;
////import scala.*;
////import scala.collection.Iterable;
////import scala.collection.Iterator;
////import scala.collection.TraversableOnce;
////import scala.reflect.ClassTag$;
////
////import java.io.Serializable;
////import java.util.ArrayList;
////import java.util.List;
////
/////**
//// * Author: MachineMuse (Claire Semple)
//// * Created: 1:46 AM, 30/04/13
//// *
//// * Ported to Java by lehjr on 11/2/16.
//// */
////public class PartManipSubFrame {
//// private ModelSpec model;
//// private ColourPickerFrame colourframe;
//// private ItemSelectionFrame itemSelector;
//// private MuseRelativeRect border;
//// private ModelPartSpec[] specs;
//// private boolean open;
//// private double mousex;
//// private double mousey;
////
//// public PartManipSubFrame(ModelSpec model, ColourPickerFrame colourframe, ItemSelectionFrame itemSelector, MuseRelativeRect border) {
//// this.model = model;
//// this.colourframe = colourframe;
//// this.itemSelector = itemSelector;
//// this.border = border;
////
//// /* TODO: cleanup and simplify in 1.10.2
//// * Scala method of filtering the list and building a new array based on boolean values.
////
//// var specs: Array[ModelPartSpec] = model.apply.values.filter(spec => isValidArmor(getSelectedItem, spec.slot)).toArray
//// model.apply().values().filter(Function1<ModelPartSpec, Object> p) */
//// this.specs = getSpecs();
////
//// this.open = true;
//// this.mousex = 0.0;
//// this.mousey = 0.0;
//// }
////
//// private ModelPartSpec[] getSpecs() {
//// List<ModelPartSpec> specsArray = new ArrayList<>();
//// Iterator<ModelPartSpec> specIt = model.apply().values().iterator();
//// ModelPartSpec spec;
//// while (specIt.hasNext()) {
//// spec = specIt.next();
//// if (isValidArmor(getSelectedItem(), spec.slot()))
//// specsArray.add(spec);
//// }
//// return (ModelPartSpec[]) specsArray.toArray();
//// }
////
//// public int getArmorSlot() {
//// return ((ItemArmor)this.getSelectedItem().getItem().getItem()).armorType;
//// }
////
//// public ClickableItem getSelectedItem() {
//// return this.itemSelector.getSelectedItem();
//// }
////
//// public NBTTagCompound getRenderTag() {
//// return MuseItemUtils.getMuseRenderTag(this.getSelectedItem().getItem(), this.getArmorSlot());
//// }
////
//// public NBTTagCompound getItemTag() {
//// return MuseItemUtils.getMuseItemTag(this.getSelectedItem().getItem());
//// }
////
//// public boolean isValidArmor(ClickableItem clickie, int slot) {
//// return clickie != null && clickie.getItem().getItem().isValidArmor(clickie.getItem(), slot, (Entity) Minecraft.getMinecraft().thePlayer);
//// }
////
//// public NBTTagCompound getSpecTag(ModelPartSpec spec) {
//// return this.getRenderTag().getCompoundTag(ModelRegistry.makeName(spec));
//// }
////
//// public NBTTagCompound getOrDontGetSpecTag(ModelPartSpec spec) {
//// String name = ModelRegistry.makeName(spec);
//// return this.getRenderTag().hasKey(name) ? this.getRenderTag().getCompoundTag(name) : null;
//// }
////
//// public NBTTagCompound getOrMakeSpecTag(ModelPartSpec spec) {
//// String name = ModelRegistry.makeName(spec);
//// NBTTagCompound compoundTag;
//// if (this.getRenderTag().hasKey(name)) {
//// compoundTag = this.getRenderTag().getCompoundTag(name);
//// }
//// else {
//// NBTTagCompound k = new NBTTagCompound();
//// spec.multiSet(k, null, None$.MODULE$, None$.MODULE$); // FIXME!! null will probably fail
//// this.getRenderTag().setTag(name, (NBTBase)k);
//// compoundTag = k;
//// }
//// return compoundTag;
//// }
////
//// public void updateItems() {
//// this.specs = getSpecs();
//// this.border.setHeight((specs.length > 0) ? (specs.length * 8 + 10) : 0);
//// }
////
////
//// // def drawPartial(min: Double, max: Double) {
////// if (specs.size > 0) {
////// ModelRegistry.getName(model).foreach(s => MuseRenderer.drawString(s, border.left + 8, border.top))
////// drawOpenArrow(min, max)
////// if (open) {
////// ((border.top + 8) /: specs) {
////// case (y, spec) => {
////// drawSpecPartial(border.left, y, spec, min, max)
////// y + 8
////// }
////// }
////// }
////// }
////// }
////
//// public void drawPartial(double min, double max) {
////// if (specs.length > 0) {
//////
//////
////// ((MuseBiMap<Object, T>)ModelRegistry.getName((T)this.model())
////// ModelRegistry.getName(model);
//////
//////
//////
//////
////// .foreach(s => MuseRenderer.drawString(/* STRING */s, border.left() + 8, border.top()))
////// drawOpenArrow(min, max);
////// if (open) {
////// ((border.top + 8) /: specs) {
////// case (y, spec) => {
////// drawSpecPartial(border.left, y, spec, min, max);
////// y + 8
////// }
////// }
////// }
////// }
////// }
////
////
////
////
//// if (specs.length > 0) {
//// ((MuseBiMap<Object, T>)ModelRegistry.getName((T)this.model()).foreach((Function1)new PartManipSubFrame$$anonfun$drawPartial.PartManipSubFrame$$anonfun$drawPartial$1(this));
//// this.drawOpenArrow(min, max);
//// if (this.open()) {
//// Predef$.MODULE$.refArrayOps((Object[])this.specs()).$div$colon((Object)BoxesRunTime.boxToDouble(this.border().top() + 8), (Function2)new PartManipSubFrame$$anonfun$drawPartial.PartManipSubFrame$$anonfun$drawPartial$2(this, min, max));
//// }
//// }
//// }
////
//// public void decrAbove(int index) {
//// for (ModelPartSpec spec : specs) {
//// String tagname = ModelRegistry.makeName(spec);
//// EntityClientPlayerMP player = Minecraft.getMinecraft().thePlayer;
//// NBTTagCompound tagdata = getOrDontGetSpecTag(spec);
////
//// if (tagdata != null) {
//// int oldindex = spec.getColourIndex(tagdata);
//// if (oldindex >= index && oldindex > 0) {
//// spec.setColourIndex(tagdata, oldindex - 1);
//// if (player.worldObj.isRemote)
//// PacketSender.sendToServer(new MusePacketCosmeticInfo(player, getSelectedItem().inventorySlot, tagname, tagdata).getPacket131());
//// }
//// }
//// }
//// }
////
////
////
////
////
////
////
////// def drawSpecPartial(x: Double, y: Double, spec: ModelPartSpec, ymino: Double, ymaxo: Double) = {
////// val tag = getSpecTag(spec)
////// val selcomp = if (tag.hasNoTags) 0 else if (spec.getGlow(tag)) 2 else 1
////// val selcolour = spec.getColourIndex(tag)
////// new GuiIcons.TransparentArmor(x, y, null, null, ymino, null, ymaxo)
////// new GuiIcons.NormalArmor(x + 8, y, null, null, ymino, null, ymaxo)
////// new GuiIcons.GlowArmor(x + 16, y, null, null, ymino, null, ymaxo)
////// new GuiIcons.SelectedArmorOverlay(x + selcomp * 8, y, null, null, ymino, null, ymaxo)
////
//// /* /: fold left operator */
////
////// val textstartx = ((x + 28) /: colourframe.colours) {
////// case (acc, colour) =>
////// new GuiIcons.ArmourColourPatch(acc, y, new Colour(colour), null, ymino, null, ymaxo)
////// acc + 8
////// }
////// if (selcomp > 0) {
////// new GuiIcons.SelectedArmorOverlay(x + 28 + selcolour * 8, y, null, null, ymino, null, ymaxo)
////// }
////// MuseRenderer.drawString(spec.displayName, textstartx + 4, y)
////// }
////
//// public void drawSpecPartial(double x, double y, ModelPartSpec spec, double ymino, double ymaxo) {
//// NBTTagCompound tag = this.getSpecTag(spec);
//// int selcomp = tag.hasNoTags() ? 0 : (spec.getGlow(tag) ? 2 : 1);
//// int selcolour = spec.getColourIndex(tag);
//// new GuiIcons.TransparentArmor(x, y, null, null, ymino, null, ymaxo);
//// new GuiIcons.NormalArmor(x + 8, y, null, null, ymino, null, ymaxo);
//// new GuiIcons.GlowArmor(x + 16, y, null, null, ymino, null, ymaxo);
//// new GuiIcons.SelectedArmorOverlay(x + selcomp * 8, y, null, null, ymino, null, ymaxo);
////
//// double textstartx = Predef.Double2double((Predef.intArrayOps(colourframe.colours())./:(scala.runtime.BoxesRunTime.boxToDouble((x.+(28))))) ({
//// case (acc, colour) =>
//// new GuiIcons.ArmourColourPatch(Predef.Double2double(acc), y, new Colour(colour), null, Predef.double2Double(ymino), null, Predef.double2Double(ymaxo));
//// Predef.double2Double(Predef.Double2double(acc).+(8))
//// }));
//// if (selcomp > 0) {
//// new GuiIcons.SelectedArmorOverlay(x + 28 + selcolour * 8, y, null, null, ymino, null, ymaxo)
//// }
//// MuseRenderer.drawString(spec.displayName, textstartx + 4, y)
////
////
////
////
////
//// double textstartx = BoxesRunTime.unboxToDouble(Predef$.MODULE$.intArrayOps(this.colourframe.colours()).$div$colon((Object)BoxesRunTime.boxToDouble(x + 28), (Function2)new PartManipSubFrame$$anonfun.PartManipSubFrame$$anonfun$1(this, y, ymino, ymaxo)));
////
////
////
////
//// if (selcomp > 0) {
//// new GuiIcons.SelectedArmorOverlay(x + 28 + selcolour * 8, y, null, null, ymino, null, ymaxo);
//// }
//// MuseRenderer.drawString(spec.displayName(), textstartx + 4, y);
//// }
////
////
////
////
////
//// public void drawOpenArrow(double min, double max) {
//// RenderState.texturelessOn();
//// Colour.LIGHTBLUE.doGL();
//// GL11.glBegin(4);
//// if (this.open) {
//// GL11.glVertex2d(this.border.left() + 3, MuseMathUtils.clampDouble(this.border.top() + 3, min, max));
//// GL11.glVertex2d(this.border.left() + 5, MuseMathUtils.clampDouble(this.border.top() + 7, min, max));
//// GL11.glVertex2d(this.border.left() + 7, MuseMathUtils.clampDouble(this.border.top() + 3, min, max));
//// }
//// else {
//// GL11.glVertex2d(this.border.left() + 3, MuseMathUtils.clampDouble(this.border.top() + 3, min, max));
//// GL11.glVertex2d(this.border.left() + 3, MuseMathUtils.clampDouble(this.border.top() + 7, min, max));
//// GL11.glVertex2d(this.border.left() + 7, MuseMathUtils.clampDouble(this.border.top() + 5, min, max));
//// }
//// GL11.glEnd();
//// Colour.WHITE.doGL();
//// RenderState.texturelessOff();
//// }
////
//// public MuseRect getBorder() {
//// if (this.open) {
//// this.border.setHeight(9 + 9 * this.specs.length);
//// }
//// else {
//// this.border.setHeight(9.0);
//// }
//// return this.border;
//// }
////
//// public boolean tryMouseClick(double x, double y) {
//// boolean b;
//// if (x < this.border.left() || x > this.border.right() || y < this.border.top() || y > this.border.bottom()) {
//// b = false;
//// }
//// else if (x > this.border.left() + 2 && x < this.border.left() + 8 && y > this.border.top() + 2 && y < this.border.top() + 8) {
//// this.open =(!this.open);
//// this.getBorder();
//// b = true;
//// }
//// else if (x < this.border.left() + 24 && y > this.border.top() + 8) {
//// int lineNumber = (int)((y - this.border.top() - 8) / 8);
//// int columnNumber = (int)((x - this.border.left()) / 8);
////
////
//// //TODO: check this, it seems backwards; ie min should be 0 and max should be size -1
////// val spec = specs(lineNumber.min(specs.size - 1).max(0))
//// ModelPartSpec spec = specs[Math.max(Math.min(lineNumber, specs.length - 1), 0)];
//// MuseLogger.logDebug("Line " + lineNumber + " Column " + columnNumber);
//// switch (columnNumber) {
//// default: {
//// b = false;
//// break;
//// }
//// case 2: {
//// String tagname = ModelRegistry.makeName(spec);
//// EntityClientPlayerMP player = Minecraft.getMinecraft().thePlayer;
//// NBTTagCompound tagdata = this.getOrMakeSpecTag(spec);
//// spec.setGlow(tagdata, true);
//// if (player.worldObj.isRemote) {
//// PacketSender.sendToServer(new MusePacketCosmeticInfo(player, this.getSelectedItem().inventorySlot, tagname, tagdata).getPacket131());
//// }
//// this.updateItems();
//// b = true;
//// break;
//// }
//// case 1: {
//// String tagname2 = ModelRegistry.makeName(spec);
//// EntityClientPlayerMP player2 = Minecraft.getMinecraft().thePlayer;
//// NBTTagCompound tagdata2 = this.getOrMakeSpecTag(spec);
//// spec.setGlow(tagdata2, false);
//// if (player2.worldObj.isRemote) {
//// PacketSender.sendToServer(new MusePacketCosmeticInfo(player2, this.getSelectedItem().inventorySlot, tagname2, tagdata2).getPacket131());
//// }
//// this.updateItems();
//// b = true;
//// break;
//// }
//// case 0: {
//// NBTTagCompound renderTag = this.getRenderTag();
//// String tagname3 = ModelRegistry.makeName(spec);
//// EntityClientPlayerMP player3 = Minecraft.getMinecraft().thePlayer;
//// renderTag.removeTag(ModelRegistry.makeName(spec));
//// if (player3.worldObj.isRemote) {
//// PacketSender.sendToServer(new MusePacketCosmeticInfo(player3, this.getSelectedItem().inventorySlot, tagname3, new NBTTagCompound()).getPacket131());
//// }
//// this.updateItems();
//// b = true;
//// break;
//// }
//// }
//// }
//// else if (x > this.border.left() + 28 && x < this.border.left() + 28 + Predef$.MODULE$.intArrayOps(this.colourframe.colours()).size() * 8) {
//// int lineNumber2 = (int)((y - this.border.top() - 8) / 8);
//// int columnNumber2 = (int)((x - this.border.left() - 28) / 8);
//// ModelPartSpec spec2 = specs[Math.max(Math.min(lineNumber2, specs.length - 1), 0)];
//// String tagname4 = ModelRegistry.makeName(spec2);
//// EntityClientPlayerMP player4 = Minecraft.getMinecraft().thePlayer;
//// NBTTagCompound tagdata3 = this.getOrMakeSpecTag(spec2);
//// spec2.setColourIndex(tagdata3, columnNumber2);
//// if (player4.worldObj.isRemote) {
//// PacketSender.sendToServer(new MusePacketCosmeticInfo((EntityPlayer)player4, this.getSelectedItem().inventorySlot, tagname4, tagdata3).getPacket131());
//// }
//// b = true;
//// }
//// else {
//// b = false;
//// }
//// return b;
//// }
////}
//
//
////
//// Decompiled by Procyon v0.5.30
////
//
//package net.machinemuse.general.gui.frame;
//
//import net.machinemuse.general.gui.clickable.ClickableItem;
//import net.machinemuse.numina.general.MuseLogger;
//import net.machinemuse.numina.general.MuseMathUtils;
//import net.machinemuse.numina.geometry.Colour;
//import net.machinemuse.numina.geometry.MuseRect;
//import net.machinemuse.numina.geometry.MuseRelativeRect;
//import net.machinemuse.numina.network.PacketSender;
//import net.machinemuse.numina.render.RenderState;
//import net.machinemuse.powersuits.client.render.modelspec.ModelPartSpec;
//import net.machinemuse.numina.scala.MuseBiMap;
//import net.machinemuse.powersuits.client.render.modelspec.ModelRegistry;
//import net.machinemuse.powersuits.client.render.modelspec.ModelSpec;
//import net.machinemuse.powersuits.network.packets.MusePacketCosmeticInfo;
//import net.machinemuse.utils.MuseItemUtils;
//import net.machinemuse.utils.render.GuiIcons;
//import net.machinemuse.utils.render.MuseRenderer;
//import net.minecraft.client.Minecraft;
//import net.minecraft.client.entity.EntityClientPlayerMP;
//import net.minecraft.entity.Entity;
//import net.minecraft.entity.player.EntityPlayer;
//import net.minecraft.item.ItemArmor;
//import net.minecraft.nbt.NBTBase;
//import net.minecraft.nbt.NBTTagCompound;
//import org.lwjgl.opengl.GL11;
//import scala.*;
//import scala.collection.Iterable;
//import scala.collection.Iterator;
//import scala.collection.TraversableOnce;
//import scala.runtime.AbstractFunction1;
//import scala.Serializable;
//import net.minecraft.client.entity.EntityClientPlayerMP;
//import net.machinemuse.numina.network.PacketSender;
//import net.minecraft.entity.player.EntityPlayer;
//import net.machinemuse.powersuits.network.packets.MusePacketCosmeticInfo;
//import net.machinemuse.numina.general.MuseLogger;
//import scala.collection.mutable.StringBuilder;
//import net.machinemuse.numina.geometry.MuseRect;
//import net.machinemuse.numina.general.MuseMathUtils;
//import org.lwjgl.opengl.GL11;
//import net.machinemuse.numina.render.RenderState;
//import net.machinemuse.utils.render.MuseRenderer;
//import scala.runtime.BoxedUnit;
//import net.machinemuse.numina.geometry.Colour;
//import net.machinemuse.utils.render.GuiIcons;
//import scala.Function2;
//import scala.runtime.BoxesRunTime;
//import scala.Predef$;
//import scala.reflect.ClassTag$;
//import scala.Function1;
//import scala.collection.TraversableOnce;
//import net.minecraft.nbt.NBTBase;
//import scala.None$;
//import scala.Some;
//import scala.Option;
//import net.machinemuse.powersuits.client.render.modelspec.ModelRegistry$;
//import net.minecraft.entity.Entity;
//import net.minecraft.client.Minecraft;
//import net.machinemuse.utils.MuseItemUtils;
//import net.minecraft.nbt.NBTTagCompound;
//import net.machinemuse.general.gui.clickable.ClickableItem;
//import net.minecraft.item.ItemArmor;
//import net.machinemuse.powersuits.client.render.modelspec.ModelPartSpec;
//import net.machinemuse.numina.geometry.MuseRelativeRect;
//import net.machinemuse.powersuits.client.render.modelspec.ModelSpec;
//import scala.reflect.ScalaSignature;
//
//import java.io.Serializable;
//import java.util.ArrayList;
//import java.util.List;
//
///**
// * Author: MachineMuse (Claire Semple)
// * Created: 1:46 AM, 30/04/13
// *
// * Ported to Java by lehjr on 11/2/16.
// */
//public class PartManipSubFrame {
// private ModelSpec model;
// private ColourPickerFrame colourframe;
// private ItemSelectionFrame itemSelector;
// private MuseRelativeRect border;
//
//public class PartManipSubFrame
//{
// private final ModelSpec model;
// private final ColourPickerFrame colourframe;
// private final ItemSelectionFrame itemSelector;
// private final MuseRelativeRect border;
// private ModelPartSpec[] specs;
// private boolean open;
// private double mousex;
@ -79,12 +466,60 @@
// return (ModelPartSpec[]) specsArray.toArray();
// }
//
// public ModelSpec model() {
// return this.model;
// }
//
// public ColourPickerFrame colourframe() {
// return this.colourframe;
// }
//
// public ItemSelectionFrame itemSelector() {
// return this.itemSelector;
// }
//
// public MuseRelativeRect border() {
// return this.border;
// }
//
// public ModelPartSpec[] specs() {
// return this.specs;
// }
//
// public void specs_$eq(final ModelPartSpec[] x$1) {
// this.specs = x$1;
// }
//
// public boolean open() {
// return this.open;
// }
//
// public void open_$eq(final boolean x$1) {
// this.open = x$1;
// }
//
// public double mousex() {
// return this.mousex;
// }
//
// public void mousex_$eq(final double x$1) {
// this.mousex = x$1;
// }
//
// public double mousey() {
// return this.mousey;
// }
//
// public void mousey_$eq(final double x$1) {
// this.mousey = x$1;
// }
//
// public int getArmorSlot() {
// return ((ItemArmor)this.getSelectedItem().getItem().getItem()).armorType;
// }
//
// public ClickableItem getSelectedItem() {
// return this.itemSelector.getSelectedItem();
// return this.itemSelector().getSelectedItem();
// }
//
// public NBTTagCompound getRenderTag() {
@ -95,27 +530,27 @@
// return MuseItemUtils.getMuseItemTag(this.getSelectedItem().getItem());
// }
//
// public boolean isValidArmor(ClickableItem clickie, int slot) {
// return clickie != null && clickie.getItem().getItem().isValidArmor(clickie.getItem(), slot, (Entity) Minecraft.getMinecraft().thePlayer);
// public boolean isValidArmor(final ClickableItem clickie, final int slot) {
// return clickie != null && clickie.getItem().getItem().isValidArmor(clickie.getItem(), slot, (Entity)Minecraft.getMinecraft().thePlayer);
// }
//
// public NBTTagCompound getSpecTag(ModelPartSpec spec) {
// return this.getRenderTag().getCompoundTag(ModelRegistry.makeName(spec));
// public NBTTagCompound getSpecTag(final ModelPartSpec spec) {
// return this.getRenderTag().getCompoundTag(ModelRegistry$.MODULE$.makeName(spec));
// }
//
// public NBTTagCompound getOrDontGetSpecTag(ModelPartSpec spec) {
// String name = ModelRegistry.makeName(spec);
// public NBTTagCompound getOrDontGetSpecTag(final ModelPartSpec spec) {
// final String name = ModelRegistry$.MODULE$.makeName(spec);
// return this.getRenderTag().hasKey(name) ? this.getRenderTag().getCompoundTag(name) : null;
// }
//
// public NBTTagCompound getOrMakeSpecTag(ModelPartSpec spec) {
// String name = ModelRegistry.makeName(spec);
// public NBTTagCompound getOrMakeSpecTag(final ModelPartSpec spec) {
// final String name = ModelRegistry$.MODULE$.makeName(spec);
// NBTTagCompound compoundTag;
// if (this.getRenderTag().hasKey(name)) {
// compoundTag = this.getRenderTag().getCompoundTag(name);
// }
// else {
// NBTTagCompound k = new NBTTagCompound();
// final NBTTagCompound k = new NBTTagCompound();
// spec.multiSet(k, null, None$.MODULE$, None$.MODULE$); // FIXME!! null will probably fail
// this.getRenderTag().setTag(name, (NBTBase)k);
// compoundTag = k;
@ -128,50 +563,9 @@
// this.border.setHeight((specs.length > 0) ? (specs.length * 8 + 10) : 0);
// }
//
//
// // def drawPartial(min: Double, max: Double) {
//// if (specs.size > 0) {
//// ModelRegistry.getName(model).foreach(s => MuseRenderer.drawString(s, border.left + 8, border.top))
//// drawOpenArrow(min, max)
//// if (open) {
//// ((border.top + 8) /: specs) {
//// case (y, spec) => {
//// drawSpecPartial(border.left, y, spec, min, max)
//// y + 8
//// }
//// }
//// }
//// }
//// }
//
// public void drawPartial(double min, double max) {
//// if (specs.length > 0) {
////
////
//// ((MuseBiMap<Object, T>)ModelRegistry.getName((T)this.model())
//// ModelRegistry.getName(model);
////
////
////
////
//// .foreach(s => MuseRenderer.drawString(/* STRING */s, border.left() + 8, border.top()))
//// drawOpenArrow(min, max);
//// if (open) {
//// ((border.top + 8) /: specs) {
//// case (y, spec) => {
//// drawSpecPartial(border.left, y, spec, min, max);
//// y + 8
//// }
//// }
//// }
//// }
//// }
//
//
//
//
// if (specs.length > 0) {
// ((MuseBiMap<Object, T>)ModelRegistry.getName((T)this.model()).foreach((Function1)new PartManipSubFrame$$anonfun$drawPartial.PartManipSubFrame$$anonfun$drawPartial$1(this));
// public void drawPartial(final double min, final double max) {
// if (Predef$.MODULE$.refArrayOps((Object[])this.specs()).size() > 0) {
// ((MuseBiMap<Object, T>)ModelRegistry$.MODULE$).getName((T)this.model()).foreach((Function1)new PartManipSubFrame$$anonfun$drawPartial.PartManipSubFrame$$anonfun$drawPartial$1(this));
// this.drawOpenArrow(min, max);
// if (this.open()) {
// Predef$.MODULE$.refArrayOps((Object[])this.specs()).$div$colon((Object)BoxesRunTime.boxToDouble(this.border().top() + 8), (Function2)new PartManipSubFrame$$anonfun$drawPartial.PartManipSubFrame$$anonfun$drawPartial$2(this, min, max));
@ -196,85 +590,37 @@
// }
// }
//
//
//
//
//
//
//
//// def drawSpecPartial(x: Double, y: Double, spec: ModelPartSpec, ymino: Double, ymaxo: Double) = {
//// val tag = getSpecTag(spec)
//// val selcomp = if (tag.hasNoTags) 0 else if (spec.getGlow(tag)) 2 else 1
//// val selcolour = spec.getColourIndex(tag)
//// new GuiIcons.TransparentArmor(x, y, null, null, ymino, null, ymaxo)
//// new GuiIcons.NormalArmor(x + 8, y, null, null, ymino, null, ymaxo)
//// new GuiIcons.GlowArmor(x + 16, y, null, null, ymino, null, ymaxo)
//// new GuiIcons.SelectedArmorOverlay(x + selcomp * 8, y, null, null, ymino, null, ymaxo)
//
// /* /: fold left operator */
//
//// val textstartx = ((x + 28) /: colourframe.colours) {
//// case (acc, colour) =>
//// new GuiIcons.ArmourColourPatch(acc, y, new Colour(colour), null, ymino, null, ymaxo)
//// acc + 8
//// }
//// if (selcomp > 0) {
//// new GuiIcons.SelectedArmorOverlay(x + 28 + selcolour * 8, y, null, null, ymino, null, ymaxo)
//// }
//// MuseRenderer.drawString(spec.displayName, textstartx + 4, y)
//// }
//
// public void drawSpecPartial(double x, double y, ModelPartSpec spec, double ymino, double ymaxo) {
// NBTTagCompound tag = this.getSpecTag(spec);
// int selcomp = tag.hasNoTags() ? 0 : (spec.getGlow(tag) ? 2 : 1);
// int selcolour = spec.getColourIndex(tag);
// new GuiIcons.TransparentArmor(x, y, null, null, ymino, null, ymaxo);
// new GuiIcons.NormalArmor(x + 8, y, null, null, ymino, null, ymaxo);
// new GuiIcons.GlowArmor(x + 16, y, null, null, ymino, null, ymaxo);
// new GuiIcons.SelectedArmorOverlay(x + selcomp * 8, y, null, null, ymino, null, ymaxo);
//
// double textstartx = Predef.Double2double((Predef.intArrayOps(colourframe.colours())./:(scala.runtime.BoxesRunTime.boxToDouble((x.+(28))))) ({
// case (acc, colour) =>
// new GuiIcons.ArmourColourPatch(Predef.Double2double(acc), y, new Colour(colour), null, Predef.double2Double(ymino), null, Predef.double2Double(ymaxo));
// Predef.double2Double(Predef.Double2double(acc).+(8))
// }));
// public void drawSpecPartial(final double x, final double y, final ModelPartSpec spec, final double ymino, final double ymaxo) {
// final NBTTagCompound tag = this.getSpecTag(spec);
// final int selcomp = tag.hasNoTags() ? 0 : (spec.getGlow(tag) ? 2 : 1);
// final int selcolour = spec.getColourIndex(tag);
// new GuiIcons.TransparentArmor(x, y, null, null, Predef$.MODULE$.double2Double(ymino), null, Predef$.MODULE$.double2Double(ymaxo));
// new GuiIcons.NormalArmor(x + 8, y, null, null, Predef$.MODULE$.double2Double(ymino), null, Predef$.MODULE$.double2Double(ymaxo));
// new GuiIcons.GlowArmor(x + 16, y, null, null, Predef$.MODULE$.double2Double(ymino), null, Predef$.MODULE$.double2Double(ymaxo));
// new GuiIcons.SelectedArmorOverlay(x + selcomp * 8, y, null, null, Predef$.MODULE$.double2Double(ymino), null, Predef$.MODULE$.double2Double(ymaxo));
// final double textstartx = BoxesRunTime.unboxToDouble(Predef$.MODULE$.intArrayOps(this.colourframe().colours()).$div$colon((Object)BoxesRunTime.boxToDouble(x + 28), (Function2)new PartManipSubFrame$$anonfun.PartManipSubFrame$$anonfun$1(this, y, ymino, ymaxo)));
// if (selcomp > 0) {
// new GuiIcons.SelectedArmorOverlay(x + 28 + selcolour * 8, y, null, null, ymino, null, ymaxo)
// new GuiIcons.SelectedArmorOverlay(x + 28 + selcolour * 8, y, null, null, Predef$.MODULE$.double2Double(ymino), null, Predef$.MODULE$.double2Double(ymaxo));
// }
// MuseRenderer.drawString(spec.displayName, textstartx + 4, y)
//
//
//
//
//
// double textstartx = BoxesRunTime.unboxToDouble(Predef$.MODULE$.intArrayOps(this.colourframe.colours()).$div$colon((Object)BoxesRunTime.boxToDouble(x + 28), (Function2)new PartManipSubFrame$$anonfun.PartManipSubFrame$$anonfun$1(this, y, ymino, ymaxo)));
//
//
//
//
// if (selcomp > 0) {
// new GuiIcons.SelectedArmorOverlay(x + 28 + selcolour * 8, y, null, null, ymino, null, ymaxo);
// else {
// final BoxedUnit unit = BoxedUnit.UNIT;
// }
// MuseRenderer.drawString(spec.displayName(), textstartx + 4, y);
// }
//
//
//
//
//
// public void drawOpenArrow(double min, double max) {
// public void drawOpenArrow(final double min, final double max) {
// RenderState.texturelessOn();
// Colour.LIGHTBLUE.doGL();
// GL11.glBegin(4);
// if (this.open) {
// GL11.glVertex2d(this.border.left() + 3, MuseMathUtils.clampDouble(this.border.top() + 3, min, max));
// GL11.glVertex2d(this.border.left() + 5, MuseMathUtils.clampDouble(this.border.top() + 7, min, max));
// GL11.glVertex2d(this.border.left() + 7, MuseMathUtils.clampDouble(this.border.top() + 3, min, max));
// if (this.open()) {
// GL11.glVertex2d(this.border().left() + 3, MuseMathUtils.clampDouble(this.border().top() + 3, min, max));
// GL11.glVertex2d(this.border().left() + 5, MuseMathUtils.clampDouble(this.border().top() + 7, min, max));
// GL11.glVertex2d(this.border().left() + 7, MuseMathUtils.clampDouble(this.border().top() + 3, min, max));
// }
// else {
// GL11.glVertex2d(this.border.left() + 3, MuseMathUtils.clampDouble(this.border.top() + 3, min, max));
// GL11.glVertex2d(this.border.left() + 3, MuseMathUtils.clampDouble(this.border.top() + 7, min, max));
// GL11.glVertex2d(this.border.left() + 7, MuseMathUtils.clampDouble(this.border.top() + 5, min, max));
// GL11.glVertex2d(this.border().left() + 3, MuseMathUtils.clampDouble(this.border().top() + 3, min, max));
// GL11.glVertex2d(this.border().left() + 3, MuseMathUtils.clampDouble(this.border().top() + 7, min, max));
// GL11.glVertex2d(this.border().left() + 7, MuseMathUtils.clampDouble(this.border().top() + 5, min, max));
// }
// GL11.glEnd();
// Colour.WHITE.doGL();
@ -282,70 +628,66 @@
// }
//
// public MuseRect getBorder() {
// if (this.open) {
// this.border.setHeight(9 + 9 * this.specs.length);
// if (this.open()) {
// this.border().setHeight(9 + 9 * Predef$.MODULE$.refArrayOps((Object[])this.specs()).size());
// }
// else {
// this.border.setHeight(9.0);
// this.border().setHeight(9.0);
// }
// return this.border;
// return this.border();
// }
//
// public boolean tryMouseClick(double x, double y) {
// public boolean tryMouseClick(final double x, final double y) {
// boolean b;
// if (x < this.border.left() || x > this.border.right() || y < this.border.top() || y > this.border.bottom()) {
// if (x < this.border().left() || x > this.border().right() || y < this.border().top() || y > this.border().bottom()) {
// b = false;
// }
// else if (x > this.border.left() + 2 && x < this.border.left() + 8 && y > this.border.top() + 2 && y < this.border.top() + 8) {
// this.open =(!this.open);
// else if (x > this.border().left() + 2 && x < this.border().left() + 8 && y > this.border().top() + 2 && y < this.border().top() + 8) {
// this.open_$eq(!this.open());
// this.getBorder();
// b = true;
// }
// else if (x < this.border.left() + 24 && y > this.border.top() + 8) {
// int lineNumber = (int)((y - this.border.top() - 8) / 8);
// int columnNumber = (int)((x - this.border.left()) / 8);
//
//
// //TODO: check this, it seems backwards; ie min should be 0 and max should be size -1
//// val spec = specs(lineNumber.min(specs.size - 1).max(0))
// ModelPartSpec spec = specs[Math.max(Math.min(lineNumber, specs.length - 1), 0)];
// MuseLogger.logDebug("Line " + lineNumber + " Column " + columnNumber);
// else if (x < this.border().left() + 24 && y > this.border().top() + 8) {
// final int lineNumber = (int)((y - this.border().top() - 8) / 8);
// final int columnNumber = (int)((x - this.border().left()) / 8);
// final ModelPartSpec spec = specs[Math.max(Math.min(lineNumber, specs.length - 1), 0)];
// MuseLogger.logDebug(new StringBuilder().append((Object)"Line ").append((Object)BoxesRunTime.boxToInteger(lineNumber)).append((Object)" Column ").append((Object)BoxesRunTime.boxToInteger(columnNumber)).toString());
// switch (columnNumber) {
// default: {
// b = false;
// break;
// }
// case 2: {
// String tagname = ModelRegistry.makeName(spec);
// EntityClientPlayerMP player = Minecraft.getMinecraft().thePlayer;
// NBTTagCompound tagdata = this.getOrMakeSpecTag(spec);
// final String tagname = ModelRegistry$.MODULE$.makeName(spec);
// final EntityClientPlayerMP player = Minecraft.getMinecraft().thePlayer;
// final NBTTagCompound tagdata = this.getOrMakeSpecTag(spec);
// spec.setGlow(tagdata, true);
// if (player.worldObj.isRemote) {
// PacketSender.sendToServer(new MusePacketCosmeticInfo(player, this.getSelectedItem().inventorySlot, tagname, tagdata).getPacket131());
// PacketSender.sendToServer(new MusePacketCosmeticInfo((EntityPlayer)player, this.getSelectedItem().inventorySlot, tagname, tagdata).getPacket131());
// }
// this.updateItems();
// b = true;
// break;
// }
// case 1: {
// String tagname2 = ModelRegistry.makeName(spec);
// EntityClientPlayerMP player2 = Minecraft.getMinecraft().thePlayer;
// NBTTagCompound tagdata2 = this.getOrMakeSpecTag(spec);
// final String tagname2 = ModelRegistry$.MODULE$.makeName(spec);
// final EntityClientPlayerMP player2 = Minecraft.getMinecraft().thePlayer;
// final NBTTagCompound tagdata2 = this.getOrMakeSpecTag(spec);
// spec.setGlow(tagdata2, false);
// if (player2.worldObj.isRemote) {
// PacketSender.sendToServer(new MusePacketCosmeticInfo(player2, this.getSelectedItem().inventorySlot, tagname2, tagdata2).getPacket131());
// PacketSender.sendToServer(new MusePacketCosmeticInfo((EntityPlayer)player2, this.getSelectedItem().inventorySlot, tagname2, tagdata2).getPacket131());
// }
// this.updateItems();
// b = true;
// break;
// }
// case 0: {
// NBTTagCompound renderTag = this.getRenderTag();
// String tagname3 = ModelRegistry.makeName(spec);
// EntityClientPlayerMP player3 = Minecraft.getMinecraft().thePlayer;
// renderTag.removeTag(ModelRegistry.makeName(spec));
// final NBTTagCompound renderTag = this.getRenderTag();
// final String tagname3 = ModelRegistry$.MODULE$.makeName(spec);
// final EntityClientPlayerMP player3 = Minecraft.getMinecraft().thePlayer;
// renderTag.removeTag(ModelRegistry$.MODULE$.makeName(spec));
// if (player3.worldObj.isRemote) {
// PacketSender.sendToServer(new MusePacketCosmeticInfo(player3, this.getSelectedItem().inventorySlot, tagname3, new NBTTagCompound()).getPacket131());
// PacketSender.sendToServer(new MusePacketCosmeticInfo((EntityPlayer)player3, this.getSelectedItem().inventorySlot, tagname3, new NBTTagCompound()).getPacket131());
// }
// this.updateItems();
// b = true;
@ -353,13 +695,13 @@
// }
// }
// }
// else if (x > this.border.left() + 28 && x < this.border.left() + 28 + Predef$.MODULE$.intArrayOps(this.colourframe.colours()).size() * 8) {
// int lineNumber2 = (int)((y - this.border.top() - 8) / 8);
// int columnNumber2 = (int)((x - this.border.left() - 28) / 8);
// ModelPartSpec spec2 = specs[Math.max(Math.min(lineNumber2, specs.length - 1), 0)];
// String tagname4 = ModelRegistry.makeName(spec2);
// EntityClientPlayerMP player4 = Minecraft.getMinecraft().thePlayer;
// NBTTagCompound tagdata3 = this.getOrMakeSpecTag(spec2);
// else if (x > this.border().left() + 28 && x < this.border().left() + 28 + Predef$.MODULE$.intArrayOps(this.colourframe().colours()).size() * 8) {
// final int lineNumber2 = (int)((y - this.border().top() - 8) / 8);
// final int columnNumber2 = (int)((x - this.border().left() - 28) / 8);
// final ModelPartSpec spec2 = specs[Math.max(Math.min(lineNumber2, specs.length - 1), 0)];
// final String tagname4 = ModelRegistry$.MODULE$.makeName(spec2);
// final EntityClientPlayerMP player4 = Minecraft.getMinecraft().thePlayer;
// final NBTTagCompound tagdata3 = this.getOrMakeSpecTag(spec2);
// spec2.setColourIndex(tagdata3, columnNumber2);
// if (player4.worldObj.isRemote) {
// PacketSender.sendToServer(new MusePacketCosmeticInfo((EntityPlayer)player4, this.getSelectedItem().inventorySlot, tagname4, tagdata3).getPacket131());
@ -371,4 +713,6 @@
// }
// return b;
// }
//
//
//}

View file

@ -0,0 +1,72 @@
//package net.machinemuse.powersuits.client.render.modelspec;
//
//import net.minecraft.client.model.ModelBiped;
//import net.minecraft.client.model.ModelRenderer;
//
///**
// * Ported to Java by lehjr on 11/5/16.
// */
//public class ArmorMorphTarget {
// public interface MorphTarget {
// String name = null;
// float degrad = (float) (180F / Math.PI);
//
// ModelRenderer apply(ModelBiped m);
// }
//
// public static class Cloak implements MorphTarget {
// String name = "Cloak";
//
// public ModelRenderer apply(ModelBiped m) {
// return m.bipedCloak;
// }
// }
//
// public static class Head implements MorphTarget {
// String name = "Head";
//
// public ModelRenderer apply(ModelBiped m) {
// return m.bipedHead;
// }
// }
//
// public static class Body implements MorphTarget {
// String name = "Body";
//
// public ModelRenderer apply(ModelBiped m) {
// return m.bipedBody;
// }
// }
//
// public static class RightArm implements MorphTarget {
// String name = "RightArm";
//
// public ModelRenderer apply(ModelBiped m) {
// return m.bipedRightArm;
// }
// }
//
// public static class LeftArm implements MorphTarget {
// String name = "LeftArm";
//
// public ModelRenderer apply(ModelBiped m) {
// return m.bipedLeftArm;
// }
// }
//
// public static class RightLeg implements MorphTarget {
// String name = "RightLeg";
//
// public ModelRenderer apply(ModelBiped m) {
// return m.bipedRightLeg;
// }
// }
//
// public static class LeftLeg implements MorphTarget {
// String name = "LeftLeg";
//
// public ModelRenderer apply(ModelBiped m) {
// return m.bipedLeftLeg;
// }
// }
//}

View file

@ -6,13 +6,14 @@ import net.machinemuse.numina.render.MuseTextureUtils
import net.machinemuse.powersuits.client.render.item.ArmorModel
import net.machinemuse.utils.render.Render
import net.minecraft.client.model.{ModelBase, ModelRenderer}
import net.minecraft.client.renderer.{OpenGlHelper, RenderHelper}
import net.minecraft.nbt.NBTTagCompound
import org.lwjgl.opengl.GL11._
import org.lwjgl.opengl.GL11
/**
* Author: MachineMuse (Claire Semple)
* Created: 4:16 AM, 29/04/13
*/
* Author: MachineMuse (Claire Semple)
* Created: 4:16 AM, 29/04/13
*/
class RenderPart(base: ModelBase, val parent: ModelRenderer) extends ModelRenderer(base) {
override def render(scale: Float) {
@ -20,54 +21,61 @@ class RenderPart(base: ModelBase, val parent: ModelRenderer) extends ModelRender
import scala.collection.JavaConverters._
val colours = renderSpec.getIntArray("colours")
for {
/* rember null checks when porting this section to Java */
for (nbt <- NBTTagAccessor.getValues(renderSpec).asScala) {
val part = ModelRegistry.getPart(nbt)
if (part.isDefined) {
if (part.get.slot == ArmorModel.instance.visibleSection && part.get.morph.apply(ArmorModel.instance) == parent) {
var prevBrightX: Float = OpenGlHelper.lastBrightnessX;
var prevBrightY: Float = OpenGlHelper.lastBrightnessY;
// GLOW stuff on
if (part.get.getGlow(nbt)) {
GL11.glPushAttrib(GL11.GL_LIGHTING_BIT)
RenderHelper.disableStandardItemLighting()
OpenGlHelper.setLightmapTextureCoords(OpenGlHelper.lightmapTexUnit, 240.0F, 240.0F)
}
GL11.glPushMatrix()
GL11.glScaled(scale, scale, scale)
MuseTextureUtils.bindTexture(part.get.getTexture(nbt))
applyTransform()
val ix = part.get.getColourIndex(nbt)
if (ix < colours.size && ix >= 0) {
Colour.doGLByInt(colours(ix))
}
part.get.modelSpec.applyOffsetAndRotation() // not yet implemented
part.get.modelSpec.model.renderPart(part.get.partName)
Colour.WHITE.doGL()
GL11.glPopMatrix()
nbt <- NBTTagAccessor.getValues(renderSpec).asScala
part <- ModelRegistry.getPart(nbt)
if part.slot == ArmorModel.instance.visibleSection
if part.morph.apply(ArmorModel.instance) == parent
} {
withMaybeGlow(part, nbt) {
Render.withPushedMatrix {
Render {
glScaled(scale, scale, scale)
MuseTextureUtils.bindTexture(part.getTexture(nbt))
applyTransform()
val ix = part.getColourIndex(nbt)
if (ix < colours.size && ix >= 0) {
Colour.doGLByInt(colours(ix))
}
part.modelSpec.applyOffsetAndRotation() // not yet implemented
part.modelSpec.model.renderPart(part.partName)
Colour.WHITE.doGL()
// GLOW stuff off
if (part.get.getGlow(nbt)) {
OpenGlHelper.setLightmapTextureCoords(OpenGlHelper.lightmapTexUnit, prevBrightX, prevBrightY)
GL11.glPopAttrib()
}
}
}.run()
}
}
}
val degrad = 180F / Math.PI.asInstanceOf[Float]
def withMaybeGlow[A](part: ModelPartSpec, nbt: NBTTagCompound)(r: Render[A]): Render[A] = {
if (part.getGlow(nbt)) {
Render withGlow r
} else {
r
}
}
// def withMaybeGlow[A](part: ModelPartSpec, nbt: NBTTagCompound)(r: Render[A]): Render[A] = {
// if (part.getGlow(nbt)) {
// Render withGlow r
// } else {
// r
// }
// }
def applyTransform() {
// glTranslatef(rotationPointX, rotationPointY, rotationPointZ)
// glRotatef(rotateAngleZ * degrad, 0.0F, 0.0F, 1.0F)
// glRotatef(rotateAngleY * degrad, 0.0F, 1.0F, 0.0F)
// glRotatef(rotateAngleX * degrad, 1.0F, 0.0F, 0.0F)
glRotatef(180, 1.0F, 0.0F, 0.0F)
GL11.glRotatef(180, 1.0F, 0.0F, 0.0F)
glTranslated(offsetX, offsetY - 26, offsetZ)
GL11.glTranslated(offsetX, offsetY - 26, offsetZ)
}
}

View file

@ -1,11 +0,0 @@
//package net.machinemuse.powersuits.item
//
//import net.minecraft.item.ItemArmor
//
///**
// * Author: MachineMuse (Claire Semple)
// * Created: 8:09 PM, 4/23/13
// */
//trait CustomRenderArmorBase extends ItemArmor with IModularItemBase {
//
//}

View file

@ -3,7 +3,7 @@ package net.machinemuse.powersuits.network.packets
import java.io.DataInputStream
import net.machinemuse.api.electricity.IModularItem
import net.machinemuse.numina.network.{IMusePackager, MusePacket}
import net.machinemuse.numina.network.{IMusePackager, MusePackager, MusePacket}
import net.machinemuse.utils.MuseItemUtils
import net.minecraft.entity.player.{EntityPlayer, EntityPlayerMP}
import net.minecraft.nbt.NBTTagCompound
@ -13,8 +13,8 @@ import net.minecraft.nbt.NBTTagCompound
* Author: MachineMuse (Claire Semple)
* Created: 12:28 PM, 5/6/13
*/
object MusePacketColourInfo extends IMusePackager {
def read(d: DataInputStream, p: EntityPlayer) = {
object MusePacketColourInfo extends MusePackager {
override def read(d: DataInputStream, p: EntityPlayer) = {
val itemSlot = readInt(d)
val tagData = readIntArray(d)
new MusePacketColourInfo(p, itemSlot, tagData)

View file

@ -4,7 +4,7 @@ import java.io.DataInputStream
import net.machinemuse.api.electricity.IModularItem
import net.machinemuse.numina.general.MuseLogger
import net.machinemuse.numina.network.{IMusePackager, MusePacket}
import net.machinemuse.numina.network.{IMusePackager, MusePackager, MusePacket}
import net.machinemuse.utils.MuseItemUtils
import net.minecraft.entity.player.{EntityPlayer, EntityPlayerMP}
import net.minecraft.nbt.NBTTagCompound
@ -13,8 +13,8 @@ import net.minecraft.nbt.NBTTagCompound
* Author: MachineMuse (Claire Semple)
* Created: 10:16 AM, 01/05/13
*/
object MusePacketCosmeticInfo extends IMusePackager {
def read(d: DataInputStream, p: EntityPlayer) = {
object MusePacketCosmeticInfo extends MusePackager {
override def read(d: DataInputStream, p: EntityPlayer) = {
val itemSlot = readInt(d)
val tagName = readString(d)
val tagData = readNBTTagCompound(d)

View file

@ -7,7 +7,7 @@ import java.io.DataInputStream
import java.util.{ArrayList, List}
import net.machinemuse.api.{IPowerModule, ModuleManager}
import net.machinemuse.numina.network.{IMusePackager, MusePacket, PacketSender}
import net.machinemuse.numina.network.{IMusePackager, MusePackager, MusePacket, PacketSender}
import net.machinemuse.utils.{ElectricItemUtils, MuseItemUtils}
import net.minecraft.entity.player.{EntityPlayer, EntityPlayerMP, InventoryPlayer}
import net.minecraft.item.ItemStack
@ -21,8 +21,8 @@ import net.minecraft.util.ChatComponentText
* Created: 10:16 AM, 01/05/13
*/
object MusePacketInstallModuleRequest extends IMusePackager {
def read(d: DataInputStream, p: EntityPlayer) = {
object MusePacketInstallModuleRequest extends MusePackager {
override def read(d: DataInputStream, p: EntityPlayer) = {
val itemSlot = readInt(d)
val moduleName = readString(d)
new MusePacketInstallModuleRequest(p, itemSlot, moduleName)

View file

@ -7,7 +7,7 @@ import java.io.DataInputStream
import cpw.mods.fml.relauncher.{Side, SideOnly}
import net.machinemuse.general.gui.MuseGui
import net.machinemuse.numina.network.{IMusePackager, MusePacket}
import net.machinemuse.numina.network.{IMusePackager, MusePackager, MusePacket}
import net.machinemuse.numina.scala.OptionCast
import net.minecraft.client.Minecraft
import net.minecraft.client.entity.EntityClientPlayerMP
@ -20,8 +20,8 @@ import net.minecraft.item.ItemStack
* Author: MachineMuse (Claire Semple)
* Created: 12:28 PM, 5/6/13
*/
object MusePacketInventoryRefresh extends IMusePackager {
def read(d: DataInputStream, p: EntityPlayer) = {
object MusePacketInventoryRefresh extends MusePackager {
override def read(d: DataInputStream, p: EntityPlayer) = {
val itemSlot = readInt(d)
val stack = readItemStack(d)
new MusePacketInventoryRefresh(p, itemSlot, stack)

View file

@ -3,7 +3,7 @@ package net.machinemuse.powersuits.network.packets
import java.io.DataInputStream
import cpw.mods.fml.relauncher.{Side, SideOnly}
import net.machinemuse.numina.network.{IMusePackager, MusePacket}
import net.machinemuse.numina.network.{IMusePackager, MusePackager, MusePacket}
import net.machinemuse.powersuits.entity.EntityPlasmaBolt
import net.minecraft.client.Minecraft
import net.minecraft.client.entity.EntityClientPlayerMP
@ -13,8 +13,8 @@ import net.minecraft.entity.player.EntityPlayer
* Author: MachineMuse (Claire Semple)
* Created: 12:28 PM, 5/6/13
*/
object MusePacketPlasmaBolt extends IMusePackager {
def read(d: DataInputStream, p: EntityPlayer) = {
object MusePacketPlasmaBolt extends MusePackager {
override def read(d: DataInputStream, p: EntityPlayer) = {
val entityID = readInt(d)
val size = readDouble(d)
new MusePacketPlasmaBolt(p, entityID, size)

View file

@ -2,7 +2,7 @@ package net.machinemuse.powersuits.network.packets
import java.io.DataInputStream
import net.machinemuse.numina.network.{IMusePackager, MusePacket, PacketSender}
import net.machinemuse.numina.network.{IMusePackager, MusePackager, MusePacket, PacketSender}
import net.machinemuse.powersuits.control.PlayerInputMap
import net.minecraft.entity.player.{EntityPlayer, EntityPlayerMP}
@ -11,8 +11,8 @@ import net.minecraft.entity.player.{EntityPlayer, EntityPlayerMP}
* Author: MachineMuse (Claire Semple)
* Created: 12:28 PM, 5/6/13
*/
object MusePacketPlayerUpdate extends IMusePackager {
def read(d: DataInputStream, p: EntityPlayer) = {
object MusePacketPlayerUpdate extends MusePackager {
override def read(d: DataInputStream, p: EntityPlayer) = {
val username = readString(d)
val inputMap: PlayerInputMap = PlayerInputMap.getInputMapFor(username)
inputMap.readFromStream(d)

View file

@ -4,7 +4,7 @@ import java.io.DataInputStream
import cpw.mods.fml.relauncher.{Side, SideOnly}
import net.machinemuse.api.ModuleManager
import net.machinemuse.numina.network.{IMusePackager, MusePacket}
import net.machinemuse.numina.network.{IMusePackager, MusePackager, MusePacket}
import net.machinemuse.powersuits.powermodule.{PowerModuleBase, PropertyModifierFlatAdditive, PropertyModifierLinearAdditive}
import net.minecraft.client.entity.EntityClientPlayerMP
import net.minecraft.entity.player.EntityPlayer
@ -13,8 +13,8 @@ import net.minecraft.entity.player.EntityPlayer
* Author: MachineMuse (Claire Semple)
* Created: 7:23 PM, 12/05/13
*/
object MusePacketPropertyModifierConfig extends IMusePackager {
def read(d: DataInputStream, p: EntityPlayer) = {
object MusePacketPropertyModifierConfig extends MusePackager {
override def read(d: DataInputStream, p: EntityPlayer) = {
new MusePacketPropertyModifierConfig(p, d)
}
}

View file

@ -7,7 +7,7 @@ import java.io.DataInputStream
import java.util.{HashSet, List}
import net.machinemuse.api.{IPowerModule, ModuleManager}
import net.machinemuse.numina.network.{IMusePackager, MusePacket, PacketSender}
import net.machinemuse.numina.network.{IMusePackager, MusePackager, MusePacket, PacketSender}
import net.machinemuse.powersuits.common.Config
import net.machinemuse.utils.MuseItemUtils
import net.minecraft.entity.player.{EntityPlayer, EntityPlayerMP, InventoryPlayer}
@ -21,8 +21,8 @@ import net.minecraft.item.ItemStack
* Author: MachineMuse (Claire Semple)
* Created: 12:28 PM, 5/6/13
*/
object MusePacketSalvageModuleRequest extends IMusePackager {
def read(d: DataInputStream, p: EntityPlayer) = {
object MusePacketSalvageModuleRequest extends MusePackager {
override def read(d: DataInputStream, p: EntityPlayer) = {
val itemSlot = readInt(d)
val moduleName = readString(d)

View file

@ -2,7 +2,7 @@ package net.machinemuse.powersuits.network.packets
import java.io.DataInputStream
import net.machinemuse.numina.network.{IMusePackager, MusePacket}
import net.machinemuse.numina.network.{IMusePackager, MusePackager, MusePacket}
import net.machinemuse.utils.MuseItemUtils
import net.minecraft.entity.player.{EntityPlayer, EntityPlayerMP}
@ -11,8 +11,8 @@ import net.minecraft.entity.player.{EntityPlayer, EntityPlayerMP}
* Author: MachineMuse (Claire Semple)
* Created: 12:28 PM, 5/6/13
*/
object MusePacketToggleRequest extends IMusePackager {
def read(d: DataInputStream, p: EntityPlayer) = {
object MusePacketToggleRequest extends MusePackager {
override def read(d: DataInputStream, p: EntityPlayer) = {
val module = readString(d)
val value = readBoolean(d)

View file

@ -7,7 +7,7 @@ import java.io.DataInputStream
import net.machinemuse.api.ModuleManager
import net.machinemuse.numina.general.MuseMathUtils
import net.machinemuse.numina.network.{IMusePackager, MusePacket}
import net.machinemuse.numina.network.{IMusePackager, MusePackager, MusePacket}
import net.machinemuse.utils.MuseItemUtils
import net.minecraft.entity.player.{EntityPlayer, EntityPlayerMP}
import net.minecraft.nbt.NBTTagCompound
@ -20,8 +20,8 @@ import net.minecraft.nbt.NBTTagCompound
* Author: MachineMuse (Claire Semple)
* Created: 12:28 PM, 5/6/13
*/
object MusePacketTweakRequest extends IMusePackager {
def read(d: DataInputStream, p: EntityPlayer) = {
object MusePacketTweakRequest extends MusePackager {
override def read(d: DataInputStream, p: EntityPlayer) = {
val itemSlot = readInt(d)
val moduleName = readString(d)
val tweakName = readString(d)