Jump to content

EmeraldJelly

Members
  • Posts

    57
  • Joined

  • Last visited

Posts posted by EmeraldJelly

  1. Hi so im using forge version 1.12.2.

     

    Trying to work on a pretty interesting mod with good knowledge of java and how it works, just not the Forge API and i have trouble sometimes finding where to properly learn the entire API and how it works, there should be a forge school or something.

     

    Anyways, i'm trying to create a Multiblock structure. Basically i'm making a sacrifice bowl, that needs to be surrounded by 3 1x1 shrine blocks 2 blocks spaced out from each other. I want the shrines to spawn particles to move toward the bowl then eventually transforming the contents of the bowl (just a container with a inventory of 4 **3 ingredients, 1 output**) into an item and ejecting it out of the inventory as an item spawn.

     

    I'm not sure if i need to use multiblocks to do this, but it does require multiple blocks to work (all be it not connected). It's more of a crafting altar i suppose, similar to thaumcraft if that is a good reference point. Any assistance would be much appreciated, thanks!

  2. Hi there!

     

    I'm trying to figure out how to make particles move around in specific ways, the only problem being is that I am very bad at math. (As in I have a major problems learning when it comes to specifically mathematics) I understand Java and know how to program, got a 4 on an AP Comp Sci A test (no idea if that means anything). I just seem to struggle with the Math side of things no matter how hard I try to understand it. I suppose i'll try to explain what i'm trying to do with the particles and perhaps someone could explain to me exactly what to do / understand how to do it so I can apply the knowledge in the future.

     

    List of Effects i'm trying to accomplish for my mod:

     

    - Vacuum Effect (Particles spawning in random locations in a spherical radius, and moving towards a center point starting slow and rapidly picking up speed as it gets closer to the center point)

    - Orbit Effect (Particles moving around in an ring like orbit, would like to cover how to rotate the axis' to make the ring turn)

    - Wave Effect (Particles moving in a wavy line from Point A to point B just picture a squiggly line in 3D)

     

     

    I know this is a lot to ask for, just please don't go tell me to study math or something because I'm already trying and struggle with it everyday.

     

    Thanks!

     

    - EmeraldJelly

     

    P.S. I already know how to physically spawn particles at specific locations I just don't know the math / functions to manipulate them. I.E. Make them move.

  3. Hi! I'm trying to figure out how to make a ring of particles around a specific location. Can someone please help me with that, thanks! <3

     

    Here is the code I have so far, math I believe is right but it simply isn't working. 

     

    https://hastebin.com/etizajuhoj.cpp

     

    The spawnParticleGlow code is as followed.

     

    public static void spawnParticleGlow(World world, float x, float y, float z, float vx, float vy, float vz, float r,
    			float g, float b, float a, float scale, int lifetime) {
    		if (MysticalLib.proxy instanceof ClientProxy) {
    			counter += random.nextInt(3);
    			if (counter % (Minecraft.getMinecraft().gameSettings.particleSetting == 0 ? 1
    					: 2 * Minecraft.getMinecraft().gameSettings.particleSetting) == 0) {
    				ClientProxy.particleRenderer.spawnParticle(world, LibRegistry.PARTICLE_GLOW, x, y, z, vx, vy, vz,
    						lifetime, r, g, b, a, scale);
    			}
    		}
    	}

     

     

    Thanks! :) 

  4. 9 minutes ago, JaredBGreat said:

     

    It wanted a unique String, so I gave it one.

     

    Changing it to null (what I supposed it should have been), neither does using another string.  The item block for a log still looks like a sapling, and all the others still look like black-and-purple cubes.  Neither does using a newer Forge version.

     

    Frankly, I tire of the endlessly the increasing over-complication and constant re-learning what I just learned, the repeated breaking of everything.  More and more this is not a fun hobby -- and what good is hobby that isn't fun, that just causes stress?  More and more I think my time with this game is coming to a final close.

     

    So if you are tired of modding and don't enjoy it, why do it. If you're frustrated thats understandable but please, if you do not enjoy doing something, don't do it.

     

    I can't offer help because I am not very experienced in modding but, that is the only advice I can give to you.

    • Like 1
  5. Hey, so im looking to create a new type of energy using forges energy system thingy...

     

    To give some background as to what I mean exactly here's an example:

     

    EU is an Type of Energy, RF, AE, and so on...

     

    I want to create my OWN type of energy and make it so my blocks only accept it. How do I do this and yes I checked http://jabelarminecraft.blogspot.com/p/minecraft.html and while it is helpful, it doesn't really show me how I can do this specifically. The part im looking for that blog post was vague about it. Specifically LexManos' Explaination on it: 

    • "IF modders want to be discriminating and create sub-energy systems then they can. It's as simple as 'public interface ThaumcraftMana extends IEnergyStorage{}' Caps.register(ThamcraftMana.class...)"

     

    Say for instance I want to create something called "ArcaneFlux" how would I go around doing that from the start. The only code I have so far for it is an interface but I dont really know how I can well.. use it.

     

    Here is the code I guess: 

     

    package emeraldjelly.mystica.api;
    
    import net.minecraftforge.energy.IEnergyStorage;
    
    public interface IArcaneFlux extends IEnergyStorage {}

     

     

    Thanks, EmeraldJelly

  6. 46 minutes ago, Draco18s said:

    Hit the debugger again, try and figure out what piece of logic isn't doing what you expect.

    In the time it took you to respond I did, I still do not have any clue what it's doing, its being weird... Can't explain it.. Ill send the code that has changed.

     

    Spoiler
    
    package emeraldjelly.mystica.util.recipe.recipetypes;
    ;
    import emeraldjelly.mystica.api.ICauldronRecipe;
    import emeraldjelly.mystica.init.ModItems;
    import net.minecraft.item.Item;
    import net.minecraft.item.ItemStack;
    import net.minecraftforge.oredict.OreDictionary;
    
    import java.util.ArrayList;
    import java.util.Arrays;
    import java.util.List;
    
    
    public class CauldronRecipe implements ICauldronRecipe { //What am  Missing in this class? Where do I make all of this code happen?
    
        public static ItemStack resultItem = ItemStack.EMPTY;
        public static List<Item> items = new ArrayList<Item>();
    
        public  CauldronRecipe(List<Item> items, ItemStack output) {
           this.resultItem = output;
           this.items = items;
        }
    
        @Override
        public boolean matches(List<Item> itemStacks) {
            List<Item> items1 = ((List) ((ArrayList) items).clone());
            for (int i = 0; i < itemStacks.size(); i++) {
                Item itemstack = itemStacks.get(i);
                if (itemstack != null) {
                    boolean flag = false;
                    for (Item itemstack1 : items1) {
                        if (itemstack == itemstack1 && (
                                itemstack1.getMetadata(new ItemStack(itemstack1)) == OreDictionary.WILDCARD_VALUE ||
                                        itemstack.getMetadata(new ItemStack(itemstack)) == itemstack1.getMetadata(new ItemStack(itemstack1)))) {
                            flag = true;
                            itemStacks.remove(itemStacks);
                            break;
                        }
                    }
                    if (!flag) {
                        return false;
                    }
                }
            }
            return itemStacks.isEmpty();
        }
    
        @Override
        public ItemStack getCraftingResult() {
            return resultItem;
        }
    
    }

     

×
×
  • Create New...

Important Information

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