Créer des effets de potions
-
les modifications de l’ath sont provoquer par l’effet de la potion d’après mon point de vue
-
@‘Fine33’:
Sauf erreur de ma part, il a écrit que ce n’est que les effets de potion, pas les potions en elles-mêmes

Oui ce n’est que les effets de potions car je trouve que cela reste simple de créer un item potion et de faire en sorte d’addPotionEffect
Envoyé depuis mon Android edition by sfr STARADDICT avec Tapatalk
-
Oui, je répondais à Diangle

-
tu peut le faire en partie bonus sa fait plus de contenu
-
Je trouves pas pour le bonus… Help Please
-
Up, tu peux dire comment rajouter des effets autres que speed par exmple pour fusionner 2 effets de potion sous un autre nom etc… Ou comment créer des effets completement customs ?
-
#event tu mes un if(l effet est actif) et tu fais ce que tu veux a l intérieur c est pas sorcier !
-
Je peux débuter non ?
-
@‘sosoh’:
Je peux débuter non ?
Bah Va voir un tuto sur java car c’est la base
-
@‘pulganr’:
@‘sosoh’:
Je peux débuter non ?
Bah Va voir un tuto sur java car c’est la base
Mais je ne maitrise pas les events encore c’est pour ca… D’ailleurs j’ai toujours pas trouvé… Je cherche dans toutes les classes des events mais je ne trouves pas l’event pour savoir si un joueur a un effet de potion…
-
Tu peux m’aider, j’ai créer une classe avec mon event:
package com.harrypotter.sosoh.common; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.entity.player.EntityPlayerMP; import cpw.mods.fml.common.gameevent.TickEvent; import cpw.mods.fml.common.gameevent.TickEvent.Phase; import cpw.mods.fml.common.gameevent.TickEvent.Type; import cpw.mods.fml.relauncher.Side; public class EventHandler { public static class PlayerTickEvent extends TickEvent { public final EntityPlayer player; public PlayerTickEvent(Phase phase, EntityPlayer player) { super(Type.PLAYER, player instanceof EntityPlayerMP ? Side.SERVER : Side.CLIENT, phase); this.player = player; } } }Mais je ne trouves pas comment checker si le joueur a mon effet… J’ai essaye avec ca mais ca ne marche pas:
package com.harrypotter.sosoh.common; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.entity.player.EntityPlayerMP; import cpw.mods.fml.common.gameevent.TickEvent; import cpw.mods.fml.common.gameevent.TickEvent.Phase; import cpw.mods.fml.common.gameevent.TickEvent.Type; import cpw.mods.fml.relauncher.Side; public class EventHandler { public static class PlayerTickEvent extends TickEvent { public final EntityPlayer player; public PlayerTickEvent(Phase phase, EntityPlayer player) { super(Type.PLAYER, player instanceof EntityPlayerMP ? Side.SERVER : Side.CLIENT, phase); this.player = player; if player.getActivePotionEffect(SomniferePotionEffect){ } } } } -
S’il vous plait je galere je ne trouves pas

-
C est cette ligne
- if (event.entityLiving.isPotionActive(BOTIEffect.superPowersFlash))
-
Ah ok merci! J’etais bloqué et tu me rend extrêmement service

