Commit graph

66 commits

Author SHA1 Message Date
LexManos
86fd9e0b9c Implemented a 'small' packet system for those mods that need to send rapid, small data packets and who are concered about the overhead of the 250 payload packet. It uses packet 131. 2012-04-18 19:40:48 -07:00
LexManos
23ffbb774f Added generic packet sending function to MinecraftForge class. 2012-04-18 19:17:04 -07:00
LexManos
cdf9361d07 Changed entity Forge spawning code works to be more in line with normal spawning:
(World, double, double double) constructor is nolonger called, normal (World) constructor, and setPositionAndRotation is called afterwords.
yaw, pitch, and yawHead is sent (if the entity isn't a EntityLiving yawHead isn't used)
The datawatcher data is also sent like a normal Entity.
2012-04-15 07:36:17 -07:00
LexManos
0abb4e289a Added new Item function to allow for multiple rendering passes.
Fixed a vinella bug where item layters would not line up for EntityItem's
Added new IItemRendere helper flag for 3d block translations.
2012-04-10 00:43:21 -07:00
LexManos
20e264f9ee Rewrote IItemRenderer to be a more generic and expandable version, Breaks previous interfaces, but this should be the last time the interface changes.
Implemented the MapRender hook ChickenBones requested.
2012-04-09 22:57:52 -07:00
LexManos
6e31fc0185 Changed IGuiHandler's signature to be compatible with both sides. Took out ModLoaderMp reference in README. 2012-04-07 08:08:14 -07:00
LexManos
421f31cce5 Added ChickenBones's request ITextureLoadHandler hook 2012-04-06 23:01:19 -07:00
LexManos
4e575f353f Rewrote the login code to delay full login untill forge fnishes negotiating network IDs. Should fix entities not having proper ID mapings. 2012-04-06 22:59:58 -07:00
LexManos
719e436caa Fix some shadowing warnings. 2012-04-02 01:08:37 -07:00
LexManos
66b3c827cc Updated to MC: 1.2.4 MLMP: 1.2.4 v1
Removed all code that was marked as deprecated, IE: ICustomItemRenderer, and the functions in Configuration
2012-03-27 00:39:23 -07:00
LexManos
dd17ebd009 Cleanup the EffectRenderer patches, Allows custom food items to have the proper particals. Cleaned up special case class in favor of basic java generics. 2012-03-26 02:48:58 -07:00
LexManos
3f0232223d Updated MCP mapings 2012-03-25 22:02:13 -07:00
LexManos
65b3742636 Added MinecraftForge.isClient() function that returns true if you are in the Minecraft Client, (As defined as net.minecraft.client.Minecraft existing) false otherwise.
Fixed a typo on PacketEntitySpawn that caused speed to be assigned improperly.
A little code cleanup.
2012-03-22 19:46:36 -07:00
LexManos
43ac9d6799 Fixed a few typos that CovertJaguire found in The Forge entity handeling code. And re-wrote the connection sequance so that clients get a list of mod ids before anything else. 2012-03-20 22:04:58 -07:00
LexManos
7c7b6d8f46 Readded the deprecated interface ICustomItemRenderer. Added method to enforce deprecation cross Minecraft versions. 2012-03-20 06:43:05 -07:00
newthead
be07279984 Changed render hook checks to all use ItemStack instead of itemID 2012-03-19 11:37:51 -07:00
newthead
0597c30ac2 Merged item rendering interfaces into a single IItemRenderer 2012-03-18 10:49:23 -07:00
newthead
4cf001c644 Updated render hooks and registration to use the IItemRenderer interface 2012-03-17 11:46:15 -07:00
newthead
4366929c9b Merged item rendering interfaces into a single IItemRenderer 2012-03-17 11:21:08 -07:00
newthead
2e24491707 Added additional flag for rendering entity item bobbing 2012-03-17 00:17:57 -07:00
newthead
8e92edb4b7 Cleanup/fix item render hooks 2012-03-16 23:57:59 -07:00
newthead
d7cbbfb3d2 Added render code for inventory items and entity items. 2012-03-16 21:28:08 -07:00
newthead
391fbbd42b Added remaining item render hooks, and fixed a static method access 2012-03-16 21:27:05 -07:00
newthead
7efd97399f Clarified render option for inventory items 2012-03-15 23:47:58 -07:00
newthead
dc0fc67412 Added hook for rendering equipped items 2012-03-15 23:47:28 -07:00
newthead
2524cf273b Added new item render interfaces to Forge client 2012-03-15 21:26:09 -07:00
LexManos
2b40928113 Made mod_MinecraftForge extend NetworkMod, and changed NetworkMod to extend BaseModMP server side. 2012-03-03 18:17:23 -08:00
LexManos
b2305b9d62 Updated The Json enum helper to point to the new packaged names. And fixed a casing change in ModLoader 2012-03-03 18:16:43 -08:00
LexManos
25e57d950a Updated eclipse project for MCP 1.2.3's inclusion of the Start folder in the src folder. 2012-03-03 18:09:05 -08:00
LexManos
c44aac2b39 Ran AStyle over forge code for uniform code formatting, and refactored old code a bit to have cleaner names. 2012-02-24 22:07:58 -08:00
LexManos
f8ad250cc7 Introduced some debugging info into Forge packets. And a debug flag in the client and server packet handlers. 2012-02-22 12:01:38 -08:00
LexManos
745539626d Changed the layout of the missing mods gui a little. Still needs a lot of work to look good. 2012-02-22 11:58:05 -08:00
LexManos
54ec1567b2 Implemented a generic EntityPlayer.openGui system, and the network backend for it to work on server and client. 2012-02-20 23:56:01 -08:00
LexManos
a6f93ed528 Expanded the Mod check to test for missing mods and display a GUI screen for the client if it is missing any.
The client now downloads NetworkMod ID's from the server upon connecting.
2012-02-20 23:54:11 -08:00
LexManos
70fbe4f403 Introuduced NetworkMod, a BaseMod extension and replacement for BaseModMP. All mods that are designed to work in the server environment should extend this.
NetworkMods will be assigned unique ModIDs by the server, and those IDs will be sent to the client upon connection.
Refactored Forge packets to the net.minecraft.src.forge.packets package. And introduced the base ForgePacket class.
Added initial ModList request/response.
2012-02-20 23:50:26 -08:00
LexManos
67a49ccdd2 Split mod_MinecraftForge so that Clients arnt required to have MLMP installed if they don't use a MP mod. 2012-02-16 20:04:40 -08:00
LexManos
2ea1775224 Created a Entity tracking ans spawning system.
Mod creators should call MinecraftForge.registerEntity to register a entity.
All entity ID numbers are Mod Unique. Meaning two mods can have Entity #1.
Added client and server side packet handlers for the 'Forge' channel. For use in internal packets such as the new Spawn packet.
Updated the build scripts to copy over unique server source files now that there actually are some.
For modders:
  If you have a entity that used MLMP's 'owner' system, you should have your entity implement IThrowableEntity
  If you have a entity that implments MLMLP's ISpawnable, you should implement ISpawnHandler.
