Вы используете устаревший браузер. Этот и другие сайты могут отображаться в нём некорректно. Вам необходимо обновить браузер или попробовать использовать другой.
function COverthrowGameMode:ExecuteOrderFilter( filterTable )
--[[
for k, v in pairs( filterTable ) do
print("EO: " .. k .. " " .. tostring(v) )
end
]]
local orderType = filterTable["order_type"]
if ( orderType ~= DOTA_UNIT_ORDER_PICKUP_ITEM or filterTable["issuer_player_id_const"] == -1 ) then
return true
else
local item = EntIndexToHScript( filterTable["entindex_target"] )
if item == nil then
return true
end
local pickedItem = item:GetContainedItem()
--print(pickedItem:GetAbilityName())
if pickedItem == nil then
return true
end
if pickedItem:GetAbilityName() == "item_treasure_chest" then
local player = PlayerResource:GetPlayer(filterTable["issuer_player_id_const"])
local hero = player:GetAssignedHero()
if hero:GetNumItemsInInventory() < 6 then
--print("inventory has space")
return true
else
--print("Moving to target instead")
local position = item:GetAbsOrigin()
filterTable["position_x"] = position.x
filterTable["position_y"] = position.y
filterTable["position_z"] = position.z
filterTable["order_type"] = DOTA_UNIT_ORDER_MOVE_TO_POSITION
return true
end
end
end
return true
end
function COverthrowGameMode:ExecuteOrderFilter( filterTable )
--[[
for k, v in pairs( filterTable ) do
print("EO: " .. k .. " " .. tostring(v) )
end
]]
local orderType = filterTable["order_type"]
if ( orderType ~= DOTA_UNIT_ORDER_PICKUP_ITEM or filterTable["issuer_player_id_const"] == -1 ) then
return true
else
local item = EntIndexToHScript( filterTable["entindex_target"] )
if item == nil then
return true
end
local pickedItem = item:GetContainedItem()
--print(pickedItem:GetAbilityName())
if pickedItem == nil then
return true
end
if pickedItem:GetAbilityName() == "item_treasure_chest" then
local player = PlayerResource:GetPlayer(filterTable["issuer_player_id_const"])
local hero = player:GetAssignedHero()
if hero:GetNumItemsInInventory() < 6 then
--print("inventory has space")
return true
else
--print("Moving to target instead")
local position = item:GetAbsOrigin()
filterTable["position_x"] = position.x
filterTable["position_y"] = position.y
filterTable["position_z"] = position.z
filterTable["order_type"] = DOTA_UNIT_ORDER_MOVE_TO_POSITION
return true
end
end
end
return true
end
Вообще,я думал,что ты тут,что-то менял,а именно эту строку
"if hero:GetNumItemsInInventory() < 6 then"
Она типо отвечает за то,со скольки предметами в инвентаре можно взять айтем из сундука (попробуй поменять на 9,я поменял,у меня теперь в рюкзак айтем залетает,есть свой инвентарь полон
Вообще,я думал,что ты тут,что-то менял,а именно эту строку
"if hero:GetNumItemsInInventory() < 6 then"
Она типо отвечает за то,со скольки предметами в инвентаре можно взять айтем из сундука (попробуй поменять на 9,я поменял,у меня теперь в рюкзак айтем залетает,есть свой инвентарь полон