This commit is contained in:
libccy 2017-07-21 21:20:45 +08:00
parent d2eb74ba18
commit 536e39531f
4 changed files with 135 additions and 10 deletions

View File

@ -16,8 +16,8 @@ game.import('character',function(lib,game,ui,get,ai,_status){
gw_dagong:['male','qun',4,['tianbian']],
gw_bulanwang:['male','qun',4,['bolang']],
// gw_kuite:['male','qun',3,[]],
// gw_fuertaisite:['male','qun',3,[]],
gw_kuite:['male','qun',4,['gwxuezhan']],
gw_fuertaisite:['male','qun',3,['zhengjun']],
gw_hengsaite:['male','wei',3,['jielue']],
gw_fulisi:['male','qun',3,['lanquan']],
gw_gaier:['male','shu',3,['hunmo']],
@ -53,6 +53,62 @@ game.import('character',function(lib,game,ui,get,ai,_status){
gw_yioufeisi:'国王还是乞丐,两者有何区别,人类少一个算一个',
},
skill:{
zhengjun:{
init:function(player){
player.storage.zhengjun=[];
player.storage.zhengjun_one=[];
},
trigger:{player:'zhengjun'},
forced:true,
intro:{
content:'已经使用或打出过至少两张同名牌的牌有:$'
},
content:function(){
'step 0'
player.markSkill('zhengjun');
player.gainMaxHp();
'step 1'
player.recover();
},
group:['zhengjun_one','zhengjun_draw'],
subSkill:{
one:{
trigger:{player:['useCard','respondAfter']},
silent:true,
content:function(){
if(player.storage.zhengjun_one.contains(trigger.card.name)){
if(!player.storage.zhengjun.contains(trigger.card.name)){
player.storage.zhengjun.add(trigger.card.name);
event.trigger('zhengjun');
}
}
else{
player.storage.zhengjun_one.add(trigger.card.name);
}
}
},
draw:{
trigger:{player:'phaseDrawBegin'},
forced:true,
filter:function(event,player){
return player.storage.zhengjun.length>=2;
},
content:function(){
trigger.num+=Math.floor(player.storage.zhengjun.length/2);
}
}
}
},
gwxuezhan:{
trigger:{player:'phaseBegin'},
filter:function(event,player){
return player.isMinHandcard();
},
frequent:true,
content:function(){
player.gain(game.createCard('gw_shizizhaohuan'),'gain2');
}
},
jielue:{
trigger:{player:'useCard'},
frequent:true,
@ -1713,6 +1769,10 @@ game.import('character',function(lib,game,ui,get,ai,_status){
gw_zhangyujushou:'章鱼巨兽',
gw_zhuoertan:'卓尔坦',
zhengjun:'整军',
zhengjun_info:'锁定技你在摸牌阶段额外摸X/2张牌向下取整X为你在本局游戏中累计使用或打出过至少两张同名牌的牌数每当X的值增加你增加一点体力和体力上限',
gwxuezhan:'血战',
gwxuezhan_info:'准备阶段,若你的手牌数为全场最少或之一,你可以获得一张十字召唤',
jielue:'劫掠',
jielue_info:'当你于回合内首次使用基本牌时,你可以获得两张该牌的复制',
gwfengchi:'风驰',

View File

@ -183,6 +183,7 @@ window.noname_character_rank={
],
am:[
'gw_hengsaite',
'gw_kuite',
'sunqian',
'pal_anu',
'gw_mieren',

View File

@ -769,10 +769,38 @@ game.import('character',function(lib,game,ui,get,ai,_status){
player.addTempSkill('zhongjian2');
}
if(!event.bool1&&!event.bool2){
player.addTempSkill('zhongjian3');
if(player.hasSkill('caishi')&&typeof player.storage.caishi=='number'){
player.storage.caishi--;
if(player.storage.caishi<=0){
player.unmarkSkill('caishi');
if(player.storage.caishi<0){
player.markSkill('zhongjian');
}
}
else{
player.updateMarks();
}
}
else{
player.unmarkSkill('zhongjian');
if(player.hasSkill('zhongjian3')){
player.storage.zhongjian3--;
}
else{
player.addSkill('zhongjian3');
}
}
player.popup('杯具');
}
},
intro:{
content:function(storage,player){
return '手牌上限'+player.storage.caishi;
},
markcount:function(storage,player){
return player.storage.caishi;
}
},
ai:{
order:8,
result:{
@ -786,9 +814,17 @@ game.import('character',function(lib,game,ui,get,ai,_status){
},
zhongjian2:{},
zhongjian3:{
init:function(player){
player.storage.zhongjian3=-1;
},
mark:true,
onremove:true,
intro:{
content:'手牌上限#'
},
mod:{
maxHandcard:function(player,num){
return num-1;
if(typeof player.storage.zhongjian3=='number') return num+player.storage.zhongjian3;
}
}
},
@ -798,8 +834,16 @@ game.import('character',function(lib,game,ui,get,ai,_status){
init:function(player){
player.storage.caishi=0;
},
onremove:function(player){
player.unmarkSkill('zhongjian');
delete player.storage.caishi;
},
intro:{
content:'手牌上限+#'
content:function(storage){
if(storage>0) return '手牌上限+'+storage;
if(storage<0) return '手牌上限'+storage;
return '手牌上限无变化';
},
},
content:function(){
'step 0'
@ -822,7 +866,15 @@ game.import('character',function(lib,game,ui,get,ai,_status){
if(result.index==0){
player.addTempSkill('caishi2');
player.storage.caishi++;
player.markSkill('caishi');
if(player.storage.caishi>=0){
player.unmarkSkill('zhongjian');
if(player.storage.caishi>0){
player.markSkill('caishi');
}
}
else{
player.updateMarks();
}
}
else if(result.index==1){
player.recover();
@ -835,7 +887,15 @@ game.import('character',function(lib,game,ui,get,ai,_status){
player.logSkill('caishi');
player.addTempSkill('caishi2');
player.storage.caishi++;
player.markSkill('caishi');
if(player.storage.caishi>=0){
player.unmarkSkill('zhongjian');
if(player.storage.caishi>0){
player.markSkill('caishi');
}
}
else{
player.updateMarks();
}
}
}
},
@ -8168,6 +8228,9 @@ game.import('character',function(lib,game,ui,get,ai,_status){
daiyan:'怠宴',
daiyan_info:'准备阶段你可以选择一名其他角色该角色从牌堆获得一张【桃】若该角色上回合以此法成为过目标其失去1点体力',
zhongjian:'忠鉴',
zhongjian_bg:'鉴',
zhongjian3:'忠鉴',
zhongjian3_bg:'鉴',
zhongjian_info:'出牌阶段限一次你可以展示一张手牌然后展示手牌数大于体力值的一名其他角色X张手牌X为其手牌数和体力值之差。若以此法展示的牌与你展示的牌有颜色相同的你摸一张牌或弃置其一张牌有点数相同的本回合此技能改为“出牌阶段限两次”均不同你的手牌上限-1',
caishi:'才识',
caishi_info:'摸牌阶段开始时你可以选择一项1.手牌上限+1然后本回合你的牌不能对其他角色使用2.回复1点体力然后本回合你的牌不能对自己使用',

View File

@ -12289,7 +12289,7 @@
},
loseMaxHp:function(){
"step 0"
game.log(player,'失去了'+get.cnNumber(num)+'点体力上限');
game.log(player,'减少了'+get.cnNumber(num)+'点体力上限');
if(!event.forced&&typeof player.singleHp==='boolean'){
if(num%2==1){
if(player.singleHp){
@ -12321,7 +12321,7 @@
},
gainMaxHp:function(){
"step 0"
game.log(player,'获得了'+get.cnNumber(num)+'点体力上限');
game.log(player,'增加了'+get.cnNumber(num)+'点体力上限');
if(!event.forced&&typeof player.singleHp==='boolean'){
if(num%2==1){
if(player.singleHp){
@ -26800,6 +26800,7 @@
if(info.subSkill&&!sub){
for(var j in info.subSkill){
lib.skill[i+'_'+j]=info.subSkill[j];
lib.skill[i+'_'+j].sub=true;
if(info.subSkill[j].name){
lib.translate[i+'_'+j]=info.subSkill[j].name;
}
@ -41975,7 +41976,7 @@
for(var j=0;j<lib.character[i][3].length;j++){
var skill=lib.character[i][3][j];
var info=lib.skill[skill];
if(info&&!info.unique&&!info.temp){
if(info&&!info.unique&&!info.temp&&!info.sub){
if(func&&!func(info,skill)) continue;
list.add(skill);
}