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

◆ PlayerCheckRequestDst()

bool PlayerCheckRequestDst ( notnull InventoryLocation src,
notnull InventoryLocation dst,
float radius )
protected

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

2853 {
2854 bool result = true;
2855
2856 EntityAI ent = dst.GetParent();
2857 if ( ent )
2858 {
2859 PlayerBase player = PlayerBase.Cast(ent.GetHierarchyRootPlayer());
2860 if (player)
2861 {
2862 if ( GetDayZPlayerOwner() != player )
2863 {
2864 if (player.IsAlive())
2865 {
2866 if (!player.IsRestrained() && !player.IsUnconscious())
2867 {
2868 result = false;
2869 }
2870 }
2871 }
2872 }
2873 }
2874
2875 if (!LocationCanMoveEntity(src, dst))
2876 {
2877 result = false;
2878 }
2879
2880
2881 if ( result )
2882 {
2883 result = CheckMoveToDstRequest( GetManOwner(), src, dst, radius);
2884 }
2885
2886 if (result)
2887 {
2888 EntityAI item = dst.GetItem().GetHierarchyRoot();
2889 EntityAI root = item.GetHierarchyRoot();
2890 result = vector.Distance(GetManOwner().GetPosition(), item.GetPosition()) < (radius + root.GetCollisionRadius());
2891 }
2892
2893 return result;
2894 }
DayZPlayer GetDayZPlayerOwner()
Определения DayZPlayerInventory.c:167
Определения PlayerBaseClient.c:2
static proto native float Distance(vector v1, vector v2)
Returns the distance between tips of two 3D vectors.
Определения EnConvert.c:119
vector GetPosition()
Get the world position of the Effect.
Определения Effect.c:473

Перекрестные ссылки vector::Distance(), GetDayZPlayerOwner() и GetPosition().

Используется в ValidateSyncMove().