package com.fireball1725.twitchnotifier.helper;
import com.fireball1725.twitchnotifier.TwitchNotifier;
import com.fireball1725.twitchnotifier.config.ConfigBlockSpawnSettings;
import com.fireball1725.twitchnotifier.network.message.PacketSpawnBlock;
import com.fireball1725.twitchnotifier.util.SpawnBlock;
import net.minecraft.client.Minecraft;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.ItemStack;
import net.minecraftforge.fml.relauncher.Side;
import net.minecraftforge.fml.relauncher.SideOnly;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
public class BlockSpawnHelper {
private static List<SpawnBlock> spawnBlockList = new ArrayList<SpawnBlock>();
public static void addSpawnBlock(ItemStack itemStack) {
if (ConfigBlockSpawnSettings.spawn_block_enabled)
spawnBlockList.add(new SpawnBlock(itemStack, ConfigBlockSpawnSettings.spawn_block_waitTime * 20));
}
public static void updateTick() {
Iterator<SpawnBlock> iterator = spawnBlockList.iterator();
while (iterator.hasNext()) {
SpawnBlock spawnBlock = iterator.next();
if (spawnBlock.decrTimeTillSpawn() == 0) {
spawnBlock(spawnBlock.getItemStack());
iterator.remove();
}
}
}
@SideOnly(Side.CLIENT)
private static void spawnBlock(ItemStack itemStack) {
EntityPlayer player = Minecraft.getMinecraft().thePlayer;
TwitchNotifier.network.sendToServer(new PacketSpawnBlock(itemStack, (int) player.posX, (int) player.posY, (int) player.posZ));
}
}