Skip to content

Commit 27ba3fe

Browse files
Merge branch '5.2' into 5.3_dev
2 parents 0f55c9a + 5d0222b commit 27ba3fe

File tree

12 files changed

+115
-30
lines changed

12 files changed

+115
-30
lines changed

ActorInteractionPlugin.uplugin

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
{
22
"FileVersion": 3,
33
"Version": 4,
4-
"VersionName": "4.2.3.53",
4+
"VersionName": "4.2.4.52",
55
"FriendlyName": "Mountea Interaction System",
66
"Description": "Mountea Interaction System is an Open-source Mountea Framework components-based simple framework providing utilities for smart Actor Interaction with other Actors.\nDeveloped with Game Developers in mind to allow as easy as possible implementation while maintaining high scalability and diverse options to tweak everything.",
77
"Category": "Mountea Framework",
@@ -10,10 +10,8 @@
1010
"DocsURL": "https://github.com/Mountea-Framework/MounteaInteractionSystem/wiki",
1111
"MarketplaceURL": "com.epicgames.launcher://ue/marketplace/product/ca842c00ec0d4db0b3aad17701e1637b",
1212
"SupportURL": "https://bit.ly/DominikPavlicek_SupportServer",
13-
"EngineVersion": "5.3.0",
13+
"EngineVersion": "5.1.0",
1414
"CanContainContent": true,
15-
"IsBetaVersion": false,
16-
"IsExperimentalVersion": false,
1715
"Installed": true,
1816
"Modules": [
1917
{

CHANGELOG.md

Lines changed: 30 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,38 @@
1-
Current Version: 4.0.0.52
1+
Current Version: 4.2.3.52
22

33
# Changelog
44

55
All notable changes to this project will be documented in this file.
66

7-
** Version 4.0.2 **
7+
** Version 4.2.3 **
8+
### Added
9+
> - Toolbar Tutorial button
10+
11+
### Changed
12+
> - Ribbon Button to Guide Player
13+
> - - Design now matches `Dialogue System`
14+
> - Emoji for Content Browser menu
15+
16+
### Fixed
17+
> - Compilation errors for `HighlightableComponents`
18+
> - Conflicting `PrintLog` functions with other systems
19+
> - `SetLifecycleCount` can set count to -1
20+
> - `SetCooldownPeriod` now really sets Cooldown period
21+
> - Editor crash for `InteractableBase`
22+
23+
** Version 4.2.1 **
24+
### Added
25+
> - Support for **5.5**
26+
27+
### Changed
28+
> - Ribbon Button to Guide Player
29+
> - - Design now matches `Dialogue System`
30+
> - Events in `Interactor` are now re-arranged to logical order
31+
32+
### Fixed
33+
> -
34+
35+
** Version 4.2.0 **
836
### Added
937
> - Auto Gameplay Tags download
1038
> - - This way default Gameplay Tags will always be present

Resources/FolderIcon.png

4.64 KB
Loading

Resources/LevelIcon.png

7.93 KB
Loading

Source/ActorInteractionPlugin/Private/Components/Interactable/ActorInteractableComponentMash.cpp

Lines changed: 10 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,16 @@ void UActorInteractableComponentMash::OnInteractionCompletedCallback()
5555
if (Execute_TriggerCooldown(this)) return;
5656
}
5757

58-
OnInteractionCompleted.Broadcast(GetWorld()->GetTimeSeconds(), Execute_GetInteractor(this));
58+
if (ActualMashAmount >= MinMashAmountRequired)
59+
{
60+
OnInteractionCompleted.Broadcast(GetWorld()->GetTimeSeconds(), Execute_GetInteractor(this));
61+
}
62+
else
63+
{
64+
OnInteractionFailed.Broadcast();
65+
}
66+
67+
CleanupComponent();
5968
}
6069

6170
void UActorInteractableComponentMash::CleanupComponent()
@@ -133,20 +142,6 @@ void UActorInteractableComponentMash::InteractionCanceled_Implementation()
133142
CleanupComponent();
134143
}
135144

