예제 #1
0
 public override void AI()
 {
     projectile.ai[0] += 1f;
     if (projectile.ai[0] > 5f)
     {
         //projectile.ai[0] = 10f;
         // Roll speed dampening.
         if (projectile.velocity.Y == 0f && projectile.velocity.X != 0f)
         {
             projectile.velocity.X = projectile.velocity.X * 0.97f;
             //if (projectile.type == 29 || projectile.type == 470 || projectile.type == 637)
             {
                 projectile.velocity.X = projectile.velocity.X * 0.99f;
             }
             if ((double)projectile.velocity.X > -0.01 && (double)projectile.velocity.X < 0.01)
             {
                 projectile.velocity.X = 0f;
                 //projectile.netUpdate = true;
             }
         }
         projectile.velocity.Y = projectile.velocity.Y + 0.2f;
     }
     // Rotation increased by velocity.X
     projectile.rotation += projectile.velocity.X * 0.1f;
     ChestBullet.rocketAI(projectile, 90);
     return;
 }
예제 #2
0
 public override bool OnTileCollide(Vector2 oldVelocity)
 {
     ChestBullet.OnHitCollide(projectile, true); return(false);
 }
예제 #3
0
 public override void OnHitNPC(NPC target, int damage, float knockback, bool crit)
 {
     ChestBullet.OnHitCollide(projectile);
 }
예제 #4
0
 public override void OnHitPvp(Player target, int damage, bool crit)
 {
     ChestBullet.OnHitCollide(projectile);
 }
예제 #5
0
 public override void Kill(int timeLeft)
 {
     ChestBullet.aiKill(projectile, false, 0);
 }