xjb__aweiluo bug fixes

This commit is contained in:
Baisebaoma 2023-12-07 12:16:17 +08:00
parent 1beeca1549
commit 50c966e2ef
2 changed files with 19 additions and 24 deletions

View File

@ -127,11 +127,11 @@
游龙:锁定技,你的回合开始时,从你开始,每名玩家选择一张手牌交给下家。 游龙:锁定技,你的回合开始时,从你开始,每名玩家选择一张手牌交给下家。
合抱:你的回合开始时,你可以将一张手牌置于你的武将牌上,称为【点】。 **:你的回合开始时,你可以将一张手牌置于你的武将牌上,称为【点】。
跳水:当你受到伤害时,你可以弃掉一张【点】。 跳水:当你受到伤害时,你可以弃掉一张【点】。
当你的【点】有4张时可以视为使用一张【万箭齐发】当你的所有【点】花色均不同时可以视为使用一张【**入侵】。 *:当你的所有【点】花色均不同时,可以视为使用一张【**入侵】每回合限一次当你的【点】有4张时可以视为使用一张【万箭齐发】。
玉玊:出牌阶段,你每使用第二张基本牌时,可以将其作为【点】置于你的武将牌上。 玉玊:出牌阶段,你每使用第二张基本牌时,可以将其作为【点】置于你的武将牌上。

View File

