1 package chemicraft.util;
\r
3 import net.minecraft.entity.player.EntityPlayer;
\r
4 import net.minecraft.world.World;
\r
5 import cpw.mods.fml.relauncher.Side;
\r
6 import cpw.mods.fml.relauncher.SideOnly;
\r
9 * いろいろなデータを格納しメソッドによってチェックするクラス
\r
10 * 使用する場合はItemAtomInfoContainerを継承することを推奨
\r
14 public class AtomInfo {
\r
27 private String biomeName;
\r
33 private String weather;
\r
37 * EntityPlayerのインスタンス
\r
39 private EntityPlayer entityPlayer;
\r
45 private World world;
\r
50 * AtomInfoのデータをupdateします
\r
51 * @param par1World Worldのインスタンス
\r
52 * @param par2EntityPlayer EntityPlayerのインスタンス
\r
54 public void update(World par1World, EntityPlayer par2EntityPlayer){
\r
55 //this.world = par1World;
\r
56 //this.entityPlayer = par2EntityPlayer;
\r
58 this.posX = (int) par2EntityPlayer.posX;
\r
59 this.posY = (int) par2EntityPlayer.posY;
\r
60 this.posZ = (int) par2EntityPlayer.posZ;
\r
62 this.biomeName = par1World.getBiomeGenForCoords(posX, posZ).biomeName;
\r
64 if (par1World.isThundering()){
\r
65 this.weather = "Thunder";
\r
66 }else if(par1World.isRaining()){
\r
67 this.weather = "Rain";
\r
69 this.weather = "Sun";
\r
76 * 引数に指定されたBiomeと同等か比較します
\r
77 * @param biomeName 比較するBiomeの名前
\r
78 * @return Biomeが一致しているか
\r
80 public boolean isEquivalentBiome(String biomeName){
\r
81 if(this.biomeName != null){
\r
82 if(this.biomeName.equals(biomeName)){
\r
88 System.err.println("AtonInfo:データが入っていません。updateメソッドでデータを入れてください");
\r
96 * 引数に指定された天候と同等か比較します
\r
97 * 晴れ:Sun, 雨:Rain, 雷雨:Thunder
\r
98 * @param weather 比較する天候
\r
99 * @return 天候が一致しているか
\r
101 public boolean isEquivalentWeather(String weather){
\r
102 if(this.weather != null){
\r
103 if(this.weather.equals(weather)){
\r
109 System.err.println("AtonInfo:データが入っていません。updateメソッドでデータを入れてください");
\r
117 * 引数に指定されたY軸より高いか判定します
\r
119 * @return 指定されたY軸より高いか
\r
121 @SideOnly(Side.CLIENT)
\r
122 public boolean isOverY(int par1){
\r
123 if(this.posY >= par1){
\r
133 * 引数に指定されたY軸と同等か判定します
\r
135 * @return 指定されたY軸と同等かどうか
\r
137 @SideOnly(Side.CLIENT)
\r
138 public boolean isEquivalentY(int par1){
\r
139 if(this.posY == par1){
\r
149 * 引数に指定されたY軸より低いか判定します
\r
151 * @return 指定されたY軸より低いか
\r
153 @SideOnly(Side.CLIENT)
\r
154 public boolean isBelowY(int par1){
\r
155 if(this.posY <= par1){
\r