136-
void UActorInteractableComponentMash::InteractionCompleted_Implementation(const float& TimeCompleted, const TScriptInterface<IActorInteractorInterface>& CausingInteractor)
137-
{
138-
if (ActualMashAmount >= MinMashAmountRequired)
139-
{
140-
Super::InteractionCompleted_Implementation(TimeCompleted, CausingInteractor);
141-
}
142-
else
143-
{
144-
OnInteractionFailed.Broadcast();
145-
}
146-
147-
CleanupComponent();
148-
}
149-
150145
int32 UActorInteractableComponentMash::GetMinMashAmountRequired() const
151146
{ return MinMashAmountRequired; }
152147

Source/ActorInteractionPlugin/Private/Helpers/MounteaInteractionSystemBFL.cpp

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -249,4 +249,11 @@ bool UMounteaInteractionSystemBFL::IsInputKeyPairSupported(APlayerController* Pl
249249
}
250250

251251
return false;
252-
}
252+
}
253+
254+
ENetRole UMounteaInteractionSystemBFL::GetOwnerLocalRole(const AActor* ForActor)
255+
{
256+
if (!IsValid(ForActor))
257+
return ROLE_None;
258+
return ForActor->GetLocalRole();
259+
}

Source/ActorInteractionPlugin/Public/Components/Interactable/ActorInteractableComponentMash.h

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,6 @@ class ACTORINTERACTIONPLUGIN_API UActorInteractableComponentMash : public UActor
3636
virtual void InteractionStarted_Implementation(const float& TimeStarted, const TScriptInterface<IActorInteractorInterface>& CausingInteractor) override;
3737
virtual void InteractionStopped_Implementation(const float& TimeStarted, const TScriptInterface<IActorInteractorInterface>& CausingInteractor) override;
3838
virtual void InteractionCanceled_Implementation() override;
39-
virtual void InteractionCompleted_Implementation(const float& TimeCompleted, const TScriptInterface<IActorInteractorInterface>& CausingInteractor) override;
4039

4140
protected:
4241

Source/ActorInteractionPlugin/Public/Helpers/MounteaInteractionSystemBFL.h

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -89,4 +89,7 @@ class ACTORINTERACTIONPLUGIN_API UMounteaInteractionSystemBFL : public UBlueprin
8989

9090
UFUNCTION(BlueprintCallable, BlueprintPure, Category="Mountea|Interaction|Helpers")
9191
static bool IsInputKeyPairSupported(class APlayerController* PlayerController, const FKey& InputKey, const FString& HardwareDeviceID, TSoftObjectPtr<class UTexture2D>& FoundInputTexture);
92+
93+
UFUNCTION(BlueprintCallable, BlueprintPure, Category="Mountea|Interaction|Helpers")
94+
static ENetRole GetOwnerLocalRole(const AActor* ForActor);
9295
};

Source/ActorInteractionPluginEditor/Private/ActorInteractionPluginEditor.cpp

Lines changed: 38 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -13,8 +13,11 @@
1313
#include "AssetActions/InteractableComponentAssetActions.h"
1414

1515
#include "AssetToolsModule.h"
16+
#include "ContentBrowserModule.h"
17+
#include "FileHelpers.h"
1618
#include "GameplayTagsManager.h"
1719
#include "HttpModule.h"
20+
#include "IContentBrowserSingleton.h"
1821
#include "HelpButton/AIntPCommands.h"
1922
#include "HelpButton/AIntPHelpStyle.h"
2023
#include "Kismet2/KismetEditorUtilities.h"
@@ -28,6 +31,7 @@
2831
#include "WorkspaceMenuStructure.h"
2932
#include "WorkspaceMenuStructureModule.h"
3033
#include "HelpButton/InteractionSystemTutorialPage.h"
34+
#include "Helpers/MounteaInteractionSystemEditorLog.h"
3135
#include "Interfaces/IHttpResponse.h"
3236

3337
#include "Interfaces/IMainFrameModule.h"
@@ -36,7 +40,7 @@
3640

3741
DEFINE_LOG_CATEGORY(ActorInteractionPluginEditor);
3842

39-
const FString ChangelogURL = FString("https://raw.githubusercontent.com/Mountea-Framework/MounteaInteractionSystem/5.1/CHANGELOG.md");
43+
const FString ChangelogURL = FString("https://raw.githubusercontent.com/Mountea-Framework/MounteaInteractionSystem/master/CHANGELOG.md");
4044

