예제 #1
0
    public override void Deserialize(NetworkReader reader)
    {
        Vector2?position       = null;
        var     hasNewPosition = reader.ReadBoolean();

        if (hasNewPosition)
        {
            position = reader.ReadVector2();
        }
        Direction?orientation       = null;
        var       hasNewOrientation = reader.ReadBoolean();

        if (hasNewOrientation)
        {
            orientation = DirectionIO.readDirectionFromBuffer(reader);
        }
        var bullets   = new HashSet <BulletState>();
        var numBullet = reader.ReadInt32();

        for (var i = 0; i < numBullet; i++)
        {
            var bullet = new BulletState();
            bullet.Deserialize(reader);
            bullets.Add(bullet);
        }
        NewPosition    = position;
        NewOrientation = orientation;
        BulletsCreated = bullets;
    }
예제 #2
0
 public override void Deserialize(NetworkReader reader)
 {
     Position  = reader.ReadVector2();
     Direction = DirectionIO.readDirectionFromBuffer(reader);
     BulletID  = reader.ReadString();
 }
예제 #3
0
 public override void Deserialize(NetworkReader reader)
 {
     Position    = reader.ReadVector2();
     Orientation = DirectionIO.readDirectionFromBuffer(reader);
     HP          = reader.ReadSingle();
 }