Guide for using Skin feature - DeeCaaD/CrackShotPlus_V2 GitHub Wiki

    Skin:
        Default_Skin: <String>
        Skins: <String>,<etc.>

Understading how skins work

When using durability

Basically CrackShotPlus uses per durability texture feature in resource packs which came in 1.9 to minecraft. With this feature item can have as many textures for it as item has durability. For example wood hoe can have 60 different textures because it has 60 durability levels.

Best examples you get from CrackShotPlus's resource pack and CrackShotPlus's weapons.
Here is great tutorial to help you setupping your resource pack and skins in CrackShotPlus. Read this tutorial well, because this thing you need to get yourself. I wont help you with setupping resource packs.

Change_Item_Type simply changes item type. Use that to either organize your resource pack or to use skins in 1.8. If you use skins in 1.8 don't use Durability.

When using Custom model Data?

Basically CrackShotPlus uses Custom Model Data feature which came in 1.14 to minecraft. With this feature ANY item can have as many textures you want.

For this you can't currently find examples from default weapons of resource pack of CrackShotPlus, but with quick googling you can find out how it works. Simply google something like "custom model data tutorial"

It is recommended to not use Durability or Change_Item_Type when using this unless you know what you're doing.

Changing Skins

In case weapon has default skin it will be applied instantly when hovered over weapon slot in inventory.

Changing skins is made easy. As long as weapon's skins are properly configured, you'll only have to do command /skin to open main GUI and in that GUI click weapon which skin you want to change. Skin changes are stored into database to be used later on. Make sure to check cosmetic_gui.yml.

This video shows how skin, trail and visual reload changing works. It also shows how to attach and detach attachments. Also it shows how to remove ammo from weapon. https://youtu.be/guSflC7MX4w

New GUI system requested and paid by ultrapunisher97. Server ip: mcaim.com

Default_Skin

Determines weapon's default skin.
Note: Durability is taken from skins folder from skin (WeaponTitle)_(Skin).

Example Default_Skin is "NoSkin" and weapon's name is AK-47 and weapon doesn't have skins added then CSP takes new durability for weapon from skin AK-47_NoSkin.

Skins

Determines the skins which can be added for weapon.
Note: For multiple skins put , between them. For example Skins: "Skin1,Skin2,Skin3"
Note: Skin names are decided inside skins folder.

Skin Folder

WeaponName_Skin:
    Durability: <Integer>
    Custom_Model_Data: <Integer>
    Change_Item_Type: <String>
    Scope:
        Durability: <Integer>
        Custom_Model_Data: <Integer>
        Change_Item_Type: <String>
    Reload:
        Durability: <Integer>
        Custom_Model_Data: <Integer>
        Change_Item_Type: <String>
    Item:
        Item_Name: <String>

This were an example of things which weapon can have using skins.

Durability determines weapon's durability while using skin.
Custom_Model_Data determines weapon's custom model data which was introduced in 1.14 while using skin.
Change_Item_Type determines weapon's new item type while using skin.
Item_Name can be modified to change skin's name in update lore for example.

Example usage using custom model data

First read understanding how skins work if you don't know how to use custom model data or durability based textures

Weapons folder

MyWeapon:
    Skin:
        Default_Skin: "NoSkin"
        Skins: "Red,Blue"

Skins folder

MyWeapon_NoSkin:
    Custom_Model_Data: 1
    Scope:
        Custom_Model_Data: 2
    Reload:
        Custom_Model_Data: 3
    Item:
        Item_Name: "&7No skin"

MyWeapon_Red:
    Custom_Model_Data: 4
    Scope:
        Custom_Model_Data: 5
    Reload:
        Custom_Model_Data: 6
    Item:
        Item_Name: "&4Red"

MyWeapon_Blue:
    Custom_Model_Data: 7
    Scope:
        Custom_Model_Data: 8
    Reload:
        Custom_Model_Data: 9
    Item:
        Item_Name: "&bBlue"
⚠️ **GitHub.com Fallback** ⚠️