//=============== //== BabyTitan == //=============== class BabyTitan extends SMPTitan; singular event BaseChange() { local float decorMass; if ( bInterpolating ) return; if ( (base == None) && (Physics == PHYS_None) ) SetPhysics(PHYS_Falling); else if ( Pawn(Base) != None ) { if ( !Pawn(Base).bCanBeBaseForPawns ) { Base.TakeDamage( 20, Self,Location,0.5 * Velocity , class'Crushed'); JumpOffPawn(); SetPhysics(PHYS_Falling); } } else if ( (Decoration(Base) != None) && (Velocity.Z < -400) ) { decorMass = FMax(Decoration(Base).Mass, 1); Base.TakeDamage((-2* Mass/decorMass * Velocity.Z/4), Self, Location, 0.5 * Velocity, class'Crushed'); } } /*function SpawnRock() { local vector X,Y,Z, FireStart; local rotator FireRotation; local Projectile Proj; GetAxes(Rotation,X,Y,Z); FireStart = Location + 1.2*CollisionRadius * X + 0.4 * CollisionHeight * Z; if ( !SavedFireProperties.bInitialized ) { SavedFireProperties.AmmoClass = MyAmmo.Class; SavedFireProperties.ProjectileClass = MyAmmo.ProjectileClass; SavedFireProperties.WarnTargetPct = MyAmmo.WarnTargetPct; SavedFireProperties.MaxRange = MyAmmo.MaxRange; SavedFireProperties.bTossed = MyAmmo.bTossed; SavedFireProperties.bTrySplash = MyAmmo.bTrySplash; SavedFireProperties.bLeadTarget = MyAmmo.bLeadTarget; SavedFireProperties.bInstantHit = MyAmmo.bInstantHit; SavedFireProperties.bInitialized = true; } FireRotation = Controller.AdjustAim(SavedFireProperties,FireStart,600); if (FRand() < 0.4) { Proj=Spawn(class'SMPTitanBoulder',,,FireStart,FireRotation); if(Proj!=none) { Proj.SetPhysics(PHYS_Projectile); Proj.setDrawScale(Proj.DrawScale*DrawScale/default.DrawScale); Proj.SetCollisionSize(Proj.CollisionRadius*DrawScale/default.DrawScale,Proj.CollisionHeight*DrawScale/default.DrawScale); Proj.Velocity = (ProjectileSpeed+Rand(ProjectileMaxSpeed-ProjectileSpeed)) *vector(Proj.Rotation)*DrawScale/default.DrawScale; } return; } Proj=Spawn(MyAmmo.ProjectileClass,,,FireStart,FireRotation); if(Proj!=none) { Proj.SetPhysics(PHYS_Projectile); Proj.setDrawScale(Proj.DrawScale*DrawScale/default.DrawScale); Proj.SetCollisionSize(Proj.CollisionRadius*DrawScale/default.DrawScale,Proj.CollisionHeight*DrawScale/default.DrawScale); Proj.Velocity = (ProjectileSpeed+Rand(ProjectileMaxSpeed-ProjectileSpeed)) *vector(Proj.Rotation)*DrawScale/default.DrawScale; } FireStart=Location + 1.2*CollisionRadius * X -40*Y+ 0.4 * CollisionHeight * Z; Proj=Spawn(MyAmmo.ProjectileClass,,,FireStart,FireRotation); if(Proj!=none) { Proj.SetPhysics(PHYS_Projectile); Proj.setDrawScale(Proj.DrawScale*DrawScale/default.DrawScale); Proj.SetCollisionSize(Proj.CollisionRadius*DrawScale/default.DrawScale,Proj.CollisionHeight*DrawScale/default.DrawScale); Proj.Velocity = (ProjectileSpeed+Rand(ProjectileMaxSpeed-ProjectileSpeed)) *vector(Proj.Rotation)*DrawScale/default.DrawScale; } bStomped=false; ThrowCount++; if(ThrowCount>=2) { bThrowed=true; ThrowCount=0; } }*/ defaultproperties { SlapDamage=45 PunchDamage=40 ProjectileSpeed=1200.000000 ProjectileMaxSpeed=2000.000000 InvalidityMomentumSize=50000.000000 MonsterName="steven"// broke stevens rock bNoTeleFrag=False bNoCrushVehicle=False bBoss=False ScoringValue=8 MeleeRange=75.000000 GroundSpeed=250.000000 Health=450 DrawScale=0.500000 CollisionRadius=55.000000 CollisionHeight=57.500000 Mass=1000.000000 RotationRate=(Yaw=30000) }