This commit is contained in:
好景常在
2025-07-05 18:51:24 +08:00
parent 4ceb900076
commit 279073928e
12 changed files with 43 additions and 10361 deletions

File diff suppressed because it is too large Load Diff

View File

@ -4,7 +4,7 @@
GameDefaultMap=/Game/NewMap2.NewMap2 GameDefaultMap=/Game/NewMap2.NewMap2
EditorStartupMap=/Game/NewMap2.NewMap2 EditorStartupMap=/Game/NewMap2.NewMap2
GlobalDefaultGameMode=/Game/Blueprints/BP_My_GameMode.BP_My_GameMode_C GlobalDefaultGameMode=/Game/Blueprints/BP_My_GameMode.BP_My_GameMode_C
GameInstanceClass=/AdvancedSessions/Plugins_BP_GameInstance.Plugins_BP_GameInstance_C GameInstanceClass=/Game/Blueprints/NewGameInstance.NewGameInstance_C
[/Script/Engine.RendererSettings] [/Script/Engine.RendererSettings]
r.AllowStaticLighting=False r.AllowStaticLighting=False

Binary file not shown.

View File

@ -0,0 +1,5 @@
// Fill out your copyright notice in the Description page of Project Settings.
#include "ChineseController.h"

View File

@ -29,7 +29,7 @@ void UChineseFriendsGameInstance::Shutdown()
if (!SessionInterface.IsValid()) if (!SessionInterface.IsValid())
{ {
UChineseIdentityLibrary::SendTempMessage(this,TEXT("中文好友游戏实例:获取会话系统失败!")); GEngine->AddOnScreenDebugMessage(-1, 5.0f, FColor::Red, TEXT("中文好友游戏实例:获取会话系统失败!"));
//return; //return;
} }
else else
@ -51,7 +51,7 @@ void UChineseFriendsGameInstance::Shutdown()
else else
{ {
UChineseIdentityLibrary::SendTempMessage(this, TEXT("中文好友游戏实例:获取语音接口失败!")); GEngine->AddOnScreenDebugMessage(-1, 5.0f, FColor::Red, TEXT("中文好友游戏实例:获取语音接口失败!"));
} }
} }
@ -81,12 +81,12 @@ void UChineseFriendsGameInstance::Init()
// 遍历本地玩家TArray只有在为其分配了玩家时才有效大多数在线接口也不支持 // 遍历本地玩家TArray只有在为其分配了玩家时才有效大多数在线接口也不支持
// 多次登录例如Steam // 多次登录例如Steam
SessionInviteAcceptedDelegateHandle = SessionInterface->AddOnSessionUserInviteAcceptedDelegate_Handle(SessionInviteAcceptedDelegate); SessionInviteAcceptedDelegateHandle = SessionInterface->AddOnSessionUserInviteAcceptedDelegate_Handle(SessionInviteAcceptedDelegate);
SessionInviteReceivedDelegateHandle = SessionInterface->AddOnSessionInviteReceivedDelegate_Handle(SessionInviteReceivedDelegate); SessionInviteReceivedDelegateHandle = SessionInterface->AddOnSessionInviteReceivedDelegate_Handle(SessionInviteReceivedDelegate);
} }
else else
{ {
UChineseIdentityLibrary::SendTempMessage(this, TEXT("中文好友游戏实例:获取会话接口失败")); GEngine->AddOnScreenDebugMessage(-1, 5.0f, FColor::Red, TEXT("中文好友游戏实例:获取会话接口失败"));
//return; //return;
} }
@ -102,7 +102,7 @@ void UChineseFriendsGameInstance::Init()
else else
{ {
UChineseIdentityLibrary::SendTempMessage(this, TEXT("中文好友游戏实例:获取语音接口失败!")); GEngine->AddOnScreenDebugMessage(-1, 5.0f, FColor::Red, TEXT("中文好友游戏实例:获取语音接口失败!"));
} }
} }
@ -117,7 +117,7 @@ void UChineseFriendsGameInstance::Init()
} }
else else
{ {
UChineseIdentityLibrary::SendTempMessage(this, TEXT("中文好友游戏实例:获取身份接口失败!")); GEngine->AddOnScreenDebugMessage(-1, 5.0f, FColor::Red, TEXT("中文好友游戏实例:获取身份接口失败!"));
} }
@ -149,13 +149,14 @@ void UChineseFriendsGameInstance::OnPlayerLoginStatusChangedMaster(int32 PlayerN
} }
else else
{ {
UChineseIdentityLibrary::SendTempMessage(this, TEXT("中文好友游戏实例:在“玩家登录状态更改主机”中无法获取指定索引的控制器!")); GEngine->AddOnScreenDebugMessage(-1, 5.0f, FColor::Red, TEXT("中文好友游戏实例:在“玩家登录状态更改主机”中无法获取指定索引的控制器!"));
} }
} }
} }
void UChineseFriendsGameInstance::OnPlayerLoginChangedMaster(int32 PlayerNum) void UChineseFriendsGameInstance::OnPlayerLoginChangedMaster(int32 PlayerNum)
{ {
GEngine->AddOnScreenDebugMessage(-1, 5.0f, FColor::Red, TEXT("登录变更11111111111111"));
OnPlayerLoginChanged(PlayerNum); OnPlayerLoginChanged(PlayerNum);
if (bCallIdentityInterfaceEventsOnPlayerControllers) if (bCallIdentityInterfaceEventsOnPlayerControllers)
@ -172,13 +173,14 @@ void UChineseFriendsGameInstance::OnPlayerLoginChangedMaster(int32 PlayerNum)
} }
else else
{ {
UChineseIdentityLibrary::SendTempMessage(this, TEXT("中文好友游戏实例:在“玩家登录更改”中无法获取指定索引的控制器!")); GEngine->AddOnScreenDebugMessage(-1, 5.0f, FColor::Red, TEXT("中文好友游戏实例:在“玩家登录更改”中无法获取指定索引的控制器!"));
} }
} }
} }
void UChineseFriendsGameInstance::OnPlayerTalkingStateChangedMaster(TSharedRef<const FUniqueNetId> PlayerId, bool bIsTalking) void UChineseFriendsGameInstance::OnPlayerTalkingStateChangedMaster(TSharedRef<const FUniqueNetId> PlayerId, bool bIsTalking)
{ {
GEngine->AddOnScreenDebugMessage(-1, 5.0f, FColor::Red, TEXT("玩家登录状态改变11111111111111"));
FBPUniqueNetId PlayerTalking; FBPUniqueNetId PlayerTalking;
PlayerTalking.SetUniqueNetId(PlayerId); PlayerTalking.SetUniqueNetId(PlayerId);
OnPlayerTalkingStateChanged(PlayerTalking, bIsTalking); OnPlayerTalkingStateChanged(PlayerTalking, bIsTalking);
@ -201,7 +203,7 @@ void UChineseFriendsGameInstance::OnPlayerTalkingStateChangedMaster(TSharedRef<c
} }
else else
{ {
UChineseIdentityLibrary::SendTempMessage(this, TEXT("中文好友游戏实例:在“语音状态更改时”中无法获取指定索引的控制器!")); GEngine->AddOnScreenDebugMessage(-1, 5.0f, FColor::Red, TEXT("中文好友游戏实例:在“语音状态更改时”中无法获取指定索引的控制器!"));
} }
} }
} }
@ -209,6 +211,7 @@ void UChineseFriendsGameInstance::OnPlayerTalkingStateChangedMaster(TSharedRef<c
void UChineseFriendsGameInstance::OnSessionInviteReceivedMaster(const FUniqueNetId & PersonInvited, const FUniqueNetId & PersonInviting, const FString& AppId, const FOnlineSessionSearchResult& SessionToJoin) void UChineseFriendsGameInstance::OnSessionInviteReceivedMaster(const FUniqueNetId & PersonInvited, const FUniqueNetId & PersonInviting, const FString& AppId, const FOnlineSessionSearchResult& SessionToJoin)
{ {
GEngine->AddOnScreenDebugMessage(-1, 5.0f, FColor::Red, TEXT("收到邀请11111111111111"));
if (SessionToJoin.IsValid()) if (SessionToJoin.IsValid())
{ {
FBlueprintSessionResult BluePrintResult; FBlueprintSessionResult BluePrintResult;
@ -246,22 +249,24 @@ void UChineseFriendsGameInstance::OnSessionInviteReceivedMaster(const FUniqueNet
//Run the Event specific to the actor, if the actor has the interface, otherwise ignore //Run the Event specific to the actor, if the actor has the interface, otherwise ignore
if (Player->GetClass()->ImplementsInterface(UChineseFriendsInterface::StaticClass())) if (Player->GetClass()->ImplementsInterface(UChineseFriendsInterface::StaticClass()))
{ {
GEngine->AddOnScreenDebugMessage(-1, 5.0f, FColor::Red, TEXT("收到邀请·············"));
IChineseFriendsInterface::Execute_OnSessionInviteReceived(Player, PInviting, BluePrintResult); IChineseFriendsInterface::Execute_OnSessionInviteReceived(Player, PInviting, BluePrintResult);
} }
} }
else else
{ {
UChineseIdentityLibrary::SendTempMessage(this, TEXT("中文好友游戏实例:在“收到会话邀请时”中无法获取指定索引的控制器!")); GEngine->AddOnScreenDebugMessage(-1, 5.0f, FColor::Red, TEXT("中文好友游戏实例:在“收到会话邀请时”中无法获取指定索引的控制器!"));
} }
} }
else else
{ {
UChineseIdentityLibrary::SendTempMessage(this, TEXT("中文好友游戏实例:在“收到会话邀请时”中返回了一个错误的搜索结果!")); GEngine->AddOnScreenDebugMessage(-1, 5.0f, FColor::Red, TEXT("中文好友游戏实例:在“收到会话邀请时”中返回了一个错误的搜索结果!"));
} }
} }
void UChineseFriendsGameInstance::OnSessionInviteAcceptedMaster(const bool bWasSuccessful, int32 LocalPlayer, TSharedPtr<const FUniqueNetId> PersonInvited, const FOnlineSessionSearchResult& SessionToJoin) void UChineseFriendsGameInstance::OnSessionInviteAcceptedMaster(const bool bWasSuccessful, int32 LocalPlayer, TSharedPtr<const FUniqueNetId> PersonInvited, const FOnlineSessionSearchResult& SessionToJoin)
{ {
GEngine->AddOnScreenDebugMessage(-1, 5.0f, FColor::Red, TEXT("同意邀请11111111111111"));
if (bWasSuccessful) if (bWasSuccessful)
{ {
if (SessionToJoin.IsValid()) if (SessionToJoin.IsValid())
@ -289,12 +294,12 @@ void UChineseFriendsGameInstance::OnSessionInviteAcceptedMaster(const bool bWasS
} }
else else
{ {
UChineseIdentityLibrary::SendTempMessage(this, TEXT("中文好友游戏实例:在“已接受会话邀请”中无法获取指定索引的控制器!")); GEngine->AddOnScreenDebugMessage(-1, 5.0f, FColor::Red, TEXT("中文好友游戏实例:在“已接受会话邀请”中无法获取指定索引的控制器!"));
} }
} }
else else
{ {
UChineseIdentityLibrary::SendTempMessage(this, TEXT("中文好友游戏实例:在“已接受会话邀请”中返回了一个错误的搜索结果!")); GEngine->AddOnScreenDebugMessage(-1, 5.0f, FColor::Red, TEXT("中文好友游戏实例:在“已接受会话邀请”中返回了一个错误的搜索结果!"));
} }
} }
} }

View File

@ -0,0 +1,19 @@
// Fill out your copyright notice in the Description page of Project Settings.
#pragma once
#include "CoreMinimal.h"
#include "GameFramework/PlayerController.h"
#include "ChineseFriendsGameInstance.h"
#include "ChineseController.generated.h"
/**
*
*/
UCLASS()
class CHINESESESSIONS_API AChineseController : public APlayerController
{
GENERATED_BODY()
};