Beispiel #1
0
        public static ProceduralSword NewSword(Mod mod, Vector2 position, SwordHilt hilt, SwordBlade blade, SwordAccent accent, float dps, int enemyDef)
        {
            if (hilt == null)
            {
                kRPG.LogMessage("Ummm....  Why is the hilt null?");
            }
            if (blade == null)
            {
                kRPG.LogMessage("Ummm....  Why is the blade null?");
            }

            int             id    = Item.NewItem(position, mod.GetItem("ProceduralSword").item.type);
            ProceduralSword sword = (ProceduralSword)Main.item[id].modItem;

            sword.Hilt     = hilt;
            sword.Blade    = blade;
            sword.Accent   = accent;
            sword.Dps      = dps;
            sword.EnemyDef = enemyDef;
            sword.Initialize();

            SwordInitPacket.Write(id, blade.Type, hilt.Type, accent.Type, dps, enemyDef);

            return(sword);
        }
Beispiel #2
0
        public override void HandlePacket(BinaryReader reader, int whoAmI)
        {
            Message msg = (Message)reader.ReadByte();

#if DEBUG
            LogMessage($"Handling {msg}");
#endif
            switch (msg)
            {
            //case Message.InitProjEleDmg:
            //    if (!Main.projectile.IndexInRange((int)tags[DataTag.projId])) break;
            //    Projectile p = Main.projectile[(int)tags[DataTag.projId]];
            //    try
            //    {
            //        kProjectile proj = p.GetGlobalProjectile<kProjectile>();
            //        proj.elementalDamage = new Dictionary<ELEMENT, int>()
            //        {
            //            { ELEMENT.FIRE, (int)tags[DataTag.fire] },
            //            { ELEMENT.COLD, (int)tags[DataTag.cold] },
            //            { ELEMENT.LIGHTNING, (int)tags[DataTag.lightning] },
            //            { ELEMENT.SHADOW, (int)tags[DataTag.shadow] }
            //        };
            //    }
            //    catch (SystemException e)
            //    {
            //        Main.NewText(e.ToString());
            //    }
            //    break;
            case Message.NpcEleDmg:
                NPCEleDmgPacket.Read(reader);
                break;

            case Message.PrefixNpc:
                PrefixNPCPacket.Read(reader);
                break;

            case Message.SyncStats:
                SyncStatsPacket.Read(reader);
                break;

            case Message.SyncLevel:
                SyncLevelPacket.Read(reader);
                kRPG.PlayerEnteredWorld = true;
                break;

            case Message.CreateProjectile:
                CreateProjectilePacket.Read(reader);
                break;

            case Message.AddXp:
                AddXPPacket.Read(reader);
                break;

            //case Message.SyncSpear:
            //    SyncSpearPacket.Read(reader);
            //    break;
            case Message.SwordInit:
                SwordInitPacket.Read(reader);
                break;

            case Message.StaffInit:
                StaffInitPacket.Read(reader);
                break;

            case Message.BowInit:
                BowInitPacket.Read(reader);
                break;

            case Message.SyncHit:
                SyncHitPacket.Read(reader);
                break;

            case Message.SyncCritHit:
                SyncCritHitPacket.Read(reader);
                break;
            }
        }