3 import net.minecraft.src.EntityPlayer;
\r
4 import net.minecraft.src.ItemStack;
\r
5 import net.minecraft.src.World;
\r
7 public class AtomInfo {
\r
9 protected static int posX;
\r
10 protected static int posY;
\r
11 protected static int posZ;
\r
12 protected static String biomeName;
\r
13 protected static String weather;
\r
15 public AtomInfo(World par1World, EntityPlayer par2EntityPlayer){
\r
17 this.biomeName = par1World.getBiomeGenForCoords(posX, posZ).biomeName;
\r
19 this.posX = (int) par2EntityPlayer.posX; // X座標
\r
20 this.posY = (int) par2EntityPlayer.posY; // Y座標
\r
21 this.posZ = (int) par2EntityPlayer.posZ; // Z座標
\r
23 boolean rainy = par1World.isRaining();
\r
24 boolean thunder = par1World.isThundering();
\r
25 if (rainy && thunder){ // 雨且つ雷
\r
26 this.weather = "THUNDER";
\r
27 }else if(rainy){ // 雨または雪
\r
28 this.weather = "RAINY";
\r
30 this.weather = "SUNNY";
\r
36 * @param EntityPlayer EntityPlayer
\r
38 * @param biomeName バイオームの名前(nullでも可)
\r
39 * @param weather 天気(nullでも可)
\r
41 * @param par2 種類(ダメージ値)
\r
43 private boolean equivalentBiome(String biomeName){
\r
44 boolean ver1 = biomeName != null ? ((this.biomeName == biomeName) ? true : false) : true;
\r
47 private boolean equivalentWeather(String weather){
\r
48 boolean ver1 = weather != null ? ((this.weather == weather) ? true : false) : true;
\r
52 protected void overY(EntityPlayer EntityPlayer, int y, String biomeName, String weather, int par1, int par2){
\r
53 if(this.posY >= y && this.equivalentBiome(biomeName) && this.equivalentWeather(weather)){
\r
54 if (!EntityPlayer.inventory.addItemStackToInventory(new ItemStack(ChemiCraft.itemAtoms, par1, par2)))
\r
56 EntityPlayer.dropPlayerItem(new ItemStack(ChemiCraft.itemAtoms.shiftedIndex, par1, par2));
\r
60 protected void aboveY(EntityPlayer EntityPlayer, int y, String biomeName, String weather, int par1, int par2){
\r
61 if(this.posY > y && this.equivalentBiome(biomeName) && this.equivalentWeather(weather)){
\r
62 if (!EntityPlayer.inventory.addItemStackToInventory(new ItemStack(ChemiCraft.itemAtoms, par1, par2)))
\r
64 EntityPlayer.dropPlayerItem(new ItemStack(ChemiCraft.itemAtoms.shiftedIndex, par1, par2));
\r
68 protected void equivalentY(EntityPlayer EntityPlayer, int y, String biomeName, String weather, int par1, int par2){
\r
69 if(this.posY == y && this.equivalentBiome(biomeName) && this.equivalentWeather(weather)){
\r
70 if (!EntityPlayer.inventory.addItemStackToInventory(new ItemStack(ChemiCraft.itemAtoms, par1, par2)))
\r
72 EntityPlayer.dropPlayerItem(new ItemStack(ChemiCraft.itemAtoms.shiftedIndex, par1, par2));
\r
76 protected void lessY(EntityPlayer EntityPlayer, int y, String biomeName, String weather, int par1, int par2){
\r
77 if(this.posY < y && this.equivalentBiome(biomeName) && this.equivalentWeather(weather)){
\r
78 if (!EntityPlayer.inventory.addItemStackToInventory(new ItemStack(ChemiCraft.itemAtoms, par1, par2)))
\r
80 EntityPlayer.dropPlayerItem(new ItemStack(ChemiCraft.itemAtoms.shiftedIndex, par1, par2));
\r
84 protected void belowY(EntityPlayer EntityPlayer, int y, String biomeName, String weather, int par1, int par2){
\r
85 if(this.posY <= y && this.equivalentBiome(biomeName) && this.equivalentWeather(weather)){
\r
86 if (!EntityPlayer.inventory.addItemStackToInventory(new ItemStack(ChemiCraft.itemAtoms, par1, par2)))
\r
88 EntityPlayer.dropPlayerItem(new ItemStack(ChemiCraft.itemAtoms.shiftedIndex, par1, par2));
\r