代码来源于“易宁”大佬的分享,仅供学习,不要直接复制粘贴。

原帖链接:http://bbs.3dmgame.com/thread-3859071-1-1.html


 1
 2二三五.极速快递(拿着背包对地面点右键,将它传送回家)
 3
 4	MT管理器打开游戏目录/assets/DLC0002/scripts/prefabs/backpack.lua文件,将inst.components.inventoryitem.cangoincontainer = false替换为以下内容
 5
 6	inst.components.inventoryitem.cangoincontainer = true
 7local function OnDeploy (inst, pt)
 8	SpawnPrefab("collapse_small").Transform:SetPosition(inst.Transform:GetWorldPosition())
 9	local pos = Vector3(inst.Transform:GetWorldPosition())
10	local ents = TheSim:FindEntities(pos.x,pos.y,pos.z, 3000)
11	for k,v in pairs(ents) do
12		if v.prefab == "firepit" then
13		   inst.Transform:SetPosition(v.Transform:GetWorldPosition())
14		end
15	end
16end
17	inst:AddComponent("deployable")
18	inst.components.deployable.ondeploy = OnDeploy
19	inst:AddTag("fridge")
20
21	即可将拿不下的东西放在普通背包里,拿着背包对地面点鼠标右键,会自动传送到石头营火旁,再多的战利品都可以快递回家。背包同时具备冷藏功能,里面的食物可以长久保鲜。快递只在同一地层服务(不能从地下传送到地面),为保证快递投送准确,请在同一地层只保留一处石头营火(多处的话将随机投送)。如果之前修改过“同时携带多个背包”,就查找不到inst.components.inventoryitem.cangoincontainer = false这句,将inst.components.inventoryitem.cangoincontainer = true替换为下面的内容即可