ActuallyAdditions/src/main/java/ellpeck/actuallyadditions/gadget/cloud/SmileyCloudEasterEggs.java

341 lines
12 KiB
Java
Raw Normal View History

2015-08-29 14:33:25 +02:00
/*
* This file ("SmileyCloudEasterEggs.java") is part of the Actually Additions Mod for Minecraft.
* It is created and owned by Ellpeck and distributed
* under the Actually Additions License to be found at
* http://github.com/Ellpeck/ActuallyAdditions/blob/master/README.md
* View the source code at https://github.com/Ellpeck/ActuallyAdditions
*
* <EFBFBD> 2015 Ellpeck
*/
package ellpeck.actuallyadditions.gadget.cloud;
import ellpeck.actuallyadditions.blocks.InitBlocks;
import ellpeck.actuallyadditions.items.InitItems;
import ellpeck.actuallyadditions.items.metalists.TheFoods;
2015-08-30 01:18:26 +02:00
import ellpeck.actuallyadditions.items.metalists.TheMiscItems;
2015-08-24 17:57:11 +02:00
import ellpeck.actuallyadditions.util.AssetUtil;
import net.minecraft.block.Block;
import net.minecraft.init.Blocks;
2015-08-24 17:57:11 +02:00
import net.minecraft.init.Items;
import net.minecraft.item.ItemStack;
import org.lwjgl.opengl.GL11;
import java.util.ArrayList;
public class SmileyCloudEasterEggs{
public static final ArrayList<ISmileyCloudEasterEgg> cloudStuff = new ArrayList<ISmileyCloudEasterEgg>();
static{
//Glenthor
register(new ISmileyCloudEasterEgg(){
@Override
2015-08-24 17:57:11 +02:00
public String[] getTriggerNames(){
return new String[]{"glenthor", "glenthorlp", "twoofeight"};
}
2015-10-02 16:48:01 +02:00
@Override
public void renderExtra(float f){
renderHoldingItem(true, new ItemStack(Items.dye, 1, 2));
renderHeadBlock(InitBlocks.blockHeatCollector, 0, 5F);
}
});
//Ellpeck
register(new ISmileyCloudEasterEgg(){
@Override
public String[] getTriggerNames(){
return new String[]{"ellpeck", "ellopecko", "peck"};
}
2015-10-02 16:48:01 +02:00
@Override
public void renderExtra(float f){
renderHoldingItem(false, new ItemStack(InitItems.itemPhantomConnector));
renderHeadBlock(InitBlocks.blockPhantomLiquiface, 0, 25F);
}
});
//Tyrex
register(new ISmileyCloudEasterEgg(){
@Override
public String[] getTriggerNames(){
return new String[]{"tyrex", "lord_tobinho", "tobinho"};
}
2015-10-02 16:48:01 +02:00
@Override
public void renderExtra(float f){
renderHoldingItem(false, new ItemStack(Items.fishing_rod));
renderHoldingItem(true, new ItemStack(Items.fish));
}
});
//Hose
register(new ISmileyCloudEasterEgg(){
@Override
public String[] getTriggerNames(){
return new String[]{"dqmhose", "xdqmhose", "hose"};
}
2015-10-02 16:48:01 +02:00
@Override
public void renderExtra(float f){
renderHoldingItem(false, new ItemStack(Items.reeds));
renderHeadBlock(Blocks.torch, 0, 15F);
}
});
//Tobi
register(new ISmileyCloudEasterEgg(){
@Override
public String[] getTriggerNames(){
return new String[]{"jemx", "jemxx", "jemxxx", "spielertobi200"};
}
2015-10-02 16:48:01 +02:00
@Override
public void renderExtra(float f){
renderHoldingItem(true, new ItemStack(Items.milk_bucket));
renderHeadBlock(Blocks.lit_redstone_lamp, 0, 35F);
}
});
//Vazkii
register(new ISmileyCloudEasterEgg(){
@Override
public String[] getTriggerNames(){
return new String[]{"vazkii", "vaski", "waskie"};
}
2015-10-02 16:48:01 +02:00
@Override
public void renderExtra(float f){
renderHoldingItem(true, new ItemStack(Items.dye, 1, 15));
renderHeadBlock(Blocks.red_flower, 5, 20F);
}
});
//Kitty
register(new ISmileyCloudEasterEgg(){
@Override
public String[] getTriggerNames(){
return new String[]{"kitty", "kiddy", "kittyvancat", "kittyvancatlp"};
}
2015-10-02 16:48:01 +02:00
@Override
public void renderExtra(float f){
renderHoldingItem(true, new ItemStack(Items.fish));
renderHoldingItem(false, new ItemStack(Items.milk_bucket));
renderHeadBlock(Blocks.wool, 10, 15F);
}
});
//Canitzp
register(new ISmileyCloudEasterEgg(){
@Override
public String[] getTriggerNames(){
return new String[]{"canitz", "canitzp", "kannnichts", "kannnichtsp"};
}
2015-10-02 16:48:01 +02:00
@Override
public void renderExtra(float f){
renderHoldingItem(false, new ItemStack(Items.wooden_sword));
renderHeadBlock(Blocks.chest, 0, 70F);
}
});
//Lari
register(new ISmileyCloudEasterEgg(){
@Override
public String[] getTriggerNames(){
return new String[]{"lari", "larixine", "xine", "laxi", "lachsirine", "lala", "lalilu"};
}
2015-10-02 16:48:01 +02:00
@Override
public void renderExtra(float f){
renderHoldingItem(false, new ItemStack(Items.iron_helmet));
renderHeadBlock(Blocks.cake, 0, 28F);
}
});
//RotesDing
register(new ISmileyCloudEasterEgg(){
@Override
public String[] getTriggerNames(){
return new String[]{"rotesding", "dotesring"};
}
2015-10-02 16:48:01 +02:00
@Override
public void renderExtra(float f){
renderHoldingItem(false, new ItemStack(Items.milk_bucket));
renderHoldingItem(true, new ItemStack(Items.dye, 1, 1));
renderHeadBlock(Blocks.wool, 14, 18F);
}
});
2015-08-25 17:59:50 +02:00
//Bande
register(new ISmileyCloudEasterEgg(){
@Override
public String[] getTriggerNames(){
return new String[]{"bande", "bandelenth"};
}
2015-10-02 16:48:01 +02:00
2015-08-25 17:59:50 +02:00
@Override
public void renderExtra(float f){
renderHoldingItem(false, new ItemStack(Items.diamond_pickaxe));
renderHeadBlock(Blocks.wool, 4, 18F);
}
});
//Wolle
register(new ISmileyCloudEasterEgg(){
@Override
public String[] getTriggerNames(){
return new String[]{"wolle", "wuitoi"};
}
2015-10-02 16:48:01 +02:00
2015-08-25 17:59:50 +02:00
@Override
public void renderExtra(float f){
renderHoldingItem(false, new ItemStack(Items.string));
renderHeadBlock(Blocks.wool, 0, 18F);
}
});
//Pakto
register(new ISmileyCloudEasterEgg(){
@Override
public String[] getTriggerNames(){
return new String[]{"pakto", "paktosan", "paktosanlp"};
}
2015-10-02 16:48:01 +02:00
2015-08-25 17:59:50 +02:00
@Override
public void renderExtra(float f){
renderHoldingItem(false, new ItemStack(Items.dye, 1, 9));
renderHeadBlock(InitBlocks.blockColoredLampOn, 6, 18F);
}
});
//Honka
register(new ISmileyCloudEasterEgg(){
@Override
public String[] getTriggerNames(){
return new String[]{"honka", "honkalonka", "lonka", "lonki"};
}
2015-10-02 16:48:01 +02:00
2015-08-25 17:59:50 +02:00
@Override
public void renderExtra(float f){
renderHoldingItem(false, new ItemStack(InitItems.itemLeafBlowerAdvanced, 1, 9));
renderHeadBlock(Blocks.hay_block, 0, 74F);
}
});
//Acid
register(new ISmileyCloudEasterEgg(){
@Override
public String[] getTriggerNames(){
return new String[]{"acid", "acid_blues", "acidblues"};
}
2015-10-02 16:48:01 +02:00
@Override
public void renderExtra(float f){
renderHoldingItem(false, new ItemStack(InitItems.itemFoods, 1, TheFoods.PIZZA.ordinal()));
renderHeadBlock(Blocks.bookshelf, 0, 27F);
}
});
//Jasin
register(new ISmileyCloudEasterEgg(){
@Override
public String[] getTriggerNames(){
return new String[]{"jasin", "jasindow"};
}
2015-10-02 16:48:01 +02:00
@Override
public void renderExtra(float f){
renderHoldingItem(false, new ItemStack(Items.written_book));
renderHeadBlock(Blocks.web, 0, 56F);
}
});
2015-08-30 01:18:26 +02:00
//Lordi
register(new ISmileyCloudEasterEgg(){
@Override
public String[] getTriggerNames(){
return new String[]{"lordi", "lordhallo"};
}
2015-10-02 16:48:01 +02:00
2015-08-30 01:18:26 +02:00
@Override
public void renderExtra(float f){
renderHoldingItem(true, new ItemStack(Items.paper));
renderHoldingItem(false, new ItemStack(InitItems.itemMisc, 1, TheMiscItems.RING.ordinal()));
renderHeadBlock(Blocks.quartz_block, 0, 17F);
}
});
2015-10-05 11:51:33 +02:00
//ShadowNinjaCat
register(new ISmileyCloudEasterEgg(){
@Override
public String[] getTriggerNames(){
2015-10-05 11:51:33 +02:00
return new String[]{"shadowninjacat", "ninja", "tl"};
}
2015-10-02 16:48:01 +02:00
@Override
public void renderExtra(float f){
renderHoldingItem(false, new ItemStack(Items.diamond_sword));
renderHeadBlock(Blocks.diamond_block, 0, 26F);
}
});
2015-08-31 06:41:49 +02:00
//NihonTiger
register(new ISmileyCloudEasterEgg(){
@Override
public String[] getTriggerNames(){
return new String[]{"nihon", "nihontiger", "tiger"};
}
2015-10-02 16:48:01 +02:00
2015-08-31 06:41:49 +02:00
@Override
public void renderExtra(float f){
renderHoldingItem(false, new ItemStack(Items.stone_pickaxe));
renderHoldingItem(true, new ItemStack(Items.poisonous_potato));
renderHeadBlock(Blocks.gravel, 0, 47F);
}
});
register(new ISmileyCloudEasterEgg(){
@Override
public String[] getTriggerNames(){
2015-10-05 11:51:33 +02:00
return new String[]{"fraubaerchen", "baerchen", "nina"};
}
@Override
public void renderExtra(float f){
renderHoldingItem(false, new ItemStack(Items.cookie));
renderHoldingItem(true, new ItemStack(Items.paper));
renderHeadBlock(Blocks.coal_block, 0, 60F);
}
});
2015-10-07 00:55:19 +02:00
register(new ISmileyCloudEasterEgg(){
@Override
public String[] getTriggerNames(){
return new String[]{"0xdd", "didi", "theultimatehose"};
}
@Override
public void renderExtra(float f){
renderHoldingItem(true, new ItemStack(InitItems.itemDrill));
renderHeadBlock(Blocks.redstone_block, 0, 30F);
}
});
}
private static void register(ISmileyCloudEasterEgg egg){
cloudStuff.add(egg);
}
private static void renderHoldingItem(boolean leftHand, ItemStack stack){
GL11.glPushMatrix();
GL11.glRotatef(180F, 0F, 0F, 1F);
GL11.glRotatef(270F, 0F, 1F, 0F);
GL11.glTranslatef(0F, -1.5F, 0F);
GL11.glTranslatef(-0.5F, 0.2F, leftHand ? 0.55F : -0.5F);
GL11.glScalef(0.75F, 0.75F, 0.75F);
AssetUtil.renderItem(stack, 0);
GL11.glPopMatrix();
}
private static void renderHeadBlock(Block block, int meta, float rotation){
GL11.glPushMatrix();
GL11.glDisable(GL11.GL_LIGHTING);
GL11.glTranslatef(-0.015F, 0.6F, 0.075F);
GL11.glScalef(0.3F, 0.3F, 0.3F);
GL11.glRotatef(180F, 1F, 0F, 0F);
GL11.glRotatef(rotation, 0F, 1F, 0F);
AssetUtil.renderBlock(block, meta);
GL11.glEnable(GL11.GL_LIGHTING);
GL11.glPopMatrix();
}
}