@@ -62,7 +62,15 @@ public boolean onBlockRightClicked(World world, int i, int j, int k, EntityPlaye
62
62
if (tile .getAllowedFluidsForSlot (0 ).contains (fluid )) {
63
63
tile .insertFluid (0 , stack );
64
64
Item emptyContainer = CatalystFluids .CONTAINERS .findEmptyContainersWithContainer (fluid , equippedItem ).get (0 );
65
- entityplayer .inventory .mainInventory [entityplayer .inventory .currentItem ] = new ItemStack (emptyContainer );
65
+ ItemStack heldStack = entityplayer .inventory .mainInventory [entityplayer .inventory .currentItem ];
66
+ ItemStack resultStack = new ItemStack (emptyContainer );
67
+ if (heldStack != null && heldStack .stackSize == 1 ){
68
+ entityplayer .inventory .mainInventory [entityplayer .inventory .currentItem ] = resultStack ;
69
+ } else if (heldStack != null && heldStack .stackSize > 1 ) {
70
+ heldStack .stackSize -= 1 ;
71
+ entityplayer .inventory .insertItem (resultStack ,false );
72
+ if (resultStack .stackSize > 0 ) entityplayer .dropPlayerItem (resultStack );
73
+ }
66
74
return true ;
67
75
}
68
76
}
@@ -77,7 +85,15 @@ public boolean onBlockRightClicked(World world, int i, int j, int k, EntityPlaye
77
85
if (tile .getFluidInSlot (0 ).amount >= 1000 ) {
78
86
tile .getFluidInSlot (0 ).amount -= 1000 ;
79
87
Item filledContainer = CatalystFluids .CONTAINERS .findFilledContainersWithContainer (fluid , equippedItem ).get (0 );
80
- entityplayer .inventory .mainInventory [entityplayer .inventory .currentItem ] = new ItemStack (filledContainer );
88
+ ItemStack heldStack = entityplayer .inventory .mainInventory [entityplayer .inventory .currentItem ];
89
+ ItemStack resultStack = new ItemStack (filledContainer );
90
+ if (heldStack != null && heldStack .stackSize == 1 ){
91
+ entityplayer .inventory .mainInventory [entityplayer .inventory .currentItem ] = resultStack ;
92
+ } else if (heldStack != null && heldStack .stackSize > 1 ) {
93
+ heldStack .stackSize -= 1 ;
94
+ entityplayer .inventory .insertItem (resultStack ,false );
95
+ if (resultStack .stackSize > 0 ) entityplayer .dropPlayerItem (resultStack );
96
+ }
81
97
return true ;
82
98
}
83
99
}
0 commit comments