private void spawnProjectile(TeraPacketParser p)
        {
            ulong          i   = (ulong)p["id"].value;
            ulong          pId = (ulong)p["player id"].value;
            TeraProjectile pr;
            TeraPlayer     pl;

            if (projectiles.TryGetValue(i, out pr))
            {
                if (players.TryGetValue(pId, out pl))
                {
                    pr.player = pl;
                    return;
                }
                projectiles.Remove(i);
                return;
            }
            if (players.TryGetValue(pId, out pl))
            {
                pr = new TeraProjectile()
                {
                    id = i, player = pl
                };
                projectiles.Add(i, pr);
                return;
            }
        }
Esempio n. 2
0
 public DamageEventArgs(TeraProjectile p, ulong dmg, ushort t)
 {
     player     = p.player;
     projectile = p;
     damage     = dmg;
     type       = t;
 }