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

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

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

第330页:随身灭火器

展开

二六零.随身灭火器(用寒冬背心种随身灭火器,装备后可灭火)

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

  local function OnDeploy2(inst, pt)

  local extinguisher = SpawnPrefab("trunkvest_winter")

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

  extinguisher.AnimState:SetBank("firefighter")

  extinguisher.AnimState:SetBuild("firefighter")

  extinguisher.AnimState:PlayAnimation("idle_on_loop")

  extinguisher.Transform:SetScale(0.5, 0.5, 0.5)

  extinguisher:RemoveComponent("inventoryitem")

  extinguisher:RemoveComponent("equippable")

  extinguisher:RemoveComponent("insulator")

  extinguisher:RemoveComponent("fueled")

  extinguisher:RemoveComponent("deployable")

  extinguisher:AddComponent("workable")

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

  extinguisher.components.workable:SetWorkLeft(3)

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

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

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

  extinguisher:Remove()

  end )

  extinguisher:AddComponent("inventoryitem")

  extinguisher.components.inventoryitem:ChangeImageName("firesuppressor")

  extinguisher:AddComponent("equippable")

  extinguisher.components.equippable.equipslot = EQUIPSLOTS.HANDS

  extinguisher.components.equippable:SetOnEquip(function(extinguisher, owner)

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

  local waterring = SpawnPrefab("groundpoundring_fx")

  waterring.Transform:SetPosition(owner.Transform:GetWorldPosition())

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

  local pos = Vector3(extinguisher.Transform:GetWorldPosition())

  local ents = TheSim:FindEntities(pos.x,pos.y,pos.z, 10)

  for k,v in pairs(ents) do

  if v.components.burnable and v.components.burnable:IsBurning() then

  if v.prefab == "cactus" or v.prefab == "berrybush" or v.prefab == "berrybush2" or v.prefab == "carrot_planted" or v.prefab == "cave_banana_tree" or v.prefab == "cave_fern" or v.prefab == "deciduoustree" or v.prefab == "deciduoustree_normal" or v.prefab == "deciduoustree_tall" or v.prefab == "deciduoustree_short" or v.prefab == "evergreen" or v.prefab == "evergreen_normal" or v.prefab == "evergreen_tall" or v.prefab == "evergreen_short" or v.prefab == "evergreen_sparse" or v.prefab == "evergreen_sparse_normal" or v.prefab == "evergreen_sparse_tall" or v.prefab == "evergreen_sparse_short" or v.prefab == "flower" or v.prefab == "flower_evil" or v.prefab == "grass" or v.prefab == "marsh_bush" or v.prefab == "red_mushroom" or v.prefab == "green_mushroom" or v.prefab == "blue_mushroom" or v.prefab == "mushtree_tall" or v.prefab == "mushtree_medium" or v.prefab == "mushtree_small" or v.prefab == "sapling" or v.prefab == "flower_cave" or v.prefab == "flower_cave_double" or v.prefab == "flower_cave_triple" or v.prefab == "lichen" or v.prefab == "livingtree" or v.prefab == "marsh_tree" or v.prefab == "reeds" then

  if v.components.propagator then v.components.propagator.spreading = false end

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

  SpawnPrefab(v.prefab).Transform:SetPosition(v.Transform:GetWorldPosition())

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

  v:Remove()

  end

  if v.prefab == "treasurechest" or v.prefab == "slow_farmplot" or v.prefab == "fast_farmplot" or v.prefab == "tent" or v.prefab == "wall_wood" or v.prefab == "wall_hay" or v.prefab == "cookpot" or v.prefab == "beebox" or v.prefab == "homesign" or v.prefab == "researchlab" or v.prefab == "researchlab2" or v.prefab == "researchlab3" or v.prefab == "researchlab4" or v.prefab == "meatrack" or v.prefab == "pighouse" or v.prefab == "rabbithouse" or v.prefab == "pottedfern" or v.prefab == "rainometer" or v.prefab == "winterometer" or v.prefab == "resurrectionstatue" or v.prefab == "siestahut" then

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

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

  v.components.burnable:Extinguish(true)

  end

  end

  end

  end )

  end )

  extinguisher.components.equippable:SetOnUnequip(function(extinguisher, owner)

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

  end )

  extinguisher:AddTag("extinguishers")

  inst:Remove()

  end

  inst:AddComponent("deployable")

  inst.components.deployable.ondeploy = OnDeploy2

  local function onsave2(inst, data)

  if inst:HasTag("extinguishers") then

  data.extinguishers = true

  end

  end

  local function onload2(inst, data)

  if data and data.extinguishers then

  inst.AnimState:SetBank("firefighter")

  inst.AnimState:SetBuild("firefighter")

  inst.AnimState:PlayAnimation("idle_on_loop")

  inst.Transform:SetScale(0.5, 0.5, 0.5)

  inst:RemoveComponent("inventoryitem")

  inst:RemoveComponent("equippable")

  inst:RemoveComponent("insulator")

  inst:RemoveComponent("fueled")

  inst:RemoveComponent("deployable")

  inst:AddComponent("workable")

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

  inst.components.workable:SetWorkLeft(3)

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

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

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

  inst:Remove()

  end )

  inst:AddComponent("inventoryitem")

  inst.components.inventoryitem:ChangeImageName("firesuppressor")

  inst:AddComponent("equippable")

  inst.components.equippable.equipslot = EQUIPSLOTS.HANDS

  inst.components.equippable:SetOnEquip(function(inst, owner)

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

  local waterring = SpawnPrefab("groundpoundring_fx")

  waterring.Transform:SetPosition(owner.Transform:GetWorldPosition())

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

  local pos = Vector3(inst.Transform:GetWorldPosition())

  local ents = TheSim:FindEntities(pos.x,pos.y,pos.z, 10)

  for k,v in pairs(ents) do

  if v.components.burnable and v.components.burnable:IsBurning() then

  if v.prefab == "cactus" or v.prefab == "berrybush" or v.prefab == "berrybush2" or v.prefab == "carrot_planted" or v.prefab == "cave_banana_tree" or v.prefab == "cave_fern" or v.prefab == "deciduoustree" or v.prefab == "deciduoustree_normal" or v.prefab == "deciduoustree_tall" or v.prefab == "deciduoustree_short" or v.prefab == "evergreen" or v.prefab == "evergreen_normal" or v.prefab == "evergreen_tall" or v.prefab == "evergreen_short" or v.prefab == "evergreen_sparse" or v.prefab == "evergreen_sparse_normal" or v.prefab == "evergreen_sparse_tall" or v.prefab == "evergreen_sparse_short" or v.prefab == "flower" or v.prefab == "flower_evil" or v.prefab == "grass" or v.prefab == "marsh_bush" or v.prefab == "red_mushroom" or v.prefab == "green_mushroom" or v.prefab == "blue_mushroom" or v.prefab == "mushtree_tall" or v.prefab == "mushtree_medium" or v.prefab == "mushtree_small" or v.prefab == "sapling" or v.prefab == "flower_cave" or v.prefab == "flower_cave_double" or v.prefab == "flower_cave_triple" or v.prefab == "lichen" or v.prefab == "livingtree" or v.prefab == "marsh_tree" or v.prefab == "reeds" then

  if v.components.propagator then v.components.propagator.spreading = false end

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

  SpawnPrefab(v.prefab).Transform:SetPosition(v.Transform:GetWorldPosition())

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

  v:Remove()

  end

  if v.prefab == "treasurechest" or v.prefab == "slow_farmplot" or v.prefab == "fast_farmplot" or v.prefab == "tent" or v.prefab == "wall_wood" or v.prefab == "wall_hay" or v.prefab == "cookpot" or v.prefab == "beebox" or v.prefab == "homesign" or v.prefab == "researchlab" or v.prefab == "researchlab2" or v.prefab == "researchlab3" or v.prefab == "researchlab4" or v.prefab == "meatrack" or v.prefab == "pighouse" or v.prefab == "rabbithouse" or v.prefab == "pottedfern" or v.prefab == "rainometer" or v.prefab == "winterometer" or v.prefab == "resurrectionstatue" or v.prefab == "siestahut" then

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

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

  v.components.burnable:Extinguish(true)

  end

  end

  end

  end )

  end )

  inst.components.equippable:SetOnUnequip(function(inst, owner)

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

  end )

  inst:AddTag("extinguishers")

  end

  end

  inst.OnSave = onsave2

  inst.OnLoad = onload2

  即可用寒冬背心种随身灭火器,装备随身灭火器,可向外吹出强气流,靠近着火的建筑、植物,会自动灭火,让你对燃烧的基地不再束手无策。不想要随身灭火器了,用锤子砸掉即可。夏日背心在穿戴选项(画着帽子)下,用1个蓝色象鼻、8个蛛丝制造、2个牛毛制造

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

责任编辑:Shy夏夏

上一页 321 322 323 324 325 326 327 328 329 330 331 下一页
友情提示:支持键盘左右键“← →”翻页

本文是否解决了您的问题

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