void UUICharacterSelection::NativeConstruct() { Super::NativeConstruct(); bt_char_1_ = Cast<UButton>(GetWidgetFromName(TEXT("BT_Char_1"))); bt_char_2_ = Cast<UButton>(GetWidgetFromName(TEXT("BT_Char_2"))); bt_char_1_->OnClicked.AddDynamic(this, &UUICharacterSelection::OnClickChar1); bt_char_2_->OnClicked.AddDynamic(this, &UUICharacterSelection::OnClickChar2); }
UFloatingTextWidget* UFloatingTextWidget::Create(UObject* worldContextObject, FString message, FLinearColor textColor) { auto widget = InstantiateWidget<UFloatingTextWidget>(worldContextObject); widget->messageLabel = Cast<UTextBlock>(widget->GetWidgetFromName(TEXT("MessageLabel"))); widget->messageLabel->SetText(FText::FromString(message)); widget->SetColor(textColor); return widget; }
UPlayerAvatarWidget* UPlayerAvatarWidget::Create(UObject* worldContextObject) { auto widget = InstantiateWidget<UPlayerAvatarWidget>(worldContextObject); if (!widget) return nullptr; widget->avatarImage = Cast<UImage>(widget->GetWidgetFromName(TEXT("AvatarImage"))); return widget; }
void UUIMain::NativeConstruct() { Super::NativeConstruct(); vb_choose_team_ = (UVerticalBox*)GetWidgetFromName(TEXT("VB_ChooseTeam")); bt_ct_team_red_ = (UButton*)GetWidgetFromName(TEXT("BT_CT_Red")); bt_ct_team_blue_ = (UButton*)GetWidgetFromName(TEXT("BT_CT_Blue")); tb_counter_ = (UTextBlock*)GetWidgetFromName(TEXT("TextNum")); HideCounter(); counter_ = &Cast<ANPGameState>(GetWorld()->GameState)->GetCounterStr(); bt_ct_team_blue_->OnClicked.AddDynamic(this, &UUIMain::OnBTCTBlue); bt_ct_team_red_->OnClicked.AddDynamic(this, &UUIMain::OnBTCTRed); ui_char_ = Cast<UUICharacterSelection>(GetWidgetFromName(TEXT("CharSelection"))); HideTeamSelection(); ShowCharacterSelection(); }
UMainMenuWidget* UMainMenuWidget::Create(UObject* worldContextObject) { auto widget = InstantiateWidget<UMainMenuWidget>(worldContextObject); if (!widget) return nullptr; widget->playButton = Cast<UButton>(widget->GetWidgetFromName(TEXT("PlayButton"))); widget->quitButton = Cast<UButton>(widget->GetWidgetFromName(TEXT("QuitButton"))); widget->playButton->OnClicked.AddDynamic(widget, &UMainMenuWidget::OnPlayButtonClicked); widget->quitButton->OnClicked.AddDynamic(widget, &UMainMenuWidget::OnQuitButtonClicked); GetPlayerController()->bShowMouseCursor = true; return widget; }
void UGISSlotBaseWidget::OnDragDetected_Implementation(FGeometry MyGeometry, const FPointerEvent& PointerEvent, UDragDropOperation*& Operation) { UWidget* superWidget = GetWidgetFromName(DropSlottName); UOverlay* overlay = Cast<UOverlay>(superWidget); //UGISItemBaseWidget* itemTemp = UGISItemBaseWidget* ItemWidget = Cast<UGISItemBaseWidget>(overlay->GetChildAt(0)); //ConstructObject<UGISItemBaseWidget>(GISItemClass); if (ItemWidget && SlotInfo.CurrentInventoryComponent.IsValid()) { ItemWidget->LastSlotInfo = SlotInfo; ItemWidget->LastSlotInfo.ItemData = nullptr; ItemWidget->ItemData = SlotInfo.ItemData; ItemWidget->LastSlot = this; } UDragDropOperation* DragDropOp = ConstructObject<UDragDropOperation>(UDragDropOperation::StaticClass()); if (DragDropOp) { DragDropOp->Payload = ItemWidget; DragDropOp->DefaultDragVisual = ItemWidget; Operation = DragDropOp; } }