把图片也上传上去
This commit is contained in:
parent
73a4af480b
commit
cdb736241c
Binary file not shown.
After Width: | Height: | Size: 24 KiB |
Binary file not shown.
After Width: | Height: | Size: 52 KiB |
Binary file not shown.
After Width: | Height: | Size: 97 KiB |
Binary file not shown.
After Width: | Height: | Size: 158 KiB |
|
@ -83,6 +83,7 @@
|
|||
power_up: tp`${'condition'}${'targets'}${'value'}${'reduceDamage'}${'addCombo'}${'followAttack'}`,
|
||||
henshin: tp`变身为${'card'}`,
|
||||
void_poison: tp`消除${'poison'}时不会受到毒伤害`,
|
||||
skill_proviso: tp`${'condition'}才能发动后续效果`,
|
||||
},
|
||||
power: {
|
||||
unknown: tp`[ 未知能力提升: ${'type'} ]`,
|
||||
|
|
|
@ -329,6 +329,7 @@ const SkillValueKind = {
|
|||
ConstantTo: 'const-to',
|
||||
xMaxHP: 'mul-maxhp',
|
||||
xHP: 'mul-hp',
|
||||
xCHP: 'mul-chp',
|
||||
xATK: 'mul-atk',
|
||||
xRCV: 'mul-rcv',
|
||||
RandomATK: 'random-atk',
|
||||
|
@ -374,6 +375,7 @@ const SkillKinds = {
|
|||
Unbind: "unbind",
|
||||
BindSkill: "bind-skill",
|
||||
RandomSkills: "random-skills",
|
||||
SkillProviso: "skill-proviso",
|
||||
ChangeAttribute: "change-attr",
|
||||
SkillBoost: "skill-boost",
|
||||
AddCombo: "add-combo",
|
||||
|
@ -395,6 +397,7 @@ const SkillKinds = {
|
|||
NoSkyfall: "no-skyfall",
|
||||
Henshin: "henshin",
|
||||
VoidPoison: "void-poison",
|
||||
SkillProviso: "skill-proviso",
|
||||
}
|
||||
|
||||
function skillParser(skillId)
|
||||
|
@ -482,6 +485,9 @@ const v = {
|
|||
xHP: function(value) {
|
||||
return { kind: SkillValueKind.xHP, value: (value / 100) ?? 1 };
|
||||
},
|
||||
xCHP: function(value) {
|
||||
return { kind: SkillValueKind.xCHP, value: (value / 100) ?? 1 };
|
||||
},
|
||||
xATK: function(value) {
|
||||
return { kind: SkillValueKind.xATK, value: (value / 100) ?? 1 };
|
||||
},
|
||||
|
@ -679,6 +685,7 @@ function board7x6() { return { kind: SkillKinds.Board7x6 }; }
|
|||
function noSkyfall() { return { kind: SkillKinds.NoSkyfall }; }
|
||||
function henshin(id) { return { kind: SkillKinds.Henshin, id: id }; }
|
||||
function voidPoison() { return { kind: SkillKinds.VoidPoison }; }
|
||||
function skillProviso(cond) { return { kind: SkillKinds.SkillProviso, cond: cond }; }
|
||||
|
||||
const parsers = {
|
||||
parser: (() => []), //这个用来解决代码提示的报错问题,不起实际作用
|
||||
|
@ -689,7 +696,7 @@ const parsers = {
|
|||
[3](turns, percent) { return activeTurns(turns, reduceDamage('all', v.percent(percent))); },
|
||||
[4](mul) { return poison(v.xATK(mul)); },
|
||||
[5](time) { return CTW(v.constant(time)); },
|
||||
[6](percent) { return gravity(v.xHP(percent)); },
|
||||
[6](percent) { return gravity(v.xCHP(percent)); },
|
||||
[7](mul) { return heal(v.xRCV(mul)); },
|
||||
[8](value) { return heal(v.constant(value)); },
|
||||
[9](from, to) { return changeOrbs(fromTo([from ?? 0], [to ?? 0])); },
|
||||
|
@ -1120,7 +1127,7 @@ const parsers = {
|
|||
return powerUp(null, null, p.scaleCombos(combo, combo, [100, 100], [0, 0]), null, null, [followAttackFixed(damage)]);
|
||||
},
|
||||
[224](turns, attr) { return activeTurns(turns, changeAttr('opponent', attr)); },
|
||||
|
||||
[225](min, max) { return skillProviso(c.hp(min ?? 0, max ?? 100)); },
|
||||
[226](turns, percent) { return activeTurns(turns, orbDropIncrease(v.percent(percent), [], 'nail')); },
|
||||
[227]() { return leaderChange(1); },
|
||||
[228](turns, attrs, types, atk, rcv) {
|
||||
|
@ -1768,6 +1775,15 @@ function renderSkill(skill, option = {})
|
|||
frg.ap(tsp.skill.void_poison(dict));
|
||||
break;
|
||||
}
|
||||
case SkillKinds.SkillProviso: { //条件限制才能用技能
|
||||
let cond = skill.cond;
|
||||
dict = {
|
||||
condition: renderCondition(cond)
|
||||
}
|
||||
frg.ap(tsp.skill.skill_proviso(dict));
|
||||
break;
|
||||
}
|
||||
|
||||
default: {
|
||||
console.log("未处理的技能类型",skill.kind, skill);
|
||||
frg.ap(skill.kind);
|
||||
|
@ -2234,6 +2250,18 @@ function renderValue(_value, option = {}) {
|
|||
);
|
||||
break;
|
||||
}
|
||||
case SkillValueKind.xCHP: {
|
||||
dict = {
|
||||
value: option.percent ? (_value.value * 100).keepCounts(od,os) : _value.value.keepCounts(od,os),
|
||||
stats: renderStat('chp'),
|
||||
};
|
||||
frg.ap(
|
||||
option.percent ?
|
||||
tspv.mul_of_percent(dict) :
|
||||
tspv.mul_of_times(dict)
|
||||
);
|
||||
break;
|
||||
}
|
||||
case SkillValueKind.xATK: {
|
||||
dict = {
|
||||
value: option.percent ? (_value.value * 100).keepCounts(od,os) : _value.value.keepCounts(od,os),
|
||||
|
|
|
@ -1043,7 +1043,7 @@ icon.type
|
|||
display: inline-block;
|
||||
width: 36px;
|
||||
height: 36px;
|
||||
background-image: url(images/icon-orbs.fw.png);
|
||||
background-image: url(images/icon-orbs.png);
|
||||
background-position-y: 36px;
|
||||
background-repeat: no-repeat;
|
||||
vertical-align: bottom;
|
||||
|
@ -1081,7 +1081,7 @@ icon.type
|
|||
|
||||
.orb[data-orb-icon='_5color']
|
||||
{
|
||||
background-image: url(images/icon-skills.fw.png);
|
||||
background-image: url(images/icon-skills.png);
|
||||
background-position-y:calc(-36px * 24);
|
||||
}
|
||||
.orb[data-orb-icon='-1']
|
||||
|
|
Loading…
Reference in New Issue