Package pneumaticCraft.common

Source Code of pneumaticCraft.common.DateEventHandler

package pneumaticCraft.common;

import java.util.ArrayList;
import java.util.Calendar;
import java.util.Random;

import net.minecraft.entity.item.EntityFireworkRocket;
import net.minecraft.init.Items;
import net.minecraft.item.ItemDye;
import net.minecraft.item.ItemStack;
import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.nbt.NBTTagList;
import net.minecraft.world.World;

public class DateEventHandler{
    private static Random rand = new Random();
    private static boolean initialized;
    private static boolean isIronManEvent;

    public static boolean isEvent(){
        Calendar calendar = Calendar.getInstance();
        if(calendar.get(2) + 1 == 4 && calendar.get(5) == 17) {//MineMaarten's birthday
            return true;
        } else if(calendar.get(2) + 1 == 12 && calendar.get(5) == 31) {//New Years eve
            return true;
        } else if(calendar.get(2) + 1 == 6 && calendar.get(5) == 9) {//PneumaticCraft's birthday
            return true;
        } else if(calendar.get(2) + 1 == 2 && calendar.get(5) == 19) {//MineMaarten released his first mod
            return true;
        }
        return false;
    }

    public static boolean isIronManEvent(){
        if(!initialized) {
            Calendar calendar = Calendar.getInstance();
            if(calendar.get(2) + 1 == 4 && calendar.get(5) == 14) {//Iron Man (1) premiere
                isIronManEvent = true;
            } else if(calendar.get(2) + 1 == 4 && calendar.get(5) == 26) {//Iron Man 2 premiere
                isIronManEvent = true;
            } else if(calendar.get(2) + 1 == 4 && calendar.get(5) == 18) {//Iron Man 3 premiere
                isIronManEvent = true;
            } else if(calendar.get(2) + 1 == 4 && calendar.get(5) == 11) {//Avengers premiere
                isIronManEvent = true;
            }
            initialized = true;
        }
        return isIronManEvent;
    }

    public static void spawnFirework(World world, double x, double y, double z){
        ItemStack rocket = new ItemStack(Items.fireworks);

        ItemStack itemstack1 = getFireworkCharge();

        NBTTagCompound nbttagcompound = new NBTTagCompound();
        NBTTagCompound nbttagcompound1 = new NBTTagCompound();
        NBTTagList nbttaglist = new NBTTagList();

        if(itemstack1 != null && itemstack1.getItem() == Items.firework_charge && itemstack1.hasTagCompound() && itemstack1.getTagCompound().hasKey("Explosion")) {
            nbttaglist.appendTag(itemstack1.getTagCompound().getCompoundTag("Explosion"));
        }

        nbttagcompound1.setTag("Explosions", nbttaglist);
        nbttagcompound1.setByte("Flight", (byte)2);
        nbttagcompound.setTag("Fireworks", nbttagcompound1);

        rocket.setTagCompound(nbttagcompound);

        EntityFireworkRocket entity = new EntityFireworkRocket(world, x, y, z, rocket);
        world.spawnEntityInWorld(entity);
    }

    private static ItemStack getFireworkCharge(){
        ItemStack charge = new ItemStack(Items.firework_charge);
        NBTTagCompound nbttagcompound = new NBTTagCompound();
        NBTTagCompound nbttagcompound1 = new NBTTagCompound();
        byte b0 = 0;
        ArrayList arraylist = new ArrayList();

        arraylist.add(Integer.valueOf(ItemDye.field_150922_c[rand.nextInt(16)]));

        if(rand.nextBoolean()) nbttagcompound1.setBoolean("Flicker", true);

        if(rand.nextBoolean()) nbttagcompound1.setBoolean("Trail", true);

        b0 = (byte)rand.nextInt(5);

        int[] aint = new int[arraylist.size()];

        for(int j2 = 0; j2 < aint.length; ++j2) {
            aint[j2] = ((Integer)arraylist.get(j2)).intValue();
        }

        nbttagcompound1.setIntArray("Colors", aint);
        nbttagcompound1.setByte("Type", b0);
        nbttagcompound.setTag("Explosion", nbttagcompound1);
        charge.setTagCompound(nbttagcompound);
        return charge;
    }
}
TOP

Related Classes of pneumaticCraft.common.DateEventHandler

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.