Java 类net.minecraft.item.ItemMinecart 实例源码

项目:NyaSamaRailway    文件:MinecartBase.java   
@Override
public boolean interactFirst(EntityPlayer player) {
    if (MinecraftForge.EVENT_BUS.post(new MinecartInteractEvent(this, player))) {
        return true;
    } else if (this.riddenByEntity != null && this.riddenByEntity instanceof EntityPlayer && this.riddenByEntity != player) {
        return true;
    } else if (this.riddenByEntity != null && this.riddenByEntity != player) {
        return false;
    } else {
        if (player != null) {
            ItemStack stack = player.getCurrentEquippedItem();
            if (stack != null) {
                if (stack.getItem() instanceof Item1N4148 ||
                        stack.getItem() instanceof ItemTrainController8Bit ||
                        stack.getItem() instanceof ItemTrainController32Bit) {
                    return true;
                }
                if (stack.getItem() instanceof ItemMinecart) return true;
            }
            if (!this.worldObj.isRemote) {
                player.mountEntity(this);
            }
        }
        return true;
    }
}
项目:NyaSamaRailway    文件:NSPCT6L.java   
@Override
public boolean interactFirst(EntityPlayer player) {
    if (MinecraftForge.EVENT_BUS.post(new MinecartInteractEvent(this, player))) {
        return true;
    } else if (this.riddenByEntity != null && this.riddenByEntity instanceof EntityPlayer && this.riddenByEntity != player) {
        return true;
    } else if (this.riddenByEntity != null && this.riddenByEntity != player) {
        return false;
    } else {
        if (player != null) {
            ItemStack stack = player.getCurrentEquippedItem();
            if (stack != null) {
                if (stack.getItem() instanceof Item1N4148 ||
                        stack.getItem() instanceof ItemTrainController8Bit ||
                        stack.getItem() instanceof ItemTrainController32Bit) {
                    return true;
                }
                if (stack.getItem() instanceof ItemMinecart) return true;
            }
            if (!this.worldObj.isRemote) {
                player.mountEntity(this);
            }
        }
        return true;
    }
}
项目:NyaSamaRailway    文件:NSPCT6C.java   
@Override
public boolean interactFirst(EntityPlayer player) {
    if (MinecraftForge.EVENT_BUS.post(new MinecartInteractEvent(this, player))) {
        return true;
    } else if (this.riddenByEntity != null && this.riddenByEntity instanceof EntityPlayer && this.riddenByEntity != player) {
        return true;
    } else if (this.riddenByEntity != null && this.riddenByEntity != player) {
        return false;
    } else {
        if (player != null) {
            ItemStack stack = player.getCurrentEquippedItem();
            if (stack != null) {
                if (stack.getItem() instanceof Item1N4148 ||
                        stack.getItem() instanceof ItemTrainController8Bit ||
                        stack.getItem() instanceof ItemTrainController32Bit) {
                    return true;
                }
                if (stack.getItem() instanceof ItemMinecart) return true;
            }
            if (!this.worldObj.isRemote) {
                player.mountEntity(this);
            }
        }
        return true;
    }
}
项目:NyaSamaRailway    文件:NSPCT7.java   
@Override
public boolean interactFirst(EntityPlayer player) {
    if (MinecraftForge.EVENT_BUS.post(new MinecartInteractEvent(this, player))) {
        return true;
    } else if (this.riddenByEntity != null && this.riddenByEntity instanceof EntityPlayer && this.riddenByEntity != player) {
        return true;
    } else if (this.riddenByEntity != null && this.riddenByEntity != player) {
        return false;
    } else {
        if (player != null) {
            ItemStack stack = player.getCurrentEquippedItem();
            if (stack != null) {
                if (stack.getItem() instanceof Item1N4148 ||
                        stack.getItem() instanceof ItemTrainController8Bit ||
                        stack.getItem() instanceof ItemTrainController32Bit) {
                    return true;
                }
                if (stack.getItem() instanceof ItemMinecart) return true;
            }
            if (!this.worldObj.isRemote) {
                player.mountEntity(this);
            }
        }
        return true;
    }
}
项目:NyaSamaRailway    文件:NSPCT8J.java   
@Override
public boolean interactFirst(EntityPlayer player) {
    if (MinecraftForge.EVENT_BUS.post(new MinecartInteractEvent(this, player))) {
        return true;
    } else if (this.riddenByEntity != null && this.riddenByEntity instanceof EntityPlayer && this.riddenByEntity != player) {
        return true;
    } else if (this.riddenByEntity != null && this.riddenByEntity != player) {
        return false;
    } else {
        if (player != null) {
            ItemStack stack = player.getCurrentEquippedItem();
            if (stack != null) {
                if (stack.getItem() instanceof Item1N4148 ||
                    stack.getItem() instanceof ItemTrainController8Bit ||
                    stack.getItem() instanceof ItemTrainController32Bit) {
                    return true;
                }
                if (stack.getItem() instanceof ItemMinecart) return true;
            }
            if (!this.worldObj.isRemote) {
                player.mountEntity(this);
            }
        }
        return true;
    }
}
项目:NyaSamaRailway    文件:NSPCT8M.java   
@Override
public boolean interactFirst(EntityPlayer player) {
    if (MinecraftForge.EVENT_BUS.post(new MinecartInteractEvent(this, player))) {
        return true;
    } else if (this.riddenByEntity != null && this.riddenByEntity instanceof EntityPlayer && this.riddenByEntity != player) {
        return true;
    } else if (this.riddenByEntity != null && this.riddenByEntity != player) {
        return false;
    } else {
        if (player != null) {
            ItemStack stack = player.getCurrentEquippedItem();
            if (stack != null) {
                if (stack.getItem() instanceof Item1N4148 ||
                        stack.getItem() instanceof ItemTrainController8Bit ||
                        stack.getItem() instanceof ItemTrainController32Bit) {
                    return true;
                }
                if (stack.getItem() instanceof ItemMinecart) return true;
            }
            if (!this.worldObj.isRemote) {
                player.mountEntity(this);
            }
        }
        return true;
    }
}
项目:NyaSamaRailway    文件:NSPCT4M.java   
@Override
public boolean interactFirst(EntityPlayer player) {
    if (MinecraftForge.EVENT_BUS.post(new MinecartInteractEvent(this, player))) {
        return true;
    } else if (this.riddenByEntity != null && this.riddenByEntity instanceof EntityPlayer && this.riddenByEntity != player) {
        return true;
    } else if (this.riddenByEntity != null && this.riddenByEntity != player) {
        return false;
    } else {
        if (player != null) {
            ItemStack stack = player.getCurrentEquippedItem();
            if (stack != null) {
                if (stack.getItem() instanceof Item1N4148 ||
                        stack.getItem() instanceof ItemTrainController8Bit ||
                        stack.getItem() instanceof ItemTrainController32Bit) {
                    return true;
                }
                if (stack.getItem() instanceof ItemMinecart) return true;
            }
            if (!this.worldObj.isRemote) {
                player.mountEntity(this);
            }
        }
        return true;
    }
}
项目:NEI-Integration    文件:CartTools.java   
/**
 * Spawns a new cart entity using the provided item.
 * <p/>
 * The backing item must implement <code>IMinecartItem</code> and/or extend
 * <code>ItemMinecart</code>.
 * <p/>
 * Generally Forge requires all cart items to extend ItemMinecart.
 *
 * @param owner The player name that should used as the owner
 * @param cart  An ItemStack containing a cart item, will not be changed by
 *              the function
 * @param world The World object
 * @param x     x-Coord
 * @param y     y-Coord
 * @param z     z-Coord
 * @return the cart placed or null if failed
 * @see IMinecartItem, ItemMinecart
 */
