Compare commits

..

No commits in common. "620d480dc0847b676e9c43a40e674f3494421fa9" and "fe8cbafd5cbdd33c6c043fd5253f2c3fd77c22cc" have entirely different histories.

47 changed files with 35 additions and 196 deletions

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

BIN
Content/Enemies/Small/BP_SmallEnemy.uasset (Stored with Git LFS)

Binary file not shown.

BIN
Content/Enemies/Small/BTT_Attack.uasset (Stored with Git LFS)

Binary file not shown.

BIN
Content/Enemies/Small/BT_SmallEnemy.uasset (Stored with Git LFS)

Binary file not shown.

Binary file not shown.

BIN
Content/Levels/PrototypeLevel.umap (Stored with Git LFS)

Binary file not shown.

BIN
Content/Levels/PrototypeLevelRework.umap (Stored with Git LFS)

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

BIN
Content/Monolith/BPI_AOverheat.uasset (Stored with Git LFS)

Binary file not shown.

BIN
Content/Monolith/BPI_Bullet.uasset (Stored with Git LFS)

Binary file not shown.

BIN
Content/Monolith/BPI_MeeleWeapon.uasset (Stored with Git LFS)

Binary file not shown.

BIN
Content/Monolith/BPI_Monolith.uasset (Stored with Git LFS)

Binary file not shown.

Binary file not shown.

BIN
Content/Monolith/Input/IA_MJump.uasset (Stored with Git LFS)

Binary file not shown.

BIN
Content/Monolith/Input/IA_MLook.uasset (Stored with Git LFS)

Binary file not shown.

BIN
Content/Monolith/Input/IA_MMove.uasset (Stored with Git LFS)

Binary file not shown.

BIN
Content/Monolith/Input/IA_Mability1.uasset (Stored with Git LFS)

Binary file not shown.

BIN
Content/Monolith/Input/IMC_Monolith.uasset (Stored with Git LFS)

Binary file not shown.

BIN
Content/Monolith/UI/WBP_Died.uasset (Stored with Git LFS)

Binary file not shown.

BIN
Content/QuestSystem/QuestData.uasset (Stored with Git LFS)

Binary file not shown.

View File

