Пулялка

Я сделал что-то наподобие посохо-лука: имеет часть кода лука, но стреляет мнговенно, без оттяжки тетивы и т.д. Текстура есть, все есть, даже собственная сущность патрона есть (это посох душ, посему патрон это душа), но... Я не знаю как заставить появиться текстуру. Я вместо моего патрона запускал снежки - все норм, да и что там - с моим патроном тоже все нормально, только выглядит это так, будто я пускаю невидимый дамажащий луч. Вот мне и нужен рендер текстуры, один вопрос - как?
 
import com.sun.prism.Texture;
import net.minecraft.entity.EntityLivingBase;
import net.minecraft.entity.monster.EntityBlaze;
import net.minecraft.entity.monster.EntitySkeleton;
import net.minecraft.entity.monster.EntityZombie;
import net.minecraft.entity.projectile.EntityThrowable;
import net.minecraft.util.DamageSource;
import net.minecraft.util.MovingObjectPosition;
import net.minecraft.world.World;

public class EntitySoulAmmo extends EntityThrowable
{
public EntitySoulAmmo(World par1World)
{
super(par1World);
}


public EntitySoulAmmo(World par1World, EntityLivingBase par2EntityLivingBase)
{
super(par1World, par2EntityLivingBase);
}


public EntitySoulAmmo(World par1World, double par2, double par4, double par6)
{
super(par1World, par2, par4, par6);
}


@Override
protected void onImpact(MovingObjectPosition par1MovingObjectPosition)
{
if (par1MovingObjectPosition.entityHit != null)
{
byte b0 = 8;

if (par1MovingObjectPosition.entityHit instanceof EntityZombie || par1MovingObjectPosition.entityHit instanceof EntitySkeleton)
{
b0 = 12;
}


par1MovingObjectPosition.entityHit.attackEntityFrom(DamageSource.causeThrownDamage(this, this.getThrower()), b0);
}


for (int i = 0; i < 8; ++i)
{
this.worldObj.spawnParticle("cloud", this.posX, this.posY, this.posZ, 0.5D, 0.5D, 0.5D);
}


if (!this.worldObj.isRemote)
{
this.setDead();
}
}
}
 
 
Код:
import com.sun.prism.Texture;
import net.minecraft.entity.EntityLivingBase;
import net.minecraft.entity.monster.EntityBlaze;
import net.minecraft.entity.monster.EntitySkeleton;
import net.minecraft.entity.monster.EntityZombie;
import net.minecraft.entity.projectile.EntityThrowable;
import net.minecraft.util.DamageSource;
import net.minecraft.util.MovingObjectPosition;
import net.minecraft.world.World;

public class EntitySoulAmmo extends EntityThrowable
{
    public EntitySoulAmmo(World par1World)
    {
        super(par1World);
    }

    public EntitySoulAmmo(World par1World, EntityLivingBase par2EntityLivingBase)
    {
        super(par1World, par2EntityLivingBase);
    }

    public EntitySoulAmmo(World par1World, double par2, double par4, double par6)
    {
        super(par1World, par2, par4, par6);
    }

    @Override
    protected void onImpact(MovingObjectPosition par1MovingObjectPosition)
    {
        if (par1MovingObjectPosition.entityHit != null)
        {
            byte b0 = 8;

            if (par1MovingObjectPosition.entityHit instanceof EntityZombie || par1MovingObjectPosition.entityHit instanceof EntitySkeleton)
            {
                b0 = 12;
            }

            par1MovingObjectPosition.entityHit.attackEntityFrom(DamageSource.causeThrownDamage(this, this.getThrower()), b0);
        }

        for (int i = 0; i < 8; ++i)
        {
            this.worldObj.spawnParticle("cloud", this.posX, this.posY, this.posZ, 0.5D, 0.5D, 0.5D);
        }

        if (!this.worldObj.isRemote)
        {
            this.setDead();
        }
    }
}
 
Magitrop написал(а):
Вот мне и нужен рендер текстуры, один вопрос - как?
У тебя хоть есть:
Код:
RenderingRegistry.registerEntityRenderingHandler(EntitySoulAmmo.class, new RenderEntitySoulAmmo());
... подобия этого?
 
Назад
Сверху