Added Meteorite Spawn Distance Setting.

Added Charged Quartz Spawn Chance.
All GUI's Parts/Tiles support Custom Localization. ( Fixes #0190 )
Added Crafting Recipe for copying Press Plates.
Fixed Bug: #0189 - Particles don't turn off when set to minimal
Fixed Bug: #0176 - Weird Colorization While Mining Parts.
Fixed Bug: #0152 - TPane drops parts as items and does not insert into system.
Fixed Bug: #0140 - Spatial pylon facade renders oddly (Clear)
This commit is contained in:
AlgorithmX2
2014-03-15 01:58:21 -05:00
parent 754d2c25d9
commit d4ff8e731d
39 changed files with 269 additions and 64 deletions
+48
View File
@@ -42,6 +42,8 @@ import appeng.container.slot.SlotPlayerInv;
import appeng.core.AELog;
import appeng.core.sync.network.NetworkHandler;
import appeng.core.sync.packets.PacketInventoryAction;
import appeng.core.sync.packets.PacketValueConfig;
import appeng.helpers.ICustomNameObject;
import appeng.helpers.InventoryAction;
import appeng.util.InventoryAdaptor;
import appeng.util.Platform;
@@ -58,6 +60,9 @@ public abstract class AEBaseContainer extends Container
final protected BaseActionSource mySrc;
public boolean isContainerValid = true;
boolean sentCustomName;
public String customName;
int ticksSinceCheck = 900;
public void verifyPermissions(SecurityPermissions security, boolean requirePower)
@@ -407,6 +412,49 @@ public abstract class AEBaseContainer extends Container
detectAndSendChanges();
}
@Override
public void detectAndSendChanges()
{
sendCustomName();
super.detectAndSendChanges();
}
protected void sendCustomName()
{
if ( !sentCustomName )
{
sentCustomName = true;
if ( Platform.isServer() )
{
ICustomNameObject name = null;
if ( part instanceof ICustomNameObject )
name = (ICustomNameObject) part;
if ( tileEntity instanceof ICustomNameObject )
name = (ICustomNameObject) tileEntity;
if ( name != null )
{
if ( name.hasCustomName() )
customName = name.getCustomName();
if ( customName != null )
{
try
{
NetworkHandler.instance.sendTo( new PacketValueConfig( "CustomName", customName ), (EntityPlayerMP) invPlayer.player );
}
catch (IOException e)
{
AELog.error( e );
}
}
}
}
}
}
protected void bindPlayerInventory(InventoryPlayer inventoryPlayer, int offset_x, int offset_y)
{
for (int i = 0; i < 3; i++)