@ -1,6 +1,6 @@
{
"FileVersion": 3,
"EngineAssociation": "5.5",
"EngineAssociation": "5.4",
"Category": "",
"Description": "",
"Modules": [

View File

@ -1,8 +1,8 @@
{
"FileVersion": 3,
"FriendlyName": "Advanced Sessions",
"Version": 5.5,
"VersionName": "5.5",
"Version": 5.4,
"VersionName": "5.4",
"Description": "Adds new blueprint functions to handle more advanced session operations.",
"Category": "Advanced Sessions Plugin",
"CreatedBy": "Joshua Statzer",

View File

@ -52,13 +52,6 @@ public:
FOnSessionInviteReceivedDelegate SessionInviteReceivedDelegate;
FDelegateHandle SessionInviteReceivedDelegateHandle;
// custom handle to join directly from steam ui "Join Game"
FDelegateHandle OnJoinSessionCompleteDelegateHandle;
// custom Steam UI Join User function #Self invite#
void OnSessionUserInviteAccepted(const bool bWasSuccessful, const int32 ControllerId, FUniqueNetIdPtr UserId, const FOnlineSessionSearchResult& InviteResult);
// custom Steam UI function to client travel #Self invite#
void OnJoinSessionComplete(FName SessionName, EOnJoinSessionCompleteResult::Type Result);
//const FUniqueNetId& /*UserId*/, const FUniqueNetId& /*FromId*/, const FString& /*AppId*/, const FOnlineSessionSearchResult& /*InviteResult*/
void OnSessionInviteReceivedMaster(const FUniqueNetId & PersonInvited, const FUniqueNetId & PersonInviting, const FString & AppId, const FOnlineSessionSearchResult& SessionToJoin);

View File

@ -28,7 +28,7 @@ class UFindSessionsCallbackProxyAdvanced : public UOnlineBlueprintCallProxyBase
// Searches for advertised sessions with the default online subsystem and includes an array of filters
UFUNCTION(BlueprintCallable, meta = (BlueprintInternalUseOnly = "true", WorldContext = "WorldContextObject", AutoCreateRefTerm="Filters"), Category = "Online|AdvancedSessions")
static UFindSessionsCallbackProxyAdvanced* FindSessionsAdvanced(UObject* WorldContextObject, class APlayerController* PlayerController, int32 MaxResults, bool bUseLAN, EBPServerPresenceSearchType ServerTypeToSearch, const TArray<FSessionsSearchSetting> &Filters, bool bEmptyServersOnly = false, bool bNonEmptyServersOnly = false, bool bSecureServersOnly = false, /*bool bSearchLobbies = true,*/ int MinSlotsAvailable = 0);
static UFindSessionsCallbackProxyAdvanced* FindSessionsAdvanced(UObject* WorldContextObject, class APlayerController* PlayerController, int32 MaxResults, bool bUseLAN, EBPServerPresenceSearchType ServerTypeToSearch, const TArray<FSessionsSearchSetting> &Filters, bool bEmptyServersOnly = false, bool bNonEmptyServersOnly = false, bool bSecureServersOnly = false, bool bSearchLobbies = true, int MinSlotsAvailable = 0);
static bool CompareVariants(const FVariantData &A, const FVariantData &B, EOnlineComparisonOpRedux Comparator);
@ -99,7 +99,7 @@ private:
bool bSecureServersOnly;
// Search through lobbies
//bool bSearchLobbies;
bool bSearchLobbies;
// Min slots requires to search
int MinSlotsAvailable;

View File

@ -20,37 +20,6 @@ UAdvancedFriendsGameInstance::UAdvancedFriendsGameInstance(const FObjectInitiali
{
}
void UAdvancedFriendsGameInstance::OnSessionUserInviteAccepted(const bool bWasSuccessful, const int32 ControllerId, FUniqueNetIdPtr UserId, const FOnlineSessionSearchResult& InviteResult)
{
IOnlineSessionPtr SessionInterface = Online::GetSessionInterface(GetWorld());
if (SessionInterface.IsValid())
{
SessionInterface->ClearOnJoinSessionCompleteDelegate_Handle(OnJoinSessionCompleteDelegateHandle);
OnJoinSessionCompleteDelegateHandle = SessionInterface->AddOnJoinSessionCompleteDelegate_Handle(
FOnJoinSessionCompleteDelegate::CreateUObject(this, &UAdvancedFriendsGameInstance::OnJoinSessionComplete));
SessionInterface->JoinSession(0, NAME_GameSession, InviteResult);
}
UE_LOG(AdvancedFriendsInterfaceLog, Log, TEXT("Called Join Session for Steam Friends List UI InviteResults: %s, UserId: %s"), *InviteResult.GetSessionIdStr(), *UserId->ToString());
}
void UAdvancedFriendsGameInstance::OnJoinSessionComplete(FName SessionName, EOnJoinSessionCompleteResult::Type Result)
{
IOnlineSessionPtr SessionInterface = Online::GetSessionInterface(GetWorld());
if (SessionInterface.IsValid())
{
FString ConnectInfo;
if (SessionInterface->GetResolvedConnectString(NAME_GameSession, ConnectInfo))
{
APlayerController* PlayerController = GetFirstLocalPlayerController();
if (PlayerController)
{
PlayerController->ClientTravel(ConnectInfo, ETravelType::TRAVEL_Absolute);
}
}
}
}
void UAdvancedFriendsGameInstance::Shutdown()
{
IOnlineSessionPtr SessionInterface = Online::GetSessionInterface(GetWorld());
@ -65,7 +34,6 @@ void UAdvancedFriendsGameInstance::Shutdown()
// Clear all of the delegate handles here
SessionInterface->ClearOnSessionUserInviteAcceptedDelegate_Handle(SessionInviteAcceptedDelegateHandle);
SessionInterface->ClearOnSessionInviteReceivedDelegate_Handle(SessionInviteReceivedDelegateHandle);
SessionInterface->ClearOnJoinSessionCompleteDelegate_Handle(OnJoinSessionCompleteDelegateHandle);
}
@ -112,9 +80,6 @@ void UAdvancedFriendsGameInstance::Init()
SessionInviteAcceptedDelegateHandle = SessionInterface->AddOnSessionUserInviteAcceptedDelegate_Handle(SessionInviteAcceptedDelegate);
SessionInviteReceivedDelegateHandle = SessionInterface->AddOnSessionInviteReceivedDelegate_Handle(SessionInviteReceivedDelegate);
// Custom steam join game delegate
SessionInterface->OnSessionUserInviteAcceptedDelegates.AddUObject(this, &UAdvancedFriendsGameInstance::OnSessionUserInviteAccepted);
}
else
{

View File

@ -16,7 +16,7 @@ UFindSessionsCallbackProxyAdvanced::UFindSessionsCallbackProxyAdvanced(const FOb
bIsOnSecondSearch = false;
}
UFindSessionsCallbackProxyAdvanced* UFindSessionsCallbackProxyAdvanced::FindSessionsAdvanced(UObject* WorldContextObject, class APlayerController* PlayerController, int MaxResults, bool bUseLAN, EBPServerPresenceSearchType ServerTypeToSearch, const TArray<FSessionsSearchSetting> &Filters, bool bEmptyServersOnly, bool bNonEmptyServersOnly, bool bSecureServersOnly, /*bool bSearchLobbies,*/ int MinSlotsAvailable)
UFindSessionsCallbackProxyAdvanced* UFindSessionsCallbackProxyAdvanced::FindSessionsAdvanced(UObject* WorldContextObject, class APlayerController* PlayerController, int MaxResults, bool bUseLAN, EBPServerPresenceSearchType ServerTypeToSearch, const TArray<FSessionsSearchSetting> &Filters, bool bEmptyServersOnly, bool bNonEmptyServersOnly, bool bSecureServersOnly, bool bSearchLobbies, int MinSlotsAvailable)
{
UFindSessionsCallbackProxyAdvanced* Proxy = NewObject<UFindSessionsCallbackProxyAdvanced>();
Proxy->PlayerControllerWeakPtr = PlayerController;
@ -28,7 +28,7 @@ UFindSessionsCallbackProxyAdvanced* UFindSessionsCallbackProxyAdvanced::FindSess
Proxy->bEmptyServersOnly = bEmptyServersOnly,
Proxy->bNonEmptyServersOnly = bNonEmptyServersOnly;
Proxy->bSecureServersOnly = bSecureServersOnly;
//Proxy->bSearchLobbies = bSearchLobbies;
Proxy->bSearchLobbies = bSearchLobbies;
Proxy->MinSlotsAvailable = MinSlotsAvailable;
return Proxy;
}
@ -114,9 +114,9 @@ void UFindSessionsCallbackProxyAdvanced::Activate()
case EBPServerPresenceSearchType::ClientServersOnly:
{
//tem.Set(SEARCH_PRESENCE, true, EOnlineComparisonOp::Equals);
tem.Set(SEARCH_PRESENCE, true, EOnlineComparisonOp::Equals);
//if (bSearchLobbies)// && !IOnlineSubsystem::DoesInstanceExist("STEAM"))
if (bSearchLobbies && !IOnlineSubsystem::DoesInstanceExist("STEAM"))
tem.Set(SEARCH_LOBBIES, true, EOnlineComparisonOp::Equals);
}
break;
@ -140,9 +140,9 @@ void UFindSessionsCallbackProxyAdvanced::Activate()
FOnlineSearchSettingsEx DedicatedOnly = tem;
//tem.Set(SEARCH_PRESENCE, true, EOnlineComparisonOp::Equals);
tem.Set(SEARCH_PRESENCE, true, EOnlineComparisonOp::Equals);
//if (bSearchLobbies)// && !IOnlineSubsystem::DoesInstanceExist("STEAM"))
if (bSearchLobbies && !IOnlineSubsystem::DoesInstanceExist("STEAM"))
tem.Set(SEARCH_LOBBIES, true, EOnlineComparisonOp::Equals);
//DedicatedOnly.Set(SEARCH_DEDICATED_ONLY, true, EOnlineComparisonOp::Equals);

View File

@ -46,7 +46,6 @@ void AMonolithCharacter::BeginPlay()
// Call the base class
Super::BeginPlay();
MaxHealth = Health;
Mesh1P = Cast<USkeletalMeshComponent>(GetComponentByClass(USkeletalMeshComponent::StaticClass()));
CharMove = Cast<UCharacterMovementComponent>(GetComponentByClass(UCharacterMovementComponent::StaticClass()));
if (CharMove) WalkSpeed = CharMove->MaxWalkSpeed;
@ -123,19 +122,6 @@ static void UpdateMoveState(FMoveState& MoveState, int Forwards, int Sideways)
}
}
void AMonolithCharacter::IncrementHealth(float amount)
{
Health += amount;
if (Health > MaxHealth)
{
Health = MaxHealth;
}
else if (Health <= 0)
{
Died();
}
}
void AMonolithCharacter::Move(const FInputActionValue& Value)
{
// input is a Vector2D

View File

@ -58,11 +58,6 @@ class AMonolithCharacter : public ACharacter
// Amount of impulse to add when dashing
UPROPERTY(EditAnywhere, Category = "MoveState", meta=(AllowPrivateAccess = "true"))
float DashImpulse = 600.f;
UPROPERTY(EditDefaultsOnly, Category = "Health", meta=(AllowPrivateAccess = "true"))
float Health = 100.f;
float MaxHealth;
USkeletalMeshComponent* Mesh1P;
UCharacterMovementComponent* CharMove;
@ -75,25 +70,6 @@ protected:
void BeginPlay();
void Tick(float DeltaSeconds) override;
UFUNCTION(BlueprintCallable)
float GetHealth()
{
return Health;
}
UFUNCTION(BlueprintCallable)
void ResetHealth()
{
Health = MaxHealth;
}
// Increase/Decrease health by this amount, will handle death
UFUNCTION(BlueprintCallable)
void IncrementHealth(float amount);
UFUNCTION(BlueprintImplementableEvent)
void Died();
/** Called for movement input */
void Move(const FInputActionValue& Value);
void StopMove();