private void SetIconHolderTr(Transform t, UiTranslationOverlaySystem.CurrentViewOptions currentViewOption) { switch (currentViewOption) { case UiTranslationOverlaySystem.CurrentViewOptions.AllowInWorld: t.parent = this._iconHolderTr; break; case UiTranslationOverlaySystem.CurrentViewOptions.AllowInBook: t.parent = this._iconHolderBookTr; break; case UiTranslationOverlaySystem.CurrentViewOptions.AllowInPlane: t.parent = this._iconHolderPlaneTr; break; case UiTranslationOverlaySystem.CurrentViewOptions.AllowInInventory: t.parent = this._iconHolderInventoryTr; break; } }
public static void RegisterLabel(Transform target, string translationKey, Color textColor, Color backgroundColor, NGUIText.Alignment alignment, UiTranslationOverlaySystem.CurrentViewOptions currentViewOption = UiTranslationOverlaySystem.CurrentViewOptions.AllowInWorld) { if (UiTranslationOverlaySystem.Instance && !UiTranslationOverlaySystem.Instance._activeLabels.ContainsKey(target) && UiTranslationDatabase.HasKey(translationKey)) { string text = UiTranslationDatabase.TranslateKey(translationKey, string.Empty, false); if (!string.IsNullOrEmpty(text)) { UiTranslationOverlayLabel uiTranslationOverlayLabel; if (UiTranslationOverlaySystem.Instance._labelPool.Count > 0) { uiTranslationOverlayLabel = UiTranslationOverlaySystem.Instance._labelPool.Dequeue(); uiTranslationOverlayLabel.gameObject.SetActive(true); UiTranslationOverlaySystem.Instance.SetIconHolderTr(uiTranslationOverlayLabel.transform, currentViewOption); } else { uiTranslationOverlayLabel = UnityEngine.Object.Instantiate <UiTranslationOverlayLabel>(UiTranslationOverlaySystem.Instance._overlayLabelPrefab); UiTranslationOverlaySystem.Instance.SetIconHolderTr(uiTranslationOverlayLabel.transform, currentViewOption); uiTranslationOverlayLabel.transform.localScale = UiTranslationOverlaySystem.Instance._overlayLabelPrefab.transform.localScale; } uiTranslationOverlayLabel._label.text = text; bool flag = alignment != NGUIText.Alignment.Left; if (flag) { if (uiTranslationOverlayLabel._label.pivot != UIWidget.Pivot.Center) { uiTranslationOverlayLabel._label.pivot = UIWidget.Pivot.Center; uiTranslationOverlayLabel._label.transform.localPosition = Vector3.zero; uiTranslationOverlayLabel._background.pivot = UIWidget.Pivot.Center; uiTranslationOverlayLabel._background.transform.localPosition = new Vector3(0f, uiTranslationOverlayLabel._background.transform.localPosition.y, 0f); } } else if (uiTranslationOverlayLabel._label.pivot != UIWidget.Pivot.Left) { uiTranslationOverlayLabel._label.pivot = UIWidget.Pivot.Left; uiTranslationOverlayLabel._label.transform.localPosition = Vector3.zero; uiTranslationOverlayLabel._background.pivot = UIWidget.Pivot.Left; uiTranslationOverlayLabel._background.transform.localPosition = new Vector3(-10f, uiTranslationOverlayLabel._background.transform.localPosition.y, 0f); } uiTranslationOverlayLabel._label.color = textColor; uiTranslationOverlayLabel._background.color = backgroundColor; uiTranslationOverlayLabel._follow._target = target; uiTranslationOverlayLabel._follow._inBook = (currentViewOption == UiTranslationOverlaySystem.CurrentViewOptions.AllowInBook); uiTranslationOverlayLabel._follow._inInventory = (currentViewOption == UiTranslationOverlaySystem.CurrentViewOptions.AllowInInventory); UiTranslationOverlaySystem.Instance._activeLabels.Add(target, uiTranslationOverlayLabel); } } }