This commit is contained in:
parent
336d30f6c8
commit
e92c57de32
26
card/swd.js
26
card/swd.js
|
@ -1086,10 +1086,10 @@ card.swd={
|
|||
derivation:true,
|
||||
derivationpack:'swd',
|
||||
filterTarget:function(card,player,target){
|
||||
return player!=target&&!target.hasSkill('hslingjian_yinshen');
|
||||
return player!=target&&!target.hasSkill('qianxing');
|
||||
},
|
||||
content:function(){
|
||||
target.addTempSkill('hslingjian_yinshen',{player:'phaseBegin'});
|
||||
target.addTempSkill('qianxing',{player:'phaseBegin'});
|
||||
},
|
||||
ai:{
|
||||
order:2,
|
||||
|
@ -3198,7 +3198,7 @@ card.swd={
|
|||
content:function(){
|
||||
'step 0'
|
||||
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){
|
||||
var att=ai.get.attitude(player,target);
|
||||
if(get.distance(player,target,'absolute')<=1) return 0;
|
||||
|
@ -3209,7 +3209,7 @@ card.swd={
|
|||
'step 1'
|
||||
if(result.bool){
|
||||
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'},
|
||||
forced:true,
|
||||
filter:function(event,player){
|
||||
return !player.hasSkill('hslingjian_yinshen');
|
||||
return !player.hasSkill('qianxing');
|
||||
},
|
||||
content:function(){
|
||||
player.addTempSkill('hslingjian_yinshen','phaseAfter');
|
||||
player.addTempSkill('qianxing','phaseAfter');
|
||||
}
|
||||
},
|
||||
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:{
|
||||
global:'hslingjian_chaofeng_disable',
|
||||
nopop:true,
|
||||
|
@ -4450,8 +4438,6 @@ card.swd={
|
|||
hslingjian_shijianhuisu_info:'可用于煅造装备;令一名其他角色将其装备牌收回手牌',
|
||||
hslingjian_chaofeng:'嘲讽',
|
||||
hslingjian_chaofeng_info:'锁定技,若你的手牌数大于你的体力值,则只要你在任一其他角色的攻击范围内,该角色使用【杀】时便不能指定你以外的角色为目标',
|
||||
hslingjian_yinshen:'潜行',
|
||||
hslingjian_yinshen_info:'锁定技,你不能成为其他角色的卡牌的目标',
|
||||
qinglonglingzhu:'青龙灵珠',
|
||||
qinglonglingzhu_ab:'灵珠',
|
||||
qinglonglingzhu_info:'每当你造成一次属性伤害,你可以获得对方的一张牌',
|
||||
|
|
|
@ -1,4 +0,0 @@
|
|||
'use strict';
|
||||
character.classic={
|
||||
|
||||
}
|
|
@ -147,7 +147,7 @@ character.gujian={
|
|||
group:['yunyin_count','yunyin_set'],
|
||||
content:function(){
|
||||
'step 0'
|
||||
player.chooseToDiscard('he',get.prompt('yunyin'),function(card){
|
||||
player.chooseToDiscard(get.prompt('yunyin'),function(card){
|
||||
if(!player.storage.yunyin) return true;
|
||||
return !player.storage.yunyin.contains(get.suit(card));
|
||||
}).set('logSkill','yunyin').ai=function(card){
|
||||
|
|
|
@ -4841,10 +4841,10 @@ character.hearth={
|
|||
enable:true,
|
||||
derivation:'hs_xialikeer',
|
||||
filterTarget:function(card,player,target){
|
||||
return !target.hasSkill('hslingjian_yinshen');
|
||||
return !target.hasSkill('qianxing');
|
||||
},
|
||||
content:function(){
|
||||
target.addTempSkill('hslingjian_yinshen',{player:'phaseBegin'});
|
||||
target.addTempSkill('qianxing',{player:'phaseBegin'});
|
||||
},
|
||||
ai:{
|
||||
order:2,
|
||||
|
|
|
@ -225,6 +225,7 @@ window.characterRank={
|
|||
'yxs_nandinggeer',
|
||||
'hs_kazhakusi',
|
||||
'swd_yeyaxi',
|
||||
'dianwei',
|
||||
],
|
||||
bp:[
|
||||
'pal_leiyuange',
|
||||
|
@ -393,7 +394,6 @@ window.characterRank={
|
|||
'hs_huzhixiannv',
|
||||
'jg_simayi',
|
||||
'jg_zhugeliang',
|
||||
'diy_dianwei',
|
||||
'sp_sunshangxiang',
|
||||
're_lidian',
|
||||
'jiangqing',
|
||||
|
@ -496,7 +496,6 @@ window.characterRank={
|
|||
'lvbu',
|
||||
'xiaoqiao',
|
||||
'yanwen',
|
||||
'dianwei',
|
||||
'yujin',
|
||||
],
|
||||
d:[
|
||||
|
|
|
@ -16,7 +16,7 @@ character.shenhua={
|
|||
sp_zhugeliang:['male','shu',3,['huoji','bazhen','kanpo']],
|
||||
pangtong:['male','shu',3,['lianhuan','niepan']],
|
||||
xunyu:['male','wei',3,['quhu','jieming']],
|
||||
dianwei:['male','wei',4,['qiangxi']],
|
||||
dianwei:['male','wei',4,['xinqiangxi']],
|
||||
taishici:['male','wu',4,['tianyi']],
|
||||
yanwen:['male','qun',4,['shuangxiong']],
|
||||
yuanshao:['male','qun',4,['luanji','xueyi'],['zhu']],
|
||||
|
@ -2534,6 +2534,67 @@ character.shenhua={
|
|||
},
|
||||
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:{
|
||||
audio:2,
|
||||
enable:'phaseUse',
|
||||
|
@ -3355,6 +3416,8 @@ character.shenhua={
|
|||
huashen2:'化身',
|
||||
xinsheng:'新生',
|
||||
qimou:'奇谋',
|
||||
xinqiangxi:'强袭',
|
||||
xinqiangxi_info:'出牌阶段各限一次,你可以选择一项:1. 失去一点体力并对你攻击范围内的一名其他角色造成一点伤害;2. 弃置一张装备牌并对你攻击范围内的一名其他角色造成一点伤害 ',
|
||||
qimou_info:'限定技,出牌阶段,你可以失去任意点体力,然后直到回合结束,你计算与其他角色的距离-X,且你可以多使用X张【杀】(X为你失去的体力值)',
|
||||
tiaoxin_info:'出牌阶段,你可以指定一名使用【杀】能攻击到你的角色,该角色需对你使用一张【杀】,若该角色不如此做,你弃掉他的一张牌,每回合限一次。',
|
||||
zhiji_info:'觉醒技,回合开始阶段,若你没有手牌,你须回复1点体力或摸两张牌,然后减1点体力上限,并永久获得技能“观星”。',
|
||||
|
|
|
@ -228,10 +228,7 @@ character.xianjian={
|
|||
'step 1'
|
||||
if(result.bool){
|
||||
player.logSkill('danqing',result.targets);
|
||||
var effs=['draw','hujia','equip'];
|
||||
if(lib.skill.hslingjian_yinshen){
|
||||
effs.add('stealth');
|
||||
}
|
||||
var effs=['draw','hujia','equip','stealth'];
|
||||
for(var i=0;i<result.targets.length;i++){
|
||||
var eff=effs.randomRemove();
|
||||
var current=result.targets[i];
|
||||
|
@ -244,8 +241,7 @@ character.xianjian={
|
|||
current.$draw(card);
|
||||
break;
|
||||
case 'stealth':
|
||||
current.addTempSkill('hslingjian_yinshen',{player:'phaseBegin'});
|
||||
game.log(current,'获得了','【潜行】');
|
||||
current.addTempSkill('qianxing',{player:'phaseBegin'});
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
@ -349,7 +345,7 @@ character.xianjian={
|
|||
result.targets[0].equip(card);
|
||||
result.targets[0].$draw(card);
|
||||
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();
|
||||
}
|
||||
else{
|
||||
|
@ -371,7 +367,7 @@ character.xianjian={
|
|||
if(result.bool){
|
||||
player.line(result.targets[0],'green');
|
||||
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_info:'每当你成为身边角色的卡牌的目标,你可以将座位后移一位,然后取消之',
|
||||
xiaoyao:'逍遥',
|
||||
xiaoyao_info:'锁定技,计算其他角色与你的距离时始终+1;每当你成为其他角色的卡牌目标时,你可以弃置两张牌使其失效',
|
||||
xiaoyao_info:'回合结束阶段,你可以弃置一张装备牌并获得潜行直到下一回合开始',
|
||||
yujian:'御剑',
|
||||
yujian_info:'出牌阶段,你可以弃置一张手牌并将你的座位移到任意位置,每阶段限一次',
|
||||
huimeng:'回梦',
|
||||
|
|
|
@ -2428,7 +2428,7 @@ window.noname_skin_list={
|
|||
chenlin:3,
|
||||
chenqun:2,
|
||||
dengai:4,
|
||||
dianwei:1,
|
||||
dianwei:2,
|
||||
diaochan:4,
|
||||
dingfeng:3,
|
||||
dongzhuo:3,
|
||||
|
|
90
game/game.js
90
game/game.js
|
@ -3777,6 +3777,14 @@
|
|||
lib.config.all.plays=[];
|
||||
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){
|
||||
lib.config.mode='connect';
|
||||
}
|
||||
|
@ -5501,6 +5509,7 @@
|
|||
_chongzhu:'重铸',
|
||||
_lianhuan:'连环',
|
||||
_lianhuan2:'连环',
|
||||
qianxing:'潜行',
|
||||
},
|
||||
element:{
|
||||
content:{
|
||||
|
@ -14695,6 +14704,21 @@
|
|||
others:{},
|
||||
zhu:{},
|
||||
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:{
|
||||
mark:true,
|
||||
intro:{
|
||||
|
@ -33218,9 +33242,9 @@
|
|||
|
||||
uiintro.content.appendChild(table);
|
||||
}
|
||||
if(lib.config.change_skin&&(
|
||||
!node.classList.contains('unseen')||!node.classList.contains('unseen2')
|
||||
)){
|
||||
if(lib.config.change_skin&&
|
||||
(!node.classList.contains('unseen')||!node.classList.contains('unseen2'))
|
||||
){
|
||||
var num=1;
|
||||
var introadded=false;
|
||||
var loadImage=function(avatar2){
|
||||
|
@ -33284,6 +33308,9 @@
|
|||
if(!node.classList.contains('unseen')){
|
||||
loadImage();
|
||||
}
|
||||
else{
|
||||
loadImage(true);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -33444,6 +33471,63 @@
|
|||
else{
|
||||
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){
|
||||
var career=node.dataset.career;
|
||||
|
|
|
@ -6,10 +6,13 @@ window.noname_update={
|
|||
],
|
||||
files:[
|
||||
'game/game.js',
|
||||
'game/asset.js',
|
||||
'character/gujian.js',
|
||||
'character/hearth.js',
|
||||
'character/swd.js',
|
||||
'character/rank.js',
|
||||
'character/xianjian.js',
|
||||
'character/shenhua.js',
|
||||
'card/swd.js',
|
||||
'mode/tafang.js',
|
||||
'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 |
Binary file not shown.
After Width: | Height: | Size: 46 KiB |
Loading…
Reference in New Issue