etqw-sdk/base/script/weapons/dummy.script

74 lines
1.2 KiB
Plaintext

object weapon_dummy : weapon_base {
void init();
void Idle();
void Sprint();
}
void weapon_dummy::init() {
weaponState( "Raise", 0 );
}
void weapon_dummy::Idle() {
mainFireDown = true;
weaponReady();
playCycle( ANIMCHANNEL_ALL, "idle" );
sys.wait( 0.2f );
while ( true ) {
if ( WEAPON_LOWERWEAPON ) {
weaponState( "Lower", 4 );
}
if ( WEAPON_ATTACK ) {
if ( !mainFireDown ) {
if ( !sys.isClient() ) {
myPlayer.disguise( $null_entity );
}
}
} else {
mainFireDown = false;
}
if ( myPlayer.AI_SPRINT ) {
weaponState( "Sprint", 4 );
}
sys.waitFrame();
}
}
void weapon_dummy::Sprint() {
weaponReady();
if ( hasWeaponAnim( "start_sprint" ) ) {
playAnim( ANIMCHANNEL_ALL, "start_sprint" );
waitUntil( animDone( ANIMCHANNEL_ALL, 4 ) );
}
StartIdleEffect();
while ( true ) {
if ( WEAPON_LOWERWEAPON ) {
LeaveSprint( "Lower", 4 );
}
if ( WEAPON_ATTACK ) {
if ( !mainFireDown ) {
if ( !sys.isClient() ) {
myPlayer.disguise( $null_entity );
}
}
} else {
mainFireDown = false;
}
if ( !myPlayer.AI_SPRINT ) {
LeaveSprint( "Idle", 4 );
}
sys.waitFrame();
}
}