XIII
Class ArbaleteX3

source: C:\XIII\XIII\Classes\ArbaleteX3.uc
Core.Object
   |
   +--Engine.Actor
      |
      +--Engine.Inventory
         |
         +--Engine.Weapon
            |
            +--XIII.XIIIWeapon
               |
               +--XIII.ArbaleteX3
Direct Known Subclasses:None

class ArbaleteX3
extends XIII.XIIIWeapon

//----------------------------------------------------------- // //-----------------------------------------------------------

Function Summary
 
simulated
PlayIdleAnim()
     
//_____________________________________________________________________________
 
simulated
PlaySelect()
     
//_____________________________________________________________________________
 float RateSelf()
     
//_____________________________________________________________________________
// FRD
 bool ShouldDrawCrosshair(Canvas C)
     
//_____________________________________________________________________________
 
simulated
TweenDown()
     
//_____________________________________________________________________________



Source Code


00001	//-----------------------------------------------------------
00002	//
00003	//-----------------------------------------------------------
00004	class ArbaleteX3 extends XIIIWeapon;
00005	
00006	//_____________________________________________________________________________
00007	simulated function bool ShouldDrawCrosshair(Canvas C)
00008	{
00009	    return false;
00010	}
00011	
00012	//_____________________________________________________________________________
00013	simulated function PlayIdleAnim()
00014	{
00015	    if ( ReLoadCount > 0 )
00016	    {
00017	      if ( bHaveBoredSfx && Pawn(Owner).IsPlayerPawn() && (iBoredCount > BOREDSFXTHRESHOLD) )
00018	      {
00019	        iBoredCount = 0;
00020	        if ( Instigator.IsLocallyControlled() || (Level.NetMode == NM_StandAlone) )
00021	          Instigator.PlayRolloffSound(hActWaitSound, self, 0, int(Pawn(Owner).IsPlayerPawn()), 0 );
00022	        PlayAnim('WaitAct', 1.0);
00023	      }
00024	      else
00025	        PlayAnim('Wait', 1.0);
00026	    }
00027	    else
00028	    {
00029	      if ( bHaveBoredSfx && Pawn(Owner).IsPlayerPawn() && (iBoredCount > BOREDSFXTHRESHOLD) )
00030	      {
00031	        iBoredCount = 0;
00032	        if ( Instigator.IsLocallyControlled() || (Level.NetMode == NM_StandAlone) )
00033	          Instigator.PlayRolloffSound(hActWaitSound, self, 0, int(Pawn(Owner).IsPlayerPawn()), 0 );
00034	        PlayAnim('WaitActVide', 1.0);
00035	      }
00036	      else
00037	        PlayAnim('WaitVide', 1.0);
00038	    }
00039	}
00040	//_____________________________________________________________________________
00041	simulated function TweenDown()
00042	{
00043	    if ( ReLoadCount > 0 )
00044	      PlayAnim('Down', 1.0);
00045	    else
00046	      PlayAnim('DownVide', 1.0);
00047	}
00048	
00049	//_____________________________________________________________________________
00050	simulated function PlaySelect()
00051	{
00052	    if ( DBWeap )
00053	      log("PlaySelect call for"@self@"w/ mesh="$Mesh);
00054	    if (ReLoadCount > 0)
00055	      PlayAnim('Select', 1.0);
00056	    else
00057	      PlayAnim('SelectVide', 1.0);
00058	    Instigator.PlaySound(hSelectWeaponSound, 0, int(Pawn(Owner).IsPlayerPawn()) );
00059	}
00060	
00061	//_____________________________________________________________________________
00062	// FRD
00063	function float RateSelf()
00064	{
00065	    local float distance;
00066	
00067	    if ( !HasAmmo() )
00068	      return -2;
00069	    if (instigator.controller.enemy!=none)
00070	    {
00071	     distance=Vsize(instigator.controller.enemy.location-instigator.location);
00072	     if (distance>1666)
00073	       return 0.29;
00074	    }
00075	    return AIRating;
00076	}
00077	
00078	//    PickupClass=Class'XIII.ArbaleteX3Pick'
00079	//    Icon=texture'XIIIMenu.Arbalete3CIcon'
00080	
00081	defaultproperties
00082	{
00083	     WeaponOnoClass=Class'XIDSpec.CrossBowWeaponOno'
00084	     bHaveScope=True
00085	     bAutoReload=True
00086	     bHaveBoredSfx=True
00087	     WHand=WHA_2HShot
00088	     WeaponMode=WM_SemiAuto
00089	     AmmoName=Class'XIII.BoltAmmo'
00090	     PickupAmmoCount=3
00091	     ReloadCount=3
00092	     MeshName="XIIIArmes.FpsArbalete3cM"
00093	     FireOffset=(Y=10.000000,Z=-6.000000)
00094	     ShotTime=0.300000
00095	     FiringMode="FM_2H"
00096	     FireNoise=0.104000
00097	     ReLoadNoise=0.000000
00098	     ZCrosshair=Texture'XIIIMenu.HUD.ZMireSniperA'
00099	     ZCrosshairDot=Texture'XIIIMenu.HUD.miresnipeM'
00100	     LoadedFiringAnim="Firevide"
00101	     EmptyFiringAnim="firevide_b"
00102	     fAltZoomValue(1)=0.902000
00103	     RumbleFXNum=14
00104	     AIRating=0.392000
00105	     hFireSound=Sound'XIIIsound.Guns__Arba3Fire.Arba3Fire__hArba3Fire'
00106	     hReloadSound=Sound'XIIIsound.Guns__Arba3Rel.Arba3Rel__hArba3Rel'
00107	     hNoAmmoSound=Sound'XIIIsound.Guns__Arba3DryFire.Arba3DryFire__hArba3Dry'
00108	     hSelectWeaponSound=Sound'XIIIsound.Guns__Arba3SelWp.Arba3SelWp__hArba3SelWp'
00109	     hZoomSound=Sound'XIIIsound.Guns__Zoom.Zoom__hZoom'
00110	     hActWaitSound=Sound'XIIIsound.Guns__ArbaWait.ArbaWait__hArbaWait'
00111	     InventoryGroup=7
00112	     PickupClassName="XIII.ArbaleteX3Pick"
00113	     PlayerViewOffset=(X=8.000000,Y=10.000000,Z=-6.000000)
00114	     ThirdPersonRelativeLocation=(X=21.000000,Y=-3.000000,Z=14.000000)
00115	     ThirdPersonRelativeRotation=(Pitch=7000)
00116	     AttachmentClass=Class'XIII.ArbaleteX3Attach'
00117	     ItemName="Crossbow X3"
00118	     DrawScale=0.300000
00119	}

End Source Code