DayZ 1.30
DayZ Explorer by KGB
 
Загрузка...
Поиск...
Не найдено

◆ OnUpdate() [1/2]

override void CGame::OnUpdate ( bool doSim,
float timeslice )
inlineprotected

См. определение в файле DayZGame.c строка 3000

3001 {
3002 m_DeltaTime = timeslice;
3003
3004 Mission mission = GetMission();
3005 bool gameIsRunning = false;
3006
3007 if (doSim && mission)
3008 {
3009 if (!mission.IsPaused())
3010 gameIsRunning = true;
3011
3012 mission.OnUpdate(timeslice);
3013
3014 // update local weather effects
3015 if ( IsClient() || !IsMultiplayer() )
3016 {
3017 WorldData worldData = mission.GetWorldData();
3018 if ( worldData )
3019 worldData.UpdateWeatherEffects( GetWeather(), timeslice );
3020 }
3021 }
3022
3023 SEffectManager.OnUpdate(timeslice);
3024
3025 // queues and timers update
3028 GetTimerQueue(CALL_CATEGORY_SYSTEM).Tick(timeslice);
3029
3030 #ifndef NO_GUI
3031 if (m_IsConnecting)
3032 UpdateLoginQueue(timeslice);
3033
3034 if (m_loading && m_loading.IsLoading())
3035 {
3036 m_loading.OnUpdate(timeslice);
3037 }
3038 else if (m_LoginTimeScreen && m_LoginTimeScreen.IsStatic())
3039 {
3040 m_LoginTimeScreen.Update(timeslice);
3041 }
3042 else
3043 {
3046 GetTimerQueue(CALL_CATEGORY_GUI).Tick(timeslice);
3047 GetDragQueue().Tick();
3048 }
3049
3050 NotificationSystem.Update(timeslice);
3051 if (m_Notifications)
3052 {
3053 m_Notifications.Update(timeslice);
3054 }
3055
3056 #ifndef SERVER
3057 #ifdef DIAG_DEVELOPER
3058 if (g_Game.IsMultiplayer() && GetPlayer() && DiagMenu.GetBool(DiagMenuIDs.MISC_CONNECTION_STATS))
3059 {
3060 PlayerIdentity playerIdentity = GetPlayer().GetIdentity();
3061
3062 if (playerIdentity)
3063 {
3064 int pingAct = playerIdentity.GetPingAct();
3065 int pingAvg = playerIdentity.GetPingAvg();
3066
3067 float throttleInput = playerIdentity.GetInputThrottle();
3068 float throttleOutput = playerIdentity.GetOutputThrottle();
3069
3070 DrawPerformanceStats(pingAct, pingAvg, throttleInput, throttleOutput);
3071 }
3072 }
3073 #endif
3074 #endif
3075
3076 #endif
3077
3078 if (gameIsRunning)
3079 {
3082 GetTimerQueue(CALL_CATEGORY_GAMEPLAY).Tick(timeslice);
3083 }
3084 }
DayZGame g_Game
Определения DayZGame.c:4074
Mission mission
Определения DisplayStatus.c:28
DiagMenuIDs
Определения EDiagMenuIDs.c:2
void UpdateLoginQueue(float timeslice)
Определения DayZGame.c:1875
override ScriptCallQueue GetCallQueue(int call_category)
Определения DayZGame.c:1233
proto native bool IsMultiplayer()
override DragQueue GetDragQueue()
Определения DayZGame.c:1261
override ScriptInvoker GetUpdateQueue(int call_category)
Определения DayZGame.c:1238
bool m_IsConnecting
Определения DayZGame.c:963
float m_DeltaTime
Определения DayZGame.c:970
proto native DayZPlayer GetPlayer()
proto native Weather GetWeather()
Returns weather controller object.
ref NotificationUI m_Notifications
Определения DayZGame.c:926
proto native bool IsClient()
ref LoginTimeBase m_LoginTimeScreen
Определения DayZGame.c:931
override TimerQueue GetTimerQueue(int call_category)
Определения DayZGame.c:1256
proto native Mission GetMission()
ref LoadingScreen m_loading
Определения DayZGame.c:930
void OnUpdate(float timeslice)
Определения gameplay.c:703
WorldData GetWorldData()
Определения gameplay.c:742
bool IsPaused()
Определения gameplay.c:757
proto float GetOutputThrottle()
Throttling performed on output bandwidth since last update (percentage [0,1])
proto int GetPingAvg()
ping range estimation
proto float GetInputThrottle()
Throttling performed on input bandwidth since last update(percentage [0,1]) (unknown value on Server)
proto int GetPingAct()
ping range estimation
proto native void Tick(float timeslice)
executes calls on queue if their time is already elapsed, if 'repeat = false' call is removed from qu...
proto void Invoke(void param1=NULL, void param2=NULL, void param3=NULL, void param4=NULL, void param5=NULL, void param6=NULL, void param7=NULL, void param8=NULL, void param9=NULL)
invoke call on all inserted methods with given arguments
void UpdateWeatherEffects(Weather weather, float timeslice)
Updates local weather effects.
Определения WorldData.c:195
const int CALL_CATEGORY_GAMEPLAY
Определения 3_Game/DayZ/tools/tools.c:10
const int CALL_CATEGORY_GUI
Определения 3_Game/DayZ/tools/tools.c:9
const int CALL_CATEGORY_SYSTEM
Определения 3_Game/DayZ/tools/tools.c:8

Перекрестные ссылки CALL_CATEGORY_GAMEPLAY, CALL_CATEGORY_GUI, CALL_CATEGORY_SYSTEM, g_Game, DiagMenu::GetBool(), GetCallQueue(), GetDragQueue(), PlayerIdentityBase::GetInputThrottle(), GetMission(), PlayerIdentityBase::GetOutputThrottle(), PlayerIdentityBase::GetPingAct(), PlayerIdentityBase::GetPingAvg(), GetPlayer(), GetTimerQueue(), GetUpdateQueue(), GetWeather(), ScriptInvoker::Invoke(), IsClient(), IsMultiplayer(), m_DeltaTime, m_IsConnecting, m_loading, m_LoginTimeScreen, m_Notifications, mission, SEffectManager::OnUpdate(), ScriptCallQueue::Tick(), NotificationSystem::Update(), UpdateLoginQueue() и WorldData::UpdateWeatherEffects().