• Please make sure you are familiar with the forum rules. You can find them here: https://forums.tripwireinteractive.com/index.php?threads/forum-rules.2334636/

Far Cry 3 Bow for KF

I would suggest having these set of anims:
Weapon Draw (Take out bow, no arrow, weapon switch anim)
Weapon Idle (Bow is out but no arrow)
Ammo Load (With bow in hand, use other hand to take arrow, will be reused)
Weapon Loaded (Bow is out but now with arrow)
Bow Pullback (Pull bow back ready for firing)
Bow Fire (Release Bow and shoot, then play the Weapon Idle Anim)
Bow Cancel (Release Bow without shooting, go to Weapon Loaded Anim)

Sequence of events:
1. Take out bow, play weapon draw, then idle
2. User clicks primary fire, Play Ammo Load then Weapon Loaded
3. If user is still holding Prifire, wait for the anim to finish playing then start playing Bow Pullback
4. When pulled back (could be implemented as a bool check?), play Bow Fire to shoot after user releases PriFire
5. Play Weapon Idle again and repeat from step 2.

//if user decides to cancel
After Bow Pullback, set a switch to true (there is some existing switch in KFWeapon called bAimingRifle, used to check if gun is in ironsight mode)

If bAimingRifle is true (about to fire), just before you let it fire call AllowFire() (See Below) on the release to fire function (Not sure where it is or how it looks like in your code but something similar). Then Play Bow Release and go back to Weapon Idle anim

There is this function that may be of use in KFFire, AllowFire(). Could override this such as to check for the bAimingRifle status and act accordingly, so as to be able to cancel as well. Just pure speculation since I haven't seen your code at all and hence don't know if this implementation would work. Good luck :)
 
Last edited:
Upvote 0
I would suggest having these set of anims:
Weapon Draw (Take out bow, no arrow, weapon switch anim)
Weapon Idle (Bow is out but no arrow)
Ammo Load (With bow in hand, use other hand to take arrow, will be reused)
Weapon Loaded (Bow is out but now with arrow)
Bow Pullback (Pull bow back ready for firing)
Bow Fire (Release Bow and shoot, then play the Weapon Idle Anim)
Bow Cancel (Release Bow without shooting, go to Weapon Loaded Anim)

Sequence of events:
1. Take out bow, play weapon draw, then idle
2. User clicks primary fire, Play Ammo Load then Weapon Loaded
3. If user is still holding Prifire, wait for the anim to finish playing then start playing Bow Pullback
4. When pulled back (could be implemented as a bool check?), play Bow Fire to shoot after user releases PriFire
5. Play Weapon Idle again and repeat from step 2.

//if user decides to cancel
After Bow Pullback, set a switch to true (there is some existing switch in KFWeapon called bAimingRifle, used to check if gun is in ironsight mode)

If bAimingRifle is true (about to fire), just before you let it fire call AllowFire() (See Below) on the release to fire function (Not sure where it is or how it looks like in your code but something similar). Then Play Bow Release and go back to Weapon Idle anim

There is this function that may be of use in KFFire, AllowFire(). Could override this such as to check for the bAimingRifle status and act accordingly, so as to be able to cancel as well. Just pure speculation since I haven't seen your code at all and hence don't know if this implementation would work. Good luck :)

you're only forgetting the Holster_Empty, Idle_Loaded, Holster_Loaded, but yeah, those sequences have been completed, and thanks for the programming part :D
 
Upvote 0