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

◆ NeedInventoryJunctureFromServer()

override bool ManBase::NeedInventoryJunctureFromServer ( notnull EntityAI item,
EntityAI currParent,
EntityAI newParent )
inlineprotected

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

4924 {
4925 if (GetGame().IsMultiplayer())
4926 {
4928 switch (t)
4929 {
4930 case DayZPlayerInstanceType.INSTANCETYPE_AI_SINGLEPLAYER:
4931 return false;
4932 case DayZPlayerInstanceType.INSTANCETYPE_CLIENT:
4933 case DayZPlayerInstanceType.INSTANCETYPE_SERVER:
4934 case DayZPlayerInstanceType.INSTANCETYPE_AI_SERVER:
4935 case DayZPlayerInstanceType.INSTANCETYPE_AI_REMOTE:
4936 case DayZPlayerInstanceType.INSTANCETYPE_REMOTE:
4937 return true; // Might help mitigate "megabugged" (desync)
4938
4939 if (LogManager.IsSyncLogEnable()) syncDebugPrint("[syncinv] " + GetDebugName(this) + " STS=" + GetSimulationTimeStamp() + " NeedInventoryJunctureFromServer item=" + Object.GetDebugName(item) + " currPar=" + currParent + " newPar=" + newParent);
4940
4941 bool i_owned = GetHumanInventory().HasEntityInInventory(item);
4942
4943 bool cp_owned = false;
4944 if (currParent)
4945 cp_owned = GetHumanInventory().HasEntityInInventory(currParent);
4946
4947 bool np_owned = false;
4948 if (newParent)
4949 np_owned = GetHumanInventory().HasEntityInInventory(newParent);
4950
4951 bool all_owned = i_owned && cp_owned && (np_owned || (newParent == null));
4952 if (LogManager.IsSyncLogEnable()) syncDebugPrint("[syncinv] " + GetDebugName(this) + " STS=" + GetSimulationTimeStamp() + " NeedInventoryJunctureFromServer=" + !all_owned + " i_pwn=" + i_owned + " cp_pwn=" + cp_owned + " np_pwn=" + np_owned);
4953
4954 return !all_owned;
4955 default:
4956 Error("[syncinv] unsupported instance type t=" + t);
4957 break;
4958 }
4959 }
4960 return false;
4961 }
void syncDebugPrint(string s)
Определения Debug.c:1
override string GetDebugName()
Определения dayzplayer.c:1170
DayZPlayerInstanceType
defined in C++
Определения dayzplayer.c:1068
proto native DayZPlayerInstanceType GetInstanceType()
class LOD Object
proto native CGame GetGame()
void Error(string err)
Messagebox with error message.
Определения EnDebug.c:90

Перекрестные ссылки Error(), GetDebugName(), GetGame(), GetInstanceType(), LogManager::IsSyncLogEnable() и syncDebugPrint().