Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches

◆ BombsHurtPlayers()

void Terraria.Projectile.BombsHurtPlayers ( Rectangle projRectangle,
int j )
inlineprivate

Definition at line 12987 of file Projectile.cs.

12988 {
12989 if (aiStyle != 16 || ProjectileID.Sets.RocketsSkipDamageForPlayers[type] || (timeLeft > 1 && type != 108 && type != 164 && type != 1002) || !Main.player[j].active || Main.player[j].dead || Main.player[j].immune || (ownerHitCheck && !CanHitWithMeleeWeapon(Main.player[j])))
12990 {
12991 return;
12992 }
12993 Rectangle value = new Rectangle((int)Main.player[j].position.X, (int)Main.player[j].position.Y, Main.player[j].width, Main.player[j].height);
12994 if (!projRectangle.Intersects(value))
12995 {
12996 return;
12997 }
12998 if (Main.player[j].position.X + (float)(Main.player[j].width / 2) < position.X + (float)(width / 2))
12999 {
13000 direction = -1;
13001 }
13002 else
13003 {
13004 direction = 1;
13005 }
13006 int num = Main.DamageVar(damage, 0f - Main.player[j].luck);
13007 int playerIndex = owner;
13008 bool pvp = true;
13009 if (type == 108 || type == 1002)
13010 {
13011 playerIndex = -1;
13012 pvp = false;
13013 }
13015 {
13016 playerIndex = (int)ai[0];
13017 }
13018 bool dodgeable = IsDamageDodgable();
13020 if (Main.player[j].Hurt(damageSource, num, direction, pvp, quiet: false, Crit: false, -1, dodgeable) > 0.0 && !Main.player[j].dead)
13021 {
13022 StatusPlayer(j);
13023 }
13024 if (trap)
13025 {
13026 Main.player[j].trapDebuffSource = true;
13027 if (Main.player[j].dead)
13028 {
13029 AchievementsHelper.HandleSpecialEvent(Main.player[j], 4);
13030 }
13031 }
13032 }
static PlayerDeathReason ByProjectile(int playerIndex, int projectileIndex)
Vector2 position
Definition Entity.cs:14
static void HandleSpecialEvent(Player player, int eventID)
static bool[] RocketsSkipDamageForPlayers
void StatusPlayer(int i)
bool CanHitWithMeleeWeapon(Entity ent)

References Terraria.Projectile.ai, Terraria.Projectile.aiStyle, Terraria.DataStructures.PlayerDeathReason.ByProjectile(), Terraria.Projectile.CanHitWithMeleeWeapon(), Terraria.Projectile.damage, Terraria.Main.DamageVar(), Terraria.Entity.direction, Terraria.GameContent.Achievements.AchievementsHelper.HandleSpecialEvent(), Terraria.ID.ProjectileID.Sets.IsAGravestone, Terraria.Projectile.IsDamageDodgable(), Terraria.Projectile.owner, Terraria.Projectile.ownerHitCheck, Terraria.Main.player, Terraria.Entity.position, Terraria.ID.ProjectileID.Sets.RocketsSkipDamageForPlayers, Terraria.Projectile.StatusPlayer(), Terraria.Projectile.timeLeft, Terraria.Projectile.trap, Terraria.Projectile.type, System.value, Terraria.Entity.whoAmI, Terraria.Entity.width, and Microsoft.Xna.Framework.Vector2.X.

Referenced by Terraria.Projectile.Damage().