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

◆ ApplyDamageToNPC()

void Terraria.Player.ApplyDamageToNPC ( NPC npc,
int damage,
float knockback,
int direction,
bool crit )
inline

Definition at line 19845 of file Player.cs.

19846 {
19847 int num = Item.NPCtoBanner(npc.BannerID());
19848 if (num > 0 && HasNPCBannerBuff(num))
19849 {
19850 damage = ((!Main.expertMode) ? ((int)((float)damage * ItemID.Sets.BannerStrength[Item.BannerToItem(num)].NormalDamageDealt)) : ((int)((float)damage * ItemID.Sets.BannerStrength[Item.BannerToItem(num)].ExpertDamageDealt)));
19851 }
19852 OnHit(npc.Center.X, npc.Center.Y, npc);
19853 damage += npc.checkArmorPenetration(armorPenetration, 0f);
19855 int dmg = (int)npc.StrikeNPC(damage, knockback, direction, crit);
19856 if (accDreamCatcher)
19857 {
19858 addDPS(dmg);
19859 }
19860 if (Main.netMode != 0)
19861 {
19862 NetMessage.SendData(28, -1, -1, null, npc.whoAmI, damage, knockback, direction, crit.ToInt());
19863 }
19864 int num2 = Item.NPCtoBanner(npc.BannerID());
19865 if (num2 >= 0)
19866 {
19868 }
19869 if (attempt.DidNPCDie())
19870 {
19871 OnKillNPC(ref attempt, null);
19872 }
19873 }
static BannerEffect[] BannerStrength
Definition ItemID.cs:1018
bool HasNPCBannerBuff(int bannerType)
Definition Player.cs:42017
void addDPS(int dmg)
Definition Player.cs:50700
int lastCreatureHit
Definition Player.cs:2169
void OnKillNPC(ref NPCKillAttempt attempt, object externalKillingBlowSource)
Definition Player.cs:19875
int armorPenetration
Definition Player.cs:1551
void OnHit(float x, float y, Entity victim)
Definition Player.cs:5855
bool accDreamCatcher
Definition Player.cs:2187

References Terraria.NPC.BannerID(), Terraria.ID.ItemID.Sets.BannerStrength, Terraria.Item.BannerToItem(), Terraria.Entity.Center, Terraria.NPC.checkArmorPenetration(), Terraria.Main.expertMode, Terraria.Main.netMode, Terraria.Item.NPCtoBanner(), Terraria.NetMessage.SendData(), Terraria.NPC.StrikeNPC(), Terraria.Entity.whoAmI, Microsoft.Xna.Framework.Vector2.X, and Microsoft.Xna.Framework.Vector2.Y.