Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /*
- So seen this a couple of times, everyone wants this inspect weapon from cs:go.
- Follow the tutorial below and you will be successful, however this tutorials only offer the outline for code only, I cannot supply the animation. I'm sure you can do some digging and find one. Make sure you place it inside Animation5 folder.
- How it works.. Hold "B" and it will play the inspect animation that you chose on a loo
- GIF: https://i.gyazo.com/d551e9eee6b65f292b960d72a8c9337d.gif
- >>> DOWNLOAD ANIMATION FILES NEEDED TO GET THIS WORKING HERE <<<
- https://mega.nz/#!S9xDhJoA!trpt3wdLQQ4fN_eEXgSXXEaKovSjGnxfk8pdnXQai-A
- */
- EclipseStudio/Sources/ObjectsCode/AI/AI_Player.CPP
- Find:
- Code:
- if(wpn && hudAttm && hudAttm->isActive() && wpn->getCategory()>=storecat_ASR && wpn->getCategory()<=storecat_SMG)
- isInAttmMenu = true;
- Add Below:
- Code:
- 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));
- Find:
- Code:
- uberAnim_->SyncAnimation(PlayerState, PlayerMoveDir, force, wpn, isInAttmMenu);
- Replace:
- Code:
- uberAnim_->SyncAnimation(PlayerState, PlayerMoveDir, force, wpn, isInAttmMenu, isWantingToInspect);
- ----------------
- EclipseStudio/Sources/ObjectsCode/AI/AI_PlayerAnim.cpp
- Find:
- Code:
- aid_.attmMenuIdleWeapon[5] = AddAnimation("FPS_Attch_Idle_SMG");
- Add Below:
- Code:
- aid_.InspectWeapon[0] = AddAnimation("XXXXYOURANIMATIONNAMEHEREXXXX"); //ASR
- aid_.InspectWeapon[1] = AddAnimation("XXXXYOURANIMATIONNAMEHEREXXXX"); //SNP
- aid_.InspectWeapon[2] = AddAnimation("XXXXYOURANIMATIONNAMEHEREXXXX"); //SHG
- aid_.InspectWeapon[3] = AddAnimation("XXXXYOURANIMATIONNAMEHEREXXXX"); //MG
- aid_.InspectWeapon[4] = AddAnimation("XXXXYOURANIMATIONNAMEHEREXXXX"); //HG
- aid_.InspectWeapon[5] = AddAnimation("XXXXYOURANIMATIONNAMEHEREXXXX"); //SMG
- Find:
- Code:
- void CUberAnim::SyncAnimation(int PlayerState, int MoveDir, bool force, const Weapon* weap, bool isInAttmMenu)
- Replace
- Code:
- void CUberAnim::SyncAnimation(int PlayerState, int MoveDir, bool force, const Weapon* weap, bool isInAttmMenu, bool isWantingToInspect)
- Find:
- Code:
- if(isInAttmMenu && CurrentWeapon && IsFPSMode()
- Replace:
- Code:
- if(!isWantingToInspect && isInAttmMenu && CurrentWeapon && IsFPSMode()
- Find:
- Code:
- // switch anim state
- Add Above:
- Code:
- ///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
- -----------------
- EclipseStudio/Sources/ObjectsCode/AI/AI_PlayerAnim.h
- Find:
- Code:
- int attmMenuIdleWeapon[6];
- Add Below:
- Code:
- int InspectWeapon[6];
- Find:
- Code:
- void SyncAnimation(int PlayerState, int MoveDir, bool force, const Weapon* weap, bool isInAttmMenu);
- Replace:
- Code:
- void SyncAnimation(int PlayerState, int MoveDir, bool force, const Weapon* weap, bool isInAttmMenu, bool isWantingToInspect = false);
- -------------------
- Eternity/Include/r3dInput.h
- Find:
- Code:
- KS_NUM,
- Add Above:
- Code:
- KS_INSPECT_GUN,
- ------------------
- Eternity/Source/r3dInput.cpp
- Inside: r3dInputMappingMngr::r3dInputMappingMngr() at the very bottom of the container
- Add:
- Code:
- m_Mapping[KS_INSPECT_GUN] = KeyboardMapping(INPUTMAP_KEYBOARD, kbsB, "INSPECT GUN", false);
- /*
- By GetRektBambi
- */
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement