private void onUpdateLabel(DefaultLabelController labelController, EncounterTrackable encounter, PickupObject item) { NoBrainJsonItem noBrainJsonItem; var success = NoBrain.jsonItemDict.TryGetValue(item.PickupObjectId, out noBrainJsonItem); if (!success) { return; } // Text change var newText = labelController.label.Text; var indexOf = newText.IndexOf(SEPARATOR_TEXT) + SEPARATOR_TEXT.Length; if (indexOf == -1) { newText = "ERROR FINDING SEPARATOR"; } else { newText = newText.Substring(0, indexOf); newText += getTextForPage(labelController, encounter, item); } labelController.label.Text = newText; // NoBrain.LogFine("NoBrainBehaviour updating text to: " + newText); // Layouting labelController.label.AutoHeight = true; labelController.label.Invalidate(); labelController.panel.FitToContents(); labelController.panel.Invalidate(); labelController.Trigger(); }
private void onNewLabel(DefaultLabelController labelController, EncounterTrackable encounter, PickupObject item) { if (ITEM_BLACKLIST.Contains(item.PickupObjectId)) { return; } // add padding fix behaviour that only updates position and not the padding labelController.gameObject.AddComponent <PositionUpdater>(); // Text change var newText = labelController.label.Text; newText += SEPARATOR_TEXT; newText += getTextForPage(labelController, encounter, item); labelController.label.Text = newText; // Layouting labelController.enabled = false; labelController.label.TextScale = 2f; labelController.label.AutoHeight = true; labelController.label.WordWrap = true; labelController.label.Width = Screen.width / 3f; labelController.label.Padding = new RectOffset(6, 6, 0, 0); labelController.label.Invalidate(); labelController.panel.FitToContents(); labelController.panel.Invalidate(); labelController.Trigger(); }