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

◆ OnUpdate() [1/2]

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

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

2957 {
2958 m_DeltaTime = timeslice;
2959
2960 Mission mission = GetMission();
2961 bool gameIsRunning = false;
2962
2963 if (doSim && mission)
2964 {
2965 if (!mission.IsPaused())
2966 gameIsRunning = true;
2967
2968 mission.OnUpdate(timeslice);
2969
2970 // update local weather effects
2971 if ( IsClient() || !IsMultiplayer() )
2972 {
2973 WorldData worldData = mission.GetWorldData();
2974 if ( worldData )
2975 worldData.UpdateWeatherEffects( GetWeather(), timeslice );
2976 }
2977 }
2978
2979 SEffectManager.OnUpdate(timeslice);
2980
2981 // queues and timers update
2984 GetTimerQueue(CALL_CATEGORY_SYSTEM).Tick(timeslice);
2985
2986 #ifndef NO_GUI
2987 if (m_IsConnecting)
2988 UpdateLoginQueue(timeslice);
2989
2990 if (m_loading && m_loading.IsLoading())
2991 {
2992 m_loading.OnUpdate(timeslice);
2993 }
2994 else if (m_LoginTimeScreen && m_LoginTimeScreen.IsStatic())
2995 {
2996 m_LoginTimeScreen.Update(timeslice);
2997 }
2998 else
2999 {
3002 GetTimerQueue(CALL_CATEGORY_GUI).Tick(timeslice);
3003 GetDragQueue().Tick();
3004 }
3005
3006 NotificationSystem.Update(timeslice);
3007 if (m_Notifications)
3008 {
3009 m_Notifications.Update(timeslice);
3010 }
3011
3012 #ifndef SERVER
3013 #ifdef DIAG_DEVELOPER
3014 if (g_Game.IsMultiplayer() && GetPlayer() && DiagMenu.GetBool(DiagMenuIDs.MISC_CONNECTION_STATS))
3015 {
3016 PlayerIdentity playerIdentity = GetPlayer().GetIdentity();
3017
3018 if (playerIdentity)
3019 {
3020 int pingAct = playerIdentity.GetPingAct();
3021 int pingAvg = playerIdentity.GetPingAvg();
3022
3023 float throttleInput = playerIdentity.GetInputThrottle();
3024 float throttleOutput = playerIdentity.GetOutputThrottle();
3025
3026 DrawPerformanceStats(pingAct, pingAvg, throttleInput, throttleOutput);
3027 }
3028 }
3029 #endif
3030 #endif
3031
3032 #endif
3033
3034 if (gameIsRunning)
3035 {
3038 GetTimerQueue(CALL_CATEGORY_GAMEPLAY).Tick(timeslice);
3039 }
3040 }
DayZGame g_Game
Определения DayZGame.c:3942
Mission mission
Определения DisplayStatus.c:28
DiagMenuIDs
Определения EDiagMenuIDs.c:2
void UpdateLoginQueue(float timeslice)
Определения DayZGame.c:1838
override ScriptCallQueue GetCallQueue(int call_category)
Определения DayZGame.c:1198
proto native bool IsMultiplayer()
override DragQueue GetDragQueue()
Определения DayZGame.c:1226
override ScriptInvoker GetUpdateQueue(int call_category)
Определения DayZGame.c:1203
bool m_IsConnecting
Определения DayZGame.c:946
float m_DeltaTime
Определения DayZGame.c:953
proto native DayZPlayer GetPlayer()
proto native Weather GetWeather()
Returns weather controller object.
ref NotificationUI m_Notifications
Определения DayZGame.c:909
proto native bool IsClient()
ref LoginTimeBase m_LoginTimeScreen
Определения DayZGame.c:914
override TimerQueue GetTimerQueue(int call_category)
Определения DayZGame.c:1221
proto native Mission GetMission()
ref LoadingScreen m_loading
Определения DayZGame.c:913
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:185
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().