--????????????????????? function s9000601_canuse(MapID, InstanceID, SkillID, OwnerID, TargetID) if not role.IsRoleMarried(OwnerID) or not role.IsRoleMarried(TargetID) then return 14 end local lover = role.GetRoleLoverID(MapID, InstanceID, OwnerID) if lover == nil or lover ~= TargetID then return 14 end if not role.IsCouple(TargetID, OwnerID) then return 14 end for i in pairs(Skill_BattleGround) do if MapID == Skill_BattleGround[i] then return 23 end end return 0 end --?????????? aux.RegisterSkillEvent(9000601, 0, "s9000601_canuse") aux.RegisterSkillEvent(6944601, 0, "s9000601_canuse") aux.RegisterSkillEvent(9000801, 0, "s9000601_canuse") --????????????????????? function s9000701_canuse(MapID, InstanceID, SkillID, OwnerID, TargetID) local LoverID = role.GetRoleLoverID(MapID, InstanceID,OwnerID) if LoverID == nil then return 7 elseif MapID == 3911351072 or MapID == 1266370382 or MapID == 2962677420 or MapID == 2962677164 or MapID == 2919364867 or MapID == 2835478787 or MapID == 2818701571 then --????????????? return 23 else --[[for i in pairs(Skill_BattleGround) do if MapID == Skill_BattleGround[i] then return 23 end end]] local Map, Instance = role.GetRoleMapID(LoverID) local bool = false if Map ~= nil then if Map == 3911351072 or Map == 1266370382 then --- k1_tower and f09 fix return 23 else for k,v in pairs(Skill_NormalCRC) do if Map == v then bool = true break end end end end if bool then --[[for i in pairs(Skill_NormalCRC) do if MapID == Skill_NormalCRC[i] then return 0 end end for i in pairs(Skill_NormalCRC) do if MapID == Skill_NormalCRC[i] then]] return 0 -- end --end end return 68 end end --?????????? aux.RegisterSkillEvent(9000701, 0, "s9000701_canuse") --??????? function s9000701_Cast(MapID, InstanceID, SkillID, OwnerID) local LoverID = role.GetRoleLoverID(MapID, InstanceID,OwnerID) if LoverID ~= nil then local Map, Instance = role.GetRoleMapID(LoverID) if Map ~= nil then local x, y ,z = unit.GetPosition(Map, Instance, LoverID) if role.IsRoleInStatus(OwnerID, 1024) then role.CancelRoleStallState(MapID, InstanceID, OwnerID) end if Map ~= 3911351072 and Map ~= 1266370382 then -- GetPosition returns tile x/z and world-space y (see SC_GetPosition) role.RoleGotoNewMap(MapID, InstanceID, OwnerID, Map, x, y, z) end end end end aux.RegisterSkillEvent(9000701, 1, "s9000701_Cast")