@@ -18,7 +18,6 @@ void AGameModeDemoBase::InitGame(const FString& MapName, const FString& Options,
1818// Called when the game starts or when spawned
1919void AGameModeDemoBase::BeginPlay ()
2020{
21- startRelogin = false ;
2221 Super::BeginPlay ();
2322 installEvents ();
2423}
@@ -78,35 +77,23 @@ void AGameModeDemoBase::onReloginBaseappFailed_Implementation(const UKBEventData
7877{
7978}
8079
81-
82- void AGameModeDemoBase::onReloginBaseappTimerBlueprintCallable ()
80+ void AGameModeDemoBase::startReloginBaseappTimer ()
8381{
84- // ERROR_MSG("%s", "disconnect! will try to reconnect...(你已掉线,尝试重连中!)");
85- startRelogin = true ;
86- GetWorldTimerManager ().SetTimer (timerHandle, this , &AGameModeDemoBase::onReloginBaseappTimer, 1 .0f , false , 1 .0f );
82+ if (!timerHandle.IsValid ())
83+ GetWorldTimerManager ().SetTimer (timerHandle, this , &AGameModeDemoBase::onReloginBaseappTimer, 1 .0f , false , 1 .0f );
8784}
8885
89- void AGameModeDemoBase::stopTimerAndResetFlag ()
86+ void AGameModeDemoBase::stopReloginBaseappTimer ()
9087{
91- stopReloginBaseappTimer ();
92- resetFlag ();
88+ GetWorldTimerManager ().ClearTimer (timerHandle);
9389}
9490
9591void AGameModeDemoBase::onReloginBaseappTimer ()
9692{
9793 KBEngine::KBEngineApp::getSingleton ().reloginBaseapp ();
98- if (startRelogin)
99- GetWorldTimerManager ().SetTimer (timerHandle, this , &AGameModeDemoBase::onReloginBaseappTimer, 1 .0f , false , 3 .0f );
100- }
101-
102- void AGameModeDemoBase::stopReloginBaseappTimer ()
103- {
104- GetWorldTimerManager ().ClearTimer (timerHandle);
105- }
10694
107- void AGameModeDemoBase::resetFlag ()
108- {
109- startRelogin = false ;
95+ if (timerHandle.IsValid ())
96+ GetWorldTimerManager ().SetTimer (timerHandle, this , &AGameModeDemoBase::onReloginBaseappTimer, 1 .0f , false , 3 .0f );
11097}
11198
11299
0 commit comments