Author Topic: Reload Script Help  (Read 650 times)

So, i was editing some guy's gun script, and i decided to put in a reload function. I copied one from the Tier Tactical script because that one didn't have any custom animations. I put it in, changed the names, made sure the sounds were there, but its not working. All im getting is the sounds, no animations.
Code: [Select]
stateName[0]                     = "Activate";
stateTimeoutValue[0]             = 0.05;
stateTransitionOnTimeout[0]       = "LoadCheckA";
stateSound[0] = weaponSwitchSound;

stateName[1]                     = "Ready";
stateTransitionOnNoAmmo[1]       = "Reload";
stateTransitionOnTriggerDown[1]  = "Fire";
stateAllowImageChange[1]         = true;

stateName[2]                    = "Fire";
stateTransitionOnTimeout[2]     = "Delay";
stateTimeoutValue[2]            = 0.00;
stateFire[2]                    = true;
stateAllowImageChange[2]        = false;
stateSequence[2]                = "Fire";
stateScript[2]                  = "onFire";
stateEjectShell[2]        = true;
stateEmitter[2] = gunFlashEmitter;
stateEmitterTime[2] = 0.05;
stateEmitterNode[2] = "muzzleNode";
stateWaitForTimeout[2] = true;
stateSound[2] = SubmachineGunLowDamageSound;

stateName[3] = "Delay";
stateTransitionOnTimeout[3]     = "FireLoadCheckA";
stateTimeoutValue[3]            = 0.03;
stateEmitter[3] = gunSmokeEmitter;
stateEmitterTime[3] = 0.03;
stateEmitterNode[3] = "muzzleNode";

stateName[4] = "LoadCheckA";
stateScript[4] = "onLoadCheck";
stateTimeoutValue[4] = 0.01;
stateTransitionOnTimeout[4] = "LoadCheckB";

stateName[5] = "LoadCheckB";
stateTransitionOnAmmo[5] = "Ready";
stateTransitionOnNoAmmo[5] = "Reload";

stateName[6] = "Reload";
stateTimeoutValue[6] = 1.2;
stateScript[6] = "onReloadStart";
stateTransitionOnTimeout[6] = "Wait";
stateWaitForTimeout[6] = true;
stateSound[6] = PistolClickSound;

stateName[7] = "Wait";
stateTimeoutValue[7] = 0.8;
stateSound[7] = MagazineOutSound;
stateScript[7] = "onReloadWait";
stateTransitionOnTimeout[7] = "Reloaded";

stateName[8] = "FireLoadCheckA";
stateScript[8] = "onLoadCheck";
stateTimeoutValue[8] = 0.01;
stateTransitionOnTimeout[8] = "FireLoadCheckB";

stateName[9] = "FireLoadCheckB";
stateTransitionOnAmmo[9] = "Smoke";
stateTransitionOnNoAmmo[9] = "ReloadSmoke";

stateName[10] = "Smoke";
stateEmitter[10] = gunSmokeEmitter;
stateEmitterTime[10] = 0.3;
stateEmitterNode[10] = "muzzleNode";
stateTimeoutValue[10] = 0.2;
stateTransitionOnTimeout[10] = "Ready";
stateTransitionOnTriggerDown[10] = "Fire";

stateName[11] = "ReloadSmoke";
stateEmitter[11] = gunSmokeEmitter;
stateEmitterTime[11] = 0.3;
stateEmitterNode[11] = "muzzleNode";
stateTimeoutValue[11] = 0.2;
stateTransitionOnTimeout[11] = "Reload";

stateName[12] = "Reloaded";
stateTimeoutValue[12] = 0.01;
stateScript[12] = "onReloaded";
stateTransitionOnTimeout[12] = "Ready";
};
The reload animations
Code: [Select]
function WMDImage::onReloadStart(%this,%obj,%slot)
{
%obj.toolAmmo[%obj.currTool] = 0;
%obj.playThread(2, wrench);
}

function WMDImage::onReloadWait(%this,%obj,%slot)
{
%obj.playThread(2, activate);
}

function WMDImage::onReloaded(%this,%obj,%slot)
{
%obj.toolAmmo[%obj.currTool] = %this.item.maxAmmo;
%obj.setImageAmmo(%slot,1);
}

function WMDImage::onUnMount(%this,%obj,%slot) //Whats this?
{
%obj.playThread(2, root);
}
Any suggestions?
« Last Edit: June 16, 2010, 08:29:04 PM by RedGajin »

Tried deleting the function WMDImage::onUnMount(%this,%obj,%slot) didn't do anything (didn't really expect an out come though.)