新武将、皮肤
This commit is contained in:
parent
59209fcfad
commit
5057225508
|
@ -124,6 +124,17 @@ card.extra={
|
||||||
},
|
},
|
||||||
target:function(player,target){
|
target:function(player,target){
|
||||||
if(target.skills.contains('huogong2')||target.num('h')==0) return 0;
|
if(target.skills.contains('huogong2')||target.num('h')==0) return 0;
|
||||||
|
if(target==player){
|
||||||
|
if(_status.event.filterCard({name:'huogong'})){
|
||||||
|
return -1.5;
|
||||||
|
}
|
||||||
|
if(_status.event.skill){
|
||||||
|
var viewAs=get.info(_status.event.skill).viewAs;
|
||||||
|
if(viewAs=='huogong') return -1.5;
|
||||||
|
if(viewAs&&viewAs.name=='huogong') return -1.5;
|
||||||
|
}
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
return -1.5;
|
return -1.5;
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
|
@ -175,6 +175,7 @@ card.shenqi={
|
||||||
shouna:{
|
shouna:{
|
||||||
trigger:{global:'discardAfter'},
|
trigger:{global:'discardAfter'},
|
||||||
filter:function(event,player){
|
filter:function(event,player){
|
||||||
|
if(player.skills.contains('shouna2')) return false;
|
||||||
if(_status.currentPhase==event.player) return false;
|
if(_status.currentPhase==event.player) return false;
|
||||||
if(event.player==player) return false;
|
if(event.player==player) return false;
|
||||||
for(var i=0;i<event.cards.length;i++){
|
for(var i=0;i<event.cards.length;i++){
|
||||||
|
@ -208,6 +209,7 @@ card.shenqi={
|
||||||
"step 2"
|
"step 2"
|
||||||
if(result.bool){
|
if(result.bool){
|
||||||
player.logSkill('shouna');
|
player.logSkill('shouna');
|
||||||
|
player.addTempSkill('shouna2','phaseAfter');
|
||||||
player.$gain2(result.buttons[0].link);
|
player.$gain2(result.buttons[0].link);
|
||||||
event.hu.storage.shouna.push(result.buttons[0].link);
|
event.hu.storage.shouna.push(result.buttons[0].link);
|
||||||
ui.special.appendChild(result.buttons[0].link);
|
ui.special.appendChild(result.buttons[0].link);
|
||||||
|
@ -216,6 +218,7 @@ card.shenqi={
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
shouna2:{},
|
||||||
donghuangzhong:{
|
donghuangzhong:{
|
||||||
mode:['identity','guozhan'],
|
mode:['identity','guozhan'],
|
||||||
enable:'phaseUse',
|
enable:'phaseUse',
|
||||||
|
@ -648,7 +651,7 @@ card.shenqi={
|
||||||
lianhua:'炼化',
|
lianhua:'炼化',
|
||||||
lianhua_info:'出牌阶段限一次,你可以弃置两张炼妖壶中的牌,从牌堆中获得一张与弃置的牌类别均不相同的牌',
|
lianhua_info:'出牌阶段限一次,你可以弃置两张炼妖壶中的牌,从牌堆中获得一张与弃置的牌类别均不相同的牌',
|
||||||
shouna:'收纳',
|
shouna:'收纳',
|
||||||
shouna_info:'当一名其他角色于回合外弃置的卡牌进入弃牌堆后,你可以选择其中的一张放入炼妖壶',
|
shouna_info:'当一名其他角色于回合外弃置的卡牌进入弃牌堆后,你可以选择其中的一张放入炼妖壶,每名角色的回合限一次',
|
||||||
// donghuangzhong_info:'出牌阶段,你可以将一名已死亡角色永久移出游戏,然后回复一点体力,或创建一名与你身份相同的新角色,然后流失X点体力,X为新角色的体力上限',
|
// donghuangzhong_info:'出牌阶段,你可以将一名已死亡角色永久移出游戏,然后回复一点体力,或创建一名与你身份相同的新角色,然后流失X点体力,X为新角色的体力上限',
|
||||||
// xuanyuanjian_info:'锁定技,你使用的杀无视距离,可以额外指定一个目标,每当你造成一次伤害,有50%的机率使伤害加一并变为雷属性。任何时候,若你体力值不超过2,则立即失去轩辕剑',
|
// xuanyuanjian_info:'锁定技,你使用的杀无视距离,可以额外指定一个目标,每当你造成一次伤害,有50%的机率使伤害加一并变为雷属性。任何时候,若你体力值不超过2,则立即失去轩辕剑',
|
||||||
pangufu_info:'锁定技,每当你造成一次伤害,受伤角色须弃置一张牌',
|
pangufu_info:'锁定技,每当你造成一次伤害,受伤角色须弃置一张牌',
|
||||||
|
|
|
@ -196,7 +196,24 @@ card.standard={
|
||||||
},
|
},
|
||||||
result:{
|
result:{
|
||||||
target:function(player,target){
|
target:function(player,target){
|
||||||
if(target.num('h')<=target.hp&&target.hp>2) return 0;
|
var nh=target.num('h');
|
||||||
|
var keep=false;
|
||||||
|
if(nh<=target.hp){
|
||||||
|
keep=true;
|
||||||
|
}
|
||||||
|
else if(nh==target.hp+1&&target.hp>=3){
|
||||||
|
keep=true;
|
||||||
|
}
|
||||||
|
if(target.hp>=2&&keep&&target.hasFriend()){
|
||||||
|
if(target.hp>2) return 0;
|
||||||
|
if(target.hp==2){
|
||||||
|
for(var i=0;i<game.players.length;i++){
|
||||||
|
if(target!=game.players[i]&&ai.get.attitude(target,game.players[i])>=3&&game.players[i].hp<=1){
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
if(target.hp<0&&target!=player&&target.identity!='zhu') return 0;
|
if(target.hp<0&&target!=player&&target.identity!='zhu') return 0;
|
||||||
var att=ai.get.attitude(player,target);
|
var att=ai.get.attitude(player,target);
|
||||||
if(att<3&&att>=0) return 0;
|
if(att<3&&att>=0) return 0;
|
||||||
|
@ -908,11 +925,15 @@ card.standard={
|
||||||
}
|
}
|
||||||
else{
|
else{
|
||||||
if(!card.expired){
|
if(!card.expired){
|
||||||
|
var target=player.next;
|
||||||
|
if(target.num('j','shandian')&&!target.next.num('j','shandian')){
|
||||||
|
target=target.next;
|
||||||
|
}
|
||||||
if(card.name!='shandian'){
|
if(card.name!='shandian'){
|
||||||
player.next.addJudge('shandian',card);
|
target.addJudge('shandian',card);
|
||||||
}
|
}
|
||||||
else{
|
else{
|
||||||
player.next.addJudge(card);
|
target.addJudge(card);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else{
|
else{
|
||||||
|
@ -922,7 +943,16 @@ card.standard={
|
||||||
},
|
},
|
||||||
cancel:function(){
|
cancel:function(){
|
||||||
if(!card.expired){
|
if(!card.expired){
|
||||||
player.next.addJudge(card);
|
var target=player.next;
|
||||||
|
if(target.num('j','shandian')&&!target.next.num('j','shandian')){
|
||||||
|
target=target.next;
|
||||||
|
}
|
||||||
|
if(card.name!='shandian'){
|
||||||
|
target.addJudge('shandian',card);
|
||||||
|
}
|
||||||
|
else{
|
||||||
|
target.addJudge(card);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
else{
|
else{
|
||||||
card.expired=false;
|
card.expired=false;
|
||||||
|
@ -1486,7 +1516,7 @@ card.standard={
|
||||||
["spade",6,"qinggang"],
|
["spade",6,"qinggang"],
|
||||||
["spade",5,"qinglong"],
|
["spade",5,"qinglong"],
|
||||||
["spade",12,"zhangba"],
|
["spade",12,"zhangba"],
|
||||||
["spade",5,"guanshi"],
|
["diamond",5,"guanshi"],
|
||||||
["diamond",12,"fangtian"],
|
["diamond",12,"fangtian"],
|
||||||
["heart",5,"qilin"],
|
["heart",5,"qilin"],
|
||||||
|
|
||||||
|
|
|
@ -34,6 +34,10 @@ card.yibao={
|
||||||
}
|
}
|
||||||
else{
|
else{
|
||||||
if(!card.expired){
|
if(!card.expired){
|
||||||
|
var target=player.next;
|
||||||
|
if(target.num('j','huoshan')&&!target.next.num('j','huoshan')){
|
||||||
|
target=target.next;
|
||||||
|
}
|
||||||
if(card.name!='huoshan'){
|
if(card.name!='huoshan'){
|
||||||
player.next.addJudge('huoshan',card);
|
player.next.addJudge('huoshan',card);
|
||||||
}
|
}
|
||||||
|
@ -47,7 +51,21 @@ card.yibao={
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
cancel:function(){
|
cancel:function(){
|
||||||
player.next.addJudge(card);
|
if(!card.expired){
|
||||||
|
var target=player.next;
|
||||||
|
if(target.num('j','huoshan')&&!target.next.num('j','huoshan')){
|
||||||
|
target=target.next;
|
||||||
|
}
|
||||||
|
if(card.name!='huoshan'){
|
||||||
|
player.next.addJudge('huoshan',card);
|
||||||
|
}
|
||||||
|
else{
|
||||||
|
player.next.addJudge(card);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else{
|
||||||
|
card.expired=false;
|
||||||
|
}
|
||||||
},
|
},
|
||||||
ai:{
|
ai:{
|
||||||
basic:{
|
basic:{
|
||||||
|
@ -131,11 +149,15 @@ card.yibao={
|
||||||
}
|
}
|
||||||
else{
|
else{
|
||||||
if(!card.expired){
|
if(!card.expired){
|
||||||
|
var target=player.next;
|
||||||
|
if(target.num('j','hongshui')&&!target.next.num('j','hongshui')){
|
||||||
|
target=target.next;
|
||||||
|
}
|
||||||
if(card.name!='hongshui'){
|
if(card.name!='hongshui'){
|
||||||
player.next.addJudge('hongshui',card);
|
target.addJudge('hongshui',card);
|
||||||
}
|
}
|
||||||
else{
|
else{
|
||||||
player.next.addJudge(card);
|
target.addJudge(card);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else{
|
else{
|
||||||
|
@ -144,7 +166,21 @@ card.yibao={
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
cancel:function(){
|
cancel:function(){
|
||||||
player.next.addJudge(card);
|
if(!card.expired){
|
||||||
|
var target=player.next;
|
||||||
|
if(target.num('j','hongshui')&&!target.next.num('j','hongshui')){
|
||||||
|
target=target.next;
|
||||||
|
}
|
||||||
|
if(card.name!='hongshui'){
|
||||||
|
target.addJudge('hongshui',card);
|
||||||
|
}
|
||||||
|
else{
|
||||||
|
target.addJudge(card);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else{
|
||||||
|
card.expired=false;
|
||||||
|
}
|
||||||
},
|
},
|
||||||
ai:{
|
ai:{
|
||||||
basic:{
|
basic:{
|
||||||
|
|
|
@ -239,6 +239,7 @@ character.diy={
|
||||||
ai:{
|
ai:{
|
||||||
skillTagFilter:function(player){
|
skillTagFilter:function(player){
|
||||||
if(player.storage.guihan) return false;
|
if(player.storage.guihan) return false;
|
||||||
|
if(player.hp>0) return false;
|
||||||
},
|
},
|
||||||
save:true,
|
save:true,
|
||||||
result:{
|
result:{
|
||||||
|
|
|
@ -136,6 +136,7 @@ character.fire={
|
||||||
ai:{
|
ai:{
|
||||||
skillTagFilter:function(player){
|
skillTagFilter:function(player){
|
||||||
if(player.storage.niepan) return false;
|
if(player.storage.niepan) return false;
|
||||||
|
if(player.hp>0) return false;
|
||||||
},
|
},
|
||||||
save:true,
|
save:true,
|
||||||
result:{
|
result:{
|
||||||
|
|
|
@ -533,6 +533,10 @@ character.gujian={
|
||||||
},
|
},
|
||||||
ai:{
|
ai:{
|
||||||
save:true,
|
save:true,
|
||||||
|
skillTagFilter:function(player){
|
||||||
|
if(player.storage.shahun) return false;
|
||||||
|
if(player.hp>0) return false;
|
||||||
|
},
|
||||||
result:{
|
result:{
|
||||||
player:3
|
player:3
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,51 +1,519 @@
|
||||||
'use strict';
|
'use strict';
|
||||||
character.hearth={
|
character.hearth={
|
||||||
character:{
|
character:{
|
||||||
// hs_jaina:['female','wei',3,[],['fullskin']],
|
hs_jaina:['female','wei',3,['huopu','bianxing','bingjia'],['fullskin']],
|
||||||
// hs_rexxar:['male','qun',4,[],['fullskin']],
|
hs_rexxar:['male','qun',4,['shoulie','gongji'],['fullskin']],
|
||||||
// hs_uther:['male','qun',4,[],['fullskin']],
|
hs_uther:['male','qun',4,['fengxian','jieming'],['fullskin']],
|
||||||
// hs_garrosh:['male','qun',4,[],['fullskin']],
|
hs_garrosh:['male','qun',4,['zhanhou','qiangxi'],['fullskin']],
|
||||||
hs_malfurion:['male','wu',4,['jihuo'],['fullskin']],
|
hs_malfurion:['male','wu',4,['jihuo'],['fullskin']],
|
||||||
hs_guldan:['male','wei',3,['fenliu','hongxi'],['fullskin']],
|
hs_guldan:['male','qun',3,['fenliu','hongxi'],['fullskin']],
|
||||||
// hs_anduin:['male','qun',4,[],['fullskin']],
|
hs_anduin:['male','qun',3,['shengguang','shijie','anying'],['fullskin']],
|
||||||
hs_thrall:['male','qun',4,['tuteng','tzhenji'],['fullskin']],
|
hs_thrall:['male','wu',4,['tuteng','tzhenji'],['fullskin']],
|
||||||
hs_waleera:['female','qun',3,['jianren','mengun','wlianji'],['fullskin']],
|
hs_waleera:['female','qun',3,['jianren','mengun','wlianji'],['fullskin']],
|
||||||
|
|
||||||
hs_medivh:['male','wei',3,['jingxiang','moying','xianzhi'],['fullskin']],
|
hs_medivh:['male','wei',3,['jingxiang','moying','mdzhoufu'],['fullskin']],
|
||||||
// hs_alleria:['male','qun',3,[],['fullskin']],
|
hs_alleria:['male','wu',3,['fengxing','qiaodong','liegong'],['fullskin']],
|
||||||
// hs_magni:['male','qun',3,['jingxiang'],['fullskin']],
|
hs_magni:['male','qun',4,['zhongjia','dunji'],['fullskin']],
|
||||||
},
|
},
|
||||||
skill:{
|
skill:{
|
||||||
moying:{
|
zhongjia:{
|
||||||
trigger:{player:'phaseEnd'},
|
trigger:{player:'damageEnd'},
|
||||||
|
forced:true,
|
||||||
|
filter:function(event){
|
||||||
|
return event.num>0;
|
||||||
|
},
|
||||||
|
content:function(){
|
||||||
|
player.changeHujia();
|
||||||
|
},
|
||||||
|
ai:{
|
||||||
|
nohujia:true,
|
||||||
|
skillTagFilter:function(player){
|
||||||
|
return player.hp>1;
|
||||||
|
},
|
||||||
|
threaten:function(player,target){
|
||||||
|
if(!target.hujia) return 0.8;
|
||||||
|
},
|
||||||
|
effect:{
|
||||||
|
target:function(card,player,target){
|
||||||
|
if(get.tag(card,'damage')){
|
||||||
|
if(player.skills.contains('jueqing')) return [1,-1];
|
||||||
|
return 0.8;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
dunji:{
|
||||||
|
enable:'phaseUse',
|
||||||
filter:function(event,player){
|
filter:function(event,player){
|
||||||
return !player.getStat('damage');
|
return player.hujia?true:false;
|
||||||
|
},
|
||||||
|
filterTarget:function(card,player,target){
|
||||||
|
return player!=target;
|
||||||
|
},
|
||||||
|
selectTarget:function(){
|
||||||
|
return [1,_status.event.player.hujia];
|
||||||
|
},
|
||||||
|
content:function(){
|
||||||
|
if(target==targets[0]){
|
||||||
|
player.changeHujia(-player.hujia);
|
||||||
|
}
|
||||||
|
target.damage();
|
||||||
|
},
|
||||||
|
ai:{
|
||||||
|
order:9,
|
||||||
|
result:{
|
||||||
|
target:function(player,target){
|
||||||
|
return ai.get.damageEffect(target,player,target)+0.5;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
fengxing:{
|
||||||
|
trigger:{player:['useCard','respondAfter']},
|
||||||
|
frequent:true,
|
||||||
|
filter:function(event){
|
||||||
|
return event.card&&event.card.name=='sha';
|
||||||
|
},
|
||||||
|
content:function(){
|
||||||
|
player.draw();
|
||||||
|
}
|
||||||
|
},
|
||||||
|
fengxian:{
|
||||||
|
enable:'phaseUse',
|
||||||
|
usable:1,
|
||||||
|
filterTarget:function(card,player,target){
|
||||||
|
return target.num('h')>0;
|
||||||
|
},
|
||||||
|
selectTarget:-1,
|
||||||
|
content:function(){
|
||||||
|
target.chooseToDiscard(true);
|
||||||
|
},
|
||||||
|
ai:{
|
||||||
|
order:8,
|
||||||
|
result:{
|
||||||
|
target:function(player,target){
|
||||||
|
var nh=target.num('h');
|
||||||
|
switch(nh){
|
||||||
|
case 0:return 0;
|
||||||
|
case 1:return -1.5;
|
||||||
|
case 2:return -1.3;
|
||||||
|
case 3:return -1;
|
||||||
|
default:return -0.8;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
qiaodong:{
|
||||||
|
enable:['chooseToRespond'],
|
||||||
|
filterCard:{type:'equip'},
|
||||||
|
viewAs:{name:'shan'},
|
||||||
|
position:'he',
|
||||||
|
prompt:'将一张装备牌当闪使用或打出',
|
||||||
|
check:function(){return 1},
|
||||||
|
ai:{
|
||||||
|
respondShan:true,
|
||||||
|
skillTagFilter:function(player){
|
||||||
|
if(!player.num('he',{type:'equip'})) return false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
zhanhou:{
|
||||||
|
init:function(player){
|
||||||
|
player.forcemin=true;
|
||||||
|
},
|
||||||
|
enable:'phaseUse',
|
||||||
|
filterCard:{type:'equip'},
|
||||||
|
check:function(){
|
||||||
|
return 1;
|
||||||
|
},
|
||||||
|
content:function(){
|
||||||
|
player.changeHujia();
|
||||||
|
},
|
||||||
|
ai:{
|
||||||
|
order:2,
|
||||||
|
result:{
|
||||||
|
player:1
|
||||||
|
}
|
||||||
|
},
|
||||||
|
mod:{
|
||||||
|
globalFrom:function(from,to,distance){
|
||||||
|
return distance-from.hujia;
|
||||||
|
}
|
||||||
|
},
|
||||||
|
},
|
||||||
|
shijie:{
|
||||||
|
trigger:{player:'phaseEnd'},
|
||||||
|
direct:true,
|
||||||
|
filter:function(event,player){
|
||||||
|
for(var i=0;i<game.players.length;i++){
|
||||||
|
if(game.players[i]!=player&&game.players[i].num('h')){
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return false;
|
||||||
|
},
|
||||||
|
content:function(){
|
||||||
|
'step 0'
|
||||||
|
player.chooseTarget('是否发动【视界】',function(card,player,target){
|
||||||
|
return player!=target&&target.num('h')>0;
|
||||||
|
}).ai=function(target){
|
||||||
|
return 11-ai.get.attitude(player,target);
|
||||||
|
};
|
||||||
|
'step 1'
|
||||||
|
if(result.bool){
|
||||||
|
player.logSkill('shijie',result.targets);
|
||||||
|
var target=result.targets[0];
|
||||||
|
player.gain(target.get('h').randomGet());
|
||||||
|
event.target=target;
|
||||||
|
target.$give(1,player);
|
||||||
|
game.delay();
|
||||||
|
event.target.draw();
|
||||||
|
}
|
||||||
|
},
|
||||||
|
ai:{
|
||||||
|
expose:0.1
|
||||||
|
}
|
||||||
|
},
|
||||||
|
shengguang:{
|
||||||
|
enable:'phaseUse',
|
||||||
|
filterCard:{color:'red'},
|
||||||
|
filter:function(event,player){
|
||||||
|
return player.num('he',{color:'red'})>0;
|
||||||
|
},
|
||||||
|
position:'he',
|
||||||
|
usable:1,
|
||||||
|
check:function(card){
|
||||||
|
return 9-ai.get.value(card)
|
||||||
|
},
|
||||||
|
filterTarget:function(card,player,target){
|
||||||
|
if(player.storage.anying) return true;
|
||||||
|
if(target.hp>=target.maxHp) return false;
|
||||||
|
return true;
|
||||||
|
},
|
||||||
|
content:function(){
|
||||||
|
'step 0'
|
||||||
|
if(player.storage.anying){
|
||||||
|
target.loseHp();
|
||||||
|
event.finish();
|
||||||
|
}
|
||||||
|
else{
|
||||||
|
target.recover();
|
||||||
|
}
|
||||||
|
'step 1'
|
||||||
|
if(target.hp<target.maxHp){
|
||||||
|
target.draw();
|
||||||
|
}
|
||||||
|
},
|
||||||
|
ai:{
|
||||||
|
order:9,
|
||||||
|
result:{
|
||||||
|
target:function(player,target){
|
||||||
|
if(player.storage.anying) return -1;
|
||||||
|
if(target.hp==1) return 5;
|
||||||
|
if(player==target&&player.num('h')>player.hp) return 5;
|
||||||
|
return 2;
|
||||||
|
}
|
||||||
|
},
|
||||||
|
threaten:2,
|
||||||
|
expose:0.2
|
||||||
|
}
|
||||||
|
},
|
||||||
|
xinci:{
|
||||||
|
enable:'phaseUse',
|
||||||
|
filterCard:{color:'black'},
|
||||||
|
filter:function(event,player){
|
||||||
|
return player.num('he',{color:'black'})>0;
|
||||||
|
},
|
||||||
|
position:'he',
|
||||||
|
usable:1,
|
||||||
|
mark:true,
|
||||||
|
intro:{
|
||||||
|
content:'已进入暗影形态'
|
||||||
|
},
|
||||||
|
check:function(card){
|
||||||
|
return 9-ai.get.value(card)
|
||||||
|
},
|
||||||
|
filterTarget:true,
|
||||||
|
content:function(){
|
||||||
|
target.loseHp();
|
||||||
|
},
|
||||||
|
ai:{
|
||||||
|
order:9,
|
||||||
|
result:{
|
||||||
|
target:-1
|
||||||
|
},
|
||||||
|
threaten:2,
|
||||||
|
expose:0.2
|
||||||
|
}
|
||||||
|
},
|
||||||
|
anying:{
|
||||||
|
unique:true,
|
||||||
|
enable:'phaseUse',
|
||||||
|
filter:function(event,player){
|
||||||
|
return !player.storage.anying&&player.num('he',{color:'black'})>1;
|
||||||
|
},
|
||||||
|
selectCard:2,
|
||||||
|
filterCard:{color:'black'},
|
||||||
|
position:'he',
|
||||||
|
check:function(card){
|
||||||
|
return 5-ai.get.value(card);
|
||||||
|
},
|
||||||
|
content:function(){
|
||||||
|
player.storage.anying=true;
|
||||||
|
player.removeSkill('shengguang');
|
||||||
|
player.addSkill('xinci');
|
||||||
|
},
|
||||||
|
ai:{
|
||||||
|
order:1,
|
||||||
|
result:{
|
||||||
|
player:1
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
bianxing:{
|
||||||
|
trigger:{global:'useCard'},
|
||||||
|
filter:function(event,player){
|
||||||
|
if(player.skills.contains('bianxing2')) return false;
|
||||||
|
if(event.player==player) return false;
|
||||||
|
if(_status.currentPhase!=event.player) return false;
|
||||||
|
if(!event.targets) return false;
|
||||||
|
if(event.targets.length!=1) return false;
|
||||||
|
var hs=player.get('h');
|
||||||
|
for(var i=0;i<hs.length;i++){
|
||||||
|
if(hs[i].name!=event.card.name){
|
||||||
|
if(lib.filter.filterTarget(hs[i],event.player,event.targets[0])){
|
||||||
|
var select=get.select(get.info(hs[i]).selectTarget);
|
||||||
|
if(select[0]<=1&&select[1]>=1){
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return false;
|
||||||
},
|
},
|
||||||
direct:true,
|
direct:true,
|
||||||
content:function(){
|
content:function(){
|
||||||
"step 0"
|
'step 0'
|
||||||
player.chooseTarget('是否发动【魔影】?').ai=function(target){
|
var eff=ai.get.effect(trigger.targets[0],trigger.card,trigger.player,player);
|
||||||
if(player.skills.contains('xianzhi')){
|
var att=ai.get.attitude(player,trigger.player);
|
||||||
return -ai.get.attitude(player,target);
|
player.chooseCard('是否发动【变形】?',function(card){
|
||||||
|
if(card.name!=trigger.card.name&&
|
||||||
|
lib.filter.filterTarget(card,trigger.player,trigger.targets[0])){
|
||||||
|
var select=get.select(get.info(card).selectTarget);
|
||||||
|
if(select[0]<=1&&select[1]>=1){
|
||||||
|
return true;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
return 0;
|
return false;
|
||||||
|
}).ai=function(card){
|
||||||
|
if(att>=0) return 0;
|
||||||
|
return ai.get.effect(trigger.targets[0],card,trigger.player,player)-eff;
|
||||||
};
|
};
|
||||||
"step 1"
|
'step 1'
|
||||||
if(result.bool){
|
if(result.bool){
|
||||||
event.target=result.targets[0];
|
var card=result.cards[0];
|
||||||
event.target.judge(function(card){
|
player.lose(result.cards);
|
||||||
return get.color(card)=='red'?1:-1;
|
event.cards=result.cards;
|
||||||
});
|
player.logSkill('bianxing',trigger.player);
|
||||||
player.logSkill('moying',event.target);
|
game.delay(0.5);
|
||||||
|
trigger.untrigger();
|
||||||
|
trigger.card=card;
|
||||||
|
trigger.cards=[card];
|
||||||
|
player.addTempSkill('bianxing2','phaseAfter');
|
||||||
}
|
}
|
||||||
else{
|
else{
|
||||||
event.finish();
|
event.finish();
|
||||||
}
|
}
|
||||||
"step 2"
|
'step 2'
|
||||||
if(result.bool){
|
player.$throw(event.cards);
|
||||||
event.target.draw();
|
game.delay();
|
||||||
|
trigger.trigger('useCard');
|
||||||
|
},
|
||||||
|
ai:{
|
||||||
|
expose:0.2,
|
||||||
|
threaten:1.8
|
||||||
|
}
|
||||||
|
},
|
||||||
|
bingjia:{
|
||||||
|
enable:'phaseUse',
|
||||||
|
filter:function(event,player){
|
||||||
|
return !player.skills.contains('bingjia2');
|
||||||
|
},
|
||||||
|
filterCard:{color:'black'},
|
||||||
|
check:function(card){
|
||||||
|
return 6-ai.get.value(card);
|
||||||
|
},
|
||||||
|
discard:false,
|
||||||
|
prepare:function(cards,player){
|
||||||
|
player.$give(1,player);
|
||||||
|
},
|
||||||
|
content:function(){
|
||||||
|
player.storage.bingjia=cards[0];
|
||||||
|
player.addSkill('bingjia2');
|
||||||
|
},
|
||||||
|
ai:{
|
||||||
|
order:1,
|
||||||
|
result:{
|
||||||
|
player:1
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
bingjia2:{
|
||||||
|
mark:true,
|
||||||
|
trigger:{target:'useCardToBegin'},
|
||||||
|
forced:true,
|
||||||
|
filter:function(event,player){
|
||||||
|
return event.player!=player&&event.card.number==player.storage.bingjia.number;
|
||||||
|
},
|
||||||
|
content:function(){
|
||||||
|
'step 0'
|
||||||
|
player.showCards([player.storage.bingjia],get.translation(player)+'发动了【冰甲】');
|
||||||
|
'step 1'
|
||||||
|
ui.discardPile.appendChild(player.storage.bingjia);
|
||||||
|
delete player.storage.bingjia;
|
||||||
|
player.changeHujia(2);
|
||||||
|
player.removeSkill('bingjia2');
|
||||||
|
},
|
||||||
|
intro:{
|
||||||
|
mark:function(dialog,content,player){
|
||||||
|
if(player==game.me||player.isUnderControl()){
|
||||||
|
dialog.add([player.storage.bingjia]);
|
||||||
|
}
|
||||||
|
else{
|
||||||
|
return '已发动冰甲';
|
||||||
|
}
|
||||||
|
},
|
||||||
|
content:function(content,player){
|
||||||
|
if(player==game.me||player.isUnderControl()){
|
||||||
|
return get.translation(player.storage.bingjia);
|
||||||
|
}
|
||||||
|
return '已发动冰甲';
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
bianxing2:{},
|
||||||
|
moying:{
|
||||||
|
trigger:{player:'phaseBegin'},
|
||||||
|
filter:function(){
|
||||||
|
for(var i=0;i<game.players.length;i++){
|
||||||
|
if(game.players[i].num('j','shandian')){
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return true;
|
||||||
|
},
|
||||||
|
forced:true,
|
||||||
|
check:function(){
|
||||||
|
return false;
|
||||||
|
},
|
||||||
|
content:function(){
|
||||||
|
'step 0'
|
||||||
|
var card=null;
|
||||||
|
for(var i=0;i<ui.cardPile.childNodes.length;i++){
|
||||||
|
if(ui.cardPile.childNodes[i].name=='shandian'){
|
||||||
|
card=ui.cardPile.childNodes[i];break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if(!card){
|
||||||
|
for(var i=0;i<ui.discardPile.childNodes.length;i++){
|
||||||
|
if(ui.discardPile.childNodes[i].name=='shandian'){
|
||||||
|
card=ui.discardPile.childNodes[i];break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if(card){
|
||||||
|
player.addJudge(card);
|
||||||
|
}
|
||||||
|
'step 1'
|
||||||
|
game.delay();
|
||||||
|
},
|
||||||
|
ai:{
|
||||||
|
threaten:1.5
|
||||||
|
}
|
||||||
|
},
|
||||||
|
mdzhoufu:{
|
||||||
|
enable:'phaseUse',
|
||||||
|
filterCard:{color:'black'},
|
||||||
|
filter:function(event,player){
|
||||||
|
return player.num('h',{color:'black'})>0;
|
||||||
|
},
|
||||||
|
filterTarget:function(card,player,target){
|
||||||
|
return player!=target&&!target.skills.contains('mdzhoufu2');
|
||||||
|
},
|
||||||
|
prepare:function(cards,player){
|
||||||
|
player.$throw(cards);
|
||||||
|
},
|
||||||
|
discard:false,
|
||||||
|
content:function(){
|
||||||
|
target.$gain2(cards);
|
||||||
|
target.storage.mdzhoufu2=cards[0];
|
||||||
|
target.addSkill('mdzhoufu2');
|
||||||
|
target.storage.mdzhoufu3=player;
|
||||||
|
ui.special.appendChild(cards[0]);
|
||||||
|
},
|
||||||
|
check:function(card){
|
||||||
|
return 3-ai.get.value(card)
|
||||||
|
},
|
||||||
|
ai:{
|
||||||
|
expose:0.1,
|
||||||
|
order:1,
|
||||||
|
result:{
|
||||||
|
player:1
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
mdzhoufu2:{
|
||||||
|
trigger:{player:'judge'},
|
||||||
|
forced:true,
|
||||||
|
priority:10,
|
||||||
|
mark:'card',
|
||||||
|
content:function(){
|
||||||
|
"step 0"
|
||||||
|
ui.discardPile.appendChild(player.storage.mdzhoufu2);
|
||||||
|
player.$throw(player.storage.mdzhoufu2);
|
||||||
|
if(player.storage.mdzhoufu3.isAlive()){
|
||||||
|
player.storage.mdzhoufu3.draw();
|
||||||
}
|
}
|
||||||
else{
|
else{
|
||||||
|
game.delay(1.5);
|
||||||
|
}
|
||||||
|
"step 1"
|
||||||
|
player.judging=player.storage.mdzhoufu2;
|
||||||
|
trigger.position.appendChild(player.storage.mdzhoufu2);
|
||||||
|
// trigger.untrigger();
|
||||||
|
game.log(get.translation(player)+'的判定牌改为'+get.translation(player.storage.mdzhoufu2));
|
||||||
|
player.removeSkill('mdzhoufu2');
|
||||||
|
delete player.storage.mdzhoufu2;
|
||||||
|
delete player.storage.mdzhoufu3;
|
||||||
|
},
|
||||||
|
intro:{
|
||||||
|
content:'card'
|
||||||
|
},
|
||||||
|
},
|
||||||
|
moying_old:{
|
||||||
|
trigger:{player:'damageEnd',source:'damageEnd'},
|
||||||
|
check:function(event,player){
|
||||||
|
var target=(player==event.player)?event.source:event.player;
|
||||||
|
return ai.get.attitude(player,target)<0;
|
||||||
|
},
|
||||||
|
filter:function(event,player){
|
||||||
|
var target=(player==event.player)?event.source:event.player;
|
||||||
|
return target.isAlive();
|
||||||
|
},
|
||||||
|
prompt:function(event,player){
|
||||||
|
var target=(player==event.player)?event.source:event.player;
|
||||||
|
return '是否对'+get.translation(target)+'发动【魔影】?';
|
||||||
|
},
|
||||||
|
content:function(){
|
||||||
|
"step 0"
|
||||||
|
event.target=(player==trigger.player)?trigger.source:trigger.player;
|
||||||
|
event.target.judge(function(card){
|
||||||
|
return get.color(card)=='black'?-1:0;
|
||||||
|
});
|
||||||
|
"step 1"
|
||||||
|
if(result.color=='black'){
|
||||||
event.target.loseHp();
|
event.target.loseHp();
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
@ -56,7 +524,7 @@ character.hearth={
|
||||||
},
|
},
|
||||||
xianzhi:{
|
xianzhi:{
|
||||||
trigger:{global:'judgeBegin'},
|
trigger:{global:'judgeBegin'},
|
||||||
frequent:true,
|
direct:true,
|
||||||
filter:function(){
|
filter:function(){
|
||||||
return ui.cardPile.childNodes.length>1;
|
return ui.cardPile.childNodes.length>1;
|
||||||
},
|
},
|
||||||
|
@ -77,6 +545,7 @@ character.hearth={
|
||||||
};
|
};
|
||||||
'step 1'
|
'step 1'
|
||||||
if(result.control=='调换顺序'){
|
if(result.control=='调换顺序'){
|
||||||
|
player.logSkill('xianzhi');
|
||||||
var card=ui.cardPile.firstChild;
|
var card=ui.cardPile.firstChild;
|
||||||
ui.cardPile.removeChild(card);
|
ui.cardPile.removeChild(card);
|
||||||
ui.cardPile.insertBefore(card,ui.cardPile.firstChild.nextSibling);
|
ui.cardPile.insertBefore(card,ui.cardPile.firstChild.nextSibling);
|
||||||
|
@ -85,7 +554,9 @@ character.hearth={
|
||||||
},
|
},
|
||||||
ai:{
|
ai:{
|
||||||
expose:0.1,
|
expose:0.1,
|
||||||
rejudge:0.5
|
tag:{
|
||||||
|
rejudge:0.5
|
||||||
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
jingxiang:{
|
jingxiang:{
|
||||||
|
@ -579,6 +1050,8 @@ character.hearth={
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
translate:{
|
translate:{
|
||||||
|
hs_alleria:'奥蕾莉亚',
|
||||||
|
hs_magni:'麦格尼',
|
||||||
hs_medivh:'麦迪文',
|
hs_medivh:'麦迪文',
|
||||||
hs_jaina:'吉安娜',
|
hs_jaina:'吉安娜',
|
||||||
hs_rexxar:'雷克萨',
|
hs_rexxar:'雷克萨',
|
||||||
|
@ -590,11 +1063,38 @@ character.hearth={
|
||||||
hs_thrall:'萨尔',
|
hs_thrall:'萨尔',
|
||||||
hs_waleera:'瓦莉拉',
|
hs_waleera:'瓦莉拉',
|
||||||
|
|
||||||
|
fengxing:'风行',
|
||||||
|
fengxing_info:'每当你使用或打出一张杀,你可以摸一张牌',
|
||||||
|
xinci:'心刺',
|
||||||
|
xinci_info:'出牌阶段限一次,你可以弃置一张黑色牌令一名角色流失一点体力',
|
||||||
|
zhongjia:'重甲',
|
||||||
|
zhongjia_info:'锁定技,每当你受到一次伤害,你获得一点护甲值;当你的体力值大于1时,你的护甲不为你抵挡伤害',
|
||||||
|
dunji:'盾击',
|
||||||
|
dunji_info:'出牌阶段限,你可以失去你的所有护甲,并对等量的其他角色各造成一点伤害',
|
||||||
|
qiaodong:'巧动',
|
||||||
|
qiaodong_info:'你可以将一张装备牌当作当使用或打出',
|
||||||
|
fengxian:'奉献',
|
||||||
|
fengxian_info:'出牌阶段限一次,你可以令场上所有角色各弃置一张手牌',
|
||||||
|
zhanhou:'战吼',
|
||||||
|
zhanhou_info:'锁定技,你没有装备区,你可以弃置一张装备牌并获得一点护甲值;每有一点护甲值,你与其他角色的距离-1',
|
||||||
|
anying:'暗影',
|
||||||
|
anying_info:'限定技,出牌阶段,你可以弃置两张黑色牌,失去技能圣光,并获得技能心刺',
|
||||||
|
shijie:'视界',
|
||||||
|
shijie_info:'回合结束阶段,你可以获得一名其他角色的一张手牌,然后该角色摸一张牌',
|
||||||
|
shengguang:'圣光',
|
||||||
|
shengguang_info:'出牌阶段限一次,你可以弃置一张红色牌令一名角色回复一点体力,若其仍处于受伤状态则摸一张牌',
|
||||||
|
bingjia:'冰甲',
|
||||||
|
bingjia2:'冰甲',
|
||||||
|
bingjia_info:'出牌阶段,若你武将牌上没有牌,你可以将一张黑色手牌背面朝上置于你的武将牌上,当你成为其他角色的与此牌点数相同的牌的目标时,你将此牌置于弃牌堆,并获得两点护甲值',
|
||||||
|
bianxing:'变形',
|
||||||
|
bianxing_info:'当一其他角色于回合内使用卡牌指定了惟一目标后,你可以用一张与之不同名的手牌替代此牌(使用者及目标必须合理),每名角色的回合限一次',
|
||||||
xianzhi:'先知',
|
xianzhi:'先知',
|
||||||
xianzhi_info:'任意一名角色进行判定前,你可以观看牌堆顶的两张牌,并可以将其调换顺序',
|
xianzhi_info:'任意一名角色进行判定前,你可以观看牌堆顶的两张牌,并可以将其调换顺序',
|
||||||
|
mdzhoufu:'诅咒',
|
||||||
|
mdzhoufu_info:'出牌阶段,你可以将一张黑色手牌置于一名其他角色的武将牌上,在其判定时以此牌作为判定结果;当受此技能影响的角色进行判定时,你摸一张牌',
|
||||||
moying:'魔影',
|
moying:'魔影',
|
||||||
moying_info:'回合结束阶段,若你本回合内没有造成伤害,可以指定一名角色进行判定,若为黑色,其流失一点体力,若为红色,其摸一张牌',
|
moying_info:'锁定技,回合开始阶段,若场上没有闪电,你将牌堆中的一张闪电置于你的判定区',
|
||||||
|
moying_old_info:'每当你造成或受到一次伤害,你可以令伤害目标或来源进行一次判定,若结果为黑色,其流失一点体力',
|
||||||
jingxiang:'镜像',
|
jingxiang:'镜像',
|
||||||
jingxiang_info:'每当你需要打出卡牌时,你可以观看一名随机角色的手牌并将其视为你的手牌打出',
|
jingxiang_info:'每当你需要打出卡牌时,你可以观看一名随机角色的手牌并将其视为你的手牌打出',
|
||||||
tuteng:'图腾',
|
tuteng:'图腾',
|
||||||
|
|
|
@ -589,6 +589,10 @@ character.mountain={
|
||||||
player.removeSkill('hunzi');
|
player.removeSkill('hunzi');
|
||||||
},
|
},
|
||||||
ai:{
|
ai:{
|
||||||
|
threaten:function(player,target){
|
||||||
|
if(target.hp==1) return 2;
|
||||||
|
return 0.5;
|
||||||
|
},
|
||||||
maixie:true,
|
maixie:true,
|
||||||
effect:{
|
effect:{
|
||||||
target:function(card,player,target){
|
target:function(card,player,target){
|
||||||
|
|
|
@ -119,6 +119,9 @@ character.sp={
|
||||||
chouhai:{
|
chouhai:{
|
||||||
trigger:{player:'damageBegin'},
|
trigger:{player:'damageBegin'},
|
||||||
forced:true,
|
forced:true,
|
||||||
|
check:function(){
|
||||||
|
return false;
|
||||||
|
},
|
||||||
filter:function(event,player){
|
filter:function(event,player){
|
||||||
return player.num('h')==0;
|
return player.num('h')==0;
|
||||||
},
|
},
|
||||||
|
@ -565,8 +568,12 @@ character.sp={
|
||||||
usable:1,
|
usable:1,
|
||||||
filterCard:true,
|
filterCard:true,
|
||||||
filterTarget:function(card,player,target){
|
filterTarget:function(card,player,target){
|
||||||
return player!=target;
|
return player!=target&&!target.skills.contains('zhoufu2');
|
||||||
},
|
},
|
||||||
|
prepare:function(cards,player){
|
||||||
|
player.$throw(cards);
|
||||||
|
},
|
||||||
|
discard:false,
|
||||||
content:function(){
|
content:function(){
|
||||||
target.$gain2(cards);
|
target.$gain2(cards);
|
||||||
target.storage.zhoufu2=cards[0];
|
target.storage.zhoufu2=cards[0];
|
||||||
|
@ -578,6 +585,7 @@ character.sp={
|
||||||
return 3-ai.get.value(card)
|
return 3-ai.get.value(card)
|
||||||
},
|
},
|
||||||
ai:{
|
ai:{
|
||||||
|
expose:0.1,
|
||||||
order:1,
|
order:1,
|
||||||
result:{
|
result:{
|
||||||
player:1
|
player:1
|
||||||
|
@ -596,6 +604,9 @@ character.sp={
|
||||||
if(player.storage.zhoufu3.isAlive()&&player.storage.zhoufu3.skills.contains('yingbin')){
|
if(player.storage.zhoufu3.isAlive()&&player.storage.zhoufu3.skills.contains('yingbin')){
|
||||||
player.storage.zhoufu3.draw(2);
|
player.storage.zhoufu3.draw(2);
|
||||||
}
|
}
|
||||||
|
else{
|
||||||
|
game.delay(1.5);
|
||||||
|
}
|
||||||
"step 1"
|
"step 1"
|
||||||
player.judging=player.storage.zhoufu2;
|
player.judging=player.storage.zhoufu2;
|
||||||
trigger.position.appendChild(player.storage.zhoufu2);
|
trigger.position.appendChild(player.storage.zhoufu2);
|
||||||
|
|
|
@ -607,6 +607,9 @@ character.standard={
|
||||||
},
|
},
|
||||||
position:'he',
|
position:'he',
|
||||||
viewAs:{name:'sha'},
|
viewAs:{name:'sha'},
|
||||||
|
viewAsFilter:function(player){
|
||||||
|
if(!player.num('h',{color:'red'})) return false;
|
||||||
|
},
|
||||||
prompt:'将一张红色牌当杀使用或打出',
|
prompt:'将一张红色牌当杀使用或打出',
|
||||||
check:function(card){return 4-ai.get.value(card)},
|
check:function(card){return 4-ai.get.value(card)},
|
||||||
ai:{
|
ai:{
|
||||||
|
@ -759,6 +762,9 @@ character.standard={
|
||||||
enable:['chooseToUse','chooseToRespond'],
|
enable:['chooseToUse','chooseToRespond'],
|
||||||
filterCard:{name:'shan'},
|
filterCard:{name:'shan'},
|
||||||
viewAs:{name:'sha'},
|
viewAs:{name:'sha'},
|
||||||
|
viewAsFilter:function(player){
|
||||||
|
if(!player.num('h','shan')) return false;
|
||||||
|
},
|
||||||
prompt:'将一张闪当杀使用或打出',
|
prompt:'将一张闪当杀使用或打出',
|
||||||
check:function(){return 1},
|
check:function(){return 1},
|
||||||
ai:{
|
ai:{
|
||||||
|
@ -768,6 +774,9 @@ character.standard={
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
respondSha:true,
|
respondSha:true,
|
||||||
|
skillTagFilter:function(player){
|
||||||
|
if(!player.num('h','shan')) return false;
|
||||||
|
},
|
||||||
order:4,
|
order:4,
|
||||||
useful:-1,
|
useful:-1,
|
||||||
value:-1
|
value:-1
|
||||||
|
@ -782,6 +791,9 @@ character.standard={
|
||||||
check:function(){return 1},
|
check:function(){return 1},
|
||||||
ai:{
|
ai:{
|
||||||
respondShan:true,
|
respondShan:true,
|
||||||
|
skillTagFilter:function(player){
|
||||||
|
if(!player.num('h','sha')) return false;
|
||||||
|
},
|
||||||
effect:{
|
effect:{
|
||||||
target:function(card,player,target,current){
|
target:function(card,player,target,current){
|
||||||
if(get.tag(card,'respondShan')&¤t<0) return 0.6
|
if(get.tag(card,'respondShan')&¤t<0) return 0.6
|
||||||
|
@ -887,6 +899,9 @@ character.standard={
|
||||||
},
|
},
|
||||||
position:'he',
|
position:'he',
|
||||||
viewAs:{name:'guohe'},
|
viewAs:{name:'guohe'},
|
||||||
|
viewAsFilter:function(player){
|
||||||
|
if(!player.num('h',{color:'black'})) return false;
|
||||||
|
},
|
||||||
prompt:'将一张黑色牌当过河拆桥使用',
|
prompt:'将一张黑色牌当过河拆桥使用',
|
||||||
check:function(card){return 4-ai.get.value(card)}
|
check:function(card){return 4-ai.get.value(card)}
|
||||||
},
|
},
|
||||||
|
@ -1209,7 +1224,7 @@ character.standard={
|
||||||
order:9,
|
order:9,
|
||||||
result:{
|
result:{
|
||||||
target:function(player,target){
|
target:function(player,target){
|
||||||
if(target.hp==5) return 5;
|
if(target.hp==1) return 5;
|
||||||
if(player==target&&player.num('h')>player.hp) return 5;
|
if(player==target&&player.num('h')>player.hp) return 5;
|
||||||
return 2;
|
return 2;
|
||||||
}
|
}
|
||||||
|
|
107
character/swd.js
107
character/swd.js
|
@ -897,43 +897,23 @@ character.swd={
|
||||||
},
|
},
|
||||||
fuyan:{
|
fuyan:{
|
||||||
trigger:{player:'damageEnd'},
|
trigger:{player:'damageEnd'},
|
||||||
frequent:true,
|
direct:true,
|
||||||
filter:function(event){
|
filter:function(event){
|
||||||
return event.num>0;
|
return event.num>0;
|
||||||
},
|
},
|
||||||
content:function(){
|
content:function(){
|
||||||
"step 0"
|
"step 0"
|
||||||
player.draw();
|
player.chooseTarget('是否发动【覆岩】?',function(card,player,target){
|
||||||
|
return !target.hujia;
|
||||||
|
}).ai=function(target){
|
||||||
|
var eff=-ai.get.damageEffect(target,target,player);
|
||||||
|
return eff+(player==target?2:0);
|
||||||
|
};
|
||||||
"step 1"
|
"step 1"
|
||||||
if(player.num('he')){
|
|
||||||
player.chooseCardTarget({
|
|
||||||
position:'he',
|
|
||||||
prompt:'选择一张牌作为“岩”',
|
|
||||||
ai1:function(card){
|
|
||||||
return 8-ai.get.value(card);
|
|
||||||
},
|
|
||||||
ai2:function(target){
|
|
||||||
var eff=-ai.get.damageEffect(target,target,player);
|
|
||||||
return eff+(player==target?2:0);
|
|
||||||
},
|
|
||||||
filterCard:true,
|
|
||||||
filterTarget:function(card,player,target){
|
|
||||||
return !target.skills.contains('fuyan2');
|
|
||||||
}
|
|
||||||
});
|
|
||||||
}
|
|
||||||
else{
|
|
||||||
event.finish();
|
|
||||||
}
|
|
||||||
"step 2"
|
|
||||||
if(result.bool){
|
if(result.bool){
|
||||||
player.line(result.targets);
|
player.logSkill('fuyan',result.targets);
|
||||||
player.lose(result.cards,ui.special);
|
|
||||||
var target=result.targets[0];
|
var target=result.targets[0];
|
||||||
target.storage.fuyan2=result.cards[0];
|
target.changeHujia();
|
||||||
target.addSkill('fuyan2');
|
|
||||||
player.$give(result.cards,target);
|
|
||||||
game.log(get.translation(player)+'将'+get.translation(result.cards)+'置于'+get.translation(target)+'的武将牌上');
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
ai:{
|
ai:{
|
||||||
|
@ -3212,6 +3192,9 @@ character.swd={
|
||||||
return get.suit(card)=='heart';
|
return get.suit(card)=='heart';
|
||||||
},
|
},
|
||||||
viewAs:{name:'liuxinghuoyu'},
|
viewAs:{name:'liuxinghuoyu'},
|
||||||
|
viewAsFilter:function(player){
|
||||||
|
if(!player.num('he',{suit:'heart'})) return false;
|
||||||
|
},
|
||||||
prompt:'将一张红桃手牌当作流星火羽使用',
|
prompt:'将一张红桃手牌当作流星火羽使用',
|
||||||
check:function(card){return 6-ai.get.value(card)},
|
check:function(card){return 6-ai.get.value(card)},
|
||||||
ai:{
|
ai:{
|
||||||
|
@ -3252,6 +3235,9 @@ character.swd={
|
||||||
return get.color(card)=='black';
|
return get.color(card)=='black';
|
||||||
},
|
},
|
||||||
viewAs:{name:'dujian'},
|
viewAs:{name:'dujian'},
|
||||||
|
viewAsFilter:function(player){
|
||||||
|
if(!player.num('h',{color:'black'})) return false;
|
||||||
|
},
|
||||||
prompt:'将一张黑色手牌当作毒箭使用',
|
prompt:'将一张黑色手牌当作毒箭使用',
|
||||||
check:function(card){return 5-ai.get.value(card)},
|
check:function(card){return 5-ai.get.value(card)},
|
||||||
ai:{
|
ai:{
|
||||||
|
@ -4236,13 +4222,9 @@ character.swd={
|
||||||
};
|
};
|
||||||
"step 1"
|
"step 1"
|
||||||
if(result.bool){
|
if(result.bool){
|
||||||
player.logSkill('daixing');
|
player.changeHujia(result.cards.length);
|
||||||
player.storage.daixing=result.cards.length;
|
player.storage.daixing=result.cards.length;
|
||||||
player.markSkill('daixing');
|
player.logSkill('daixing');
|
||||||
}
|
|
||||||
else{
|
|
||||||
player.storage.daixing=0;
|
|
||||||
player.unmarkSkill('daixing');
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
ai:{
|
ai:{
|
||||||
|
@ -4262,24 +4244,14 @@ character.swd={
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
daixing2:{
|
daixing2:{
|
||||||
trigger:{player:'damageBegin'},
|
trigger:{player:'phaseBegin'},
|
||||||
filter:function(event,player){
|
|
||||||
return player.storage.daixing>0;
|
|
||||||
},
|
|
||||||
priority:-20,
|
|
||||||
popup:false,
|
|
||||||
forced:true,
|
forced:true,
|
||||||
|
popup:false,
|
||||||
content:function(){
|
content:function(){
|
||||||
if(trigger.num>=player.storage.daixing){
|
if(player.storage.daixing){
|
||||||
trigger.num-=player.storage.daixing;
|
player.changeHujia(-player.storage.daixing);
|
||||||
player.storage.daixing=0;
|
player.storage.daixing=0;
|
||||||
player.unmarkSkill('daixing');
|
|
||||||
}
|
}
|
||||||
else{
|
|
||||||
player.storage.daixing-=trigger.num;
|
|
||||||
trigger.num=0;
|
|
||||||
}
|
|
||||||
player.popup('daixing');
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
swd_wuxie:{
|
swd_wuxie:{
|
||||||
|
@ -7328,34 +7300,12 @@ character.swd={
|
||||||
trigger:{source:'damageEnd'},
|
trigger:{source:'damageEnd'},
|
||||||
forced:true,
|
forced:true,
|
||||||
filter:function(event,player){
|
filter:function(event,player){
|
||||||
return !player.storage.hudun;
|
return !player.hujia&&event.player!=player;
|
||||||
},
|
},
|
||||||
content:function(){
|
content:function(){
|
||||||
player.storage.hudun=true;
|
player.changeHujia();
|
||||||
player.markSkill('hudun');
|
player.update();
|
||||||
},
|
},
|
||||||
init:function(player){
|
|
||||||
player.storage.hudun=false;
|
|
||||||
},
|
|
||||||
intro:{
|
|
||||||
content:function(st){
|
|
||||||
if(st) return '已开启';
|
|
||||||
return '未开启';
|
|
||||||
}
|
|
||||||
},
|
|
||||||
group:'hudun2'
|
|
||||||
},
|
|
||||||
hudun2:{
|
|
||||||
trigger:{player:'damageBegin'},
|
|
||||||
forced:true,
|
|
||||||
filter:function(event,player){
|
|
||||||
return event.num>0&&player.storage.hudun;
|
|
||||||
},
|
|
||||||
content:function(){
|
|
||||||
trigger.num--;
|
|
||||||
player.storage.hudun=false;
|
|
||||||
player.unmarkSkill('hudun');
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
toudan:{
|
toudan:{
|
||||||
enable:'phaseUse',
|
enable:'phaseUse',
|
||||||
|
@ -7383,6 +7333,7 @@ character.swd={
|
||||||
}
|
}
|
||||||
lib.tempSortSeat=event.target;
|
lib.tempSortSeat=event.target;
|
||||||
event.targets.sort(lib.sort.seat);
|
event.targets.sort(lib.sort.seat);
|
||||||
|
event.targets.unshift(player);
|
||||||
delete lib.tempSortSeat;
|
delete lib.tempSortSeat;
|
||||||
"step 1"
|
"step 1"
|
||||||
if(event.targets.length){
|
if(event.targets.length){
|
||||||
|
@ -7613,7 +7564,7 @@ character.swd={
|
||||||
huiqi:'回气',
|
huiqi:'回气',
|
||||||
huiqi_info:'每当你受到一次伤害,可令一名角色摸X张牌,X为你已损失的体力值',
|
huiqi_info:'每当你受到一次伤害,可令一名角色摸X张牌,X为你已损失的体力值',
|
||||||
toudan:'投弹',
|
toudan:'投弹',
|
||||||
toudan_info:'出牌阶段限一次,你可以弃置一张黑桃牌对一名其他角色造成一点火焰伤害,然后令距离该角色1以内的所有角色弃置一张牌',
|
toudan_info:'出牌阶段限一次,你可以弃置一张黑桃牌对一名其他角色造成一点火焰伤害,然后你与距离该角色1以内的所有角色各弃置一张牌',
|
||||||
shending:'神丁',
|
shending:'神丁',
|
||||||
shending_info:'锁定技,若你没有宝物牌,视为装备了蓝格怪衣',
|
shending_info:'锁定技,若你没有宝物牌,视为装备了蓝格怪衣',
|
||||||
hzhenwei:'镇卫',
|
hzhenwei:'镇卫',
|
||||||
|
@ -7623,7 +7574,7 @@ character.swd={
|
||||||
hudun:'护盾',
|
hudun:'护盾',
|
||||||
hudun_bg:'盾',
|
hudun_bg:'盾',
|
||||||
hudun2:'护盾',
|
hudun2:'护盾',
|
||||||
hudun_info:'锁定技,当你造成一次伤害后,受到的下一次伤害-1',
|
hudun_info:'锁定技,当你对其他角色造成伤害后,若你没有护甲,你获得一点护甲值',
|
||||||
mazui:'麻醉',
|
mazui:'麻醉',
|
||||||
mazui2:'麻醉',
|
mazui2:'麻醉',
|
||||||
mazui_info:'出牌阶段限一次,你可以将一张黑色手牌置于一名角色的武将牌上,该角色造成的下一次伤害-1,然后获得此牌',
|
mazui_info:'出牌阶段限一次,你可以将一张黑色手牌置于一名角色的武将牌上,该角色造成的下一次伤害-1,然后获得此牌',
|
||||||
|
@ -7640,7 +7591,7 @@ character.swd={
|
||||||
zhenwei_info:'你可以将攻击范围内其他角色打出的卡牌交给除该角色外的任意一名角色',
|
zhenwei_info:'你可以将攻击范围内其他角色打出的卡牌交给除该角色外的任意一名角色',
|
||||||
fuyan:'覆岩',
|
fuyan:'覆岩',
|
||||||
fuyan2:'覆岩',
|
fuyan2:'覆岩',
|
||||||
fuyan_info:'每当你受到一次伤害,可以摸一张牌,并将一张牌置于一名角色的武将牌上称为“岩”;当其受到伤害时,须将“岩”置于弃牌堆,然后令伤害-1',
|
fuyan_info:'每当你受到一次伤害,可以令一名没有护甲的角色获得一点护甲值',
|
||||||
guaili:'怪力',
|
guaili:'怪力',
|
||||||
guaili_info:'锁定技,你的杀造成的伤害+1,造成伤害后需弃置一张牌',
|
guaili_info:'锁定技,你的杀造成的伤害+1,造成伤害后需弃置一张牌',
|
||||||
pingshen:'凭神',
|
pingshen:'凭神',
|
||||||
|
@ -7942,7 +7893,7 @@ character.swd={
|
||||||
yuhuo_info:'限定技,濒死阶段,你可以重置角色牌,减少一点体力上限,然后将体力回复至体力上限',
|
yuhuo_info:'限定技,濒死阶段,你可以重置角色牌,减少一点体力上限,然后将体力回复至体力上限',
|
||||||
yishan_info:'每当你受到一次伤害,你可以重新获得最近失去的两张牌',
|
yishan_info:'每当你受到一次伤害,你可以重新获得最近失去的两张牌',
|
||||||
huanhun_info:'当一名角色进入濒死状态时,你可以弃置一张红色牌并令其进行一次判定,若结果为红色,其回复一点体力',
|
huanhun_info:'当一名角色进入濒死状态时,你可以弃置一张红色牌并令其进行一次判定,若结果为红色,其回复一点体力',
|
||||||
daixing_info:'回合结束阶段,你可以弃置至多X张牌,并抵挡等量伤害,效果在下一个回合结束阶段失效,X为现存角色数-1',
|
daixing_info:'回合结束阶段,你可以任意张牌并获得等量的护甲,这些护甲将在你的下个回合开始阶段消失',
|
||||||
swd_wuxie_info:'锁定技,你不能成为其他角色的延时锦囊的目标',
|
swd_wuxie_info:'锁定技,你不能成为其他角色的延时锦囊的目标',
|
||||||
qingcheng_info:'回合开始阶段,你可以进行判定,若为红色则可以继续判定,判定结束后将判定成功的牌收入手牌',
|
qingcheng_info:'回合开始阶段,你可以进行判定,若为红色则可以继续判定,判定结束后将判定成功的牌收入手牌',
|
||||||
xianjiang_info:'出牌阶段,你可以将一张装备牌永久转化为任意一张其它装备牌,一张牌在一个阶段只能转化一次',
|
xianjiang_info:'出牌阶段,你可以将一张装备牌永久转化为任意一张其它装备牌,一张牌在一个阶段只能转化一次',
|
||||||
|
|
|
@ -526,8 +526,7 @@ character.xianjian={
|
||||||
}
|
}
|
||||||
return false;
|
return false;
|
||||||
},
|
},
|
||||||
frequent:true,
|
direct:true,
|
||||||
popup:false,
|
|
||||||
content:function(){
|
content:function(){
|
||||||
"step 0"
|
"step 0"
|
||||||
if(trigger.delay==false) game.delay();
|
if(trigger.delay==false) game.delay();
|
||||||
|
@ -539,9 +538,16 @@ character.xianjian={
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if(cards.length){
|
if(cards.length){
|
||||||
|
player.chooseCardButton('聚宝:获得其中的一张非基本牌牌',cards);
|
||||||
|
|
||||||
|
}
|
||||||
|
"step 2"
|
||||||
|
if(result.bool){
|
||||||
|
var cards=result.links;
|
||||||
|
player.logSkill('jubao');
|
||||||
player.gain(cards);
|
player.gain(cards);
|
||||||
player.$gain2(cards);
|
player.$gain2(cards);
|
||||||
game.log(get.translation(player)+'发动聚宝,获得了'+get.translation(cards));
|
game.log(get.translation(player)+'获得了'+get.translation(cards));
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
ai:{
|
ai:{
|
||||||
|
@ -1169,6 +1175,9 @@ character.xianjian={
|
||||||
},
|
},
|
||||||
position:'he',
|
position:'he',
|
||||||
viewAs:{name:'shunshou'},
|
viewAs:{name:'shunshou'},
|
||||||
|
viewAsFilter:function(player){
|
||||||
|
if(!player.num('he',{suit:'club'})) return false;
|
||||||
|
},
|
||||||
prompt:'将一张装备牌当顺手牵羊使用',
|
prompt:'将一张装备牌当顺手牵羊使用',
|
||||||
check:function(card){
|
check:function(card){
|
||||||
var player=_status.currentPhase;
|
var player=_status.currentPhase;
|
||||||
|
@ -1360,7 +1369,7 @@ character.xianjian={
|
||||||
sajin:'洒金',
|
sajin:'洒金',
|
||||||
sajin_info:'出牌阶段,你可以弃置一张手牌并指定任意名角色进行判定,若判定花色与你弃置的牌相同,该角色回复一点体力',
|
sajin_info:'出牌阶段,你可以弃置一张手牌并指定任意名角色进行判定,若判定花色与你弃置的牌相同,该角色回复一点体力',
|
||||||
jubao:'聚宝',
|
jubao:'聚宝',
|
||||||
jubao_info:'回合外,你可以将其他角色弃置的非基本牌收入手牌',
|
jubao_info:'当其他角色于你的回合外弃置非基本牌时,你可以获得其中的一张',
|
||||||
guiyuan:'归元',
|
guiyuan:'归元',
|
||||||
guiyuan_info:'出牌阶段限一次,你可以弃置一张杀并回复一点体力',
|
guiyuan_info:'出牌阶段限一次,你可以弃置一张杀并回复一点体力',
|
||||||
shuangren:'双刃',
|
shuangren:'双刃',
|
||||||
|
|
|
@ -13,7 +13,7 @@ window.config={
|
||||||
all:{
|
all:{
|
||||||
mode:['identity','guozhan','versus','boss','chess','stone'],
|
mode:['identity','guozhan','versus','boss','chess','stone'],
|
||||||
layout:['default','newlayout'],
|
layout:['default','newlayout'],
|
||||||
theme:['woodden','music'],
|
theme:['woodden','music','simple'],
|
||||||
card_font:['xiaozhuan','huangcao','caoshu','xingshu'],
|
card_font:['xiaozhuan','huangcao','caoshu','xingshu'],
|
||||||
double_hp:['hejiansan','pingjun','zuidazhi','zuixiaozhi','zonghe'],
|
double_hp:['hejiansan','pingjun','zuidazhi','zuixiaozhi','zonghe'],
|
||||||
|
|
||||||
|
@ -70,6 +70,7 @@ window.config={
|
||||||
white:'白色',
|
white:'白色',
|
||||||
woodden:'木纹',
|
woodden:'木纹',
|
||||||
music:'音乐',
|
music:'音乐',
|
||||||
|
simple:'简约',
|
||||||
newlayout:'新版',
|
newlayout:'新版',
|
||||||
jeans:'牛仔',
|
jeans:'牛仔',
|
||||||
metro:'极简',
|
metro:'极简',
|
||||||
|
|
93
game/game.js
93
game/game.js
|
@ -291,6 +291,8 @@
|
||||||
diamond:"♦︎",
|
diamond:"♦︎",
|
||||||
spade:"♠︎",
|
spade:"♠︎",
|
||||||
club:"♣︎",
|
club:"♣︎",
|
||||||
|
ghujia:'护甲',
|
||||||
|
ghujia_bg:'甲',
|
||||||
heart2:"红桃",
|
heart2:"红桃",
|
||||||
diamond2:"方片",
|
diamond2:"方片",
|
||||||
spade2:"黑桃",
|
spade2:"黑桃",
|
||||||
|
@ -1108,7 +1110,10 @@
|
||||||
event.finish();
|
event.finish();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
event.dialog=ui.create.dialog(get.translation(player.name)+'展示的牌',cards);
|
if(!event.str){
|
||||||
|
event.str=get.translation(player.name)+'展示的牌';
|
||||||
|
}
|
||||||
|
event.dialog=ui.create.dialog(event.str,cards);
|
||||||
var str=get.translation(player)+'展示了'+get.translation(cards[0]);
|
var str=get.translation(player)+'展示了'+get.translation(cards[0]);
|
||||||
for(var i=1;i<cards.length;i++){
|
for(var i=1;i<cards.length;i++){
|
||||||
str+='、'+get.translation(cards[i]);
|
str+='、'+get.translation(cards[i]);
|
||||||
|
@ -1643,6 +1648,21 @@
|
||||||
},
|
},
|
||||||
damage:function(){
|
damage:function(){
|
||||||
"step 0"
|
"step 0"
|
||||||
|
if(num>0&&player.hujia&&!player.hasSkillTag('nohujia')){
|
||||||
|
if(num>=player.hujia){
|
||||||
|
num-=player.hujia;
|
||||||
|
game.log(get.translation(player)+'的护甲抵挡了'+get.cnNumber(player.hujia)+'点伤害');
|
||||||
|
player.hujia=0;
|
||||||
|
}
|
||||||
|
else{
|
||||||
|
player.hujia-=num;
|
||||||
|
game.log(get.translation(player)+'的护甲抵挡了'+get.cnNumber(num)+'点伤害');
|
||||||
|
num=0;
|
||||||
|
}
|
||||||
|
event.hujia=true;
|
||||||
|
player.update();
|
||||||
|
}
|
||||||
|
event.num=num;
|
||||||
if(lib.config.background_audio){
|
if(lib.config.background_audio){
|
||||||
game.playAudio('effect','damage'+(num>1?'2':''));
|
game.playAudio('effect','damage'+(num>1?'2':''));
|
||||||
}
|
}
|
||||||
|
@ -1667,25 +1687,30 @@
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
player.changeHp(-num,false);
|
player.changeHp(-num,false);
|
||||||
if(player._damagetimeout!=source){
|
if(source){
|
||||||
player.$damage(source);
|
if(player._damagetimeout!=source){
|
||||||
player._damagetimeout=source;
|
player.$damage(source);
|
||||||
setTimeout(function(){
|
player._damagetimeout=source;
|
||||||
delete player._damagetimeout;
|
setTimeout(function(){
|
||||||
},500);
|
delete player._damagetimeout;
|
||||||
}
|
},500);
|
||||||
if(player._damagepopup){
|
}
|
||||||
player._damagepopup-=num;
|
if(player._damagepopup){
|
||||||
player._damagenature=event.nature;
|
player._damagepopup-=num;
|
||||||
|
player._damagenature=event.nature;
|
||||||
|
}
|
||||||
|
else{
|
||||||
|
player._damagepopup=-num;
|
||||||
|
player._damagenature=event.nature;
|
||||||
|
setTimeout(function(){
|
||||||
|
player.popup(player._damagepopup,player._damagenature);
|
||||||
|
delete player._damagepopup;
|
||||||
|
delete player._damagenature;
|
||||||
|
},300);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
else{
|
else{
|
||||||
player._damagepopup=-num;
|
player.$damage();
|
||||||
player._damagenature=event.nature;
|
|
||||||
setTimeout(function(){
|
|
||||||
player.popup(player._damagepopup,player._damagenature);
|
|
||||||
delete player._damagepopup;
|
|
||||||
delete player._damagenature;
|
|
||||||
},300);
|
|
||||||
}
|
}
|
||||||
event.trigger('damage');
|
event.trigger('damage');
|
||||||
"step 1"
|
"step 1"
|
||||||
|
@ -2031,6 +2056,7 @@
|
||||||
this.group=info[1];
|
this.group=info[1];
|
||||||
this.hp=info[2];
|
this.hp=info[2];
|
||||||
this.maxHp=info[2];
|
this.maxHp=info[2];
|
||||||
|
this.hujia=0;
|
||||||
this.node.intro.innerHTML=lib.config.intro;
|
this.node.intro.innerHTML=lib.config.intro;
|
||||||
if(lib.config.touchscreen){
|
if(lib.config.touchscreen){
|
||||||
lib.setLongPress(this,ui.click.intro);
|
lib.setLongPress(this,ui.click.intro);
|
||||||
|
@ -2111,6 +2137,7 @@
|
||||||
delete this.group;
|
delete this.group;
|
||||||
delete this.hp;
|
delete this.hp;
|
||||||
delete this.maxHp;
|
delete this.maxHp;
|
||||||
|
delete this.hujia;
|
||||||
this.skills.length=0;
|
this.skills.length=0;
|
||||||
this.node.identity.style.backgroundColor='';
|
this.node.identity.style.backgroundColor='';
|
||||||
this.node.intro.innerHTML='';
|
this.node.intro.innerHTML='';
|
||||||
|
@ -2146,6 +2173,12 @@
|
||||||
if(this.hp>=this.maxHp) this.hp=this.maxHp;
|
if(this.hp>=this.maxHp) this.hp=this.maxHp;
|
||||||
var hp=this.node.hp;
|
var hp=this.node.hp;
|
||||||
hp.style.transition='none';
|
hp.style.transition='none';
|
||||||
|
if(this.hujia){
|
||||||
|
this.markSkill('ghujia');
|
||||||
|
}
|
||||||
|
else{
|
||||||
|
this.unmarkSkill('ghujia');
|
||||||
|
}
|
||||||
if(lib.config.layout=='default'&&this.maxHp>14){
|
if(lib.config.layout=='default'&&this.maxHp>14){
|
||||||
hp.innerHTML=this.hp+'/'+this.maxHp;
|
hp.innerHTML=this.hp+'/'+this.maxHp;
|
||||||
hp.classList.add('text');
|
hp.classList.add('text');
|
||||||
|
@ -2459,6 +2492,19 @@
|
||||||
return cards;
|
return cards;
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
changeHujia:function(num){
|
||||||
|
if(typeof num!='number'){
|
||||||
|
num=1;
|
||||||
|
}
|
||||||
|
this.hujia+=num;
|
||||||
|
if(num>0){
|
||||||
|
game.log(get.translation(this)+'获得了'+get.cnNumber(num)+'点护甲值');
|
||||||
|
}
|
||||||
|
if(this.hujia<0){
|
||||||
|
this.hujia=0;
|
||||||
|
}
|
||||||
|
this.update();
|
||||||
|
},
|
||||||
setIdentity:function(identity){
|
setIdentity:function(identity){
|
||||||
if(!identity) identity=this.identity;
|
if(!identity) identity=this.identity;
|
||||||
this.node.identity.firstChild.innerHTML=get.translation(identity);
|
this.node.identity.firstChild.innerHTML=get.translation(identity);
|
||||||
|
@ -2985,9 +3031,10 @@
|
||||||
next.player=this;
|
next.player=this;
|
||||||
next.content=lib.element.playerproto.showHandcards;
|
next.content=lib.element.playerproto.showHandcards;
|
||||||
},
|
},
|
||||||
showCards:function(cards){
|
showCards:function(cards,str){
|
||||||
var next=game.createEvent('showCards');
|
var next=game.createEvent('showCards');
|
||||||
next.player=this;
|
next.player=this;
|
||||||
|
next.str=str;
|
||||||
if(get.itemtype(cards)=='card') next.cards=[cards];
|
if(get.itemtype(cards)=='card') next.cards=[cards];
|
||||||
else if(get.itemtype(cards)=='cards') next.cards=cards;
|
else if(get.itemtype(cards)=='cards') next.cards=cards;
|
||||||
else _status.event.next.remove(next);
|
else _status.event.next.remove(next);
|
||||||
|
@ -4871,6 +4918,13 @@
|
||||||
name:'混乱'
|
name:'混乱'
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
ghujia:{
|
||||||
|
intro:{
|
||||||
|
content:function(content,player){
|
||||||
|
return '已有'+get.cnNumber(player.hujia)+'点护甲值';
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
_recoverCheck:{
|
_recoverCheck:{
|
||||||
trigger:{player:'recoverBefore'},
|
trigger:{player:'recoverBefore'},
|
||||||
forced:true,
|
forced:true,
|
||||||
|
@ -5823,6 +5877,7 @@
|
||||||
if(enable){
|
if(enable){
|
||||||
if(info.filter&&info.filter(event,player)==false) enable=false;
|
if(info.filter&&info.filter(event,player)==false) enable=false;
|
||||||
if(info.viewAs&&event.filterCard&&!event.filterCard(info.viewAs,player)) enable=false;
|
if(info.viewAs&&event.filterCard&&!event.filterCard(info.viewAs,player)) enable=false;
|
||||||
|
if(info.viewAs&&info.viewAsFilter&&info.viewAsFilter(player)==false) enable=false;
|
||||||
if(event.aiexclude.contains(skills2[i])) enable=false;
|
if(event.aiexclude.contains(skills2[i])) enable=false;
|
||||||
if(info.usable&&get.skillCount(skills2[i])>=info.usable) enable=false;
|
if(info.usable&&get.skillCount(skills2[i])>=info.usable) enable=false;
|
||||||
}
|
}
|
||||||
|
|
Binary file not shown.
Before Width: | Height: | Size: 53 KiB After Width: | Height: | Size: 66 KiB |
|
@ -465,6 +465,7 @@ div:hover>.intro{opacity: 1;}
|
||||||
}
|
}
|
||||||
.dialog.scroll1>.bar.top{opacity:1}
|
.dialog.scroll1>.bar.top{opacity:1}
|
||||||
.dialog.scroll2>.bar.bottom{opacity:1}
|
.dialog.scroll2>.bar.bottom{opacity:1}
|
||||||
|
.dialog.slim{top:300px;bottom:auto;min-height: none}
|
||||||
/*.dialog.scroll1{box-shadow:0 -10px 10px -9px rgba(0,0,0,0.1),0 -10px 0 -9px rgba(0,0,0,0.05);}
|
/*.dialog.scroll1{box-shadow:0 -10px 10px -9px rgba(0,0,0,0.1),0 -10px 0 -9px rgba(0,0,0,0.05);}
|
||||||
.dialog.scroll2{box-shadow:0 10px 10px -9px rgba(0,0,0,0.1),0 10px 0 -9px rgba(0,0,0,0.05)}
|
.dialog.scroll2{box-shadow:0 10px 10px -9px rgba(0,0,0,0.1),0 10px 0 -9px rgba(0,0,0,0.05)}
|
||||||
.dialog.scroll1.scroll2{box-shadow:0 -10px 10px -9px rgba(0,0,0,0.1),0 -10px 0 -9px rgba(0,0,0,0.05),
|
.dialog.scroll1.scroll2{box-shadow:0 -10px 10px -9px rgba(0,0,0,0.1),0 -10px 0 -9px rgba(0,0,0,0.05),
|
||||||
|
|
|
@ -49,7 +49,7 @@
|
||||||
}
|
}
|
||||||
.player.fullskin2 .avatar,
|
.player.fullskin2 .avatar,
|
||||||
.player.fullskin2 .avatar2{
|
.player.fullskin2 .avatar2{
|
||||||
width:64px;
|
width:63px;
|
||||||
background-position:50%;
|
background-position:50%;
|
||||||
}
|
}
|
||||||
.player.fullskin2 .avatar{
|
.player.fullskin2 .avatar{
|
||||||
|
@ -439,7 +439,8 @@
|
||||||
}
|
}
|
||||||
.popup{z-index:6}
|
.popup{z-index:6}
|
||||||
.dialog.scroll1,
|
.dialog.scroll1,
|
||||||
.dialog.scroll2{
|
.dialog.scroll2,
|
||||||
|
.dialog.withbg{
|
||||||
background: rgba(0,0,0,0.2);
|
background: rgba(0,0,0,0.2);
|
||||||
box-shadow: rgba(0, 0, 0, 0.3) 0 0 0 1px;
|
box-shadow: rgba(0, 0, 0, 0.3) 0 0 0 1px;
|
||||||
border-radius:8px;
|
border-radius:8px;
|
||||||
|
|
|
@ -1341,7 +1341,7 @@ mode.chess={
|
||||||
},
|
},
|
||||||
content:function(){
|
content:function(){
|
||||||
"step 0"
|
"step 0"
|
||||||
player.chooseToMove(1,'是否发动【翩仪】?');
|
player.chooseToMove(2,'是否发动【翩仪】?');
|
||||||
"step 1"
|
"step 1"
|
||||||
if(result.bool){
|
if(result.bool){
|
||||||
player.logSkill('pianyi');
|
player.logSkill('pianyi');
|
||||||
|
@ -1763,7 +1763,7 @@ mode.chess={
|
||||||
// chess_lusu:['male','wu',3,['']],
|
// chess_lusu:['male','wu',3,['']],
|
||||||
// chess_luxun:['male','wu',3,['']],
|
// chess_luxun:['male','wu',3,['']],
|
||||||
// chess_ganning:['male','wu',3,['']],
|
// chess_ganning:['male','wu',3,['']],
|
||||||
chess_taishici:['male','wu',4,['guanchuan','pojun']],
|
chess_taishici:['male','wu',4,['gongji','guanchuan','pojun']],
|
||||||
//
|
//
|
||||||
// chess_lvbu:['male','qun',3,['']],
|
// chess_lvbu:['male','qun',3,['']],
|
||||||
chess_sunshangxiang:['female','wu',3,['lingdong','lianshe','gongji']],
|
chess_sunshangxiang:['female','wu',3,['lingdong','lianshe','gongji']],
|
||||||
|
|
Binary file not shown.
|
@ -22,7 +22,7 @@ html{
|
||||||
.card{
|
.card{
|
||||||
color:white;
|
color:white;
|
||||||
}
|
}
|
||||||
.card.fullskin,#arena>.card:not(*:empty){
|
.card:not(*:empty){
|
||||||
color:rgb(77, 60, 51);
|
color:rgb(77, 60, 51);
|
||||||
text-shadow:none;
|
text-shadow:none;
|
||||||
background: url('wood3.png');
|
background: url('wood3.png');
|
||||||
|
|
Binary file not shown.
After Width: | Height: | Size: 30 KiB |
Binary file not shown.
After Width: | Height: | Size: 250 B |
|
@ -0,0 +1,42 @@
|
||||||
|
html{
|
||||||
|
color: white;
|
||||||
|
text-shadow: black 0 0 2px;
|
||||||
|
background: url('../../image/background/huangtian_bg.jpg');
|
||||||
|
}
|
||||||
|
#system>div>div,#mebg,.control,.player,.card,.avatar,.avatar2,.button,#window>.dialog.popped,
|
||||||
|
.player.unseen .equips:not(*:empty){
|
||||||
|
box-shadow: rgba(0, 0, 0, 0.4) 0 0 0 1px, rgba(0, 0, 0, 0.2) 0 3px 10px;
|
||||||
|
background-image: linear-gradient(rgba(0,0,0,0.4), rgba(0,0,0,0.4));
|
||||||
|
border-radius: 8px;
|
||||||
|
}
|
||||||
|
#window>.dialog.popped{
|
||||||
|
border-radius: 6px;
|
||||||
|
}
|
||||||
|
.control,#system>div>div,.judges>div,.marks>div,
|
||||||
|
.player.unseen .equips:not(*:empty){
|
||||||
|
border-radius:4px;
|
||||||
|
}
|
||||||
|
.card{
|
||||||
|
color:white;
|
||||||
|
}
|
||||||
|
.card:not(*:empty){
|
||||||
|
color:rgb(77, 60, 51);
|
||||||
|
text-shadow:none;
|
||||||
|
background: url('card.png');
|
||||||
|
background-size:cover;
|
||||||
|
}
|
||||||
|
#me>div>.card,#arena>.card:not(*:empty){
|
||||||
|
box-shadow: rgba(0, 0, 0, 0.2) 0 0 0 1px, rgba(0, 0, 0, 0.45) 0 3px 10px;
|
||||||
|
}
|
||||||
|
.fire{
|
||||||
|
color: rgb(255,119,63);
|
||||||
|
}
|
||||||
|
.thunder{
|
||||||
|
color: rgb(117,186,255);
|
||||||
|
}
|
||||||
|
.poison{
|
||||||
|
color: rgb(104,221,127);
|
||||||
|
}
|
||||||
|
.brown{
|
||||||
|
color: rgb(195,161,223);
|
||||||
|
}
|
Binary file not shown.
After Width: | Height: | Size: 2.7 KiB |
Binary file not shown.
After Width: | Height: | Size: 3.9 KiB |
Loading…
Reference in New Issue