Jump to content

Recommended Posts

Posted (edited)

I am trying to make my own bow, but I don't want it to handle like the Vanilla bow would.
I tried doing it by extending ShootableItem in my item class and did some quick stuff to see if the bow would shoot arrows and it worked.

However, I am confused on how can I make my bow use the pulling stages textures.
Checked the Vanilla BowItem json file and copied it for my own and as far as I understand the change of textures is based on two variables. "pulling" and "pull"
However I am not quite sure how do I set those variables in my item class.

I tried looking at the Vanilla BowItem class for "inspiration', but I don't quite understand what is going on because a lot of variables are obfuscated.

Perhaps something to do with the version of forge I am using.

To be fair, even if they weren't obfuscated, I probably still wouldn't understand how it works.

 

Could someone please explain to me what is going on? I never worked with such things before.

Here is the Vanilla Bow (just the constructor in case it is copyrighted): https://gist.github.com/Cerandior/525f0bbcd99961ceaf0c2539b117bc44

 

Thank you for your help.

Edited by Cerandior
  • 5 months later...
Posted

Right, so I am a little late. I had the same issue. Just copy the vanilla bow .json file and replace the name of the bow and modid. Then you need to create separate item .json's for all the stages of a bow being pulled. It's important than in the parent line you set the item as bow. Then once you make the textures for all stages it should work.

"parent": "item/bow"

The vanilla bow .json

{
    "parent": "item/generated",
    "textures": {
        "layer0": "item/bow"
    },
    "display": {
        "thirdperson_righthand": {
            "rotation": [ -80, 260, -40 ],
            "translation": [ -1, -2, 2.5 ],
            "scale": [ 0.9, 0.9, 0.9 ]
        },
        "thirdperson_lefthand": {
            "rotation": [ -80, -280, 40 ],
            "translation": [ -1, -2, 2.5 ],
            "scale": [ 0.9, 0.9, 0.9 ]
        },
        "firstperson_righthand": {
            "rotation": [ 0, -90, 25 ],
            "translation": [ 1.13, 3.2, 1.13],
            "scale": [ 0.68, 0.68, 0.68 ]
        },
        "firstperson_lefthand": {
            "rotation": [ 0, 90, -25 ],
            "translation": [ 1.13, 3.2, 1.13],
            "scale": [ 0.68, 0.68, 0.68 ]
        }
    },
    "overrides": [
        {
            "predicate": {
                "pulling": 1
            },
            "model": "item/bow_pulling_0"
        },
        {
            "predicate": {
                "pulling": 1,
                "pull": 0.65
            },
            "model": "item/bow_pulling_1"
        },
        {
            "predicate": {
                "pulling": 1,
                "pull": 0.9
            },
            "model": "item/bow_pulling_2"
        }
    ]
}

 

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Announcements



×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.