No, you should always download Forge from our site: https://files.minecraftforge.net/
If its down for you then it's something on your end. As its been running just fine.
` at com._idrae.travelers_index.client.gui.OpenIndexButtonHandler.onGuiInit(OpenIndexButtonHandler.java:27) ~[?:1.15.2-1.0.1] {re:classloading}`
Travelers index is broken.
I have the problem, that nothing is happening. I have the loader and the model in the blockstate.json:
(if I remove the model property it just renders as the default black/pink block)
{
"variants": {
"": {
"loader": "gates:gate_placer_loader",
"model": "gates:block/gate_placer"
}
}
}
But my GatePlacerModel class is never called.
ModelLoader:
public class GatePlacerModelLoader implements IModelLoader<GatePlacerModelConfiguration> {
public static GatePlacerModelLoader INSTANCE = new GatePlacerModelLoader();
@Override
public void onResourceManagerReload(IResourceManager resourceManager) {
// TODO Auto-generated method stub
}
@Override
public GatePlacerModelConfiguration read(JsonDeserializationContext deserializationContext, JsonObject modelContents) {
return new GatePlacerModelConfiguration();
}
}
ModelConfiguration:
public class GatePlacerModelConfiguration implements IModelGeometry<GatePlacerModelConfiguration> {
@Override
public IBakedModel bake(IModelConfiguration owner, ModelBakery bakery, Function spriteGetter, IModelTransform modelTransform, ItemOverrideList overrides, ResourceLocation modelLocation) {
return new GatePlacerModel(overrides);
}
@Override
public Collection getTextures(IModelConfiguration owner, Function modelGetter, Set missingTextureErrors) {
Set<RenderMaterial> texs = Sets.newHashSet();
if (owner.isTexturePresent("base")) texs.add(owner.resolveTexture("base"));
if (owner.isTexturePresent("all")) texs.add(owner.resolveTexture("all"));
return texs;
}
}
Model:
public class GatePlacerModel extends BakedModel {
public GatePlacerModel(ItemOverrideList overrides) {
super(false, false, false, null, overrides, null, null);
// TODO Auto-generated constructor stub
}
@Override
public List<BakedQuad> getQuads(BlockState state, Direction side, Random rand, IModelData extraData) {
if(extraData.hasProperty(GatePlacerTileEntity.MIMICED_BLOCKSTATE_PROPERTY)) {
BlockState mimiced = extraData.getData(GatePlacerTileEntity.MIMICED_BLOCKSTATE_PROPERTY);
IBakedModel mimicedModel = Minecraft.getInstance().getBlockRendererDispatcher().getModelForState(mimiced);
return mimicedModel.getQuads(mimiced, side, rand, extraData);
} else {
return super.getQuads(state, side, rand, extraData);
}
}
}
Inside of my block i have this method:
@Override
public ActionResultType onBlockActivated(BlockState state, World worldIn, BlockPos pos, PlayerEntity player, Hand handIn, BlockRayTraceResult hit) {
ItemStack activeStack = player.getHeldItem(handIn);
if(activeStack.getItem() instanceof BlockItem) {
Block block = ((BlockItem)activeStack.getItem()).getBlock();
((GatePlacerTileEntity)worldIn.getTileEntity(pos)).setMimicedBlockState(block.getDefaultState());
// notify for block update, so the new mimiced block is synced in the tileentity class
worldIn.notifyBlockUpdate(pos, state, state.with(MIMICED, Boolean.valueOf(true)), 2);
return ActionResultType.SUCCESS;
}
return ActionResultType.FAIL;
}
Am I doing something wrong?
oh I thought i just needed onUsingTick. also I looked over your code and I don't want my Gun/Bow shooting bullets like a snowball I want it to actually shoot like a real ak47 as i said before