
Zaloguj się, aby obserwować tę zawartość
Obserwujący
0
Szukam ogarniętych modderów
dodany przez
HARDKAMIL, w
Modyfikacje
Rekomendowane odpowiedzi

Ten temat został zamknięty. Brak możliwości dodania odpowiedzi.
Zaloguj się, aby obserwować tę zawartość
Obserwujący
0
-
Podobna zawartość
-
Przez marcin009988
Witam
Znacie jakieś mody które dodają roboty (lub coś w tym stylu), które można programować, aby np wydobywały surowce, eksplorowały, broniły wyznaczonego obszaru itp
Coś na podobnej zasadzie jak
Zaloguj lub zarejestruj się aby zobaczyć ten link.
lub Zaloguj lub zarejestruj się aby zobaczyć ten link.
.
Najlepiej pod 1.11, ale mogą też być pod starsze wersje. -
Przez Ktos94852
Cześć! Przedstawiam wam pierwszy filmik z serii, w której pokażę wam jak tworzyć mody do minecrafta. Dlaczego robię te poradniki? Otóż w sieci jest dość mało poradników polskich, a jak się jakiś znajdzie, to fakt - ludzie pokazują, jak robić mody, ale nie wiedzą co robią, po prostu zrzynają linijka po linijce z jakiegoś innego poradnika. Ja jestem całkowicie świadomy tego, co piszę, i wytłumaczę wam tworzenie modów, oraz pokażę jak zrobić najlepiej działający, i zarazem najprostszy kod. Zapraszam do oglądania, subskrybowania, komentowania, i łapkowania! :) [media]Zaloguj lub zarejestruj się aby zobaczyć ten link.
[/media] Jeśli chcesz się dowiedzieć, jakie mam doświadczenie w tworzeniu modów, wystarczy choćby obejrzeć wątek na minecraftforum z moim modem - zapraszam! : Zaloguj lub zarejestruj się aby zobaczyć ten link.
-
Przez HARDKAMIL
Witam, proszę o poprawienie/napisanie mi co źle zrobiłem:
Entity Steve:
package net.minecraft.src; public class EntitySteve extends EntityAnimal { public EntitySteve(World par1World) { super(par1World); this.texture = "/HardKamil/Steve.png"; this.setSize(0.9F, 1.3F); this.getNavigator().setAvoidsWater(true); this.tasks.addTask(0, new EntityAISwimming(this)); this.tasks.addTask(1, new EntityAIPanic(this, 0.38F)); this.tasks.addTask(2, new EntityAIMate(this, 0.2F)); this.tasks.addTask(3, new EntityAITempt(this, 0.25F, Item.wheat.shiftedIndex, false)); this.tasks.addTask(4, new EntityAIFollowParent(this, 0.25F)); this.tasks.addTask(5, new EntityAIWander(this, 0.2F)); this.tasks.addTask(6, new EntityAIWatchClosest(this, EntityPlayer.class, 6.0F)); this.tasks.addTask(7, new EntityAILookIdle(this)); } /** * Returns true if the newer Entity AI code should be run */ public boolean isAIEnabled() { return true; } public int getMaxHealth() { return 30; } /** * Returns the sound this mob makes while it's alive. */ protected String getLivingSound() { return "mob.none.say"; } /** * Returns the sound this mob makes when it is hurt. */ protected String getHurtSound() { return "mob.none.hurt"; } /** * Returns the sound this mob makes on death. */ protected String getDeathSound() { return "mob.none.hurt"; } /** * Plays step sound at given x, y, z for the entity */ protected void playStepSound(int par1, int par2, int par3, int par4) { this.func_85030_a("mob.none.step", 0.15F, 1.0F); } /** * Returns the volume for the sounds this mob makes. */ protected float getSoundVolume() { return 0.4F; } /** * Returns the item ID for the item the mob drops on death. */ protected int getDropItemId() { return Item.ingotIron.shiftedIndex; } /** * Drop 0-2 items of this living's type */ protected void dropFewItems(boolean par1, int par2) { int var3 = this.rand.nextInt(3) + this.rand.nextInt(1 + par2); int var4; for (var4 = 0; var4 < var3; ++var4) { this.dropItem(Item.ingotIron.shiftedIndex, 1); } var3 = this.rand.nextInt(3) + 1 + this.rand.nextInt(1 + par2); for (var4 = 0; var4 < var3; ++var4) { if (this.isBurning()) { this.dropItem(Item.redstone.shiftedIndex, 1); } else { this.dropItem(Item.ingotGold.shiftedIndex, 1); } } } /** * Called when a player interacts with a mob. e.g. gets milk from a cow, gets into the saddle on a pig. */ public boolean interact(EntityPlayer par1EntityPlayer) { ItemStack var2 = par1EntityPlayer.inventory.getCurrentItem(); if (var2 != null && var2.itemID == Item.bucketEmpty.shiftedIndex) { if (--var2.stackSize <= 0) { par1EntityPlayer.inventory.setInventorySlotContents(par1EntityPlayer.inventory.currentItem, new ItemStack(Item.bucketLava)); } else if (!par1EntityPlayer.inventory.addItemStackToInventory(new ItemStack(Item.bucketLava))) { par1EntityPlayer.dropPlayerItem(new ItemStack(Item.bucketLava.shiftedIndex, 1, 0)); } return true; } else { return super.interact(par1EntityPlayer); } } /** * This function is used when two same-species animals in 'love mode' breed to generate the new baby animal. */ public EntitySteve spawnBabyAnimal(EntityAgeable par1EntityAgeable) { return new EntitySteve(this.worldObj); } public EntityAgeable func_90011_a(EntityAgeable par1EntityAgeable) { return this.spawnBabyAnimal(par1EntityAgeable); } } Entity Notch:
package net.minecraft.src; public class EntityNotch extends EntityAnimal { public EntityNotch(World par1World) { super(par1World); this.texture = "/HardKamil/Notch.png"; this.setSize(0.9F, 1.3F); this.getNavigator().setAvoidsWater(true); this.tasks.addTask(0, new EntityAISwimming(this)); this.tasks.addTask(1, new EntityAIPanic(this, 0.38F)); this.tasks.addTask(2, new EntityAIMate(this, 0.2F)); this.tasks.addTask(3, new EntityAITempt(this, 0.25F, Item.wheat.shiftedIndex, false)); this.tasks.addTask(4, new EntityAIFollowParent(this, 0.25F)); this.tasks.addTask(5, new EntityAIWander(this, 0.2F)); this.tasks.addTask(6, new EntityAIWatchClosest(this, EntityPlayer.class, 6.0F)); this.tasks.addTask(7, new EntityAILookIdle(this)); } /** * Returns true if the newer Entity AI code should be run */ public boolean isAIEnabled() { return true; } public int getMaxHealth() { return 30; } /** * Returns the sound this mob makes while it's alive. */ protected String getLivingSound() { return "mob.none.say"; } /** * Returns the sound this mob makes when it is hurt. */ protected String getHurtSound() { return "mob.none.hurt"; } /** * Returns the sound this mob makes on death. */ protected String getDeathSound() { return "mob.none.hurt"; } /** * Plays step sound at given x, y, z for the entity */ protected void playStepSound(int par1, int par2, int par3, int par4) { this.func_85030_a("mob.none.step", 0.15F, 1.0F); } /** * Returns the volume for the sounds this mob makes. */ protected float getSoundVolume() { return 0.4F; } /** * Returns the item ID for the item the mob drops on death. */ protected int getDropItemId() { return Item.appleRed.shiftedIndex; } /** * Drop 0-2 items of this living's type */ protected void dropFewItems(boolean par1, int par2) { int var3 = this.rand.nextInt(3) + this.rand.nextInt(1 + par2); int var4; for (var4 = 0; var4 < var3; ++var4) { this.dropItem(Item.minecartEmpty.shiftedIndex, 1); } var3 = this.rand.nextInt(3) + 1 + this.rand.nextInt(1 + par2); for (var4 = 0; var4 < var3; ++var4) { if (this.isBurning()) { this.dropItem(Item.cookie.shiftedIndex, 1); } else { this.dropItem(Block.obsidian, 1); } } } /** * Called when a player interacts with a mob. e.g. gets milk from a cow, gets into the saddle on a pig. */ public boolean interact(EntityPlayer par1EntityPlayer) { ItemStack var2 = par1EntityPlayer.inventory.getCurrentItem(); if (var2 != null && var2.itemID == Item.bucketEmpty.shiftedIndex) { if (--var2.stackSize <= 0) { par1EntityPlayer.inventory.setInventorySlotContents(par1EntityPlayer.inventory.currentItem, new ItemStack(Item.bucketLava)); } else if (!par1EntityPlayer.inventory.addItemStackToInventory(new ItemStack(Item.bucketLava))) { par1EntityPlayer.dropPlayerItem(new ItemStack(Item.bucketLava.shiftedIndex, 1, 0)); } return true; } else { return super.interact(par1EntityPlayer); } } /** * This function is used when two same-species animals in 'love mode' breed to generate the new baby animal. */ public EntitySteve spawnBabyAnimal(EntityAgeable par1EntityAgeable) { return new EntityNotch(this.worldObj); } public EntityAgeable func_90011_a(EntityAgeable par1EntityAgeable) { return this.spawnBabyAnimal(par1EntityAgeable); } } Entity People:
package net.minecraft.src; public class EntityPeople extends EntityAnimal { public EntityPeople(World par1World) { super(par1World); this.texture = "/HardKamil/People.png"; this.setSize(0.9F, 1.3F); this.getNavigator().setAvoidsWater(true); this.tasks.addTask(0, new EntityAISwimming(this)); this.tasks.addTask(1, new EntityAIPanic(this, 0.38F)); this.tasks.addTask(2, new EntityAIMate(this, 0.2F)); this.tasks.addTask(3, new EntityAITempt(this, 0.25F, Item.wheat.shiftedIndex, false)); this.tasks.addTask(4, new EntityAIFollowParent(this, 0.25F)); this.tasks.addTask(5, new EntityAIWander(this, 0.2F)); this.tasks.addTask(6, new EntityAIWatchClosest(this, EntityPlayer.class, 6.0F)); this.tasks.addTask(7, new EntityAILookIdle(this)); } /** * Returns true if the newer Entity AI code should be run */ public boolean isAIEnabled() { return true; } public int getMaxHealth() { return 30; } /** * Returns the sound this mob makes while it's alive. */ protected String getLivingSound() { return "mob.none.say"; } /** * Returns the sound this mob makes when it is hurt. */ protected String getHurtSound() { return "mob.none.hurt"; } /** * Returns the sound this mob makes on death. */ protected String getDeathSound() { return "mob.none.hurt"; } /** * Plays step sound at given x, y, z for the entity */ protected void playStepSound(int par1, int par2, int par3, int par4) { this.func_85030_a("mob.none.step", 0.15F, 1.0F); } /** * Returns the volume for the sounds this mob makes. */ protected float getSoundVolume() { return 0.4F; } /** * Returns the item ID for the item the mob drops on death. */ protected int getDropItemId() { return Item.ingotIron.shiftedIndex; } /** * Drop 0-2 items of this living's type */ protected void dropFewItems(boolean par1, int par2) { int var3 = this.rand.nextInt(3) + this.rand.nextInt(1 + par2); int var4; for (var4 = 0; var4 < var3; ++var4) { this.dropItem(Item.saddle.shiftedIndex, 1); } var3 = this.rand.nextInt(3) + 1 + this.rand.nextInt(1 + par2); for (var4 = 0; var4 < var3; ++var4) { if (this.isBurning()) { this.dropItem(Item.lapisLazuri.shiftedIndex, 1); } else { this.dropItem(Item.blazeRod.shiftedIndex, 1); } } } /** * Called when a player interacts with a mob. e.g. gets milk from a cow, gets into the saddle on a pig. */ public boolean interact(EntityPlayer par1EntityPlayer) { ItemStack var2 = par1EntityPlayer.inventory.getCurrentItem(); if (var2 != null && var2.itemID == Item.bucketEmpty.shiftedIndex) { if (--var2.stackSize <= 0) { par1EntityPlayer.inventory.setInventorySlotContents(par1EntityPlayer.inventory.currentItem, new ItemStack(Item.bucketLava)); } else if (!par1EntityPlayer.inventory.addItemStackToInventory(new ItemStack(Item.bucketLava))) { par1EntityPlayer.dropPlayerItem(new ItemStack(Item.bucketLava.shiftedIndex, 1, 0)); } return true; } else { return super.interact(par1EntityPlayer); } } /** * This function is used when two same-species animals in 'love mode' breed to generate the new baby animal. */ public EntitySteve spawnBabyAnimal(EntityAgeable par1EntityAgeable) { return new EntityPeople(this.worldObj); } public EntityAgeable func_90011_a(EntityAgeable par1EntityAgeable) { return this.spawnBabyAnimal(par1EntityAgeable); } } mod_MinePeople:
package net.minecraft.src; import java.util.Map; public class mod_MinePeople extends BaseMod { public void load() { ModLoader.registerEntityID(EntitySteve.class, "Steve", ModLoader.getUniqueEntityId()); ModLoader.addSpawn(EntitySteve.class, 12, 4, 4, EnumCreatureType.monster); ModLoader.registerEntityID(EntityNotch.class, "Steve", ModLoader.getUniqueEntityId()); ModLoader.addSpawn(EntityNotch.class, 12, 4, 4, EnumCreatureType.monster); ModLoader.registerEntityID(EntityPeople.class, "Steve", ModLoader.getUniqueEntityId()); ModLoader.addSpawn(EntityPeople.class, 12, 4, 4, EnumCreatureType.monster); } public void addRenderer(Map map) { map.put(EntitySteve.class, new RenderBiped(new ModelBiped(), 0.5F)); map.put(EntityNotch.class, new RenderBiped(new ModelBiped(), 0.5F)); map.put(EntityPeople.class, new RenderBiped(new ModelBiped(), 0.5F)); } public String getVersion() { return "v1.0"; } public mod_MinePeople() { } } Kod błędu:
Pierwszy: EntityNotch.java: 141 incompatible types found:net.minecraft.src Entity Notch net.minecraft.src Entity Steve return new EntityNotch (this.worldObj); Drugi: EntityPeople java:101 cannot find symbol: variable lapisLazuri Trzeci: EntityPeople.java: 141 incompatible types found:net.minecraft.src Entity Notch net.minecraft.src Entity Steve return new EntityPeople (this.worldObj); Czwarty: EntityNotch.java:105 Entity cannot be applied to net.minecraft.src.Block.int this.dropItem(Block.obsidian, 1); incompatible types found:net.minecraft.src Entity Notch net.minecraft.src Entity Steve return new EntityNotch (this.worldObj);
-