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

◆ NeedInventoryJunctureFromServer()

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

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

4914 {
4915 if (GetGame().IsMultiplayer())
4916 {
4918 switch (t)
4919 {
4920 case DayZPlayerInstanceType.INSTANCETYPE_AI_SINGLEPLAYER:
4921 return false;
4922 case DayZPlayerInstanceType.INSTANCETYPE_CLIENT:
4923 case DayZPlayerInstanceType.INSTANCETYPE_SERVER:
4924 case DayZPlayerInstanceType.INSTANCETYPE_AI_SERVER:
4925 case DayZPlayerInstanceType.INSTANCETYPE_AI_REMOTE:
4926 case DayZPlayerInstanceType.INSTANCETYPE_REMOTE:
4927 return true; // Might help mitigate "megabugged" (desync)
4928
4929 if (LogManager.IsSyncLogEnable()) syncDebugPrint("[syncinv] " + GetDebugName(this) + " STS=" + GetSimulationTimeStamp() + " NeedInventoryJunctureFromServer item=" + Object.GetDebugName(item) + " currPar=" + currParent + " newPar=" + newParent);
4930
4931 bool i_owned = GetHumanInventory().HasEntityInInventory(item);
4932
4933 bool cp_owned = false;
4934 if (currParent)
4935 cp_owned = GetHumanInventory().HasEntityInInventory(currParent);
4936
4937 bool np_owned = false;
4938 if (newParent)
4939 np_owned = GetHumanInventory().HasEntityInInventory(newParent);
4940
4941 bool all_owned = i_owned && cp_owned && (np_owned || (newParent == null));
4942 if (LogManager.IsSyncLogEnable()) syncDebugPrint("[syncinv] " + GetDebugName(this) + " STS=" + GetSimulationTimeStamp() + " NeedInventoryJunctureFromServer=" + !all_owned + " i_pwn=" + i_owned + " cp_pwn=" + cp_owned + " np_pwn=" + np_owned);
4943
4944 return !all_owned;
4945 default:
4946 Error("[syncinv] unsupported instance type t=" + t);
4947 break;
4948 }
4949 }
4950 return false;
4951 }
void syncDebugPrint(string s)
Определения 3_Game/Systems/Inventory/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().