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); } }
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); }
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)); } } }
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()); } } }
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"); }
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"); }
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); }
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); }
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"); }
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); }
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; }); }
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")); }
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"); }
public override void Load(UXMLElement element) { base.Load(element); type = element.GetEnum <QuestType>("type"); ownerId = element.GetString("owner"); startTextId = element.GetString("start_text"); hintTextId = element.GetString("hint_text"); endTextId = element.GetString("end_text"); journalId = element.GetString("journal"); startConditions = new List <Condition>(); UXMLElement scParentElement = element.Element("start_conditions"); if (scParentElement != null) { scParentElement.Elements("condition").ForEach(e => { startConditions.Add(Condition.FromXml(e)); }); } completeConditions = new List <Condition>(); UXMLElement ccParentElement = element.Element("complete_conditions"); if (ccParentElement != null) { ccParentElement.Elements("condition").ForEach(e => { completeConditions.Add(Condition.FromXml(e)); }); } rewards = new List <DropItem>(); UXMLElement rewardsParentElement = element.Element("rewards"); rewardsParentElement.Elements("reward").ForEach(e => { rewards.Add(new DropItem(e)); }); }