public static EntityMinecart placeCart(GameProfile owner, ItemStack cart, WorldServer world, int x, int y, int z) {
    if (cart == null)
        return null;
    cart = cart.copy();
    if (cart.getItem() instanceof IMinecartItem) {
        IMinecartItem mi = (IMinecartItem) cart.getItem();
        return mi.placeCart(owner, cart, world, x, y, z);
    } else if (cart.getItem() instanceof ItemMinecart)
        try {
            boolean placed = cart.getItem().onItemUse(cart, FakePlayerFactory.get(world, railcraftProfile), world, x, y, z
                    , 0, 0, 0, 0);
            if (placed) {
                List<EntityMinecart> carts = getMinecartsAt(world, x, y, z, 0.3f);
                if (carts.size() > 0) {
                    setCartOwner(carts.get(0), owner);
                    return carts.get(0);
                }
            }
        } catch (Exception e) {
            return null;
        }

    return null;
}
项目:PeripheralsPlusPlus    文件:CartTools.java   
/**
 * Spawns a new cart entity using the provided item.
 *
 * The backing item must implement
 * <code>IMinecartItem</code> and/or extend
 * <code>ItemMinecart</code>.
 *
 * Generally Forge requires all cart items to extend ItemMinecart.
 *
 * @param owner The player name that should used as the owner
 * @param cart An ItemStack containing a cart item, will not be changed by
 * the function
 * @param world The World object
 * @param i x-Coord
 * @param j y-Coord
 * @param k z-Coord
 * @return the cart placed or null if failed
 * @see IMinecartItem, ItemMinecart
 */
