コード例 #1
0
        public void Deserialize(Stream stream, GameStateSerializer serializer)
        {
            var count = stream.ReadInt();

            for (int i = 0; i < count; i++)
            {
                Add((IEvent)serializer.ReadNext(stream));
            }
        }
コード例 #2
0
 public override void Deserialize(Stream stream, GameStateSerializer serializer)
 {
     animationCountdown       = stream.ReadStruct <Counter>();
     animationIndex           = stream.ReadStruct <Counter>();
     directionChangeCountdown = stream.ReadStruct <Counter>();
     currentOrientation       = stream.ReadStruct <ObjectOrientation>();
     headingOrientation       = stream.ReadStruct <ObjectOrientation>();
     base.Deserialize(stream, serializer);
 }
コード例 #3
0
    private void Start()
    {
        serializer = new GameStateSerializer();

        alertAnimator    = alertText.GetComponent <Animator>();
        alertAnimationId = Animator.StringToHash("Alert");

        loadGameButton.SetActive(serializer.FileExists());
    }
コード例 #4
0
        public override void Serialize(Stream stream, GameStateSerializer serializer)
        {
            stream.WriteInt(clicks);
            stream.WriteStruct(scoreBonus);
            stream.WriteStruct(activationCounter);
            stream.WriteBool(shouldActivate);

            base.Serialize(stream, serializer);
        }
コード例 #5
0
ファイル: PenguinGenerator.cs プロジェクト: FLAMESpl/pingwiny
 public override void Serialize(Stream stream, GameStateSerializer serializer)
 {
     stream.WriteStruct(spawnCooldown);
     stream.WriteStruct(surfingSpawnCooldown);
     stream.WriteFloat(surfingSpawnCooldownNonRounded);
     stream.WriteFloat(penguinDurationBonus);
     stream.WriteFloat(penguinDestroyBonus);
     base.Serialize(stream, serializer);
 }
コード例 #6
0
    private void Awake()
    {
        // Nie śmiejcie się z tego :(
        saveables  = FindObjectsOfType <MonoBehaviour>().OfType <ISaveable>().ToArray();
        serializer = new GameStateSerializer();

        ApplyStateBeforeMapGeneration();
        onMapGenerated.AddListener(ApplyStateAfterMapGeneration);
    }
コード例 #7
0
        public override void Deserialize(Stream stream, GameStateSerializer serializer)
        {
            clicks            = stream.ReadInt();
            scoreBonus        = stream.ReadStruct <decimal>();
            activationCounter = stream.ReadStruct <Counter>();
            shouldActivate    = stream.ReadBool();

            base.Deserialize(stream, serializer);
        }
コード例 #8
0
ファイル: PenguinGenerator.cs プロジェクト: FLAMESpl/pingwiny
 public override void Deserialize(Stream stream, GameStateSerializer serializer)
 {
     spawnCooldown                  = stream.ReadStruct <Counter>();
     surfingSpawnCooldown           = stream.ReadStruct <Counter>();
     surfingSpawnCooldownNonRounded = stream.ReadFloat();
     penguinDurationBonus           = stream.ReadFloat();
     penguinDestroyBonus            = stream.ReadFloat();
     base.Deserialize(stream, serializer);
 }
コード例 #9
0
 public override void Serialize(Stream stream, GameStateSerializer serializer)
 {
     stream.WriteStruct(animationCountdown);
     stream.WriteStruct(animationIndex);
     stream.WriteStruct(directionChangeCountdown);
     stream.WriteStruct(currentOrientation);
     stream.WriteStruct(headingOrientation);
     base.Serialize(stream, serializer);
 }
コード例 #10
0
        public void Serialize(Stream stream, GameStateSerializer serializer)
        {
            var events = this.scheduledEvents.Values.SelectMany(x => x).OfType <ISerializable>().ToList();

            stream.WriteInt(events.Count);
            foreach (var @event in events)
            {
                serializer.WriteNext(stream, @event);
            }
        }
コード例 #11
0
        public override void Deserialize(Stream stream, GameStateSerializer serializer)
        {
            processDuringPause = stream.ReadBool();
            var count = stream.ReadInt();

            for (int i = 0; i < count; i++)
            {
                Add((GameObject)serializer.ReadNext(stream));
            }

            base.Deserialize(stream, serializer);
        }
