*~@'&AI$@ @MF8'None BDNinjaStarAdvancedEngineEngineCoreSystem DOTZEngine StaticMesh PickupClassSpawnProjectile MyDamageTypeNinjaStarWeaponMeshInventoryTypeLocalRandSpin DrawType BeginPlayPostBeginPlayGrenadeCrouchIdleGrenadeStandIdle GrenadeHitLandedUserNotify_SpawnProjectile SpawnDelayHitWall GrenadeFire BounceSoundNinjaStarAmmoPickupAccuracyIndicatorPawnbCanDamageSelf WeaponMode TakeDamageVectorCrouchIdleAnimNameStandIdleAnimName FireAnimNamePawnAnimationPackageGrenadeAmmunitionClassSpawnProjectileEx OfficialName ItemNameNinjaStarAmmunitionGetViewRotation bBlockActorsPhysics bBlockKarma HitSpread bProjTargetbFixedRotationDirActionPickupMessage GetFireStart ProcessTouch LifeSpanAttachmentClassNinjaStarAttachmentNinjaStarPickupProjectileFireNinjaStarProjectilebRotateToDesiredbBounceAutoSwitchPriorityInventoryGroupDamageoldstar AmmoAmount HitAnimNameMaxAmmoProjectileClass FireSound AmmoNamePickupAmmoCountMomentumTransfer ReloadCount FireOffsetSpeed AdjustedAim AmmoType spinRateDirStart HitLocation aimerror HitNormalOther InstigatorOwnerDesiredRotation AdjustAimAdvancedWeapon RotationRateWall ScriptTextAdvancedWeaponAttachmentXYZ Location Rotation VelocityWeapon ProjectileStaticReticule SkeletalMeshRangedActorDOTZGrenadeWeaponDOTZProjectileBaseDOTZGrenadePickupDOTZBulletDamageDOTZAmmunitionBaseDOTZAmmoPickup DOTZXWeaponsRangedGrenadeBounceMixdownMixdownRangedGrenadeShootRollPitchSoundClassPackageConst TextBufferObject SpawnDir SpawnLocnSPAWN_DELAY_TIMERBouncedDOTZA3rdPersonWeapons 3PGrenade FunctionRotatorStructStructPropertyClassPropertyObjectPropertyFloatProperty IntProperty NinjaStarMNinjaStarAngle NinjaStar NinjaStarANinjaStarHands+2uG+D"E  92 ƽ'    84jB)6F $2ؙmռW3]$#Press Action to pick up Ninja StarB" .%;*vs}ebebebAL$@E@$HBI$E -1/=2<6$A 2y_w̃ebL9L9+$?&]DOTZAHumans.3PGrenade%$#C 0$)] NinjaStarGH"J>"K:"@@? 7*] NinjaStar  Kb? , 4  9D.( **   4382y//BD - Braindead@UndeadGames.com class NinjaStarWeapon extends DOTZGrenadeWeapon config(user); // Manually tune to be in-synch w/ throw anim. See also FireOffset. var() float SpawnDelay; // internal... var private Rotator SpawnDir; var private Vector SpawnLocn; const SPAWN_DELAY_TIMER = 4382; /** * A quick hack, since the default props don't seem to be sticking. */ function BeginPlay() { super.BeginPlay(); default.staticReticule = none; StaticReticule = none; } /** */ function SpawnProjectile(){ local Vector Start, X,Y,Z; Owner.MakeNoise(1.0); GetAxes(Instigator.GetViewRotation(),X,Y,Z); Start = GetFireStart(X,Y,Z); AdjustedAim = Instigator.AdjustAim(AmmoType, Start, AimError); // all timer for the animation to get to the release point before // spawning... SpawnDir = AdjustedAim; SpawnLocn = start; DOTZAmmunitionBase(AmmoType).SpawnProjectileEx( SpawnLocn, SpawnDir ,Instigator); } /** * Replaces default weapon behaviour so that projectile is spawned * during the fire animation (instead of before). */ function ProjectileFire() { SetMultiTimer( SPAWN_DELAY_TIMER, spawnDelay, false ); } /***************************************************************** * Notify_SpawnProjectile * Called from the animation to let us know the best point to release the grenade ***************************************************************** */ function Notify_SpawnProjectile(){ SpawnProjectile(); } //=========================================================================== // DefaultProperties //=========================================================================== b$//BD - Braindead@UndeadGames.com class NinjaStarProjectile extends DOTZProjectileBase; var int Bounced; var sound BounceSound; var class oldstar; /***************************************************************** * PostBeginPlay * Give your newly spawned projectile a velocity ***************************************************************** */ function PostBeginPlay() { local vector Dir; //Give your projectile a velocity Dir = vector(Rotation); velocity = (speed * Dir) + owner.velocity; LocalRandSpin(12000); if (abs(RotationRate.Pitch)<10000){RotationRate.Pitch=10000;} if (abs(RotationRate.Roll)<10000) {RotationRate.Roll=10000;} Super.PostBeginPlay(); } /***************************************************************** * RandSpin ***************************************************************** */ function LocalRandSpin(float spinRate) { DesiredRotation = RotRand(); // RotationRate.Yaw = spinRate * 2 *FRand() - spinRate; RotationRate.Pitch = spinRate * 2 *FRand() - spinRate; RotationRate.Roll = spinRate * 2 *FRand() - spinRate; } /***************************************************************** * Landed ***************************************************************** */ simulated function Landed( vector HitNormal ){ // Explode(Location, vect(0,0,1)); // Spawn(oldstar,self,,Location); } /***************************************************************** * HitWall ***************************************************************** */ simulated function HitWall(vector HitNormal, actor Wall){ if (Wall.IsA('Pawn') == true && Instigator != Pawn(Wall)){ // Explode(Location, vect(0,0,1)); // Spawn(BloodEmitter,,,location); Wall.TakeDamage( Damage, instigator, Location, MomentumTransfer * Normal(Velocity), MyDamageType); Destroy(); } else{ Destroy(); Spawn(oldstar,self,,Location); } } function ProcessTouch(Actor Other, Vector HitLocation) { // Explode(Location, vect(0,0,1)); // Spawn(oldstar,self,,Location); } //=========================================================================== // DefaultProperties //=========================================================================== :-a ( 7   `//BD - Braindead@UndeadGames.com class NinjaStarPickup extends DOTZGrenadePickup placeable; //=========================================================================== // DefaultProperties //=========================================================================== 99 ;Fd9?69?'6'9?69?'6' X//BD - Braindead@UndeadGames.com class NinjaStarAttachment extends AdvancedWeaponAttachment; //=========================================================================== // DefaultProperties //=========================================================================== !Qa@69D9?,69D9?, V//BD - Braindead@UndeadGames.com class NinjaStarAmmunition extends DOTZAmmunitionBase; //=========================================================================== // DefaultProperties //=========================================================================== !/  #8wzfa/!'w.*!9Daxaa   V// Braindead@Undeadgames.com class NinjaStarAmmoPickup extends DOTZAmmoPickup; "&5Id 'yyxjx|yxFxCE"xxEDxfF[x{xeHVyxxoJuJvxpyKxHxZFdHWCxmxlFbxkLyqHNFMxIHgx^CxnC5IIG I@CC:ISCYFXCFcxwxzxJyiyAwryswthBxGILMyNhOO X'+kd'"\ O)Q \)~ i)P v)9cC*} f+_ s+a @,` M, Z,Af,8`t,TT.;rh0 HZ3 vb7'X9 9]4DI:]4m$MU:'zyaz@ @{ L{]4kY{}D]4cAPd]4atU T qg~"T e]4ar5S%U o%R |