วันเสาร์ที่ 25 มีนาคม พ.ศ. 2560

กด B ดูปืน


โอเคครับ ถ้าคุณทำตามผมทุกๆขั้นตอนคุณจะทำได้เองนะครับ ! ดาวน์โหลดไฟล์ https://drive.google.com/file/d/0B1mr-qG-LpkETkVVOUhjcFNMUGM/view?usp=sharing อาไฟล์ที่ดาวน์โหลดไปลง C:/WarZ/bin/data/Animation5ค้นหาใน WarZ.sln
if(wpn && hudAttm && hudAttm->isActive() && wpn->getCategory()>=storecat_ASR && wpn->getCategory()<=storecat_SMG)
         isInAttmMenu = true;
เพิ่มไว้ข้างล่าง
bool isWantingToInspect = (InputMappingMngr->isPressed(r3dInputMappingMngr::KS_INSPECT_GUN) && wpn && wpn->getCategory()>=storecat_ASR && wpn->getCategory()<=storecat_SMG && hudMain && !hudPause->isActive() && !hudAttm->isActive() && !hudVault->isActive() && !hudRepair->isActive() && !hudCraft->isActive() && !hudSafelock->isActive() && !hudTrade->isActive() && !hudStore->isActive() && !hudMain->isChatInputActive() && !Mouse->GetMouseVisibility() && !InputMappingMngr->isPressed(r3dInputMappingMngr::KS_PRIMARY_FIRE) && !InputMappingMngr->isPressed(r3dInputMappingMngr::KS_AIM));

ค้นหา
uberAnim_->SyncAnimation(PlayerState, PlayerMoveDir, force, wpn, isInAttmMenu);
แทนที่
uberAnim_->SyncAnimation(PlayerState, PlayerMoveDir, force, wpn, isInAttmMenu, isWantingToInspect);


ค้นหา
aid_.attmMenuIdleWeapon[5] = AddAnimation("FPS_Attch_Idle_SMG");
เพิ่มไว้ข้างล่าง
aid_.InspectWeapon[0] = AddAnimation("FPS_Weap_Show");
aid_.InspectWeapon[1] = AddAnimation("FPS_Weap_Show");
aid_.InspectWeapon[2] = AddAnimation("FPS_Weap_Show");
aid_.InspectWeapon[3] = AddAnimation("FPS_Weap_Show");
aid_.InspectWeapon[4] = AddAnimation("FPS_Weap_Show");
aid_.InspectWeapon[5] = AddAnimation("FPS_Weap_Show");
ค้นหา
void CUberAnim::SyncAnimation(int PlayerState, int MoveDir, bool force, const Weapon* weap, bool isInAttmMenu)
แทนที่
void CUberAnim::SyncAnimation(int PlayerState, int MoveDir, bool force, const Weapon* weap, bool isInAttmMenu, bool isWantingToInspect)
ค้นหา
if(isInAttmMenu && CurrentWeapon && IsFPSMode()
แทนที่
if(!isWantingToInspect && isInAttmMenu && CurrentWeapon && IsFPSMode()

ค้นหา
// switch anim state
เพิ่มข้างบน
///Inspect


    if(isWantingToInspect && CurrentWeapon && IsFPSMode()
        && !IsSwimming && PlayerState != PLAYER_SWIM_IDLE && PlayerState != PLAYER_SWIM_SLOW && PlayerState != PLAYER_SWIM && PlayerState != PLAYER_SWIM_FAST
        )
    {
        bool AlreadyPlayingInspect = false;


        int animIdx = 0;
        switch(CurrentWeapon->getCategory())
        {
        case storecat_ASR:
            animIdx = 0;
            break;
        case storecat_SNP:
            animIdx = 1;
            break;
        case storecat_SHTG:
            animIdx = 2;
            break;
        case storecat_MG:
            animIdx = 3;
            break;
        case storecat_HG:
            animIdx = 4;
            break;
        case storecat_SMG:
            animIdx = 5;
            break;
        default:
            r3d_assert(false);
            break;
        }


        r3dgameVector(r3dAnimation::r3dAnimInfo)::iterator it;
        for(it=anim.AnimTracks.begin(); it!=anim.AnimTracks.end(); ++it)
        {
            const r3dAnimation::r3dAnimInfo& ai = *it;
            if(ai.pAnim->iAnimId == data_->aid_.InspectWeapon[animIdx])
            {
                AlreadyPlayingInspect = true;
                break;
            }
        }
       
        if(!AlreadyPlayingInspect)
            anim.StartAnimation(data_->aid_.InspectWeapon[animIdx], ANIMFLAG_RemoveOtherNow | ANIMFLAG_Looped, 0.0f, 1.0f, 0.1f);
        else // playing idle anim
        {
            // do nothing :)
        }


        AnimPlayerState = -1; // reset, so that after attm menu we will return back to proper animation
        return;
    }


    ///END of Inspect
ค้นหา
int      attmMenuIdleWeapon[6];
เพิ่มข้างบน
int        InspectWeapon[6];
ค้นหา
void        SyncAnimation(int PlayerState, int MoveDir, bool force, const Weapon* weap, bool isInAttmMenu);
แทนที่
void        SyncAnimation(int PlayerState, int MoveDir, bool force, const Weapon* weap, bool isInAttmMenu, bool isWantingToInspect = false);
ค้นหา
KS_NUM,
เพิ่มไว้ข้างบน
KS_INSPECT_GUN,
ค้นหา
r3dInputMappingMngr::r3dInputMappingMngr()
เพิ่ม
m_Mapping[KS_INSPECT_GUN] =                KeyboardMapping(INPUTMAP_KEYBOARD, kbsB, "INSPECT GUN", false);

ไม่มีความคิดเห็น:

แสดงความคิดเห็น