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

◆ ItemCheck_MeleeHitPVP()

void Terraria.Player.ItemCheck_MeleeHitPVP ( Item sItem,
Rectangle itemRectangle,
int damage,
float knockBack )
inlineprivate

Definition at line 43236 of file Player.cs.

43237 {
43238 //IL_006c: Unknown result type (might be due to invalid IL or missing references)
43239 //IL_00b3: Unknown result type (might be due to invalid IL or missing references)
43240 //IL_00be: Unknown result type (might be due to invalid IL or missing references)
43241 //IL_014a: Unknown result type (might be due to invalid IL or missing references)
43242 //IL_0161: Unknown result type (might be due to invalid IL or missing references)
43243 //IL_0166: Unknown result type (might be due to invalid IL or missing references)
43244 //IL_016a: Unknown result type (might be due to invalid IL or missing references)
43245 //IL_0175: Unknown result type (might be due to invalid IL or missing references)
43246 //IL_0182: Unknown result type (might be due to invalid IL or missing references)
43247 //IL_018d: Unknown result type (might be due to invalid IL or missing references)
43248 //IL_019f: Unknown result type (might be due to invalid IL or missing references)
43249 //IL_01a2: Unknown result type (might be due to invalid IL or missing references)
43250 //IL_01ac: Unknown result type (might be due to invalid IL or missing references)
43251 //IL_01b1: Unknown result type (might be due to invalid IL or missing references)
43252 //IL_01bb: Unknown result type (might be due to invalid IL or missing references)
43253 //IL_01c0: Unknown result type (might be due to invalid IL or missing references)
43254 //IL_01ce: Unknown result type (might be due to invalid IL or missing references)
43255 //IL_01d5: Unknown result type (might be due to invalid IL or missing references)
43256 //IL_01dc: Unknown result type (might be due to invalid IL or missing references)
43257 //IL_01e3: Unknown result type (might be due to invalid IL or missing references)
43258 //IL_0263: Unknown result type (might be due to invalid IL or missing references)
43259 //IL_026e: Unknown result type (might be due to invalid IL or missing references)
43260 //IL_0348: Unknown result type (might be due to invalid IL or missing references)
43261 //IL_034e: Unknown result type (might be due to invalid IL or missing references)
43262 //IL_0358: Unknown result type (might be due to invalid IL or missing references)
43263 //IL_035e: Unknown result type (might be due to invalid IL or missing references)
43264 if (!hostile)
43265 {
43266 return;
43267 }
43268 Vector2 vector = default(Vector2);
43269 Vector2 vector2 = default(Vector2);
43270 for (int i = 0; i < 255; i++)
43271 {
43272 Player player = Main.player[i];
43273 if (i == whoAmI || !player.active || !player.hostile || player.immune || player.dead || (team != 0 && team == player.team) || !((Rectangle)(ref itemRectangle)).Intersects(player.Hitbox) || !CanHit(player) || !CombinedHooks.CanHitPvp(this, sItem, player))
43274 {
43275 continue;
43276 }
43277 bool flag = false;
43278 int num = Main.DamageVar(damage, luck);
43279 StatusToPlayerPvP(sItem.type, i);
43280 OnHit(player.Center.X, player.Center.Y, player);
43282 int num2 = (int)player.Hurt(playerDeathReason, num, direction, pvp: true, quiet: false, flag, -1);
43283 if (inventory[selectedItem].type == 3211)
43284 {
43285 ((Vector2)(ref vector))._002Ector((float)(direction * 100 + Main.rand.Next(-25, 26)), (float)Main.rand.Next(-75, 76));
43286 ((Vector2)(ref vector)).Normalize();
43287 vector *= (float)Main.rand.Next(30, 41) * 0.1f;
43288 ((Vector2)(ref vector2))._002Ector((float)(itemRectangle.X + Main.rand.Next(itemRectangle.Width)), (float)(itemRectangle.Y + Main.rand.Next(itemRectangle.Height)));
43289 vector2 = (vector2 + player.Center * 2f) / 3f;
43290 Projectile.NewProjectile(GetProjectileSource_Item(HeldItem), vector2.X, vector2.Y, vector.X, vector.Y, 524, (int)((double)damage * 0.7), knockBack * 0.7f, whoAmI);
43291 }
43292 if (sItem.type == 5097)
43293 {
43294 BatBat_TryLifeLeeching(player);
43295 }
43296 if (beetleOffense)
43297 {
43299 beetleCountdown = 0;
43300 }
43301 if (meleeEnchant == 7)
43302 {
43303 Projectile.NewProjectile(GetProjectileSource_Misc(8), player.Center.X, player.Center.Y, player.velocity.X, player.velocity.Y, 289, 0, 0f, whoAmI);
43304 }
43305 if (sItem.type == 1123)
43306 {
43307 int num3 = Main.rand.Next(1, 4);
43308 if (strongBees && Main.rand.Next(3) == 0)
43309 {
43310 num3++;
43311 }
43312 for (int j = 0; j < num3; j++)
43313 {
43314 float num4 = (float)(direction * 2) + (float)Main.rand.Next(-35, 36) * 0.02f;
43315 float num5 = (float)Main.rand.Next(-35, 36) * 0.02f;
43316 num4 *= 0.2f;
43317 num5 *= 0.2f;
43318 int num6 = Projectile.NewProjectile(GetProjectileSource_Item(sItem), itemRectangle.X + itemRectangle.Width / 2, itemRectangle.Y + itemRectangle.Height / 2, num4, num5, beeType(), beeDamage(num / 3), beeKB(0f), whoAmI);
43319 Main.projectile[num6].melee = true;
43320 }
43321 }
43322 if (inventory[selectedItem].type == 3106)
43323 {
43324 stealth = 1f;
43325 if (Main.netMode == 1)
43326 {
43327 NetMessage.SendData(84, -1, -1, null, whoAmI);
43328 }
43329 }
43330 if (Main.netMode != 0)
43331 {
43332 NetMessage.SendPlayerHurt(i, playerDeathReason, num, direction, flag, pvp: true, -1);
43333 }
43335 }
43336 }
static PlayerDeathReason ByPlayerItem(int index, Item item)
int whoAmI
The index of this Entity within its specific array. These arrays track the entities in the world....
Definition Entity.cs:16
static bool CanHitPvp(Player player, Item sItem, Player target)
bool strongBees
If true, then the bees created by F:Terraria.Player.honeyCombItem have a chance to be stronger.
Definition Player.cs:2193
float beetleCounter
Definition Player.cs:1089
bool beetleOffense
Definition Player.cs:1095
void ApplyAttackCooldown()
Definition Player.cs:43693
void StatusToPlayerPvP(int type, int i)
Definition Player.cs:6938
bool CanHit(Entity ent)
Definition Player.cs:41725
IEntitySource GetProjectileSource_Misc(int projectileSourceId)
Definition Player.cs:7871
IEntitySource GetProjectileSource_Item(Item item)
Definition Player.cs:7831
byte meleeEnchant
The vanilla flask effect which the player currently has active; these affect all melee weapons and wh...
Definition Player.cs:1281
void BatBat_TryLifeLeeching(Entity entity)
Definition Player.cs:43435
float beeKB(float KB)
Definition Player.cs:10439
int beeDamage(int dmg)
Definition Player.cs:10430
int beetleCountdown
Definition Player.cs:1091
void OnHit(float x, float y, Entity victim)
Definition Player.cs:7222
Item[] inventory
The player's normal inventory. Indexes 0-9 hold the hotbar items, 10-49 the rest of the main inventor...
Definition Player.cs:1767