public static EntityMinecart placeCart(String owner, ItemStack cart, World world, int i, int j, int k) {
    if (cart == null) {
        return null;
    }
    cart = cart.copy();
    if (cart.getItem() instanceof IMinecartItem) {
        IMinecartItem mi = (IMinecartItem) cart.getItem();
        return mi.placeCart(owner, cart, world, i, j, k);
    } else if (cart.getItem() instanceof ItemMinecart) {
        try {
            boolean placed = cart.getItem().onItemUse(cart, null, world, i, j, k, 0, 0, 0, 0);
            if (placed) {
                List<EntityMinecart> carts = getMinecartsAt(world, i, j, k, 0.3f);
                if (carts.size() > 0) {
                    setCartOwner(carts.get(0), owner);
                    return carts.get(0);
                }
            }
        } catch (Exception e) {
            return null;
        }
    }

    return null;
}
项目:ShadowsOfPhysis    文件:PhysisArtifacts.java   
public static boolean canItemAcceptSockets(ItemStack stack) {
    Item item = stack.getItem();
    if (item == PhysisItems.socketable) {
        return false;
    }
    if (item instanceof ItemBlock
        || item instanceof ItemReed
        || item instanceof ItemBed
        || item instanceof ItemFood
        || item instanceof ItemPotion
        || item instanceof ItemMinecart
        || item instanceof ItemBoat
        || item instanceof ItemEnchantedBook
        || item instanceof ItemWritableBook
        || item instanceof ItemBucket
        || item instanceof ItemBucketMilk
        || item instanceof ItemDoor) {
        return false;
    }
    if (item.getItemStackLimit(stack) > 1) {
        return false;
    }
    if (item.hasContainerItem(stack)){
        ItemStack container = item.getContainerItem(stack);
        if (container != null && container.getItem() instanceof ItemBucket) {
            return false;
        }
    }
    if (item.getUnlocalizedName(stack).toLowerCase().contains("bucket")) {
        return false;
    }
    return true;
}
项目:RuneCraftery    文件:BehaviorDispenseMinecart.java   
public ItemStack func_82487_b(IBlockSource p_82487_1_, ItemStack p_82487_2_) {
   EnumFacing var3 = BlockDispenser.func_100009_j_(p_82487_1_.func_82620_h());
   World var4 = p_82487_1_.func_82618_k();
   double var5 = p_82487_1_.func_82615_a() + (double)((float)var3.func_82601_c() * 1.125F);
   double var7 = p_82487_1_.func_82617_b() + (double)((float)var3.func_96559_d() * 1.125F);
   double var9 = p_82487_1_.func_82616_c() + (double)((float)var3.func_82599_e() * 1.125F);
   int var11 = p_82487_1_.func_82623_d() + var3.func_82601_c();
   int var12 = p_82487_1_.func_82622_e() + var3.func_96559_d();
   int var13 = p_82487_1_.func_82621_f() + var3.func_82599_e();
   int var14 = var4.func_72798_a(var11, var12, var13);
   double var15;
   if(BlockRailBase.func_72184_d(var14)) {
      var15 = 0.0D;
   } else {
      if(var14 != 0 || !BlockRailBase.func_72184_d(var4.func_72798_a(var11, var12 - 1, var13))) {
         return this.field_96465_b.func_82482_a(p_82487_1_, p_82487_2_);
      }

      var15 = -1.0D;
   }

   EntityMinecart var17 = EntityMinecart.func_94090_a(var4, var5, var7 + var15, var9, ((ItemMinecart)p_82487_2_.func_77973_b()).field_77841_a);
   if(p_82487_2_.func_82837_s()) {
      var17.func_96094_a(p_82487_2_.func_82833_r());
   }

   var4.func_72838_d(var17);
   p_82487_2_.func_77979_a(1);
   return p_82487_2_;
}