- 精华
- 阅读权限
- 60
- 好友
- 相册
- 分享
- 听众
- 收听
- 注册时间
- 2016-1-28
- 在线时间
- 小时
- 最后登录
- 1970-1-1
|
上次这个帖子刀剑2 单人进双人本的方法,添加召唤分身道具 - 网游单机讨论 - 藏宝湾网游单机站 - Powered by Discuz!写了先民祖庙单人拉开关,但是没有测试。
测试发现,没改成功。现在重新修改后,经测试可以单人拉动机关开门。修改文件如下:
jiguan_off.lua
function SkillUse(pUser, pDest, SkillEventID)
if sys.check(pUser) ~= true then
return
end
local scn = pUser.scn_unit
if sys.check(scn) ~= true then
return
end
local iCount = scn:GetTmpFlag(xianming_temple_inc.dungeon_temp_flag.act5_door_close).v_int
-- 直接设置为1,确保单人触发
scn:SetTmpFlag(xianming_temple_inc.dungeon_temp_flag.act5_door_close, 1)
-- 立即触发开门逻辑
local function on_off_door()
local iTimeOut = scn:GetTmpFlag(xianming_temple_inc.dungeon_temp_flag.act5_time_out).v_int
if iTimeOut ~= 0 then
xianming_temple_level_5.on_level_end(scn)
return
end
local function on_open_door(door_table)
if door_table ~= nil then
dungen_cmn.SetDoorByDoorName(scn, door_table.door_name, true, door_table.refresh_table, door_table.refresh_id)
end
end
-- 打开正确的门
on_open_door(xianming_temple_inc.Act5_Door[3])
-- 清理机关NPC
local on_set_dead_npc = function(target_npc)
if sys.check(target_npc) then
target_npc:SetDead(bo2.eScnObjDeadT_Vanish)
end
end
scn:ForEachAliasNpc(xianming_temple_inc.ScriptTempValue.act5_jiguan, on_set_dead_npc)
-- 清除计时器
scn:ClearScnTimeEvent()
-- 播放过场动画
local on_begin_film = function(player)
server_film.OnExecute(player, xianming_temple_inc.ScriptTempValue.act5_film_id)
end
scn:ForEachScnPlayer(on_begin_film)
-- 禁用UI计时器
local scn_unit = scn
local data = {scn = scn_unit}
common_timer.disable_act_timeUI(data)
end
on_off_door()
end
jiguan_fail.lua
function SkillUse(pUser, pDest, SkillEventID)
if sys.check(pUser) ~= true then
return
end
local scn = pUser.scn_unit
if sys.check(scn) ~= true then
return
end
local iCount = scn:GetTmpFlag(xianming_temple_inc.dungeon_temp_flag.act5_door_close).v_int
-- 修改为单人逻辑:如果计数小于1就重置
if iCount < 1 then
local iData = iCount - 1
if iData < 0 then
iData = 0
end
scn:SetTmpFlag(xianming_temple_inc.dungeon_temp_flag.act5_door_close, iData)
local npc_name = pUser.alias
local still_table = xianming_temple_inc.Act5_Still
for i, v in pairs(still_table) do
if v ~= nil and v.npc ~= nil and v.npc == npc_name and v.id ~= nil then
scn:RefreshStill(v.still_table, area_id, v.id, v.id, pUser.position)
end
end
end
end
修改服务端这两个文件就可以啦。
想体验传国报印任务剧情的可以在guide_cha_auto.txt:慕容澈的quest_begin添加上6005。
后面还没玩到。。。。
|
|