Exemplo n.º 1
0
 public void Load(UXMLElement element)
 {
     items.Clear();
     foreach (UXMLElement itemElement in element.Elements("item"))
     {
         InventoryItem item = new InventoryItem();
         item.Load(itemElement);
         if (item.count > 0 && item.data != null)
         {
             /*
              * if(items.ContainsKey(item.data.type)) {
              *  items[item.data.type][item.id] = item;
              * } else {
              *  items.Add(item.data.type, new Dictionary<string, InventoryItem> {
              *      [item.id] = item
              *  });
              * }*/
             AddItemImpl(item);
         }
         else
         {
             // Debug.Log($"Inventory: ITEM DATA COUNT OR DATA NULL {item.count} - {item.data}".Colored(ColorType.red));
         }
     }
 }
Exemplo n.º 2
0
        public void Load(UXMLElement element)
        {
            string            curid = element.GetString("id", string.Empty);
            InventoryItemType type  = element.GetEnum <InventoryItemType>("type");

            count = element.GetInt("count", 0);

            //Debug.Log($"loaded item {curid}-{type}-{count}".Colored(ColorType.green));

            if (string.IsNullOrEmpty(curid))
            {
                InitSave();
            }
            else
            {
                data = resourceService.GetInventoryItemData(type, curid);
                if (data == null)
                {
                    //Debug.Log($"item data is null {curid}-{type}".Colored(ColorType.fuchsia));
                    InitSave();
                }
                else
                {
                    //Debug.Log($"item data not null {curid}-{type}".Colored(ColorType.grey));
                }
            }
        }
Exemplo n.º 3
0
 public override void Load(UXMLElement element)
 {
     base.Load(element);
     price        = new PriceData(element);
     prob         = element.GetFloat("prob");
     invitationId = element.GetString("invitation");
 }
Exemplo n.º 4
0
 public void Load(UXMLElement element)
 {
     Id         = element.GetString("id");
     Count      = element.GetInt("count");
     Tier       = element.GetInt("tier");
     RewardTier = element.GetInt("reward_tier");
 }
Exemplo n.º 5
0
        public void Load(UXMLElement element)
        {
            id         = element.GetString("id");
            nameId     = element.GetString("name");
            iosStoreId = element.GetString("ios_store_id");
            price      = new PriceData(element);
            bonus      = element.GetInt("bonus");
            realPrice  = element.GetString("real_price");
            isBest     = element.GetBool("is_best");
            isPopular  = element.GetBool("is_popular");
            isBank     = element.GetBool("is_bank");

            discountData = new DiscountData();
            var discountElement = element.Element("discount_info");

            if (discountElement != null)
            {
                discountData.Load(discountElement);
            }

            rewards = new List <DropItem>();
            var rewardsElement = element.Element("rewards");

            if (rewardsElement != null)
            {
                foreach (UXMLElement rewardElement in rewardsElement.Elements("reward"))
                {
                    DropItem dropItem = new DropItem(rewardElement);
                    rewards.Add(dropItem);
                }
            }
        }
Exemplo n.º 6
0
 public override void Load(UXMLElement element)
 {
     base.Load(element);
     startTextId = element.GetString("start_text");
     endTextId   = element.GetString("end_text");
     hintTextId  = element.GetString("hint_text");
     type        = element.GetEnum <JournalEntryType>("type");
 }
Exemplo n.º 7
0
 public void Load(UXMLElement element)
 {
     roomLevel         = element.GetEnum <RoomLevel>("level", RoomLevel.Beginner);
     roomProgress      = element.GetInt("progress", 0);
     searchObjectCount = element.GetInt("search_object_count", 5);
     searchTime        = element.GetInt("search_time");
     health            = element.GetInt("health");
 }
Exemplo n.º 8
0
 public void Load(UXMLElement element)
 {
     id = element.GetString("id");
     CacheData();
     state     = element.GetEnum <QuestState>("state");
     startTime = element.GetInt("start_time", 0);
     endTime   = element.GetInt("end_time", 0);
 }
Exemplo n.º 9
0
        public override void Load(UXMLElement element)
        {
            base.Load(element);
            price = new PriceData(element);

            Value        = element.GetInt("value");
            SpecialValue = element.GetInt("special");
        }
Exemplo n.º 10
0
 public void Load(UXMLElement element)
 {
     day     = element.GetInt("day");
     rewards = new List <DropItem>();
     element.Element("rewards").Elements("reward").ForEach(rewardElement => {
         DropItem dropItem = new DropItem(rewardElement);
         rewards.Add(dropItem);
     });
 }
Exemplo n.º 11
0
 public void Load(UXMLElement element)
 {
     id       = element.GetString("id");
     itemId   = element.GetString("item_id");
     itemType = element.GetEnum <InventoryItemType>("item_type");
     count    = element.GetInt("count");
     price    = new PriceData();
     price.Load(element);
 }
