public void Populate(ICardModel unassignedCard) { if (unassignedCard == null || !unassignedCard.IsValid()) { return; } cardContainer = null; card.Populate(unassignedCard, true); if (unassignedCard.IsBuiltin()) { codeText.SetText("Duplicate and edit JavaScript"); trashButton.gameObject.SetActive(false); previewButton.gameObject.SetActive(true); } else { codeText.SetText("Edit JavaScript"); previewButton.gameObject.SetActive(false); string behaviorUri = unassignedCard.GetUnassignedBehaviorItem().behaviorUri; VoosActor user = voosEngine.FindOneActorUsing(behaviorUri); string fromActorLib = actorLib.FindOneActorUsingBehavior(behaviorUri); if (user != null) { trashText.SetText($"Cannot delete - used by actor '{user.GetDisplayName()}'"); trashButton.interactable = false; } else if (fromActorLib != null) { trashText.SetText($"Cannot delete - used by creation library actor '{fromActorLib}'"); trashButton.interactable = false; } else { trashText.SetText($"Remove card"); trashButton.interactable = true; } trashButton.gameObject.SetActive(true); } noPropertiesObject.SetActive(!card.HasAnyProps()); UpdateAddToSlotButton(); }
public virtual void Populate(ICardModel card, bool withDetail = false) { if (card == null || !card.IsValid()) { return; } // Debug this.name = $"Card '{card.GetTitle()}'"; this.card = card; this.assignment = null; cardUI.nameField.text = card.GetTitle(); cardUI.descriptionField.text = card.GetDescription(); if (withDetail) { props.SetupPreview(card.GetUnassignedBehaviorItem()); } customFlag.SetActive(!card.IsBuiltin()); ReloadCardImage(); }