diff --git a/src/main/java/noppes/npcs/client/model/blocks/couch/ModelCouch.java b/src/main/java/noppes/npcs/client/model/blocks/couch/ModelCouch.java deleted file mode 100644 index a6988ab05..000000000 --- a/src/main/java/noppes/npcs/client/model/blocks/couch/ModelCouch.java +++ /dev/null @@ -1,43 +0,0 @@ -package noppes.npcs.client.model.blocks.couch; - -import net.minecraft.client.model.ModelBase; -import net.minecraft.client.model.ModelBox; -import net.minecraft.client.model.ModelRenderer; -import net.minecraft.entity.Entity; - -public class ModelCouch extends ModelBase { - public final ModelRenderer CouchBack; - public final ModelRenderer Cussion; - - public ModelCouch() { - textureWidth = 64; - textureHeight = 64; - - CouchBack = new ModelRenderer(this); - CouchBack.setRotationPoint(0.0F, 24.0F, 0.0F); - CouchBack.cubeList.add(new ModelBox(CouchBack, 0, 0, -8.0F, -1.0F, -8.0F, 2, 1, 2, 0.0F)); - CouchBack.cubeList.add(new ModelBox(CouchBack, 0, 0, 6.0F, -1.0F, -8.0F, 2, 1, 2, 0.0F)); - CouchBack.cubeList.add(new ModelBox(CouchBack, 0, 0, -8.0F, -1.0F, 6.0F, 2, 1, 2, 0.0F)); - CouchBack.cubeList.add(new ModelBox(CouchBack, 0, 0, 6.0F, -1.0F, 6.0F, 2, 1, 2, 0.0F)); - CouchBack.cubeList.add(new ModelBox(CouchBack, 0, 18, -8.0F, -2.0F, -8.0F, 16, 1, 15, 0.0F)); - CouchBack.cubeList.add(new ModelBox(CouchBack, 0, 46, -8.0F, -10.0F, 7.0F, 16, 9, 1, 0.0F)); - - Cussion = new ModelRenderer(this); - Cussion.setRotationPoint(0.0F, 24.0F, 0.0F); - Cussion.cubeList.add(new ModelBox(Cussion, 0, 0, -8.0F, -5.0F, -8.0F, 16, 3, 15, 0.0F)); - Cussion.cubeList.add(new ModelBox(Cussion, 0, 34, -8.0F, -14.0F, 4.0F, 16, 9, 3, 0.0F)); - Cussion.cubeList.add(new ModelBox(Cussion, 0, 56, -8.0F, -14.0F, 7.0F, 16, 4, 1, 0.0F)); - } - - @Override - public void render(Entity entity, float f, float f1, float f2, float f3, float f4, float f5) { - CouchBack.render(f5); - Cussion.render(f5); - } - - public void setRotationAngle(ModelRenderer modelRenderer, float x, float y, float z) { - modelRenderer.rotateAngleX = x; - modelRenderer.rotateAngleY = y; - modelRenderer.rotateAngleZ = z; - } -} diff --git a/src/main/java/noppes/npcs/client/model/blocks/couch/ModelCouchCorner.java b/src/main/java/noppes/npcs/client/model/blocks/couch/ModelCouchCorner.java index cd38b2005..7dc2bc3ee 100644 --- a/src/main/java/noppes/npcs/client/model/blocks/couch/ModelCouchCorner.java +++ b/src/main/java/noppes/npcs/client/model/blocks/couch/ModelCouchCorner.java @@ -6,59 +6,57 @@ import net.minecraft.client.model.ModelRenderer; import net.minecraft.entity.Entity; public class ModelCouchCorner extends ModelBase { - private final ModelRenderer CouchBack; - private final ModelRenderer cube_r1; - private final ModelRenderer Cussion; - private final ModelRenderer cube_r2; - private final ModelRenderer cube_r3; + public final ModelRenderer CouchBack; + public final ModelRenderer Cussion; - public ModelCouchCorner() { - textureWidth = 16; - textureHeight = 16; + private final ModelRenderer cube_r1; + private final ModelRenderer cube_r2; + private final ModelRenderer cube_r3; - CouchBack = new ModelRenderer(this); - CouchBack.setRotationPoint(0.0F, 24.0F, 0.0F); - CouchBack.cubeList.add(new ModelBox(CouchBack, 0, 0, 6.0F, -1.0F, -8.0F, 2, 1, 2, 0.0F)); - CouchBack.cubeList.add(new ModelBox(CouchBack, 0, 0, -8.0F, -1.0F, -8.0F, 2, 1, 2, 0.0F)); - CouchBack.cubeList.add(new ModelBox(CouchBack, 0, 0, 6.0F, -1.0F, 6.0F, 2, 1, 2, 0.0F)); - CouchBack.cubeList.add(new ModelBox(CouchBack, 0, 0, -8.0F, -1.0F, 6.0F, 2, 1, 2, 0.0F)); - CouchBack.cubeList.add(new ModelBox(CouchBack, -20, -13, -8.0F, -2.0F, -8.0F, 16, 1, 15, 0.0F)); - CouchBack.cubeList.add(new ModelBox(CouchBack, -6, 1, -8.0F, -10.0F, 7.0F, 16, 9, 1, 0.0F)); + public ModelCouchCorner(){ + textureWidth = 64; + textureHeight = 64; - cube_r1 = new ModelRenderer(this); - cube_r1.setRotationPoint(-7.5F, -6.5F, -1.0F); - CouchBack.addChild(cube_r1); - setRotationAngle(cube_r1, 0.0F, -1.5708F, 0.0F); - cube_r1.cubeList.add(new ModelBox(cube_r1, -6, 1, -7.0F, -3.5F, -0.5F, 15, 8, 1, 0.0F)); + CouchBack = new ModelRenderer(this); + CouchBack.setRotationPoint(0.0F, 24.0F, 0.0F); + CouchBack.cubeList.add(new ModelBox(CouchBack, 0, 35, -8.0F, -2.0F, -8.0F, 2, 2, 2, 0.0F)); + CouchBack.cubeList.add(new ModelBox(CouchBack, 0, 35, 6.0F, -2.0F, -8.0F, 2, 2, 2, 0.0F)); + CouchBack.cubeList.add(new ModelBox(CouchBack, 0, 35, -8.0F, -2.0F, 6.0F, 2, 2, 2, 0.0F)); + CouchBack.cubeList.add(new ModelBox(CouchBack, 0, 35, 6.0F, -2.0F, 6.0F, 2, 2, 2, 0.0F)); + CouchBack.cubeList.add(new ModelBox(CouchBack, 1, 35, -8.0F, -3.0F, -8.0F, 15, 1, 15, 0.0F)); + CouchBack.cubeList.add(new ModelBox(CouchBack, 0, 51, -8.0F, -12.0F, 7.0F, 16, 10, 1, 0.0F)); - Cussion = new ModelRenderer(this); - Cussion.setRotationPoint(0.0F, 24.0F, 0.0F); - Cussion.cubeList.add(new ModelBox(Cussion, -20, -13, -7.0F, -5.0F, -8.0F, 15, 3, 15, 0.0F)); - Cussion.cubeList.add(new ModelBox(Cussion, -8, -1, -7.0F, -14.0F, 4.0F, 15, 9, 3, 0.0F)); - Cussion.cubeList.add(new ModelBox(Cussion, -6, 1, -8.0F, -14.0F, 7.0F, 16, 4, 1, 0.0F)); + cube_r1 = new ModelRenderer(this); + cube_r1.setRotationPoint(7.5F, -7.5F, -1.0F); + CouchBack.addChild(cube_r1); + setRotationAngle(cube_r1, 0.0F, 1.5708F, 0.0F); + cube_r1.cubeList.add(new ModelBox(cube_r1, 1, 51, -8.0F, -4.5F, -0.5F, 15, 10, 1, 0.0F)); - cube_r2 = new ModelRenderer(this); - cube_r2.setRotationPoint(-7.5F, -12.0F, -1.0F); - Cussion.addChild(cube_r2); - setRotationAngle(cube_r2, 0.0F, -1.5708F, 0.0F); - cube_r2.cubeList.add(new ModelBox(cube_r2, -6, 1, -7.0F, -2.0F, -0.5F, 15, 4, 1, 0.0F)); + Cussion = new ModelRenderer(this); + Cussion.setRotationPoint(0.0F, 24.0F, 0.0F); + Cussion.cubeList.add(new ModelBox(Cussion, 1, 37, -8.0F, -7.0F, -8.0F, 15, 4, 15, 0.0F)); + Cussion.cubeList.add(new ModelBox(Cussion, 1, 20, -8.0F, -16.0F, 4.0F, 15, 9, 3, 0.0F)); + Cussion.cubeList.add(new ModelBox(Cussion, 0, 32, -8.0F, -16.0F, 7.0F, 16, 4, 1, 0.0F)); - cube_r3 = new ModelRenderer(this); - cube_r3.setRotationPoint(-5.5F, -9.5F, -3.5F); - Cussion.addChild(cube_r3); - setRotationAngle(cube_r3, 0.0F, -1.5708F, 0.0F); - cube_r3.cubeList.add(new ModelBox(cube_r3, -8, -1, -4.5F, -4.5F, -1.5F, 12, 9, 3, 0.0F)); - } + cube_r2 = new ModelRenderer(this); + cube_r2.setRotationPoint(7.5F, -14.0F, -1.0F); + Cussion.addChild(cube_r2); + setRotationAngle(cube_r2, 0.0F, 1.5708F, 0.0F); + cube_r2.cubeList.add(new ModelBox(cube_r2, 1, 32, -8.0F, -2.0F, -0.5F, 15, 4, 1, 0.0F)); - @Override - public void render(Entity entity, float f, float f1, float f2, float f3, float f4, float f5) { - CouchBack.render(f5); - Cussion.render(f5); - } + cube_r3 = new ModelRenderer(this); + cube_r3.setRotationPoint(5.5F, -11.5F, -3.5F); + Cussion.addChild(cube_r3); + setRotationAngle(cube_r3, 0.0F, 1.5708F, 0.0F); + cube_r3.cubeList.add(new ModelBox(cube_r3, 5, 20, -7.5F, -4.5F, -1.5F, 12, 9, 3, 0.0F)); + } - public void setRotationAngle(ModelRenderer modelRenderer, float x, float y, float z) { - modelRenderer.rotateAngleX = x; - modelRenderer.rotateAngleY = y; - modelRenderer.rotateAngleZ = z; - } + @Override + public void render(Entity entity, float f, float f1, float f2, float f3, float f4, float f5) {} + + public void setRotationAngle(ModelRenderer modelRenderer, float x, float y, float z) { + modelRenderer.rotateAngleX = x; + modelRenderer.rotateAngleY = y; + modelRenderer.rotateAngleZ = z; + } } diff --git a/src/main/java/noppes/npcs/client/model/blocks/couch/ModelCouchLeft.java b/src/main/java/noppes/npcs/client/model/blocks/couch/ModelCouchLeft.java index b20289eee..f3179daec 100644 --- a/src/main/java/noppes/npcs/client/model/blocks/couch/ModelCouchLeft.java +++ b/src/main/java/noppes/npcs/client/model/blocks/couch/ModelCouchLeft.java @@ -6,43 +6,43 @@ import net.minecraft.client.model.ModelRenderer; import net.minecraft.entity.Entity; public class ModelCouchLeft extends ModelBase { - private final ModelRenderer CouchBack; - private final ModelRenderer Cussion; + public final ModelRenderer CouchBack; + public final ModelRenderer Cussion; - public ModelCouchLeft() { - textureWidth = 64; - textureHeight = 64; + public ModelCouchLeft() { + textureWidth = 64; + textureHeight = 64; - CouchBack = new ModelRenderer(this); - CouchBack.setRotationPoint(0.0F, 24.0F, 0.0F); - CouchBack.cubeList.add(new ModelBox(CouchBack, 0, 0, -8.0F, -1.0F, -8.0F, 2, 1, 2, 0.0F)); - CouchBack.cubeList.add(new ModelBox(CouchBack, 0, 0, 6.0F, -1.0F, -8.0F, 2, 1, 2, 0.0F)); - CouchBack.cubeList.add(new ModelBox(CouchBack, 0, 0, -8.0F, -1.0F, 6.0F, 2, 1, 2, 0.0F)); - CouchBack.cubeList.add(new ModelBox(CouchBack, 0, 0, 6.0F, -1.0F, 6.0F, 2, 1, 2, 0.0F)); - CouchBack.cubeList.add(new ModelBox(CouchBack, 0, 18, -6.0F, -2.0F, -8.0F, 14, 1, 15, 0.0F)); - CouchBack.cubeList.add(new ModelBox(CouchBack, 4, 46, -6.0F, -10.0F, 7.0F, 14, 9, 1, 0.0F)); - CouchBack.cubeList.add(new ModelBox(CouchBack, 13, 14, -8.0F, -5.0F, -8.0F, 2, 4, 16, 0.0F)); - CouchBack.cubeList.add(new ModelBox(CouchBack, 1, 47, -8.0F, -10.0F, 4.0F, 2, 5, 4, 0.0F)); - CouchBack.cubeList.add(new ModelBox(CouchBack, 15, 19, -8.0F, -10.0F, -8.0F, 2, 2, 12, 0.0F)); - CouchBack.cubeList.add(new ModelBox(CouchBack, 44, 51, -7.0F, -8.0F, -6.0F, 0, 3, 10, 0.0F)); - CouchBack.cubeList.add(new ModelBox(CouchBack, 15, 18, -8.0F, -8.0F, -8.0F, 2, 3, 2, 0.0F)); + CouchBack = new ModelRenderer(this); + CouchBack.setRotationPoint(0.0F, 24.0F, 0.0F); + CouchBack.cubeList.add(new ModelBox(CouchBack, 0, 35, -8.0F, -2.0F, -8.0F, 2, 2, 2, 0.0F)); + CouchBack.cubeList.add(new ModelBox(CouchBack, 0, 35, 6.0F, -2.0F, -8.0F, 2, 2, 2, 0.0F)); + CouchBack.cubeList.add(new ModelBox(CouchBack, 0, 35, -8.0F, -2.0F, 6.0F, 2, 2, 2, 0.0F)); + CouchBack.cubeList.add(new ModelBox(CouchBack, 0, 35, 6.0F, -2.0F, 6.0F, 2, 2, 2, 0.0F)); + CouchBack.cubeList.add(new ModelBox(CouchBack, 0, 35, -6.0F, -3.0F, -8.0F, 14, 1, 15, 0.0F)); + CouchBack.cubeList.add(new ModelBox(CouchBack, 0, 51, -6.0F, -12.0F, 7.0F, 14, 10, 1, 0.0F)); + CouchBack.cubeList.add(new ModelBox(CouchBack, 0, 21, -8.0F, -6.0F, -6.0F, 2, 4, 10, 0.0F)); + CouchBack.cubeList.add(new ModelBox(CouchBack, 22, 48, -8.0F, -12.0F, 4.0F, 2, 10, 4, 0.0F)); + CouchBack.cubeList.add(new ModelBox(CouchBack, 24, 21, -8.0F, -12.0F, -8.0F, 2, 2, 12, 0.0F)); + CouchBack.cubeList.add(new ModelBox(CouchBack, 14, 17, -7.0F, -10.0F, -6.0F, 0, 4, 10, 0.0F)); + CouchBack.cubeList.add(new ModelBox(CouchBack, 40, 23, -8.0F, -10.0F, -8.0F, 2, 8, 2, 0.0F)); - Cussion = new ModelRenderer(this); - Cussion.setRotationPoint(0.0F, 24.0F, 0.0F); - Cussion.cubeList.add(new ModelBox(Cussion, 1, 0, -6.0F, -5.0F, -8.0F, 14, 3, 15, 0.0F)); - Cussion.cubeList.add(new ModelBox(Cussion, 1, 34, -6.0F, -14.0F, 4.0F, 14, 9, 3, 0.0F)); - Cussion.cubeList.add(new ModelBox(Cussion, 3, 56, -6.0F, -14.0F, 7.0F, 14, 4, 1, 0.0F)); - } + Cussion = new ModelRenderer(this); + Cussion.setRotationPoint(0.0F, 24.0F, 0.0F); + Cussion.cubeList.add(new ModelBox(Cussion, 2, 0, -6.0F, -7.0F, -8.0F, 14, 4, 15, 0.0F)); + Cussion.cubeList.add(new ModelBox(Cussion, 2, 19, -6.0F, -16.0F, 3.0F, 14, 9, 4, 0.0F)); + Cussion.cubeList.add(new ModelBox(Cussion, 2, 32, -6.0F, -16.0F, 7.0F, 14, 4, 1, 0.0F)); + } - @Override - public void render(Entity entity, float f, float f1, float f2, float f3, float f4, float f5) { - CouchBack.render(f5); - Cussion.render(f5); - } + @Override + public void render(Entity entity, float f, float f1, float f2, float f3, float f4, float f5) { + CouchBack.render(f5); + Cussion.render(f5); + } - public void setRotationAngle(ModelRenderer modelRenderer, float x, float y, float z) { - modelRenderer.rotateAngleX = x; - modelRenderer.rotateAngleY = y; - modelRenderer.rotateAngleZ = z; - } + public void setRotationAngle(ModelRenderer modelRenderer, float x, float y, float z) { + modelRenderer.rotateAngleX = x; + modelRenderer.rotateAngleY = y; + modelRenderer.rotateAngleZ = z; + } } diff --git a/src/main/java/noppes/npcs/client/model/blocks/couch/ModelCouchMiddle.java b/src/main/java/noppes/npcs/client/model/blocks/couch/ModelCouchMiddle.java new file mode 100644 index 000000000..b7fc591b3 --- /dev/null +++ b/src/main/java/noppes/npcs/client/model/blocks/couch/ModelCouchMiddle.java @@ -0,0 +1,40 @@ +package noppes.npcs.client.model.blocks.couch; + +import net.minecraft.client.model.ModelBase; +import net.minecraft.client.model.ModelBox; +import net.minecraft.client.model.ModelRenderer; +import net.minecraft.entity.Entity; + +public class ModelCouchMiddle extends ModelBase { + public final ModelRenderer CouchBack; + public final ModelRenderer Cussion; + + public ModelCouchMiddle() { + textureWidth = 64; + textureHeight = 64; + + CouchBack = new ModelRenderer(this); + CouchBack.setRotationPoint(0.0F, 24.0F, 0.0F); + CouchBack.cubeList.add(new ModelBox(CouchBack, 0, 35, -8.0F, -2.0F, -8.0F, 2, 2, 2, 0.0F)); + CouchBack.cubeList.add(new ModelBox(CouchBack, 0, 35, 6.0F, -2.0F, -8.0F, 2, 2, 2, 0.0F)); + CouchBack.cubeList.add(new ModelBox(CouchBack, 0, 35, -8.0F, -2.0F, 6.0F, 2, 2, 2, 0.0F)); + CouchBack.cubeList.add(new ModelBox(CouchBack, 0, 35, 6.0F, -2.0F, 6.0F, 2, 2, 2, 0.0F)); + CouchBack.cubeList.add(new ModelBox(CouchBack, 0, 35, -8.0F, -3.0F, -8.0F, 16, 1, 15, 0.0F)); + CouchBack.cubeList.add(new ModelBox(CouchBack, 0, 51, -8.0F, -12.0F, 7.0F, 16, 10, 1, 0.0F)); + + Cussion = new ModelRenderer(this); + Cussion.setRotationPoint(0.0F, 24.0F, 0.0F); + Cussion.cubeList.add(new ModelBox(Cussion, 0, 0, -8.0F, -7.0F, -8.0F, 16, 4, 15, 0.0F)); + Cussion.cubeList.add(new ModelBox(Cussion, 0, 19, -8.0F, -16.0F, 3.0F, 16, 9, 4, 0.0F)); + Cussion.cubeList.add(new ModelBox(Cussion, 0, 32, -8.0F, -16.0F, 7.0F, 16, 4, 1, 0.0F)); + } + + @Override + public void render(Entity entity, float f, float f1, float f2, float f3, float f4, float f5) {} + + public void setRotationAngle(ModelRenderer modelRenderer, float x, float y, float z) { + modelRenderer.rotateAngleX = x; + modelRenderer.rotateAngleY = y; + modelRenderer.rotateAngleZ = z; + } +} diff --git a/src/main/java/noppes/npcs/client/model/blocks/couch/ModelCouchRight.java b/src/main/java/noppes/npcs/client/model/blocks/couch/ModelCouchRight.java index d9f6423a5..be64e10b8 100644 --- a/src/main/java/noppes/npcs/client/model/blocks/couch/ModelCouchRight.java +++ b/src/main/java/noppes/npcs/client/model/blocks/couch/ModelCouchRight.java @@ -6,43 +6,45 @@ import net.minecraft.client.model.ModelRenderer; import net.minecraft.entity.Entity; public class ModelCouchRight extends ModelBase { - private final ModelRenderer CouchBack; - private final ModelRenderer Cussion; + public final ModelRenderer CouchBack; + public final ModelRenderer Cussion; - public ModelCouchRight() { - textureWidth = 64; - textureHeight = 64; + public ModelCouchRight() { + textureWidth = 64; + textureHeight = 64; - CouchBack = new ModelRenderer(this); - CouchBack.setRotationPoint(0.0F, 24.0F, 0.0F); - CouchBack.cubeList.add(new ModelBox(CouchBack, 0, 0, 6.0F, -1.0F, -8.0F, 2, 1, 2, 0.0F)); - CouchBack.cubeList.add(new ModelBox(CouchBack, 0, 0, -8.0F, -1.0F, -8.0F, 2, 1, 2, 0.0F)); - CouchBack.cubeList.add(new ModelBox(CouchBack, 0, 0, 6.0F, -1.0F, 6.0F, 2, 1, 2, 0.0F)); - CouchBack.cubeList.add(new ModelBox(CouchBack, 0, 0, -8.0F, -1.0F, 6.0F, 2, 1, 2, 0.0F)); - CouchBack.cubeList.add(new ModelBox(CouchBack, 0, 35, -8.0F, -2.0F, -8.0F, 14, 1, 15, 0.0F)); - CouchBack.cubeList.add(new ModelBox(CouchBack, 0, 51, -8.0F, -10.0F, 7.0F, 14, 9, 1, 0.0F)); - CouchBack.cubeList.add(new ModelBox(CouchBack, 36, 50, 6.0F, -5.0F, -6.0F, 2, 4, 10, 0.0F)); - CouchBack.cubeList.add(new ModelBox(CouchBack, 52, 35, 6.0F, -10.0F, 4.0F, 2, 9, 4, 0.0F)); - CouchBack.cubeList.add(new ModelBox(CouchBack, 36, 50, 6.0F, -10.0F, -8.0F, 2, 2, 12, 0.0F)); - CouchBack.cubeList.add(new ModelBox(CouchBack, 44, 51, 7.0F, -8.0F, -6.0F, 0, 3, 10, 0.0F)); - CouchBack.cubeList.add(new ModelBox(CouchBack, 15, 18, 6.0F, -8.0F, -8.0F, 2, 7, 2, 0.0F)); + CouchBack = new ModelRenderer(this); + CouchBack.mirror = true; + CouchBack.setRotationPoint(0.0F, 24.0F, 0.0F); + CouchBack.cubeList.add(new ModelBox(CouchBack, 0, 35, 6.0F, -2.0F, -8.0F, 2, 2, 2, 0.0F)); + CouchBack.cubeList.add(new ModelBox(CouchBack, 0, 35, -8.0F, -2.0F, -8.0F, 2, 2, 2, 0.0F)); + CouchBack.cubeList.add(new ModelBox(CouchBack, 0, 35, 6.0F, -2.0F, 6.0F, 2, 2, 2, 0.0F)); + CouchBack.cubeList.add(new ModelBox(CouchBack, 0, 35, -8.0F, -2.0F, 6.0F, 2, 2, 2, 0.0F)); + CouchBack.cubeList.add(new ModelBox(CouchBack, 0, 35, -8.0F, -3.0F, -8.0F, 14, 1, 15, 0.0F)); + CouchBack.cubeList.add(new ModelBox(CouchBack, 0, 51, -8.0F, -12.0F, 7.0F, 14, 10, 1, 0.0F)); + CouchBack.cubeList.add(new ModelBox(CouchBack, 0, 21, 6.0F, -6.0F, -6.0F, 2, 4, 10, 0.0F)); + CouchBack.cubeList.add(new ModelBox(CouchBack, 22, 48, 6.0F, -12.0F, 4.0F, 2, 10, 4, 0.0F)); + CouchBack.cubeList.add(new ModelBox(CouchBack, 24, 21, 6.0F, -12.0F, -8.0F, 2, 2, 12, 0.0F)); + CouchBack.cubeList.add(new ModelBox(CouchBack, 14, 17, 7.0F, -10.0F, -6.0F, 0, 4, 10, 0.0F)); + CouchBack.cubeList.add(new ModelBox(CouchBack, 40, 23, 6.0F, -10.0F, -8.0F, 2, 8, 2, 0.0F)); - Cussion = new ModelRenderer(this); - Cussion.setRotationPoint(0.0F, 24.0F, 0.0F); - Cussion.cubeList.add(new ModelBox(Cussion, 1, 0, -8.0F, -5.0F, -8.0F, 14, 3, 15, 0.0F)); - Cussion.cubeList.add(new ModelBox(Cussion, 1, 18, -8.0F, -14.0F, 4.0F, 14, 9, 3, 0.0F)); - Cussion.cubeList.add(new ModelBox(Cussion, 4, 30, -8.0F, -14.0F, 7.0F, 14, 4, 1, 0.0F)); - } + Cussion = new ModelRenderer(this); + Cussion.mirror = true; + Cussion.setRotationPoint(0.0F, 24.0F, 0.0F); + Cussion.cubeList.add(new ModelBox(Cussion, 2, 0, -8.0F, -7.0F, -8.0F, 14, 4, 15, 0.0F)); + Cussion.cubeList.add(new ModelBox(Cussion, 2, 19, -8.0F, -16.0F, 3.0F, 14, 9, 4, 0.0F)); + Cussion.cubeList.add(new ModelBox(Cussion, 2, 32, -8.0F, -16.0F, 7.0F, 14, 4, 1, 0.0F)); + } - @Override - public void render(Entity entity, float f, float f1, float f2, float f3, float f4, float f5) { - CouchBack.render(f5); - Cussion.render(f5); - } + @Override + public void render(Entity entity, float f, float f1, float f2, float f3, float f4, float f5) { + CouchBack.render(f5); + Cussion.render(f5); + } - public void setRotationAngle(ModelRenderer modelRenderer, float x, float y, float z) { - modelRenderer.rotateAngleX = x; - modelRenderer.rotateAngleY = y; - modelRenderer.rotateAngleZ = z; - } + public void setRotationAngle(ModelRenderer modelRenderer, float x, float y, float z) { + modelRenderer.rotateAngleX = x; + modelRenderer.rotateAngleY = y; + modelRenderer.rotateAngleZ = z; + } } diff --git a/src/main/java/noppes/npcs/client/model/blocks/couch/ModelCouchSingle.java b/src/main/java/noppes/npcs/client/model/blocks/couch/ModelCouchSingle.java index 0a78455a7..cf5ad52a8 100644 --- a/src/main/java/noppes/npcs/client/model/blocks/couch/ModelCouchSingle.java +++ b/src/main/java/noppes/npcs/client/model/blocks/couch/ModelCouchSingle.java @@ -6,40 +6,57 @@ import net.minecraft.client.model.ModelRenderer; import net.minecraft.entity.Entity; public class ModelCouchSingle extends ModelBase { - private final ModelRenderer CouchBack; - private final ModelRenderer Cussion; + public final ModelRenderer Cussion; + public final ModelRenderer CouchBack; + private final ModelRenderer ArmL; + private final ModelRenderer ArmR; - public ModelCouchSingle() { - textureWidth = 16; - textureHeight = 16; + public ModelCouchSingle() { + textureWidth = 64; + textureHeight = 64; - CouchBack = new ModelRenderer(this); - CouchBack.setRotationPoint(0.0F, 24.0F, 0.0F); - CouchBack.cubeList.add(new ModelBox(CouchBack, 0, 0, -8.0F, -1.0F, -8.0F, 2, 1, 2, 0.0F)); - CouchBack.cubeList.add(new ModelBox(CouchBack, 0, 0, 6.0F, -1.0F, -8.0F, 2, 1, 2, 0.0F)); - CouchBack.cubeList.add(new ModelBox(CouchBack, 0, 0, -8.0F, -1.0F, 6.0F, 2, 1, 2, 0.0F)); - CouchBack.cubeList.add(new ModelBox(CouchBack, 0, 0, 6.0F, -1.0F, 6.0F, 2, 1, 2, 0.0F)); - CouchBack.cubeList.add(new ModelBox(CouchBack, -18, -13, -6.0F, -2.0F, -8.0F, 12, 1, 15, 0.0F)); - CouchBack.cubeList.add(new ModelBox(CouchBack, -4, 1, -6.0F, -10.0F, 7.0F, 12, 9, 1, 0.0F)); - CouchBack.cubeList.add(new ModelBox(CouchBack, -14, -14, 6.0F, -10.0F, -8.0F, 2, 9, 16, 0.0F)); - CouchBack.cubeList.add(new ModelBox(CouchBack, -14, -14, -8.0F, -10.0F, -8.0F, 2, 9, 16, 0.0F)); + CouchBack = new ModelRenderer(this); + CouchBack.setRotationPoint(0.0F, 24.0F, 0.0F); + CouchBack.cubeList.add(new ModelBox(CouchBack, 0, 35, -8.0F, -2.0F, -8.0F, 2, 2, 2, 0.0F)); + CouchBack.cubeList.add(new ModelBox(CouchBack, 0, 35, 6.0F, -2.0F, -8.0F, 2, 2, 2, 0.0F)); + CouchBack.cubeList.add(new ModelBox(CouchBack, 0, 35, -8.0F, -2.0F, 6.0F, 2, 2, 2, 0.0F)); + CouchBack.cubeList.add(new ModelBox(CouchBack, 0, 35, 6.0F, -2.0F, 6.0F, 2, 2, 2, 0.0F)); + CouchBack.cubeList.add(new ModelBox(CouchBack, 0, 35, -8.0F, -3.0F, -8.0F, 16, 1, 15, 0.0F)); + CouchBack.cubeList.add(new ModelBox(CouchBack, 0, 51, -8.0F, -12.0F, 7.0F, 16, 10, 1, 0.0F)); - Cussion = new ModelRenderer(this); - Cussion.setRotationPoint(0.0F, 24.0F, 0.0F); - Cussion.cubeList.add(new ModelBox(Cussion, -18, -13, -6.0F, -5.0F, -8.0F, 12, 3, 15, 0.0F)); - Cussion.cubeList.add(new ModelBox(Cussion, -6, -1, -6.0F, -14.0F, 4.0F, 12, 9, 3, 0.0F)); - Cussion.cubeList.add(new ModelBox(Cussion, -4, 1, -6.0F, -14.0F, 7.0F, 12, 4, 1, 0.0F)); - } + ArmL = new ModelRenderer(this); + ArmL.setRotationPoint(9.0F, -7.0F, 0.0F); + CouchBack.addChild(ArmL); + ArmL.mirror = true; + ArmL.cubeList.add(new ModelBox(ArmL, 24, 21, -1.0F, -5.0F, -8.0F, 2, 2, 12, 0.0F)); + ArmL.cubeList.add(new ModelBox(ArmL, 14, 17, 0.0F, -3.0F, -6.0F, 0, 4, 10, 0.0F)); + ArmL.cubeList.add(new ModelBox(ArmL, 40, 23, -1.0F, -3.0F, -8.0F, 2, 8, 2, 0.0F)); + ArmL.cubeList.add(new ModelBox(ArmL, 0, 21, -1.0F, 1.0F, -6.0F, 2, 4, 10, 0.0F)); + ArmL.cubeList.add(new ModelBox(ArmL, 22, 48, -1.0F, -5.0F, 4.0F, 2, 10, 4, 0.0F)); + ArmL.mirror = false; - @Override - public void render(Entity entity, float f, float f1, float f2, float f3, float f4, float f5) { - CouchBack.render(f5); - Cussion.render(f5); - } + ArmR = new ModelRenderer(this); + ArmR.setRotationPoint(-9.0F, -7.0F, 0.0F); + CouchBack.addChild(ArmR); + ArmR.cubeList.add(new ModelBox(ArmR, 24, 21, -1.0F, -5.0F, -8.0F, 2, 2, 12, 0.0F)); + ArmR.cubeList.add(new ModelBox(ArmR, 14, 17, 0.0F, -3.0F, -6.0F, 0, 4, 10, 0.0F)); + ArmR.cubeList.add(new ModelBox(ArmR, 0, 21, -1.0F, 1.0F, -6.0F, 2, 4, 10, 0.0F)); + ArmR.cubeList.add(new ModelBox(ArmR, 40, 23, -1.0F, -3.0F, -8.0F, 2, 8, 2, 0.0F)); + ArmR.cubeList.add(new ModelBox(ArmR, 22, 48, -1.0F, -5.0F, 4.0F, 2, 10, 4, 0.0F)); - public void setRotationAngle(ModelRenderer modelRenderer, float x, float y, float z) { - modelRenderer.rotateAngleX = x; - modelRenderer.rotateAngleY = y; - modelRenderer.rotateAngleZ = z; - } + Cussion = new ModelRenderer(this); + Cussion.setRotationPoint(0.0F, 24.0F, 0.0F); + Cussion.cubeList.add(new ModelBox(Cussion, 0, 0, -8.0F, -7.0F, -8.0F, 16, 4, 15, 0.0F)); + Cussion.cubeList.add(new ModelBox(Cussion, 0, 19, -8.0F, -16.0F, 3.0F, 16, 9, 4, 0.0F)); + Cussion.cubeList.add(new ModelBox(Cussion, 0, 32, -8.0F, -16.0F, 7.0F, 16, 4, 1, 0.0F)); + } + + @Override + public void render(Entity entity, float f, float f1, float f2, float f3, float f4, float f5) {} + + public void setRotationAngle(ModelRenderer modelRenderer, float x, float y, float z) { + modelRenderer.rotateAngleX = x; + modelRenderer.rotateAngleY = y; + modelRenderer.rotateAngleZ = z; + } } diff --git a/src/main/java/noppes/npcs/client/renderer/blocks/BlockCouchWoolRenderer.java b/src/main/java/noppes/npcs/client/renderer/blocks/BlockCouchWoolRenderer.java index bfe226f7d..74cb80d75 100644 --- a/src/main/java/noppes/npcs/client/renderer/blocks/BlockCouchWoolRenderer.java +++ b/src/main/java/noppes/npcs/client/renderer/blocks/BlockCouchWoolRenderer.java @@ -2,9 +2,12 @@ package noppes.npcs.client.renderer.blocks; import cpw.mods.fml.client.registry.RenderingRegistry; import net.minecraft.block.Block; +import net.minecraft.client.Minecraft; import net.minecraft.client.model.ModelBase; import net.minecraft.client.renderer.RenderBlocks; +import net.minecraft.client.renderer.texture.TextureManager; import net.minecraft.tileentity.TileEntity; +import net.minecraft.util.ResourceLocation; import noppes.npcs.CustomItems; import noppes.npcs.blocks.BlockCouchWool; import noppes.npcs.blocks.tiles.TileCouchWool; @@ -16,11 +19,11 @@ import org.lwjgl.opengl.GL12; public class BlockCouchWoolRenderer extends BlockRendererInterface{ - private final ModelBase modelCouchLeft = new ModelCouchLeft(); - private final ModelBase modelCouchRight = new ModelCouchRight(); - private final ModelBase modelCouchCorner = new ModelCouchCorner(); - private final ModelBase modelCouch = new ModelCouch(); - private final ModelBase modelCouchSingle = new ModelCouchSingle(); + private final ModelCouchLeft modelCouchLeft = new ModelCouchLeft(); + private final ModelCouchRight modelCouchRight = new ModelCouchRight(); + private final ModelCouchCorner modelCouchCorner = new ModelCouchCorner(); + private final ModelCouchMiddle modelCouch = new ModelCouchMiddle(); + private final ModelCouchSingle modelCouchSingle = new ModelCouchSingle(); private final ModelBase modelLegacyCouchMiddle = new ModelLegacyCouchMiddle(); private final ModelBase modelLegacyCouchMiddleWool = new ModelLegacyCouchMiddleWool(); @@ -34,6 +37,16 @@ public class BlockCouchWoolRenderer extends BlockRendererInterface{ private final ModelBase modelLegacyCouchCorner = new ModelLegacyCouchCorner(); private final ModelBase modelLegacyCouchCornerWool = new ModelLegacyCouchCornerWool(); + + private static final ResourceLocation oak = new ResourceLocation("customnpcs","textures/models/couch/oak.png"); + private static final ResourceLocation spruce = new ResourceLocation("customnpcs","textures/models/couch/spruce.png"); + private static final ResourceLocation birch = new ResourceLocation("customnpcs","textures/models/couch/birch.png"); + private static final ResourceLocation jungle = new ResourceLocation("customnpcs","textures/models/couch/jungle.png"); + private static final ResourceLocation acacia = new ResourceLocation("customnpcs","textures/models/couch/acacia.png"); + private static final ResourceLocation dark_oak = new ResourceLocation("customnpcs","textures/models/couch/dark_oak.png"); + + private static final ResourceLocation wool = new ResourceLocation("customnpcs","textures/models/couch/wool.png"); + public BlockCouchWoolRenderer(){ ((BlockCouchWool)CustomItems.couchWool).renderId = RenderingRegistry.getNextAvailableRenderId(); RenderingRegistry.registerBlockHandler(this); @@ -50,7 +63,8 @@ public class BlockCouchWoolRenderer extends BlockRendererInterface{ GL11.glRotatef(90 * tile.rotation, 0, 1, 0); GL11.glColor3f(1, 1, 1); - if(false){ + GL11.glEnable(GL11.GL_ALPHA_TEST); + if(ConfigClient.LegacyCouch){ setWoodTexture(var1.getBlockMetadata()); if(tile.hasCornerLeft) modelLegacyCouchCorner.render(null, 0, 0, 0, 0, 0.0F, 0.0625F); @@ -82,23 +96,98 @@ public class BlockCouchWoolRenderer extends BlockRendererInterface{ else modelLegacyCouchMiddleWool.render(null, 0, 0, 0, 0, 0.0F, 0.0625F); } else { - setWoodTexture(var1.getBlockMetadata()); - if(tile.hasCornerLeft) - modelCouchCorner.render(null, 0, 0, 0, 0, 0.0F, 0.0625F); - else if(tile.hasCornerRight){ - GL11.glRotatef(90, 0, 1, 0); - modelCouchCorner.render(null, 0, 0, 0, 0, 0.0F, 0.0625F); + int leftDX = 0, leftDZ = 0, rightDX = 0, rightDZ = 0; + switch(tile.rotation) { + case 1: // Facing south: left = east, right = west + leftDX = 0; leftDZ = 1; + rightDX = 0; rightDZ = -1; + break; + case 0: // Facing west: left = south, right = north + leftDX = 1; leftDZ = 0; + rightDX = -1; rightDZ = 0; + break; + case 3: // Facing north: left = west, right = east + leftDX = 0; leftDZ = -1; + rightDX = 0; rightDZ = 1; + break; + case 2: // Facing east: left = north, right = south + leftDX = -1; leftDZ = 0; + rightDX = 1; rightDZ = 0; + break; } - else if(tile.hasLeft && tile.hasRight) - modelCouch.render(null, 0, 0, 0, 0, 0.0F, 0.0625F); - else if(tile.hasLeft) - modelCouchLeft.render(null, 0, 0, 0, 0, 0.0F, 0.0625F); - else if(tile.hasRight) - modelCouchRight.render(null, 0, 0, 0, 0, 0.0F, 0.0625F); - else - modelCouchSingle.render(null, 0, 0, 0, 0, 0.0F, 0.0625F); - } + // Check if the blocks to the left and right are solid + Block blockLeft = tile.getWorldObj().getBlock(tile.xCoord + leftDX, tile.yCoord, tile.zCoord + leftDZ); + Block blockRight = tile.getWorldObj().getBlock(tile.xCoord + rightDX, tile.yCoord, tile.zCoord + rightDZ); + boolean leftSolid = blockLeft != null && blockLeft.getMaterial().isSolid(); + boolean rightSolid = blockRight != null && blockRight.getMaterial().isSolid(); + + setCouchWood(var1.getBlockMetadata()); + if(tile.hasCornerLeft){ + GL11.glPushMatrix(); + GL11.glRotatef(90, 0, 1, 0); + modelCouchCorner.CouchBack.render(0.0625F); + GL11.glPopMatrix(); + } + else if(tile.hasCornerRight) + modelCouchCorner.CouchBack.render(0.0625F); + else if(tile.hasLeft && tile.hasRight) + modelCouch.CouchBack.render(0.0625F); + else if(tile.hasLeft) + modelCouchLeft.CouchBack.render(0.0625F); + else if(tile.hasRight) + modelCouchRight.CouchBack.render(0.0625F); + else { + if(leftSolid && rightSolid) { + // Both sides occupied: use middle couch + modelCouch.CouchBack.render(0.0625F); + Minecraft.getMinecraft().getTextureManager().bindTexture(wool); + modelCouch.Cussion.render(0.0625F); + } else if(leftSolid) { + // Block to left exists -> use right couch model + modelCouchRight.CouchBack.render(0.0625F); + Minecraft.getMinecraft().getTextureManager().bindTexture(wool); + modelCouchRight.Cussion.render(0.0625F); + } else if(rightSolid) { + // Block to right exists -> use left couch model + modelCouchLeft.CouchBack.render(0.0625F); + Minecraft.getMinecraft().getTextureManager().bindTexture(wool); + modelCouchLeft.Cussion.render(0.0625F); + } else { + // Neither side has a solid block: use the singleton couch model + modelCouchSingle.CouchBack.render(0.0625F); + Minecraft.getMinecraft().getTextureManager().bindTexture(wool); + modelCouchSingle.Cussion.render(0.0625F); + } + } + + Minecraft.getMinecraft().getTextureManager().bindTexture(wool); + float[] color = BlockBannerRenderer.colorTable[tile.color]; + GL11.glColor3f(color[0], color[1], color[2]); + + if(tile.hasCornerLeft) + modelCouchCorner.Cussion.render(0.0625F); + else if(tile.hasCornerRight) + modelCouchCorner.Cussion.render(0.0625F); + else if(tile.hasLeft && tile.hasRight) + modelCouch.Cussion.render(0.0625F); + else if(tile.hasLeft) + modelCouchLeft.Cussion.render(0.0625F); + else if(tile.hasRight) + modelCouchRight.Cussion.render(0.0625F); + else { + if(leftSolid && rightSolid) { + modelCouch.Cussion.render(0.0625F); + } else if(leftSolid) { + modelCouchRight.Cussion.render(0.0625F); + } else if(rightSolid) { + modelCouchLeft.Cussion.render(0.0625F); + } else { + modelCouchSingle.Cussion.render(0.0625F); + } + } + } + GL11.glDisable(GL11.GL_ALPHA_TEST); GL11.glPopMatrix(); } @@ -122,6 +211,22 @@ public class BlockCouchWoolRenderer extends BlockRendererInterface{ GL11.glPopMatrix(); } + public void setCouchWood(int meta){ + TextureManager manager = Minecraft.getMinecraft().getTextureManager(); + if(meta == 1) + manager.bindTexture(spruce); + else if(meta == 2) + manager.bindTexture(birch); + else if(meta == 3) + manager.bindTexture(jungle); + else if(meta == 4) + manager.bindTexture(acacia); + else if(meta == 5) + manager.bindTexture(dark_oak); + else + manager.bindTexture(oak); + } + @Override public int getRenderId() { return CustomItems.couchWool.getRenderType(); diff --git a/src/main/resources/assets/customnpcs/textures/models/couch/acacia.png b/src/main/resources/assets/customnpcs/textures/models/couch/acacia.png new file mode 100644 index 000000000..0797af0cb Binary files /dev/null and b/src/main/resources/assets/customnpcs/textures/models/couch/acacia.png differ diff --git a/src/main/resources/assets/customnpcs/textures/models/couch/birch.png b/src/main/resources/assets/customnpcs/textures/models/couch/birch.png new file mode 100644 index 000000000..54acb7c28 Binary files /dev/null and b/src/main/resources/assets/customnpcs/textures/models/couch/birch.png differ diff --git a/src/main/resources/assets/customnpcs/textures/models/couch/dark_oak.png b/src/main/resources/assets/customnpcs/textures/models/couch/dark_oak.png new file mode 100644 index 000000000..c2447ea49 Binary files /dev/null and b/src/main/resources/assets/customnpcs/textures/models/couch/dark_oak.png differ diff --git a/src/main/resources/assets/customnpcs/textures/models/couch/jungle.png b/src/main/resources/assets/customnpcs/textures/models/couch/jungle.png new file mode 100644 index 000000000..e0d8a8b9e Binary files /dev/null and b/src/main/resources/assets/customnpcs/textures/models/couch/jungle.png differ diff --git a/src/main/resources/assets/customnpcs/textures/models/couch/oak.png b/src/main/resources/assets/customnpcs/textures/models/couch/oak.png new file mode 100644 index 000000000..4762b71f8 Binary files /dev/null and b/src/main/resources/assets/customnpcs/textures/models/couch/oak.png differ diff --git a/src/main/resources/assets/customnpcs/textures/models/couch/spruce.png b/src/main/resources/assets/customnpcs/textures/models/couch/spruce.png new file mode 100644 index 000000000..d1b6148ef Binary files /dev/null and b/src/main/resources/assets/customnpcs/textures/models/couch/spruce.png differ diff --git a/src/main/resources/assets/customnpcs/textures/models/couch/wool.png b/src/main/resources/assets/customnpcs/textures/models/couch/wool.png new file mode 100644 index 000000000..d160f0421 Binary files /dev/null and b/src/main/resources/assets/customnpcs/textures/models/couch/wool.png differ