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

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

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

第187页:高压电避难所

展开

一八七.高压电避难所(按小键盘加号键筑一圈带高压电的玄武岩墙,按减号键消失)

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

  local function OnExplode(inst, target)

  if target and not target:HasTag("smallbird") and not target:HasTag("chester") then

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

  SpawnPrefab("lightning_rod_fx").Transform:SetPosition(target.Transform:GetWorldPosition())

  inst.SoundEmitter:PlaySound("dontstarve/common/lightningrod")

  target.components.health:DoDelta(-3000)

  end

  inst:DoTaskInTime(.1, function() inst.components.mine:Reset() end )

  end

  inst:AddComponent("mine")

  inst.components.mine:SetRadius(4)

  inst.components.mine:SetAlignment("player")

  inst.components.mine:SetOnExplodeFn(OnExplode)

  inst.components.mine:Reset()

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

  TheInput:AddKeyUpHandler(KEY_KP_PLUS, function()

  local player = GetPlayer()

  local pt = Vector3(player.Transform:GetWorldPosition())

  for k = 1, 50 do

  local theta = 1 * 2 * PI

  local radius = 8

  local result_offset = FindValidPositionByFan(theta, radius, 50, function(offset)

  local x,y,z = (pt + offset):Get()

  local ents = TheSim:FindEntities(x,y,z , 1)

  return not next(ents)

  end)

  if result_offset then

  local tentacle = SpawnPrefab("basalt_pillar")

  tentacle.Transform:SetPosition((pt + result_offset):Get())

  GetPlayer().components.playercontroller:ShakeCamera(inst, "FULL", 0.2, 0.02, .25, 40)

  local fx = SpawnPrefab("lightning_rod_fx")

  local pos = pt + result_offset

  fx.Transform:SetPosition(pos.x, pos.y, pos.z)

  end

  inst.SoundEmitter:PlaySound("dontstarve/common/lightningrod")

  end

  end)

  TheInput:AddKeyUpHandler(KEY_KP_MINUS, function()

  local player = GetPlayer()

  local range = 15

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

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

  for k,v in pairs(ents) do

  if v.prefab == "basalt_pillar" then

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

  v:Remove()

  end

  end

  inst.SoundEmitter:PlaySound("dontstarve/common/lightningrod")

  end)

  即可按小键盘加号键,在主角周围筑起一圈带高压电的玄武岩墙,怪物靠近会被电死,按小键盘减号键自动消失。注意不要离怪物太近时按加号键,会把怪物也圈进来或使墙有缺口。如果使用橙色魔杖或“瑞士手杖”(见本修改技巧),就可以自由出入各个避难所,把家具、农田放在里面,再也不怕狗和巨鹿了

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

责任编辑:Shy夏夏

上一页 181 182 183 184 185 186 187 188 189 190 191 下一页
友情提示:支持键盘左右键“← →”翻页

本文是否解决了您的问题

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