References Terraria.Entity.active, Terraria.Player.ApplyAttackCooldown(), Terraria.Player.BatBat_TryLifeLeeching(), Terraria.Player.beeDamage(), Terraria.Player.beeKB(), Terraria.Player.beetleCountdown, Terraria.Player.beetleCounter, Terraria.Player.beetleOffense, Terraria.Player.beeType(), Terraria.DataStructures.PlayerDeathReason.ByPlayerItem(), Terraria.Player.CanHit(), Terraria.ModLoader.CombinedHooks.CanHitPvp(), Terraria.Entity.Center, Terraria.Main.DamageVar(), Terraria.Player.dead, Terraria.Entity.direction, Terraria.Player.GetProjectileSource_Item(), Terraria.Player.GetProjectileSource_Misc(), Terraria.Player.HeldItem, Terraria.Entity.Hitbox, Terraria.Player.hostile, Terraria.Player.Hurt(), Terraria.Player.immune, Terraria.Player.inventory, Terraria.Player.luck, Terraria.Player.meleeEnchant, Terraria.Main.netMode, Terraria.Projectile.NewProjectile(), Terraria.Player.OnHit(), Terraria.Main.player, Terraria.Main.projectile, Terraria.Main.rand, Terraria.Player.selectedItem, Terraria.NetMessage.SendData(), Terraria.NetMessage.SendPlayerHurt(), Terraria.Player.StatusToPlayerPvP(), Terraria.Player.stealth, Terraria.Player.strongBees, Terraria.Player.team, Terraria.Entity.velocity, and Terraria.Entity.whoAmI.

Referenced by Terraria.Player.ItemCheck_OwnerOnlyCode().

+ Here is the call graph for this function:
+ Here is the caller graph for this function: