コード例 #1
0
ファイル: Bobber.cs プロジェクト: Dierney/UnuBattleRods
        private bool hitAndAttachProjectile(Player p)
        {
            if (!attatchesToAllies && (!p.hostile || p.team == Main.player[projectile.owner].team))
            {
                return(false);
            }

            if (!attatchesToEnemies && (p.hostile && p.team != Main.player[projectile.owner].team))
            {
                return(false);
            }

            bool?b = PlayerHooks.CanHitPvpWithProj(projectile, p);

            if (b.HasValue && !b.Value)
            {
                return(false);
            }

            b = ProjectileLoader.CanHitPvp(projectile, p);
            if (b.HasValue && !b.Value)
            {
                return(false);
            }

            npcIndex = (short)(p.whoAmI + Main.npc.Length);
            FishPlayer fOwner = Main.player[projectile.owner].GetModPlayer <FishPlayer>(mod);

            p.GetModPlayer <FishPlayer>(mod).isHooked++;
            if (fOwner.seals)
            {
                p.GetModPlayer <FishPlayer>(mod).isSealed++;
            }

            projectile.Center = p.Center;
            updatePos         = false;

            if (Main.netMode != 0)
            {
                /*
                 * ModPacket pk = mod.GetPacket();
                 * pk.Write((byte)2);
                 * pk.Write((ushort)(projectile.whoAmI));
                 * pk.Write(npcIndex);
                 * pk.Write(projectile.ai[0]);
                 * pk.Send();*/
                NetMessage.SendData(27, -1, -1, null, projectile.whoAmI, 0f, 0f, 0f, 0, 0, 0);
            }

            /* if(projectile.damage > 0)
             * {
             *   damagePlayer(p);
             * }*/
            return(true);
        }
コード例 #2
0
ファイル: FireBall2.cs プロジェクト: DogeLord1963/Joostmod
        public override bool?CanBeHitByProjectile(Projectile projectile)
        {
            Player player = Main.player[projectile.owner];

            if ((projectile.owner == (int)npc.target) || (player.heldProj != projectile.whoAmI) || !(ProjectileLoader.CanHitPvp(projectile, Main.player[npc.target]) && PlayerHooks.CanHitPvpWithProj(projectile, Main.player[npc.target])))
            {
                return(false);
            }
            return(base.CanBeHitByProjectile(projectile));
        }