@@ -843,7 +843,7 @@ public boolean onUpdateServer()
843
843
{
844
844
getMultiblock ().beams .get (0 ).setParticleStack (null );
845
845
pull ();
846
-
846
+
847
847
848
848
if ((!getMultiblock ().tanks .get (4 ).isEmpty () || !getMultiblock ().tanks .get (5 ).isEmpty ()))
849
849
{
@@ -867,13 +867,11 @@ public boolean onUpdateServer()
867
867
868
868
if (recipeInfo != null )
869
869
{
870
-
871
870
if (rememberedRecipeInfo != null )
872
871
{
873
872
if (rememberedRecipeInfo .getRecipe () != recipeInfo .getRecipe ())
874
873
{
875
874
particleWorkDone = 0 ;
876
- startRecipe (); // to void the in use contents to stop infinite power exploit
877
875
}
878
876
}
879
877
rememberedRecipeInfo = recipeInfo ;
@@ -885,15 +883,14 @@ public boolean onUpdateServer()
885
883
{
886
884
startRecipe ();
887
885
finishRecipe ();
888
-
889
886
}
890
887
}
891
888
}
892
889
else
893
- {
890
+ {
891
+ particleWorkDone = 0 ;
894
892
casingExternalCooling ();
895
893
}
896
-
897
894
}
898
895
else
899
896
{
@@ -914,6 +911,7 @@ else if (plasmaOn)
914
911
{
915
912
setPlasma (false );
916
913
operational = false ;
914
+ particleWorkDone = 0 ;
917
915
}
918
916
919
917
@@ -971,32 +969,90 @@ private void setPlasma(boolean on)
971
969
972
970
// Recipes
973
971
972
+ // private void startRecipe()
973
+ // {
974
+ // if(getMultiblock().tanks.get(4).getFluid() != null)
975
+ // {
976
+ // if(rememberedRecipeInfo.getRecipe().getFluidIngredients().get(0).getStack() != null && getMultiblock().tanks.get(4).getFluid().getFluid() == rememberedRecipeInfo.getRecipe().getFluidIngredients().get(0).getStack().getFluid())
977
+ // {
978
+ // getMultiblock().tanks.get(4).drain(rememberedRecipeInfo.getRecipe().getFluidIngredients().get(0).getStack(), true);
979
+ // }
980
+ // else if(rememberedRecipeInfo.getRecipe().getFluidIngredients().get(1).getStack() != null && getMultiblock().tanks.get(4).getFluid().getFluid() == rememberedRecipeInfo.getRecipe().getFluidIngredients().get(1).getStack().getFluid())
981
+ // {
982
+ // getMultiblock().tanks.get(4).drain(rememberedRecipeInfo.getRecipe().getFluidIngredients().get(1).getStack(), true);
983
+ // }
984
+ // }
985
+ //
986
+ // if(getMultiblock().tanks.get(5).getFluid() != null)
987
+ // {
988
+ // if(rememberedRecipeInfo.getRecipe().getFluidIngredients().get(0).getStack() != null && getMultiblock().tanks.get(5).getFluid().getFluid() == rememberedRecipeInfo.getRecipe().getFluidIngredients().get(0).getStack().getFluid())
989
+ // {
990
+ // getMultiblock().tanks.get(5).drain(rememberedRecipeInfo.getRecipe().getFluidIngredients().get(0).getStack(), true);
991
+ // }
992
+ // else if(rememberedRecipeInfo.getRecipe().getFluidIngredients().get(1).getStack() != null && getMultiblock().tanks.get(5).getFluid().getFluid() == rememberedRecipeInfo.getRecipe().getFluidIngredients().get(1).getStack().getFluid())
993
+ // {
994
+ // getMultiblock().tanks.get(5).drain(rememberedRecipeInfo.getRecipe().getFluidIngredients().get(1).getStack(), true);
995
+ // }
996
+ // }
997
+ // }
998
+
999
+
974
1000
private void startRecipe ()
975
1001
{
976
- if (getMultiblock ().tanks .get (4 ).getFluid () != null )
1002
+ loop : if (getMultiblock ().tanks .get (4 ).getFluid () != null )
977
1003
{
978
- if (rememberedRecipeInfo .getRecipe ().getFluidIngredients ().get (0 ). getStack () != null && getMultiblock (). tanks . get ( 4 ). getFluid (). getFluid () == rememberedRecipeInfo . getRecipe (). getFluidIngredients (). get ( 0 ). getStack (). getFluid () )
1004
+ if (rememberedRecipeInfo .getRecipe ().getFluidIngredients ().get (0 ) != null )
979
1005
{
980
- getMultiblock ().tanks .get (4 ).drain (rememberedRecipeInfo .getRecipe ().getFluidIngredients ().get (0 ).getStack (), true );
1006
+ for (FluidStack fluid : rememberedRecipeInfo .getRecipe ().getFluidIngredients ().get (0 ).getInputStackList ())
1007
+ {
1008
+ if (fluid != null && getMultiblock ().tanks .get (4 ).getFluid ().getFluid () == fluid .getFluid ())
1009
+ {
1010
+ getMultiblock ().tanks .get (4 ).drain (fluid , true );
1011
+ break loop ;
1012
+ }
1013
+ }
981
1014
}
982
- else if (rememberedRecipeInfo .getRecipe ().getFluidIngredients ().get (1 ). getStack () != null && getMultiblock (). tanks . get ( 4 ). getFluid (). getFluid () == rememberedRecipeInfo . getRecipe (). getFluidIngredients (). get ( 1 ). getStack (). getFluid () )
1015
+ if (rememberedRecipeInfo .getRecipe ().getFluidIngredients ().get (1 ) != null )
983
1016
{
984
- getMultiblock ().tanks .get (4 ).drain (rememberedRecipeInfo .getRecipe ().getFluidIngredients ().get (1 ).getStack (), true );
1017
+ for (FluidStack fluid : rememberedRecipeInfo .getRecipe ().getFluidIngredients ().get (1 ).getInputStackList ())
1018
+ {
1019
+ if (fluid != null && getMultiblock ().tanks .get (4 ).getFluid ().getFluid () == fluid .getFluid ())
1020
+ {
1021
+ getMultiblock ().tanks .get (4 ).drain (fluid , true );
1022
+ break loop ;
1023
+ }
1024
+ }
985
1025
}
986
1026
}
987
-
988
- if (getMultiblock ().tanks .get (5 ).getFluid () != null )
1027
+
1028
+ loop : if (getMultiblock ().tanks .get (5 ).getFluid () != null )
989
1029
{
990
- if (rememberedRecipeInfo .getRecipe ().getFluidIngredients ().get (0 ). getStack () != null && getMultiblock (). tanks . get ( 5 ). getFluid (). getFluid () == rememberedRecipeInfo . getRecipe (). getFluidIngredients (). get ( 0 ). getStack (). getFluid () )
1030
+ if (rememberedRecipeInfo .getRecipe ().getFluidIngredients ().get (0 ) != null )
991
1031
{
992
- getMultiblock ().tanks .get (5 ).drain (rememberedRecipeInfo .getRecipe ().getFluidIngredients ().get (0 ).getStack (), true );
1032
+ for (FluidStack fluid : rememberedRecipeInfo .getRecipe ().getFluidIngredients ().get (0 ).getInputStackList ())
1033
+ {
1034
+ if (fluid != null && getMultiblock ().tanks .get (5 ).getFluid ().getFluid () == fluid .getFluid ())
1035
+ {
1036
+ getMultiblock ().tanks .get (5 ).drain (fluid , true );
1037
+ break loop ;
1038
+ }
1039
+ }
993
1040
}
994
- else if (rememberedRecipeInfo .getRecipe ().getFluidIngredients ().get (1 ). getStack () != null && getMultiblock (). tanks . get ( 5 ). getFluid (). getFluid () == rememberedRecipeInfo . getRecipe (). getFluidIngredients (). get ( 1 ). getStack (). getFluid () )
1041
+ if (rememberedRecipeInfo .getRecipe ().getFluidIngredients ().get (1 ) != null )
995
1042
{
996
- getMultiblock ().tanks .get (5 ).drain (rememberedRecipeInfo .getRecipe ().getFluidIngredients ().get (1 ).getStack (), true );
1043
+ for (FluidStack fluid : rememberedRecipeInfo .getRecipe ().getFluidIngredients ().get (1 ).getInputStackList ())
1044
+ {
1045
+ if (fluid != null && getMultiblock ().tanks .get (5 ).getFluid ().getFluid () == fluid .getFluid ())
1046
+ {
1047
+ getMultiblock ().tanks .get (5 ).drain (fluid , true );
1048
+ break loop ;
1049
+ }
1050
+ }
997
1051
}
998
1052
}
1053
+
999
1054
}
1055
+
1000
1056
1001
1057
1002
1058
private void processRecipe ()
0 commit comments