Commit graph

251 commits

Author SHA1 Message Date
LexManos
742e93caec Fix issue with DimensionManager.shouldLoadSpawn 2012-12-04 02:01:01 -08:00
Christian
e3dfb1e3b7 Fix #289 2012-12-02 22:00:12 -05:00
Christian
784ad96194 Add in some additional ticket loading callbacks for ChickenBones. Closes #284
Add in a call to determine if there are possible chunktickets for a world. This should let
Mystcraft and other dynamic world generating mods check if they should immediately load
a world based on existing chunk tickets.
2012-12-02 00:56:53 -05:00
LexManos
fdb2933ceb Fix logic issue in ForgeChunkManager.ticketCountAvaliableFor(username) PR 2012-11-29 04:04:03 -08:00
LexManos
096989d4eb Small change to fix loading configs. 2012-11-27 22:43:23 -08:00
LexManos
4a748beb69 Fix potential NPE in EntityJoin handler and print warning. 2012-11-27 16:12:54 -08:00
LexManos
cbe52abe42 Exposed some ChunkLoader information for PR #278 2012-11-27 15:28:59 -08:00
LexManos
7b6d65ce85 Small tweak to config to use Treemap 2012-11-27 14:53:43 -08:00
LexManos
530c19293b Fixed AIOOB issue with new sanity check in getBlock 2012-11-27 12:24:52 -08:00
LexManos
50426ea0fe Fix potential NPE in saving a property that didn't define a type. 2012-11-27 02:14:20 -08:00
LexManos
81b5db6f37 Added new functions to the Config class to allow for specification of comments when getting properties.
Added new getTerrainBlock whihc will limit the resuling ID to < 256, useful for world gen.
Calls to getBlock with IDs less then 256 will be assigned values above 256 {Thus freeing up terrain gen slots}
Made ConfigCategory implement Map<String, Propertery> should fix compatibility with most mods that broke two builds ago.
2012-11-27 02:06:29 -08:00
LexManos
adc2d61feb Merge pull request #277 from Xhamolk/patch-1
OreDictionary addition: getOreID(ItemStack)
2012-11-27 00:28:29 -08:00
LexManos
88f9fa75c9 New nested configuration category support, for PR #258 2012-11-26 23:46:01 -08:00
LexManos
07a6e4ed5f Fixed random chest items not generating to there max stack sizes. 2012-11-26 20:25:35 -08:00
Xhamolk_
c0276a63f7 OreDictionary addition: getOreID(ItemStack)
Allow getting the oreID from a ItemStack, as an alternative from getOreID(String).

Now is easier to exchange items for their equivalencies through the OreDictionary.
2012-11-26 21:22:11 -06:00
iChun
1e8c2a9acf Add check that Entity saves to disk before saving entity to saved chunkloading data.
Returning false to addEntityID prevents the entity from being saved (cred to LexManos)
Entities which do not save to disk but are chunkloaders causes errors the next time the world loads. This ought to fix it.
2012-11-24 16:27:17 +08:00
Christian
913f3adade Stupid eclipse resetting preferences. Spaces, not tabs!!! 2012-11-18 19:33:15 -05:00
Christian
ed252ad8ed Add in events when forcing and unforcing chunks. Hope this works for you ChickenBones! 2012-11-18 19:28:02 -05:00
Christian
7306c0c1f3 Update to MC 1.4.5
Update FML: 43d3042
43d3042 Clean up a patch
fec221f Update FML for MC 1.4.5
b0f0635 Fix for ModLoader static overrides not displaying.
23a2513 Fix up derpy file name handling: closes #127 Fix up duping childmods: cl
a6eaa2b Fix spelling issue.
c6a0741 FML setup should now download and verify all the minecraft files needed
5a1930e Small fix to some MCP metadata for pre2
418deba Update to MC 1.4.4
4ff2cff Fix bug when a modloader mod is run on a dedicated server and has a conn
2012-11-16 17:06:12 -05:00
Christian
ca16b4b1bd Some liquid events. Non-API breaking. Add them at your leisure. This helps liquids know
what's happening to them. In case they're volatile or something ;)
2012-11-16 01:28:29 -05:00
Christian
da00985e5f Another difference 2012-11-15 21:54:19 -05:00
Christian
5a72d49359 Fix fillLiquidContainer - return null, not the empty container for
previous API compatibility
2012-11-15 21:46:38 -05:00
Christian
0f7811624b Change name to LiquidContainerRegistry. Fix up missing API. This better be it now! 2012-11-15 06:43:16 -05:00
King Lemming
213fb9bd1a Fixed oversights in liquid registry, added functionality for instant checks as requested by CJ.
Liquid list return is now secure.