They provide the same functionality, just in a cleaner, more orginized way and will be the method used when we eventually drop MLMP.
2012-02-10 03:06:08 -08:00
LexManos
ebdc9b9464 Setup .gitignore for eclipse bin dirs.
Fixed line endings in install.sh
Added mod_MinecraftForge for simpler logging of minecraft version in crash reports
Added new hooks for connection events, See IConnectionHandler for more details.
Added Packet250CustomPayload handeling and channel registraction management, see MessageManager and IPacketHandler for more details.
Forge now uses unsed fields in C->S Packet1Login to identify itself. None Forge clients will get a graceful disconnect message instead of the 'Unknown packet 230'
2012-02-07 03:16:57 -08:00
LexManos
43a89e61e9 Fixed a few accessors I missed:
Server RailLogic.getNAdjacentTracks public
Server TileEntityFurnace.getItemBurnTime static

New GUIControls change, Made it into a scroll panel instead of a static position window.
This just makes things look better when multiple mods with KeyBindings are installed
2012-01-17 02:03:29 +00:00
Eloraam
d541e492c4 Fixed some rendering issues. 2011-12-23 00:23:01 +00:00
Eloraam
f4eec04eba A minimalistic hook for rendering world effect overlays or other 3D overlay
data.
2011-12-21 09:57:10 +00:00
Eloraam
dbb5a37449 Major rework of the rendering core. Added support for custom render context
handling.
2011-12-21 09:01:45 +00:00
LexManos
8c9762fd9a Added missing native library path to forge_client project.
Added harvest levels/effectiveness for Axes and Shovels.
2011-12-16 10:06:57 +00:00
LexManos
5c60c2246c Small fix to decrease the number of glBindTexture calls that are immediately overridden. 2011-12-11 11:50:55 +00:00
LexManos
d64c332266 Added my EnumHelper classes, this allows for dynamic creation of Enum values at runtime.
See My post for a example:
http://www.minecraftforum.net/topic/514000-api-minecraft-forge/page__view__findpost__p__10948540
2011-12-09 07:58:32 +00:00
LexManos
141805d5bb Fixed a bug in forge_client project that had a hard link to E:/MCP/jars/bin/paul.jar now points to MCP/jars/bin/minecraft.jar {has the same paulsound libraries}
Major refactoring of the patches, now each modified file gets its own patch file.
Rewrote all the scripts to use new multi-patch system.
Added linux install.sh using new system.
Added some required libraries from GNUWin32 for the windows side of the new setup.bat/update_patches.bat http://gnuwin32.sourceforge.net/
2011-10-09 04:21:29 +00:00
Eloraam
b763c73b74 - Added an ItemStack parameter to IArmorTextureProvider
- Added ISidedInventory
- Added IBonemealHandler
- Added hooks in grow-on-grass and in break tall grass.
- Fixed furnace output of multiple items.
- Added getBlockDropped().
- Bumped version number to 1.1.1.
2011-10-02 08:55:31 +00:00
Space Toad
5c74f5efb9 fixed SMP bug related to BuildCraft issue #226 2011-09-07 19:57:53 +00:00
Eloraam
878cac2697 A few small patches to fix obscure piston rendering bugs. 2011-09-07 15:14:01 +00:00
Eloraam
8b5440b351 Optifine compatibility patch. 2011-09-07 14:58:08 +00:00