游民星空 > 攻略秘籍 > 攻略 > 正文

饥荒 全人物解锁及主角自动回血等实用修改教程

2015-01-21 11:28:46 来源:互联网 作者:易宁 我要投稿

第354页:商业采矿机

展开

三零四.商业采矿机(用晶体管种商业采矿机,20个黄金租用一次,收购采出的矿石,赔钱、赚钱天注定)

  用记事本打开游戏目录\data\DLC0001\scripts\prefabs\transistor.lua文件,在inst:AddComponent("inspectable")的下一行插入以下内容:

  local function makeluckypit(inst)

  local pt = inst:GetPosition()

  local luckypit = SpawnPrefab("transistor")

  luckypit.Transform:SetPosition(pt.x, pt.y, pt.z)

  luckypit.AnimState:SetBank("coldfirepit")

  luckypit.AnimState:SetBuild("coldfirepit")

  luckypit.AnimState:PlayAnimation("idle",false)

  luckypit.entity:AddSoundEmitter()

  luckypit.Transform:SetScale(1.5,1.5,1.5)

  luckypit:RemoveComponent("stackable")

  luckypit:RemoveComponent("inventoryitem")

  luckypit:RemoveComponent("deployable")

  luckypit:AddComponent("workable")

  luckypit.components.workable:SetWorkAction(ACTIONS.HAMMER)

  luckypit.components.workable:SetWorkLeft(3)

  luckypit.components.workable:SetOnFinishCallback(function(luckypit)

  SpawnPrefab("collapse_big").Transform:SetPosition(luckypit.Transform:GetWorldPosition())

  GetPlayer().SoundEmitter:PlaySound("dontstarve/common/destroy_wood")

  luckypit:Remove()

  end )

  luckypit:AddComponent("trader")

  luckypit.components.trader:SetAcceptTest(function(luckypit, item)

  if GetPlayer().components.inventory:Has("goldnugget", 20) then

  if not luckypit:HasTag("domining") then

  if item.prefab == "goldnugget" then

  return true

  end

  end

  end

  if item.prefab == "rocks" or item.prefab == "nitre" or item.prefab == "flint" or item.prefab == "redgem" or item.prefab == "bluegem" or item.prefab == "purplegem" or item.prefab == "greengem" or item.prefab == "orangegem" or item.prefab == "yellowgem" or item.prefab == "thulecite" or item.prefab == "ice" then

  return true

  end

  return false

  end )

  luckypit.components.trader.onaccept = function(luckypit, giver, item)

  if item.prefab == "goldnugget" then

  giver.components.inventory:ConsumeByName("goldnugget", 19)

  GetPlayer().SoundEmitter:PlaySound("dontstarve/HUD/research_available")

  luckypit:AddTag("domining")

  luckypit.task = luckypit:DoPeriodicTask(1, function()

  local pt0 = luckypit:GetPosition()

  luckypit.AnimState:SetBloomEffectHandle("shaders/anim.ksh")

  luckypit:DoTaskInTime(0.5, function() luckypit.AnimState:SetBloomEffectHandle("") end )

  SpawnPrefab("collapse_small").Transform:SetPosition(pt0.x, 1, pt0.z)

  luckypit.SoundEmitter:PlaySound("dontstarve/wilson/rock_break")

  GetPlayer().components.playercontroller:ShakeCamera(luckypit, "FULL", 0.7, 0.02, .5, 40)

  local ores = {"rocks","nitre","flint","redgem","bluegem","purplegem","greengem","orangegem","yellowgem","thulecite","ice","goldnugget","ash"}

  local ore = ores[math.random(#ores)]

  local myore = SpawnPrefab(ore)

  myore.Transform:SetPosition(pt0.x, 0, pt0.z)

  myore.components.inventoryitem.canbepickedup = false

  myore:AddComponent("complexprojectile")

  myore.components.complexprojectile.yOffset = 2.5

  myore.components.complexprojectile:Launch(Point(pt0.x+(math.random(10)-math.random(10)), 0, pt0.z+(math.random(10)-math.random(10))))

  myore.components.complexprojectile:SetOnHit(function()

  SpawnPrefab("ground_chunks_breaking").Transform:SetPosition(myore.Transform:GetWorldPosition())

  myore:RemoveComponent("complexprojectile")

  myore.components.inventoryitem.canbepickedup = true

  end )

  end )

  luckypit:DoTaskInTime(math.random(10,60), function()

  SpawnPrefab("collapse_big").Transform:SetPosition(luckypit.Transform:GetWorldPosition())

  luckypit.SoundEmitter:PlaySound("dontstarve/common/destroy_wood")

  if luckypit.task then luckypit.task:Cancel() luckypit.task = nil end

  luckypit:RemoveTag("domining")

  end )

  end

  if item.prefab == "thulecite" then

  for k = 1, 3 do

  local goldnugget = SpawnPrefab("goldnugget")

  giver.components.inventory:GiveItem(goldnugget)

  end

  end

  if item.prefab == "rocks" or item.prefab == "nitre" or item.prefab == "flint" or item.prefab == "redgem" or item.prefab == "bluegem" or item.prefab == "purplegem" or item.prefab == "greengem" or item.prefab == "orangegem" or item.prefab == "yellowgem" or item.prefab == "ice" then

  local goldnugget = SpawnPrefab("goldnugget")

  giver.components.inventory:GiveItem(goldnugget)

  end

  end

  luckypit:AddTag("luckypit")

  end

  local function OnDeploy (inst, pt)

  makeluckypit(inst)

  inst.components.stackable:Get():Remove()

  end

  inst:AddComponent("deployable")

  inst.components.deployable.ondeploy = OnDeploy

  local function onsave(inst, data)

  if inst:HasTag("luckypit") then

  data.luckypit = true

  end

  end

  local function onload(inst, data)

  if data and data.luckypit then

  makeluckypit(inst)

  inst:Remove()

  end

  end

  inst.OnSave = onsave

  inst.OnLoad = onload

  即可用晶体管种商业采矿机(拿着1个晶体管对地面点鼠标右键,如果拿着多个,则不会种出来),给它20个黄金(拿着黄金对采矿机点鼠标左键)可租用一次,采出的矿石数量不确定,还有一定概率采出灰。你可以将矿石留下自用,也可以卖给商业采矿机(拿着矿石对采矿机点鼠标左键),除铥矿石可卖3个黄金外,其余每个矿石可卖1个黄金,能否平衡你支付的租金,就要看天意了,开启矿业大亨的生涯吧。不想要商业采矿机了,用锤子砸掉即可。晶体管在精炼选项(画着白色宝石)下,用2个黄金、1个石砖制造

更多相关内容请关注:饥荒专区

责任编辑:Shy夏夏

上一页 351 352 353 354 355 356 357 358 359 360 361 下一页
友情提示:支持键盘左右键“← →”翻页

本文是否解决了您的问题

文章内容导航
游民星空APP
随手浏览游戏攻略
code
攻略合集
单机游戏下载
休闲娱乐
综合热点资讯
游民星空联运游戏