4145
#define LOCTEXT_NAMESPACE "FActorInteractionPluginEditor"
4246

@@ -519,13 +523,43 @@ TSharedRef<SWidget> FActorInteractionPluginEditor::MakeMounteaMenuWidget() const
519523
FSlateIcon(FAIntPHelpStyle::GetStyleSetName(), "AIntPStyleSet.Tutorial"),
520524
FUIAction(
521525
FExecuteAction::CreateRaw(this, &FActorInteractionPluginEditor::TutorialButtonClicked)
522-
)
523-
);
526+
)
527+
);
528+
529+
MenuBuilder.AddMenuEntry(
530+
LOCTEXT("MounteaSystemEditor_OpenExampleLevel_Label", "Open Example Level"),
531+
LOCTEXT("MounteaSystemEditor_OpenExampleLevel_ToolTip", "🌄 Opens an example level demonstrating Mountea Interaction System"),
532+
FSlateIcon(FAIntPHelpStyle::GetStyleSetName(), "AIntPStyleSet.Level"),
533+
FUIAction(
534+
FExecuteAction::CreateLambda([]()
535+
{
536+
const FString mapPath = TEXT("/ActorInteractionPlugin/Example/M_Example");
537+
if (FPackageName::DoesPackageExist(mapPath))
538+
FEditorFileUtils::LoadMap(mapPath, false, true);
539+
else
540+
EDITOR_LOG_ERROR(TEXT("Example map not found at:\nContent/Mountea/Maps/ExampleMap.umap"))
541+
})
542+
)
543+
);
524544

545+
MenuBuilder.AddMenuEntry(
546+
LOCTEXT("MounteaSystemEditor_OpenPluginFolder_Label", "Open Plugin Folder"),
547+
LOCTEXT("MounteaSystemEditor_OpenPluginFolder_ToolTip", "📂 Open the Mountea plugin's folder on disk"),
548+
FSlateIcon(FAIntPHelpStyle::GetStyleSetName(), "AIntPStyleSet.Folder"),
549+
FUIAction(
550+
FExecuteAction::CreateLambda([]()
551+
{
552+
const FContentBrowserModule& contentBrowserModule = FModuleManager::LoadModuleChecked<FContentBrowserModule>("ContentBrowser");
553+
TArray<FString> folderPaths;
554+
folderPaths.Add(TEXT("/ActorInteractionPlugin"));
555+
contentBrowserModule.Get().SetSelectedPaths(folderPaths, true);
556+
})
557+
)
558+
);
525559
};
526560
MenuBuilder.EndSection();
527561

528-
MenuBuilder.BeginSection("MounteaMenu_Tools", LOCTEXT("MounteaMenuOptions_Settings", "Mountea Interaction Settings"));
562+
MenuBuilder.BeginSection("MounteaMenu_Settings", LOCTEXT("MounteaMenuOptions_Settings", "Mountea Interaction Settings"));
529563
{
530564
MenuBuilder.AddMenuEntry(
531565
LOCTEXT("MounteaSystemEditor_SettingsButton_Label", "Mountea Interaction Settings"),

Source/ActorInteractionPluginEditor/Private/HelpButton/AIntPHelpStyle.cpp

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -88,6 +88,9 @@ TSharedRef<FSlateStyleSet> FAIntPHelpStyle::Create()
8888
Style->Set("AIntPStyleSet.Icon.MoneyIcon", new IMAGE_BRUSH(TEXT("MoneyIcon"), Icon16x16));
8989

9090
Style->Set("AIntPStyleSet.Tutorial", new IMAGE_BRUSH(TEXT("tutorialPage_icon"), Icon40x40));
91+
92+
Style->Set("AIntPStyleSet.Level", new IMAGE_BRUSH(TEXT("LevelIcon"), Icon40x40));
93+
Style->Set("AIntPStyleSet.Folder", new IMAGE_BRUSH(TEXT("FolderIcon"), Icon40x40));
9194
return Style;
9295
}
9396

0 commit comments

Comments
 (0)