This commit is contained in:
libccy 2017-01-23 13:31:32 +08:00
parent 336d30f6c8
commit e92c57de32
13 changed files with 170 additions and 43 deletions

View File

@ -1086,10 +1086,10 @@ card.swd={
derivation:true, derivation:true,
derivationpack:'swd', derivationpack:'swd',
filterTarget:function(card,player,target){ filterTarget:function(card,player,target){
return player!=target&&!target.hasSkill('hslingjian_yinshen'); return player!=target&&!target.hasSkill('qianxing');
}, },
content:function(){ content:function(){
target.addTempSkill('hslingjian_yinshen',{player:'phaseBegin'}); target.addTempSkill('qianxing',{player:'phaseBegin'});
}, },
ai:{ ai:{
order:2, order:2,
@ -3198,7 +3198,7 @@ card.swd={
content:function(){ content:function(){
'step 0' 'step 0'
player.chooseTarget(get.prompt('hslingjian_yinmilichang_duanzao'),function(card,player,target){ player.chooseTarget(get.prompt('hslingjian_yinmilichang_duanzao'),function(card,player,target){
return target!=player&&!target.hasSkill('hslingjian_yinshen'); return target!=player&&!target.hasSkill('qianxing');
}).ai=function(target){ }).ai=function(target){
var att=ai.get.attitude(player,target); var att=ai.get.attitude(player,target);
if(get.distance(player,target,'absolute')<=1) return 0; if(get.distance(player,target,'absolute')<=1) return 0;
@ -3209,7 +3209,7 @@ card.swd={
'step 1' 'step 1'
if(result.bool){ if(result.bool){
player.logSkill('hslingjian_yinmilichang_equip1',result.targets); player.logSkill('hslingjian_yinmilichang_equip1',result.targets);
result.targets[0].addTempSkill('hslingjian_yinshen',{player:'phaseBegin'}); result.targets[0].addTempSkill('qianxing',{player:'phaseBegin'});
} }
} }
}, },
@ -3217,10 +3217,10 @@ card.swd={
trigger:{player:'damageEnd'}, trigger:{player:'damageEnd'},
forced:true, forced:true,
filter:function(event,player){ filter:function(event,player){
return !player.hasSkill('hslingjian_yinshen'); return !player.hasSkill('qianxing');
}, },
content:function(){ content:function(){
player.addTempSkill('hslingjian_yinshen','phaseAfter'); player.addTempSkill('qianxing','phaseAfter');
} }
}, },
hslingjian_yinmilichang_equip3:{ hslingjian_yinmilichang_equip3:{
@ -3680,18 +3680,6 @@ card.swd={
} }
} }
}, },
hslingjian_yinshen:{
mark:true,
nopop:true,
intro:{
content:'锁定技,你不能成为其他角色的卡牌的目标'
},
mod:{
targetEnabled:function(card,player,target){
if(player!=target) return false;
}
}
},
hslingjian_chaofeng:{ hslingjian_chaofeng:{
global:'hslingjian_chaofeng_disable', global:'hslingjian_chaofeng_disable',
nopop:true, nopop:true,
@ -4450,8 +4438,6 @@ card.swd={
hslingjian_shijianhuisu_info:'可用于煅造装备;令一名其他角色将其装备牌收回手牌', hslingjian_shijianhuisu_info:'可用于煅造装备;令一名其他角色将其装备牌收回手牌',
hslingjian_chaofeng:'嘲讽', hslingjian_chaofeng:'嘲讽',
hslingjian_chaofeng_info:'锁定技,若你的手牌数大于你的体力值,则只要你在任一其他角色的攻击范围内,该角色使用【杀】时便不能指定你以外的角色为目标', hslingjian_chaofeng_info:'锁定技,若你的手牌数大于你的体力值,则只要你在任一其他角色的攻击范围内,该角色使用【杀】时便不能指定你以外的角色为目标',
hslingjian_yinshen:'潜行',
hslingjian_yinshen_info:'锁定技,你不能成为其他角色的卡牌的目标',
qinglonglingzhu:'青龙灵珠', qinglonglingzhu:'青龙灵珠',
qinglonglingzhu_ab:'灵珠', qinglonglingzhu_ab:'灵珠',
qinglonglingzhu_info:'每当你造成一次属性伤害,你可以获得对方的一张牌', qinglonglingzhu_info:'每当你造成一次属性伤害,你可以获得对方的一张牌',

View File

@ -1,4 +0,0 @@
'use strict';
character.classic={
}

View File

@ -147,7 +147,7 @@ character.gujian={
group:['yunyin_count','yunyin_set'], group:['yunyin_count','yunyin_set'],
content:function(){ content:function(){
'step 0' 'step 0'
player.chooseToDiscard('he',get.prompt('yunyin'),function(card){ player.chooseToDiscard(get.prompt('yunyin'),function(card){
if(!player.storage.yunyin) return true; if(!player.storage.yunyin) return true;
return !player.storage.yunyin.contains(get.suit(card)); return !player.storage.yunyin.contains(get.suit(card));
}).set('logSkill','yunyin').ai=function(card){ }).set('logSkill','yunyin').ai=function(card){

View File

@ -4841,10 +4841,10 @@ character.hearth={
enable:true, enable:true,
derivation:'hs_xialikeer', derivation:'hs_xialikeer',
filterTarget:function(card,player,target){ filterTarget:function(card,player,target){
return !target.hasSkill('hslingjian_yinshen'); return !target.hasSkill('qianxing');
}, },
content:function(){ content:function(){
target.addTempSkill('hslingjian_yinshen',{player:'phaseBegin'}); target.addTempSkill('qianxing',{player:'phaseBegin'});
}, },
ai:{ ai:{
order:2, order:2,

View File

@ -225,6 +225,7 @@ window.characterRank={
'yxs_nandinggeer', 'yxs_nandinggeer',
'hs_kazhakusi', 'hs_kazhakusi',
'swd_yeyaxi', 'swd_yeyaxi',
'dianwei',
], ],
bp:[ bp:[
'pal_leiyuange', 'pal_leiyuange',
@ -393,7 +394,6 @@ window.characterRank={
'hs_huzhixiannv', 'hs_huzhixiannv',
'jg_simayi', 'jg_simayi',
'jg_zhugeliang', 'jg_zhugeliang',
'diy_dianwei',
'sp_sunshangxiang', 'sp_sunshangxiang',
're_lidian', 're_lidian',
'jiangqing', 'jiangqing',
@ -496,7 +496,6 @@ window.characterRank={
'lvbu', 'lvbu',
'xiaoqiao', 'xiaoqiao',
'yanwen', 'yanwen',
'dianwei',
'yujin', 'yujin',
], ],
d:[ d:[

View File

@ -16,7 +16,7 @@ character.shenhua={
sp_zhugeliang:['male','shu',3,['huoji','bazhen','kanpo']], sp_zhugeliang:['male','shu',3,['huoji','bazhen','kanpo']],
pangtong:['male','shu',3,['lianhuan','niepan']], pangtong:['male','shu',3,['lianhuan','niepan']],
xunyu:['male','wei',3,['quhu','jieming']], xunyu:['male','wei',3,['quhu','jieming']],
dianwei:['male','wei',4,['qiangxi']], dianwei:['male','wei',4,['xinqiangxi']],
taishici:['male','wu',4,['tianyi']], taishici:['male','wu',4,['tianyi']],
yanwen:['male','qun',4,['shuangxiong']], yanwen:['male','qun',4,['shuangxiong']],
yuanshao:['male','qun',4,['luanji','xueyi'],['zhu']], yuanshao:['male','qun',4,['luanji','xueyi'],['zhu']],
@ -2534,6 +2534,67 @@ character.shenhua={
}, },
threaten:1.3 threaten:1.3
}, },
xinqiangxi:{
audio:'qiangxi',
enable:'phaseUse',
filter:function(event,player){
if(player.hasSkill('xinqiangxi2')){
return !player.hasSkill('xinqiangxi3');
}
else if(player.hasSkill('xinqiangxi3')){
return !player.hasSkill('xinqiangxi2')&&player.num('he',{type:'equip'})>0;
}
else{
return true;
}
},
filterCard:function(card){
var player=_status.event.player;
if(player.hasSkill('xinqiangxi2')) return false;
return get.type(card)=='equip';
},
selectCard:function(){
var player=_status.event.player;
if(player.hasSkill('xinqiangxi2')) return -1;
if(player.hasSkill('xinqiangxi3')) return [1,1];
return [0,1];
},
filterTarget:function(card,player,target){
if(player==target) return false;
return get.distance(player,target,'attack')<=1;
},
content:function(){
"step 0"
if(cards.length==0){
player.loseHp();
player.addTempSkill('xinqiangxi3','phaseAfter');
}
else{
player.addTempSkill('xinqiangxi2','phaseAfter');
}
"step 1"
target.damage();
},
check:function(card){
return 10-ai.get.value(card);
},
position:'he',
ai:{
order:8.5,
result:{
target:function(player,target){
if(player.hasSkill('xinqiangxi2')||!player.num('he',{type:'equip'})){
if(player.hp<2) return 0;
if(target.hp>=player.hp) return 0;
}
return ai.get.damageEffect(target,player);
}
}
},
threaten:1.5
},
xinqiangxi2:{},
xinqiangxi3:{},
tianyi:{ tianyi:{
audio:2, audio:2,
enable:'phaseUse', enable:'phaseUse',
@ -3355,6 +3416,8 @@ character.shenhua={
huashen2:'化身', huashen2:'化身',
xinsheng:'新生', xinsheng:'新生',
qimou:'奇谋', qimou:'奇谋',
xinqiangxi:'强袭',
xinqiangxi_info:'出牌阶段各限一次你可以选择一项1. 失去一点体力并对你攻击范围内的一名其他角色造成一点伤害2. 弃置一张装备牌并对你攻击范围内的一名其他角色造成一点伤害 ',
qimou_info:'限定技,出牌阶段,你可以失去任意点体力,然后直到回合结束,你计算与其他角色的距离-X且你可以多使用X张【杀】X为你失去的体力值', qimou_info:'限定技,出牌阶段,你可以失去任意点体力,然后直到回合结束,你计算与其他角色的距离-X且你可以多使用X张【杀】X为你失去的体力值',
tiaoxin_info:'出牌阶段,你可以指定一名使用【杀】能攻击到你的角色,该角色需对你使用一张【杀】,若该角色不如此做,你弃掉他的一张牌,每回合限一次。', tiaoxin_info:'出牌阶段,你可以指定一名使用【杀】能攻击到你的角色,该角色需对你使用一张【杀】,若该角色不如此做,你弃掉他的一张牌,每回合限一次。',
zhiji_info:'觉醒技回合开始阶段若你没有手牌你须回复1点体力或摸两张牌然后减1点体力上限并永久获得技能“观星”。', zhiji_info:'觉醒技回合开始阶段若你没有手牌你须回复1点体力或摸两张牌然后减1点体力上限并永久获得技能“观星”。',

View File

@ -228,10 +228,7 @@ character.xianjian={
'step 1' 'step 1'
if(result.bool){ if(result.bool){
player.logSkill('danqing',result.targets); player.logSkill('danqing',result.targets);
var effs=['draw','hujia','equip']; var effs=['draw','hujia','equip','stealth'];
if(lib.skill.hslingjian_yinshen){
effs.add('stealth');
}
for(var i=0;i<result.targets.length;i++){ for(var i=0;i<result.targets.length;i++){
var eff=effs.randomRemove(); var eff=effs.randomRemove();
var current=result.targets[i]; var current=result.targets[i];
@ -244,8 +241,7 @@ character.xianjian={
current.$draw(card); current.$draw(card);
break; break;
case 'stealth': case 'stealth':
current.addTempSkill('hslingjian_yinshen',{player:'phaseBegin'}); current.addTempSkill('qianxing',{player:'phaseBegin'});
game.log(current,'获得了','【潜行】');
break; break;
} }
} }
@ -349,7 +345,7 @@ character.xianjian={
result.targets[0].equip(card); result.targets[0].equip(card);
result.targets[0].$draw(card); result.targets[0].$draw(card);
event.targets.push(result.targets[0]); event.targets.push(result.targets[0]);
if(event.targets.length==game.players.length||!lib.skill.hslingjian_yinshen){ if(event.targets.length==game.players.length){
event.finish(); event.finish();
} }
else{ else{
@ -371,7 +367,7 @@ character.xianjian={
if(result.bool){ if(result.bool){
player.line(result.targets[0],'green'); player.line(result.targets[0],'green');
game.delay(); game.delay();
result.targets[0].addTempSkill('hslingjian_yinshen',{player:'phaseBegin'}); result.targets[0].addTempSkill('qianxing',{player:'phaseBegin'});
} }
} }
}, },
@ -2416,7 +2412,7 @@ character.xianjian={
tuoqiao:'脱壳', tuoqiao:'脱壳',
tuoqiao_info:'每当你成为身边角色的卡牌的目标,你可以将座位后移一位,然后取消之', tuoqiao_info:'每当你成为身边角色的卡牌的目标,你可以将座位后移一位,然后取消之',
xiaoyao:'逍遥', xiaoyao:'逍遥',
xiaoyao_info:'锁定技,计算其他角色与你的距离时始终+1每当你成为其他角色的卡牌目标时你可以弃置两张牌使其失效', xiaoyao_info:'回合结束阶段,你可以弃置一张装备牌并获得潜行直到下一回合开始',
yujian:'御剑', yujian:'御剑',
yujian_info:'出牌阶段,你可以弃置一张手牌并将你的座位移到任意位置,每阶段限一次', yujian_info:'出牌阶段,你可以弃置一张手牌并将你的座位移到任意位置,每阶段限一次',
huimeng:'回梦', huimeng:'回梦',

View File

@ -2428,7 +2428,7 @@ window.noname_skin_list={
chenlin:3, chenlin:3,
chenqun:2, chenqun:2,
dengai:4, dengai:4,
dianwei:1, dianwei:2,
diaochan:4, diaochan:4,
dingfeng:3, dingfeng:3,
dongzhuo:3, dongzhuo:3,

View File

@ -3777,6 +3777,14 @@
lib.config.all.plays=[]; lib.config.all.plays=[];
lib.config.all.mode=[]; lib.config.all.mode=[];
if(lib.config.debug){
lib.init.js('game','asset',function(){
lib.skin=window.noname_skin_list;
delete window.noname_skin_list;
delete window.noname_asset_list;
});
}
if(window.isNonameServer){ if(window.isNonameServer){
lib.config.mode='connect'; lib.config.mode='connect';
} }
@ -5501,6 +5509,7 @@
_chongzhu:'重铸', _chongzhu:'重铸',
_lianhuan:'连环', _lianhuan:'连环',
_lianhuan2:'连环', _lianhuan2:'连环',
qianxing:'潜行',
}, },
element:{ element:{
content:{ content:{
@ -14695,6 +14704,21 @@
others:{}, others:{},
zhu:{}, zhu:{},
zhuSkill:{}, zhuSkill:{},
qianxing:{
mark:true,
nopop:true,
init:function(player){
game.log(player,'获得了','【潜行】');
},
intro:{
content:'锁定技,你不能成为其他角色的卡牌的目标'
},
mod:{
targetEnabled:function(card,player,target){
if(player!=target) return false;
}
}
},
mad:{ mad:{
mark:true, mark:true,
intro:{ intro:{
@ -33218,9 +33242,9 @@
uiintro.content.appendChild(table); uiintro.content.appendChild(table);
} }
if(lib.config.change_skin&&( if(lib.config.change_skin&&
!node.classList.contains('unseen')||!node.classList.contains('unseen2') (!node.classList.contains('unseen')||!node.classList.contains('unseen2'))
)){ ){
var num=1; var num=1;
var introadded=false; var introadded=false;
var loadImage=function(avatar2){ var loadImage=function(avatar2){
@ -33284,6 +33308,9 @@
if(!node.classList.contains('unseen')){ if(!node.classList.contains('unseen')){
loadImage(); loadImage();
} }
else{
loadImage(true);
}
} }
} }
@ -33444,6 +33471,63 @@
else{ else{
uiintro.add(ui.create.div('.placeholder.slim')); uiintro.add(ui.create.div('.placeholder.slim'));
} }
if(lib.config.change_skin||lib.skin){
var num=1;
var introadded=false;
var createButtons=function(num){
if(!num) return;
if(!introadded){
introadded=true;
uiintro.add('<div class="text center">更改皮肤</div>');
}
var buttons=ui.create.div('.buttons.smallzoom');
for(var i=0;i<=num;i++){
var button=ui.create.div('.button.character',buttons,function(){
if(this._link){
lib.config.skin[node.link]=this._link;
node.style.backgroundImage=this.style.backgroundImage;
game.saveConfig('skin',lib.config.skin);
}
else{
delete lib.config.skin[node.link];
node.node.avatar.setBackground(node.link,'character');
game.saveConfig('skin',lib.config.skin);
}
});
button._link=i;
if(i){
button.setBackgroundImage('image/skin/'+node.link+'/'+i+'.jpg');
}
else{
button.setBackgroundImage('image/character/'+node.link+'.jpg');
}
}
uiintro.add(buttons);
};
var loadImage=function(){
var img=new Image();
img.onload=function(){
num++;
loadImage();
}
img.onerror=function(){
num--;
createButtons(num);
}
img.src=lib.assetURL+'image/skin/'+node.link+'/'+num+'.jpg';
}
if(lib.config.change_skin){
if(!node.classList.contains('unseen')){
loadImage();
}
else{
loadImage(true);
}
}
else{
createButtons(lib.skin[node.link]);
}
}
} }
else if(node.classList.contains('identity')&&node.dataset.career){ else if(node.classList.contains('identity')&&node.dataset.career){
var career=node.dataset.career; var career=node.dataset.career;

View File

@ -6,10 +6,13 @@ window.noname_update={
], ],
files:[ files:[
'game/game.js', 'game/game.js',
'game/asset.js',
'character/gujian.js', 'character/gujian.js',
'character/hearth.js',
'character/swd.js', 'character/swd.js',
'character/rank.js', 'character/rank.js',
'character/xianjian.js', 'character/xianjian.js',
'character/shenhua.js',
'card/swd.js', 'card/swd.js',
'mode/tafang.js', 'mode/tafang.js',
'layout/newlayout/global.css', 'layout/newlayout/global.css',

Binary file not shown.

Before

Width:  |  Height:  |  Size: 46 KiB

After

Width:  |  Height:  |  Size: 40 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 40 KiB

BIN
image/skin/dianwei/2.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 46 KiB