Exemplo n.º 12
0
 public void Load(UXMLElement element)
 {
     if (element != null)
     {
         id            = element.GetString("id");
         oldPrice      = element.GetString("old_price");
         oldIosStoreId = element.GetString("old_ios_store_id");
         iconPath      = element.GetString("icon");
     }
 }
Exemplo n.º 13
0
 public void Load(UXMLElement element)
 {
     rooms.Clear();
     foreach (UXMLElement roomElement in element.Elements("room"))
     {
         RoomInfo roomInfo = new RoomInfo();
         roomInfo.Load(roomElement);
         rooms[roomInfo.id] = roomInfo;
     }
 }
Exemplo n.º 14
0
 public override void Load(UXMLElement element)
 {
     base.Load(element);
     rankDescriptionId = element.GetString("rank_description");
     tiers             = new List <AchievmentTierData>();
     element.Elements("rank").ForEach(rankElement => {
         AchievmentTierData tierData = new AchievmentTierData();
         tierData.Load(rankElement);
         tiers.Add(tierData);
     });
 }
Exemplo n.º 15
0
        public void Load(UXMLElement element)
        {
            switchTimer = element.GetFloat("timer");
            int saveTime      = element.GetInt("save_time");
            int nowTime       = Utility.unixTime;
            int sleepInterval = nowTime - saveTime;

            switchTimer -= sleepInterval;
            CorrentSwitcherTimerToRange();
            isLoaded = true;
        }
Exemplo n.º 16
0
 public void Load(UXMLElement element)
 {
     if (element != null)
     {
         id       = element.GetString("id");
         name     = element.GetString("name");
         avatarId = element.GetString("avatar");
         level    = element.GetInt("level");
         isValid  = element.GetBool("is_valid");
     }
 }
Exemplo n.º 17
0
 public override void Load(UXMLElement element)
 {
     base.Load(element);
     price = new PriceData(element);
     prob  = element.GetFloat("prob");
     rooms.Clear();
     foreach (string roomId in element.GetString("drop_rooms").Split(new char[] { ',' }, System.StringSplitOptions.RemoveEmptyEntries))
     {
         rooms.Add(roomId);
     }
     bonusId = element.GetString("bonus_id");
 }
Exemplo n.º 18
0
        public DropItem(UXMLElement element)
        {
            this.type  = element.GetEnum <DropType>("type");
            this.count = element.GetInt("count");

            if (this.type == DropType.item)
            {
                string            itemId   = element.GetString("item_id");
                InventoryItemType itemType = element.GetEnum <InventoryItemType>("item_type");
                this.itemData = resourceService.GetInventoryItemData(itemType, itemId);
            }
        }
Exemplo n.º 19
0
 public override void Load(UXMLElement element)
 {
     base.Load(element);
     collectionId = element.GetString("collection");
     rooms.Clear();
     foreach (string roomId in element.GetString("room").Split(new char[] { ',' }, StringSplitOptions.RemoveEmptyEntries))
     {
         rooms.Add(roomId);
     }
     roomLevel = element.GetEnum <RoomLevel>("rank");
     prob      = element.GetFloat("prob");
 }
Exemplo n.º 20
0
 public void Load(UXMLElement element)
 {
     if (element == null)
     {
         return;
     }
     id               = element.GetString("id");
     isUnlocked       = element.GetBool("is_unlocked");
     roomLevel        = element.GetEnum("level", RoomLevel.Beginner);
     roomProgress     = element.GetInt("progress", 0);
     searchMode       = element.GetEnum("search_mode", SearchMode.Day);
     recordSearchTime = element.GetInt("record_time", int.MaxValue);
 }
Exemplo n.º 21
0
 public void Load(UXMLElement element)
 {
     if (element != null)
     {
         lastRewardTime = element.GetInt("last_reward_time");
         lastDay        = element.GetInt("last_day");
         isLoaded       = true;
     }
     else
     {
         InitSave();
     }
 }
Exemplo n.º 22
0
        public bool Load(string saveStr)
        {
            if (string.IsNullOrEmpty(saveStr))
            {
                InitSave();
            }
            else
            {
                UXMLDocument document = new UXMLDocument();
                document.Parse(saveStr);
                UXMLElement gameModeElement = document.Element(saveId);

                roomMode = gameModeElement?.GetEnum <RoomMode>("room_mode") ?? RoomMode.normal;

                UXMLElement roomsElement = gameModeElement.Element("rooms");
                if (roomsElement != null)
                {
                    roomManager.Load(roomsElement);
                }
                else
                {
                    roomManager.InitSave();
                }

                UXMLElement dailyRewardElement = gameModeElement.Element("daily_reward");
                if (dailyRewardElement != null)
                {
                    dailyRewardManager.Load(dailyRewardElement);
                }
                else
                {
                    dailyRewardManager.InitSave();
                }

                searchCounter    = gameModeElement.GetInt("search_counter", 0);
                lastSearchRoomId = gameModeElement.GetString("last_search_room", string.Empty);

                UXMLElement roomModeSwitcherElement = gameModeElement.Element("room_mode_switcher");
                if (roomModeSwitcherElement != null)
                {
                    RoomModeSwitcher.Load(roomModeSwitcherElement);
                }
                else
                {
                    RoomModeSwitcher.InitSave();
                }

                isLoaded = true;
            }
            return(true);
        }
