Exemplo n.º 1
0
        public virtual void SetData(string saveString, params object[] otherData)
        {
            SaveObject ds = JsonUtility.FromJson <SaveObject>(saveString);

            ID = ds.ID;

            FollowerData original;

            if (otherData[0] is PersistentSetFollowerData)
            {
                PersistentSetFollowerData allFollowers = (PersistentSetFollowerData)otherData[0];
                original = allFollowers.First(it => it.ID == ID);
            }
            else
            {
                original = otherData[0] as FollowerData;
                if (SizeOfSprite == original.SizeOfSprite)
                {
                    return;                                            // This object may have been create based on the original. In which case, we don't need to do any copying
                }
            }

            ID                        = original.ID;
            SizeOfSprite              = original.SizeOfSprite;
            SideIdleAnimation         = original.SideIdleAnimation;
            RandomAnimation           = original.RandomAnimation;
            MinTimeBetweenRandomAnims = original.MinTimeBetweenRandomAnims;
            MaxTimeBetweenRandomAnims = original.MaxTimeBetweenRandomAnims;
        }
Exemplo n.º 2
0
        public override void SetData(string saveString, params object[] otherData)
        {
            SaveObject ds = JsonUtility.FromJson <SaveObject>(saveString);

            ID = ds.ID;

            if (AllItems != null && ds.Entries != null)
            {
                Items.Clear();

                foreach (string data in ds.Entries)
                {
                    Items.Add(new SellableItem(data, AllItems));
                }
            }

            FollowerData original;

            if (otherData[0] is PersistentSetFollowerData)
            {
                PersistentSetFollowerData allFollowers = (PersistentSetFollowerData)otherData[0];
                original = allFollowers.First(it => it.ID == ID);
            }
            else
            {
                original = otherData[0] as FollowerData;
                if (SizeOfSprite == original.SizeOfSprite && SideIdleAnimation == original.SideIdleAnimation)
                {
                    return; // This object may have been create based on the original. In which case, we don't need to do any copying
                }
            }

            ID                        = original.ID;
            SizeOfSprite              = original.SizeOfSprite;
            SideIdleAnimation         = original.SideIdleAnimation;
            RandomAnimation           = original.RandomAnimation;
            MinTimeBetweenRandomAnims = original.MinTimeBetweenRandomAnims;
            MaxTimeBetweenRandomAnims = original.MaxTimeBetweenRandomAnims;
            AllItems                  = ((ShopFollower)original).AllItems;
            if (ds.Entries == null)
            {
                Items = ((ShopFollower)original).Items;
            }

            AfterCreated();
        }
Exemplo n.º 3
0
        public override void SetData(string saveString, params object[] otherData)
        {
            SaveObject ds = JsonUtility.FromJson <SaveObject>(saveString);

            ID    = ds.ID;
            Level = ds.Level;

            EnemyData original;

            if (otherData[0] is PersistentSetFollowerData)
            {
                PersistentSetFollowerData allFollowers = (PersistentSetFollowerData)otherData[0];
                original = allFollowers.First(it => it.ID == ID) as EnemyData;
            }
            else
            {
                original = otherData[0] as EnemyData;
                if (Idle == original.Idle)
                {
                    return;     // This object may have been create based on the original. In which case, we don't need to do any copying
                }
            }

            // Copy Original Values
            Idle                = original.Idle;
            Flinch              = original.Flinch;
            BeforeAttack        = original.BeforeAttack;
            AttackExecute       = original.AttackExecute;
            AfterAttack         = original.AfterAttack;
            Death               = original.Death;
            Dead                = original.Dead;
            Walking             = original.Walking;
            ElementalWeaknesses = original.ElementalWeaknesses;
            ElementalDamageType = original.ElementalDamageType;

            base.SetData(saveString, original);
        }