コード例 #12
0
        public override void Serialize(Stream stream, GameStateSerializer serializer)
        {
            var serializableItems = objects.Current.OfType <ISerializableGameState>().ToList();

            stream.WriteBool(processDuringPause);
            stream.WriteInt(serializableItems.Count);
            foreach (var @object in serializableItems)
            {
                serializer.WriteNext(stream, @object);
            }

            base.Serialize(stream, serializer);
        }
コード例 #13
0
 public virtual void Deserialize(Stream stream, GameStateSerializer serializer)
 {
     Level                 = stream.ReadInt();
     CurrentPrice          = stream.ReadInt();
     AwardedLevelsThisTick = stream.ReadInt();
 }
コード例 #14
0
ファイル: BasicClicker.cs プロジェクト: FLAMESpl/pingwiny
 public override void Serialize(Stream stream, GameStateSerializer serializer)
 {
     stream.WriteStruct(activationCounter);
     base.Serialize(stream, serializer);
 }
コード例 #15
0
ファイル: SurfingPenguin.cs プロジェクト: FLAMESpl/pingwiny
 public override void Serialize(Stream stream, GameStateSerializer serializer)
 {
     stream.WriteStruct(ascending);
     base.Serialize(stream, serializer);
 }
コード例 #16
0
ファイル: BasicClicker.cs プロジェクト: FLAMESpl/pingwiny
 public override void Deserialize(Stream stream, GameStateSerializer serializer)
 {
     activationCounter = stream.ReadStruct <Counter>();
     base.Deserialize(stream, serializer);
 }
コード例 #17
0
ファイル: GameObject.cs プロジェクト: FLAMESpl/pingwiny
 public virtual void Serialize(Stream stream, GameStateSerializer serializer)
 {
     stream.WriteBool(IsAlive);
 }
コード例 #18
0
ファイル: Stage.cs プロジェクト: FLAMESpl/pingwiny
 public void Serialize(Stream stream, GameStateSerializer serializer)
 {
     serializer.WriteNext(stream, Objects);
     serializer.WriteNext(stream, PenguinGenerator);
     serializer.WriteNext(stream, PenguinsController);
 }
コード例 #19
0
ファイル: Client.cs プロジェクト: GraionDilach/freeserf.net
 public void SendGameStateUpdate(byte messageIndex, Game game, bool fullState)
 {
     byte[] data = GameStateSerializer.SerializeFrom(game, fullState);
     new SyncData(messageIndex, game.GameTime, data, fullState).Send(this);
 }
コード例 #20
0
 public void Deserialize(Stream stream, GameStateSerializer serializer)
 {
     bonusClickActive = stream.ReadBool();
     bonusClicks      = stream.ReadInt();
     scoreBonus       = stream.ReadStruct <decimal>();
 }
コード例 #21
0
ファイル: GameObject.cs プロジェクト: FLAMESpl/pingwiny
 public virtual void Deserialize(Stream stream, GameStateSerializer serializer)
 {
     IsAlive = stream.ReadBool();
 }
コード例 #22
0
 public virtual void Serialize(Stream stream, GameStateSerializer serializer)
 {
     stream.WriteInt(Level);
     stream.WriteInt(CurrentPrice);
     stream.WriteInt(AwardedLevelsThisTick);
 }
コード例 #23
0
ファイル: Stage.cs プロジェクト: FLAMESpl/pingwiny
 public void Deserialize(Stream stream, GameStateSerializer serializer)
 {
     Objects            = (ObjectsCollection)serializer.ReadNext(stream);
     PenguinGenerator   = (PenguinGenerator)serializer.ReadNext(stream);
     PenguinsController = (PenguinsController)serializer.ReadNext(stream);
 }
コード例 #24
0
 public void Serialize(Stream stream, GameStateSerializer serializer)
 {
     stream.WriteBool(bonusClickActive);
     stream.WriteInt(bonusClicks);
     stream.WriteStruct(scoreBonus);
 }
コード例 #25
0
 public void Serialize(Stream stream, GameStateSerializer serializer)
 {
     stream.WriteInt(Total);
     stream.WriteInt(InCurrentFrame);
     scoreGains.Serialize(stream, static (s, i) => s.WriteInt(i));