Project SkyFire Core
SkyFire 5.4.8 server core API documentation
Toggle main menu visibility
Loading...
Searching...
No Matches
WorldShutdownLifecycle.cpp
Go to the documentation of this file.
1
/*
2
* This file is part of Project SkyFire https://www.projectskyfire.org.
3
* See LICENSE.md file for Copyright information
4
*/
5
6
#include "
WorldShutdownLifecycle.h
"
7
8
namespace
Skyfire
9
{
10
namespace
WorldShutdown
11
{
12
namespace
13
{
14
int
GetShutdownStepIndex(
WorldShutdownStep
step)
15
{
16
switch
(step)
17
{
18
case
WORLD_SHUTDOWN_START
:
19
return
0;
20
case
WORLD_SHUTDOWN_SCRIPT_SHUTDOWN
:
21
return
1;
22
case
WORLD_SHUTDOWN_KICK_PLAYERS
:
23
return
2;
24
case
WORLD_SHUTDOWN_UPDATE_SESSIONS
:
25
return
3;
26
case
WORLD_SHUTDOWN_DELETE_BATTLEGROUNDS
:
27
return
4;
28
case
WORLD_SHUTDOWN_STOP_NETWORK
:
29
return
5;
30
case
WORLD_SHUTDOWN_UNLOAD_MAPS
:
31
return
6;
32
case
WORLD_SHUTDOWN_UNLOAD_OBJECT_ACCESSOR
:
33
return
7;
34
case
WORLD_SHUTDOWN_UNLOAD_SCRIPTS
:
35
return
8;
36
case
WORLD_SHUTDOWN_OUTDOOR_PVP_DIE
:
37
return
9;
38
case
WORLD_SHUTDOWN_COMPLETE
:
39
return
10;
40
default
:
41
return
-1;
42
}
43
}
44
}
45
46
char
const
*
GetShutdownStepName
(
WorldShutdownStep
step)
47
{
48
switch
(step)
49
{
50
case
WORLD_SHUTDOWN_START
:
51
return
"start"
;
52
case
WORLD_SHUTDOWN_SCRIPT_SHUTDOWN
:
53
return
"script shutdown"
;
54
case
WORLD_SHUTDOWN_KICK_PLAYERS
:
55
return
"kick players"
;
56
case
WORLD_SHUTDOWN_UPDATE_SESSIONS
:
57
return
"update sessions"
;
58
case
WORLD_SHUTDOWN_DELETE_BATTLEGROUNDS
:
59
return
"delete battlegrounds"
;
60
case
WORLD_SHUTDOWN_STOP_NETWORK
:
61
return
"stop network"
;
62
case
WORLD_SHUTDOWN_UNLOAD_MAPS
:
63
return
"unload maps"
;
64
case
WORLD_SHUTDOWN_UNLOAD_OBJECT_ACCESSOR
:
65
return
"unload object accessor"
;
66
case
WORLD_SHUTDOWN_UNLOAD_SCRIPTS
:
67
return
"unload scripts"
;
68
case
WORLD_SHUTDOWN_OUTDOOR_PVP_DIE
:
69
return
"outdoor pvp cleanup"
;
70
case
WORLD_SHUTDOWN_COMPLETE
:
71
return
"complete"
;
72
default
:
73
return
"unknown"
;
74
}
75
}
76
77
bool
IsExpectedShutdownTransition
(
WorldShutdownStep
current,
WorldShutdownStep
next)
78
{
79
int
const
currentIndex = GetShutdownStepIndex(current);
80
int
const
nextIndex = GetShutdownStepIndex(next);
81
return
currentIndex >= 0 && nextIndex == currentIndex + 1;
82
}
83
84
bool
IsShutdownStepBefore
(
WorldShutdownStep
first,
WorldShutdownStep
second)
85
{
86
int
const
firstIndex = GetShutdownStepIndex(first);
87
int
const
secondIndex = GetShutdownStepIndex(second);
88
return
firstIndex >= 0 && secondIndex >= 0 && firstIndex < secondIndex;
89
}
90
}
91
}
WorldShutdownLifecycle.h
Skyfire::WorldShutdown
Definition
WorldShutdownLifecycle.cpp:11
Skyfire::WorldShutdown::GetShutdownStepName
char const * GetShutdownStepName(WorldShutdownStep step)
Definition
WorldShutdownLifecycle.cpp:46
Skyfire::WorldShutdown::IsExpectedShutdownTransition
bool IsExpectedShutdownTransition(WorldShutdownStep current, WorldShutdownStep next)
Definition
WorldShutdownLifecycle.cpp:77
Skyfire::WorldShutdown::WorldShutdownStep
WorldShutdownStep
Definition
WorldShutdownLifecycle.h:14
Skyfire::WorldShutdown::WORLD_SHUTDOWN_UNLOAD_SCRIPTS
@ WORLD_SHUTDOWN_UNLOAD_SCRIPTS
Definition
WorldShutdownLifecycle.h:23
Skyfire::WorldShutdown::WORLD_SHUTDOWN_UNLOAD_MAPS
@ WORLD_SHUTDOWN_UNLOAD_MAPS
Definition
WorldShutdownLifecycle.h:21
Skyfire::WorldShutdown::WORLD_SHUTDOWN_SCRIPT_SHUTDOWN
@ WORLD_SHUTDOWN_SCRIPT_SHUTDOWN
Definition
WorldShutdownLifecycle.h:16
Skyfire::WorldShutdown::WORLD_SHUTDOWN_COMPLETE
@ WORLD_SHUTDOWN_COMPLETE
Definition
WorldShutdownLifecycle.h:25
Skyfire::WorldShutdown::WORLD_SHUTDOWN_STOP_NETWORK
@ WORLD_SHUTDOWN_STOP_NETWORK
Definition
WorldShutdownLifecycle.h:20
Skyfire::WorldShutdown::WORLD_SHUTDOWN_DELETE_BATTLEGROUNDS
@ WORLD_SHUTDOWN_DELETE_BATTLEGROUNDS
Definition
WorldShutdownLifecycle.h:19
Skyfire::WorldShutdown::WORLD_SHUTDOWN_START
@ WORLD_SHUTDOWN_START
Definition
WorldShutdownLifecycle.h:15
Skyfire::WorldShutdown::WORLD_SHUTDOWN_UNLOAD_OBJECT_ACCESSOR
@ WORLD_SHUTDOWN_UNLOAD_OBJECT_ACCESSOR
Definition
WorldShutdownLifecycle.h:22
Skyfire::WorldShutdown::WORLD_SHUTDOWN_KICK_PLAYERS
@ WORLD_SHUTDOWN_KICK_PLAYERS
Definition
WorldShutdownLifecycle.h:17
Skyfire::WorldShutdown::WORLD_SHUTDOWN_UPDATE_SESSIONS
@ WORLD_SHUTDOWN_UPDATE_SESSIONS
Definition
WorldShutdownLifecycle.h:18
Skyfire::WorldShutdown::WORLD_SHUTDOWN_OUTDOOR_PVP_DIE
@ WORLD_SHUTDOWN_OUTDOOR_PVP_DIE
Definition
WorldShutdownLifecycle.h:24
Skyfire::WorldShutdown::IsShutdownStepBefore
bool IsShutdownStepBefore(WorldShutdownStep first, WorldShutdownStep second)
Definition
WorldShutdownLifecycle.cpp:84
Skyfire
Definition
AuthPatchTransfer.h:12
src
server
worldserver
WorldThread
WorldShutdownLifecycle.cpp
Generated on
for Project SkyFire Core by
1.17.0