ModelBattery.java 文件源码

java
阅读 18 收藏 0 点赞 0 评论 0

项目:CrystalMod 作者:
public List<BakedQuad> getMeterQuads(EnumFacing face, int power, int maxPower){
    Vector3f min = new Vector3f(2.75f,2.75f,2.75f);
    Vector3f max = new Vector3f(13.25f,13.25f,13.25f);

      String meter = "crystalmod:blocks/machine/battery/meter/";
      String meterC = "crystalmod:blocks/machine/battery/meter/charged";
      String meterU = "crystalmod:blocks/machine/battery/meter/uncharged";
      TextureAtlasSprite meterUp = RenderUtil.getSprite(meterU);
      TextureAtlasSprite meterDown = RenderUtil.getSprite(meterU);
      TextureAtlasSprite meterSide = RenderUtil.getSprite(meter+"0");


      if(power > 0){
    meterDown = RenderUtil.getSprite(meterC);
    meterSide = RenderUtil.getSprite(meter+(Math.min(8, state.battery.getScaledEnergyStored(9))));
}
if(power >= maxPower){
    meterUp = RenderUtil.getSprite(meterC);
}

ModelRotation modelRot = ModelRotation.X0_Y0;
      if(face == EnumFacing.SOUTH){
        modelRot = ModelRotation.X0_Y180;
      }
      if(face == EnumFacing.WEST){
        modelRot = ModelRotation.X0_Y270;
      }
      if(face == EnumFacing.EAST){
        modelRot = ModelRotation.X0_Y90;
      }
      if(face == EnumFacing.UP){
        modelRot = ModelRotation.X270_Y0;
      }
      if(face == EnumFacing.DOWN){
        modelRot = ModelRotation.X90_Y0;
      }

      BlockFaceUV uvMeter = new BlockFaceUV(new float[] { 4f,4f,12f,12f }, 0);
      BlockPartFace meterFace = new BlockPartFace((EnumFacing)null, 0, "", uvMeter);

    List<BakedQuad> list = Lists.newArrayList();
      list.add(faceBakery.makeBakedQuad(min, max, meterFace, meterUp, EnumFacing.UP, modelRot, (BlockPartRotation)null, false, true));
      list.add(faceBakery.makeBakedQuad(min, max, meterFace, meterDown, EnumFacing.DOWN, modelRot, (BlockPartRotation)null, false, true));
      list.add(faceBakery.makeBakedQuad(min, max, meterFace, meterSide, EnumFacing.NORTH, modelRot, (BlockPartRotation)null, false, true));
      list.add(faceBakery.makeBakedQuad(min, max, meterFace, meterSide, EnumFacing.SOUTH, modelRot, (BlockPartRotation)null, false, true));
      list.add(faceBakery.makeBakedQuad(min, max, meterFace, meterSide, EnumFacing.WEST, modelRot, (BlockPartRotation)null, false, true));
      list.add(faceBakery.makeBakedQuad(min, max, meterFace, meterSide, EnumFacing.EAST, modelRot, (BlockPartRotation)null, false, true));
return list;
  }
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号