-
Déjà tu devais lire le tutoriel sur les event car le code que tu as mit ne risque pas du tout de fonctionner …
Et 24h entre chaque message, merci de respecter le règlement. -
J’ai mis le code, suivis le tuto sur les events mais je ne sais pas par quoi remplacer
:::
[size=xx-smallBOTIEffect][size=xx-small.][size=xx-smallsuperPowersFlash]
:::J’ai remplacer BOTIEffect par SomniferePotionEffect, mais pour le superPowersFlash je ne sais pas quoi mettre car sinon ca fais une erreur…
Et la j’ai pas besoin d’attendre 24h pour répondre non ? Car tu as mis un message toi non?
-
Oui, 24h entre deux posts de la même personne, dans l’autre cas il suffit d’éditer le message …
C’est presque la même règle sur tous les forums, ça évite le spam.Logiquement tu mets ClassOuSeTrouveLaDeclarationDeLaPotion.nomDuField
ça c’est la base en Java, il faut l’apprendre (il y a un bon tutoriel sur OpenClassRoom) sinon tu n’arrivera à rien. -
Je vais suivre ce tuto des que je peux
Mais OpenClassRoom c’est le site du zero non ? -
Oui. Ils ont changés de nom depuis un bon moment.
-
Alors j’ai suivis vos conseils à la lettre mais ca n’a aucun effet (j’ai bien l’effet mais lui n’en a aucun, je sais ma phrase est bizzard… un effet sans effet)
Mes codes:
:::package com.harrypotter.sosoh.common; import net.minecraft.entity.player.EntityPlayer; import net.minecraftforge.event.entity.living.LivingEvent; import cpw.mods.fml.common.eventhandler.SubscribeEvent; public class EventHandler { @SubscribeEvent public void LivingEvent(LivingEvent event){ if(event.entityLiving instanceof EntityPlayer) { if (event.entityLiving.isPotionActive(SomniferePotionEffect.somniferePotionEffect)){ if (event.entityLiving.getActivePotionEffect(SomniferePotionEffect.somniferePotionEffect).getDuration() == 0){ event.entityLiving.removePotionEffect(SomniferePotionEffect.somniferePotionEffect.id); return; } if (event.entityLiving.worldObj.isRemote){ if(event.entityLiving.onGround){ event.entityLiving.motionX *= 5.0F; event.entityLiving.motionZ *= 5.0F; } } } } } }package com.harrypotter.sosoh.common; import java.awt.Color; import cpw.mods.fml.common.gameevent.TickEvent; import cpw.mods.fml.common.gameevent.TickEvent.Phase; import cpw.mods.fml.common.gameevent.TickEvent.Type; import cpw.mods.fml.relauncher.Side; import net.minecraft.entity.EntityLivingBase; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.entity.player.EntityPlayerMP; import net.minecraft.potion.Potion; public class SomniferePotionEffect extends Potion{ public static SomniferePotionEffect somniferePotionEffect; public static int SomniferePotionEffectID; protected SomniferePotionEffect(int id, boolean isBadEffectOrNot, int color, String name) { super(id, isBadEffectOrNot, color); this.setPotionName("potion." + name); } @Override public SomniferePotionEffect setIconIndex(int x, int y) { super.setIconIndex(x, y); return this; } public static void loadEffects() { somniferePotionEffect = new SomniferePotionEffect(SomniferePotionEffectID, true, Color.LIGHT_GRAY.getRGB(), "somniferePotionEffect").setIconIndex(4, 1); } public static void register() { SomniferePotionEffect.potionTypes[somniferePotionEffect.getId()] = somniferePotionEffect; } }package com.harrypotter.sosoh.common; import com.harrypotter.sosoh.common.blocks.BlockChaudron; import com.harrypotter.sosoh.common.blocks.TileEntityChaudron; import com.harrypotter.sosoh.common.creativetabs.CreativeTabsHPB; import com.harrypotter.sosoh.common.creativetabs.CreativeTabsHPF; import com.harrypotter.sosoh.common.creativetabs.CreativeTabsHPP; import com.harrypotter.sosoh.common.items.ItemBaguette1; import com.harrypotter.sosoh.common.items.ItemBaguette2; import com.harrypotter.sosoh.common.items.ItemBaguette3; import com.harrypotter.sosoh.common.items.ItemBiere; import com.harrypotter.sosoh.common.items.ItemChocogrenouille; import com.harrypotter.sosoh.common.items.ItemChope; import com.harrypotter.sosoh.common.items.ItemDragees; import com.harrypotter.sosoh.common.items.ItemJusCitrouille; import com.harrypotter.sosoh.common.items.ItemPaquetDragees; import com.harrypotter.sosoh.common.items.ItemRhumGroseille; import com.harrypotter.sosoh.common.items.ItemSucacide; import com.harrypotter.sosoh.common.items.ItemTabletteChocolat; import com.harrypotter.sosoh.common.items.ItemVerreVide; import com.harrypotter.sosoh.common.items.ItemVinOrtie; import com.harrypotter.sosoh.common.items.ItemVinSureau; import com.harrypotter.sosoh.proxy.CommonProxy; import net.minecraft.block.Block; import net.minecraft.block.material.Material; import net.minecraft.creativetab.CreativeTabs; import net.minecraft.enchantment.Enchantment; import net.minecraft.item.Item; import net.minecraft.potion.Potion; import net.minecraftforge.common.MinecraftForge; import cpw.mods.fml.common.FMLCommonHandler; import cpw.mods.fml.common.Mod; import cpw.mods.fml.common.Mod.EventHandler; import cpw.mods.fml.common.Mod.Instance; import cpw.mods.fml.common.SidedProxy; import cpw.mods.fml.common.event.FMLInitializationEvent; import cpw.mods.fml.common.event.FMLPostInitializationEvent; import cpw.mods.fml.common.event.FMLPreInitializationEvent; import cpw.mods.fml.common.registry.GameRegistry; @Mod(modid = "modharrypotter", name = "Mod Harry Potter", version = "1.0.0") public class ModHarryPotter{ //Nourritures public static Item itemChocogrenouille, itemPaquetDragees, itemDragees, itemSucacide, itemTabletteChocolat, itemVerreVide, itemVinOrtie, itemVinSureau, itemChope, itemBiere, itemRhumGroseille, itemJusCitrouille; //Baguettes public static Item itemBaguette1, itemBaguette2, itemBaguette3; //Plantes //Potions public static Block blockChaudron; public static Item itemPotionTueLoup; //Creative Tabs public static CreativeTabs creativetabsHPF, creativetabsHPB, creativetabsHPP; // public static final String MODID = "modharrypotter"; @Instance("modharrypotter") public static ModHarryPotter instance; @SidedProxy(clientSide = "com.harrypotter.sosoh.proxy.ClientProxy", serverSide = "com.harrypotter.sosoh.proxy.CommonProxy") public static CommonProxy proxy; @EventHandler public void preInit(FMLPreInitializationEvent event) { //Creative Tabs creativetabsHPF = new CreativeTabsHPF("creative_tabs_hpf"); creativetabsHPB = new CreativeTabsHPB("creative_tabs_hpb"); creativetabsHPP = new CreativeTabsHPP("creative_tabs_hpp"); //Nourriture itemChocogrenouille = new ItemChocogrenouille(6,0.5F,false).setUnlocalizedName("chocogrenouille"); GameRegistry.registerItem(itemChocogrenouille, "item_chocogrenouille", ModHarryPotter.MODID); itemDragees = new ItemDragees(1,0.4F,false).setUnlocalizedName("dragees"); GameRegistry.registerItem(itemDragees, "item_dragees", ModHarryPotter.MODID); itemPaquetDragees = new ItemPaquetDragees().setUnlocalizedName("paquetdragees"); GameRegistry.registerItem(itemPaquetDragees, "item_paquet_dragees", ModHarryPotter.MODID); itemSucacide = new ItemSucacide(3, 0.5F, false).setUnlocalizedName("sucacide"); GameRegistry.registerItem(itemSucacide, "item_sucacide", ModHarryPotter.MODID); itemTabletteChocolat = new ItemTabletteChocolat(4,1.0F,false).setUnlocalizedName("tablettechocolat"); GameRegistry.registerItem(itemTabletteChocolat, "item_tablettechocolat", ModHarryPotter.MODID); itemVerreVide = new ItemVerreVide().setUnlocalizedName("verrevide"); GameRegistry.registerItem(itemVerreVide, "item_verrevide", ModHarryPotter.MODID); itemVinOrtie = new ItemVinOrtie(4, 0.6F, false).setUnlocalizedName("vinortie"); GameRegistry.registerItem(itemVinOrtie, "item_vinortie", ModHarryPotter.MODID); itemVinSureau = new ItemVinSureau(4, 0.8F, false).setUnlocalizedName("vinsureau"); GameRegistry.registerItem(itemVinSureau, "item_vinsureau", ModHarryPotter.MODID); itemBiere = new ItemBiere(6, 0.7F, false).setUnlocalizedName("biere"); GameRegistry.registerItem(itemBiere, "item_biere", ModHarryPotter.MODID); itemChope = new ItemChope().setUnlocalizedName("chope"); GameRegistry.registerItem(itemChope, "item_chope", ModHarryPotter.MODID); itemRhumGroseille = new ItemRhumGroseille(6, 0.7F, false).setUnlocalizedName("rhumgroseille"); GameRegistry.registerItem(itemRhumGroseille, "item_rhumgroseille", ModHarryPotter.MODID); itemJusCitrouille = new ItemJusCitrouille(3, 1.0F, false).setUnlocalizedName("juscitrouille"); GameRegistry.registerItem(itemJusCitrouille, "item_juscitrouille", ModHarryPotter.MODID); //Baguettes itemBaguette1 = new ItemBaguette1().setUnlocalizedName("baguette1"); GameRegistry.registerItem(itemBaguette1, "item_baguette_1", ModHarryPotter.MODID); itemBaguette2 = new ItemBaguette2().setUnlocalizedName("baguette2"); GameRegistry.registerItem(itemBaguette2, "item_baguette_2", ModHarryPotter.MODID); itemBaguette3 = new ItemBaguette3().setUnlocalizedName("baguette3"); GameRegistry.registerItem(itemBaguette3, "item_baguette_3", ModHarryPotter.MODID); //Plantes //Potions blockChaudron = new BlockChaudron(Material.iron).setBlockName("chaudron"); GameRegistry.registerBlock(blockChaudron, "block_chaudron"); GameRegistry.registerTileEntity(TileEntityChaudron.class, "ModHarryPotter.MODID:BlockChaudron"); SomniferePotionEffect.SomniferePotionEffectID = 30; } @EventHandler public void init(FMLInitializationEvent event) { proxy.registerRender(); //Potions SomniferePotionEffect.loadEffects(); SomniferePotionEffect.register(); MinecraftForge.EVENT_BUS.register(new com.harrypotter.sosoh.common.EventHandler()); } @EventHandler public void postInit(FMLPostInitializationEvent event) { } }:::