Exemplo n.º 23
0
 public void Load(UXMLElement element)
 {
     buffs.Clear();
     foreach (UXMLElement buffElement in element.Elements("buff"))
     {
         BuffInfo buff = new BuffInfo();
         buff.Load(buffElement);
         if (buff.IsValid)
         {
             buffs.Add(buff.Id, buff);
         }
     }
     isLoaded = true;
 }
Exemplo n.º 24
0
        public override void Load(UXMLElement element)
        {
            base.Load(element);
            price       = new PriceData(element);
            ingredients = new Dictionary <string, int>();
            value       = element.GetFloat("value");
            interval    = element.GetInt("time");
            bonusType   = element.GetEnum <BonusType>("type");

            element.Element("formula").Elements("ingredient").ForEach(ingredientElement => {
                string ingredientId       = ingredientElement.GetString("id");
                int count                 = ingredientElement.GetInt("count");
                ingredients[ingredientId] = count;
            });
        }
Exemplo n.º 25
0
        public virtual void Load(UXMLElement element)
        {
            id     = element.GetString("id");
            nameId = element.GetString("name");
            if (element.HasAttribute("description"))
            {
                descriptionId = element.GetString("description");
            }
            else
            {
                descriptionId = string.Empty;
            }

            iconPath = element.GetString("icon");
        }
Exemplo n.º 26
0
        public void Load(UXMLElement element)
        {
            collectables.Clear();
            foreach (UXMLElement itemElement in element.Elements("item"))
            {
                string            id   = itemElement.GetString("id");
                InventoryItemType type = itemElement.GetEnum <InventoryItemType>("type");

                InventoryItemData data = resourceService.GetInventoryItemData(type, id);

                if (data != null)
                {
                    collectables[data.id] = data;
                }
            }
        }
Exemplo n.º 27
0
        public static Condition FromXml(UXMLElement element)
        {
            ConditionType type = element.GetEnum <ConditionType>("type");

            switch (type)
            {
            case ConditionType.has_collectable: {
                return(new HasCollectableCondition(element.GetString("id")));
            }

            case ConditionType.has_collection: {
                return(new HasCollectionCondition(element.GetString("id")));
            }

            case ConditionType.has_story_collection: {
                return(new HasStoryCollectionCondition(element.GetString("id")));
            }

            case ConditionType.last_search_room: {
                return(new LastSearchRoomCondition(element.GetString("id")));
            }

            case ConditionType.level_ge: {
                return(new LevelGeCondition(element.GetInt("value")));
            }

            case ConditionType.quest_completed: {
                return(new QuestCompletedCondition(element.GetString("id")));
            }

            case ConditionType.random: {
                return(new RandomCondition(element.GetFloat("value")));
            }

            case ConditionType.room_mode: {
                return(new RoomModeCondition(element.GetEnum <RoomMode>("value")));
            }

            case ConditionType.search_counter_ge: {
                return(new SearchCounterGeCondition(element.GetInt("value")));
            }

            default: {
                return(new NoneCondition());
            }
            }
        }
Exemplo n.º 28
0
 public override void Load(UXMLElement element)
 {
     base.Load(element);
     level = element.GetInt("level", 1);
     price.Load(element);
     //energy = element.GetInt("energy", 0);
     roomType      = element.GetEnum <RoomType>("type", RoomType.hallway);
     scaryIconPath = element.GetString("sicon");
     silverReward  = element.GetInt("reward_silver", 0);
     expReward     = element.GetInt("reward_exp", 0);
     scaryScene    = element.GetString("sscene");
     scene         = element.GetString("scene");
     isSpecial     = element.GetBool("special", false);
     floor         = element.GetInt("floor", 0);
     linkedRooms.Clear();
     linkedRooms.AddRange(element.GetStringArray("linked"));
 }
Exemplo n.º 29
0
 public override void Load(UXMLElement element)
 {
     base.Load(element);
     type = element.GetEnum <NpcType>("type");
     prob = element.GetFloat("prob");
     rewards.Clear();
     element.Element("rewards").Elements("reward").ForEach(rewardEleent => {
         rewards.Add(new DropItem(rewardEleent));
     });
     if (element.HasAttribute("buff"))
     {
         buffId = element.GetString("buff");
     }
     if (element.HasAttribute("weapon"))
     {
         weaponId = element.GetString("weapon");
     }
     largeIconPath = element.GetString("large_icon");
 }
Exemplo n.º 30
0
 public void Load(UXMLElement element)
 {
     if (element == null)
     {
         InitSave();
     }
     else
     {
         roomId = element.GetString("room_id");
         string npcId = element.GetString("npc_id");
         if (npcId.IsValid())
         {
             data = resourceService.GetNpc(npcId);
             Debug.Log($"Loaded npc {roomId}: {data.id}");
         }
         else
         {
             InitSave();
         }
     }
 }