Signed-off-by: King Lemming <kinglemming@gmail.com>
2012-11-15 02:43:35 -05:00
Christian
223aca8a28 Rename some liquid stuff for more sensible naming. Tweak API slightly. 2012-11-14 21:22:44 -05:00
King Lemming
73a2a5d78a Liquid Manager Rewrite - slightly more memory usage, loads more efficient at runtime.
Added default Lava and Water registrations to Liquid Manager.
Removed method which relied on flawed assumption that a given liquid only had a single type of container.

Signed-off-by: King Lemming <kinglemming@gmail.com>
2012-11-14 20:27:47 -05:00
Christian
a759353afa Add in the basic IBlockLiquid interface. The actual block implementation
will follow.
2012-11-13 21:54:57 -05:00
Christian
2fb5ea1008 Change getLeft to getRotation, around any axis. 2012-11-13 15:05:49 -05:00
Christian
1072a8f0ae Some new stuff on the liquid API for better RP2 interaction. Coming soon: blocks! 2012-11-13 14:27:31 -05:00
Christian
52ac3c1af8 Tweak liquidcontainer API for sidedness capability 2012-11-12 21:41:46 -05:00
LexManos
95ec601569 Fix breaking despite cancel in creative mode for PlayerInteractEvent OR #247 2012-11-12 17:34:26 -08:00
LexManos
9803c9e83e Added saplings and leaves to the ore dict. PR: #242 2012-11-12 17:07:33 -08:00
Christian
58fc306bf2 As agreed, liquid API from BuildCraft has been migrated to minecraft forge. There will be cleanups to follow,
including sided handling and client rendering tweaks. Stay tuned!
Tweak forgedirection for a couple of naming constants
2012-11-10 21:27:08 -05:00
Christian
477e9bfc2b Add toLeft rotational data to ForgeDirection 2012-11-09 22:51:37 -05:00
LexManos
ba55660dc8 New field in ForgeDirection to hold just the valid directions. And made getOrientation a bit more efficient. 2012-11-09 18:00:03 -08:00
LexManos
c8753aa104 Bumped version number for 1.4.4 2012-11-08 20:44:17 -08:00
LexManos
955683349d Ore Dictionary Improvements, replaces vanilla recipes with OreDict recipes for some vanilla items. Thanks Covert. 2012-11-05 16:15:43 -08:00
LexManos
2f0dcebbf9 Readdaed teleporter sensitive versions of the teleport function
Added per-world list of custom teleporters, Modders, use World.Load to populate this list.
Changed the definition of our version schemes.
2012-11-02 22:16:32 -07:00
LexManos
c19ae55885 Update FML: Updated MCP mapings, and fixed StartServer 2012-10-31 10:16:46 -07:00
LexManos
bcc8dcd30c Merge pull request #232 from CovertJaguar/patch-7
Added vanilla wood + dye to the Ore Dict
2012-10-28 07:45:48 -07:00
LexManos
820d61d56d Added Stonghold, Village, and Spawn biome management helpers for PR 207 2012-10-28 07:38:38 -07:00
CovertJaguar
9bb6726d31 Added vanilla wood + dye to the Ore Dict
Should help simplify interaction between mods that add similar items.
2012-10-28 07:24:01 -07:00
LexManos
d7de1e8be2 Remove some debug code 2012-10-28 05:42:55 -07:00
MinecraftForge
eb96aa9d04 Merge pull request #231 from ShadwDrgn/master
ServerChatEvent
2012-10-28 04:53:10 -07:00
ShadwDrgn
24cec145ca Add event to cancel or change chat messages sent from server 2012-10-28 07:50:57 -04:00
ShadwDrgn
77bd22d3c1 Add event to cancel or change chat messages sent from server 2012-10-28 07:31:53 -04:00
LexManos
5650ae7ee9 Added system to place all configs that use Forge's Configuration function into a single file on disc. Optional config to enable this. Blame MattaBase for this idea.. 2012-10-28 04:18:12 -07:00
LexManos
dc7db59f74 Pickblock will new compare NBT data, should allow mods to refine there result better. 2012-10-28 04:15:53 -07:00
LexManos
c689a982b5 Added a per-world MapStorage feature that provides a method to store data files associated with a specific world, as well as fixes the issue with villagers loosing there village. {Where villagers wouldn't go inside at night} 2012-10-26 22:37:41 -07:00
Christian
efcda1a946 Fix the accessor and type on World.getPersistentChunksFor()
Update FML: 8bd98c3
8bd98c3 Fix a small problem with the new MCP container- it can cause NPEs. Nice.
34cc42d Fix up some javadoc complaints
2012-10-26 21:13:56 -04:00
LexManos
0cb74abe8b Update to 1.4.2, obf stayed the same, so only small revision. 2012-10-24 13:55:04 -07:00
LexManos
043f570ff9 Update to MC 1.4.1 and Forge 6.0.0 2012-10-23 16:04:58 -07:00
LexManos
5ca845f069 Fix up the setHandeled/setHandled for events, it is now a generalized setResult, the meaning of which is defined by each event. 2012-10-22 00:29:28 -07:00
LexManos
ad51183584 Cleanup mirrored things in ShapedOreRecipe to address issue 208 and issue 210 2012-10-21 23:19:11 -07:00
LexManos
a09ea82fc7 Remove deprecated code. 2012-10-21 23:18:09 -07:00
LexManos
2e4a43e875 Updated Forge version to 5.0.0, for 1.4 2012-10-21 10:27:07 -07:00
LexManos
4a4166fe7e Update for new names in 1.4 2012-10-21 10:00:02 -07:00
LexManos
8ce75c4ab5 Bump version to 4.3, final for 1.3.2 2012-10-19 18:57:24 -07:00
Christian
f3443d3e02 Fix classloading issue preventing JRockit from running forge 2012-10-19 09:30:31 -04:00
LexManos
30f74ac44c Make Item.createEntity only call when its specifically a EntityItem, not a subclass of it. 2012-10-18 16:55:35 -07:00
Christian
8d5b8a81fe Reorganize the forced chunks a bit- offload the cost of immutable map building to the mods, rather than the chunk tick 2012-10-14 12:30:33 -04:00
LexManos
5514bd39c9 Add some accessors to teh ChunkLoader tickets. 2012-10-11 18:27:51 -07:00
Christian
8e92472409 Use weak references to the worlds in our maps. WorldClient would otherwise
leak all over the show.
2012-10-06 21:32:41 -04:00
Christian
641a7b033f Fix problem with spawning custom entities in hotloaded dimensions. 2012-10-04 17:35:22 -04:00
Christian
b82a462f64 Fix a problem with re-entering worlds too quickly- the worlds will now *always* save before the menu re-appears. 2012-10-04 00:07:59 -04:00
Christian
c5f74a8ba0 Update forge to 4.2 2012-10-03 02:00:19 -04:00
Christian
0162519347 Remove dead WorldInfo patch. Tweak dimension code a bit for better naming, and use the new FML world loading facilities
Update FML: d0e7c9e
d0e7c9e Update patches *sigh*
f3e1cac Add in a savehandler strategy for reading and writing data to the world save. This service is only available to coremods via the WorldAccessConta
51fb513 Add in some bukkit supporting code. Most of this is unimplemented until the bukkit coremod is complete.
65c9fdd New stuff on the ModLoader! Risu has been busy. Closes #114
c1d4458 Mods can now declare a range of minecraft versions they will run against
2012-10-03 01:54:40 -04:00
XCompWiz
32ca2b4fb0 Improves DimensionManager
Adds handling for unloading and hotloading of worlds, fixes some typos,
allows for dimensions to be unregistered (allowing save specific
dimension registrations), general changes to match these features.
2012-10-03 02:34:50 +03:00
LexManos
92923a3521 Expanded DungeonHooks to allow for adding of custom DungeonLoot values directly, allowing for better control over the generated items. 2012-09-30 01:01:00 -07:00
LexManos
33a6ec9a70 Made PlayerEvent.BreakSpeed fire when a player cannot harvest the block. Issues #191 and #188 2012-09-30 00:48:22 -07:00
Christian
b227d7ce73 Dormant chunk cache might actually work now, and not mix chunks across worlds 2012-09-28 17:04:26 -04:00
Christian
fbae118a2f A few requested features of ForgeChunkManager. Mods can specify a
chunkloading config directly in the config file, including chunk
loading overrides if they wish (and the config allows them).
Also added "player" tied tickets that bind to the player and not the
mod's quota.
2012-09-27 23:38:27 -04:00
LexManos
0e5c0be23e Added preliminarty Player Interact event heavily based on the bukkit event. 2012-09-26 21:18:18 -07:00
LexManos
a421e51805 Fix bug in last commit that caused block to not break. 2012-09-26 21:17:26 -07:00
LexManos
63aa706dcf Add PlayerEvent.HarvestCheck and PlayerEvent.BreakSpeed for dealing with things related to a player harvesting a block. 2012-09-26 17:54:15 -07:00
Christian
5fb999fa22 Add in an "EntityEvent.EnteringChunk" event. Useful for your entity chunkloading stuff. 2012-09-26 08:52:40 -04:00
LexManos
1df9b144cd Merge remote-tracking branch 'origin/master' 2012-09-26 01:45:26 -07:00
LexManos
34ac4f5cec Support for no BOM. 2012-09-26 01:30:22 -07:00
Christian
384f795d52 Some more tweaks to the chunkloading code. The world.load event fires slightly later- once the entity watcher is
set up, so entities can actually load into the server world. Also, tickets actually save and load properly
and null entities don't break the server
2012-09-25 19:12:10 -04:00
LexManos
5d3371ab3b Fix Configuration.getItem to return pre-shifted values suitible to pass into Item constructors. 2012-09-25 05:04:56 -07:00
LexManos
27e4c3c3d5 Changed Configuration to use overloaded methods, and changed the order of arguments to be Category, Key, Value instead of Key, Category, Value to hopefully help cleanup some peopels code.
Added function to get a free Item id. Will only accept values that are not in the block space. Needs testing.
Marked all the old getOrCreate* functions as deprecated.
2012-09-24 22:33:56 -07:00
LexManos
1804f22182 Configuration will now attempt to detect the encoding of the file using the Byte Order Mark. 2012-09-24 20:56:52 -07:00
Christian
8c74d81103 Fix up some config file handling to be even more resilient. 2012-09-24 23:15:36 -04:00
Christian
93e7ac7b55 Support quoting in property and category names for almost all possible characters allowed 2012-09-24 23:15:22 -04:00
Christian
76f3b26aa3 Fix some errors if the config is unparseable. It should log an exception and carry on with defaults. 2012-09-24 23:03:31 -04:00
Christian
a776afe1bf More modifications to the ticket callback handling system. There are up to two callbacks during world loading now. One to allow
selective preference for ticket types. The other to actually allow the mod to force chunks.
2012-09-24 22:07:39 -04:00
Christian
595d3e9e79 Some changes to the ForgeChunkManager.
Null modData is allowed now.
The entity id is actually properly persisted in the ticket now.
There is a new "orderedLoadingCallback" that allows you to provide a preferred ticket loading order in case of "excess tickets". Also, tickets
that are not in the returned list are now unregistered.
There is a way to resort the chunks in the forced chunklist on a ticket now.
Log the dormant cache configuration
2012-09-24 17:38:41 -04:00
Christian
0fd2b137ac Some more fixes for chunkloading code. Works very reliably now. 2012-09-23 23:08:38 -04:00
Christian
3022d556a8 Delete some debug code 2012-09-23 23:08:38 -04:00
Christian
56a87604f6 Simple chunk caching capability for the chunkloader. This will store "dormant" chunks in a
configurable cache, potentially saving the cost of reloading them from disk.
2012-09-23 23:08:38 -04:00
Christian
0b68cf93ff And a concurrentmodificationexception in the same code 2012-09-23 23:08:38 -04:00
Christian
0ac8d6ad3e Fix NPE in ForgeChunkManager 2012-09-23 23:08:38 -04:00
Christian
9640c5dcf9 A lot of tweaks to the chunkloading for entity behaviour. Entities are now bound by a new
persistent id they *all* have, on the server side.
2012-09-23 23:08:38 -04:00
Christian
c684360f51 Working cross dimensional implementation of chunkloading for Forge. 2012-09-23 23:08:38 -04:00
Christian
d21e3ae218 Simple chunkloading implementation 2012-09-23 23:08:38 -04:00
LexManos
28d2460611 New Plant API that allows for custom plants/soils. 2012-09-20 19:53:43 -07:00
LexManos
c3f9fed484 Added new hooks for modifying the items generated in chests during world gen. 2012-09-20 18:45:33 -07:00
LexManos
de24eea885 Fix potential NPE in Custom item entity span code caused by item id misconfigurations. 2012-09-17 04:56:26 -07:00
LexManos
61c21218e2 Fix recursion issue with new special item entity code. 2012-09-17 04:40:46 -07:00
LexManos
62700fa7a8 96537dc - Fixup Item in hand rendering of textures > 16x
e88ddc5 - Make the exception print for headless servers if the Downloader cant initalize.
f24ff07 - Remove a bunch of warning about javadoc, not a real fix, but no more warning.
3420ea7 - Update MCP Mapings
87104f0 - Makes GetModSrc check the common folder when attempting to extract source files
640446b - Tie parent/child containers together again. Should close #96
2cf4917 - Village mating produces added villagers, and the egg should place added villagers too. Closes #97.
6394ee8 - Clean up stale references to the Player stored in the NetworkRegistry, closes #100
7299e05 - Merge pull request #99 from CovertJaguar/patch-1
c4bd040 - More readable init logs
2012-09-15 19:36:08 -07:00
LexManos
12d4e39bdd Bump version to 4.1.2 to mark the end of todays changes. 2012-09-11 19:16:54 -07:00
LexManos
72bba82150 Read/Write config files as UTF-8 instead of ANSII, should fix issue with Turkish people. 2012-09-11 18:00:51 -07:00
LexManos
de47895e02 Fix potential issue with custom events where the constructor is not visible from the EventBus class, Should never arise but meh. 2012-09-11 17:49:21 -07:00
LexManos
aeebb6e9f9 Add ability for Items to create custom Entities for themselves when added to the world, PR: #151 2012-09-11 17:35:53 -07:00
LexManos
96be8c4f19 Move Forge init message to MinecraftForge.initalize 2012-09-11 17:34:58 -07:00
LexManos
65ddfd49af Make EntityJoinWorldEvent Cancelable properly 2012-09-11 17:34:37 -07:00
LexManos
03d1e51764 New EntityItem related events
Fixed player death event in SMP
Added Player specific drops event
Added generic EntityJoinWorldEvent
2012-09-11 15:27:34 -07:00
LexManos
da501613ac Clean up some javadoc warnings. 2012-09-11 13:11:17 -07:00
Christian
66b60bc85e Remove all references to ModLoader 2012-09-09 10:02:21 -04:00
LexManos
03b3017e51 Bump version to 4.1.1 2012-09-08 21:47:14 -07:00
LexManos
7b8914b24f Fix lighting issue for air related to 4096 fix. 2012-08-22 18:34:53 -07:00
LexManos
6f89cf54b8 Removed deprecated ISpawnHandler, that never worked in 1.3.2 so noone should be using it. See FML's replacement. 2012-08-22 18:03:10 -07:00
LexManos
0b1997a9e6 Made helper hooks for EntityLiving and EntityRenderer hooks for Optifine 2012-08-22 18:02:14 -07:00
LexManos
0680e211fc Pickblock now replaces the currently selected item if it could not find a empty space. 2012-08-22 13:46:01 -07:00
LexManos
3a726c6e68 Fixed Forge's 4096 block filler initalization. 2012-08-19 17:59:06 -07:00
LexManos
20e38dca99 Fix EntityItemPickupEvent 'pop' sound spamming. 2012-08-17 13:31:47 -07:00
Christian
4297a348db Update FML to include some ML compatibility fixes. Minimap should run, assuming he
recompiles against standard ML interfaces.
This updates to official MCP 7.2, so you'll need to rebuild your workspace (some
small but important patches to MCP went in)
2012-08-16 14:30:14 -04:00
LexManos
e31b6c0be4 Allow white space in the property name. 2012-08-16 09:11:04 -07:00
LexManos
7ad090b5f1 Whops 2012-08-15 04:38:10 -07:00
LexManos
bed6c410b6 Fix potential index exception in ForgeDirection 2012-08-15 04:37:45 -07:00
LexManos
fc430243d1 Rename Orientation to ForgeDirection {Damn MCP naming a class Direction already} 2012-08-15 04:28:09 -07:00
LexManos
d9423a4f25 New Command event. 2012-08-15 02:01:38 -07:00
LexManos
e6b61cb33d Updated Orientation with new helper functionality. 2012-08-15 01:31:02 -07:00
LexManos
393852920c Fixed bug in DimensionManager that would cause Index error for custom dimensions, also made WorldProviders aware of what dimension they are. 2012-08-14 23:59:15 -07:00
LexManos
3b18bfae40 Readded patch to allow for use of custom teleporter for transfering dimensions. 2012-08-14 15:03:40 -07:00
LexManos
de43520870 Fix PickBlock 'ghost item' bug when picking with a item selected. 2012-08-13 23:05:39 -07:00
LexManos
1c7d20ad36 Delete dead IGuiHandler 2012-08-12 20:40:35 -07:00
LexManos
bef0090af0 Should fix commands.py patching not working properly first run. 2012-08-12 14:32:01 -07:00
LexManos
a024be74e6 Updated FML, Should fix a lot of installing issues for MCP.
Made patches error and not apply if the target file is not found.
Updated Event Transformer to add a default constructor...
Fixed 4096 setup code in MinecraftForge.initalize()
2012-08-12 05:14:32 -07:00
LexManos
6b4288d00f Updated FML, fixed custom tool hooks, and spawn protection/player reach hooks. 2012-08-11 14:45:48 -07:00
LexManos
55636eabab Updated FML, updated patches 2012-08-10 20:30:59 -07:00
LexManos
f374723610 Update fml, impelemnted Diemsnion API stuff. 2012-08-10 18:15:10 -07:00
LexManos
acdcfd0a56 Added new pick block hook for blocks and entites to allow for better grained control of the result. 2012-08-10 02:09:11 -07:00
LexManos
d14b1b4e1f Fix oreientation bug causing levers not being able to place. 2012-08-10 02:08:26 -07:00
LexManos
44e6fd90c9 Moved over Configuration 2012-08-10 00:31:39 -07:00
LexManos
a759939e13 Delete conf, server compile, update fml, and fix install script. 2012-08-09 18:37:52 -07:00
LexManos
f31b8a98a9 Cleaned up some more, fixed infinite loop with cancelable annotation, Client now compiles and enters world just fine. 2012-08-09 16:47:35 -07:00
LexManos
dae4a07c60 Updated Client side patches for the new Merged MCP workspace. 2012-08-09 03:06:41 -07:00
LexManos
316bf8d448 Finished World and EntityMinecart patches. 2012-08-07 16:54:14 -07:00
LexManos
41f1a60f32 More conversions, added all the entity living events. 2012-08-07 01:24:06 -07:00
LexManos
4e91293271 More work, moved over packet stuff, need to change everything to use new NetworkMod system 2012-08-06 20:45:37 -07:00
LexManos
e58129ddd2 A bulk of more patches converted, updated fml 2012-08-06 17:52:23 -07:00
LexManos
31a908b754 More patches converted.
Refactored some of the events to be a better hiarachy.
2012-08-06 15:07:53 -07:00
LexManos
80ad4be5b1 Some more patch migration before bed. 2012-08-06 03:54:57 -07:00
LexManos
d286154997 More progress on converting patches from 1.2.5 2012-08-06 03:35:57 -07:00
LexManos
545b905f11 Implemeneted adding grass seeds, as well as IShearable for BlockTallGrass 2012-08-05 19:41:18 -07:00
LexManos
cc74f7d7d0 Implemented BonemealEvent (IBonemealHandler replacement), and bonemeal making grass. 2012-08-05 19:15:13 -07:00
LexManos
2d7deacead Renamed MinecraftForge.eventBus to EVENT_BUS as it's constant. 2012-08-05 19:14:02 -07:00
LexManos
bb0f84925e Moved in OreDictionary stuff to new system. IOreHandler is replaced by OreDictionary.OreRegisterEvent 2012-08-05 17:59:53 -07:00
LexManos
1fb042621c First push of some small patches and introduction of basic events. As well as the first cases for Forge's Access Transformer 2012-08-05 03:20:07 -07:00