Welcome!

Join our community of MMO enthusiasts and game developers! By registering, you'll gain access to discussions on the latest developments in MMO server files and collaborate with like-minded individuals. Join us today and unlock the potential of MMO server development!

Join Today!

[help] skin system overz

Junior Spellweaver
Joined
Oct 25, 2017
Messages
158
Reaction score
17
Hello everyone, I use the skin system OverZ and I had a difficulty, as all my skins are divided into categories that were Skins on weapons to arms, Skins on armor to armor, etc.Sorry for my bad english
 
Experienced Elementalist
Joined
May 28, 2017
Messages
225
Reaction score
127
for(int i=0; i<gUserProfile.ProfileData.NumRecipes; ++i)
{
const SkinsConfig* cfg = g_pWeaponArmory->getSkinsConfig(gUserProfile.ProfileData.RecipesLearned);
r3d_assert(cfg);
if(cfg->BaseSkinID == SkinID) {
var[0].SetUInt(cfg->m_itemID);
var[1].SetString(cfg->m_StoreName);
var[2].SetString(cfg->m_Description);
var[3].SetString(g_pWeaponArmory->getConfig(cfg->skinnedItemID)->m_StoreIcon);
//public function addRecipe(recipeID:uint, name:String, desc:String, icon:String)
gfxMovie.Invoke("_root.api.addRecipe", var, 4);

for(uint32_t k=0; k<cfg->numComponents; ++k)
{
var[1].SetUInt(cfg->components[k].itemID);
var[2].SetUInt(cfg->components[k].quantity);
//public function addRecipeComponent(recipeID:uint, compID:uint, quantity:uint)
gfxMovie.Invoke("_root.api.addRecipeComponent", var, 3);
}
}
}

I markered it RED

Its a simple way how to do it now you have only to set the ints to something...

In my vesion I set it here:

void obj_Player::SetSkin(int wpnSlot)
{
obj_Player* plr = gClientLogic().localPlayer_;
wiInventoryItem& itmmid = plr->CurLoadout.Items[wpnSlot];
const BaseItemConfig* itmC = g_pWeaponArmory->getConfig(itmmid.itemID);
hudSkins->SkinID = itmC->m_itemID;

hudPause->Deactivate();
hudSkins->Activate();
hudSkins->MyItemSlot = wpnSlot;

return;
}

cfg->BaseSkinID is set in itemsDB.xml so in my version its databse poop
 
Upvote 0
Junior Spellweaver
Joined
Oct 25, 2017
Messages
158
Reaction score
17
for(int i=0; i<gUserProfile.ProfileData.NumRecipes; ++i)
{
const SkinsConfig* cfg = g_pWeaponArmory->getSkinsConfig(gUserProfile.ProfileData.RecipesLearned);
r3d_assert(cfg);
if(cfg->BaseSkinID == SkinID) {
var[0].SetUInt(cfg->m_itemID);
var[1].SetString(cfg->m_StoreName);
var[2].SetString(cfg->m_Description);
var[3].SetString(g_pWeaponArmory->getConfig(cfg->skinnedItemID)->m_StoreIcon);
//public function addRecipe(recipeID:uint, name:String, desc:String, icon:String)
gfxMovie.Invoke("_root.api.addRecipe", var, 4);

for(uint32_t k=0; k<cfg->numComponents; ++k)
{
var[1].SetUInt(cfg->components[k].itemID);
var[2].SetUInt(cfg->components[k].quantity);
//public function addRecipeComponent(recipeID:uint, compID:uint, quantity:uint)
gfxMovie.Invoke("_root.api.addRecipeComponent", var, 3);
}
}
}

I markered it RED

Itsa simple way how to do it now you have only to set the ints to something...

In my vesion I set it here:

void obj_Player::SetSkin(int wpnSlot)
{
obj_Player* plr = gClientLogic().localPlayer_;
wiInventoryItem& itmmid = plr->CurLoadout.Items[wpnSlot];
const BaseItemConfig* itmC = g_pWeaponArmory->getConfig(itmmid.itemID);
hudSkins->SkinID = itmC->m_itemID;

hudPause->Deactivate();
hudSkins->Activate();
hudSkins->MyItemSlot = wpnSlot;

return;
}

cfg->BaseSkinID is set in itemsDB.xml so in my version its databse poop

My code is written a little differently
Lomoda - [help] skin system overz - RaGEZONE Forums
 
Upvote 0
Experienced Elementalist
Joined
May 28, 2017
Messages
225
Reaction score
127
Ofc because thats above is my code xD I just showed you how to split the categories you have only to use your brain now...
 
Upvote 0
Back
Top