@ -1132,7 +1132,7 @@ Fk:loadTranslationTable {
} }
-- 阿伟罗 -- 阿伟罗
-- TODO只剩罗绞了 -- TODO南蛮入侵可能会触发两次
local xjb__aweiluo = General(extension, "xjb__aweiluo", "qun", 3, 3, General.Male) local xjb__aweiluo = General(extension, "xjb__aweiluo", "qun", 3, 3, General.Male)
local jy_youlong = fk.CreateTriggerSkill{ local jy_youlong = fk.CreateTriggerSkill{
@ -1187,7 +1187,6 @@ local jy_tiaoshui = fk.CreateTriggerSkill{
} }
-- 罗绞 -- 罗绞
-- 我建议全部重写,太几把复杂了
-- 抄自上面的jy_erduanxiao_2 -- 抄自上面的jy_erduanxiao_2
local jy_luojiao = fk.CreateTriggerSkill{ local jy_luojiao = fk.CreateTriggerSkill{
name = "jy_luojiao", name = "jy_luojiao",
@ -1197,7 +1196,7 @@ local jy_luojiao = fk.CreateTriggerSkill{
mute = true, mute = true,
can_trigger = function(self, event, target, player, data) can_trigger = function(self, event, target, player, data)
if not player:hasSkill(self) then return end -- 如果我自己没有这个技能,那就算了 if not player:hasSkill(self) then return end
local dians = player:getPile("xjb__aweiluo_dian") local dians = player:getPile("xjb__aweiluo_dian")
player.is_dian_changing = false player.is_dian_changing = false
@ -1207,14 +1206,14 @@ local jy_luojiao = fk.CreateTriggerSkill{
-- 判断是否有牌出去 -- 判断是否有牌出去
for _, move in ipairs(data) do for _, move in ipairs(data) do
if move.from then -- 照着抄的,牌离开 if move.from then -- 照着抄的,牌离开
print("有牌正打算离开") -- print("有牌正打算离开")
if move.from == player.id then if move.from == player.id then
print("有牌正打算从你家离开") -- print("有牌正打算从你家离开")
if #dians == 5 then if #dians == 5 then
print("点是5") -- print("点是5")
for _, info in ipairs(move.moveInfo) do for _, info in ipairs(move.moveInfo) do
if info.fromArea == Card.PlayerSpecial then if info.fromArea == Card.PlayerSpecial then
print("有牌正打算从你家特殊区离开") -- print("有牌正打算从你家特殊区离开")
return true return true
end end
end end
@ -1228,7 +1227,7 @@ local jy_luojiao = fk.CreateTriggerSkill{
print("点是3") print("点是3")
for _, move in ipairs(data) do -- 如果有一张牌是进入我的特殊区,那么这个函数可以触发 for _, move in ipairs(data) do -- 如果有一张牌是进入我的特殊区,那么这个函数可以触发
if move.to == player.id and move.toArea == Card.PlayerSpecial then if move.to == player.id and move.toArea == Card.PlayerSpecial then
print("有牌正打算来你家特殊区, return true") -- print("有牌正打算来你家特殊区, return true")
return true return true
end end
end end
@ -1237,7 +1236,7 @@ local jy_luojiao = fk.CreateTriggerSkill{
on_trigger = function(self, event, target, player, data) on_trigger = function(self, event, target, player, data)
-- 触发之后,设置变量,告诉下一个函数有没有可能在发生变化 -- 触发之后,设置变量,告诉下一个函数有没有可能在发生变化
print("罗绞1没问题已isdianchanging设为true") -- print("罗绞1没问题已isdianchanging设为true")
player.is_dian_changing = true player.is_dian_changing = true
end, end,
} }
@ -1246,16 +1245,16 @@ local jy_luojiao_archery_attack = fk.CreateTriggerSkill{
events = {fk.AfterCardsMove}, events = {fk.AfterCardsMove},
can_trigger = function(self, event, target, player, data) can_trigger = function(self, event, target, player, data)
if not player:hasSkill(self) then return false end if not player:hasSkill(self) then return false end
print("现在在万箭齐发里面") -- print("现在在万箭齐发里面")
print("dian", #player:getPile("xjb__aweiluo_dian")) -- print("dian", #player:getPile("xjb__aweiluo_dian"))
print("isdianchanging", player.is_dian_changing) -- print("isdianchanging", player.is_dian_changing)
return #player:getPile("xjb__aweiluo_dian") == 4 and -- 如果点为4 return #player:getPile("xjb__aweiluo_dian") == 4 and -- 如果点为4
player.is_dian_changing -- 如果点有可能在变化 player.is_dian_changing -- 如果点有可能在变化
end, end,
on_cost = function(self, event, target, player, data) on_cost = function(self, event, target, player, data)
player.is_dian_changing = false -- 在这里就要变为false player.is_dian_changing = false -- 在这里就要变为false
if player.room:askForSkillInvoke(player, self.name, nil, "#jy_luojiao_savage_archery_attack_ask") then -- 那么问是否要发动 if player.room:askForSkillInvoke(player, self.name, nil, "#jy_luojiao_archery_attack_ask") then -- 那么问是否要发动
return true return true
end end
end, end,
@ -1270,7 +1269,7 @@ local jy_luojiao_savage_assault = fk.CreateTriggerSkill{
events = {fk.AfterCardsMove}, events = {fk.AfterCardsMove},
can_trigger = function(self, event, target, player, data) can_trigger = function(self, event, target, player, data)
if not player:hasSkill(self) then return false end if not player:hasSkill(self) then return false end
print("现在在南蛮入侵里面") -- print("现在在南蛮入侵里面")
local dians = player:getPile("xjb__aweiluo_dian") local dians = player:getPile("xjb__aweiluo_dian")
-- 判断花色是否全部不同,触发南蛮入侵 -- 判断花色是否全部不同,触发南蛮入侵
if #dians == 0 or #dians == 1 then return false end if #dians == 0 or #dians == 1 then return false end
@ -1278,25 +1277,21 @@ local jy_luojiao_savage_assault = fk.CreateTriggerSkill{
for _, c in ipairs(dians) do for _, c in ipairs(dians) do
local suit = Fk:getCardById(c).suit local suit = Fk:getCardById(c).suit
if dict[suit] then if dict[suit] then
print("有相同的花色,不执行") -- print("有相同的花色,不执行")
return false return false
else else
dict[suit] = true dict[suit] = true
end end
end end
print("所有花色都不同") -- print("所有花色都不同")
print("本轮南蛮入侵是否已使用过,如果是则不再触发:", player.is_jy_luojiao_archery_attack_used) -- print("本轮南蛮入侵是否已使用过,如果是则不再触发:", player.is_jy_luojiao_archery_attack_used)
return #player:getPile("xjb__aweiluo_dian") >= 2 and -- 点不是0和1 return #player:getPile("xjb__aweiluo_dian") >= 2 and -- 点不是0和1
not player.is_jy_luojiao_archery_attack_used -- 本回合还没使用过 not player.is_jy_luojiao_archery_attack_used -- 本回合还没使用过
end, end,
on_cost = function(self, event, target, player, data) on_cost = function(self, event, target, player, data)
return player.room:askForSkillInvoke(player, self.name, nil, "#jy_luojiao_savage_assault_ask") return player.room:askForSkillInvoke(player, self.name, nil, "#jy_luojiao_savage_assault_ask")
end, end,
on_use = function(self, event, target, player, data) on_use = function(self, event, target, player, data)
local room = player.room local room = player.room
player.is_jy_luojiao_archery_attack_used = true player.is_jy_luojiao_archery_attack_used = true
@ -1384,7 +1379,7 @@ Fk:loadTranslationTable {
["$jy_tiaoshui1"] = "速,哈哈!", ["$jy_tiaoshui1"] = "速,哈哈!",
["jy_luojiao"] = "罗绞", ["jy_luojiao"] = "罗绞",
[":jy_luojiao"] = "当你的【点】有4张时可以视为使用一张【万箭齐发】当你的所有【点】花色均不同时可以视为使用一张【南蛮入侵】。", [":jy_luojiao"] = "当你的所有【点】花色均不同时可以视为使用一张【南蛮入侵】每回合限一次当你的【点】有4张时可以视为使用一张【万箭齐发】。",
["#jy_luojiao_archery_attack"] = "罗绞·万箭齐发", ["#jy_luojiao_archery_attack"] = "罗绞·万箭齐发",
["#jy_luojiao_savage_assault"] = "罗绞·南蛮入侵", ["#jy_luojiao_savage_assault"] = "罗绞·南蛮入侵",
["#jy_luojiao_archery_attack_ask"] = "【点】数量为4是否发动 罗绞·万箭齐发", ["#jy_luojiao_archery_attack_ask"] = "【点】数量为4是否发动 罗绞·万箭齐发",