• R/O
  • HTTP
  • SSH
  • HTTPS

ChemiCraftNext: Commit


Commit MetaInfo

Revisiónca5f1a26bc4df70e3f0092ca91066840e5d5fe09 (tree)
Tiempo2012-12-29 12:16:32
Autormozipi <mozipi@user...>
Commitermozipi

Log Message

Merge branch 'master' of git.sourceforge.jp:/gitroot/chemicraft/chemicraft

Cambiar Resumen

Diferencia incremental

--- a/common/chemicraft/ChemiCraft.java
+++ b/common/chemicraft/ChemiCraft.java
@@ -284,6 +284,12 @@ public class ChemiCraft {
284284 new Character('A'), new ItemStack(this.itemAtoms, 1, 0),
285285 });
286286
287+ // 化合物を追加します
288+ ChemiCraftAPI.instance.addLangCompound("ja_JP", "CarbonDioxide", "二酸化炭素");
289+
290+ // 化合物のレシピを追加します
291+ ChemiCraftAPI.instance.addChemicalCombinationRecipe(new ItemStack[]{new ItemStack(this.itemAtoms, 5), new ItemStack(this.itemAtoms, 7)}, new ItemStack(this.itemCompounds, 0));
292+
287293 //手榴弾の追加
288294 ChemiCraftAPI.instance.addSharplessMaterialRecipe(new ItemStack[]{new ItemStack(Item.gunpowder)}, new ItemStack(this.itemAtomGrenade, 16, 0), new NBTRecipeGrenade());
289295
--- a/common/chemicraft/debug/CommandSetTile.java
+++ b/common/chemicraft/debug/CommandSetTile.java
@@ -5,7 +5,6 @@ import net.minecraft.src.CommandBase;
55 import net.minecraft.src.EntityPlayer;
66 import net.minecraft.src.ICommandSender;
77 import net.minecraft.src.World;
8-import setBlockSupport.SetBlockSupport;
98
109 public class CommandSetTile extends CommandBase {
1110
--- a/common/chemicraft/item/ItemGasCollectingBottle.java
+++ b/common/chemicraft/item/ItemGasCollectingBottle.java
@@ -4,8 +4,10 @@ import net.minecraft.src.EntityPlayer;
44 import net.minecraft.src.ItemStack;
55 import net.minecraft.src.World;
66 import chemicraft.ChemiCraft;
7+import chemicraft.util.MathHelperPlus;
78
8-public class ItemGasCollectingBottle extends ItemAtomInfoContainer {
9+public class ItemGasCollectingBottle extends ItemAtomInfoContainer
10+{
911
1012 public ItemGasCollectingBottle(int id) {
1113 super(id);
@@ -15,22 +17,54 @@ public class ItemGasCollectingBottle extends ItemAtomInfoContainer {
1517 }
1618
1719 @Override
18- public ItemStack onItemRightClick(ItemStack par1ItemStack, World par2World, EntityPlayer par3EntityPlayer){
20+ public ItemStack onItemRightClick(ItemStack par1ItemStack, World par2World, EntityPlayer par3EntityPlayer)
21+ {
1922 par1ItemStack.damageItem(1, par3EntityPlayer);
2023
2124 this.atomInfo.update(par2World, par3EntityPlayer);
22- if(this.atomInfo.isBelowY(129)){
23- if (!par3EntityPlayer.inventory.addItemStackToInventory(new ItemStack(ChemiCraft.instance.itemAtoms, 1, 7)))
24- {
25- par3EntityPlayer.dropPlayerItem(new ItemStack(ChemiCraft.instance.itemAtoms, 1, 7));
26- }
27- }
2825
26+ int heightValue = par2World.getHeightValue((int) par3EntityPlayer.posX, (int) par3EntityPlayer.posZ);
27+
28+ int result1 = MathHelperPlus.instance.Probability(99, 1);
29+ int result2 = MathHelperPlus.instance.Probability(78, 21, 1);
30+ int result3 = MathHelperPlus.instance.Probability(0.032, 0.0018, 0.000012, 0.00052);
31+ if (this.atomInfo.isOverY(heightValue)) {
32+ if (result1 == 0) {
33+ if (result2 == 0) {
34+ this.isStackOrDrop(new ItemStack(ChemiCraft.instance.itemAtoms, 1, 6), par3EntityPlayer);
35+ } else if (result2 == 1) {
36+ this.isStackOrDrop(new ItemStack(ChemiCraft.instance.itemAtoms, 1, 7), par3EntityPlayer);
37+ } else {
38+ this.isStackOrDrop(new ItemStack(ChemiCraft.instance.itemAtoms, 1, 17), par3EntityPlayer);
39+ }
40+ } else {
41+ if (result3 == 0) {
42+ this.isStackOrDrop(new ItemStack(ChemiCraft.instance.itemCompounds, 1, 0), par3EntityPlayer);
43+ } else if (result3 == 1) {
44+ this.isStackOrDrop(new ItemStack(ChemiCraft.instance.itemAtoms, 1, 9), par3EntityPlayer);
45+ } else if (result3 == 2) {
46+ this.isStackOrDrop(new ItemStack(ChemiCraft.instance.itemCompounds, 1, 1), par3EntityPlayer);
47+ } else {
48+ this.isStackOrDrop(new ItemStack(ChemiCraft.instance.itemAtoms, 1, 1), par3EntityPlayer);
49+ }
50+ }
51+ }
52+ if (par2World.isRemote) {
53+ par3EntityPlayer.addChatMessage("result1=" + result1 + " result2=" + result2 + " result3=" + result3);
54+ }
2955 return par1ItemStack;
3056 }
3157
58+ public void isStackOrDrop(ItemStack par1ItemStack, EntityPlayer par2EntityPlayer)
59+ {
60+ if (!par2EntityPlayer.inventory.addItemStackToInventory(par1ItemStack)) {
61+ par2EntityPlayer.dropPlayerItem(par1ItemStack);
62+ }
63+ }
64+
3265 @Override
33- public String getTextureFile() {
66+ public String getTextureFile()
67+ {
3468 return "/chemicraft/items/items.png";
3569 }
3670
--- a/common/chemicraft/util/AtomInfo.java
+++ b/common/chemicraft/util/AtomInfo.java
@@ -1,5 +1,7 @@
11 package chemicraft.util;
22
3+import cpw.mods.fml.common.Side;
4+import cpw.mods.fml.common.asm.SideOnly;
35 import net.minecraft.src.EntityPlayer;
46 import net.minecraft.src.World;
57
@@ -116,6 +118,7 @@ public class AtomInfo {
116118 * @param par1
117119 * @return 指定されたY軸より高いか
118120 */
121+ @SideOnly(Side.CLIENT)
119122 public boolean isOverY(int par1){
120123 if(this.posY >= par1){
121124 return true;
@@ -131,6 +134,7 @@ public class AtomInfo {
131134 * @param par1
132135 * @return 指定されたY軸と同等かどうか
133136 */
137+ @SideOnly(Side.CLIENT)
134138 public boolean isEquivalentY(int par1){
135139 if(this.posY == par1){
136140 return true;
@@ -146,6 +150,7 @@ public class AtomInfo {
146150 * @param par1
147151 * @return 指定されたY軸より低いか
148152 */
153+ @SideOnly(Side.CLIENT)
149154 public boolean isBelowY(int par1){
150155 if(this.posY <= par1){
151156 return true;
--- /dev/null
+++ b/common/chemicraft/util/MathHelperPlus.java
@@ -0,0 +1,58 @@
1+package chemicraft.util;
2+
3+import java.util.ArrayList;
4+import java.util.Random;
5+
6+public class MathHelperPlus
7+{
8+
9+ public static MathHelperPlus instance = new MathHelperPlus();
10+
11+ /**
12+ * Return probability(0~).
13+ */
14+ public static int Probability(double... par1)
15+ {
16+ ArrayList<Double> var1 = new ArrayList<Double>();
17+ for (int var2 = 0; var2 < par1.length; var2++){
18+ var1.add(par1[var2]);
19+ }
20+ return Probability(var1);
21+ }
22+
23+ public static int Probability(int... par1)
24+ {
25+ ArrayList<Double> var1 = new ArrayList<Double>();
26+ for (int var2 = 0; var2 < par1.length; var2++){
27+ var1.add((double)par1[var2]);
28+ }
29+ return Probability(var1);
30+ }
31+
32+ public static int Probability(ArrayList<Double> par1)
33+ {
34+ Random var2 = new Random();
35+ int var3 = var2.nextInt(100);
36+ double var4 = 0.0D;
37+
38+ for (int var5 = 0; var5 < par1.size(); var5++) {
39+ var4 += par1.get(var5);
40+ }
41+
42+ ArrayList<Double> var6 = new ArrayList<Double>();
43+ for (int var7 = 0; var7 < par1.size(); var7++) {
44+ var6.add(par1.get(var7) / var4 * 100);
45+ }
46+
47+ double var8 = 0.0D;
48+ for (int var9 = 0; var9 < var6.size(); var9++) {
49+ if (var3 < var6.get(var9) + var8) {
50+ return var9;
51+ } else {
52+ var8 += var6.get(var9);
53+ }
54+ }
55+ return var3;
56+ }
57+
58+}
Show on old repository browser