mirror of
https://github.com/MinecraftForge/MinecraftForge.git
synced 2026-11-12 16:27:47 +00:00
Tidying up and more hooks
This commit is contained in:
1 parent
b7861ec04c
commit
abc7b3f2a6
7 files changed
+123
-6
No files matched your search
@@ -41,6 +41,7 @@ import net.minecraft.src.IInventory;
|
||||
import net.minecraft.src.Item;
|
||||
import net.minecraft.src.ItemStack;
|
||||
import net.minecraft.src.KeyBinding;
|
||||
import net.minecraft.src.NetClientHandler;
|
||||
import net.minecraft.src.NetworkManager;
|
||||
import net.minecraft.src.Packet1Login;
|
||||
import net.minecraft.src.Packet250CustomPayload;
|
||||
@@ -379,11 +380,11 @@ public class FMLClientHandler implements IFMLSidedHandler
|
||||
* @return true if you want the packet to stop processing and not echo to
|
||||
* the rest of the world
|
||||
*/
|
||||
public boolean handleChatPacket(Packet3Chat chat, EntityPlayer player)
|
||||
public boolean handleChatPacket(Packet3Chat chat)
|
||||
{
|
||||
for (ModContainer mod : Loader.getModList())
|
||||
{
|
||||
if (mod.wantsNetworkPackets() && mod.getNetworkHandler().onChat(chat, player))
|
||||
if (mod.wantsNetworkPackets() && mod.getNetworkHandler().onChat(chat))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
@@ -392,6 +393,21 @@ public class FMLClientHandler implements IFMLSidedHandler
|
||||
return false;
|
||||
}
|
||||
|
||||
public void handleServerLogin(Packet1Login loginPacket, NetClientHandler handler, NetworkManager networkManager)
|
||||
{
|
||||
Packet250CustomPayload packet = new Packet250CustomPayload();
|
||||
packet.field_44012_a = "REGISTER";
|
||||
packet.field_44011_c = FMLCommonHandler.instance().getPacketRegistry();
|
||||
packet.field_44010_b = packet.field_44011_c.length;
|
||||
if (packet.field_44010_b > 0)
|
||||
{
|
||||
networkManager.func_972_a(packet);
|
||||
}
|
||||
for (ModContainer mod : Loader.getModList()) {
|
||||
mod.getNetworkHandler().onServerLogin(handler);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Called when a packet 250 packet is received from the player
|
||||
*
|
||||
|
||||
@@ -73,9 +73,20 @@ public abstract class BaseMod implements IWorldGenerator, IPickupNotifier, IDisp
|
||||
@Override
|
||||
public final boolean onChat(Object... data)
|
||||
{
|
||||
return onChatMessageReceived((EntityPlayer)data[1], (Packet3Chat)data[0]);
|
||||
receiveChatPacket(((Packet3Chat)data[0]).field_517_a);
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public final void onServerLogin(Object handler) {
|
||||
serverConnect((NetClientHandler) handler);
|
||||
}
|
||||
|
||||
public final void onServerLogout() {
|
||||
serverDisconnect();
|
||||
}
|
||||
|
||||
@Override
|
||||
public final void onPlayerLogin(Object player)
|
||||
{
|
||||
@@ -97,7 +108,7 @@ public abstract class BaseMod implements IWorldGenerator, IPickupNotifier, IDisp
|
||||
@Override
|
||||
public final void onPacket250Packet(Object... data)
|
||||
{
|
||||
onPacket250Received((EntityPlayer)data[1], (Packet250CustomPayload)data[0]);
|
||||
receiveCustomPacket((Packet250CustomPayload)data[0]);
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -300,6 +311,13 @@ public abstract class BaseMod implements IWorldGenerator, IPickupNotifier, IDisp
|
||||
|
||||
}
|
||||
|
||||
public void serverConnect(NetClientHandler handler) {
|
||||
|
||||
}
|
||||
|
||||
public void serverDisconnect() {
|
||||
|
||||
}
|
||||
/**
|
||||
* Called when someone crafts an item from a crafting table
|
||||
*
|
||||
|
||||
@@ -13,6 +13,7 @@
|
||||
package cpw.mods.fml.common;
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* @author cpw
|
||||
*
|
||||
@@ -21,4 +22,5 @@ public interface INetworkHandler
|
||||
{
|
||||
boolean onChat(Object... data);
|
||||
void onPacket250Packet(Object... data);
|
||||
void onServerLogin(Object handler);
|
||||
}
|
||||
@@ -0,0 +1,41 @@
|
||||
--- ../src-base/minecraft/net/minecraft/src/NetClientHandler.java 0000-00-00 00:00:00.000000000 -0000
|
||||
+++ ../src-work/minecraft/net/minecraft/src/NetClientHandler.java 0000-00-00 00:00:00.000000000 -0000
|
||||
@@ -14,6 +14,8 @@
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.Random;
|
||||
+
|
||||
+import cpw.mods.fml.client.FMLClientHandler;
|
||||
import net.minecraft.client.Minecraft;
|
||||
|
||||
public class NetClientHandler extends NetHandler
|
||||
@@ -59,6 +61,7 @@
|
||||
this.field_1212_e.field_6322_g.field_620_ab = p_4115_1_.field_519_a;
|
||||
this.field_35785_d = p_4115_1_.field_35251_h;
|
||||
((PlayerControllerMP)this.field_1212_e.field_6327_b).func_35648_a(p_4115_1_.field_35249_d == 1);
|
||||
+ FMLClientHandler.instance().handleServerLogin(p_4115_1_, this, field_1213_d);
|
||||
}
|
||||
|
||||
public void func_832_a(Packet21PickupSpawn p_832_1_)
|
||||
@@ -510,6 +513,7 @@
|
||||
|
||||
public void func_4113_a(Packet3Chat p_4113_1_)
|
||||
{
|
||||
+ FMLClientHandler.instance().handleChatPacket(p_4113_1_);
|
||||
this.field_1212_e.field_6308_u.func_552_a(p_4113_1_.field_517_a);
|
||||
}
|
||||
|
||||
@@ -1026,4 +1030,13 @@
|
||||
var2.field_35212_aW.field_35759_a = p_50100_1_.field_50072_a;
|
||||
var2.field_35212_aW.field_35758_c = p_50100_1_.field_50071_c;
|
||||
}
|
||||
+
|
||||
+ /* (non-Javadoc)
|
||||
+ * @see net.minecraft.src.NetHandler#func_44028_a(net.minecraft.src.Packet250CustomPayload)
|
||||
+ */
|
||||
+ @Override
|
||||
+ public void func_44028_a(Packet250CustomPayload p_44028_1_)
|
||||
+ {
|
||||
+ FMLClientHandler.instance().handlePacket250(p_44028_1_);
|
||||
+ }
|
||||
}
|
||||
@@ -0,0 +1,26 @@
|
||||
--- ../src-base/minecraft/net/minecraft/src/TileEntityFurnace.java 0000-00-00 00:00:00.000000000 -0000
|
||||
+++ ../src-work/minecraft/net/minecraft/src/TileEntityFurnace.java 0000-00-00 00:00:00.000000000 -0000
|
||||
@@ -1,5 +1,8 @@
|
||||
package net.minecraft.src;
|
||||
|
||||
+import cpw.mods.fml.client.FMLClientHandler;
|
||||
+import cpw.mods.fml.common.FMLCommonHandler;
|
||||
+
|
||||
public class TileEntityFurnace extends TileEntity implements IInventory
|
||||
{
|
||||
private ItemStack[] field_833_a = new ItemStack[3];
|
||||
@@ -251,7 +254,13 @@
|
||||
else
|
||||
{
|
||||
int var1 = p_488_1_.func_1091_a().field_291_aS;
|
||||
- return var1 < 256 && Block.field_345_n[var1].field_356_bn == Material.field_1335_c ? 300 : (var1 == Item.field_266_B.field_291_aS ? 100 : (var1 == Item.field_225_k.field_291_aS ? 1600 : (var1 == Item.field_258_aw.field_291_aS ? 20000 : (var1 == Block.field_333_z.field_376_bc ? 100 : (var1 == Item.field_40417_bo.field_291_aS ? 2400 : 0)))));
|
||||
+ if (var1 < 256 && Block.field_345_n[var1].field_356_bn == Material.field_1335_c) return 300;
|
||||
+ if (var1 == Item.field_266_B.field_291_aS) return 100;
|
||||
+ if (var1 == Item.field_225_k.field_291_aS) return 1600;
|
||||
+ if (var1 == Item.field_258_aw.field_291_aS) return 20000;
|
||||
+ if (var1 == Block.field_333_z.field_376_bc) return 100;
|
||||
+ if (var1 == Item.field_40417_bo.field_291_aS) return 2400;
|
||||
+ return FMLCommonHandler.instance().fuelLookup(var1, p_488_1_.func_21179_h());
|
||||
}
|
||||
}
|
||||
|
||||
@@ -8,12 +8,18 @@
|
||||
public class TileEntityFurnace extends TileEntity implements IInventory
|
||||
{
|
||||
private ItemStack[] field_489_e = new ItemStack[3];
|
||||
@@ -236,7 +238,7 @@
|
||||
@@ -236,7 +238,13 @@
|
||||
else
|
||||
{
|
||||
int var1 = p_194_1_.func_569_a().field_234_aS;
|
||||
- return var1 < 256 && Block.field_542_n[var1].field_553_bn == Material.field_524_c ? 300 : (var1 == Item.field_209_B.field_234_aS ? 100 : (var1 == Item.field_168_k.field_234_aS ? 1600 : (var1 == Item.field_201_aw.field_234_aS ? 20000 : (var1 == Block.field_6047_y.field_573_bc ? 100 : (var1 == Item.field_40239_bm.field_234_aS ? 2400 : 0)))));
|
||||
+ return var1 < 256 && Block.field_542_n[var1].field_553_bn == Material.field_524_c ? 300 : (var1 == Item.field_209_B.field_234_aS ? 100 : (var1 == Item.field_168_k.field_234_aS ? 1600 : (var1 == Item.field_201_aw.field_234_aS ? 20000 : (var1 == Block.field_6047_y.field_573_bc ? 100 : (var1 == Item.field_40239_bm.field_234_aS ? 2400 : FMLCommonHandler.instance().fuelLookup(var1, p_194_1_.func_21125_h()))))));
|
||||
+ if (var1 < 256 && Block.field_542_n[var1].field_553_bn == Material.field_524_c) return 300;
|
||||
+ if (var1 == Item.field_209_B.field_234_aS) return 100;
|
||||
+ if (var1 == Item.field_168_k.field_234_aS) return 1600;
|
||||
+ if (var1 == Item.field_201_aw.field_234_aS) return 20000;
|
||||
+ if (var1 == Block.field_6047_y.field_573_bc) return 100;
|
||||
+ if (var1 == Item.field_40239_bm.field_234_aS) return 2400;
|
||||
+ return FMLCommonHandler.instance().fuelLookup(var1, p_194_1_.func_21125_h());
|
||||
}
|
||||
}
|
||||
|
||||
@@ -66,6 +66,14 @@ public abstract class BaseMod implements IWorldGenerator, IPickupNotifier, IDisp
|
||||
return onChatMessageReceived((EntityPlayer)data[1], (Packet3Chat)data[0]);
|
||||
}
|
||||
|
||||
@Override
|
||||
public final void onServerLogin(Object handler) {
|
||||
// NOOP
|
||||
}
|
||||
|
||||
public final void onServerLogout() {
|
||||
// NOOP
|
||||
}
|
||||
@Override
|
||||
public final void onPlayerLogin(Object player)
|
||||
{
|
||||
|
||||
Reference in new issue
Block a user