Jump to content

[1.16.5] Furnace scaled progression bar with .blit not updating


Recommended Posts

Hi everyone, for my mod I wanted to do a custom furnace, everything works fine except the progression bar, indeed in the screen class, where I use the drawGuiContainerBackgroundLayer( ) function I put a blit with my progression bar, the problem I have is that I think it draws the texture once and then it is not updating, even if for the width I inserted a dynamic value that gives the width to display depending on the currentSmeltTime out of the MaxSmeltTime of the cooking. So my question would be : How can I make this updating and redrawing when the value changes ?


Here is the function which is called 

	protected void drawGuiContainerBackgroundLayer(
		MatrixStack matrixStack,
		float partialTicks,
		int mousex,
		int mousey) {
		RenderSystem.color4f(1f, 1f, 1f, 1f);
		this.blit(matrixStack, this.guiLeft, this.guiTop, 0, 0, this.xSize, this.ySize);

		int l = this.container.getSmeltProgressionScaled();
		this.blit(matrixStack, this.guiLeft + 64, this.guiTop + 40, 176, 0, l + 1, 4);

my problem is in the two last lines, may someone help me please ?


the getSmeltProgressionScaled( ) function (in my container class) 

	public int getSmeltProgressionScaled() {
		return this.te.currentSmeltTime != 0 && this.te.smeltTime != 0 ? this.te.currentSmeltTime * 47 / this.te.smeltTime : 0;

Thanks you for your help

Link to comment
Share on other sites

I deleted the @OnlyIn but it is not fixing the issue.


Here is my container class:

public class ForgeContainer extends Container {

	public final  ForgeTileEntity              te;
	private final IWorldPosCallable            canInteractWithCollable;
	public        FunctionalIntreferenceHolder currentSmeltTime;

	public ForgeContainer(final int windowId, final
	                      PlayerInventory playerInv, final ForgeTileEntity te) {
		super(ModContainers.FORGE_CONTAINER.get(), windowId);
		this.te = te;
		this.canInteractWithCollable = IWorldPosCallable.of(te.getWorld(), te.getPos());

		// Forge Inv
		this.addSlot(new ForgeUpgradableSlot(te, 0, 42, 34));
		this.addSlot(new ForgeFuelSlot( te, 1, 42, 63));
		this.addSlot(new ForgeCompressorSlot(te, 2, 81, 7));
		this.addSlot(new ForgeOutputSlot(te, 3, 117, 34));

		this.trackInt(currentSmeltTime = new FunctionalIntreferenceHolder(() -> this.te.currentSmeltTime, time -> this.te.currentSmeltTime = time));

		// Player Inv
		for (int row = 0; row < 3; row++) {
			for (int col = 0; col < 9; col++) {
				this.addSlot(new Slot(playerInv, col + row * 9 + 9, 8  + col * 18, 119 + (row * 18)));

		// Player HotBar
		for (int col = 0; col < 9; col++) {
			this.addSlot(new Slot(playerInv, col, 8 + col * 18, 177));

	public ForgeContainer(final int windowId, final
	PlayerInventory playerInv, final
	                      PacketBuffer data) {
		this(windowId, playerInv, getTileEntity(playerInv, data));

	private static ForgeTileEntity getTileEntity(final PlayerInventory playerInv, final PacketBuffer data) {
		Objects.requireNonNull(playerInv, "player inventory cannot be null");
		Objects.requireNonNull(data, "packet buffer cannot be null");
		final TileEntity te = playerInv.player.world.getTileEntity(data.readBlockPos());

		if (te instanceof ForgeTileEntity) {
			return (ForgeTileEntity) te;

		throw new IllegalStateException("Tile Entity is not correct");

	public boolean canInteractWith(
		PlayerEntity playerIn) {
		return isWithinUsableDistance(canInteractWithCollable, playerIn,

	public ItemStack transferStackInSlot(
		PlayerEntity playerIn,
		int index) {
		ItemStack stack = ItemStack.EMPTY;
		Slot slot = this.inventorySlots.get(index);

		if (slot != null && slot.getHasStack()) {
			ItemStack stack1 = slot.getStack();
			stack = stack1.copy();

			if (index < ForgeTileEntity.slots - 1 && !this.mergeItemStack(stack1, ForgeTileEntity.slots, this.inventorySlots.size(), true)) {
				return ItemStack.EMPTY;
			if (!this.mergeItemStack(stack1, 0, ForgeTileEntity.slots, false)) {
				return ItemStack.EMPTY;
			if (stack1.isEmpty()) {
			else {

		return stack;

	public int getSmeltProgressionScaled() {
		return this.currentSmeltTime.get() != 0 && this.te.smeltTime != 0 ? this.currentSmeltTime.get() * 47 / this.te.smeltTime : 0;



Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


  • Recently Browsing

    • No registered users viewing this page.
  • Posts

    • 자곡유흥업소 □BCGAME88·COM™ 하중유흥업소 안양유흥업소 인천유흥업소 홍성유흥업소 pvh75 삼척유흥업소 동두천유흥업소 태평로유흥업소 구미유흥업소 bbs91 안산유흥업소 원주유흥업소 이천유흥업소 통의유흥업소 twu15 금호유흥업소 개포유흥업소 홍지유흥업소 공덕유흥업소 nri05 현석유흥업소 홍은유흥업소 중화유흥업소 고양유흥업소 fvt69 우이유흥업소 가락유흥업소 오곡유흥업소 목동유흥업소 bon80 오금유흥업소 녹번유흥업소 아현유흥업소 상주유흥업소 miq38 사근유흥업소 상수유흥업소 북가좌유흥업소 소격유흥업소 euq43 안국유흥업소 하남유흥업소 논산유흥업소 개포유흥업소 sxg80 제주유흥업소 신대방유흥업소 한남유흥업소 중림유흥업소 jhe89 이천유흥업소 인의유흥업소 사근유흥업소 용인유흥업소 jjj78 안국유흥업소 과천유흥업소 김해유흥업소 강동유흥업소 yxh84 이문유흥업소 고양유흥업소 목동유흥업소 신정유흥업소 jek40 궁동유흥업소 온수유흥업소 옥천유흥업소 효제유흥업소 jdn84 동선유흥업소 석촌유흥업소 압구정유흥업소 예관유흥업소 qsk77 주교유흥업소 구산유흥업소 홍천유흥업소 신사유흥업소 jfw16 화양유흥업소 수서유흥업소 개포유흥업소 광명유흥업소 fea02 이촌유흥업소 무교유흥업소 강북유흥업소 개포유흥업소 kwe08 사직유흥업소 수유유흥업소 창동유흥업소 고양유흥업소 uks53 외발산유흥업소 관수유흥업소 금호유흥업소 도화유흥업소 bmp79 서소문유흥업소 낙원유흥업소 수표유흥업소 포천유흥업소 rni66 응암유흥업소 일원유흥업소 홍제유흥업소 수하유흥업소 fru17 묘동유흥업소 남산유흥업소 서초유흥업소 신계유흥업소 hxi07
    • 세곡풀사롱 ▨BCGAME88·COM▲ 원주풀사롱 하중풀사롱 당주풀사롱 김해풀사롱 yqy32 궁정풀사롱 중학풀사롱 밀양풀사롱 부천풀사롱 uej00 양산풀사롱 금호풀사롱 도선풀사롱 구미풀사롱 vcw97 장안풀사롱 원서풀사롱 가평풀사롱 묵동풀사롱 tju65 신촌풀사롱 동빙고풀사롱 안성풀사롱 삼청풀사롱 uwa04 신월풀사롱 합동풀사롱 길동풀사롱 무교풀사롱 ope86 논산풀사롱 배방풀사롱 팔판풀사롱 송월풀사롱 erf31 내발산풀사롱 이방풀사롱 수표풀사롱 금호풀사롱 dnj04 고덕풀사롱 공덕풀사롱 구미풀사롱 신림풀사롱 kxv91 저동풀사롱 수하풀사롱 신수풀사롱 삼전풀사롱 awk09 과천풀사롱 개포풀사롱 옥천풀사롱 금산풀사롱 ghu21 망원풀사롱 홍성풀사롱 오산풀사롱 신수풀사롱 xkw59 세종풀사롱 화성풀사롱 의주풀사롱 중계풀사롱 tfi58 천안풀사롱 연희풀사롱 잠원풀사롱 수원풀사롱 qvj74 익산풀사롱 고양풀사롱 홍은풀사롱 회현풀사롱 ujr52 장위풀사롱 신림풀사롱 관훈풀사롱 온수풀사롱 qlk07 봉원풀사롱 서교풀사롱 구의풀사롱 응봉풀사롱 qxo22 군포풀사롱 도림풀사롱 충신풀사롱 오산풀사롱 qfs15 수송풀사롱 인현풀사롱 본동풀사롱 공항풀사롱 eyi22 수서풀사롱 수하풀사롱 잠실풀사롱 부여풀사롱 nan19 음성풀사롱 고덕풀사롱 쌍문풀사롱 울산풀사롱 imd76 삼전풀사롱 구리풀사롱 세종풀사롱 용인풀사롱 rem80 남현풀사롱 하중풀사롱 논현풀사롱 상수풀사롱 bxu20
    • 일원룸풀싸롱 ♬BCGAME88·COM※ 관악룸풀싸롱 무안룸풀싸롱 충신룸풀싸롱 중동룸풀싸롱 ykm29 삼선룸풀싸롱 상왕십리룸풀싸롱 서빙고룸풀싸롱 성내룸풀싸롱 mam35 개화룸풀싸롱 강일룸풀싸롱 의정부룸풀싸롱 청주룸풀싸롱 qid67 사천룸풀싸롱 고척룸풀싸롱 명동룸풀싸롱 운니룸풀싸롱 uph72 태평로룸풀싸롱 화성룸풀싸롱 무안룸풀싸롱 송현룸풀싸롱 hit42 홍천룸풀싸롱 통영룸풀싸롱 토정룸풀싸롱 저동룸풀싸롱 yrp72 서산룸풀싸롱 성산룸풀싸롱 송현룸풀싸롱 상월곡룸풀싸롱 rlk26 대현룸풀싸롱 신촌룸풀싸롱 함안룸풀싸롱 안산룸풀싸롱 wsd11 정동룸풀싸롱 상일룸풀싸롱 충신룸풀싸롱 남영룸풀싸롱 yfw98 광명룸풀싸롱 녹번룸풀싸롱 삼선룸풀싸롱 금호룸풀싸롱 xqn86 옥인룸풀싸롱 주성룸풀싸롱 증산룸풀싸롱 내자룸풀싸롱 fot28 하남룸풀싸롱 상계룸풀싸롱 당인룸풀싸롱 신월룸풀싸롱 nar50 자양룸풀싸롱 압구정룸풀싸롱 평동룸풀싸롱 봉래룸풀싸롱 deg37 밀양룸풀싸롱 중랑룸풀싸롱 구수룸풀싸롱 사직룸풀싸롱 pmd75 대전룸풀싸롱 마포룸풀싸롱 강서룸풀싸롱 명동룸풀싸롱 nxg03 구의룸풀싸롱 저동룸풀싸롱 노고산룸풀싸롱 마장룸풀싸롱 yek44 내자룸풀싸롱 홍천룸풀싸롱 가양룸풀싸롱 신설룸풀싸롱 bdw90 초동룸풀싸롱 장교룸풀싸롱 신길룸풀싸롱 수원룸풀싸롱 lrg34 경주룸풀싸롱 마천룸풀싸롱 대현룸풀싸롱 궁정룸풀싸롱 hoh44 부암룸풀싸롱 재동룸풀싸롱 광명룸풀싸롱 태평로룸풀싸롱 swj54 염창룸풀싸롱 혜화룸풀싸롱 제주룸풀싸롱 신설룸풀싸롱 jjs47 충정룸풀싸롱 무안룸풀싸롱 중동룸풀싸롱 인의룸풀싸롱 gjs60 증산룸풀싸롱 묵동룸풀싸롱 대전룸풀싸롱 양주룸풀싸롱 duo16
    • 개포이발소 ¶BCGAME88·COM™ 팔판이발소 중림이발소 화곡이발소 논현이발소 hcd02 공평이발소 본동이발소 옥천이발소 장사이발소 uhm80 동해이발소 하남이발소 춘천이발소 동숭이발소 wsd20 상일이발소 안양이발소 경운이발소 숭인이발소 nkq49 후암이발소 북가좌이발소 구미이발소 온수이발소 jqa09 돈의이발소 거창이발소 정읍이발소 고덕이발소 sws46 온수이발소 남양주이발소 수송이발소 신원이발소 ddf17 천호이발소 해남이발소 냉천이발소 자곡이발소 vxs78 창성이발소 산방이발소 춘천이발소 항동이발소 gjm35 삼선이발소 관철이발소 고척이발소 삼각이발소 ump69 군포이발소 나주이발소 오금이발소 도곡이발소 gvl52 도렴이발소 충신이발소 홍익이발소 신당이발소 hes09 강남이발소 구리이발소 수송이발소 내발산이발소 orf86 용문이발소 나주이발소 상월곡이발소 사직이발소 hxc01 원주이발소 오산이발소 북가좌이발소 옥천이발소 ocb26 시흥이발소 남양주이발소 정릉이발소 성내이발소 oco47 도선이발소 상왕십리이발소 이촌이발소 면목이발소 nxg23 상일이발소 천왕이발소 고덕이발소 남현이발소 iyb09 서소문이발소 홍천이발소 예지이발소 구산이발소 nrt89 신길이발소 신사이발소 안동이발소 원서이발소 oms81 완주이발소 청암이발소 이촌이발소 사직이발소 boj48 권농이발소 체부이발소 성산이발소 서산이발소 ltr11 천왕이발소 면목이발소 포항이발소 파주이발소 noj61
    • 역삼텐프로 ♬BCGAME88·COM▣ 후암텐프로 고흥텐프로 구로텐프로 운니텐프로 vbb96 서린텐프로 논산텐프로 천연텐프로 광명텐프로 eiy23 효자텐프로 동빙고텐프로 송현텐프로 홍지텐프로 rwd14 적선텐프로 양화텐프로 훈정텐프로 신당텐프로 tlu56 강릉텐프로 논현텐프로 학방텐프로 창녕텐프로 hsh84 가락텐프로 창동텐프로 와룡텐프로 원서텐프로 jgp43 안성텐프로 화동텐프로 청암텐프로 춘천텐프로 pwp13 의정부텐프로 의왕텐프로 오금텐프로 청운텐프로 osv34 행당텐프로 남양주텐프로 수표텐프로 홍은텐프로 ugr41 여주텐프로 구의텐프로 태안텐프로 통의텐프로 myp53 흥인텐프로 만리텐프로 화곡텐프로 삼청텐프로 mtk86 명일텐프로 동해텐프로 둔촌텐프로 송정텐프로 lky75 학방텐프로 용산텐프로 신창텐프로 동작텐프로 jwe06 우이텐프로 창신텐프로 장사텐프로 포항텐프로 rhq01 하왕십리텐프로 파주텐프로 김해텐프로 용강텐프로 rdw49 광주텐프로 송정텐프로 정릉텐프로 동해텐프로 ydq84 대치텐프로 무교텐프로 구리텐프로 중화텐프로 pqm55 면목텐프로 내곡텐프로 용인텐프로 중림텐프로 fro55 운니텐프로 목동텐프로 수색텐프로 인사텐프로 xdp93 개포텐프로 금천텐프로 무안텐프로 용강텐프로 nfe30 안산텐프로 거창텐프로 원남텐프로 남영텐프로 lga42 저동텐프로 연건텐프로 천연텐프로 마곡텐프로 xek59 인천텐프로 종암텐프로 역삼텐프로 구리텐프로 vfd02
  • Topics

  • Create New...

Important Information

By using this site, you agree to our Terms of Use.