diff --git a/src/main/java/noppes/npcs/client/gui/model/GuiModelBody.java b/src/main/java/noppes/npcs/client/gui/model/GuiModelBody.java index ff96f74b0..89a5e1f96 100644 --- a/src/main/java/noppes/npcs/client/gui/model/GuiModelBody.java +++ b/src/main/java/noppes/npcs/client/gui/model/GuiModelBody.java @@ -12,7 +12,7 @@ public class GuiModelBody extends GuiModelInterface{ private GuiScreen parent; private final String[] arrBody = new String[]{"gui.no","gui.yes"}; - private final String[] arrBodywear = new String[]{"gui.no","gui.yes"}; + private final String[] arrBodywear = new String[]{"gui.no","gui.yes","Solid"}; private final String[] arrWing = new String[]{"gui.no","Player","Type1","Type2","Type3","Type4","Type5","Type6","Type7","Type8","Type9", "Type10","Type11","Type12","Type13"}; private final String[] arrBreasts = new String[]{"gui.no","Type1","Type2","Type3"}; diff --git a/src/main/java/noppes/npcs/client/model/ModelMPM.java b/src/main/java/noppes/npcs/client/model/ModelMPM.java index 58f35c2bb..ac788cd81 100644 --- a/src/main/java/noppes/npcs/client/model/ModelMPM.java +++ b/src/main/java/noppes/npcs/client/model/ModelMPM.java @@ -51,9 +51,9 @@ public class ModelMPM extends ModelNPCMale{ private ModelLegs legs; private ModelScaleRenderer headwear; - // private ModelScaleRenderer bodywear; - // private ModelScaleRenderer armwear; - // private ModelScaleRenderer legwear; + private ModelScaleRenderer bodywear; + private ModelScaleRenderer armwear; + private ModelScaleRenderer legwear; private ModelTail tail; public ModelBase entityModel; @@ -160,7 +160,7 @@ public class ModelMPM extends ModelNPCMale{ headwear = new ModelHeadwear(this); legs = new ModelLegs(this, (ModelScaleRenderer)bipedRightLeg, (ModelScaleRenderer)bipedLeftLeg, 64, 64); - // bodywear = new ModelBodywear(this); + bodywear = new ModelBodywear(this); this.bipedBody.addChild(breasts = new ModelBreasts(this, 64, 64)); if(!isArmor){ @@ -539,7 +539,24 @@ public class ModelMPM extends ModelNPCMale{ ((ModelScaleRenderer)this.bipedBody).isHidden = entity.modelData.hideBody == 1; // Hide Bodywear - ((ModelScaleRenderer)this.bipedBodywear).isHidden = entity.modelData.bodywear != 1; + ((ModelScaleRenderer)this.bipedBodywear).isHidden = entity.modelData.bodywear == 0; + + if(bipedBodywear.showModel && !bipedBodywear.isHidden){ + if(entity.modelData.bodywear == 1 || isArmor){ + ((ModelScaleRenderer)this.bipedBodywear).setConfig(entity.modelData.body,x,y,z); + ((ModelScaleRenderer)this.bipedBodywear).render(f); + } + else if(entity.modelData.bodywear == 2){ + this.bodywear.rotateAngleX = bipedBodywear.rotateAngleX; + this.bodywear.rotateAngleY = bipedBodywear.rotateAngleY; + this.bodywear.rotateAngleZ = bipedBodywear.rotateAngleZ; + this.bodywear.rotationPointX = bipedBodywear.rotationPointX; + this.bodywear.rotationPointY = bipedBodywear.rotationPointY; + this.bodywear.rotationPointZ = bipedBodywear.rotationPointZ; + this.bodywear.setConfig(entity.modelData.body,x,y,z); + this.bodywear.render(f); + } + } ((ModelScaleRenderer)this.bipedBody).setConfig(body,x,y,z); ((ModelScaleRenderer)this.bipedBody).render(f); diff --git a/src/main/java/noppes/npcs/client/model/part/ModelBodywear.java b/src/main/java/noppes/npcs/client/model/part/ModelBodywear.java index 21297542f..b11a90d20 100644 --- a/src/main/java/noppes/npcs/client/model/part/ModelBodywear.java +++ b/src/main/java/noppes/npcs/client/model/part/ModelBodywear.java @@ -10,54 +10,47 @@ public class ModelBodywear extends ModelScaleRenderer{ public ModelBodywear(ModelBase base) { super(base); - float scaler = 0.81f; - float thick = 0.65f; - - float x = -0.10f; - float y = 12.76f; - float z = -0.5f; - - float z1 = 0.27f; + float thick = 0.50f; Model2DRenderer front = new Model2DRenderer(base, 20, 36, 8, 12, 64, 64); - front.setRotationPoint(-4.588f, 0 + y, -2.302f + z); - front.setScale(scaler); + front.setRotationPoint(-4.53f, 12.535f, -2.52f); + front.setScale(0.85f,0.8175f); front.setThickness(thick); setRotation(front, 0, 0, 0); this.addChild(front); Model2DRenderer back = new Model2DRenderer(base, 32, 36, 8, 12, 64, 64); - back.setRotationPoint(4.588f, 0 + y, 2.302f); - back.setScale(scaler); + back.setRotationPoint(4.53f, 12.535f, 2.52f); + back.setScale(0.85f,0.8175f); back.setThickness(thick); setRotation(back, 0, (float)(Math.PI), 0); this.addChild(back); Model2DRenderer right = new Model2DRenderer(base, 28, 36, 4, 12, 64, 64); - right.setRotationPoint(3.9425f, 0 + y, 2.29695f); - right.setScale(scaler); + right.setRotationPoint(4.03f, 12.55f, 2.55f); + right.setScale(0.96f,0.82f); right.setThickness(thick); setRotation(right, 0, (float)(Math.PI/2f), 0); this.addChild(right); Model2DRenderer left = new Model2DRenderer(base, 16, 36, 4, 12, 64, 64); - left.setRotationPoint(-3.9425f, 0 + y, -2.29695f + z); - left.setScale(scaler); + left.setRotationPoint(-4.03f, 12.55f, -2.55f); + left.setScale(0.96f,0.82f); left.setThickness(thick); setRotation(left, 0, (float)(Math.PI/-2f), 0); this.addChild(left); Model2DRenderer top = new Model2DRenderer(base, 20, 32, 8, 4, 64, 64); - top.setRotationPoint(-4.588f, -13.0f + y, -2.29695f); - top.setScale(scaler/3); + top.setRotationPoint(-4.5f, -0.6f, -2.525f); + top.setScale(0.2815f,0.315f); top.setThickness(thick); setRotation(top, (float)(Math.PI / -2), 0, 0); this.addChild(top); Model2DRenderer bottom = new Model2DRenderer(base, 28, 32, 8, 4, 64, 64); - bottom.setRotationPoint(-4.588f, -0.65f + y, -2.29695f); - bottom.setScale(scaler/3); + bottom.setRotationPoint(-4.5f, 12.11f, -2.525f); + bottom.setScale(0.2815f,0.315f); bottom.setThickness(thick); setRotation(bottom, (float)(Math.PI / -2), 0, 0); this.addChild(bottom); diff --git a/src/main/resources/assets/customnpcs/textures/entity/64-Textures/newskins/Skin_Template.png b/src/main/resources/assets/customnpcs/textures/entity/64-Textures/newskins/Skin_Template.png new file mode 100644 index 000000000..0d6751f52 Binary files /dev/null and b/src/main/resources/assets/customnpcs/textures/entity/64-Textures/newskins/Skin_Template.png differ