@SubscribeEvent
public void onPlayerInteract(PlayerInteractEvent event) {
ItemStack stack = event.entityPlayer.getCurrentEquippedItem();
if (!event.world.isRemote && event.action == PlayerInteractEvent.Action.RIGHT_CLICK_BLOCK && stack != null && stack.getItem() == Items.apple && event.world.getBlockState(event.pos).getBlock() == Blocks.diamond_block) {
BlockPos pos = event.pos;
Block block = Blocks.air;
Block block1 = Blocks.stone;
boolean flag = event.world.getBlockState(pos.south()).getBlock() == block && event.world.getBlockState(pos.north()).getBlock() == block && event.world.getBlockState(pos.east()).getBlock() == block && event.world.getBlockState(pos.west()).getBlock() == block;
boolean flag1 = event.world.getBlockState(pos.south().south()).getBlock() == block1 && event.world.getBlockState(pos.north().north()).getBlock() == block1 && event.world.getBlockState(pos.east().east()).getBlock() == block1 && event.world.getBlockState(pos.west().west()).getBlock() == block1;
boolean flag2 = event.world.getBlockState(pos.south().east()).getBlock() == block1 && event.world.getBlockState(pos.south().west()).getBlock() == block1 && event.world.getBlockState(pos.north().east()).getBlock() == block1 && event.world.getBlockState(pos.north().west()).getBlock() == block1;
if (flag && flag1 && flag2) {
event.world.setBlockState(pos, Blocks.gold_block.getDefaultState());
event.world.setBlockState(pos.south(), Blocks.gold_block.getDefaultState());
event.world.setBlockState(pos.north(), Blocks.gold_block.getDefaultState());
event.world.setBlockState(pos.east(), Blocks.gold_block.getDefaultState());
event.world.setBlockState(pos.west(), Blocks.gold_block.getDefaultState());
event.entityPlayer.inventory.consumeInventoryItem(Items.apple);
}
}
}

