Description improved
This commit is contained in:
parent
094c8338ad
commit
61451bdfb2
44
README.md
44
README.md
|
@ -2,14 +2,26 @@
|
|||
|
||||
[新月杀(FreeKill)](https://gitee.com/notify-ctrl/FreeKill)是一款开源、支持自定义的三国杀联机软件。
|
||||
|
||||
本仓库是新月杀的一个扩展包,其中包含我和我的好朋友们的原创武将!之所以叫作简浴包,是因为我们曾经踢足球时自称“简浴队”。所有设计均由我 [@baisebaoma](https://gitee.com/baisebaoma) 实现。
|
||||
本仓库是新月杀的一个扩展包,其中包含我和我的好朋友们的原创武将!之所以叫作简浴包,是因为我们曾经踢足球时自称“监狱队”,而本包的第一个武将是简自豪,故名。所有设计均由我 [@baisebaoma](https://gitee.com/baisebaoma) 实现。
|
||||
|
||||
我们的关注点有:足球、英雄联盟等。
|
||||
|
||||
本包会保留所有群友设计的原始武将,仅作出文本描述和游戏体验方面的优化(例如,假如你的五个技能全是回合开始可以发动的,那我肯定是要改的)。如果根据以后的游玩体验,这些武将中有不够平衡、不够合理的设计,我会推出优化过后的版本,如界限突破等。
|
||||
|
||||
本包已上线新月杀活动服!庆祝!🎉
|
||||
|
||||
## 想游玩我们的武将?
|
||||
|
||||
1. 本包已上线新月杀活动服:`huosan.top`,欢迎试用!
|
||||
|
||||
2. 如果您有自己的新月杀服务器,请输入 `install https://gitee.com/baisebaoma/jianyu` 添加本包即可。
|
||||
|
||||
注意:本包需要您的服务器上开启了[神话再临](https://gitee.com/notify-ctrl/shzl)包才可游玩,否则会出现问题。
|
||||
|
||||
## 已实现武将
|
||||
|
||||
> 注:文本仅供参考,请以游戏内描述为准!
|
||||
|
||||
### 群·简自豪 体力3
|
||||
|
||||
![群·简自豪](./image/generals/avatar/xjb__jianzihao.jpg "群·简自豪")
|
||||
|
@ -88,7 +100,6 @@
|
|||
|
||||
二段:锁定技,当你的角色牌上有且仅有两张【啸】时,你选择:弃掉所有【啸】并恢复一点体力,或将所有【啸】纳入手牌。
|
||||
|
||||
|
||||
### 群·高天亮 体力4
|
||||
|
||||
![群·高天亮](./image/generals/avatar/xjb__gaotianliang.jpg "群·高天亮")
|
||||
|
@ -97,6 +108,13 @@
|
|||
|
||||
玉玉:锁定技,当你被没有【高天亮之敌】标记的角色使用【杀】造成了伤害时,你令其获得【高天亮之敌】标记。受到没有【高天亮之敌】标记的角色或因本次伤害而获得【高天亮之敌】标记的角色造成的伤害时,你可以摸三张牌,然后翻面。
|
||||
|
||||
### 群·侯国玉 体力5 体力上限10
|
||||
|
||||
![群·侯国玉](./image/generals/avatar/tym__houguoyu.jpg "群·侯国玉")
|
||||
|
||||
三件:锁定技,当你的装备区有且仅有武器和进攻马时,你造成的伤害+1。
|
||||
|
||||
闭月:你的回合结束时,你可以摸一张牌。
|
||||
|
||||
### 群·赵乾熙 体力3
|
||||
|
||||
|
@ -106,7 +124,10 @@
|
|||
|
||||
原神:锁定技,你造成的属性伤害+1。
|
||||
|
||||
> 特别提示:当你对被横置的角色造成属性伤害时,所有其他被横置的角色会受到的伤害+2。这是因为【铁锁连环】的效果是将你对主目标的伤害值记录,然后令你对其他所有被横置的角色也造成一次这个值的伤害。结算过程如下:你对主目标触发了【原神】,伤害+1,记录该值,然后你再对所有其他被连环的角色造成一次该值的属性伤害,再次触发【原神】,伤害+1。为了平衡这个问题,他虽然体力值仅为3,但是只有一个技能。
|
||||
> 特别提示:当你对被横置的角色造成属性伤害时,所有其他被横置的角色会受到的伤害+2。
|
||||
这是因为【铁锁连环】的效果是将你对主目标的伤害值记录,然后令你对其他所有被横置的角色也造成一次这个值的伤害。
|
||||
|
||||
> 特别提示:当你是双将且另一个武将是界赵乾熙、你发动了【附魔】造成属性伤害时,不会触发这个技能(因为这两个技能是在同一个时机修改伤害参数)。我觉得这还挺平衡的。
|
||||
|
||||
### 群·界赵乾熙 体力4
|
||||
|
||||
|
@ -116,10 +137,10 @@
|
|||
|
||||
> 新月杀群群友“小嘤嘤”帮助我写了下面这一版描述,感谢!
|
||||
|
||||
原神:锁定技,当有角色受到<font color="red">火焰</font>或<font color="purple">雷电</font>伤害时,若其:1. 没有标记,令其获得对应属性标记;
|
||||
2. 拥有标记且与此次伤害属性不同,则移除此标记并执行对应效果:<font color="purple">【雷电】</font>其翻面;<font color="red">【火焰】</font>伤害+1。
|
||||
原神:锁定技,当有角色受到<font color="red">火焰</font>或<font color="purple">雷电</font>伤害时,若其没有该技能造成的属性标记,令其获得对应属性标记;
|
||||
若其拥有属性标记且与此次伤害属性不同,则依据伤害属性造成对应效果并移除标记:<font color="purple">雷电伤害</font>其翻面;<font color="red">火焰伤害</font>该伤害+1。
|
||||
|
||||
附魔:当有角色使用【杀】造成无属性伤害时,
|
||||
附魔:当有角色造成无属性伤害时,
|
||||
你可以弃一张牌。若你弃的牌为:
|
||||
红色,将此次伤害改为<font color="red">火焰</font>;
|
||||
黑色,改为<font color="purple">雷电</font>。
|
||||
|
@ -137,17 +158,12 @@
|
|||
跳水:当你受到伤害时,你可以弃掉一张【点】。
|
||||
|
||||
罗*:当你的所有【点】花色均不同时,可以视为使用一张【**入侵】,每回合限一次;当你的【点】有4张时,可以视为使用一张【万箭齐发】。
|
||||
<br><font size="1">已知问题:如果你的【点】有且仅有四张且花色都不同,
|
||||
那么【**入侵】【万箭齐发】只能触发一个。这个问题将在后续修复。</font>
|
||||
|
||||
> 已知问题:如果你的【点】有且仅有四张且花色都不同,
|
||||
那么【南蛮入侵】【万箭齐发】只能触发一个。这个问题将在后续修复。
|
||||
|
||||
玉玊:出牌阶段,你每使用第二张基本牌时,可以将其作为【点】置于你的武将牌上。
|
||||
|
||||
## 想游玩我们的武将?
|
||||
|
||||
开启您的新月杀服务器,并输入 `install https://gitee.com/baisebaoma/jianyu` 添加本包即可。我们推荐使用 Gitee 链接。
|
||||
|
||||
注意:本包需要您的服务器上开启了[神话再临](https://gitee.com/notify-ctrl/shzl)包才可游玩,否则会出现问题。
|
||||
|
||||
## 发现了 bug?
|
||||
|
||||
请提交 PR 或 Issue,或发送电子邮件至 [baisebaoma@foxmail.com](mailto:baisebaoma@foxmail.com)。感谢!
|
||||
|
|
464
jianyu.lua
464
jianyu.lua
|
@ -3,11 +3,9 @@ extension.extensionName = "jianyu"
|
|||
|
||||
Fk:loadTranslationTable {
|
||||
["jy_jianyu"] = "简浴",
|
||||
["god"] = "神话再临·神",
|
||||
["xjb"] = "导演设计",
|
||||
["tym"] = "反赌专家设计",
|
||||
["skl"] = "拂却心尘设计",
|
||||
["buffed"] = "加强",
|
||||
["xjb"] = "导演",
|
||||
["tym"] = "反赌专家",
|
||||
["skl"] = "拂却心尘",
|
||||
}
|
||||
|
||||
-- 熊简自豪
|
||||
|
@ -664,260 +662,262 @@ Fk:loadTranslationTable {
|
|||
}
|
||||
|
||||
-- 唐李元浩
|
||||
-- 建议删除,太强了
|
||||
-- local tym__liyuanhao = General(extension, "tym__liyuanhao", "qun", 3, 3, General.Male)
|
||||
-- 建议删除,太强了。但是在活动服环境里,也许没那么强?
|
||||
local tym__liyuanhao = General(extension, "tym__liyuanhao", "qun", 3, 3, General.Male)
|
||||
|
||||
-- 界虎啸
|
||||
-- 参考自铁骑,屯田,脑洞包明哲,克己(原来克己已经监视了使用和打出了,不用写那么复杂)
|
||||
-- local jy_huxiao_2 = fk.CreateTriggerSkill{
|
||||
-- name = "jy_huxiao_2",
|
||||
-- anim_type = "special",
|
||||
-- events = {fk.CardResponding, fk.TargetSpecified}, -- 包括了使用和打出
|
||||
-- -- frequency = Skill.Compulsory,
|
||||
-- can_trigger = function(self, event, target, player, data)
|
||||
-- if player:hasSkill(self) and data.card.trueName == "slash" then
|
||||
-- -- 使用是TS,打出是CR
|
||||
-- if event == fk.TargetSpecified or event == fk.CardResponding then
|
||||
-- return target == player
|
||||
-- end
|
||||
-- end
|
||||
-- end,
|
||||
-- on_use = function(self, event, target, player, data)
|
||||
-- local room = player.room
|
||||
-- local dummy = Fk:cloneCard("dilu")
|
||||
-- dummy:addSubcards(room:getNCards(1))
|
||||
-- player:addToPile("tym__liyuanhao_xiao", dummy, true, self.name)
|
||||
-- end,
|
||||
-- }
|
||||
local jy_huxiao_2 = fk.CreateTriggerSkill{
|
||||
name = "jy_huxiao_2",
|
||||
anim_type = "special",
|
||||
events = {fk.CardResponding, fk.TargetSpecified}, -- 包括了使用和打出
|
||||
-- frequency = Skill.Compulsory,
|
||||
can_trigger = function(self, event, target, player, data)
|
||||
if player:hasSkill(self) and data.card.trueName == "slash" then
|
||||
-- 使用是TS,打出是CR
|
||||
if event == fk.TargetSpecified or event == fk.CardResponding then
|
||||
return target == player
|
||||
end
|
||||
end
|
||||
end,
|
||||
on_use = function(self, event, target, player, data)
|
||||
local room = player.room
|
||||
local dummy = Fk:cloneCard("dilu")
|
||||
dummy:addSubcards(room:getNCards(1))
|
||||
player:addToPile("tym__liyuanhao_xiao", dummy, true, self.name)
|
||||
end,
|
||||
}
|
||||
|
||||
-- -- 界啸酒
|
||||
-- -- 注释里是为了测试改成无中生有。保留在这里以防你后面还需要测试。
|
||||
-- local jy_huxiao_analeptic_2 = fk.CreateViewAsSkill{
|
||||
-- name = "jy_huxiao_analeptic_2",
|
||||
-- anim_type = "defensive",
|
||||
-- pattern = "analeptic",
|
||||
-- -- pattern = "ex_nihilo",
|
||||
-- expand_pile = "tym__liyuanhao_xiao",
|
||||
-- card_filter = function(self, to_select, selected)
|
||||
-- if #selected == 1 then return false end
|
||||
-- local xiaos = Self:getPile("tym__liyuanhao_xiao")
|
||||
-- if #xiaos == 0 then return false end
|
||||
-- return Self:getPileNameOfId(to_select) == "tym__liyuanhao_xiao"
|
||||
-- end,
|
||||
-- view_as = function(self, cards)
|
||||
-- if #cards ~= 1 then
|
||||
-- return nil
|
||||
-- end
|
||||
-- local c = Fk:cloneCard("analeptic")
|
||||
-- -- local c = Fk:cloneCard("ex_nihilo")
|
||||
-- c.skillName = self.name
|
||||
-- -- print("克隆的牌c的参数:c.name ", c.name, " c.trueName ", c.trueName)
|
||||
-- c:addSubcard(cards[1])
|
||||
-- return c
|
||||
-- end,
|
||||
-- }
|
||||
-- 界啸酒
|
||||
-- 注释里是为了测试改成无中生有。保留在这里以防你后面还需要测试。
|
||||
local jy_huxiao_analeptic_2 = fk.CreateViewAsSkill{
|
||||
name = "jy_huxiao_analeptic_2",
|
||||
anim_type = "defensive",
|
||||
pattern = "analeptic",
|
||||
-- pattern = "ex_nihilo",
|
||||
expand_pile = "tym__liyuanhao_xiao",
|
||||
card_filter = function(self, to_select, selected)
|
||||
if #selected == 1 then return false end
|
||||
local xiaos = Self:getPile("tym__liyuanhao_xiao")
|
||||
if #xiaos == 0 then return false end
|
||||
return Self:getPileNameOfId(to_select) == "tym__liyuanhao_xiao"
|
||||
end,
|
||||
view_as = function(self, cards)
|
||||
if #cards ~= 1 then
|
||||
return nil
|
||||
end
|
||||
local c = Fk:cloneCard("analeptic")
|
||||
-- local c = Fk:cloneCard("ex_nihilo")
|
||||
c.skillName = self.name
|
||||
-- print("克隆的牌c的参数:c.name ", c.name, " c.trueName ", c.trueName)
|
||||
c:addSubcard(cards[1])
|
||||
return c
|
||||
end,
|
||||
}
|
||||
|
||||
-- -- 界啸闪
|
||||
-- local jy_huxiao_jink_2 = fk.CreateViewAsSkill{
|
||||
-- name = "jy_huxiao_jink_2",
|
||||
-- anim_type = "defensive",
|
||||
-- pattern = "jink",
|
||||
-- expand_pile = "tym__liyuanhao_xiao",
|
||||
-- card_filter = function(self, to_select, selected)
|
||||
-- if #selected == 1 then return false end
|
||||
-- local xiaos = Self:getPile("tym__liyuanhao_xiao")
|
||||
-- if #xiaos == 0 then return false end
|
||||
-- return Self:getPileNameOfId(to_select) == "tym__liyuanhao_xiao"
|
||||
-- end,
|
||||
-- view_as = function(self, cards)
|
||||
-- if #cards ~= 1 then
|
||||
-- return nil
|
||||
-- end
|
||||
-- local c = Fk:cloneCard("jink")
|
||||
-- c.skillName = self.name
|
||||
-- c:addSubcard(cards[1])
|
||||
-- return c
|
||||
-- end,
|
||||
-- }
|
||||
-- 界啸闪
|
||||
local jy_huxiao_jink_2 = fk.CreateViewAsSkill{
|
||||
name = "jy_huxiao_jink_2",
|
||||
anim_type = "defensive",
|
||||
pattern = "jink",
|
||||
expand_pile = "tym__liyuanhao_xiao",
|
||||
card_filter = function(self, to_select, selected)
|
||||
if #selected == 1 then return false end
|
||||
local xiaos = Self:getPile("tym__liyuanhao_xiao")
|
||||
if #xiaos == 0 then return false end
|
||||
return Self:getPileNameOfId(to_select) == "tym__liyuanhao_xiao"
|
||||
end,
|
||||
view_as = function(self, cards)
|
||||
if #cards ~= 1 then
|
||||
return nil
|
||||
end
|
||||
local c = Fk:cloneCard("jink")
|
||||
c.skillName = self.name
|
||||
c:addSubcard(cards[1])
|
||||
return c
|
||||
end,
|
||||
}
|
||||
|
||||
|
||||
-- -- 界二段
|
||||
-- -- 这里的jy_erduanxiao_2全部都是抄上面普通李元浩的,因为只有数值差异。如果上面的改了,这里也得改
|
||||
-- local jy_erduanxiao_2 = fk.CreateTriggerSkill{
|
||||
-- name = "jy_erduanxiao_2",
|
||||
-- anim_type = "support",
|
||||
-- events = {fk.BeforeCardsMove}, -- 理论上来说每次牌的移动只有同一个方向的
|
||||
-- -- frequency = Skill.Compulsory,
|
||||
-- mute = true,
|
||||
-- 界二段
|
||||
-- 这里的jy_erduanxiao_2全部都是抄上面普通李元浩的,因为只有数值差异。如果上面的改了,这里也得改
|
||||
local jy_erduanxiao_2 = fk.CreateTriggerSkill{
|
||||
name = "jy_erduanxiao_2",
|
||||
anim_type = "support",
|
||||
events = {fk.BeforeCardsMove}, -- 理论上来说每次牌的移动只有同一个方向的
|
||||
-- frequency = Skill.Compulsory,
|
||||
mute = true,
|
||||
|
||||
-- -- 测试通过。1-2,3-2都可以顺利触发。
|
||||
-- -- 我猜想原因是1-2的时候可能有多张牌进出,而3-2的时候只会有一张牌出去。但我搞不懂这个数据结构,
|
||||
-- -- 不知道为什么有一个是两层循环,有一个是一层循环。
|
||||
-- can_trigger = function(self, event, target, player, data)
|
||||
-- if not player:hasSkill(self) then return end -- 如果我自己没有这个技能,那就算了
|
||||
-- 测试通过。1-2,3-2都可以顺利触发。
|
||||
-- 我猜想原因是1-2的时候可能有多张牌进出,而3-2的时候只会有一张牌出去。但我搞不懂这个数据结构,
|
||||
-- 不知道为什么有一个是两层循环,有一个是一层循环。
|
||||
can_trigger = function(self, event, target, player, data)
|
||||
if not player:hasSkill(self) then return end -- 如果我自己没有这个技能,那就算了
|
||||
|
||||
-- local xiaos = player:getPile("tym__liyuanhao_xiao")
|
||||
-- player.is_xiao_changing = false
|
||||
local xiaos = player:getPile("tym__liyuanhao_xiao")
|
||||
player.is_xiao_changing = false
|
||||
|
||||
-- -- 判断是否有牌出去
|
||||
-- for _, move in ipairs(data) do -- 第一层循环,不知道为啥
|
||||
-- if move.from then -- 照着抄的,牌离开
|
||||
-- -- print("有牌正打算离开")
|
||||
-- if move.from == player.id then
|
||||
-- -- print("有牌正打算从你家离开")
|
||||
-- if #xiaos == 3 then
|
||||
-- -- print("啸是3")
|
||||
-- for _, info in ipairs(move.moveInfo) do -- 还有第二层循环。我自己的代码里没有第二层
|
||||
-- if info.fromArea == Card.PlayerSpecial then
|
||||
-- -- print("有牌正打算从你家特殊区离开")
|
||||
-- return true
|
||||
-- end
|
||||
-- end
|
||||
-- end
|
||||
-- end
|
||||
-- end
|
||||
-- end
|
||||
-- 判断是否有牌出去
|
||||
for _, move in ipairs(data) do -- 第一层循环,不知道为啥
|
||||
if move.from then -- 照着抄的,牌离开
|
||||
-- print("有牌正打算离开")
|
||||
if move.from == player.id then
|
||||
-- print("有牌正打算从你家离开")
|
||||
if #xiaos == 3 then
|
||||
-- print("啸是3")
|
||||
for _, info in ipairs(move.moveInfo) do -- 还有第二层循环。我自己的代码里没有第二层
|
||||
if info.fromArea == Card.PlayerSpecial then
|
||||
-- print("有牌正打算从你家特殊区离开")
|
||||
return true
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
-- -- 判断是否有牌进来
|
||||
-- if #xiaos == 1 then -- 如果啸是1
|
||||
-- for _, move in ipairs(data) do -- 如果有一张牌是进入或者离开我的特殊区,那么这个函数可以触发
|
||||
-- if (move.to == player.id and move.toArea == Card.PlayerSpecial) or
|
||||
-- (move.from == player.id and move.fromArea == Card.PlayerSpecial) then
|
||||
-- -- 去找一段代码,检测自己特殊区的牌离开的
|
||||
-- -- print("二段笑(一段)已经检测有牌从特殊区变动", #xiaos)
|
||||
-- -- 检测不到离开
|
||||
-- -- if move.to == player.id and move.toArea == Card.PlayerSpecial then
|
||||
-- -- print("二段笑(一段)已经检测有牌来到特殊区", #xiaos)
|
||||
-- -- end
|
||||
-- return true
|
||||
-- end
|
||||
-- end
|
||||
-- end
|
||||
-- end, -- 每个参数的结尾都要逗号。can_trigger是一个参数
|
||||
-- 判断是否有牌进来
|
||||
if #xiaos == 1 then -- 如果啸是1
|
||||
for _, move in ipairs(data) do -- 如果有一张牌是进入或者离开我的特殊区,那么这个函数可以触发
|
||||
if (move.to == player.id and move.toArea == Card.PlayerSpecial) or
|
||||
(move.from == player.id and move.fromArea == Card.PlayerSpecial) then
|
||||
-- 去找一段代码,检测自己特殊区的牌离开的
|
||||
-- print("二段笑(一段)已经检测有牌从特殊区变动", #xiaos)
|
||||
-- 检测不到离开
|
||||
-- if move.to == player.id and move.toArea == Card.PlayerSpecial then
|
||||
-- print("二段笑(一段)已经检测有牌来到特殊区", #xiaos)
|
||||
-- end
|
||||
return true
|
||||
end
|
||||
end
|
||||
end
|
||||
end, -- 每个参数的结尾都要逗号。can_trigger是一个参数
|
||||
|
||||
-- on_trigger = function(self, event, target, player, data)
|
||||
-- -- 触发之后,设置变量,告诉下一个函数有没有可能在发生变化
|
||||
-- player.is_xiao_changing = true
|
||||
-- -- print("二段笑(第一段) on_trigger已触发,现在是", player.is_xiao_changing, #player:getPile("tym__liyuanhao_xiao"))
|
||||
-- end,
|
||||
-- }
|
||||
on_trigger = function(self, event, target, player, data)
|
||||
-- 触发之后,设置变量,告诉下一个函数有没有可能在发生变化
|
||||
player.is_xiao_changing = true
|
||||
-- print("二段笑(第一段) on_trigger已触发,现在是", player.is_xiao_changing, #player:getPile("tym__liyuanhao_xiao"))
|
||||
end,
|
||||
}
|
||||
|
||||
-- local jy_erduanxiao_trigger_2 = fk.CreateTriggerSkill{
|
||||
-- name = "#jy_erduanxiao_trigger_2",
|
||||
-- events = {fk.AfterCardsMove},
|
||||
-- frequency = Skill.Compulsory,
|
||||
-- can_trigger = function(self, event, target, player, data)
|
||||
-- return player:hasSkill(self) and -- 如果是有二段啸的角色
|
||||
-- #player:getPile("tym__liyuanhao_xiao") == 2 and -- 如果啸为2
|
||||
-- player.is_xiao_changing -- 如果啸有可能在变化
|
||||
-- end,
|
||||
local jy_erduanxiao_trigger_2 = fk.CreateTriggerSkill{
|
||||
name = "#jy_erduanxiao_trigger_2",
|
||||
events = {fk.AfterCardsMove},
|
||||
frequency = Skill.Compulsory,
|
||||
can_trigger = function(self, event, target, player, data)
|
||||
return player:hasSkill(self) and -- 如果是有二段啸的角色
|
||||
#player:getPile("tym__liyuanhao_xiao") == 2 and -- 如果啸为2
|
||||
player.is_xiao_changing -- 如果啸有可能在变化
|
||||
end,
|
||||
|
||||
-- on_cost = function(self, event, target, player, data)
|
||||
-- -- print("jy_erduanxiao_trigger 已触发,现在player.is_xiao_changing的值是", player.is_xiao_changing)
|
||||
-- local room = player.room
|
||||
-- -- 如果体力不是满的,两个选项都有;如果是满的,就黑掉【恢复体力】那个按钮。这个改动不需要改到标李元浩那边去,因为标李元浩是掉血。
|
||||
-- if player.hp ~= player.maxHp then
|
||||
-- self.choice = room:askForChoice(player, {"#lose_xiao_2", "#lose_hp_1_2"}, self.name)
|
||||
-- else
|
||||
-- self.choice = room:askForChoice(player, {"#lose_xiao_2"}, self.name, nil, nil, {"#lose_xiao_2", "#lose_hp_1_2"})
|
||||
-- end
|
||||
-- return true
|
||||
-- end,
|
||||
on_cost = function(self, event, target, player, data)
|
||||
-- print("jy_erduanxiao_trigger 已触发,现在player.is_xiao_changing的值是", player.is_xiao_changing)
|
||||
local room = player.room
|
||||
-- 如果体力不是满的,两个选项都有;如果是满的,就黑掉【恢复体力】那个按钮。这个改动不需要改到标李元浩那边去,因为标李元浩是掉血。
|
||||
if player.hp ~= player.maxHp then
|
||||
self.choice = room:askForChoice(player, {"#lose_xiao_2", "#lose_hp_1_2"}, self.name)
|
||||
else
|
||||
self.choice = room:askForChoice(player, {"#lose_xiao_2"}, self.name, nil, nil, {"#lose_xiao_2", "#lose_hp_1_2"})
|
||||
end
|
||||
return true
|
||||
end,
|
||||
|
||||
-- on_use = function(self, event, target, player, data)
|
||||
-- local xiaos = player:getPile("tym__liyuanhao_xiao")
|
||||
-- if self.choice == "#lose_xiao_2" then
|
||||
-- -- 将所有【啸】纳入自己的手牌
|
||||
-- player.room:moveCardTo(xiaos, Card.PlayerHand, player, fk.ReasonJustMove, self.name, "tym__liyuanhao_xiao", true, player.id)
|
||||
-- elseif self.choice == "#lose_hp_1_2" then
|
||||
-- -- 弃掉所有【啸】
|
||||
-- player.room:throwCard(xiaos, self.name, player, player) -- 把啸全部扔掉
|
||||
-- -- 回复1点体力
|
||||
-- player.room:recover({
|
||||
-- who = player,
|
||||
-- num = 1,
|
||||
-- recoverBy = player,
|
||||
-- skillName = self.name,
|
||||
-- })
|
||||
-- end
|
||||
-- end,
|
||||
-- }
|
||||
-- jy_erduanxiao_2:addRelatedSkill(jy_erduanxiao_trigger_2)
|
||||
on_use = function(self, event, target, player, data)
|
||||
local xiaos = player:getPile("tym__liyuanhao_xiao")
|
||||
if self.choice == "#lose_xiao_2" then
|
||||
-- 将所有【啸】纳入自己的手牌
|
||||
player.room:moveCardTo(xiaos, Card.PlayerHand, player, fk.ReasonJustMove, self.name, "tym__liyuanhao_xiao", true, player.id)
|
||||
elseif self.choice == "#lose_hp_1_2" then
|
||||
-- 弃掉所有【啸】
|
||||
player.room:throwCard(xiaos, self.name, player, player) -- 把啸全部扔掉
|
||||
-- 回复1点体力
|
||||
player.room:recover({
|
||||
who = player,
|
||||
num = 1,
|
||||
recoverBy = player,
|
||||
skillName = self.name,
|
||||
})
|
||||
end
|
||||
end,
|
||||
}
|
||||
jy_erduanxiao_2:addRelatedSkill(jy_erduanxiao_trigger_2)
|
||||
|
||||
-- -- 界三件 已完成 测试通过
|
||||
-- local jy_husanjian_2 = fk.CreateTriggerSkill{
|
||||
-- name = "jy_husanjian_2",
|
||||
-- frequency = Skill.Compulsory,
|
||||
-- anim_type = "offensive",
|
||||
-- events = {fk.DamageCaused},
|
||||
-- can_trigger = function(self, event, target, player, data)
|
||||
-- if not (target == player and player:hasSkill(self)) then return false end
|
||||
-- -- 现在 target 已经是 player,并且 player 拥有这个技能了。这个时候再来看他的装备区
|
||||
-- local weapon = Fk:getCardById(player:getEquipment(Card.SubtypeWeapon))
|
||||
-- local armor = Fk:getCardById(player:getEquipment(Card.SubtypeArmor))
|
||||
-- local defensive_ride = Fk:getCardById(player:getEquipment(Card.SubtypeDefensiveRide))
|
||||
-- local offensive_ride = Fk:getCardById(player:getEquipment(Card.SubtypeOffensiveRide))
|
||||
-- local treasure = Fk:getCardById(player:getEquipment(Card.Treasure))
|
||||
-- return weapon and
|
||||
-- not armor and
|
||||
-- not defensive_ride and
|
||||
-- offensive_ride and
|
||||
-- not treasure
|
||||
-- -- 有且只有武器和-1马
|
||||
-- end,
|
||||
-- on_use = function(self, event, target, player, data)
|
||||
-- local room = player.room
|
||||
-- player:broadcastSkillInvoke(self.name)
|
||||
-- room:notifySkillInvoked(player, self.name, "offensive")
|
||||
-- data.damage = data.damage + 1
|
||||
-- end,
|
||||
-- }
|
||||
-- 界三件 已完成 测试通过
|
||||
local jy_husanjian_2 = fk.CreateTriggerSkill{
|
||||
name = "jy_husanjian_2",
|
||||
frequency = Skill.Compulsory,
|
||||
anim_type = "offensive",
|
||||
events = {fk.DamageCaused},
|
||||
can_trigger = function(self, event, target, player, data)
|
||||
if not (target == player and player:hasSkill(self)) then return false end
|
||||
-- 现在 target 已经是 player,并且 player 拥有这个技能了。这个时候再来看他的装备区
|
||||
local weapon = Fk:getCardById(player:getEquipment(Card.SubtypeWeapon))
|
||||
local armor = Fk:getCardById(player:getEquipment(Card.SubtypeArmor))
|
||||
local defensive_ride = Fk:getCardById(player:getEquipment(Card.SubtypeDefensiveRide))
|
||||
local offensive_ride = Fk:getCardById(player:getEquipment(Card.SubtypeOffensiveRide))
|
||||
local treasure = Fk:getCardById(player:getEquipment(Card.Treasure))
|
||||
return weapon and
|
||||
not armor and
|
||||
not defensive_ride and
|
||||
offensive_ride and
|
||||
not treasure
|
||||
-- 有且只有武器和-1马
|
||||
end,
|
||||
on_use = function(self, event, target, player, data)
|
||||
local room = player.room
|
||||
player:broadcastSkillInvoke(self.name)
|
||||
room:notifySkillInvoked(player, self.name, "offensive")
|
||||
data.damage = data.damage + 1
|
||||
end,
|
||||
}
|
||||
-- TODO: 加一个触发效果器
|
||||
|
||||
-- 因为是两个不同的角色,两个角色的特殊区是不能通用的,所以必须分开写代码。
|
||||
-- tym__liyuanhao:addSkill(jy_huxiao_2)
|
||||
-- tym__liyuanhao:addSkill(jy_huxiao_analeptic_2)
|
||||
-- tym__liyuanhao:addSkill(jy_huxiao_jink_2)
|
||||
-- tym__liyuanhao:addSkill(jy_erduanxiao_2)
|
||||
tym__liyuanhao:addSkill(jy_huxiao_2)
|
||||
tym__liyuanhao:addSkill(jy_huxiao_analeptic_2)
|
||||
tym__liyuanhao:addSkill(jy_huxiao_jink_2)
|
||||
tym__liyuanhao:addSkill(jy_erduanxiao_2)
|
||||
-- tym__liyuanhao:addSkill(jy_husanjian_2)
|
||||
|
||||
-- Fk:loadTranslationTable {
|
||||
-- ["tym__liyuanhao"] = "界李元浩",
|
||||
-- ["tym__liyuanhao_xiao"] = "<font color=\"gold\">啸</font>",
|
||||
Fk:loadTranslationTable {
|
||||
["tym__liyuanhao"] = "界李元浩",
|
||||
["tym__liyuanhao_xiao"] = "<font color=\"gold\">啸</font>",
|
||||
|
||||
-- ["jy_huxiao_2"] = "虎啸",
|
||||
-- [":jy_huxiao_2"] = [[当你使用或打出一张【杀】时,你可以将牌堆顶的一张牌置于你的角色牌上,称为【啸】。
|
||||
-- <br><font size="1"><i>“我希望我的后辈们能够记住,在你踏上职业道路的这一刻开始,你的目标就只有,冠军。”——李元浩</i></font>]],
|
||||
["jy_huxiao_2"] = "虎啸",
|
||||
[":jy_huxiao_2"] = [[当你使用或打出一张【杀】时,你可以将牌堆顶的一张牌置于你的角色牌上,称为【啸】。
|
||||
<br><font size="1"><i>“我希望我的后辈们能够记住,在你踏上职业道路的这一刻开始,你的目标就只有,冠军。”——李元浩</i></font>]],
|
||||
|
||||
-- ["jy_huxiao_analeptic_2"] = "横刀",
|
||||
-- [":jy_huxiao_analeptic_2"] = [[你可以将【啸】当作【酒】使用或打出。
|
||||
-- <br><font size="1"><i>“谁敢横刀立马……”——钱晨</i></font>]],
|
||||
["jy_huxiao_analeptic_2"] = "横刀",
|
||||
[":jy_huxiao_analeptic_2"] = [[你可以将【啸】当作【酒】使用或打出。
|
||||
<br><font size="1"><i>“谁敢横刀立马……”——钱晨</i></font>]],
|
||||
|
||||
-- ["jy_huxiao_jink_2"] = "立马",
|
||||
-- [":jy_huxiao_jink_2"] = [[你可以将【啸】当作【闪】使用或打出。
|
||||
-- <br><font size="1"><i>“……唯我虎大将军!”——钱晨</i></font>]],
|
||||
["jy_huxiao_jink_2"] = "立马",
|
||||
[":jy_huxiao_jink_2"] = [[你可以将【啸】当作【闪】使用或打出。
|
||||
<br><font size="1"><i>“……唯我虎大将军!”——钱晨</i></font>]],
|
||||
|
||||
-- ["jy_erduanxiao_2"] = "二段",
|
||||
-- [":jy_erduanxiao_2"] = "锁定技,当你的角色牌上有且仅有两张【啸】时,你选择:弃掉所有【啸】并恢复一点体力,或将所有【啸】纳入手牌。",
|
||||
-- ["#jy_erduanxiao_trigger_2"] = "二段",
|
||||
-- ["#lose_xiao_2"] = "将所有【啸】纳入手牌",
|
||||
-- ["#lose_hp_1_2"] = "弃掉所有【啸】并恢复一点体力",
|
||||
-- }
|
||||
["jy_erduanxiao_2"] = "二段",
|
||||
[":jy_erduanxiao_2"] = "锁定技,当你的角色牌上有且仅有两张【啸】时,你选择:弃掉所有【啸】并恢复一点体力,或将所有【啸】纳入手牌。",
|
||||
["#jy_erduanxiao_trigger_2"] = "二段",
|
||||
["#lose_xiao_2"] = "将所有【啸】纳入手牌",
|
||||
["#lose_hp_1_2"] = "弃掉所有【啸】并恢复一点体力",
|
||||
}
|
||||
|
||||
|
||||
-- -- -- 侯国玉
|
||||
-- local tym__houguoyu = General(extension, "tym__houguoyu", "qun", 5, 5, General.Male)
|
||||
-- -- 侯国玉
|
||||
local tym__houguoyu = General(extension, "tym__houguoyu", "qun", 5, 10, General.Male)
|
||||
|
||||
-- tym__houguoyu:addSkill(jy_husanjian_2)
|
||||
-- -- tym__houguoyu:addSkill("biyue")
|
||||
tym__houguoyu:addSkill(jy_husanjian_2)
|
||||
tym__houguoyu:addSkill("biyue")
|
||||
|
||||
-- Fk:loadTranslationTable {
|
||||
-- ["tym__houguoyu"] = "侯国玉",
|
||||
-- ["houguoyu"] = "侯国玉",
|
||||
Fk:loadTranslationTable {
|
||||
["tym__houguoyu"] = "侯国玉",
|
||||
["houguoyu"] = "侯国玉",
|
||||
|
||||
-- ["jy_husanjian_2"] = "三件",
|
||||
-- [":jy_husanjian_2"] = [[锁定技,当你的装备区有且仅有武器和进攻马时,你造成的伤害+1。
|
||||
-- <br><font size="1"><i>虎三件,有时也可以指【卢登的激荡】、【虚空之杖】和【灭世者的死亡之帽】。</i></font>]],
|
||||
-- }
|
||||
["jy_husanjian_2"] = "三件",
|
||||
[":jy_husanjian_2"] = [[锁定技,当你的装备区有且仅有武器和进攻马时,你造成的伤害+1。]],
|
||||
}
|
||||
|
||||
-- <br><font size="1"><i>虎三件,有时也可以指【卢登的激荡】、【虚空之杖】和【灭世者的死亡之帽】。</i></font>
|
||||
|
||||
|
||||
-- 高天亮
|
||||
|
@ -1030,7 +1030,7 @@ Fk:loadTranslationTable {
|
|||
|
||||
["jy_yuanshen"] = "原神",
|
||||
[":jy_yuanshen"] = [[锁定技,你造成的属性伤害+1。
|
||||
<font size="1"><br><br>特别提示:当你对被横置的角色造成属性伤害时,所有其他被横置的角色会受到的伤害+2。
|
||||
<font size="1"><br>特别提示:当你对被横置的角色造成属性伤害时,所有其他被横置的角色会受到的伤害+2。
|
||||
这是因为【铁锁连环】的效果是将你对主目标的伤害值记录,然后令你对其他所有被横置的角色也造成一次这个值的伤害。<br><br>
|
||||
特别提示:当你是双将且另一个武将是界赵乾熙、你发动了【附魔】造成属性伤害时,不会触发这个技能(因为这两个技能是在同一个时机修改伤害参数)。我觉得这还挺平衡的。</font>]],
|
||||
|
||||
|
@ -1406,7 +1406,7 @@ Fk:loadTranslationTable {
|
|||
["jy_luojiao"] = "罗绞",
|
||||
[":jy_luojiao"] = [[当你的所有【点】花色均不同时(只有1张【点】也可以),可以视为使用一张【南蛮入侵】,每回合限一次;
|
||||
当你的【点】有4张时,可以视为使用一张【万箭齐发】。
|
||||
<br><br><font size="1">已知问题:如果你的【点】有且仅有四张且花色都不同,
|
||||
<br><font size="1">已知问题:如果你的【点】有且仅有四张且花色都不同,
|
||||
那么【南蛮入侵】【万箭齐发】只能触发一个。这个问题将在后续修复。</font>]],
|
||||
["#jy_luojiao_archery_attack"] = "罗绞·万箭齐发",
|
||||
["#jy_luojiao_savage_assault"] = "罗绞·南蛮入侵",
|
||||
|
|
Loading…
Reference in New Issue