Jump to content

SoniEx2

Members
  • Posts

    121
  • Joined

  • Last visited

Converted

  • Gender
    Female
  • Personal Text
    I am new!

Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

SoniEx2's Achievements

Creeper Killer

Creeper Killer (4/8)

3

Reputation

  1. Can we get an IDE plugin that is aware that the strings in those things are actually fully qualified names? That way I don't need to use string refactoring which doesn't even work when you use "rename"-type refactoring in IDEA. (proof: make class, put FQN in some string somewhere, open class in editor, run shift+f6 while with the cursor over the class name, etc, watch as the FQN string is untouched. there are also a few other cases where it doesn't work properly.) Also would be nice if it displays an error when the FQN doesn't specify an IRecipeFactory/IConditionFactory/etc. (Alternatively, could someone hack an event-based IRecipeFactory/IConditionFactory/etc registration system with a coremod? That just so happens to also solve my problem, and is much simpler than an IDE plugin.)
  2. Actually @ is invalid in package names. We could also use super for the parent package (a la @Mod.super), which is also invalid in package names. So no, no ambiguity there. Also what do you mean requires parsing binary files? They're already parsed by the time _factories.json is loaded. And you'll need to parse those binary files anyway if you wanna add IDE support (error reporting) for factories.
  3. I'd like to be able to use @Mod as a shorthand for the package in which the @Mod is in, in _factories.json. That is, the following _factories.json: { "conditions": { "zero_max_energy": "@Mod.conditions.ZeroMaxEnergy" } } in assets/powercrops/recipes, should use the modid from the path (powercrops) to fetch the matching @Mod, and use the package it's in. In powercrops case, this is io.github.soniex2.powercrops. Currently I'm using package powercrops for _factories.json stuff (e.g. as in powercrops.ZeroMaxEnergy), because it's easier.
  4. Why's the crop block not a crop by default?
  5. Okay figured out how to use the awful _factories.json-based system, nvm.
  6. I need to select between 2 different recipe outputs based on a config value. How do I do that? Create dummy item name and register an alias based on the config? How do I register alias? Reflect into ForgeRegistry?
  7. It seems the old pre-1.12 way of registering tile entities (in preinit) still works, but is that the right way to do it?
  8. Currently, BlockCrops,getPlantType defaults to EnumPlantType.Plains. It would make more sense if it defaulted to EnumPlantType.Crop instead. (I do not mean BlockBush should default to Crop type, I mean only BlockCrops specifically should default to Crop type!)
  9. Thanks!
  10. Currently in the process of porting to 1.12. Previously, in 1.11.2, I had: @Mod.EventHandler @SideOnly(Side.CLIENT) public void yUNoPerMethodDependenciesClient(FMLPreInitializationEvent event) { yUNoPerMethodDependencies(event); ModelLoader.setCustomModelResourceLocation(powerSeeds, 0, new ModelResourceLocation(new ResourceLocation(MODID, ItemPowerSeeds.ITEMID), "")); ModelLoader.setCustomModelResourceLocation(realizedPowerSeeds, 0, new ModelResourceLocation(new ResourceLocation(MODID, ItemRealizedPowerSeeds.ITEMID), "")); } (https://bitbucket.org/SoniEx2/powercrops/src/3003fdfde9fbaa245b3b366e2a718b27c619570f/src/main/java/io/github/soniex2/powercrops/PowerCrops.java?at=master&fileviewer=file-view-default#PowerCrops.java-91:97) This no longer works in 1.12. How do I register item models in 1.12?
  11. I have a mod. It registers a Block, and an ItemSeeds which uses that Block. I'd like to let other mods replace the Block using the overrides system, without them also having to replace the ItemSeeds. To do that, the only way I know of is to make my own subclass of ItemSeeds that doesn't use the final Block inside it, but rather uses some sort of thing that stays in sync with the registry. This involves overriding all ItemSeeds methods in my subclass, which defeats using ItemSeeds in the first place. The question is, is there a better way?
  12. Sorry, extend the ItemSeeds and override all of the methods that touch the final Block field.
  13. I need to override the ItemSeeds methods, not my own items. I want other mods to be able to override my stuff painlessly.
  14. Those would be IRegistryDelegate? Also, that's not exactly what I'd call "a better way", since I still need to override everything.
  15. What I came up with is, I could extend ItemSeeds and hope nobody's reflecting into the crops field, then override the relevant methods using a static @ObjectHolder field instead of a private final (instance) field, such that I need different classes for different seeds, but at least the Block is automatically updated. That would probably work, but is there a better way I can do it?
×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.