Jump to content

Recommended Posts

Hello guys I installed some sf and there was a pre-installed acce system. About that when I login for the first time in my character the acce part is not displayed in the character select screen but if I relog without closing completely the client everything is fine. If I close the client it does it again for the first login and then back to normal... I checked the acce_part record in the database and nothing is changing. Can someone give me a hand?

Link to comment
Share on other sites

  • Replies 5
  • Created
  • Last Reply

Top Posters In This Topic

29 minutes ago, Mind Rapist said:

#UP

Btw you should show us some functions dude it might be helpful :P

Spoiler

void CActorInstance::SetAcce(DWORD eAcce, float fSpecular)
{
    m_eAcce = eAcce;
    CRaceData * pRaceData;
    const char * szBoneName;
    if (!GetAttachingBoneName(CRaceData::PART_ACCE, &szBoneName))
        return;

    if (!CRaceManager::Instance().GetRaceDataPointer(m_eRace, &pRaceData))
        return;
    

    CRaceData::SAcce* pkAcce = pRaceData->FindAcce(eAcce);
    if (pkAcce)
    {
        if (!pkAcce->m_stModelFileName.empty())
        {
            CGraphicThing * pkAcceThing = (CGraphicThing *)CResourceManager::Instance().GetResourcePointer(pkAcce->m_stModelFileName.c_str());
            RegisterModelThing(CRaceData::PART_ACCE, pkAcceThing);
            SetModelInstance(CRaceData::PART_ACCE, CRaceData::PART_ACCE, 0);
            AttachModelInstance(0, szBoneName, CRaceData::PART_ACCE);
        }

        const std::vector<CRaceData::SSkin>& c_rkVct_kSkin = pkAcce->m_kVct_kSkin;
        std::vector<CRaceData::SSkin>::const_iterator i;
        for (i = c_rkVct_kSkin.begin(); i != c_rkVct_kSkin.end(); ++i)
        {
            const CRaceData::SSkin& c_rkSkinItem = *i;
            CResource * pkRes = CResourceManager::Instance().GetResourcePointer(c_rkSkinItem.m_stDstFileName.c_str());
            if (pkRes)
            {
                if (fSpecular > 0.0f)
                {
                    SMaterialData kMaterialData;
                    kMaterialData.pImage = static_cast<CGraphicImage*>(pkRes);
                    kMaterialData.isSpecularEnable = TRUE;
                    kMaterialData.fSpecularPower = fSpecular;
                    kMaterialData.bSphereMapIndex = 0;
                     SetMaterialData(CRaceData::PART_ACCE, c_rkSkinItem.m_stSrcFileName.c_str(), kMaterialData);
                }
                else
                {
                    SetMaterialImagePointer(CRaceData::PART_ACCE, c_rkSkinItem.m_stSrcFileName.c_str(), static_cast<CGraphicImage*>(pkRes));
                }
            }
        }
    }
}

Binary/GameLib/ActorInstanceData.cpp

The black lines are the problem but if i delete this i dont have more the scale...

sorry for my bad english btw :D

Link to comment
Share on other sites

  • 2 weeks later...

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now

Announcements



×
×
  • Create New...

Important Information

Terms of Use / Privacy Policy / Guidelines / We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.