Bonjour,
Voici mes problèmes ( eh oui y'en a plusieurs :gni: ) :
Tout d'abord, j'essaye de faire un bloc qui, si il est activé par un clic droit, pourra alimenter en redstone.
Voilà le seul problème est que, le code marche mais la fonction tourne au ralenti....
Pour que l'effet se produise, il faut que je retire un bloc adjacent....
Ca ne se fait donc pas automatiquement.
Voici le code :
BlockTest
Mon deuxième problème, est que quand j'essaye de faire une modification sur un bloc avec le clic droit ( ici par exemple la luminosité ou dans d'autres codes la taille du bloc ), l'effet est ignoré !
Le dernier problème est que j'aimerais savoir si il existe une fonction permettant de savoir si une entité est présente à un endroit précis. Sur un bloc, par exemple.
J'ai fouillé un peu World.java, mais rien ne m'a sauté aux yeux...
En gros pouvoir faire quelque chose comme ceci :
Voici mes problèmes ( eh oui y'en a plusieurs :gni: ) :
Tout d'abord, j'essaye de faire un bloc qui, si il est activé par un clic droit, pourra alimenter en redstone.
Voilà le seul problème est que, le code marche mais la fonction tourne au ralenti....
Pour que l'effet se produise, il faut que je retire un bloc adjacent....
Ca ne se fait donc pas automatiquement.
Voici le code :
BlockTest
Code:
package net.minecraft.src;
import java.util.Random;
public class BlockTestextends Block
{
protected BlockTest (int i, int j)
{
super(i, j, Material.circuits);
setTickOnLoad(true);
int active = 0;
}
public int idDropped(int i, Random random)
{
return mod_my.test.blockID;
}
public boolean canProvidePower()
{
return true;
}
public boolean blockActivated(World world, int i, int j, int k, EntityPlayer entityplayer)
{
if(this.getActive() == 1)
this.setActive(0);
else
this.setActive(1);
return true;
}
public boolean isIndirectlyPoweringTo(World world, int i, int j, int k, int l)
{
if(this.getActive() == 1)
return true;
else
return false;
}
public void updateTick(World world, int i, int j, int k, Random random)
{
if(this.getActive() == 1)
setLightValue(0.7F);
else
setLightValue(0.0F);
}
public void setActive(int a)
{
this.active = a;
}
public int getActive()
{
return this.active;
}
public int tickRate()
{
return 2;
}
public int active;
}
Mon deuxième problème, est que quand j'essaye de faire une modification sur un bloc avec le clic droit ( ici par exemple la luminosité ou dans d'autres codes la taille du bloc ), l'effet est ignoré !
Le dernier problème est que j'aimerais savoir si il existe une fonction permettant de savoir si une entité est présente à un endroit précis. Sur un bloc, par exemple.
J'ai fouillé un peu World.java, mais rien ne m'a sauté aux yeux...
En gros pouvoir faire quelque chose comme ceci :
Code:
if(world.getBlockID(i, j - 1, k + 1) == Entity)
{
// Travailler avec l'entité
}