Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Text;
- using UnityEngine;
- using JOWEngine;
- using Utils;
- using msg;
- namespace JOWGame
- {
- [UILogicHandler(UIDef.UI_GENERAL_PARTNER)]
- class GeneralPartnerUI : UILogicBase
- {
- GameButton btnClose, btnRule;
- GameTile tabTile;
- List<GameIndicateCheckBox> tabButtons = new List<GameIndicateCheckBox>();
- List<GameLabel> lbTabMarks = new List<GameLabel>();
- GameScrollView scrollView;
- GameUIComponent compFront, compMiddle, compBack;
- GameScrollView scrollViewProperty;
- GameTile frontTile, middleTile, backTile;
- GameLabel lbhasNoFrontProperty, lbhasNoMiddleProperty, lbhasNoBackProperty;
- GameTile generalPartnerTile;
- List<GeneralPartnerItem> generalPartnerItemList = new List<GeneralPartnerItem>();
- List<DGeneralPartner> generalPartnerInfoList = new List<DGeneralPartner>();
- List<DGeneralPartner> curIndexGeneralPartnerInfoList = new List<DGeneralPartner>();
- Map<string, int> frontPropertyMap = new Map<string, int>();
- Map<string, int> middlePropertyMap = new Map<string, int>();
- Map<string, int> backPropertyMap = new Map<string, int>();
- string[] tabNameArray = LocaleMod.GetStrArray("GeneralPartnerUI_tabNameArray");
- public static string[] teamNameArray = LocaleMod.GetStrArray("GeneralPartnerUI_teamNameArray");
- public static List<int> preSignStateList = new List<int>();
- int MAX_TAB_COUNT = 4;
- protected override void OnInit()
- {
- base.OnInit();
- btnClose = Make<GameButton>("back");
- btnClose.AddClickCallBack(onClickClose);
- btnRule = Make<GameButton>("bangzhu");
- btnRule.AddClickCallBack(onClickRule);
- tabTile = Make<GameTile>("biaoqianye:UIGrid");
- tabTile.EnsureSize<GameIndicateCheckBox>(MAX_TAB_COUNT);
- if (tabNameArray.Length > 0)
- MAX_TAB_COUNT = tabNameArray.Length;
- for (int i = 0; i < MAX_TAB_COUNT; i++)
- {
- GameIndicateCheckBox btn = tabTile.GetChild<GameIndicateCheckBox>(i);
- btn.Parameter = i + 1;
- btn.AddClickCallBack(onTabBtnClick);
- tabButtons.Add(btn);
- GameLabel lbTabmark = Make<GameLabel>("Checkmark:Label", btn.gameObject);
- lbTabMarks.Add(lbTabmark);
- }
- for (int i = 0; i < tabButtons.Count; i++)
- {
- tabButtons[i].Text = tabNameArray[i];
- lbTabMarks[i].Text = tabNameArray[i];
- }
- scrollViewProperty = Make<GameScrollView>("jihuoshuxing:Scroll View");
- frontTile = Make<GameTile>("qianpaishuxing :UIGrid");
- middleTile = Make<GameTile>("zhongpaishuxing:UIGrid");
- backTile = Make<GameTile>("houpaishuxing:UIGrid");
- lbhasNoFrontProperty = Make<GameLabel>("qianpaishuxing :qianpai:shuzhi-1");
- lbhasNoMiddleProperty = Make<GameLabel>("zhongpaishuxing:qianpai:shuzhi-1");
- lbhasNoBackProperty = Make<GameLabel>("houpaishuxing:qianpai:shuzhi-1");
- string str = LocaleMod.GetString("GeneralPartnerUI_activeTips");
- lbhasNoFrontProperty.Text = lbhasNoMiddleProperty.Text = lbhasNoBackProperty.Text = str;
- generalPartnerTile = Make<GameTile>("jihuoshuxing:Scroll View:UIGrid");
- scrollView = Make<GameScrollView>("huobanshuxing:Scroll View");
- compFront = Make<GameUIComponent>("qianpaishuxing ", scrollView.gameObject);
- compMiddle = Make<GameUIComponent>("zhongpaishuxing", scrollView.gameObject);
- compBack = Make<GameUIComponent>("houpaishuxing", scrollView.gameObject);
- }
- int curIndex = 0;
- bool clickTabByShow = false;
- public override void OnShow(object param)
- {
- base.OnShow(param);
- MsgHandler.Reg(MsgDef.SCGetGeneralPartnerInfo, onGetGeneralPartnerInfoMsg);
- MsgHandler.Reg(MsgDef.SCGeneralPartnerOperate, onGetGeneralPartnerOperateMsg);
- MsgHandler.Reg(MsgDef.SCHumanInfoChange, onHumanInfoChange);
- //curIndex = 0;
- clickTabByShow = true;
- int type = 1;
- bool useParam = false;
- if (param != null && param.GetType() == typeof(int))
- {
- type = (int)param;
- useParam = true;
- }
- if (useParam == true)
- {
- onTabBtnClick(tabButtons[type - 1].gameObject);
- }
- else if (preSignStateList.Count > 0)
- {
- int index = 0;
- for (int i = 0; i < preSignStateList.Count; i++)
- {
- if (preSignStateList[i] == 1)
- {
- index = i;
- break;
- }
- }
- onTabBtnClick(tabButtons[index].gameObject);
- preSignStateList.Clear();
- }
- else
- {
- if (curIndex > 0 && curIndex <= tabButtons.Count)
- onTabBtnClick(tabButtons[curIndex - 1].gameObject);
- else
- onTabBtnClick(tabButtons[0].gameObject);
- }
- }
- private void onClickClose(GameObject obj)
- {
- CloseFrame();
- }
- private void onClickRule(GameObject obj)
- {
- Functions.ui.ShowUI(UIDef.UI_GENERAL_RULE, 32);
- }
- private void onTabBtnClick(GameObject obj)
- {
- int ind = (int)obj.ToGameUIComponent<GameIndicateCheckBox>().Parameter;
- if (curIndex != ind || clickTabByShow == true)
- {
- for (int i = 0; i < tabButtons.Count; i++)
- tabButtons[i].Checked = (ind == i + 1 ? true : false);
- CSGetGeneralPartnerInfo msg = new CSGetGeneralPartnerInfo();
- msg.type = ind;
- Functions.net.Send.SafeInvoke(msg);
- curIndex = ind;
- scrollViewProperty.ScrllToTop();
- clickTabByShow = false;
- }
- }
- private int getState(DGeneralPartner info)
- {
- ConfGeneralPartner confGeneralPartner;
- ConfGeneralPartner.GetConfig(info.sn, out confGeneralPartner);
- int level = confGeneralPartner.level;
- if (level == 0)
- {
- if (info.starLevel <= 0)
- {
- return 1;
- }
- else
- {
- return 2;
- }
- }
- else
- {
- if (info.canLevelUp == false)
- {
- if (confGeneralPartner.isMaxLevel <= 0)
- return 3;
- else
- return 5;
- }
- else
- return 4;
- }
- }
- public int compareGeneralPartnerList(DGeneralPartner x, DGeneralPartner y)
- {
- int stateX = getState(x);
- int stateY = getState(y);
- if (stateX != stateY)
- {
- if (stateX == 2)
- return -1;
- else if (stateY == 2)
- return 1;
- else if (stateX == 4)
- return -1;
- else if (stateY == 4)
- return 1;
- else if (stateX == 1)
- return -1;
- else if (stateY == 1)
- return 1;
- else if (stateX == 3)
- return -1;
- else if (stateY == 3)
- return 1;
- }
- else
- {
- if (x.sn < y.sn)
- return -1;
- else if (x.sn > y.sn)
- return 1;
- else
- return 0;
- }
- return 0;
- }
- private void onGetGeneralPartnerInfoMsg(object obj)
- {
- SCGetGeneralPartnerInfo msg = obj as SCGetGeneralPartnerInfo;
- msg.generalParteners.Sort(compareGeneralPartnerList);
- generalPartnerInfoList.Clear();
- curIndexGeneralPartnerInfoList.Clear();
- generalPartnerItemList.Clear();
- generalPartnerInfoList.AddRange(msg.generalParteners);
- for (int i = 0; i < msg.generalParteners.Count; i++)
- {
- ConfGeneralPartner conf;
- if (ConfGeneralPartner.GetConfig(msg.generalParteners[i].sn, out conf))
- {
- ConfCharacterGeneral confCharacter;
- if (ConfCharacterGeneral.GetConfig(conf.generalSn, out confCharacter))
- {
- if (checkTalentAndTabIndex(confCharacter.talent, msg.type))
- curIndexGeneralPartnerInfoList.Add(msg.generalParteners[i]);
- }
- }
- }
- generalPartnerTile.EnsureSize<GeneralPartnerItem>(curIndexGeneralPartnerInfoList.Count);
- for (int i = 0; i < curIndexGeneralPartnerInfoList.Count; i++)
- {
- GeneralPartnerItem item = generalPartnerTile.GetChild<GeneralPartnerItem>(i);
- item.PBGeneralPartnerInfo = curIndexGeneralPartnerInfoList[i];
- generalPartnerItemList.Add(item);
- }
- updateTabAndPropertyInfoUI(msg);
- }
- bool checkTalentAndTabIndex(int talent, int type)
- {
- if (type == 1 || type == 2)
- {
- if (talent == type)
- return true;
- return false;
- }
- else if (type == 3)
- {
- if (talent == 3 || talent == 4)
- return true;
- return false;
- }
- else if (type == 4)
- {
- if (talent == 5 || talent == 6)
- return true;
- return false;
- }
- return false;
- }
- private void updatepropertyMap()
- {
- frontPropertyMap.Clear();
- middlePropertyMap.Clear();
- backPropertyMap.Clear();
- for (int i = 0; i < generalPartnerInfoList.Count; i++)
- {
- GeneralPartnerItem item = new GeneralPartnerItem();
- item.PBGeneralPartnerInfo = generalPartnerInfoList[i];
- if (item.confGeneralPartner.value <= 0)
- continue;
- if (item.confCharacterGeneral.profession == 1)
- {
- if (frontPropertyMap.ContainsKey(item.confGeneralPartner.property))
- frontPropertyMap[item.confGeneralPartner.property] += item.confGeneralPartner.value;
- else
- frontPropertyMap[item.confGeneralPartner.property] = item.confGeneralPartner.value;
- }
- else if (item.confCharacterGeneral.profession == 2)
- {
- if (middlePropertyMap.ContainsKey(item.confGeneralPartner.property))
- middlePropertyMap[item.confGeneralPartner.property] += item.confGeneralPartner.value;
- else
- middlePropertyMap[item.confGeneralPartner.property] = item.confGeneralPartner.value;
- }
- else if (item.confCharacterGeneral.profession == 3)
- {
- if (backPropertyMap.ContainsKey(item.confGeneralPartner.property))
- backPropertyMap[item.confGeneralPartner.property] += item.confGeneralPartner.value;
- else
- backPropertyMap[item.confGeneralPartner.property] = item.confGeneralPartner.value;
- }
- }
- }
- private void updateTabAndPropertyInfoUI(SCGetGeneralPartnerInfo info)
- {
- for (int i = 0; i < tabButtons.Count; i++)
- {
- lbTabMarks[i].Text = tabButtons[i].Text = tabNameArray[i] + "(" + info.activeNumList[i * 2] + "/" + info.activeNumList[i * 2 + 1] + ")";
- tabButtons[i].ShowSign(info.signStateList[i] > 0);
- }
- updatePropertyInfoUI();
- }
- private void updatePropertyInfoUI()
- {
- updatepropertyMap();
- frontTile.Clear();
- middleTile.Clear();
- backTile.Clear();
- frontTile.EnsureSize<PropertyItem>(frontPropertyMap.Count);
- middleTile.EnsureSize<PropertyItem>(middlePropertyMap.Count);
- backTile.EnsureSize<PropertyItem>(backPropertyMap.Count);
- int itemIndex = 0;
- foreach (string key in frontPropertyMap.Keys)
- {
- int value = frontPropertyMap[key];
- PropertyItem item = frontTile.GetChild<PropertyItem>(itemIndex);
- item.setProperty(key, value);
- itemIndex++;
- }
- if (frontPropertyMap.Count == 0)
- {
- lbhasNoFrontProperty.Visible = true;
- setAnchor(compMiddle, lbhasNoFrontProperty);
- }
- else
- {
- lbhasNoFrontProperty.Visible = false;
- setAnchor(compMiddle, frontTile.GetChild<PropertyItem>(frontPropertyMap.Count - 1));
- }
- itemIndex = 0;
- foreach (string key in middlePropertyMap.Keys)
- {
- int value = middlePropertyMap[key];
- PropertyItem item = middleTile.GetChild<PropertyItem>(itemIndex);
- item.setProperty(key, value);
- itemIndex++;
- }
- if (middlePropertyMap.Count == 0)
- {
- lbhasNoMiddleProperty.Visible = true;
- setAnchor(compBack, lbhasNoMiddleProperty);
- }
- else
- {
- lbhasNoMiddleProperty.Visible = false;
- setAnchor(compBack, middleTile.GetChild<PropertyItem>(middlePropertyMap.Count - 1));
- }
- itemIndex = 0;
- foreach (string key in backPropertyMap.Keys)
- {
- int value = backPropertyMap[key];
- PropertyItem item = backTile.GetChild<PropertyItem>(itemIndex);
- item.setProperty(key, value);
- itemIndex++;
- }
- lbhasNoBackProperty.Visible = backPropertyMap.Count == 0 ? true : false;
- }
- private void setAnchor(GameUIComponent setComp, GameUIComponent settedComp)
- {
- setComp.Widget.topAnchor.target = settedComp.gameObject.transform;
- setComp.Widget.bottomAnchor.target = settedComp.gameObject.transform;
- setComp.Widget.ResetAnchors();
- setComp.Widget.UpdateAnchors();
- }
- private void onGetGeneralPartnerOperateMsg(object obj)
- {
- SCGeneralPartnerOperate msg = obj as SCGeneralPartnerOperate;
- ConfGeneralPartner conf;
- ConfGeneralPartner.GetConfig(msg.generalPartner.sn, out conf);
- string operateGeneralSn = "";
- for (int i = 0; i < curIndexGeneralPartnerInfoList.Count; i++)
- {
- if (generalPartnerItemList[i].confGeneralPartner.generalSn == conf.generalSn)
- {
- curIndexGeneralPartnerInfoList[i] = msg.generalPartner;
- generalPartnerItemList[i].PBGeneralPartnerInfo = msg.generalPartner;
- generalPartnerItemList[i].showUpgradeEffect();
- operateGeneralSn = conf.generalSn;
- }
- else
- {
- generalPartnerItemList[i].PBGeneralPartnerInfo = curIndexGeneralPartnerInfoList[i];
- }
- }
- for (int i = 0; i < generalPartnerInfoList.Count; i++)
- {
- ConfGeneralPartner.GetConfig(generalPartnerInfoList[i].sn, out conf);
- if (conf.generalSn == operateGeneralSn)
- {
- generalPartnerInfoList[i] = msg.generalPartner;
- break;
- }
- }
- updateTabSignState();
- updatePropertyInfoUI();
- if (msg.isSuccess == true)
- {
- if (msg.type == 1)
- ChatMod.ShowMessage(LocaleMod.GetString("GeneralPartnerUI_activeSuccess"));
- else
- ChatMod.ShowMessage(LocaleMod.GetString("GeneralPartnerUI_upgradeSuccess"));
- }
- }
- private void updateTabSignState()
- {
- List<int> signStateList = new List<int>();
- List<int> activeNumList = new List<int>();
- List<int> maxNumList = new List<int>();
- for (int i = 0; i < MAX_TAB_COUNT; i++)
- {
- signStateList.Add(0);
- activeNumList.Add(0);
- maxNumList.Add(0);
- }
- for (int i = 0; i < generalPartnerInfoList.Count; i++)
- {
- int infoState = getCanOperateAndActiveNum(generalPartnerInfoList[i]);
- int index = infoState / 100;
- int state = infoState % 100;
- if (index == 0)
- continue;
- if (state == 3)
- {
- signStateList[index - 1] = 1;
- activeNumList[index - 1]++;
- }
- else if (state == 1)
- {
- signStateList[index - 1] = 1;
- }
- else if (state == 2)
- {
- activeNumList[index - 1]++;
- }
- maxNumList[index - 1]++;
- }
- for (int i = 0; i < MAX_TAB_COUNT; i++)
- {
- tabButtons[i].ShowSign(signStateList[i] == 1);
- tabButtons[i].Text = lbTabMarks[i].Text = tabNameArray[i] + "(" + activeNumList[i] + "/" + maxNumList[i] + ")";
- }
- }
- int getCanOperateAndActiveNum(DGeneralPartner info)
- {
- ConfCharacterGeneral confCharacterGeneral;
- ConfGeneralPartner confGeneralPartner;
- int state = 0;
- ConfGeneralPartner.GetConfig(info.sn, out confGeneralPartner);
- ConfCharacterGeneral.GetConfig(confGeneralPartner.generalSn, out confCharacterGeneral);
- int index = getTabIndexByTalent(confCharacterGeneral.talent);
- int level = confGeneralPartner.level;
- if (level == 0)
- {
- if (info.starLevel <= 0)
- {
- state = 1;
- }
- else
- {
- state = 2;
- }
- }
- else
- {
- if (info.canLevelUp == false)
- {
- if (confGeneralPartner.isMaxLevel <= 0)
- state = 3;
- else
- state = 5;
- }
- else
- state = 4;
- }
- if (state == 2 || state == 4)
- {
- if (confGeneralPartner.cost <= PlayerInfo.Instance.HeroInfo.coin)
- {
- if (state == 2)
- return 1 + index * 100;//未激活,但是可操作
- else
- return 3 + index * 100;//已激活并且可操作
- }
- }
- if (state != 1 && state != 2)
- return 2 + index * 100;//已激活,不可操作
- return 0 + index * 100;//未激活且不可操作
- }
- int getTabIndexByTalent(int talent)
- {
- if (talent == 1 || talent == 2)
- return talent;
- else if (talent == 3 || talent == 4)
- return 3;
- else if (talent == 5 || talent == 6)
- return 4;
- return 0;
- }
- private void onHumanInfoChange(object obj)
- {
- SCHumanInfoChange msg = obj as SCHumanInfoChange;
- for (int i = 0; i < generalPartnerItemList.Count; i++)
- {
- generalPartnerItemList[i].updateMoneyNumState();
- }
- updateTabSignState();
- }
- public override void OnHide()
- {
- base.OnHide();
- MsgHandler.UnReg(MsgDef.SCGetGeneralPartnerInfo, onGetGeneralPartnerInfoMsg);
- MsgHandler.UnReg(MsgDef.SCGeneralPartnerOperate, onGetGeneralPartnerOperateMsg);
- MsgHandler.UnReg(MsgDef.SCHumanInfoChange, onHumanInfoChange);
- }
- }
- class PropertyItem : GameLabel
- {
- GameLabel lbPropertyName, lbPropertyNum;
- protected override void OnInit()
- {
- base.OnInit();
- lbPropertyName = Make<GameLabel>("shuxing:zuo1");
- lbPropertyNum = Make<GameLabel>("shuxing:zuo1:shuzhi");
- }
- public override void OnShow(object param)
- {
- base.OnShow(param);
- }
- public void setProperty(string property, int value)
- {
- ConfAttr attrconf = ConfAttr.Get(property);
- lbPropertyName.Text = attrconf.displayname + ":";
- lbPropertyNum.Text = "+" + GameConst.GetFormatAttValue(value, attrconf);
- }
- }
- class GeneralPartnerItem : GameUIComponent
- {
- GameUIComponent compHead;
- GameImage imgHead, imgBorder;
- GameTile starTile;
- GameLabel lbActiveState, lbUpgradeCondition;
- GameLabel lbLeftProperty, lbRightProperty;
- GameImage imgArrow;
- GameImage imgMoney;
- GameLabel lbMoneyNum;
- GameButton btnUpgrade;
- GameUIComponent compSign;
- public GameUIEffect upgradeEffect;
- public DGeneralPartner info;
- public ConfCharacterGeneral confCharacterGeneral;
- public ConfGeneralPartner confGeneralPartner;
- public int state = 0;
- public void updateConfAndState()
- {
- ConfGeneralPartner.GetConfig(info.sn, out confGeneralPartner);
- ConfCharacterGeneral.GetConfig(confGeneralPartner.generalSn, out confCharacterGeneral);
- int level = confGeneralPartner.level;
- if (level == 0)
- {
- if (info.starLevel <= 0)
- {
- state = 1;
- }
- else
- {
- state = 2;
- }
- }
- else
- {
- if (info.canLevelUp == false)
- {
- if (confGeneralPartner.isMaxLevel <= 0)
- state = 3;
- else
- state = 5;
- }
- else
- state = 4;
- }
- }
- public DGeneralPartner PBGeneralPartnerInfo
- {
- set
- {
- info = value;
- updateConfAndState();
- if (compHead != null)
- updateView();
- }
- get { return info; }
- }
- protected override void OnInit()
- {
- base.OnInit();
- compHead = Make<GameUIComponent>("Herohead");
- compHead.AddClickCallBack(onClickHead);
- imgHead = Make<GameImage>("itemtubiao");
- imgBorder = Make<GameImage>("outside");
- starTile = Make<GameTile>("Stars");
- lbActiveState = Make<GameLabel>("jihuotiaojian");
- lbUpgradeCondition = Make<GameLabel>("dengjiweijihuo");
- lbLeftProperty = Make<GameLabel>("shuxing");
- lbRightProperty = Make<GameLabel>("shuxing2");
- imgArrow = Make<GameImage>("shengji:jiantou");
- imgMoney = Make<GameImage>("tongbiimage");
- lbMoneyNum = Make<GameLabel>("chushoutongbinum");
- btnUpgrade = Make<GameButton>("button-jihuo");
- btnUpgrade.AddClickCallBack(onClickUpgrade);
- compSign = Make<GameUIComponent>("numkuang");
- upgradeEffect = Make<GameUIEffect>("jihuotexiaoguadian");
- }
- public override void OnShow(object param)
- {
- base.OnShow(param);
- upgradeEffect.Visible = false;
- }
- public void showUpgradeEffect()
- {
- upgradeEffect.PrefabName = "ui_zbsj_01.prefab";
- upgradeEffect.SetScale(1, 3080);
- upgradeEffect.Visible = false;
- upgradeEffect.Visible = true;
- }
- private void onClickHead(GameObject obj)
- {
- IconPressEvent evt = TipUILogic.tipEvt;
- evt.posObjSource = obj;
- evt.tipType = IconTipType.TIP_CONFGENERAL;
- evt.param = confCharacterGeneral;
- evt.sourceID = "";
- Events.tip.OnIconPressEvent.SafeInvoke(evt);
- }
- private void onClickUpgrade(GameObject obj)
- {
- if (state == 1 || state == 3 || state == 5)
- {
- ChatMod.ShowMessage(lbUpgradeCondition.Text);
- return;
- }
- if (PlayerInfo.Instance.HeroInfo.coin < confGeneralPartner.cost)
- {
- ChatMod.showMoneyTree(UIDef.UI_GENERAL_PARTNER);
- return;
- }
- CSGeneralPartnerOperate msg = new CSGeneralPartnerOperate();
- if (state == 2)
- {
- msg.type = 1;
- }
- else
- {
- msg.type = 2;
- }
- msg.sn = info.sn;
- Functions.net.Send.SafeInvoke(msg);
- }
- private ConfGeneralPartner getNextlevelConf(ConfGeneralPartner lastConf)
- {
- for (int i = 0; i < ConfGeneralPartner.array.Count; i++)
- {
- if (ConfGeneralPartner.array[i].generalSn == lastConf.generalSn && ConfGeneralPartner.array[i].level == lastConf.level + 1)
- {
- return ConfGeneralPartner.array[i];
- }
- }
- return null;
- }
- private void updateView()
- {
- imgHead.Sprite = confCharacterGeneral.modelSn;
- imgHead.SetGray(state == 1);
- GeneralInfo generalInfo = PlayerInfo.Instance.GetGeneralByModelSn(confCharacterGeneral.modelSn);
- int advanceLevel = 0;
- if (generalInfo != null)
- advanceLevel = generalInfo.AdvanceLevel;
- imgBorder.Sprite = GameConst.GetGenearlBorderName(advanceLevel);
- GeneralInfo.MakeGeneralStartUI(starTile, info.starLevel);
- if (state != 5)
- {
- if (state == 1)
- {
- lbActiveState.Text = LocaleMod.GetString("GeneralPartnerUI_notActive");
- lbUpgradeCondition.Text = confCharacterGeneral.name + " " + LocaleMod.GetString("GeneralPartnerUI_activeCondition");
- lbLeftProperty.Visible = true;
- imgArrow.Visible = false;
- lbRightProperty.Visible = false;
- ConfGeneralPartner conf = getNextlevelConf(confGeneralPartner);
- if (conf != null)
- {
- ConfAttr attrconf = ConfAttr.Get(conf.property);
- lbLeftProperty.Text = GeneralPartnerUI.teamNameArray[confCharacterGeneral.profession - 1] +" "+ attrconf.displayname + "+" + GameConst.GetFormatAttValue(conf.value, attrconf);
- }
- btnUpgrade.Text = LocaleMod.GetString("GeneralPartnerUI_active");
- btnUpgrade.SetGray(true);
- compSign.Visible = false;
- updateMoneyNumState();
- }
- else if (state == 2)
- {
- lbActiveState.Text = LocaleMod.GetString("GeneralPartnerUI_canActive");
- lbUpgradeCondition.Text = confCharacterGeneral.name + " " + LocaleMod.GetString("GeneralPartnerUI_activeCondition");
- lbLeftProperty.Visible = true;
- imgArrow.Visible = false;
- lbRightProperty.Visible = false;
- ConfGeneralPartner conf = getNextlevelConf(confGeneralPartner);
- if (conf != null)
- {
- ConfAttr attrconf = ConfAttr.Get(conf.property);
- lbLeftProperty.Text = GeneralPartnerUI.teamNameArray[confCharacterGeneral.profession - 1] + " " + attrconf.displayname + "+" + GameConst.GetFormatAttValue(conf.value, attrconf);
- }
- btnUpgrade.Text = LocaleMod.GetString("GeneralPartnerUI_active");
- btnUpgrade.SetGray(false);
- compSign.Visible = false;
- updateMoneyNumState();
- }
- else
- {
- lbActiveState.Text = LocaleMod.GetString("GeneralPartnerUI_generalPartnerLevel", confGeneralPartner.level);
- int upgradeLevel = confGeneralPartner.level + 1;
- lbUpgradeCondition.Text = confCharacterGeneral.name + upgradeLevel + LocaleMod.GetString("GeneralPartnerUI_upgradeCondition");
- lbLeftProperty.Visible = true;
- imgArrow.Visible = true;
- lbRightProperty.Visible = true;
- ConfAttr attrconf1 = ConfAttr.Get(confGeneralPartner.property);
- lbLeftProperty.Text = GeneralPartnerUI.teamNameArray[confCharacterGeneral.profession - 1] +" " + attrconf1.displayname + "+" + GameConst.GetFormatAttValue(confGeneralPartner.value, attrconf1);
- ConfGeneralPartner conf = getNextlevelConf(confGeneralPartner);
- if (conf != null)
- {
- lbRightProperty.Text = "+" + GameConst.GetFormatAttValue(conf.value, attrconf1);
- }
- btnUpgrade.Text = LocaleMod.GetString("GeneralPartnerUI_upgrade");
- btnUpgrade.SetGray(!info.canLevelUp);
- compSign.Visible = false;
- updateMoneyNumState();
- }
- }
- else
- {
- lbActiveState.Text = LocaleMod.GetString("GeneralPartnerUI_generalPartnerLevel", confGeneralPartner.level);
- lbUpgradeCondition.Text = LocaleMod.GetString("GeneralPartnerUI_hasUpgradeMax");
- lbLeftProperty.Visible = true;
- imgArrow.Visible = false;
- lbRightProperty.Visible = false;
- ConfAttr attrconf = ConfAttr.Get(confGeneralPartner.property);
- lbLeftProperty.Text = GeneralPartnerUI.teamNameArray[confCharacterGeneral.profession - 1] + " " + attrconf.displayname + "+" + GameConst.GetFormatAttValue(confGeneralPartner.value, attrconf);
- btnUpgrade.Text = LocaleMod.GetString("GeneralPartnerUI_haBeenMaxLevel");
- btnUpgrade.SetGray(true);
- compSign.Visible = false;
- imgMoney.Visible = false;
- }
- }
- public void updateMoneyNumState()
- {
- if (confGeneralPartner != null)
- {
- imgMoney.Visible = state != 5;
- if (PlayerInfo.Instance.HeroInfo.coin >= confGeneralPartner.cost)
- lbMoneyNum.Text = GameConst.color_green + confGeneralPartner.cost + "[-]";
- else
- lbMoneyNum.Text = GameConst.color_red + confGeneralPartner.cost + "[-]";
- }
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement