public void ResultRestList(EmailView v) { EmailData.EmailType type = v.data.type; if (v != null) { switch (type) { case EmailData.EmailType.ReadDel: v.data.isRead = false; if (v.data.isRevice == false) { mailNum--; Destroy(v.gameObject); viewList.Remove(v); } break; case EmailData.EmailType.Read: v.data.isRead = false; if (v.data.isRevice == false) { v.SetReadState(false); } break; } } if (grid != null) { grid.Reposition(); scroll.ResetPosition(); grid.repositionNow = true; } SetInfo(); }
void UpdatePlayerListUI(string playerName, bool addPlayer) { if (playerList == null) { playerList = GameObject.Find("PlayerList").GetComponent <UITable>(); } //Fancy Linq magic: Basically just checks if the playername given exists in the players list generated above. bool playerAlreadyExists = playerNamesList.Exists(e => e.text == playerName); if (addPlayer && !playerAlreadyExists) { GameObject playerLabel = (GameObject)Instantiate(playerListPlayerPrefab); playerLabel.transform.parent = playerList.transform; playerLabel.transform.localScale = Vector3.one; playerLabel.transform.Find("PlayerName").GetComponent <UILabel>().text = playerName; playerLabel.transform.Find("PlayerName").GetComponent <UILabel>().depth = 12; playerList.Reposition(); var fixZPos = playerLabel.transform.localPosition; fixZPos.z = 0f; playerLabel.transform.localPosition = fixZPos; //Populate our list of player objects. playerNamesList.Add(playerLabel.transform.Find("PlayerName").GetComponent <UILabel>()); } else if (!addPlayer && playerAlreadyExists) { //More Linq magic: It finds the entry in players that matches playerName var playerLabelObj = playerNamesList.Find(e => e.text == playerName); playerNamesList.Remove(playerLabelObj); Destroy(playerLabelObj.transform.parent.gameObject); playerList.Reposition(); } }
private void AddItem(GameObject prefab) { if (items.Count < 3) { GameObject justAdded = NGUITools.AddChild(tableObj, prefab); Item newItem = justAdded.GetComponent <Item>(); newItem.postMaker = this; //temp newItem.rawImage = tempImage; //resize all items and return new item width int rawWidth = GetNewItemWidth(); //set the new items width newItem.SetWidth(rawWidth, (int)(table.padding.x * 2), textInset); //add the item to the list string newKey = items.Count.ToString(); newItem.SetOrder((string)newKey); items.Add(newKey, newItem); //sort the table table.Reposition(); SimpleUpdateLayout(); } }
void RefreshServerList() { RemoveAllFromServerList(); RoomInfo[] rooms = PhotonNetwork.GetRoomList(); if (rooms != null && rooms.Length > 0) { foreach (var room in rooms) { var serverEntryGO = (GameObject)Instantiate(serverEntryPrefab); //Set the labels to the info from the roominfo. serverEntryGO.GetComponent <UIServerButton>().serverName = room.name; serverEntryGO.transform.Find("ServerName").GetComponent <UILabel>().text = room.name; serverEntryGO.transform.Find("NoOfPlayers").GetComponent <UILabel>().text = room.maxPlayers + "/" + room.playerCount; serverEntryGO.GetComponent <UIServerButton>().onServerSelectionChange = OnServerSelectionChange; serverEntryGO.transform.parent = serverTable.transform; serverEntryGO.GetComponent <UIServerButton>().radioButtonRoot = serverTable.transform; var fixZPosition = serverEntryGO.transform.localPosition; fixZPosition.z = -100f; serverEntryGO.transform.localPosition = fixZPosition; //Something is wrong with NGUI. I have to call Reposition and set repositionNow to true for it to do anything for some reason. serverTable.Reposition(); serverTable.repositionNow = true; } } serverTable.Reposition(); }
/// <summary> /// 设置Ip警告信息 /// </summary> /// <param name="data"></param> public void SetIpWarningData(MJGameIpInfo[] data) { int count = data == null ? 0 : data.Length; int len = mTable.transform.childCount; GameObject obj; for (int i = 0; i < count; i++) { if (i < len) { obj = mTable.transform.GetChild(i).gameObject; } else { obj = NGUITools.AddChild(mTable.gameObject, mItem); } obj.SetActive(true); string name = GetPlayerNames(data[i]); obj.GetComponent <UILabel>().text = "玩家 " + @name + " 具有相同的IP地址:" + @data[i].ip; } for (int i = count; i < len; i++) { mTable.transform.GetChild(i).gameObject.SetActive(false); } mTable.Reposition(); }
private void OnFinished() { isPlaying = false; if (uiTable != null) { uiTable.Reposition(); uiTable = null; } }
private void CreateTitle(int index) { GameObject cell_prefab = Resources.Load(NAME_PATH) as GameObject; GameObject cell = NGUITools.AddChild(Content_Table.gameObject, cell_prefab); Content_Table.Reposition(); UpdateTitleUI(cell, index); }
public void InitWindow(List <SMsgChat_SC> list, SelectedChatTargetDelegate callBack) { m_Delegate = callBack; list.ApplyAllItem(p => { this.CreateChatItem(p); }); Table.Reposition(); StartCoroutine("SetDragAmount"); }
void CreateListSMSRecharge() { List <RechargeModel> smsRecharge = GameManager.Instance.ListRechargeModel.FindAll(m => m.Type == "sms"); foreach (RechargeModel model in smsRecharge) { SMSRechargeView.Create(model, tableSMS.gameObject.transform); } tableSMS.Reposition(); StartCoroutine(Reposition()); }
/// <summary> /// Handle new attack event. /// </summary> /// <param name="e">E.</param> void OnNewAttack(EventNewAttack e) { GameObject newAttackTrack = NGUITools.AddChild(table.gameObject, attackTaskTrackPrefab); table.Reposition(); UIAttackProgress progress = newAttackTrack.GetComponent <UIAttackProgress> (); progress.Evt_OnAttackProgressDestroy = OnAttackProgressDestroy; progress.TrackAttackTask(e.newAttackTask); }
public override void Show() { if (!Application.isEditor && !GameConfig.IsMultiMode) { return; } // mInputWnd.SetActive(false); base.Show(); mOpBtnCol.Reset(); mOpBtnCol.enabled = false; mListTable.Reposition(); }
public void ReFresh(ShopItemType mType) { SetPanel(mType); if (mType != ShopItemType.Active) { NormalShopRefresh(mType); } else { ActiveShopRefresh(mType); } mScrollView.verticalScrollBar.value = 0.0f; mGrid.Reposition(); }
private void ScreenSizeChanged() { if (gridMessageSystem.gameObject.activeSelf) { gridMessageSystem.transform.parent.GetComponent <UIScrollView>().ResetPosition(); } if (gridFriend.gameObject.activeSelf) { gridFriend.Reposition(); } if (gridInvited.gameObject.activeSelf) { gridInvited.Reposition(); } }
public void AddLiLianRunView(LiLianRunData r) { r.state = 0; GameObject obj = Instantiate(runPrefabe); obj.SetActive(true); LiLianRunView pop = obj.GetComponent<LiLianRunView>(); pop.InitData(r); r.view = obj.GetComponent<UILabel>(); pop.time.text = Comm.DateDiffHour(DateTime.Now,r.time); pop.transform.parent = timeTable.transform; pop.transform.localScale = Vector3.one; runViewList.Add(pop); timeTable.Reposition(); timeTable.repositionNow = true; }
public void SetRuleViewInfo(ISFSObject gameInfo) { if (ItemPrefab == null) { return; } if (!gameInfo.ContainsKey("rule") || !App.GetGameData <TexasGameData>().IsRoomGame) { gameObject.SetActive(false); return; } _initialSize = ViewWidget.localSize; float shiftY = 0; gameObject.SetActive(true); string ruleInfo = gameInfo.GetUtfString("rule"); var ruleSplit = ruleInfo.Split(';'); int len = ruleSplit.Length; for (int i = 0; i < len; i++) { var info = ruleSplit[i].Split(':'); var go = CreateItem(); go.SetRuleItem(info[0], info[1]); shiftY += go.ItemHeight; } shiftY += BgBottomSpace; ViewWidget.height = (int)(Mathf.Max(_initialSize.y, shiftY)); Table.repositionNow = true; Table.Reposition(); }
public override IEnumerator OnAddToStack() { if (isFirst) { Notices = (List <NoticeItem>)mParam; for (int i = 0; i < Notices.Count; i++) { GameObject titleInstance = GameObject.Instantiate(titleGameObj.mDMono.gameObject, titleUiTable.transform); titleInstance.GetMonoILRComponent <NoticeTitleController>().SetText(Notices[i].type); _titleControllers.Add(titleInstance.GetMonoILRComponent <NoticeTitleController>()); } titleUiTable.Reposition(); isFirst = false; } yield return(base.OnAddToStack()); //进入默认设置第一条公告 if (Notices.Count > 0) { SetTitleAndContent(0); } titleScrollView.enabled = (Notices.Count > 5); }
public void OnShow() { CheckSocketConnect(); mUITable2.Reposition(); SetFreeNum(MessageMgr.GetInstance()._NowCount); MessageMgr.GetInstance().ShowChatList(); }
public virtual void SetRuleViewInfo(ISFSObject gameInfo) { if (ItemPrefab == null) { return; } Table.transform.DestroyChildren(); if (!gameInfo.ContainsKey("rule")) { gameObject.SetActive(false); return; } string ruleInfo = gameInfo.GetUtfString("rule"); if (string.IsNullOrEmpty(ruleInfo)) { gameObject.SetActive(false); return; } gameObject.SetActive(true); var ruleSplit = ruleInfo.Split(';'); int len = ruleSplit.Length; for (int i = 0; i < len; i++) { var info = ruleSplit[i].Split(':'); var go = CreateItem(); go.SetRuleItem(info[0], info[1]); } Table.repositionNow = true; Table.Reposition(); }
private void UpdatePresetNameList(List <string> presetNames) { for (var i = 0; i < _uiLabelPool.Count; i++) { _uiLabelPool[i].gameObject.SetActive(false); } if (presetNames == null) { return; } for (var i = 0; i < presetNames.Count; i++) { UILabel lab; if (i < _uiLabelPool.Count) { lab = _uiLabelPool[i]; } else { lab = Object.Instantiate(_goItem, _uiTable.transform).GetComponent <UILabel>(); _uiLabelPool.Add(lab); } lab.text = presetNames[i]; lab.gameObject.SetActive(true); } _uiTable.Reposition(); }
public void SetTable(ref Hashtable list) { while (table.transform.childCount > 0) { DestroyImmediate(table.transform.GetChild(0).gameObject); } viewList = new Hashtable(); //System.Collections.IDictionaryEnumerator enumerator = list.GetEnumerator(); //while (enumerator.MoveNext()) //{ foreach (RoleData r in UserManager.Instance.RoleTable.Values) { //RoleData r = vv as RoleData;//UserManager.Instance.RoleTable[enumerator.Key] as RoleData; GameObject obj = Instantiate(rolePrefabe); obj.SetActive(true); HeadRole pop = obj.GetComponent <HeadRole>(); obj.name = r.sort.ToString(); pop.InitData(r); pop.transform.parent = table.transform; pop.transform.localScale = Vector3.one; viewList.Add(r.sort, pop); } table.Reposition(); scroll.ResetPosition(); table.repositionNow = true; }
private void GenerateView() { Debug.Log("GenerateView"); //sceneIdList.Clear(); List <Scene> scenes = dataSource(itemViewList.Count, ITEM_COUNT); for (int i = 0; i < scenes.Count; ++i) { SceneItemView itemView = SceneItemView.Create(table, scenes[i]); UIEventListener.Get(itemView.gameObject).onClick = ItemClick; itemViewList.Add(itemView); /*Picture picture = LogicController.GetPicture(scenes[i].pictureId); * if (picture == null) { * sceneIdList.Add(scenes[i].sceneId); * } * else { * Asset asset = LogicController.GetAsset(picture.assetId); * if (asset == null) { * sceneIdList.Add(scenes[i].sceneId); * } * }*/ } tableComp.Reposition(); /*if (sceneIdList.Count != 0) { * GetSceneSnapshotCommand cmd = new GetSceneSnapshotCommand(); * cmd.SceneIds = sceneIdList; * cmd.Callback = AfterGetSnapshot; * cmd.execute(); * }*/ }
void OnLevelWasLoaded(int levelIndex) { Debug.Log("LOADED LEVEL: " + levelIndex); if (levelIndex == 0 && PhotonNetwork.connected) { PhotonNetwork.isMessageQueueRunning = true; UITable table = GameObject.Find("LoadingTable").GetComponent <UITable>(); foreach (var player in PhotonNetwork.playerList) { GameObject loadingStatusGO = (GameObject)GameObject.Instantiate((GameObject)Resources.Load("LoadingScreen_Player")); loadingStatusGO.transform.parent = table.transform; loadingStatusGO.transform.Find("Label").GetComponent <UILabel>().text = player.name; table.Reposition(); playerLoadingBars.Add(loadingStatusGO.transform.Find("Progress Bar(Networked)").GetComponent <UISlider>()); } } else if (levelIndex == 1) { StateMachine.ChangeState(FrontMenu.Instance); } else { StateMachine.ChangeState(InGame.Instance); } }
IEnumerator _CreateListFriend(string friendName) { while (listFriend.Count > 0) { GameObject.Destroy(listFriend[0]); listFriend.RemoveAt(0); } tableFriend.repositionNow = true; yield return(new WaitForEndOfFrame()); int indexDraw = 0; List <User> lstFriend = string.IsNullOrEmpty(friendName) ? GameManager.Instance.mInfo.buddies : GameManager.Instance.mInfo.buddies.FindAll(u => u.username.IndexOf(friendName) >= 0); foreach (User user in lstFriend) { indexDraw++; GameObject obj = (GameObject)GameObject.Instantiate(Resources.Load("Prefabs/HeaderMenu/Message/ProfileFriendPrefab")); obj.name = string.Format("{0:00000} list friend", indexDraw) + " " + user.username; obj.transform.parent = tableFriend.transform; obj.transform.localPosition = new Vector3(0f, 0f, -1f); obj.transform.localScale = Vector3.one; obj.GetComponent <PrefabProfileFriendListItemView>().SetData(user); obj.GetComponent <PrefabProfileFriendListItemView>().tabFriend = this; Utility.AddCollider(obj); listFriend.Add(obj); } tableFriend.Reposition(); tableFriend.transform.parent.GetComponent <UIAnchor> ().ScreenSizeChanged(); tableFriend.transform.parent.parent.GetComponent <UIScrollView> ().UpdateScrollbars(true); }
void SetList(List <ItemViewData> list) { while (table.transform.childCount > 0) { DestroyImmediate(table.transform.GetChild(0).gameObject); } viewList = new List <ItemView>(); for (int index = 0; index < list.Count; index++) { //设置格子 GameObject obj = Instantiate(itemPrefab); obj.SetActive(true); ItemView pop = obj.GetComponent <ItemView>(); ItemViewData data = null; if (index < list.Count) { data = list[index]; if (data != null) { } } else { obj.name = "None"; } pop.InitData(data, index); pop.transform.parent = table.transform; pop.transform.localScale = Vector3.one; viewList.Add(pop); } table.Reposition(); table.repositionNow = true; }
// Update is called once per frame void Update() { if (IsOnDrapTop) { OnDrapTop(); } if (IsOnDrapRight) { OnDrapRight(); } UpdateCliderTrans(); if (IsWndMove) { UpdateWndMove(); } UpdateScollValue(); if (m_RepositionCount > 0) { m_ContentTable.Reposition(); mScrollBar.scrollValue = 1; --m_RepositionCount; } }
private void CheckButtons() { var lives = _livesManager.LivesCount; if (lives == 0) { NGUITools.SetActive(useButton.gameObject, false); } else { NGUITools.SetActive(useButton.gameObject, true); } if (lives == _livesManager.MaxLivesCount) { NGUITools.SetActive(refillButton.gameObject, false); NGUITools.SetActive(timerLabel.gameObject, false); } else { NGUITools.SetActive(refillButton.gameObject, true); NGUITools.SetActive(timerLabel.gameObject, true); } contentTable.Reposition(); }
void AddItems() { for (int i = 0; i < mInitItemNum; ++i) { for (int j = 0; j < mItemPrefab.Length; ++j) { GameObject go = GameObject.Instantiate(mItemPrefab[j]) as GameObject; go.transform.parent = mContainerTrans; go.transform.localPosition = new Vector3(0, 0, 0); go.transform.localScale = new Vector3(1, 1, 1); mItemList.Add(go); } } switch (mTestType) { case GRID_OR_TABLE.TEST_TABLE: mTable.Reposition(); break; case GRID_OR_TABLE.TEST_GRID: mGrid.Reposition(); break; default: break; } mScrollView.ResetPosition(); }
public void SetTable(ref Hashtable list) { while (table.transform.childCount > 0) { DestroyImmediate(table.transform.GetChild(0).gameObject); } viewList = new Hashtable(); foreach (RoleData r in UserManager.Instance.RoleTable.Values) { //RoleData r = vv as RoleData;//UserManager.Instance.RoleTable[enumerator.Key] as RoleData; if (r.is_possessed) { GameObject obj = Instantiate(rolePrefabe); obj.SetActive(true); ArenaRoleHeadView pop = obj.GetComponent <ArenaRoleHeadView>(); obj.name = r.csv_id.ToString(); pop.InitData(r); pop.transform.parent = table.transform; pop.transform.position = Vector3.zero; pop.transform.localScale = Vector3.one; viewList.Add(r.csv_id, pop); } } table.Reposition(); scroll.ResetPosition(); table.repositionNow = true; }
private void Start() { BeanManager bean = BeanManager.instance; UITable com = transform.GetComponent <UITable>(); com.repositionNow = true; for (int i = 0; i < m_StageIndex; i++) { GameObject obj = NGUITools.AddChild(com.gameObject, m_obj); m_ListObj.Add(obj); if (PlayerPrefs.GetString(bean.StageKey()[i]) == "Open") { obj.transform.FindChild("Label").GetComponent <UILabel>().text = string.Format("{0}", i + 1); } else { obj.transform.FindChild("Label").GetComponent <UILabel>().text = string.Format("잠금"); } com.Reposition(); } // PlayerPrefs.DeleteAll(); }
// Use this for initialization void Start() { for (int i = 0; i < 15; i++) { UISprite obj = Instantiate <UISprite>(missionPrefab); obj.transform.GetChild(0).GetComponent <UILabel>().text = (i + 1).ToString(); if (i > 2) { obj.spriteName = "蓝色展示框"; } obj.transform.parent = Table.transform; obj.transform.localPosition = new Vector3(0, 0, 0); obj.transform.localScale = new Vector3(1, 1, 1); obj.name = (i + 1).ToString(); if (i < 2)//only two { UIEventListener.Get(obj.gameObject).onClick = delegate(GameObject clicked) { baseController.missionToLoad = int.Parse(clicked.name); SceneManager.LoadSceneAsync("hint"); }; } } Table.Reposition(); }
public static void IntilizationTables(UITable table, int number, GameObject itemPre, List<GameObject> list) { for (int i = 0; i < number; i++) { GameObject gameO = (GameObject)GameObject.Instantiate(itemPre); gameO.transform.parent = table.transform; gameO.transform.localScale = Vector3.one; gameO.transform.localPosition = Vector3.one; gameO.SetActive(true); gameO.name = i.ToString(); list.Add(gameO); } Utility.instance.WaitForSecs(0.02f, () => { if(table != null) table.Reposition(); }); }
private bool initialize() { try{ maid = GameMain.Instance.CharacterMgr.GetMaid(0); if (maid == null) return false; UIAtlas uiAtlasSceneEdit = FindAtlas("AtlasSceneEdit"); UIAtlas uiAtlasDialog = FindAtlas("SystemDialog"); GameObject goUIRoot = GameObject.Find("UI Root"); GameObject cameraObject = GameObject.Find("/UI Root/Camera"); Camera cameraComponent = cameraObject.GetComponent<Camera>(); uiCamara = cameraObject.GetComponent<UICamera>(); #region createSlider // スライダー作成 GameObject goTestSliderUnit = new GameObject("TestSliderUnit"); SetChild(goUIRoot, goTestSliderUnit); { UISprite uiTestSliderUnitFrame = goTestSliderUnit.AddComponent<UISprite>(); uiTestSliderUnitFrame.atlas = uiAtlasSceneEdit; uiTestSliderUnitFrame.spriteName = "cm3d2_edit_slidertitleframe"; uiTestSliderUnitFrame.type = UIBasicSprite.Type.Sliced; uiTestSliderUnitFrame.SetDimensions(500, 50); // スライダー作成 UISlider uiTestSlider = NGUITools.AddChild<UISlider>(goTestSliderUnit); UISprite uiTestSliderRail = uiTestSlider.gameObject.AddComponent<UISprite>(); uiTestSliderRail.name = "Slider"; uiTestSliderRail.atlas = uiAtlasSceneEdit; uiTestSliderRail.spriteName = "cm3d2_edit_slideberrail"; uiTestSliderRail.type = UIBasicSprite.Type.Sliced; uiTestSliderRail.SetDimensions(250, 5); UIWidget uiTestSliderBar = NGUITools.AddChild<UIWidget>(uiTestSlider.gameObject); uiTestSliderBar.name = "DummyBar"; uiTestSliderBar.width = uiTestSliderRail.width; UISprite uiTestSliderThumb = NGUITools.AddChild<UISprite>(uiTestSlider.gameObject); uiTestSliderThumb.name = "Thumb"; uiTestSliderThumb.depth = uiTestSliderRail.depth + 1; uiTestSliderThumb.atlas = uiAtlasSceneEdit; uiTestSliderThumb.spriteName = "cm3d2_edit_slidercursor"; uiTestSliderThumb.type = UIBasicSprite.Type.Sliced; uiTestSliderThumb.SetDimensions(25, 25); uiTestSliderThumb.gameObject.AddComponent<BoxCollider>(); uiTestSlider.backgroundWidget = uiTestSliderRail; uiTestSlider.foregroundWidget = uiTestSliderBar; uiTestSlider.thumb = uiTestSliderThumb.gameObject.transform; uiTestSlider.value = 0.5f; uiTestSlider.gameObject.AddComponent<BoxCollider>(); uiTestSlider.transform.localPosition = new Vector3(100f, 0f, 0f); NGUITools.UpdateWidgetCollider(uiTestSlider.gameObject); NGUITools.UpdateWidgetCollider(uiTestSliderThumb.gameObject); // スライダーラベル作成 UILabel uiTestSliderLabel = NGUITools.AddChild<UILabel>(goTestSliderUnit); uiTestSliderLabel.name = "Label"; uiTestSliderLabel.trueTypeFont = font; uiTestSliderLabel.fontSize = 20; uiTestSliderLabel.text = "テストスライダー"; uiTestSliderLabel.width = 110; uiTestSliderLabel.overflowMethod = UILabel.Overflow.ShrinkContent; uiTestSliderLabel.transform.localPosition = new Vector3(-190f, 0f, 0f); // 値ラベル・インプット作成 UISprite uiTestSliderValueBase = NGUITools.AddChild<UISprite>(goTestSliderUnit); uiTestSliderValueBase.name = "ValueBase"; uiTestSliderValueBase.atlas = uiAtlasSceneEdit; uiTestSliderValueBase.spriteName = "cm3d2_edit_slidernumberframe"; uiTestSliderValueBase.type = UIBasicSprite.Type.Sliced; uiTestSliderValueBase.SetDimensions(80, 35); uiTestSliderValueBase.transform.localPosition = new Vector3(-90f, 0f, 0f); UILabel uiTestSliderValueLabel = NGUITools.AddChild<UILabel>(uiTestSliderValueBase.gameObject); uiTestSliderValueLabel.name = "Value"; uiTestSliderValueLabel.depth = uiTestSliderValueBase.depth + 1; uiTestSliderValueLabel.width = uiTestSliderValueBase.width; uiTestSliderValueLabel.trueTypeFont = font; uiTestSliderValueLabel.fontSize = 20; uiTestSliderValueLabel.text = "0.00"; uiTestSliderValueLabel.color = Color.black; UIInput uiTestSliderValueInput = uiTestSliderValueLabel.gameObject.AddComponent<UIInput>(); uiTestSliderValueInput.label = uiTestSliderValueLabel; uiTestSliderValueInput.onReturnKey = UIInput.OnReturnKey.Submit; uiTestSliderValueInput.validation = UIInput.Validation.Float; uiTestSliderValueInput.activeTextColor = Color.black; uiTestSliderValueInput.caretColor = new Color(0.1f, 0.1f, 0.3f, 1f); uiTestSliderValueInput.selectionColor = new Color(0.3f, 0.3f, 0.6f, 0.8f); //EventDelegate.Add(uiTestSliderValueInput.onSubmit, new EventDelegate.Callback(this.OnSubmitSliderValueInput)); uiTestSliderValueInput.gameObject.AddComponent<BoxCollider>(); NGUITools.UpdateWidgetCollider(uiTestSliderValueInput.gameObject); } goTestSliderUnit.SetActive(false); #endregion // ボタンはgoProfileTabをコピー GameObject goProfileTabCopy = UnityEngine.Object.Instantiate( FindChild(goUIRoot.transform.Find("ProfilePanel").Find("Comment").gameObject, "ProfileTab") ) as GameObject; EventDelegate.Remove(goProfileTabCopy.GetComponent<UIButton>().onClick, new EventDelegate.Callback(ProfileMgr.Instance.ChangeCommentTab)); goProfileTabCopy.SetActive(false); #region createPanel // ModsSliderPanel作成 Vector3 originAMSPanel = new Vector3(UIRootWidth / 2f - 15f - ScrollViewWidth / 2f - 50f, 40f, 0f); int systemUnitHeight = 30; // 親Panel uiAMSPanel = NGUITools.AddChild<UIPanel>(goUIRoot); uiAMSPanel.name = "ModsSliderPanel"; uiAMSPanel.transform.localPosition = originAMSPanel; goAMSPanel = uiAMSPanel.gameObject; // 背景 UISprite uiBGSprite = NGUITools.AddChild<UISprite>(goAMSPanel); uiBGSprite.name = "BG"; uiBGSprite.atlas = uiAtlasSceneEdit; uiBGSprite.spriteName = "cm3d2_edit_window_l"; uiBGSprite.type = UIBasicSprite.Type.Sliced; uiBGSprite.SetDimensions(ScrollViewWidth, ScrollViewHeight); // ScrollViewPanel uiScrollPanel = NGUITools.AddChild<UIPanel>(goAMSPanel); uiScrollPanel.name = "ScrollView"; uiScrollPanel.sortingOrder = uiAMSPanel.sortingOrder + 1; uiScrollPanel.clipping = UIDrawCall.Clipping.SoftClip; uiScrollPanel.SetRect(0f, 0f, uiBGSprite.width, uiBGSprite.height - 110 - systemUnitHeight); uiScrollPanel.transform.localPosition = new Vector3(-25f, - systemUnitHeight, 0f); goScrollView = uiScrollPanel.gameObject; uiScrollView = goScrollView.AddComponent<UIScrollView>(); uiScrollView.contentPivot = UIWidget.Pivot.Center; uiScrollView.movement = UIScrollView.Movement.Vertical; uiScrollView.scrollWheelFactor = 1.5f; uiBGSprite.gameObject.AddComponent<UIDragScrollView>().scrollView = uiScrollView; uiBGSprite.gameObject.AddComponent<BoxCollider>(); NGUITools.UpdateWidgetCollider(uiBGSprite.gameObject); // ScrollBar uiScrollBar = NGUITools.AddChild<UIScrollBar>(goAMSPanel); uiScrollBar.value = 0f; uiScrollBar.gameObject.AddComponent<BoxCollider>(); uiScrollBar.transform.localPosition = new Vector3(uiBGSprite.width / 2f-10, 0f, 0f); uiScrollBar.transform.localRotation *= Quaternion.Euler(0f, 0f, -90f); UIWidget uiScrollBarFore = NGUITools.AddChild<UIWidget>(uiScrollBar.gameObject); uiScrollBarFore.name = "DummyFore"; uiScrollBarFore.height = 15; uiScrollBarFore.width = uiBGSprite.height; UISprite uiScrollBarThumb = NGUITools.AddChild<UISprite>(uiScrollBar.gameObject); uiScrollBarThumb.name = "Thumb"; uiScrollBarThumb.depth = uiBGSprite.depth + 1; uiScrollBarThumb.atlas = uiAtlasSceneEdit; uiScrollBarThumb.spriteName = "cm3d2_edit_slidercursor"; uiScrollBarThumb.type = UIBasicSprite.Type.Sliced; uiScrollBarThumb.SetDimensions(15, 15); uiScrollBarThumb.gameObject.AddComponent<BoxCollider>(); uiScrollBar.foregroundWidget = uiScrollBarFore; uiScrollBar.thumb = uiScrollBarThumb.transform; NGUITools.UpdateWidgetCollider(uiScrollBarFore.gameObject); NGUITools.UpdateWidgetCollider(uiScrollBarThumb.gameObject); uiScrollView.verticalScrollBar = uiScrollBar; // ScrollView内のTable uiTable = NGUITools.AddChild<UITable>(goScrollView); uiTable.pivot = UIWidget.Pivot.Center; uiTable.columns = 1; uiTable.padding = new Vector2(25f, 10f); uiTable.hideInactive = true; uiTable.keepWithinPanel = true; uiTable.sorting = UITable.Sorting.Custom; uiTable.onCustomSort = (Comparison<Transform>)this.sortGridByXMLOrder; //uiTable.onReposition = this.OnRepositionTable; goScrollViewTable = uiTable.gameObject; //uiScrollView.centerOnChild = goScrollViewTable.AddComponent<UICenterOnChild>(); // ドラッグ用タブ(タイトル部分) UISprite uiSpriteTitleTab = NGUITools.AddChild<UISprite>(goAMSPanel); uiSpriteTitleTab.name = "TitleTab"; uiSpriteTitleTab.depth = uiBGSprite.depth - 1; uiSpriteTitleTab.atlas = uiAtlasDialog; uiSpriteTitleTab.spriteName = "cm3d2_dialog_frame"; uiSpriteTitleTab.type = UIBasicSprite.Type.Sliced; uiSpriteTitleTab.SetDimensions(300, 80); uiSpriteTitleTab.autoResizeBoxCollider = true; uiSpriteTitleTab.gameObject.AddComponent<UIDragObject>().target = goAMSPanel.transform; uiSpriteTitleTab.gameObject.AddComponent<BoxCollider>().isTrigger = true; NGUITools.UpdateWidgetCollider(uiSpriteTitleTab.gameObject); uiSpriteTitleTab.transform.localPosition = new Vector3(uiBGSprite.width / 2f + 5f, (uiBGSprite.height - uiSpriteTitleTab.width) / 2f, 0f); uiSpriteTitleTab.transform.localRotation *= Quaternion.Euler(0f, 0f, -90f); UILabel uiLabelTitleTab = uiSpriteTitleTab.gameObject.AddComponent<UILabel>(); uiLabelTitleTab.depth = uiSpriteTitleTab.depth + 1; uiLabelTitleTab.width = uiSpriteTitleTab.width; uiLabelTitleTab.color = Color.white; uiLabelTitleTab.trueTypeFont = font; uiLabelTitleTab.fontSize = 18; uiLabelTitleTab.text = "Mods Slider " + AddModsSlider.Version; int conWidth = (int)(uiBGSprite.width - uiTable.padding.x * 2); int baseTop = (int)(uiBGSprite.height / 2f - 50); GameObject goSystemUnit = NGUITools.AddChild(goAMSPanel); goSystemUnit.name = ("System:Undo"); // Undoボタン GameObject goUndoAll = SetCloneChild(goSystemUnit, goProfileTabCopy, "UndoAll"); goUndoAll.transform.localPosition = new Vector3(-conWidth * 0.25f - 6, baseTop - systemUnitHeight / 2f, 0f); goUndoAll.AddComponent<UIDragScrollView>().scrollView = uiScrollView; UISprite uiSpriteUndoAll = goUndoAll.GetComponent<UISprite>(); uiSpriteUndoAll.SetDimensions((int)(conWidth * 0.5f) - 2, systemUnitHeight); UILabel uiLabelUndoAll = FindChild(goUndoAll,"Name").GetComponent<UILabel>(); uiLabelUndoAll.width = uiSpriteUndoAll.width - 10; uiLabelUndoAll.fontSize = 22; uiLabelUndoAll.spacingX = 0; uiLabelUndoAll.supportEncoding = true; uiLabelUndoAll.text = "[111111]UndoAll"; UIButton uiButtonUndoAll = goUndoAll.GetComponent<UIButton>(); uiButtonUndoAll.defaultColor = new Color(1f, 1f, 1f, 0.8f); EventDelegate.Set(uiButtonUndoAll.onClick, new EventDelegate.Callback(this.OnClickUndoAll)); FindChild(goUndoAll,"SelectCursor").GetComponent<UISprite>().SetDimensions(16,16); FindChild(goUndoAll,"SelectCursor").SetActive(false); NGUITools.UpdateWidgetCollider(goUndoAll); goUndoAll.SetActive(true); // Resetボタン GameObject goResetAll = SetCloneChild(goSystemUnit, goUndoAll, "ResetAll"); goResetAll.transform.localPosition = new Vector3(conWidth * 0.25f - 4, baseTop - systemUnitHeight / 2f, 0f); UILabel uiLabelResetAll = FindChild(goResetAll,"Name").GetComponent<UILabel>(); uiLabelResetAll.text = "[111111]ResetAll"; UIButton uiButtonResetAll = goResetAll.GetComponent<UIButton>(); uiButtonResetAll.defaultColor = new Color(1f, 1f, 1f, 0.8f); EventDelegate.Set(uiButtonResetAll.onClick, new EventDelegate.Callback(this.OnClickResetAll)); NGUITools.UpdateWidgetCollider(goResetAll); goResetAll.SetActive(true); #endregion // 拡張セーブデータ読込 Debug.Log(LogLabel +"Loading ExternalSaveData..."); Debug.Log("----------------ExternalSaveData----------------"); getExSaveData(); Debug.Log("------------------------------------------------"); #region addTableContents // ModsParamの設定に従ってボタン・スライダー追加 for (int i = 0; i < mp.KeyCount; i++) { string key = mp.sKey[i]; if (!mp.bVisible[key]) continue; uiValueLable[key] = new Dictionary<string, UILabel>(); string modeDesc = mp.sDescription[key] + " (" + key + ")"; // ModUnit:modタグ単位のまとめオブジェクト ScrollViewGridの子 GameObject goModUnit = NGUITools.AddChild(goScrollViewTable); goModUnit.name = ("Unit:" + key); trModUnit[key] = goModUnit.transform; // プロフィールタブ複製・追加 GameObject goHeaderButton = SetCloneChild(goModUnit, goProfileTabCopy, "Header:"+ key); goHeaderButton.SetActive(true); goHeaderButton.AddComponent<UIDragScrollView>().scrollView = uiScrollView; UIButton uiHeaderButton = goHeaderButton.GetComponent<UIButton>(); EventDelegate.Set(uiHeaderButton.onClick, new EventDelegate.Callback(this.OnClickHeaderButton)); setButtonColor(uiHeaderButton, mp.IsToggle(key) ? mp.bEnabled[key] : false ); // 白地Sprite UISprite uiSpriteHeaderButton = goHeaderButton.GetComponent<UISprite>(); uiSpriteHeaderButton.type = UIBasicSprite.Type.Sliced; uiSpriteHeaderButton.SetDimensions(conWidth, 40); UILabel uiLabelHeader = FindChild(goHeaderButton, "Name").GetComponent<UILabel>(); uiLabelHeader.width = uiSpriteHeaderButton.width - 20; uiLabelHeader.height = 30; uiLabelHeader.trueTypeFont = font; uiLabelHeader.fontSize = 22; uiLabelHeader.spacingX = 0; uiLabelHeader.multiLine = false; uiLabelHeader.overflowMethod = UILabel.Overflow.ClampContent; uiLabelHeader.supportEncoding= true; uiLabelHeader.text = "[000000]"+ modeDesc +"[-]"; uiLabelHeader.gameObject.AddComponent<UIDragScrollView>().scrollView = uiScrollView; // 金枠Sprite UISprite uiSpriteHeaderCursor = FindChild(goHeaderButton,"SelectCursor").GetComponent<UISprite>(); uiSpriteHeaderCursor.gameObject.SetActive( mp.IsToggle(key) ? mp.bEnabled[key] : false ); NGUITools.UpdateWidgetCollider(goHeaderButton); // スライダーならUndo/Resetボタンとスライダー追加 if (mp.IsSlider(key)) { uiSpriteHeaderButton.SetDimensions((int)(conWidth*0.8f), 40); uiLabelHeader.width = uiSpriteHeaderButton.width - 20; uiHeaderButton.transform.localPosition = new Vector3(-conWidth*0.1f, 0f, 0f); // Undoボタン GameObject goUndo = SetCloneChild(goModUnit, goProfileTabCopy, "Undo:" + key); goUndo.transform.localPosition = new Vector3(conWidth*0.4f+2, 10.5f, 0f); goUndo.AddComponent<UIDragScrollView>().scrollView = uiScrollView; UISprite uiSpriteUndo = goUndo.GetComponent<UISprite>(); uiSpriteUndo.SetDimensions((int)(conWidth*0.2f)-2, 19); UILabel uiLabelUndo = FindChild(goUndo,"Name").GetComponent<UILabel>(); uiLabelUndo.width = uiSpriteUndo.width - 10; uiLabelUndo.fontSize = 14; uiLabelUndo.spacingX = 0; uiLabelUndo.supportEncoding = true; uiLabelUndo.text = "[111111]Undo"; UIButton uiButtonUndo = goUndo.GetComponent<UIButton>(); uiButtonUndo.defaultColor = new Color(1f, 1f, 1f, 0.8f); EventDelegate.Set(uiButtonUndo.onClick, new EventDelegate.Callback(this.OnClickUndoButton)); FindChild(goUndo,"SelectCursor").GetComponent<UISprite>().SetDimensions(16,16); FindChild(goUndo,"SelectCursor").SetActive(false); NGUITools.UpdateWidgetCollider(goUndo); goUndo.SetActive(true); // Resetボタン GameObject goReset = SetCloneChild(goModUnit, goProfileTabCopy, "Reset:" + key); goReset.AddComponent<UIDragScrollView>().scrollView = uiScrollView; goReset.transform.localPosition = new Vector3(conWidth*0.4f+2, -10.5f, 0f); UISprite uiSpriteReset = goReset.GetComponent<UISprite>(); uiSpriteReset.SetDimensions((int)(conWidth*0.2f)-2, 19); UILabel uiLabelReset = FindChild(goReset,"Name").GetComponent<UILabel>(); uiLabelReset.width = uiSpriteReset.width - 10; uiLabelReset.fontSize = 14; uiLabelReset.spacingX = 0; uiLabelReset.supportEncoding = true; uiLabelReset.text = "[111111]Reset"; UIButton uiButtonReset = goReset.GetComponent<UIButton>(); uiButtonReset.defaultColor = new Color(1f, 1f, 1f, 0.8f); EventDelegate.Set(uiButtonReset.onClick, new EventDelegate.Callback(this.OnClickResetButton)); FindChild(goReset,"SelectCursor").GetComponent<UISprite>().SetDimensions(16,16); FindChild(goReset,"SelectCursor").SetActive(false); NGUITools.UpdateWidgetCollider(goReset); goReset.SetActive(true); for (int j=0; j<mp.ValCount(key); j++) { string prop = mp.sPropName[key][j]; if (!mp.bVVisible[key][prop]) continue; float value = mp.fValue[key][prop]; float vmin = mp.fVmin[key][prop]; float vmax = mp.fVmax[key][prop]; string label = mp.sLabel[key][prop]; string vType = mp.sVType[key][prop]; // スライダーをModUnitに追加 GameObject goSliderUnit = SetCloneChild(goModUnit, goTestSliderUnit, "SliderUnit"); goSliderUnit.transform.localPosition = new Vector3(0f, j * - 70f - uiSpriteHeaderButton.height-20f, 0f); goSliderUnit.AddComponent<UIDragScrollView>().scrollView = uiScrollView; // フレームサイズ goSliderUnit.GetComponent<UISprite>().SetDimensions(conWidth, 50); // スライダー設定 UISlider uiModSlider = FindChild(goSliderUnit,"Slider").GetComponent<UISlider>(); uiModSlider.name = "Slider:"+ key +":"+ prop; uiModSlider.value = codecSliderValue(key, prop); if (vType == "int") uiModSlider.numberOfSteps = (int)(vmax - vmin + 1); EventDelegate.Add(uiModSlider.onChange, new EventDelegate.Callback(this.OnChangeSlider)); // スライダーラベル設定 FindChild(goSliderUnit,"Label").GetComponent<UILabel>().text = label; FindChild(goSliderUnit,"Label").AddComponent<UIDragScrollView>().scrollView = uiScrollView; // スライダー値ラベル参照取得 GameObject goValueLabel = FindChild(goSliderUnit,"Value"); goValueLabel.name = "Value:"+ key +":"+ prop; uiValueLable[key][prop] = goValueLabel.GetComponent<UILabel>(); uiValueLable[key][prop].multiLine = false; EventDelegate.Set(goValueLabel.GetComponent<UIInput>().onSubmit, this.OnSubmitSliderValueInput); // スライダー有効状態設定 //goSliderUnit.SetActive( !mp.IsToggle(key) || mp.bEnabled[key] && mp.CheckWS(key) ); goSliderUnit.SetActive(false); } } // 金枠Sprite uiSpriteHeaderCursor.type = UIBasicSprite.Type.Sliced; uiSpriteHeaderCursor.SetDimensions(uiSpriteHeaderButton.width - 4, uiSpriteHeaderButton.height - 4); } #endregion uiTable.Reposition(); goAMSPanel.SetActive(false); //WriteTrans("UI Root"); } catch(Exception ex) { Debug.Log(LogLabel +"initialize()"+ ex); return false;} return true; }