Best posts made by SCAREX
-
RE: Les events en 1.8
-
RE: Bug event EntityJoinWorldEvent
mets çà pour ta condition :
if (event.entity instanceof EntityPlayerMp)
ou utilise l’event PlayerLoggedInEvent (PlayerEvent.PlayerLoggedInEvent).
Si je peux me permettre, il vaut mieux éviter d’utiliser le random de la classe World car c’est le random utilisé dans la génération donc quand tu l’utilises, tu modifies la génération du monde.
-
RE: Moyen de communiquer entre plugin et mod
@‘Martin67370’:
Je suis entrain de créé un gui avec un textfield pour choisir une quantité
Ce que je voudrais faire c’est qu’on peut que écrire que des nombres dedansCréer une classe extend textfield et tu modifies la fonction qui ajoute les caractères dans le textfield
-
RE: Créer un mob basique
@‘Themoderne76133’:
Ok Scarex, merci, met aurais tu un site qui explique assey bien le codage en java ?
Car c’est vrai sa serai interresant et sa annulerai les question un peu bete comme ma précédente. -
RE: Ajouter une nouvelle dimension
@‘XDoctorX’:
le mettre ou ?
à l’endroit où il y a une fonction du même nom, dans la classe biome.
PS : essaie de comprendre le code avant de l’utiliser
-
RE: Touché personnalisé
Ta classe est mal déclarée : tu as mis “com.sebenforce.ClientProxy” dans l’annotation alors que ta classe s’appelle ProxyClient.
-
RE: Nombre d'items dans l'inventaire
Tu peux utiliser une boucle for en accédant à l’inventaire du joueur avec Minecraft.getMinecraft().thePlayer.
PS : penses à utiliser les balises java pour que l’on puisse voir les lignes plus facilement.
-
RE: Nombre d'items dans l'inventaire
Essaie avec çà :
int size = 0; // On initialise la variable InventoryPlayer inv = Minecraft.getMinecraft().thePlayer.inventory; // On récupère l'inventaire du joueur for (int i = 0; i < inv.getSizeInventory; i++) { // Boucle for if (inv.getStackInslot(i) != null && inv.getStackInSlot(i).getItem() == Items.emerald) size += inv.getStackInSlot(i).stackSize; // Si l'ItemStack à l'index n'est pas nul et que c'est bien une émeraude, alors on l'ajoute }
-
RE: Bug NBTTag pour Item avec craft
matches -> regarde si les slots correspondent
getCraftingResult -> retourne un ItemStack correspondant à l’output du craft
getRecipeSize -> retourne le nombre de slots à utiliser ( 9 = toute la table je crois)
getRecipeOutput -> l’ItemStack sans modifications, je ne sais pas à quoi çà sert -
RE: Les events en 1.8
@‘geekuko’:
je comprend pas comment on utilise le BlockPos …
BlockPos est simplement une classe contenant les coordonnées d’un bloc exemple : new BlockPos(x,y,z).
il remplace la plupart des paramètres x,y,z.
Latest posts made by SCAREX
-
RE: Générer une structure
Excellent tuto ! Mais Serait-il possible de mettre une vidéo svp
Le problème c’est que ce tutoriel date de 2014 et que la personne en question n’est plus vraiment présente (la version de minecraft n’est plus conseillée non plus). Donc je ne pense pas qu’une vidéo sera faite un jour.
-
RE: Créer un item container (type backpack / sac à dos)
Merci beaucoup ! je t’adore x)
Edit: par contre maintenant mes items se drop
http://prntscr.com/g1sq0f et ca aussi x)
re, est-il possible d’interdire deux backpack dans l’inventaire ?
genre avec un public void (ItemStack itemStack, EntityPlayer player, List list, boolean par4)
{
if (itemStack.= null)
{
String owner = itemStack. (“Interdit”);
list.add(EnumChatFormatting.RED + owner);
}
}?
C’est assez compliqué à faire car il faudrait soit modifier le code de minecraft soit empêcher à plein d’endroits qu’un nouvel item soit ajouté. En revanche ce qui est plus simple c’est de sauvegarder le backpack sur le joueur et ainsi peu importe quel backpack le joueur ouvrira ce sera le même (c’est le fonctionnement du coffre de l’end)
-
RE: Reactorcraft mod comment sa marche ?
Personnellement j’ai pas compris ce que t’as dis, si tu veux faire une structure multiblock regarde sur le forum y’a un tuto.
PS : pour arriver à lire un tutoriel en français il faut savoir le parler d’abord
-
RE: Probléme d'adaptation de texture de Gui en fonction du GuiScale
Tu fais tout en relatif : la taille et la position
-
RE: [1.4.x] Textures n'apparaissent pas dans le jeu mais apparaissent sous Eclipse
Le problème vient souvent de là : windows te donne l’image même si le nom différe au niveau des majuscules et minuscules mais une fois dans un jar il fait la différence, il vaut donc mieux tout mettre en minuscules
-
RE: Clé Flan's Mod
Regarde le code source de Flan’s mod ça t’aidera beaucoup à mon avis
-
RE: Utiliser gradle pour gérer les dépendances
Désolé mais CCL n’est plus disponible sur le repo de codechickenbones en 1.7.10 donc soit tu essayes de le trouver sur le repo de quelqu’un d’autre soit tu te mets à jour (je te conseille cette dernière).
-
RE: Faire un compteur de tick (Bar de soif)
Très étrange car pour moi la partie du code concernée est celle ci :
public void func_152657_b() { List list = null; BufferedReader bufferedreader = null; { try { bufferedreader = Files.newReader(this.usercacheFile, Charsets.UTF_8); list = (List)this.gson.fromJson(bufferedreader, field_152666_h); if (list != null) // null check { this.field_152661_c.clear(); this.field_152662_d.clear(); this.field_152663_e.clear(); list = Lists.reverse(list); // NPE Iterator iterator = list.iterator(); …...... }
-
RE: Minérais n'apparaissant pas sur sponge (coremods ou pas)
T’as réussi à lancer le jeu avec Sponge ?