第323页:磁悬浮建筑机器人
展开二七三.磁悬浮建筑机器人(将针线包扔在地上自动建50块农田)
用记事本打开游戏目录\data\scripts\prefabs\sewingkit.lua文件,在inst:AddComponent("inspectable")的下一行插入以下内容:
local function startbuild(inst)
inst.name = "fast_farmplot"
local space = 2.1
local row = 10
local num = 0 local num2 = 0 local num3 = 0 local num4 = 0 local num5 = 0
local pt = GetPlayer():GetPosition()
inst:StartThread(function()
for k = 1,row do
num = num + space
inst.Transform:SetPosition(pt.x+num, 5, pt.z+num)
SpawnPrefab(inst.name).Transform:SetPosition(pt.x+num, 0, pt.z+num)
GetPlayer().components.playercontroller:ShakeCamera(inst, "FULL", 0.2, 0.02, .25, 40)
GetPlayer().SoundEmitter:PlaySound("dontstarve/wilson/rock_break")
Sleep(.5)
end
for k = 1,row do
num2 = num2 + space
inst.Transform:SetPosition(pt.x-2.6+num2, 5, pt.z+2.6+num2)
SpawnPrefab(inst.name).Transform:SetPosition(pt.x-2.6+num2, 0, pt.z+2.6+num2)
GetPlayer().components.playercontroller:ShakeCamera(inst, "FULL", 0.2, 0.02, .25, 40)
GetPlayer().SoundEmitter:PlaySound("dontstarve/wilson/rock_break")
Sleep(.5)
end
for k = 1,row do
num3 = num3 + space
inst.Transform:SetPosition(pt.x-5.2+num3, 5, pt.z+5.2+num3)
SpawnPrefab(inst.name).Transform:SetPosition(pt.x-5.2+num3, 0, pt.z+5.2+num3)
GetPlayer().components.playercontroller:ShakeCamera(inst, "FULL", 0.2, 0.02, .25, 40)
GetPlayer().SoundEmitter:PlaySound("dontstarve/wilson/rock_break")
Sleep(.5)
end
for k = 1,row do
num4 = num4 + space
inst.Transform:SetPosition(pt.x-7.8+num4, 5, pt.z+7.8+num4)
SpawnPrefab(inst.name).Transform:SetPosition(pt.x-7.8+num4, 0, pt.z+7.8+num4)
GetPlayer().components.playercontroller:ShakeCamera(inst, "FULL", 0.2, 0.02, .25, 40)
GetPlayer().SoundEmitter:PlaySound("dontstarve/wilson/rock_break")
Sleep(.5)
end
for k = 1,row do
num5 = num5 + space
inst.Transform:SetPosition(pt.x-10.4+num5, 5, pt.z+10.4+num5)
SpawnPrefab(inst.name).Transform:SetPosition(pt.x-10.4+num5, 0, pt.z+10.4+num5)
GetPlayer().components.playercontroller:ShakeCamera(inst, "FULL", 0.2, 0.02, .25, 40)
GetPlayer().SoundEmitter:PlaySound("dontstarve/wilson/rock_break")
Sleep(.5)
end
end)
end
local function ondropped(inst)
if GetPlayer().components.inventory:Has("goldnugget", 100) then
GetPlayer().components.inventory:ConsumeByName("goldnugget", 100)
GetPlayer().SoundEmitter:PlaySound("dontstarve/characters/wx78/levelup")
inst.components.inventoryitem.canbepickedup = false
inst.Physics:SetMotorVelOverride(0,2,0)
inst:DoTaskInTime(3, function() startbuild(inst) end)
inst:DoTaskInTime(28, function()
inst.Physics:ClearMotorVelOverride()
inst.components.inventoryitem.canbepickedup = true
GetPlayer().components.inventory:GiveItem(inst)
end)
end
end
inst:ListenForEvent("ondropped", ondropped)
即可将针线包扔在开阔的空地上,它会悬浮在空中自动建50块农田,同时收取主角100个黄金,身上黄金不足时不会干活。将其中的fast_farmplot(高级农田)改为其他建筑,如cookpot(煮锅)、birdcage(鸟笼)等,就可以建其他建筑了(见本修改技巧“常用物品中英文名称”)。针线包在穿戴选项(画着礼帽)下,用1个木头、8个蛛丝、2个犬牙制造
更多相关内容请关注:饥荒专区
责任编辑:Shy夏夏