Merge branch 'master' of http://192.168.0.87:10010/r/snxxz_scripts
| | |
| | |
|
| | | public static string GetFirstName(int occupa)
|
| | | {
|
| | | List<RandomNameConfig> list = null;
|
| | | m_RandomNameCfgs.TryGetValue(occupa, out list);
|
| | | List<RandomNameConfig> list = Config.Instance.GetAllValues<RandomNameConfig>();
|
| | | //m_RandomNameCfgs.TryGetValue(occupa, out list);
|
| | | int cnt = list.Count;
|
| | | string str = list[Random.Range(0, cnt)].RandomName1;
|
| | | return str;
|
| | |
| | | PlayerTaskDatas taskmodel { get { return ModelCenter.Instance.GetModel<PlayerTaskDatas>(); } }
|
| | | GetItemPathModel getItemPathModel { get { return ModelCenter.Instance.GetModel<GetItemPathModel>(); } }
|
| | | DailyQuestModel dailyQuestModel { get { return ModelCenter.Instance.GetModel<DailyQuestModel>(); } }
|
| | |
|
| | | Dictionary<int, int> equipQualityItemIdTables = new Dictionary<int, int>() { { 1, 2110 }, { 2, 2111 }, { 3, 2112 }, { 4, 2113 }, { 5, 2114 } };
|
| | |
|
| | | public override void Init()
|
| | |
| | | }
|
| | | else
|
| | | {
|
| | | AchievementGoto.guideAchievementId = _achievementId;
|
| | | playerPack.SetLookIndex(guid39);
|
| | | GotoCompleteByJump(144);
|
| | | }
|
| | |
| | | }
|
| | | else
|
| | | {
|
| | | AchievementGoto.guideAchievementId = _achievementId;
|
| | | WindowCenter.Instance.Close<TreasureLevelUpWin>();
|
| | |
|
| | | playerPack.SetLookIndex(guid82);
|
| | |
| | | if (equipQualityItemIdTables.ContainsKey(itemQuality))
|
| | | {
|
| | | getItemPathModel.SetChinItemModel(equipQualityItemIdTables[itemQuality]);
|
| | | }
|
| | | } |
| | | else
|
| | | {
|
| | | getItemPathModel.SetChinItemModel(2108);
|
| | |
| | | }
|
| | | else
|
| | | {
|
| | | AchievementGoto.guideAchievementId = _achievementId;
|
| | | playerPack.SetLookIndex(guid83);
|
| | | WindowCenter.Instance.Close<TreasureLevelUpWin>();
|
| | | WindowCenter.Instance.Close<MainInterfaceWin>();
|
| New file |
| | |
| | | //-------------------------------------------------------- |
| | | // [Author]: 第二世界 |
| | | // [ Date ]: Saturday, August 18, 2018 |
| | | //-------------------------------------------------------- |
| | | using UnityEngine; |
| | | using System.Collections; |
| | | using UnityEngine.UI; |
| | | using TableConfig; |
| | | |
| | | namespace Snxxz.UI |
| | | { |
| | | |
| | | public class ElderEliteMonsterBehaviour : MonoBehaviour |
| | | { |
| | | [SerializeField] RawImage m_RawImage; |
| | | |
| | | public void Display(int npcId) |
| | | { |
| | | var config = Config.Instance.Get<NPCConfig>(npcId); |
| | | UI3DModelExhibition.Instance.ShowNPC(npcId, config.UIModeLOffset, config.UIModelRotation, m_RawImage); |
| | | } |
| | | |
| | | public void Dispose() |
| | | { |
| | | UI3DModelExhibition.Instance.StopShow(); |
| | | } |
| | | |
| | | } |
| | | |
| | | } |
| | | |
| | | |
| | | |
| New file |
| | |
| | | fileFormatVersion: 2 |
| | | guid: 2aefe6a576cf98e49a1b99cc59e23efe |
| | | timeCreated: 1534563304 |
| | | licenseType: Pro |
| | | MonoImporter: |
| | | serializedVersion: 2 |
| | | defaultReferences: [] |
| | | executionOrder: 0 |
| | | icon: {instanceID: 0} |
| | | userData: |
| | | assetBundleName: |
| | | assetBundleVariant: |
| | |
| | |
|
| | | int m_SelectedBoss = 0;
|
| | | public int selectedBoss {
|
| | | get {
|
| | | return this.m_SelectedBoss;
|
| | | }
|
| | | get { return this.m_SelectedBoss; }
|
| | | set {
|
| | | if (this.m_SelectedBoss != value)
|
| | | {
|
| | |
| | | public event Action<int> bossSelectedEvent;
|
| | | public event Action<int> surplusTimesChangeEvent;
|
| | |
|
| | | List<int> sortedElites = new List<int>();
|
| | | List<int> sortedBossIds = new List<int>();
|
| | | Dictionary<int, ElderGodBossData> elderGodBosses = new Dictionary<int, ElderGodBossData>();
|
| | | Dictionary<int, int> npcAngers = new Dictionary<int, int>();
|
| | |
| | |
|
| | | public bool IsBossUnLocked(int _bossId)
|
| | | {
|
| | | var playerLevel = PlayerDatas.Instance.baseData.LV;
|
| | | return elderGodBosses.ContainsKey(_bossId) && playerLevel >= elderGodBosses[_bossId].unLockLevel;
|
| | | var config = Config.Instance.Get<ElderGodAreaConfig>(_bossId);
|
| | | if (config == null) |
| | | {
|
| | | return false; |
| | | }
|
| | |
|
| | | if (config.MonsterType == 1) |
| | | {
|
| | | return true; |
| | | }
|
| | | else
|
| | | {
|
| | | var playerLevel = PlayerDatas.Instance.baseData.LV;
|
| | | return elderGodBosses.ContainsKey(_bossId) && playerLevel >= elderGodBosses[_bossId].unLockLevel;
|
| | | }
|
| | | }
|
| | |
|
| | | public List<int> GetElderGodBosses()
|
| | | {
|
| | | return new List<int>(sortedBossIds);
|
| | | var bosses = new List<int>();
|
| | | bosses.Add(sortedElites[0]);
|
| | | bosses.AddRange(sortedBossIds);
|
| | | return bosses;
|
| | | }
|
| | |
|
| | | public int GetLatestUnLockBoss()
|
| | | public int GetRecommendNpc()
|
| | | {
|
| | | for (int i = 0; i < sortedBossIds.Count; i++)
|
| | | foreach (var item in sortedBossIds) |
| | | {
|
| | | var bossId = sortedBossIds[i];
|
| | | if (findPreciousModel.IsBossAlive(bossId))
|
| | | if (findPreciousModel.IsBossAlive(item))
|
| | | {
|
| | | return bossId;
|
| | | return item;
|
| | | } |
| | | }
|
| | |
|
| | | return sortedElites[0];
|
| | | }
|
| | |
|
| | | public int GetRecommendEliteNpc()
|
| | | {
|
| | | var npc = 0;
|
| | | var levelDelta = int.MaxValue;
|
| | | var myLevel = PlayerDatas.Instance.baseData.LV;
|
| | | foreach (var item in sortedElites)
|
| | | {
|
| | | var config = Config.Instance.Get<NPCConfig>(item);
|
| | | var delta = Mathf.Abs(myLevel - config.NPCLV);
|
| | | if (delta < levelDelta)
|
| | | {
|
| | | npc = item;
|
| | | levelDelta = delta;
|
| | | }
|
| | | }
|
| | |
|
| | | return sortedBossIds[0];
|
| | | return npc;
|
| | | }
|
| | |
|
| | | private void ParseConfig()
|
| | |
| | | {
|
| | | elderGodBosses[config.NPCID] = new ElderGodBossData(config.NPCID);
|
| | | }
|
| | | else
|
| | | {
|
| | | sortedElites.Add(config.NPCID);
|
| | | }
|
| | |
|
| | | npcAngers[config.NPCID] = config.MonsterAnger;
|
| | | }
|
| | |
|
| | | sortedElites.Sort(EliteMonsterCompare);
|
| | | sortedBossIds.AddRange(elderGodBosses.Keys);
|
| | | sortedBossIds.Sort(ElderGodBossData.LevelCompare);
|
| | | }
|
| | |
|
| | | private int EliteMonsterCompare(int lhs, int rhs)
|
| | | {
|
| | | var config1 = Config.Instance.Get<NPCConfig>(lhs);
|
| | | var config2 = Config.Instance.Get<NPCConfig>(rhs);
|
| | |
|
| | | return config1.NPCLV < config2.NPCLV ? -1 : 1;
|
| | | }
|
| | |
|
| | | public void OnMapInitOk()
|
| | |
| | | var dataMapId = dungeonModel.GetDataMapIdByMapId(PlayerDatas.Instance.baseData.MapID);
|
| | | if (dataMapId == ELDERGODAREA_MAPID)
|
| | | {
|
| | | MapTransferUtility.Instance.MoveToNPC(selectedBoss);
|
| | | var target = 0;
|
| | | if (sortedElites.Contains(selectedBoss)) |
| | | {
|
| | | target = GetRecommendEliteNpc(); |
| | | }
|
| | | else
|
| | | {
|
| | | target = selectedBoss;
|
| | | }
|
| | |
|
| | | MapTransferUtility.Instance.MoveToNPC(target);
|
| | | }
|
| | | }
|
| | | } |
| | |
| | | public class ElderGodAreaWin : Window
|
| | | {
|
| | | [SerializeField] CyclicScroll m_Bosses;
|
| | | [SerializeField] ElderEliteMonsterBehaviour m_EliteMonsterBehaviour;
|
| | | [SerializeField] BossIntroduceBehaviour m_BossIntroduce;
|
| | | [SerializeField] Text m_Times;
|
| | | [SerializeField] Button m_Goto;
|
| | | [SerializeField] Button m_KillRecord;
|
| | | [SerializeField] ToggleButton m_Subscribe;
|
| | |
|
| | | ElderGodAreaModel m_Model;
|
| | | ElderGodAreaModel model { get { return m_Model ?? (m_Model = ModelCenter.Instance.GetModel<ElderGodAreaModel>()); } }
|
| | |
|
| | | FindPreciousModel m_FindPreciousModel;
|
| | | FindPreciousModel findPreciousModel { get { return m_FindPreciousModel ?? (m_FindPreciousModel = ModelCenter.Instance.GetModel<FindPreciousModel>()); } }
|
| | |
|
| | | DungeonModel m_DungeonModel;
|
| | | DungeonModel dungeonModel {
|
| | | get { return m_DungeonModel ?? (m_DungeonModel = ModelCenter.Instance.GetModel<DungeonModel>()); }
|
| | | }
|
| | | ElderGodAreaModel model { get { return ModelCenter.Instance.GetModel<ElderGodAreaModel>(); } }
|
| | | FindPreciousModel findPreciousModel { get { return ModelCenter.Instance.GetModel<FindPreciousModel>(); } }
|
| | | DungeonModel dungeonModel { get { return ModelCenter.Instance.GetModel<DungeonModel>(); } }
|
| | |
|
| | | #region Built-in
|
| | | protected override void BindController()
|
| | |
| | | var bosses = new List<int>();
|
| | | bosses.AddRange(model.GetElderGodBosses());
|
| | |
|
| | | model.selectedBoss = model.GetLatestUnLockBoss();
|
| | | model.selectedBoss = model.GetRecommendNpc();
|
| | | DisplayNpcBaseInfo(true);
|
| | | m_Subscribe.isOn = findPreciousModel.IsBossSubscribed(model.selectedBoss);
|
| | | m_BossIntroduce.Display(model.selectedBoss, true);
|
| | | m_Bosses.Init(bosses);
|
| | | m_Bosses.MoveToCenter(bosses.IndexOf(model.selectedBoss));
|
| | | }
|
| | |
| | | break;
|
| | | case 2:
|
| | | WindowCenter.Instance.Close<FindPreciousFrameWin>();
|
| | | MapTransferUtility.Instance.MoveToNPC(model.selectedBoss);
|
| | | var config = Config.Instance.Get<ElderGodAreaConfig>(model.selectedBoss);
|
| | | var targetNpc = config.MonsterType == 1 ? model.GetRecommendEliteNpc() : model.selectedBoss;
|
| | | MapTransferUtility.Instance.MoveToNPC(targetNpc);
|
| | | break;
|
| | | case 3:
|
| | | SysNotifyMgr.Instance.ShowTip("DungeonNoGO");
|
| | |
| | |
|
| | | private void OnBossSelected(int _bossId)
|
| | | {
|
| | | m_BossIntroduce.Display(_bossId, false);
|
| | | DisplayNpcBaseInfo(false);
|
| | | m_Subscribe.isOn = findPreciousModel.IsBossSubscribed(_bossId);
|
| | | }
|
| | |
|
| | | private void DisplayNpcBaseInfo(bool immediately)
|
| | | {
|
| | | var npcId = model.selectedBoss;
|
| | | var config = Config.Instance.Get<ElderGodAreaConfig>(npcId);
|
| | |
|
| | | switch (config.MonsterType)
|
| | | {
|
| | | case 1:
|
| | | m_KillRecord.gameObject.SetActive(false);
|
| | | m_BossIntroduce.gameObject.SetActive(false);
|
| | | m_EliteMonsterBehaviour.gameObject.SetActive(true);
|
| | | m_EliteMonsterBehaviour.Display(npcId);
|
| | | break;
|
| | | case 2:
|
| | | m_KillRecord.gameObject.SetActive(true);
|
| | | m_BossIntroduce.gameObject.SetActive(true);
|
| | | m_EliteMonsterBehaviour.gameObject.SetActive(false);
|
| | | m_BossIntroduce.Display(npcId, immediately);
|
| | | break;
|
| | | default:
|
| | | break;
|
| | | }
|
| | | }
|
| | |
|
| | | private void CheckAchievementGuide()
|
| | | {
|
| | | if (AchievementGoto.guideAchievementId != 0)
|
| | |
| | | protected override InteractorableState interactorableState {
|
| | | get {
|
| | | var selected = selectedBossId == bossId;
|
| | | var dieOrLocked = !model.IsBossUnLocked(bossId) || !findPreciousModel.IsBossAlive(bossId);
|
| | | var config = Config.Instance.Get<ElderGodAreaConfig>(bossId);
|
| | | var dieOrLocked = config.MonsterType == 2 && (!model.IsBossUnLocked(bossId) || !findPreciousModel.IsBossAlive(bossId));
|
| | |
|
| | | if (!dieOrLocked)
|
| | | {
|
| | |
| | | UpdateBossNameLevelFont(interactorableState);
|
| | | }
|
| | |
|
| | | protected override void DrawBossBaseInfo(string _icon, string _name, int _level, int _realm)
|
| | | {
|
| | | var config = Config.Instance.Get<ElderGodAreaConfig>(bossId);
|
| | | m_Portrait.SetSprite(_icon);
|
| | | m_Portrait.SetNativeSize();
|
| | |
|
| | | switch (config.MonsterType)
|
| | | {
|
| | | case 1:
|
| | | m_BossName.text = Language.Get("ElderGodMonster");
|
| | | m_BossLevel.text = string.Empty;
|
| | | m_RealmContainer.gameObject.SetActive(false);
|
| | | break;
|
| | | case 2:
|
| | | m_BossName.text = _name;
|
| | | m_BossLevel.text = Language.Get("Z1024", _level);
|
| | | if (m_Realm != null && m_RealmContainer != null)
|
| | | {
|
| | | if (Config.Instance.ContainKey<RealmConfig>(_realm))
|
| | | {
|
| | | m_RealmContainer.gameObject.SetActive(true);
|
| | | var realmConfig = Config.Instance.Get<RealmConfig>(_realm);
|
| | | if (realmConfig != null)
|
| | | {
|
| | | m_Realm.SetSprite(realmConfig.Img);
|
| | | }
|
| | | }
|
| | | else
|
| | | {
|
| | | m_RealmContainer.gameObject.SetActive(false);
|
| | | }
|
| | | }
|
| | | break;
|
| | | default:
|
| | | break;
|
| | | }
|
| | | }
|
| | |
|
| | | protected override void OnSubscribe(int _bossId)
|
| | | {
|
| | | base.OnSubscribe(_bossId);
|
| | |
| | |
|
| | | public void SendEquipdevourQuest()
|
| | | {
|
| | | if (!modelInterface.isPackResetOk) return;
|
| | | if (!modelInterface.isPackResetOk || SettingEffectMgr.Instance.isStartDecompose) return;
|
| | |
|
| | | playerPack.isAutoDecompose = false;
|
| | |
|
| | | SettingEffectMgr.Instance.isStartDecompose = true;
|
| | | CA32C_tagCMEquipDecompose _petEat = new CA32C_tagCMEquipDecompose();
|
| | | byte[] _petIndex = new byte[realDevourlist.Count];
|
| | | for (int i = 0; i < realDevourlist.Count; i++)
|
| | |
| | | foreach (ItemWinBtnType key in itemAttrData.tipsFuncBtnDic.Keys)
|
| | | {
|
| | | Button btn = OnGUIButton(btnGroup.gameObject, operateBtn, key.ToString(), Language.Get(StringUtility.Contact("ItemHandle_", key.ToString())));
|
| | | switch (key)
|
| | | {
|
| | | case ItemWinBtnType.putOn:
|
| | | SuccessConfig successConfig = Config.Instance.Get<SuccessConfig>(AchievementGoto.guideAchievementId);
|
| | | if(successConfig != null |
| | | && (successConfig.Type == 39 |
| | | || successConfig.Type == 82
|
| | | || successConfig.Type == 83))
|
| | | {
|
| | | AchievementGuideEffect guidEffect = AchievementGuideEffectPool.Require(1);
|
| | | guidEffect.transform.SetParentEx(btn.transform, Vector3.zero, Quaternion.identity, Vector3.one);
|
| | | guidEffect.effect.renderQueue = 4500;
|
| | | }
|
| | | break;
|
| | | }
|
| | |
|
| | | btn.RemoveAllListeners();
|
| | | btn.onClick.AddListener(() => {
|
| | | OnClickCloseBtn();
|
| | |
| | | /// <param name="_oneKeySelllist"></param>
|
| | | public void SendOneKeySellQuest(List<ItemModel> _oneKeySelllist)
|
| | | {
|
| | | if (!isPackResetOk) return;
|
| | | if (!isPackResetOk || SettingEffectMgr.Instance.isStartOneKeySell) return;
|
| | |
|
| | | SettingEffectMgr.Instance.isStartOneKeySell = true;
|
| | | byte[] itemIndexs = new byte[_oneKeySelllist.Count];
|
| | | int i = 0;
|
| | | for (i = 0; i < _oneKeySelllist.Count; i++)
|
| | |
| | | public void SendEquipdevourQuest()
|
| | | {
|
| | | List<ItemModel> itemModels = GetCanDevourModellist();
|
| | | if (itemModels == null || itemModels.Count < minDecomposeNum || !modelInterface.isPackResetOk) return;
|
| | | if (itemModels == null || itemModels.Count < minDecomposeNum || !modelInterface.isPackResetOk || SettingEffectMgr.Instance.isStartDecompose) return;
|
| | |
|
| | | SettingEffectMgr.Instance.isStartDecompose = true;
|
| | | isAutoDecompose = true;
|
| | | recordAutoDecomNum = itemModels.Count;
|
| | | CA32C_tagCMEquipDecompose _petEat = new CA32C_tagCMEquipDecompose();
|
| | |
| | | CapacityDelayModel capacityDelayModel { get { return m_CapacityDelayModel ?? (m_CapacityDelayModel = ModelCenter.Instance.GetModel<CapacityDelayModel>()); } }
|
| | | FairyGrabBossModel fairyGrabBossModel { get { return ModelCenter.Instance.GetModel<FairyGrabBossModel>(); } }
|
| | | private int vipExperienceSurplusTime = 0;
|
| | | private int GetLv = 0;//获取人物等级
|
| | | public void Init()
|
| | | {
|
| | | loadingtime = 0f;
|
| | |
| | |
|
| | | void Initialize()//关于数据的初始化
|
| | | {
|
| | |
|
| | | GetLv = PlayerDatas.Instance.baseData.LV;
|
| | | _LVText.text = PlayerDatas.Instance.baseData.LV.ToString();//等级的初始化
|
| | | _Hp_number.text = PlayerDatas.Instance.baseData.HP.ToString() + "/" + PlayerDatas.Instance.extersion.MaxHP.ToString();//人物血量的初始化
|
| | | _hp = (int)PlayerDatas.Instance.baseData.HP;
|
| | |
| | | break;
|
| | | case PlayerDataRefresh.LV://等级的刷新8
|
| | | _LVText.text = PlayerDatas.Instance.baseData.LV.ToString();
|
| | | if (PlayerDatas.Instance.baseData.LV > GetLv)
|
| | | {
|
| | | GetLv = PlayerDatas.Instance.baseData.LV;
|
| | | WindowCenter.Instance.Open<UpgradeWin>();
|
| | | } |
| | | break;
|
| | | case PlayerDataRefresh.MaxHP://最大血量的刷新28
|
| | | _maxHp = (int)PlayerDatas.Instance.extersion.MaxHP;
|
| | |
| | | using UnityEngine; |
| | | using UnityEngine.UI; |
| | | |
| | | namespace Snxxz.UI { |
| | | namespace Snxxz.UI
|
| | | { |
| | | |
| | | public class UpgradeWin : Window |
| | | { |
| | | [SerializeField] UIAlphaTween m_UIAlphaTween;
|
| | | [SerializeField] ScaleTween m_ScaleTween;
|
| | | [SerializeField] UIAlphaTween m_UIAlphaTween1; |
| | | [SerializeField] GameObject m_Guang; |
| | | {
|
| | | [SerializeField] ScaleTween m_ScaleTween; |
| | | [SerializeField] Text m_TextLV; |
| | | [SerializeField] UIEffect m_UIEffect; |
| | | #region Built-in |
| | | protected override void BindController() |
| | | { |
| | |
| | | } |
| | | |
| | | protected override void OnPreOpen() |
| | | { |
| | | // m_Guang.SetActive(false); |
| | | m_TextLV.text = PlayerDatas.Instance.baseData.LV.ToString(); |
| | | m_UIAlphaTween1.SetEndState(); |
| | |
|
| | |
|
| | | {
|
| | | m_TextLV.text = PlayerDatas.Instance.baseData.LV.ToString();
|
| | | } |
| | | protected override void OnActived()
|
| | | {
|
| | | m_UIAlphaTween.Play(ShowOverAlpha);
|
| | | m_UIEffect.Play();
|
| | | m_UIEffect.OnComplete = () => { CloseImmediately(); };
|
| | | m_ScaleTween.Play();
|
| | | } |
| | | protected override void OnAfterOpen() |
| | | {
|
| | | |
| | | WindowCenter.Instance.windowBeforeCloseEvent += windowBeforeClose;
|
| | | PlayerDatas.Instance.PlayerDataRefreshInfoEvent += Updatefighting;//数据的刷新(h0418) |
| | | } |
| | | |
| | | protected override void OnPreClose() |
| | | {
|
| | | if (m_UIEffect.IsPlaying)
|
| | | {
|
| | | m_UIEffect.Stop();
|
| | | }
|
| | | WindowCenter.Instance.windowBeforeCloseEvent -= windowBeforeClose;
|
| | | PlayerDatas.Instance.PlayerDataRefreshInfoEvent -= Updatefighting;//数据的刷新(h0418) |
| | | }
|
| | |
|
| | | protected override void OnAfterClose() |
| | | { |
| | | }
|
| | | #endregion
|
| | | private void windowBeforeClose(Window _window)
|
| | | {
|
| | | if (_window is MainInterfaceWin)
|
| | |
| | | }
|
| | | }
|
| | |
|
| | | protected override void OnAfterClose() |
| | | { |
| | | }
|
| | | #endregion |
| | | private void ShowOverAlpha()
|
| | | {
|
| | | m_UIAlphaTween.Play(true);
|
| | | m_UIAlphaTween1.Play(true);
|
| | | } |
| | | } |
| | | |
| | | } |
| | |
| | | int count = 0; |
| | | IsReachUpper = false; |
| | | if(canBuyCnt == 0) |
| | | { |
| | | if(isVipBuy) |
| | | { |
| | | IsReachUpper = true; |
| | | } |
| | | else |
| | | { |
| | | if (buyCnt <= 9999) |
| | | { |
| | | count = buyCnt; |
| | | } |
| | | else |
| | | { |
| | | count = 9999; |
| | | IsReachUpper = true; |
| | | } |
| | | } |
| | | {
|
| | | IsReachUpper = true; |
| | | count = 0; |
| | | } |
| | | else |
| | | { |
| | |
| | | int addBuyCnt = 0;
|
| | | bool isLimitCnt = buyItem.CheckIsLimitBuyCnt(buyItem.storeConfig,out canBuyCnt,out addBuyCnt);
|
| | | bool isReachUpper = false;
|
| | | buyCnt = 0;
|
| | | buyCnt = buyItem.GetCurBuyCnt(1, GetRemainBuyCnt(), isVipBuy, out isReachUpper);
|
| | | if (itemTipsModel.curAttrData.itemConfig.PackCount > 1)
|
| | | {
|
| | | numberGo.gameObject.SetActive(true);
|
| | |
| | | if(curVipIndex != -1)
|
| | | {
|
| | | buyBtn.gameObject.SetActive(true);
|
| | | buyCnt = buyItem.GetCurBuyCnt(1, canBuyCnt,isVipBuy,out isReachUpper);
|
| | | }
|
| | | else
|
| | | {
|
| | |
| | | {
|
| | | vipInfoText.gameObject.SetActive(false);
|
| | | buyBtn.gameObject.SetActive(true);
|
| | | buyCnt = buyItem.GetCurBuyCnt(1, canBuyCnt, isVipBuy, out isReachUpper);
|
| | | }
|
| | |
|
| | | buyCountText.text = buyCnt.ToString();
|
| | |
| | | int addBuyCnt = 0;
|
| | | bool isLimitCnt = buyItem.CheckIsLimitBuyCnt(buyItem.storeConfig, out canBuyCnt, out addBuyCnt);
|
| | | bool isReachUpper = false;
|
| | | buyCnt = 0;
|
| | | if(itemAttrData.itemConfig.PackCount > 1)
|
| | | buyCnt = buyItem.GetCurBuyCnt(1, GetRemainBuyCnt(), isVipBuy, out isReachUpper);
|
| | | if (itemAttrData.itemConfig.PackCount > 1)
|
| | | {
|
| | | _numberGo.gameObject.SetActive(true);
|
| | | }
|
| | |
| | | if (curVipIndex != -1)
|
| | | {
|
| | | btnGroup.gameObject.SetActive(true);
|
| | | buyCnt = buyItem.GetCurBuyCnt(1, canBuyCnt, isVipBuy, out isReachUpper);
|
| | | }
|
| | | else
|
| | | {
|
| | |
| | | {
|
| | | vipInfoText.gameObject.SetActive(false);
|
| | | btnGroup.gameObject.SetActive(true);
|
| | | buyCnt = buyItem.GetCurBuyCnt(1, canBuyCnt, isVipBuy, out isReachUpper);
|
| | | }
|
| | |
|
| | | buyCountText.text = buyCnt.ToString();
|
| | |
| | | int addBuyCnt = 0;
|
| | | bool isLimitCnt = buyItem.CheckIsLimitBuyCnt(buyItem.storeConfig, out canBuyCnt, out addBuyCnt);
|
| | | bool isReachUpper = false;
|
| | | buyCnt = 0;
|
| | | buyCnt = buyItem.GetCurBuyCnt(1, GetRemainBuyCnt(), isVipBuy, out isReachUpper);
|
| | | if (itemAttrData.itemConfig.PackCount > 1)
|
| | | {
|
| | | _numberGo.gameObject.SetActive(true);
|
| | |
| | | if (curVipIndex != -1)
|
| | | {
|
| | | buyBtn.gameObject.SetActive(true);
|
| | | buyCnt = buyItem.GetCurBuyCnt(1, canBuyCnt, isVipBuy, out isReachUpper);
|
| | | }
|
| | | else
|
| | | {
|
| | |
| | | {
|
| | | vipInfoObj.SetActive(false);
|
| | | buyBtn.gameObject.SetActive(true);
|
| | | buyCnt = buyItem.GetCurBuyCnt(1, canBuyCnt, isVipBuy, out isReachUpper);
|
| | | }
|
| | |
|
| | | buyCountText.text = buyCnt.ToString();
|
| | |
| | | int addBuyCnt = 0;
|
| | | bool isLimitCnt = buyItem.CheckIsLimitBuyCnt(buyItem.storeConfig,out canBuyCnt,out addBuyCnt);
|
| | | bool isReachUpper = false;
|
| | | buyCnt = 0;
|
| | | buyCnt = buyItem.GetCurBuyCnt(1, GetRemainBuyCnt(), isVipBuy, out isReachUpper);
|
| | | if (itemTipsModel.curAttrData.itemConfig.PackCount > 1)
|
| | | {
|
| | | numberGo.gameObject.SetActive(true);
|
| | |
| | |
|
| | | if(curVipIndex != -1)
|
| | | {
|
| | | buyCnt = buyItem.GetCurBuyCnt(1, canBuyCnt,isVipBuy,out isReachUpper);
|
| | | |
| | | }
|
| | | else
|
| | | {
|
| | |
| | | else
|
| | | {
|
| | | vipInfoText.gameObject.SetActive(false);
|
| | | buyCnt = buyItem.GetCurBuyCnt(1, canBuyCnt, isVipBuy, out isReachUpper);
|
| | | }
|
| | |
|
| | | if(buyItem.storeConfig.LimitValue != 0)
|
| | |
| | | private void OnClickNum()
|
| | | {
|
| | | bool isReachUpper = false;
|
| | | buyCnt = buyItem.GetCurBuyCnt(int.Parse(numKeyboard.Value),GetRemainBuyCnt(), isVipBuy,out isReachUpper);
|
| | | buyCnt = buyItem.GetCurBuyCnt(int.Parse(numKeyboard.Value), GetRemainBuyCnt(), isVipBuy, out isReachUpper);
|
| | | RefreshBuyPrice(buyCnt);
|
| | | numKeyboard.Value = buyCnt.ToString();
|
| | | if (isReachUpper)
|
| | |
| | |
|
| | | private void OnClickPlusBuyNum()
|
| | | {
|
| | | buyCnt += 1;
|
| | | bool isReachUpper = false;
|
| | | buyCnt = buyItem.GetCurBuyCnt(buyCnt,GetRemainBuyCnt(), isVipBuy, out isReachUpper);
|
| | | buyCnt += 1;
|
| | | buyCnt = buyItem.GetCurBuyCnt(buyCnt, GetRemainBuyCnt(), isVipBuy, out isReachUpper);
|
| | | buyCountText.text = buyCnt.ToString();
|
| | | RefreshBuyPrice(buyCnt);
|
| | | if (isReachUpper)
|
| | | if (isReachUpper || buyCnt == 0)
|
| | | {
|
| | | MessageWin.Inst.ShowFixedTip(Language.Get("StoreWin109"));
|
| | | }
|
| | |
| | |
|
| | | private void OnClickReduceBuyNum()
|
| | | {
|
| | | buyCnt -= 1;
|
| | | bool isReachUpper = false;
|
| | | buyCnt = buyItem.GetCurBuyCnt(buyCnt, GetRemainBuyCnt(), isVipBuy,out isReachUpper);
|
| | | buyCnt -= 1;
|
| | | buyCnt = buyItem.GetCurBuyCnt(buyCnt, GetRemainBuyCnt(), isVipBuy, out isReachUpper);
|
| | | buyCountText.text = buyCnt.ToString();
|
| | | RefreshBuyPrice(buyCnt);
|
| | | }
|
| | |
| | | int addBuyCnt = 0;
|
| | | bool isLimitCnt = buyItem.CheckIsLimitBuyCnt(buyItem.storeConfig,out canBuyCnt,out addBuyCnt);
|
| | | bool isReachUpper = false;
|
| | | buyCnt = 0;
|
| | | buyCnt = buyItem.GetCurBuyCnt(1, GetRemainBuyCnt(), isVipBuy, out isReachUpper);
|
| | | if (itemTipsModel.curAttrData.itemConfig.PackCount > 1)
|
| | | {
|
| | | numberGo.gameObject.SetActive(true);
|
| | |
| | |
|
| | | if(curVipIndex != -1)
|
| | | {
|
| | | buyCnt = buyItem.GetCurBuyCnt(1, canBuyCnt,isVipBuy,out isReachUpper);
|
| | | |
| | | }
|
| | | else
|
| | | {
|
| | |
| | | else
|
| | | {
|
| | | vipInfoText.gameObject.SetActive(false);
|
| | | buyCnt = buyItem.GetCurBuyCnt(1, canBuyCnt, isVipBuy, out isReachUpper);
|
| | | }
|
| | |
|
| | | if(buyItem.storeConfig.LimitValue != 0)
|
| | |
| | | int addBuyCnt = 0;
|
| | | bool isLimitCnt = buyItem.CheckIsLimitBuyCnt(buyItem.storeConfig, out canBuyCnt, out addBuyCnt);
|
| | | bool isReachUpper = false;
|
| | | buyCnt = 0;
|
| | | buyCnt = buyItem.GetCurBuyCnt(1, GetRemainBuyCnt(), isVipBuy, out isReachUpper);
|
| | | if (itemAttrData.itemConfig.PackCount > 1)
|
| | | {
|
| | | numberGo.gameObject.SetActive(true);
|
| | |
| | | if (curVipIndex != -1)
|
| | | {
|
| | | buyBtn.gameObject.SetActive(true);
|
| | | buyCnt = buyItem.GetCurBuyCnt(1, canBuyCnt, isVipBuy, out isReachUpper);
|
| | | }
|
| | | else
|
| | | {
|
| | |
| | | {
|
| | | vipInfoText.gameObject.SetActive(false);
|
| | | buyBtn.gameObject.SetActive(true);
|
| | | buyCnt = buyItem.GetCurBuyCnt(1, canBuyCnt, isVipBuy, out isReachUpper);
|
| | | }
|
| | |
|
| | | buyCountText.text = buyCnt.ToString();
|
| | |
| | | {
|
| | | foreach(var key in shopRedDict.Keys)
|
| | | {
|
| | | if(shopRedDict[key].state != RedPointState.None)
|
| | | StoreConfig storeConfig = Config.Instance.Get<StoreConfig>(key);
|
| | | ItemConfig itemConfig = Config.Instance.Get<ItemConfig>(storeConfig.ItemID);
|
| | | switch (itemConfig.Type)
|
| | | {
|
| | | string record = StringUtility.Contact(PlayerDatas.Instance.baseData.PlayerID, "ShopId",key);
|
| | | shopRedDict[key].state = RedPointState.None;
|
| | | LocalSave.SetBool(record, false);
|
| | | case 26:
|
| | | case 41:
|
| | | if (shopRedDict[key].state != RedPointState.None)
|
| | | {
|
| | | string record = StringUtility.Contact(PlayerDatas.Instance.baseData.PlayerID, "ShopId", key);
|
| | | shopRedDict[key].state = RedPointState.None;
|
| | | LocalSave.SetBool(record, false);
|
| | | }
|
| | | break;
|
| | | }
|
| | | |
| | | }
|
| | | }
|
| | |
|
| | |
| | |
|
| | | private float delayTime = 2f;
|
| | | private bool isGetNewItem = false;
|
| | | public bool isStartDecompose { get; set; }
|
| | | public bool isStartOneKeySell { get; set; }
|
| | |
|
| | | private void Awake()
|
| | | {
|
| | |
| | | DeadModel.playerDieEvent += OnPlayerDie;
|
| | | m_storeModel.RefreshBuyResultEvent += RefreshBuySuccess;
|
| | | DeadModel.CloseRebornWinEvent += PlayerRebornSuccess;
|
| | | playerPack.RefreshDecomAttrAct += DecomposeSuccess;
|
| | | DTC0721_tagMakeItemAnswer.MakeItemAnswerEvent += OneKeySellSuccess;
|
| | | }
|
| | |
|
| | | |
| | | public void Begin()
|
| | | {
|
| | |
|
| | | isStartDecompose = false;
|
| | | isStartOneKeySell = false;
|
| | | }
|
| | |
|
| | | float secondTimer = 0;
|
| | | float halfSecondTimer = 0;
|
| | | float autoSellCoolTimer = 0;
|
| | | float autoDecomposeCoolTimer = 0;
|
| | | private void LateUpdate()
|
| | | {
|
| | | if (!(StageManager.Instance.CurrentStage is DungeonStage))
|
| | |
| | | }
|
| | | }
|
| | |
|
| | | if(isStartDecompose)
|
| | | {
|
| | | autoDecomposeCoolTimer += Time.deltaTime;
|
| | | if(autoDecomposeCoolTimer >= 5f)
|
| | | {
|
| | | autoDecomposeCoolTimer = 0;
|
| | | isStartDecompose = false;
|
| | | }
|
| | | }
|
| | |
|
| | | if (isStartOneKeySell)
|
| | | {
|
| | | autoSellCoolTimer += Time.deltaTime;
|
| | | if (autoSellCoolTimer >= 5f)
|
| | | {
|
| | | autoSellCoolTimer = 0;
|
| | | isStartOneKeySell = false;
|
| | | }
|
| | | }
|
| | |
|
| | | if (secondTimer >= 1f)
|
| | | {
|
| | | secondTimer = 0f;
|
| | | RefreshBagItem();
|
| | | }
|
| | | |
| | | }
|
| | |
|
| | | private void PlayerRebornSuccess()
|
| | |
| | | isPlayerDie = false;
|
| | | }
|
| | |
|
| | | private void OneKeySellSuccess(H0721_tagMakeItemAnswer obj)
|
| | | {
|
| | | if (obj.MakeType != (byte)MakeType.Def_mitKeySell)
|
| | | return;
|
| | |
|
| | | isStartOneKeySell = false;
|
| | | }
|
| | |
|
| | | private void DecomposeSuccess()
|
| | | {
|
| | | isStartDecompose = false;
|
| | | }
|
| | |
|
| | | public bool GetSettingEffect()
|
| | | {
|
| | |
| | | {
|
| | | if (playerPack.GetReaminGridCount(PackType.rptItem) < 5 && modelInterface.isPackResetOk)
|
| | | {
|
| | | if (HangUpSetModel.Instance.GetBool(HangUpAutoBoolType.isAutoDevour))
|
| | | if (HangUpSetModel.Instance.GetBool(HangUpAutoBoolType.isAutoDevour) && !isStartDecompose)
|
| | | {
|
| | | if(playerPack.IsReachMinDecomposeNum())
|
| | | {
|
| | |
| | | }
|
| | | }
|
| | |
|
| | | if (HangUpSetModel.Instance.GetBool(HangUpAutoBoolType.isAutoSell) && modelInterface.GetSellItemList().Count > 0)
|
| | | if (HangUpSetModel.Instance.GetBool(HangUpAutoBoolType.isAutoSell) |
| | | && !isStartOneKeySell
|
| | | && modelInterface.GetSellItemList().Count > 0)
|
| | | {
|
| | | modelInterface.SendOneKeySellQuest(modelInterface.GetSellItemList());
|
| | | return;
|
| | |
| | | m_Slider.slider.onValueChanged.AddListener(OnSliderValueUpdate);
|
| | | NewBieCenter.Instance.guideCompletedEvent += GuideCompletedEvent;
|
| | | FuncOpen.Instance.OnFuncStateChangeEvent += OnFuncStateChangeEvent;
|
| | | model.skillLevelUpRedpointUpdate += SkillLevelUpRedpointUpdate;
|
| | | m_DragSelect.onDragComplete += onDragComplete;
|
| | |
|
| | | CameraManager.uiCamera.enabled = true;
|
| | |
| | | model.treasureStateChangeEvent -= TreasureStateChangeEvent;
|
| | | FuncOpen.Instance.OnFuncStateChangeEvent -= OnFuncStateChangeEvent;
|
| | | m_DragSelect.onDragComplete -= onDragComplete;
|
| | | model.skillLevelUpRedpointUpdate -= SkillLevelUpRedpointUpdate;
|
| | | m_Slider.slider.onValueChanged.RemoveAllListeners();
|
| | | m_TreasurePotential.Dispose();
|
| | | m_AchievementScroll.Dispose();
|
| | |
| | | UpdateLevelUpSfx(false);
|
| | | }
|
| | | }
|
| | | if (_id == TreasureModel.CATEGORY_REDPOINTIDS[(int)TreasureCategory.Human - 1])
|
| | | {
|
| | | var skillLevelUpRedpointTreasure = model.GetSkillLevelUpRedpointTreasure();
|
| | | m_LeftRedpoint.gameObject.SetActive(skillLevelUpRedpointTreasure != 0
|
| | | && model.selectedTreasure > skillLevelUpRedpointTreasure && model.currentCategory == TreasureCategory.Human);
|
| | | m_RightRedpoint.gameObject.SetActive(skillLevelUpRedpointTreasure != 0
|
| | | && model.selectedTreasure < skillLevelUpRedpointTreasure && model.currentCategory == TreasureCategory.Human);
|
| | | }
|
| | | }
|
| | |
|
| | | private void SkillLevelUpRedpointUpdate()
|
| | | {
|
| | | var skillLevelUpRedpointTreasure = model.GetSkillLevelUpRedpointTreasure();
|
| | | m_LeftRedpoint.gameObject.SetActive(skillLevelUpRedpointTreasure != 0
|
| | | && model.selectedTreasure > skillLevelUpRedpointTreasure && model.currentCategory == TreasureCategory.Human);
|
| | | m_RightRedpoint.gameObject.SetActive(skillLevelUpRedpointTreasure != 0
|
| | | && model.selectedTreasure < skillLevelUpRedpointTreasure && model.currentCategory == TreasureCategory.Human);
|
| | | }
|
| | |
|
| | | protected override void LateUpdate()
|
| | |
| | | public event Action<int> treasureLevelProgressUpdateEvent;
|
| | | public event Action<int> treasureStageUpEvent;
|
| | | public event Action<int> humanTreasureStateChangeEvent;
|
| | | public event Action skillLevelUpRedpointUpdate;
|
| | |
|
| | | bool m_WaitOpenDetailsWin = false;
|
| | | public bool waitOpenDetailsWin {
|
| | |
| | | {
|
| | | treasure.skillLevelUpRedpoint.state = RedPointState.Simple;
|
| | | treasure.autoSelectPotential = k;
|
| | | if (skillLevelUpRedpointUpdate != null)
|
| | | {
|
| | | skillLevelUpRedpointUpdate();
|
| | | }
|
| | | return;
|
| | | }
|
| | | }
|
| | |
| | | var itemConfig = Config.Instance.Get<ItemConfig>(item.id);
|
| | | var itemColor = itemConfig.ItemColor;
|
| | | if (minCostItemColor == 0 || itemColor < minCostItemColor ||
|
| | | (itemColor == minCostItemColor && minCostItemCount < item.count))
|
| | | (itemColor == minCostItemColor && item.count < minCostItemCount))
|
| | | {
|
| | | minCostItemColor = itemColor;
|
| | | minCostItemCount = item.count;
|
| | |
| | | treasures[minCostTreasure].skillLevelUpRedpoint.state = RedPointState.Simple;
|
| | | treasures[minCostTreasure].autoSelectPotential = minCostPotentialIndex;
|
| | | }
|
| | | }
|
| | | if (skillLevelUpRedpointUpdate != null)
|
| | | {
|
| | | skillLevelUpRedpointUpdate();
|
| | | }
|
| | | }
|
| | |
|
| | |
| | | }
|
| | | }
|
| | | }
|
| | | UpdateSkillLevelUpRedpoints();
|
| | | }
|
| | |
|
| | | public void HumanTreasureStateChange(int _id)
|
| | |
| | | if (_id == 82)
|
| | | {
|
| | | m_ContainerLock.gameObject.SetActive(!FuncOpen.Instance.IsFuncOpen(82));
|
| | | if (FuncOpen.Instance.IsFuncOpen(82))
|
| | | if (FuncOpen.Instance.IsFuncOpen(82) && model.serverInited)
|
| | | {
|
| | | potentialBriefInfos[0].potentialTween.SetStartState();
|
| | | potentialBriefInfos[0].potentialTween.enabled = false;
|
| | | m_TreasureAnimation.UnlockTreasurePotential(0);
|
| | | model.SetPotentialUnlockShow(model.selectedTreasure);
|
| | | }
|
| | | if (!m_SelectTotalEffect)
|
| | | {
|
| | | DisplayPotentialEffect();
|
| | | }
|
| | | }
|
| | | }
|
| | |
| | |
|
| | | private void PotentialLevelUpdate(int _potentialId, int arg2)
|
| | | {
|
| | | if (_potentialId == model.selectedPotential)
|
| | | if (_potentialId == model.selectedPotential && !m_SelectTotalEffect)
|
| | | {
|
| | | DisplayPotentialEffect();
|
| | | }
|
| | |
| | | }
|
| | | }
|
| | |
|
| | | var levelUpConfig = GetPotentialLevelUpConfig();
|
| | | if (!ContainsPotentialBook(model.selectedPotentialBook))
|
| | | if(_potentialId == model.selectedPotential && !m_SelectTotalEffect)
|
| | | {
|
| | | AutoSelectPotentialBook();
|
| | | //model.selectedPotentialBook = 0;
|
| | | var levelUpConfig = GetPotentialLevelUpConfig();
|
| | | if (!ContainsPotentialBook(model.selectedPotentialBook))
|
| | | {
|
| | | AutoSelectPotentialBook();
|
| | | }
|
| | |
|
| | | var curconfig = Config.Instance.Get<SkillConfig>(potential.id);
|
| | |
|
| | | var level = potential.level;
|
| | | var isMax = level >= curconfig.SkillMaxLV;
|
| | | m_ContainerUpgrade.gameObject.SetActive(!isMax && FuncOpen.Instance.IsFuncOpen(82));
|
| | | }
|
| | |
|
| | | var curconfig = Config.Instance.Get<SkillConfig>(potential.id);
|
| | |
|
| | | var level = potential.level;
|
| | | var isMax = level >= curconfig.SkillMaxLV;
|
| | | m_ContainerUpgrade.gameObject.SetActive(!isMax && FuncOpen.Instance.IsFuncOpen(82));
|
| | |
|
| | | }
|
| | |
|
| | | private void OnPotentialLevelUp(int _treasureId, int _potential, bool _ok)
|