Skip to content

Commit

Permalink
Merge branch 'reobf:master' into master
Browse files Browse the repository at this point in the history
  • Loading branch information
Artliuyu4528 authored Oct 4, 2024
2 parents 56923c8 + 1ab834d commit cf5a451
Show file tree
Hide file tree
Showing 41 changed files with 3,840 additions and 3,006 deletions.
1,611 changes: 1 addition & 1,610 deletions build.gradle

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion gradle/wrapper/gradle-wrapper.properties
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-8.5-bin.zip
distributionUrl=https\://services.gradle.org/distributions/gradle-8.6-bin.zip
networkTimeout=10000
validateDistributionUrl=true
zipStoreBase=GRADLE_USER_HOME
Expand Down
1 change: 0 additions & 1 deletion repositories.gradle
Original file line number Diff line number Diff line change
@@ -1,5 +1,4 @@
// Add any additional repositories for your dependencies here

repositories {

}
15 changes: 4 additions & 11 deletions settings.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -4,10 +4,10 @@ pluginManagement {
maven {
// RetroFuturaGradle
name "GTNH Maven"
url "http://jenkins.usrv.eu:8081/nexus/content/groups/public/"
allowInsecureProtocol = true
url "https://nexus.gtnewhorizons.com/repository/public/"
mavenContent {
includeGroup("com.gtnewhorizons.retrofuturagradle")
includeGroup("com.gtnewhorizons")
includeGroupByRegex("com\\.gtnewhorizons\\..+")
}
}
gradlePluginPortal()
Expand All @@ -17,12 +17,5 @@ pluginManagement {
}

plugins {
id 'com.diffplug.blowdryerSetup' version '1.6.0'
id 'org.gradle.toolchains.foojay-resolver-convention' version '0.4.0' // Provides java toolchains
}

blowdryerSetup {
repoSubfolder 'gtnhShared'
github('GTNewHorizons/ExampleMod1.7.10', 'tag', '0.2.2')
//devLocal '.' // Use this when testing config updates locally
id 'com.gtnewhorizons.gtnhsettingsconvention' version '1.0.27'
}
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,8 @@
import static net.minecraftforge.common.util.ForgeDirection.DOWN;
import static net.minecraftforge.common.util.ForgeDirection.UP;

import java.util.Map;

import com.gtnewhorizons.modularui.api.UIInfos;
import com.gtnewhorizons.modularui.common.internal.network.NetworkUtils;

Expand Down
16 changes: 10 additions & 6 deletions src/main/java/reobf/proghatches/ae/PartAmountMaintainer.java
Original file line number Diff line number Diff line change
Expand Up @@ -181,7 +181,7 @@ public void requestForMissing(IAEStack primitive){



@SuppressWarnings({ "rawtypes", "unchecked" })
@SuppressWarnings({ "rawtypes", "unchecked", "deprecation" })
@Override
public TickRateModulation tickingRequest(IGridNode node, int TicksSinceLastCall) {

Expand All @@ -191,7 +191,10 @@ public TickRateModulation tickingRequest(IGridNode node, int TicksSinceLastCall)
boolean red=this.getHost().hasRedstone(this.getSide());
boolean should=shouldProceed(red,lastredstone);
lastredstone=red;
if(!should){return TickRateModulation.SAME;}
if(!should){
handlerHash.clear();
inv.clear();
return TickRateModulation.SAME;}
if(getProxy().isActive()==false)return TickRateModulation.SAME;
for(StorageChannel ch:new StorageChannel[]{StorageChannel.FLUIDS,StorageChannel.ITEMS})
{
Expand All @@ -200,8 +203,9 @@ public TickRateModulation tickingRequest(IGridNode node, int TicksSinceLastCall)

IItemList list;
if(inv instanceof IMEMonitor){
inv.injectItems(EMPTY.get(ch), Actionable.MODULATE, source);//dirty hack, trigger update
list = ((IMEMonitor) inv).getStorageList();
// inv.injectItems(EMPTY.get(ch), Actionable.MODULATE, source);//dirty hack, trigger update
// cache is invalid! just use the deprecated way to get the inv
list = ((IMEMonitor) inv).getAvailableItems(ch.createList());

}else{
list=inv.getAvailableItems(ch.createList());
Expand Down Expand Up @@ -415,7 +419,7 @@ public ModularWindow createWindow(UIBuildContext buildContext) {

builder.widget( TextWidget.dynamicString(()->{
try{
PartP2PTunnel p2p = getProxy().getP2P().getInput(freq);
PartP2PTunnel p2p =freq==0?null: getProxy().getP2P().getInput(freq);
if(p2p.isActive()&&p2p.isPowered()){
return StatCollector.translateToLocal("proghatches.amountmaintainer.redstone.online");
}}catch(Exception e){}
Expand Down Expand Up @@ -643,7 +647,7 @@ public int getSlotLimit(int slot) {
public Boolean getSignal(){

try {
PartP2PTunnel p2p = getProxy().getP2P().getInput(freq);
PartP2PTunnel p2p =freq==0?null: getProxy().getP2P().getInput(freq);
if(p2p!=null){
if(p2p.isActive()&&p2p.isPowered()){

Expand Down
75 changes: 71 additions & 4 deletions src/main/java/reobf/proghatches/block/TileReactorSyncer.java
Original file line number Diff line number Diff line change
Expand Up @@ -8,10 +8,14 @@
import com.gtnewhorizons.modularui.api.drawable.IDrawable;
import com.gtnewhorizons.modularui.api.drawable.UITexture;
import com.gtnewhorizons.modularui.api.forge.IItemHandlerModifiable;
import com.gtnewhorizons.modularui.api.forge.PlayerMainInvWrapper;
import com.gtnewhorizons.modularui.api.math.Pos2d;
import com.gtnewhorizons.modularui.api.screen.ITileWithModularUI;
import com.gtnewhorizons.modularui.api.screen.ModularWindow;
import com.gtnewhorizons.modularui.api.screen.UIBuildContext;
import com.gtnewhorizons.modularui.common.internal.wrapper.BaseSlot;
import com.gtnewhorizons.modularui.common.widget.ButtonWidget;
import com.gtnewhorizons.modularui.common.widget.CycleButtonWidget;
import com.gtnewhorizons.modularui.common.widget.DrawableWidget;
import com.gtnewhorizons.modularui.common.widget.FakeSyncWidget;
import com.gtnewhorizons.modularui.common.widget.FluidSlotWidget;
Expand All @@ -23,14 +27,17 @@

import gregtech.api.gui.modularui.GT_UITextures;
import gregtech.api.gui.modularui.GUITextureSet;
import gregtech.common.gui.modularui.widget.CoverCycleButtonWidget;
import ic2.core.block.reactor.tileentity.TileEntityNuclearReactorElectric;
import ic2.core.block.reactor.tileentity.TileEntityReactorAccessHatch;
import ic2.core.block.reactor.tileentity.TileEntityReactorChamberElectric;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.tileentity.TileEntity;
import net.minecraftforge.common.util.ForgeDirection;
import reobf.proghatches.block.TileIOHub.UIFactory;
import reobf.proghatches.gt.metatileentity.util.MappingItemHandler;
import reobf.proghatches.lang.LangManager;
import reobf.proghatches.main.MyMod;

public class TileReactorSyncer extends TileEntity implements ITileWithModularUI{
Expand All @@ -44,14 +51,19 @@ public void validate() {
MyMod.callbacks.put(this,this::pretick);
}


boolean skipCycleZero;
public void pretick(){
if((!isDead)&&(!isInvalid())){
TileEntityNuclearReactorElectric reactor=findTarget();

if(reactor!=null)
tick=reactor.updateTicker%20;else tick=-1;

int new_power=tick!=-1?values[tick]:0;
if(cycles==0&&skipCycleZero){
new_power=0;
}
if(tick==0)cycles++;
if(power!=new_power){


Expand All @@ -61,6 +73,7 @@ public void pretick(){
}

power=new_power;

}
}

Expand All @@ -86,9 +99,15 @@ public TileEntityNuclearReactorElectric findTarget(){
return null;
}

int cycles;
@Override
public void invalidate() {
cycles=0;
super.invalidate();
}
@Override
public void onChunkUnload() {
cycles=0;
super.onChunkUnload();
isDead = true;
}
Expand All @@ -99,7 +118,30 @@ public void updateEntity() {
isDead = false;
}

public static SlotGroup playerHotBarGroup(EntityPlayer player, IDrawable background) {
PlayerMainInvWrapper wrapper = new PlayerMainInvWrapper(player.inventory);
SlotGroup slotGroup = new SlotGroup();

/* for (int row = 0; row < 3; row++) {
for (int col = 0; col < 9; col++) {
SlotWidget slot = new SlotWidget(new BaseSlot(wrapper, col + (row + 1) * 9))
.setPos(new Pos2d(col * 18, row * 18));
slotGroup.addSlot(slot);
if (background != null) {
slot.setBackground(background);
}
}
}*/

for (int i = 0; i < 9; i++) {
SlotWidget slot = new SlotWidget(new BaseSlot(wrapper, i)).setPos(new Pos2d(i * 18, 0));
slotGroup.addSlot(slot);
if (background != null) {
slot.setBackground(background);
}
}
return slotGroup;
}
@Override
public ModularWindow createWindow(UIBuildContext buildContext) {
return new UIFactory(buildContext).createWindow();
Expand All @@ -117,7 +159,12 @@ public ModularWindow createWindow() {
builder.setBackground(ModularUITextures.VANILLA_BACKGROUND);
// builder.setGuiTint(getUIBuildContext().getGuiColorization());
if (doesBindPlayerInventory())
builder.bindPlayerInventory(getUIBuildContext().getPlayer());
{
builder.widget(playerHotBarGroup(uiBuildContext.getPlayer(), null)
.setPos(new Pos2d(3, getGUIHeight()-18-3)));
// builder.bindPlayerInventory(null)

}

addTitleToUI(builder);
addUIWidgets(builder);
Expand All @@ -138,6 +185,24 @@ public ModularWindow createWindow() {
* @param builderx
*/
protected void addUIWidgets(ModularWindow.Builder builderx) {

builderx.widget(((CycleButtonWidget) new CoverCycleButtonWidget().setSynced(false, true))
.setGetter(() -> skipCycleZero ? 1 : 0).setSetter(s ->skipCycleZero = s == 1).setLength(2)
.setTextureGetter(i -> {
if (i == 1)
return GT_UITextures.OVERLAY_BUTTON_EXPORT;
return GT_UITextures.OVERLAY_BUTTON_IMPORT;
})

.addTooltip(1, LangManager.translateToLocal("tile.reactor_syncer.skip.true"))
.addTooltip(0, LangManager.translateToLocal("tile.reactor_syncer.skip.false"))
.addTooltip( LangManager.translateToLocal("tile.reactor_syncer.skip.0"))
.addTooltip( LangManager.translateToLocal("tile.reactor_syncer.skip.1"))
.addTooltip( LangManager.translateToLocal("tile.reactor_syncer.skip.2"))
.setPos(3, getGUIHeight()-60)

);

Scrollable builder=new Scrollable().setHorizontalScroll();
for(int i=0;i<20;i++){

Expand Down Expand Up @@ -244,13 +309,15 @@ public void writeToNBT(NBTTagCompound compound) {
for(int i=0;i<20;i++){
compound.setInteger("##"+i, values[i]);
}
compound.setBoolean("skipCycleZero",skipCycleZero);
super.writeToNBT(compound);
}
@Override
public void readFromNBT(NBTTagCompound compound) {
for(int i=0;i<20;i++){
values[i]=compound.getInteger("##"+i );
}
skipCycleZero=compound.getBoolean("skipCycleZero");
super.readFromNBT(compound);
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -92,7 +92,10 @@ public CoverToMachineAdaptor(T te,@Nullable InventoryAdaptor invItems,
this.invFluids = invFluids;
this.te=te;
this.fd=fd;
}T te;ForgeDirection fd; private final InventoryAdaptor invItems;
}
T te;

ForgeDirection fd; private final InventoryAdaptor invItems;
private final IFluidHandler invFluids;
@Override
public Iterator<ItemSlot> iterator() {
Expand Down
Loading

0 comments on commit cf5a451

Please sign in to comment.