void setskilltip(GameObject tip, summonskill skill) { SXML skillXml = XMLMgr.instance.GetSXML("skill.skill", "id==" + skill.skillid); tip.transform.FindChild("name").GetComponent <Text>().text = skillXml.getString("name") + skill.skilllv + ContMgr.getCont("ji"); SXML curlvl = skillXml.GetNode("skill_att", "skill_lv==" + skill.skilllv); tip.transform.FindChild("des").GetComponent <Text>().text = curlvl.getString("descr2"); }
a3_BagItemData SetDataFromVariant(a3_BagItemData itemData, Variant item) { itemData.summondata.id = item["id"]; itemData.summondata.tpid = item["tpid"]; itemData.summondata.level = item["level"]; itemData.summondata.currentexp = item["exp"]; if (item.ContainsKey("hp")) { itemData.summondata.currenthp = item["hp"]; } itemData.summondata.lifespan = item["life"]; itemData.summondata.power = item["combpt"]; //itemData.summondata.grade = item["quality"]; //itemData.summondata.isSpecial = item["type"]==2; //itemData.summondata.naturaltype = item["speciality"]; //itemData.summondata.blood = item["bloodline"]; itemData.summondata.luck = item["luckly"]; //itemData.summondata.talent_type = item["talent_type"]; //itemData.summondata.skillNum = item["skill_num"]; itemData.summondata.attNatural = item["att"]; itemData.summondata.defNatural = item["def"]; itemData.summondata.agiNatural = item["agi"]; itemData.summondata.conNatural = item["con"]; itemData.summondata.star = item["talent"]; if (item.ContainsKey("status")) { itemData.summondata.status = item["status"]; } if (itemData.summondata.status > 0) { nowShowAttackID = (uint)itemData.summondata.id; } Variant atts = item["battleAttrs"]; itemData.summondata.maxhp = atts["max_hp"]; itemData.summondata.max_attack = atts["max_attack"]; itemData.summondata.min_attack = atts["min_attack"]; itemData.summondata.physics_def = atts["physics_def"]; itemData.summondata.magic_def = atts["magic_def"]; itemData.summondata.physics_dmg_red = atts["physics_dmg_red"]; itemData.summondata.magic_dmg_red = atts["magic_dmg_red"]; itemData.summondata.double_damage_rate = atts["fatal_att"]; itemData.summondata.reflect_crit_rate = atts["fatal_dodge"]; itemData.summondata.fatal_damage = atts["fatal_damage"]; itemData.summondata.hit = atts["hit"]; itemData.summondata.dodge = atts["dodge"]; if (item.ContainsKey("skills")) { Variant sks = item["skills"]; if (itemData.summondata.skills == null) { itemData.summondata.skills = new Dictionary <int, summonskill>(); } for (int i = 0; i < sks.Count; i++) { //itemData.summondata.skills[sks[i]["index"]] = sks[i]["skill_id"]; summonskill skill = new summonskill(); skill.skillid = sks[i]["skill_id"]; skill.skilllv = sks[i]["skill_lvl"]; itemData.summondata.skills[sks[i]["skill_id"]] = skill; } } if (item.ContainsKey("link_ply")) { Variant link = item["link_ply"]; if (itemData.summondata.linkdata == null) { itemData.summondata.linkdata = new Dictionary <int, link_data>(); } float Combpt = 0; for (int i = 0; i < link.Count; i++) { link_data li = new link_data(); li.type = link[i]["att_type"]; li.per = link[i]["att_per"]; li.lock_state = link[i]["lock_state"]; itemData.summondata.linkdata[i] = li; SXML x = XMLMgr.instance.GetSXML("calculate.combpt", "att_id==" + li.type); if (x != null) { float attvalue = (int)Math.Ceiling((A3_SummonModel.getInstance().getAttValue(itemData.summondata, li.type) * ((float)li.per / 100.00f))); Combpt += (attvalue * x.getFloat("sm_per")) / 10000; } } itemData.summondata.linkCombpt = (int)Combpt; } if (item.ContainsKey("att_soul")) { Variant soul = item["att_soul"]; if (itemData.summondata.shouhun == null) { itemData.summondata.shouhun = new Dictionary <int, summonshouhun>(); } for (int i = 0; i < soul.Count; i++) { summonshouhun sh = new summonshouhun(); sh.soul_type = soul[i]["soul_type"]; sh.lvl = soul[i]["soul_lvl"]; sh.exp = soul[i]["soul_exp"]; itemData.summondata.shouhun[soul[i]["soul_type"]] = sh; } } if (item.ContainsKey("reset_talent") && item["reset_talent"].Count > 0) { Variant reset_talent = item["reset_talent"]; itemData.summondata.haveReset = true; itemData.summondata.resetluck = reset_talent["luckly"]; itemData.summondata.resetatt = reset_talent["att"]; itemData.summondata.resetdef = reset_talent["def"]; itemData.summondata.resetagi = reset_talent["agi"]; itemData.summondata.resetcon = reset_talent["con"]; } else { itemData.summondata.haveReset = false; } return(itemData); }
void GetInfo(GameEvent e) { Variant data = e.data; tpid = data["summon"]["tpid"]; // SXML xml = XMLMgr.instance.GetSXML("item.item", "id==" + tpid); this.transform.FindChild("fighting/value").GetComponent <Text>().text = data["summon"]["combpt"]; //this.transform.FindChild("playerInfo/panel_attr/name").GetComponent<Text>().text = xml.getString("item_name"); this.transform.FindChild("playerInfo/panel_attr/lv").GetComponent <Text>().text = "LV " + data["summon"]["level"]; //this.transform.FindChild("playerInfo/panel_attr/right/up/longlife/Text").GetComponent<Text>().text = data["summon"]["life"]; //this.transform.FindChild("playerInfo/panel_attr/right/up/luck/Text").GetComponent<Text>().text = data["summon"]["luckly"]; //this.transform.FindChild("playerInfo/panel_attr/right/up/att/Text").GetComponent<Text>().text = data["summon"]["att"]; //this.transform.FindChild("playerInfo/panel_attr/right/up/def/Text").GetComponent<Text>().text = data["summon"]["def"]; //this.transform.FindChild("playerInfo/panel_attr/right/up/agi/Text").GetComponent<Text>().text = data["summon"]["agi"]; //this.transform.FindChild("playerInfo/panel_attr/right/up/con/Text").GetComponent<Text>().text = data["summon"]["con"]; //this.transform.FindChild("playerInfo/panel_attr/right/up/life/Text").GetComponent<Text>().text = data["summon"]["battleAttrs"]["max_hp"]; //this.transform.FindChild("playerInfo/panel_attr/right/up/phyatk/Text").GetComponent<Text>().text = data["summon"]["battleAttrs"]["min_attack"]+"-" + data["summon"]["battleAttrs"]["max_attack"]; //this.transform.FindChild("playerInfo/panel_attr/right/up/phydef/Text").GetComponent<Text>().text = data["summon"]["battleAttrs"]["physics_def"]; //this.transform.FindChild("playerInfo/panel_attr/right/up/manadef/Text").GetComponent<Text>().text = data["summon"]["battleAttrs"]["magic_def"]; //this.transform.FindChild("playerInfo/panel_attr/right/up/hit/Text").GetComponent<Text>().text = data["summon"]["battleAttrs"]["physics_dmg_red"]; //this.transform.FindChild("playerInfo/panel_attr/right/up/manaatk/Text").GetComponent<Text>().text = data["summon"]["battleAttrs"]["magic_dmg_red"]; //this.transform.FindChild("playerInfo/panel_attr/right/up/crit/Text").GetComponent<Text>().text = data["summon"]["battleAttrs"]["fatal_att"]; //this.transform.FindChild("playerInfo/panel_attr/right/up/dodge/Text").GetComponent<Text>().text = data["summon"]["battleAttrs"]["dodge"]; //this.transform.FindChild("playerInfo/panel_attr/right/up/fatal_damage/Text").GetComponent<Text>().text = data["summon"]["battleAttrs"]["fatal_damage"]; //this.transform.FindChild("playerInfo/panel_attr/right/up/hitit/Text").GetComponent<Text>().text = data["summon"]["battleAttrs"]["hit"]; //this.transform.FindChild("playerInfo/panel_attr/right/up/reflect_crit_rate/Text").GetComponent<Text>().text = data["summon"]["battleAttrs"]["fatal_dodge"]; SXML sumXml = XMLMgr.instance.GetSXML("callbeast"); SXML Sumxml = sumXml.GetNode("callbeast", "id==" + tpid); int star = data["summon"]["talent"]; SXML attxml = Sumxml.GetNode("star", "star_sum==" + star); int tpid_m = attxml.getInt("info_itm"); SXML xml = XMLMgr.instance.GetSXML("item.item", "id==" + tpid_m); this.transform.FindChild("playerInfo/panel_attr/name").GetComponent <Text>().text = xml.getString("item_name"); this.transform.FindChild("playerInfo/panel_attr/info/gongji/value").GetComponent <Text>().text = data["summon"]["att"] + "/" + attxml.GetNode("att").getInt("reset_max"); this.transform.FindChild("playerInfo/panel_attr/info/fangyu/value").GetComponent <Text>().text = data["summon"]["def"] + "/" + attxml.GetNode("def").getInt("reset_max"); this.transform.FindChild("playerInfo/panel_attr/info/minjie/value").GetComponent <Text>().text = data["summon"]["agi"] + "/" + attxml.GetNode("agi").getInt("reset_max"); this.transform.FindChild("playerInfo/panel_attr/info/tili/value").GetComponent <Text>().text = data["summon"]["con"] + "/" + attxml.GetNode("con").getInt("reset_max"); this.transform.FindChild("playerInfo/panel_attr/info/xingyun/value").GetComponent <Text>().text = data["summon"]["luckly"] + "/" + 100; this.transform.FindChild("playerInfo/panel_attr/info/gongji/slider").GetComponent <Image>().fillAmount = (float)data["summon"]["att"] / (float)attxml.GetNode("att").getInt("reset_max"); this.transform.FindChild("playerInfo/panel_attr/info/fangyu/slider").GetComponent <Image>().fillAmount = (float)data["summon"]["def"] / (float)attxml.GetNode("def").getInt("reset_max"); this.transform.FindChild("playerInfo/panel_attr/info/minjie/slider").GetComponent <Image>().fillAmount = (float)data["summon"]["agi"] / (float)attxml.GetNode("agi").getInt("reset_max"); this.transform.FindChild("playerInfo/panel_attr/info/tili/slider").GetComponent <Image>().fillAmount = (float)data["summon"]["con"] / (float)attxml.GetNode("con").getInt("reset_max"); this.transform.FindChild("playerInfo/panel_attr/info/xingyun/slider").GetComponent <Image>().fillAmount = (float)data["summon"]["luckly"] / (float)100; this.transform.FindChild("playerInfo/panel_attr/att/life/Text").GetComponent <Text>().text = data["summon"]["battleAttrs"]["max_hp"]; this.transform.FindChild("playerInfo/panel_attr/att/phyatk/Text").GetComponent <Text>().text = data["summon"]["battleAttrs"]["min_attack"] + "-" + data["summon"]["battleAttrs"]["max_attack"]; this.transform.FindChild("playerInfo/panel_attr/att/phydef/Text").GetComponent <Text>().text = data["summon"]["battleAttrs"]["physics_def"]; this.transform.FindChild("playerInfo/panel_attr/att/manadef/Text").GetComponent <Text>().text = data["summon"]["battleAttrs"]["magic_def"]; this.transform.FindChild("playerInfo/panel_attr/att/hit/Text").GetComponent <Text>().text = (float)data["summon"]["battleAttrs"]["physics_dmg_red"] / 10 + "%"; this.transform.FindChild("playerInfo/panel_attr/att/manaatk/Text").GetComponent <Text>().text = (float)data["summon"]["battleAttrs"]["magic_dmg_red"] / 10 + "%"; this.transform.FindChild("playerInfo/panel_attr/att/crit/Text").GetComponent <Text>().text = data["summon"]["battleAttrs"]["fatal_att"]; this.transform.FindChild("playerInfo/panel_attr/att/dodge/Text").GetComponent <Text>().text = data["summon"]["battleAttrs"]["dodge"]; this.transform.FindChild("playerInfo/panel_attr/att/fatal_damage/Text").GetComponent <Text>().text = (float)data["summon"]["battleAttrs"]["fatal_damage"] / 10 + "%"; this.transform.FindChild("playerInfo/panel_attr/att/hitit/Text").GetComponent <Text>().text = data["summon"]["battleAttrs"]["hit"]; this.transform.FindChild("playerInfo/panel_attr/att/reflect_crit_rate/Text").GetComponent <Text>().text = data["summon"]["battleAttrs"]["fatal_dodge"]; createAvatar(); setStar(data["summon"]["talent"]); //Dictionary<int, int> skills = new Dictionary<int, int>(); //Variant sks = data["summon"]["skills"]; //for (int i = 0; i < sks.Count; i++) //{ // skills[sks[i]["index"]] = sks[i]["skill_id"]; //} //setSkills(data["summon"]["skill_num"], skills); if (data["summon"].ContainsKey("skills")) { Variant sks = data["summon"]["skills"]; Dictionary <int, summonskill> skillDic = new Dictionary <int, summonskill>(); for (int i = 0; i < sks.Count; i++) { summonskill skill = new summonskill(); skill.skillid = sks[i]["skill_id"]; skill.skilllv = sks[i]["skill_lvl"]; skillDic[sks[i]["skill_id"]] = skill; } var SkillCon = this.transform.FindChild("skills"); for (int i = 0; i < SkillCon.childCount; i++) { SkillCon.GetChild(i).FindChild("icon/icon").gameObject.SetActive(false); SkillCon.GetChild(i).FindChild("lock").gameObject.SetActive(true); } int idner = 1; foreach (summonskill skill in skillDic.Values) { Transform skillCell = SkillCon.FindChild(idner.ToString()); skillCell.FindChild("icon/icon").gameObject.SetActive(true); skillCell.FindChild("lock").gameObject.SetActive(false); SXML xx = XMLMgr.instance.GetSXML("skill.skill", "id==" + skill.skillid); skillCell.FindChild("icon/icon").GetComponent <Image>().sprite = GAMEAPI.ABUI_LoadSprite("icon_smskill_" + xx.getInt("icon")); idner++; } } }