This commit is contained in:
baisebaoma 2024-04-10 18:10:18 +08:00
parent 489a6101b4
commit ea8e4e61b0
10 changed files with 99 additions and 14 deletions

BIN
audio/death/jy__yzls.mp3 Normal file

Binary file not shown.

BIN
audio/skill/jy_zhanshu1.mp3 Normal file

Binary file not shown.

BIN
audio/skill/jy_zhanshu2.mp3 Normal file

Binary file not shown.

BIN
audio/skill/jy_zixing1.mp3 Normal file

Binary file not shown.

BIN
audio/skill/jy_zixing2.mp3 Normal file

Binary file not shown.

Binary file not shown.

After

Width:  |  Height:  |  Size: 17 KiB

BIN
image/generals/jy__yzls.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 30 KiB

View File

@ -1607,7 +1607,7 @@ Fk:loadTranslationTable {
["~jy__raiden"] = "浮世一梦……", ["~jy__raiden"] = "浮世一梦……",
["jy_leiyan"] = "雷眼", ["jy_leiyan"] = "雷眼",
[":jy_leiyan"] = [[出牌阶段限一次,你可以令至少一名角色获得<font color="Fuchsia">雷眼</font>;持有<font color="Fuchsia">雷眼</font>的角色造成伤害后若目标未死亡你判定若为黑色你对目标造成1点雷电伤害,该伤害不会触发〖雷眼〗。]], [":jy_leiyan"] = [[出牌阶段限一次,你可以令至少一名角色获得<font color="Fuchsia">雷眼</font>;持有<font color="Fuchsia">雷眼</font>的角色造成伤害后若目标未死亡你判定若为黑色你对目标造成1点雷电伤害(不会触发〖雷眼〗)。]],
["@jy_raiden_leiyan"] = [[<font color="Fuchsia">雷眼</font>]], ["@jy_raiden_leiyan"] = [[<font color="Fuchsia">雷眼</font>]],
["#jy_leiyan_trigger"] = "雷眼", ["#jy_leiyan_trigger"] = "雷眼",
["$jy_leiyan1"] = "泡影看破!", ["$jy_leiyan1"] = "泡影看破!",
@ -1615,7 +1615,7 @@ Fk:loadTranslationTable {
["$jy_leiyan3"] = "威光无赦!", ["$jy_leiyan3"] = "威光无赦!",
["jy_zhenshuo"] = "真说", ["jy_zhenshuo"] = "真说",
[":jy_zhenshuo"] = [[出牌阶段限一次,你可以弃3张牌对一名攻击范围内的角色造成1点雷电伤害。]], [":jy_zhenshuo"] = [[出牌阶段限一次,你可以弃三张牌对一名攻击范围内的角色造成一点雷电伤害。]],
["$jy_zhenshuo1"] = "此刻,寂灭之时!", ["$jy_zhenshuo1"] = "此刻,寂灭之时!",
["$jy_zhenshuo2"] = "稻光,亦是永恒!", ["$jy_zhenshuo2"] = "稻光,亦是永恒!",
["$jy_zhenshuo3"] = "无念,断绝!", ["$jy_zhenshuo3"] = "无念,断绝!",
@ -1678,7 +1678,7 @@ Fk:loadTranslationTable {
["~jy__ayato"] = "世事无常……", ["~jy__ayato"] = "世事无常……",
["jy_jinghua"] = "镜花", ["jy_jinghua"] = "镜花",
[":jy_jinghua"] = [[每回合限一次,你使用或打出一张基本牌后,可以使用一张【杀】,以此法使用的【杀】无次数限制且不可被响应。]], [":jy_jinghua"] = [[每回合限一次,你使用或打出一张基本牌后,可以使用一张无次数限制且不可被响应的【杀】。]],
["$jy_jinghua1"] = "苍流水影。", ["$jy_jinghua1"] = "苍流水影。",
["$jy_jinghua2"] = "剑影。", ["$jy_jinghua2"] = "剑影。",
["#jy_jinghua_use"] = "镜花:你可以使用一张无次数限制且不可响应的【杀】", ["#jy_jinghua_use"] = "镜花:你可以使用一张无次数限制且不可响应的【杀】",
@ -1779,6 +1779,7 @@ Fk:loadTranslationTable {
local jy__huohuo = General(extension, "jy__huohuo", "wu", 3, 3, General.Female) local jy__huohuo = General(extension, "jy__huohuo", "wu", 3, 3, General.Female)
-- TODO可以不写这个
local jy_bazhen = fk.CreateTriggerSkill { local jy_bazhen = fk.CreateTriggerSkill {
name = "jy_bazhen", name = "jy_bazhen",
events = { fk.AskForCardUse, fk.AskForCardResponse }, events = { fk.AskForCardUse, fk.AskForCardResponse },
@ -2083,6 +2084,7 @@ local genshin_names = {
-- 以下是已知的怪物 -- 以下是已知的怪物
["兽境猎犬"] = true, ["兽境猎犬"] = true,
["深渊咏者"] = true, ["深渊咏者"] = true,
["海乱鬼"] = true,
} }
local function is_genshin(player) local function is_genshin(player)
@ -2493,7 +2495,7 @@ local guiyi = fk.CreateTriggerSkill {
anim_type = "offensive", anim_type = "offensive",
events = { fk.EventPhaseProceeding }, events = { fk.EventPhaseProceeding },
can_trigger = function(self, event, target, player, data) can_trigger = function(self, event, target, player, data)
return player:hasSkill(self) and target ~= player and return player:hasSkill(self) and
target.phase == Player.Finish and not player:isNude() target.phase == Player.Finish and not player:isNude()
end, end,
on_use = function(self, event, target, player, data) on_use = function(self, event, target, player, data)
@ -2530,7 +2532,6 @@ local guiyi_viewas = fk.CreateViewAsSkill {
return nil return nil
end end
local c = Fk:cloneCard("duel") local c = Fk:cloneCard("duel")
c.skillName = self.name c.skillName = self.name
c:addSubcard(cards[1]) c:addSubcard(cards[1])
return c return c
@ -2546,9 +2547,9 @@ Fk:loadTranslationTable {
["illustrator:jy__gambler"] = "米哈游", ["illustrator:jy__gambler"] = "米哈游",
["jy_guiyi"] = [[命弈]], ["jy_guiyi"] = [[命弈]],
[":jy_guiyi"] = [[其他角色的结束阶段,你可以将一张牌当【决斗】使用。若你因此【决斗】受到伤害,你死亡。]], [":jy_guiyi"] = [[每名角色的结束阶段,你可以将一张牌当【决斗】使用。若此【决斗】对你造成伤害,你死亡。]],
["#jy_guiyi_viewas"] = [[命弈]], ["#jy_guiyi_viewas"] = [[命弈]],
["#jy_guiyi-use"] = [[命弈:将一张牌当【决斗】使用,若你因此受伤则你死亡]], ["#jy_guiyi-use"] = [[命弈:将一张牌当【决斗】使用,若其对你造成伤害则你死亡]],
} }
local gambler = General(extension, "jy__gambler", "qun", 6) local gambler = General(extension, "jy__gambler", "qun", 6)

View File

@ -451,7 +451,7 @@ local zitai = fk.CreateTriggerSkill {
local yujian = fk.CreateTriggerSkill { local yujian = fk.CreateTriggerSkill {
name = "jy_yujian", name = "jy_yujian",
anim_type = "control", anim_type = "control",
events = { fk.EventPhaseStart }, events = { fk.EventPhaseProceeding },
can_trigger = function(self, event, target, player, data) can_trigger = function(self, event, target, player, data)
return target == player and player:hasSkill(self) and return target == player and player:hasSkill(self) and
player.phase == Player.Start player.phase == Player.Start
@ -481,7 +481,7 @@ Fk:loadTranslationTable {
[":jy_zitai"] = [[转换技,锁定技,当你造成或受到伤害时,阳:你判定,若为红色,防止之;阴:该伤害+1。然后你摸两张牌。]], [":jy_zitai"] = [[转换技,锁定技,当你造成或受到伤害时,阳:你判定,若为红色,防止之;阴:该伤害+1。然后你摸两张牌。]],
["jy_yujian"] = [[预见]], ["jy_yujian"] = [[预见]],
[":jy_yujian"] = [[准备阶段开始时你可以观看牌堆顶的X张牌然后将任意数量的牌置于牌堆顶将其余的牌置于牌堆底。X为游戏轮数且至多为5。]], [":jy_yujian"] = [[准备阶段你可以卜算XX为游戏轮数且至多为5。]],
} }
local tiandu = fk.CreateTriggerSkill { local tiandu = fk.CreateTriggerSkill {
@ -2277,7 +2277,7 @@ Fk:loadTranslationTable {
["~jy__fuxuan"] = [[事已前定……么……]], ["~jy__fuxuan"] = [[事已前定……么……]],
["jy_guanxi"] = [[观歙]], ["jy_guanxi"] = [[观歙]],
[":jy_guanxi"] = [[每轮开始时你可以卜算3。若如此做本轮你使用第X张牌结算后当前回合角色视为使用【洞烛先机】X为你卜算时置于牌堆底的数)。]], [":jy_guanxi"] = [[每轮开始时你可以卜算3。若如此做本轮你使用第X张牌结算后当前回合角色视为使用【洞烛先机】X为你卜算时置于牌堆底数)。]],
["@jy_guanxi"] = [[观歙]], ["@jy_guanxi"] = [[观歙]],
["$jy_guanxi1"] = [[以额间之眼观之……]], ["$jy_guanxi1"] = [[以额间之眼观之……]],
["$jy_guanxi2"] = [[本座先卜上一卦。]], ["$jy_guanxi2"] = [[本座先卜上一卦。]],
@ -2294,4 +2294,87 @@ Fk:loadTranslationTable {
["$jy_huilan3"] = [[否极泰来。]], ["$jy_huilan3"] = [[否极泰来。]],
} }
local zhanshu = fk.CreateTriggerSkill {
name = "jy_zhanshu",
anim_type = "offensive",
events = { fk.EventPhaseProceeding },
can_trigger = function(self, event, target, player, data)
return player:hasSkill(self) and
target.phase == Player.Finish and not player:isNude()
end,
on_cost = function(self, event, target, player, data)
local room = player.room
local success, dat = room:askForUseActiveSkill(player, "#jy_zhanshu_viewas", "#jy_zhanshu-use", true)
self.cost_data = dat
return success
end,
on_use = function(self, event, target, player, data)
local room = player.room
local card = Fk:cloneCard("duel")
card:addSubcards(self.cost_data.cards)
card.skillName = self.name
room:useCard({
from = player.id,
tos = table.map(self.cost_data.targets, function(p) return { p } end),
card = card,
})
end,
}
local zhanshu_viewas = fk.CreateViewAsSkill {
name = "#jy_zhanshu_viewas",
anim_type = "offensive",
pattern = "duel",
card_filter = Util.FalseFunc,
view_as = function(self, cards)
local c = Fk:cloneCard("duel")
c.skillName = self.name
return c
end,
}
zhanshu:addRelatedSkill(zhanshu_viewas)
local zixing = fk.CreateTriggerSkill {
name = "jy_zixing",
anim_type = "drawcard",
events = { fk.CardUseFinished },
can_trigger = function(self, event, target, player, data)
return player:hasSkill(self) and data.responseToEvent and data.responseToEvent.from == player.id and not target.dead
end,
on_use = function(self, event, target, player, data)
player:drawCards(2, self.name)
player.room:setPlayerMark(target, "jy_zixing-phase", true)
end,
}
local zixing_prohibit = fk.CreateProhibitSkill {
name = "#jy_zixing_prohibit",
is_prohibited = function(self, from, to, card)
return from:hasSkill(self) and to:getMark("jy_zixing-phase") ~= 0
end,
}
zixing:addRelatedSkill(zixing_prohibit)
local yzls = General(extension, "jy__yzls", "shu", 4, 4, General.Female)
yzls:addSkill(zhanshu)
yzls:addSkill(zixing)
Fk:loadTranslationTable {
["jy__yzls"] = [[宇泽玲纱]],
["#jy__yzls"] = [[正义自警团员]],
["designer:jy__yzls"] = [[白洲]],
["cv:jy__yzls"] = [[根本京里]],
["illustrator:jy__yzls"] = [[seu]],
["~jy__yzls"] = [[唔……抱歉……]],
["jy_zhanshu"] = [[战书]],
[":jy_zhanshu"] = [[出牌阶段开始时,你可以视为使用【决斗】。]],
["#jy_zhanshu-use"] = [[战书:你可以视为使用【决斗】]],
["$jy_zhanshu1"] = [[在此参上!]],
["$jy_zhanshu2"] = [[一决胜负!]],
["jy_zixing"] = [[自省]],
[":jy_zixing"] = [[当一名角色使用牌响应你的牌时,你可以摸两张牌,然后本阶段其不是你使用牌的合法目标。]],
["$jy_zixing1"] = [[啊……难道说太大声了吗?影响到您了,对不起!]],
["$jy_zixing2"] = [[果……果然还是算了吧……会被认为是奇怪的人……]],
}
return extension return extension

View File

@ -686,7 +686,8 @@ local jy_fuzhu = fk.CreateTriggerSkill {
-- TODOUI变好看一点 -- TODOUI变好看一点
local skill_name = room:askForCustomDialog(player, self.name, local skill_name = room:askForCustomDialog(player, self.name,
"packages/jianyu/qml/fuzhu.qml") "packages/jianyu/qml/fuzhu.qml")
if #skill_name > 15 then return false end if #skill_name > 10 then return false end
if not skill_name:match("[^%a_]") then return false end
local sk = Fk.skills[skill_name] -- 可以用 Util.Name2SkillMapper(skill_name),原理一样 local sk = Fk.skills[skill_name] -- 可以用 Util.Name2SkillMapper(skill_name),原理一样
if sk then if sk then
room:handleAddLoseSkills(player, skill_name, nil, true, false) room:handleAddLoseSkills(player, skill_name, nil, true, false)
@ -699,12 +700,12 @@ otto:addSkill(jy_fuzhu)
Fk:loadTranslationTable { Fk:loadTranslationTable {
["jy__trad__god"] = [[侯国玉]], ["jy__trad__god"] = [[侯国玉]],
["#jy__trad__god"] = rjhd, ["#jy__trad__god"] = rjhd,
["designer:jy__trad__god"] = [[是沐沐]], ["designer:jy__trad__god"] = [[考公专家]],
["cv:jy__trad__god"] = [[无]], ["cv:jy__trad__god"] = [[无]],
["illustrator:jy__trad__god"] = [[未知]], ["illustrator:jy__trad__god"] = [[未知]],
["jy_fuzhu"] = "牛逼", ["jy_fuzhu"] = "哇袄",
[":jy_fuzhu"] = [[每局游戏限两次,你的回合结束时,你可以获得一个想要的技能。<br><font color="grey">你需要知道这个技能的name参数paoxiao、jy_lingfu、mou__tieji。name参数长度不得超过15。若输入错误,你不会获得技能。</font>]], [":jy_fuzhu"] = [[每局游戏限两次,你的回合结束时,你可以获得一个想要的技能。<br><font color="grey">你需要知道这个技能的name参数paoxiao你的输入必须仅含英文字母或下划线且长度不得超过10。若输入错误,你不会获得技能。</font>]],
} }
return extension return extension