Since GBK didnt reply, Im on my own on this one.
The cog: if railcharge(examp) = 1 or more
then knife shows up, certain keys are used,
else / otherwise
normal fists
But it just goes wierd
I'll show the necessary bits:
model povModel2=fistv.3do
model povModel=fistknfv.3do
model weaponMesh=fistg.3do
keyframe mountAnim=fistvmntkf.key local
keyframe mountAnim2=fistvmnt.key local
keyframe dismountAnim=FistVdis.key local
keyframe povfireAnim1=fistvkill.key local
keyframe povfireAnim2=fistvkill2.key local
keyframe povslashAnim1=fistvl.key local
keyframe povslashAnim2=fistvr.key local
keyframe holsterAnim=kyhlstr.key local
keyframe throwknfanim=fistvthrw.key local
sound punchSound1=swingfist01.wav local
sound punchSound2=swingfist04.wav local
sound fireSound1=knife1.wav local
sound fireSound2=knife2.wav local
sound throwSound=swingfist01.wav local
template projectile=+slash local
template projectile2=+knife local
template projectile3=+punch local
flex leftWait=0.4 local
flex rightWait=0.43 local
flex leftknifeWait=0.4 local
flex rightknifeWait=0.4 local
flex mountWait local
code
startup:
player = jkGetLocalPlayer();
// Setup delays.
leftWait = GetKeyLen(povslashAnim1);
rightWait = GetKeyLen(povslashAnim2);
leftknifeWait = GetKeyLen(povfireAnim1);
rightknifeWait = GetKeyLen(povfireAnim2);
mountWait = GetKeyLen(mountAnim);
Return;
# ........................................................................................
fire:
// Check that the player is still alive.
if(GetThingHealth(player) <= 0)
{
Return;
}
if(GetInv(player, 15) < 1.0)
{
// Alternate fists.
if(nextAnim == 0)
{
SetPOVShake('-0.01 -.01 0.0', '1.0 0.0 0.0', .05, 80.0);
PlaySoundThing(punchSound1, player, 1.0, 0.5, 2.5, 0x80);
FireProjectile(player, projectile3, -1, 8, '-0.02 0.03 0', '0 0 0', 1.0, 0, 0.0, 0.0);
SetFireWait(player, leftWait);
}
else
{
SetPOVShake('0.01 -.01 0.0', '1.0 0.0 0.0', .05, 80.0);
PlaySoundThing(punchSound2, player, 1.0, 0.5, 2.5, 0x80);
FireProjectile(player, projectile3, -1, 18, '0.02 0.03 0', '0 0 0', 1.0, 0, 0.0, 0.0);
SetFireWait(player, rightWait);
}
jkPlayPOVKey(player, povslashAnim1[nextAnim], 1, 0x0a);
nextAnim = 1-nextAnim;
}
// Alternate slash.
if(nextAnim == 0)
{
SetPOVShake('-0.01 -.01 0.0', '1.0 0.0 0.0', .05, 80.0);
PlaySoundThing(fireSound1, player, 1.0, 0.5, 2.5, 0x80);
FireProjectile(player, projectile, -1, 8, '-0.02 0.03 0', '0 0 0', 1.0, 0, 0.0, 0.0);
SetFireWait(player, leftknifeWait);
}
else
{
SetPOVShake('0.01 -.01 0.0', '1.0 0.0 0.0', .05, 80.0);
PlaySoundThing(fireSound2, player, 1.0, 0.5, 2.5, 0x80);
FireProjectile(player, projectile, -1, 18, '0.02 0.03 0', '0 0 0', 1.0, 0, 0.0, 0.0);
SetFireWait(player, rightknifeWait);
}
jkPlayPOVKey(player, povfireAnim1[nextAnim], 1, 0x0a);
nextAnim = 1-nextAnim;
Return;
# ........................................................................................
activated:
player = GetSourceRef();
mode = GetSenderRef();
jkSetWaggle(player, '0.0 0.0 0.0', 0);
ActivateWeapon( player, leftWait, mode );
Return;
# ........................................................................................
deactivated:
player = GetSourceRef();
mode = GetSenderRef();
jkSetWaggle(player, '10.0 7.0 0.0', 350);
DeactivateWeapon( player, mode );
Return;
# ........................................................................................
selected:
player = GetSourceRef();
PlayMode(player, 40);
jkSetWaggle(player, '10.0 7.0 0.0', 350);
SetArmedMode(player, 0);
jkSetWeaponMesh(player, weaponMesh);
// Clear saber flags, and allow activation of the weapon
jkClearFlags(player, 0x5);
SetCurWeapon(player, 1);
if(GetInv(player, 15) < 1.0)
{
// Setup the meshes and models.
jkSetPOVModel(player, povModel2);
// Play the animation (NOLOOP + UNIQUE + ENDPAUSE).
// The animation is held at the last frame after it is played.
trackID = jkPlayPOVKey(player, mountAnim2, 0, 20);
SetMountWait(player, mountWait);
}
// Setup the meshes and models.
jkSetPOVModel(player, povModel);
// Play the animation (NOLOOP + UNIQUE + ENDPAUSE).
// The animation is held at the last frame after it is played.
trackID = jkPlayPOVKey(player, mountAnim, 0, 20);
SetMountWait(player, mountWait);
Return;
# ........................................................................................
deselected:
player = GetSourceRef();
// Stop the mount's last frame animation, and play the dismount.
jkPlayPOVKey(player, dismountAnim, 0, 18);
holsterWait = GetKeyLen(holsterAnim);
SetMountWait(player, holsterWait);
holsterTrack = PlayKey(player, holsterAnim, 1, 0x4);
SetTimerEx(holsterWait, 2, 0.0, 0.0);
if (trackID != -1)
{
jkStopPOVKey(player, trackID, 0);
trackID = -1;
}
jkSetWaggle(player, '0.0 0.0 0.0', 0);
Return;
------------------
Is it a squid?
Is it a ferret?
both !
its ruthervain-man
yes!
ruthervain - man! :
with the power to disrupt and ultimately kill any thread that he replies to.
The cog: if railcharge(examp) = 1 or more
then knife shows up, certain keys are used,
else / otherwise
normal fists
But it just goes wierd
I'll show the necessary bits:
model povModel2=fistv.3do
model povModel=fistknfv.3do
model weaponMesh=fistg.3do
keyframe mountAnim=fistvmntkf.key local
keyframe mountAnim2=fistvmnt.key local
keyframe dismountAnim=FistVdis.key local
keyframe povfireAnim1=fistvkill.key local
keyframe povfireAnim2=fistvkill2.key local
keyframe povslashAnim1=fistvl.key local
keyframe povslashAnim2=fistvr.key local
keyframe holsterAnim=kyhlstr.key local
keyframe throwknfanim=fistvthrw.key local
sound punchSound1=swingfist01.wav local
sound punchSound2=swingfist04.wav local
sound fireSound1=knife1.wav local
sound fireSound2=knife2.wav local
sound throwSound=swingfist01.wav local
template projectile=+slash local
template projectile2=+knife local
template projectile3=+punch local
flex leftWait=0.4 local
flex rightWait=0.43 local
flex leftknifeWait=0.4 local
flex rightknifeWait=0.4 local
flex mountWait local
code
startup:
player = jkGetLocalPlayer();
// Setup delays.
leftWait = GetKeyLen(povslashAnim1);
rightWait = GetKeyLen(povslashAnim2);
leftknifeWait = GetKeyLen(povfireAnim1);
rightknifeWait = GetKeyLen(povfireAnim2);
mountWait = GetKeyLen(mountAnim);
Return;
# ........................................................................................
fire:
// Check that the player is still alive.
if(GetThingHealth(player) <= 0)
{
Return;
}
if(GetInv(player, 15) < 1.0)
{
// Alternate fists.
if(nextAnim == 0)
{
SetPOVShake('-0.01 -.01 0.0', '1.0 0.0 0.0', .05, 80.0);
PlaySoundThing(punchSound1, player, 1.0, 0.5, 2.5, 0x80);
FireProjectile(player, projectile3, -1, 8, '-0.02 0.03 0', '0 0 0', 1.0, 0, 0.0, 0.0);
SetFireWait(player, leftWait);
}
else
{
SetPOVShake('0.01 -.01 0.0', '1.0 0.0 0.0', .05, 80.0);
PlaySoundThing(punchSound2, player, 1.0, 0.5, 2.5, 0x80);
FireProjectile(player, projectile3, -1, 18, '0.02 0.03 0', '0 0 0', 1.0, 0, 0.0, 0.0);
SetFireWait(player, rightWait);
}
jkPlayPOVKey(player, povslashAnim1[nextAnim], 1, 0x0a);
nextAnim = 1-nextAnim;
}
// Alternate slash.
if(nextAnim == 0)
{
SetPOVShake('-0.01 -.01 0.0', '1.0 0.0 0.0', .05, 80.0);
PlaySoundThing(fireSound1, player, 1.0, 0.5, 2.5, 0x80);
FireProjectile(player, projectile, -1, 8, '-0.02 0.03 0', '0 0 0', 1.0, 0, 0.0, 0.0);
SetFireWait(player, leftknifeWait);
}
else
{
SetPOVShake('0.01 -.01 0.0', '1.0 0.0 0.0', .05, 80.0);
PlaySoundThing(fireSound2, player, 1.0, 0.5, 2.5, 0x80);
FireProjectile(player, projectile, -1, 18, '0.02 0.03 0', '0 0 0', 1.0, 0, 0.0, 0.0);
SetFireWait(player, rightknifeWait);
}
jkPlayPOVKey(player, povfireAnim1[nextAnim], 1, 0x0a);
nextAnim = 1-nextAnim;
Return;
# ........................................................................................
activated:
player = GetSourceRef();
mode = GetSenderRef();
jkSetWaggle(player, '0.0 0.0 0.0', 0);
ActivateWeapon( player, leftWait, mode );
Return;
# ........................................................................................
deactivated:
player = GetSourceRef();
mode = GetSenderRef();
jkSetWaggle(player, '10.0 7.0 0.0', 350);
DeactivateWeapon( player, mode );
Return;
# ........................................................................................
selected:
player = GetSourceRef();
PlayMode(player, 40);
jkSetWaggle(player, '10.0 7.0 0.0', 350);
SetArmedMode(player, 0);
jkSetWeaponMesh(player, weaponMesh);
// Clear saber flags, and allow activation of the weapon
jkClearFlags(player, 0x5);
SetCurWeapon(player, 1);
if(GetInv(player, 15) < 1.0)
{
// Setup the meshes and models.
jkSetPOVModel(player, povModel2);
// Play the animation (NOLOOP + UNIQUE + ENDPAUSE).
// The animation is held at the last frame after it is played.
trackID = jkPlayPOVKey(player, mountAnim2, 0, 20);
SetMountWait(player, mountWait);
}
// Setup the meshes and models.
jkSetPOVModel(player, povModel);
// Play the animation (NOLOOP + UNIQUE + ENDPAUSE).
// The animation is held at the last frame after it is played.
trackID = jkPlayPOVKey(player, mountAnim, 0, 20);
SetMountWait(player, mountWait);
Return;
# ........................................................................................
deselected:
player = GetSourceRef();
// Stop the mount's last frame animation, and play the dismount.
jkPlayPOVKey(player, dismountAnim, 0, 18);
holsterWait = GetKeyLen(holsterAnim);
SetMountWait(player, holsterWait);
holsterTrack = PlayKey(player, holsterAnim, 1, 0x4);
SetTimerEx(holsterWait, 2, 0.0, 0.0);
if (trackID != -1)
{
jkStopPOVKey(player, trackID, 0);
trackID = -1;
}
jkSetWaggle(player, '0.0 0.0 0.0', 0);
Return;
------------------
Is it a squid?
Is it a ferret?
both !
its ruthervain-man
yes!
ruthervain - man! :
with the power to disrupt and ultimately kill any thread that he replies to.
Code:
if(getThingFlags(source) & 0x8){ do her} elseif(getThingFlags(source) & 0x4){ do other babe} else{ do a dude}