ActuallyAdditions/src/main/java/de/ellpeck/actuallyadditions/mod/misc/cloud/SmileyCloudEasterEggs.java

483 lines
17 KiB
Java
Raw Normal View History

2015-08-29 14:33:25 +02:00
/*
2016-05-16 22:52:27 +02:00
* This file ("SmileyCloudEasterEggs.java") is part of the Actually Additions mod for Minecraft.
2015-08-29 14:33:25 +02:00
* It is created and owned by Ellpeck and distributed
* under the Actually Additions License to be found at
2016-05-16 22:52:27 +02:00
* http://ellpeck.de/actaddlicense
2015-08-29 14:33:25 +02:00
* View the source code at https://github.com/Ellpeck/ActuallyAdditions
*
2017-01-01 16:23:26 +01:00
* © 2015-2017 Ellpeck
2015-08-29 14:33:25 +02:00
*/
2016-01-05 04:47:35 +01:00
package de.ellpeck.actuallyadditions.mod.misc.cloud;
2016-01-05 04:47:35 +01:00
import de.ellpeck.actuallyadditions.mod.blocks.InitBlocks;
import de.ellpeck.actuallyadditions.mod.items.InitItems;
import de.ellpeck.actuallyadditions.mod.items.metalists.TheFoods;
import de.ellpeck.actuallyadditions.mod.items.metalists.TheMiscItems;
import de.ellpeck.actuallyadditions.mod.util.AssetUtil;
import net.minecraft.block.Block;
import net.minecraft.client.renderer.GlStateManager;
import net.minecraft.init.Blocks;
2015-08-24 17:57:11 +02:00
import net.minecraft.init.Items;
import net.minecraft.item.ItemStack;
import java.util.ArrayList;
2016-03-18 18:38:39 +01:00
import java.util.List;
2016-06-17 23:50:38 +02:00
public final class SmileyCloudEasterEggs{
2016-06-17 23:50:38 +02:00
public static final List<ISmileyCloudEasterEgg> CLOUD_STUFF = 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){
2016-04-20 21:39:03 +02:00
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){
2016-04-20 21:39:03 +02:00
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){
2016-04-20 21:39:03 +02:00
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){
2016-04-20 21:39:03 +02:00
renderHoldingItem(true, new ItemStack(Items.MILK_BUCKET));
renderHeadBlock(Blocks.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){
2016-04-20 21:39:03 +02:00
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){
2016-04-20 21:39:03 +02:00
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){
2016-04-20 21:39:03 +02:00
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){
2016-04-20 21:39:03 +02:00
renderHoldingItem(false, new ItemStack(Items.IRON_HELMET));
2015-11-03 23:47:17 +01:00
renderHeadBlock(InitBlocks.blockBlackLotus, 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){
2016-04-20 21:39:03 +02:00
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){
2016-04-20 21:39:03 +02:00
renderHoldingItem(false, new ItemStack(Items.DIAMOND_PICKAXE));
renderHeadBlock(Blocks.WOOL, 4, 18F);
2015-08-25 17:59:50 +02:00
}
});
//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){
2016-04-20 21:39:03 +02:00
renderHoldingItem(false, new ItemStack(Items.STRING));
renderHeadBlock(Blocks.WOOL, 0, 18F);
2015-08-25 17:59:50 +02:00
}
});
//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){
2016-04-20 21:39:03 +02:00
renderHoldingItem(false, new ItemStack(Items.DYE, 1, 9));
2015-08-25 17:59:50 +02:00
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));
2016-04-20 21:39:03 +02:00
renderHeadBlock(Blocks.HAY_BLOCK, 0, 74F);
2015-08-25 17:59:50 +02:00
}
});
//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()));
2016-04-20 21:39:03 +02:00
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){
2016-04-20 21:39:03 +02:00
renderHoldingItem(false, new ItemStack(Items.WRITTEN_BOOK));
renderHeadBlock(Blocks.WEB, 0, 56F);
}
});
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){
2016-04-20 21:39:03 +02:00
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){
2016-04-20 21:39:03 +02:00
renderHoldingItem(false, new ItemStack(Items.STONE_PICKAXE));
renderHoldingItem(true, new ItemStack(Items.POISONOUS_POTATO));
renderHeadBlock(Blocks.GRAVEL, 0, 47F);
2015-08-31 06:41:49 +02:00
}
});
2015-11-03 23:47:17 +01:00
//FrauBaerchen
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){
2016-04-20 21:39:03 +02:00
renderHoldingItem(false, new ItemStack(Items.COOKIE));
renderHoldingItem(true, new ItemStack(Items.PAPER));
renderHeadBlock(Blocks.COAL_BLOCK, 0, 60F);
}
});
2015-11-03 23:47:17 +01:00
//Diddi
2015-10-07 00:55:19 +02:00
register(new ISmileyCloudEasterEgg(){
@Override
public String[] getTriggerNames(){
2015-11-03 23:47:17 +01:00
return new String[]{"0xdd", "didi", "diddi", "theultimatehose"};
2015-10-07 00:55:19 +02:00
}
@Override
public void renderExtra(float f){
renderHoldingItem(true, new ItemStack(InitItems.itemDrill));
2016-04-20 21:39:03 +02:00
renderHeadBlock(Blocks.REDSTONE_BLOCK, 0, 30F);
2015-10-07 00:55:19 +02:00
}
});
2015-11-03 23:47:17 +01:00
//MineLoad
2015-10-07 20:47:28 +02:00
register(new ISmileyCloudEasterEgg(){
@Override
public String[] getTriggerNames(){
return new String[]{"mineload", "miney", "loady", "mineyloady"};
}
@Override
public void renderExtra(float f){
renderHoldingItem(false, new ItemStack(InitItems.itemMagnetRing));
2016-04-20 21:39:03 +02:00
renderHeadBlock(Blocks.CRAFTING_TABLE, 0, 35F);
2015-10-07 20:47:28 +02:00
}
});
2015-11-03 23:47:17 +01:00
//Kilobyte (When I asked him if he liked the mod, he just looked at the code. Maybe he'll find this eventually.)
register(new ISmileyCloudEasterEgg(){
@Override
public String[] getTriggerNames(){
return new String[]{"kilobyte", "kilo", "byte"};
}
@Override
public void renderExtra(float f){
renderHoldingItem(false, new ItemStack(InitItems.itemMisc, 1, TheMiscItems.DRILL_CORE.ordinal()));
2016-04-20 21:39:03 +02:00
renderHeadBlock(Blocks.REDSTONE_ORE, 0, 80F);
2015-11-03 23:47:17 +01:00
}
});
//XDjackieXD
register(new ISmileyCloudEasterEgg(){
@Override
public String[] getTriggerNames(){
return new String[]{"jackie", "xdjackiexd", "xdjackie", "jackiexd"};
}
@Override
public void renderExtra(float f){
2016-04-20 21:39:03 +02:00
renderHoldingItem(false, new ItemStack(Items.ENCHANTED_BOOK));
2015-11-03 23:47:17 +01:00
renderHeadBlock(InitBlocks.blockDirectionalBreaker, 0, 40F);
}
});
//Little Lampi (I still can't get over it)
register(new ISmileyCloudEasterEgg(){
@Override
public String[] getTriggerNames(){
return new String[]{"lampi", "littlelampi", "little lampi"};
}
@Override
public void renderExtra(float f){
2016-04-20 21:39:03 +02:00
renderHoldingItem(false, new ItemStack(Items.GLOWSTONE_DUST));
2015-11-03 23:47:17 +01:00
renderHeadBlock(InitBlocks.blockColoredLampOn, 4, 40F);
}
});
2015-11-06 23:22:38 +01:00
//AtomSponge
register(new ISmileyCloudEasterEgg(){
@Override
public String[] getTriggerNames(){
return new String[]{"sponge", "atomsponge", "atom", "explosions", "explosion"};
}
@Override
public void renderExtra(float f){
2016-04-20 21:39:03 +02:00
renderHoldingItem(false, new ItemStack(Items.GUNPOWDER));
renderHeadBlock(Blocks.SPONGE, 0, 20F);
2015-11-13 19:03:20 +01:00
}
});
//Mattzimann
register(new ISmileyCloudEasterEgg(){
@Override
public String[] getTriggerNames(){
return new String[]{"mattzimann", "mattziman", "matziman", "marzipan", "mattzi"};
}
@Override
public void renderExtra(float f){
renderHoldingItem(false, new ItemStack(InitItems.itemSwordEmerald));
renderHeadBlock(InitBlocks.blockCoffeeMachine, 0, 35F);
2015-11-06 23:22:38 +01:00
}
});
//Etho
register(new ISmileyCloudEasterEgg(){
@Override
public String[] getTriggerNames(){
return new String[]{"etho", "ethoslab"};
}
@Override
public void renderExtra(float f){
renderHoldingItem(false, new ItemStack(Items.REDSTONE));
renderHeadBlock(Blocks.REDSTONE_BLOCK, 0, 48F);
}
});
//Direwolf20
register(new ISmileyCloudEasterEgg(){
@Override
public String[] getTriggerNames(){
return new String[]{"direwolf", "dire", "direwolf20", "dw20"};
}
@Override
public void renderExtra(float f){
renderHoldingItem(false, new ItemStack(Items.BONE));
2016-11-19 21:11:17 +01:00
renderHeadBlock(Blocks.BONE_BLOCK, 0, 48F);
}
});
//Jessassin
register(new ISmileyCloudEasterEgg(){
@Override
public String[] getTriggerNames(){
return new String[]{"jessassin", "thejessassin"};
}
@Override
public void renderExtra(float f){
renderHeadBlock(InitBlocks.blockLaserRelayItem, 0, 27F);
renderHoldingItem(false, new ItemStack(InitItems.itemLaserWrench));
}
});
//Biffa
register(new ISmileyCloudEasterEgg(){
@Override
public String[] getTriggerNames(){
return new String[]{"biffa", "biffatech", "biffaplays", "biffa2001"};
}
@Override
public void renderExtra(float f){
renderHoldingItem(false, new ItemStack(InitItems.itemCoffee));
}
});
//Xisuma
register(new ISmileyCloudEasterEgg(){
@Override
public String[] getTriggerNames(){
return new String[]{"xisuma", "xisumavoid"};
}
@Override
public void renderExtra(float f){
renderHeadBlock(Blocks.REDSTONE_BLOCK, 0, 93F);
renderHoldingItem(false, new ItemStack(Items.ELYTRA));
}
});
//Welsknight
register(new ISmileyCloudEasterEgg(){
@Override
public String[] getTriggerNames(){
return new String[]{"welsknight", "wels"};
}
@Override
public void renderExtra(float f){
renderHeadBlock(Blocks.STONE_BRICK_STAIRS, 0, 10F);
renderHoldingItem(false, new ItemStack(Items.DIAMOND_PICKAXE));
}
});
}
private static void register(ISmileyCloudEasterEgg egg){
2016-06-17 23:50:38 +02:00
CLOUD_STUFF.add(egg);
}
private static void renderHoldingItem(boolean leftHand, ItemStack stack){
GlStateManager.pushMatrix();
GlStateManager.rotate(180F, 0F, 0F, 1F);
2016-02-17 23:15:56 +01:00
GlStateManager.rotate(90, 0, 1, 0);
2016-03-18 18:16:25 +01:00
GlStateManager.translate(0.2, -1F, leftHand ? -0.525F : 0.525F);
GlStateManager.scale(0.75F, 0.75F, 0.75F);
AssetUtil.renderItemInWorld(stack);
GlStateManager.popMatrix();
}
private static void renderHeadBlock(Block block, int meta, float rotation){
GlStateManager.pushMatrix();
GlStateManager.disableLighting();
2016-03-18 18:16:25 +01:00
GlStateManager.translate(-0.015F, 0.625F, 0.04F);
GlStateManager.scale(0.5F, 0.5F, 0.5F);
GlStateManager.rotate(180F, 1F, 0F, 0F);
GlStateManager.rotate(rotation, 0F, 1F, 0F);
2015-12-22 14:55:10 +01:00
AssetUtil.renderBlockInWorld(block, meta);
GlStateManager.enableLighting();
GlStateManager.popMatrix();
}
}