v1.9.97.5

This commit is contained in:
Spmario233 2020-01-31 17:50:48 +08:00 committed by GitHub
parent 881e0b50b8
commit 210bb675f9
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
11 changed files with 272 additions and 18 deletions

View File

@ -1393,7 +1393,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
game.delay(0.5)
'step 1'
var card=event.chosen;
player.lose(card,ui.special);
player.lose(card,ui.discardPile);
player.$throw(card,1000);
game.delay(0.5);
game.log(player,'重铸了',card);

View File

@ -7,7 +7,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
characterSort:{
mobile:{
mobile_default:["miheng","taoqian","liuzan","lingcao","sunru","lifeng","zhuling","liuye","zhaotongzhaoguang","majun","simazhao","wangyuanji","pangdegong","shenpei","hujinding"],
mobile_others:["re_jikang","old_bulianshi","old_yuanshu","re_wangyun","re_baosanniang"],
mobile_others:["re_jikang","old_bulianshi","old_yuanshu","re_wangyun","re_baosanniang","re_weiwenzhugezhi","re_zhanggong","re_xugong"],
},
},
character:{
@ -33,6 +33,10 @@ game.import('character',function(lib,game,ui,get,ai,_status){
re_baosanniang:['female','shu',3,['meiyong','rexushen','rezhennan']],
hujinding:['female','shu','2/6',['renshi','wuyuan','huaizi']],
re_zhanggong:['male','wei',3,['reqianxin','xinfu_zhenxing']],
re_xugong:['male','wu',3,['rebiaozhao','yechou']],
re_weiwenzhugezhi:['male','wu',4,['refuhai']],
},
characterIntro:{
shenpei:'审配204年字正南魏郡阴安今河北清丰北人。为人正直 袁绍领冀州,审配被委以腹心之任,并总幕府。河北平定,袁绍以审配、逢纪统军事,审配恃其强盛,力主与曹操决战。曾率领弓弩手大破曹军于官渡。官渡战败,审配二子被俘,反因此受谮见疑,幸得逢纪力保。袁绍病死,审配等矫诏立袁尚为嗣,导致兄弟相争,被曹操各个击破。曹操围邺,审配死守数月,终城破被擒,拒不投降,慷慨受死。',
@ -77,6 +81,225 @@ game.import('character',function(lib,game,ui,get,ai,_status){
},
characterFilter:{},
skill:{
refuhai:{
audio:'xinfu_fuhai',
enable:'phaseUse',
usable:1,
filterCard:true,
check:function(card){
if(game.players.length<3) return 0;
return 5-get.value(card);
},
content:function(){
'step 0'
event.current=player.next;
event.upper=[];
event.lower=[];
event.acted=[];
event.num=0;
event.stopped=false;
'step 1'
event.acted.push(event.current);
event.current.chooseControl('潮起','潮落').set('prompt','潮鸣起乎?潮鸣落乎?').ai=function(){
return Math.random()<0.5?0:1;
};
'step 2'
if(!event.chosen) event.chosen=result.control;
if(event.chosen!=result.control) event.stopped=true;
if(!event.stopped) event.num++;
if(result.control=='潮起'){
event.upper.push(event.current)
}
else event.lower.push(event.current);
event.current=event.current.next;
if(event.current!=player&&!event.acted.contains(event.current)) event.goto(1);
'step 3'
for(var i=0;i<event.acted.length;i++){
var bool=event.upper.contains(event.acted[i]);
game.log(event.acted[i],'选择了',bool?'#g潮起':'#y潮落');
event.acted[i].popup(bool?'潮起':'潮落',bool?'wood':'orange');
}
game.delay(1);
'step 4'
if(num>1) player.draw(num);
},
ai:{
order:1,
result:{player:1},
},
},
rebiaozhao:{
audio:'biaozhao',
intro:{
content:"cards",
},
trigger:{
player:"phaseJieshuBegin",
},
direct:true,
filter:function (event,player){
return player.countCards('he')>0&&!player.storage.rebiaozhao;
},
content:function (){
'step 0'
player.chooseCard('he',get.prompt2('rebiaozhao')).ai=function(card){
return 6-get.value(card);
}
'step 1'
if(result.bool){
player.addSkill('rebiaozhao2');
player.addSkill('rebiaozhao3');
player.logSkill('rebiaozhao');
player.$give(result.cards,player,false);
player.lose(result.cards,ui.special,'toStorage','visible');
player.storage.rebiaozhao=result.cards;
player.markSkill('rebiaozhao');
}
},
},
"rebiaozhao2":{
trigger:{
global:["loseEnd","cardsDiscardEnd"],
},
charlotte:true,
forced:true,
audio:"biaozhao",
filter:function (event,player){
if(!player.storage.rebiaozhao) return false;
var num=get.number(player.storage.rebiaozhao[0]);
for(var i=0;i<event.cards.length;i++){
if(get.position(event.cards[i],true)=='d'&&get.number(event.cards[i])==num) return true;
}
return false;
},
content:function (){
"step 0"
var card=player.storage.rebiaozhao[0];
delete player.storage.rebiaozhao;
player.$throw(card);
game.cardsDiscard(card);
"step 1"
player.unmarkSkill('rebiaozhao');
player.loseHp();
},
},
"rebiaozhao3":{
trigger:{
player:"phaseZhunbeiBegin",
},
forced:true,
charlotte:true,
audio:"biaozhao",
filter:function (event,player){
return player.storage.rebiaozhao!=undefined;
},
content:function (){
"step 0"
var card=player.storage.rebiaozhao[0];
delete player.storage.rebiaozhao;
player.unmarkSkill('rebiaozhao');
game.cardsDiscard(card);
player.chooseTarget('令一名角色摸三张牌并回复1点体力',true).ai=function(target){
var num=2;
if(target.isDamaged()) num++;
return num*get.attitude(_status.event.player,target);
};
"step 1"
if(result.bool){
var target=result.targets[0];
player.line(target,'green');
target.draw(3);
target.recover();
}
},
},
reqianxin:{
audio:'xinfu_qianxin',
enable:'phaseUse',
usable:1,
filterCard:true,
selectCard:function(){
return [1,Math.min(2,game.players.length-1)];
},
check:function(card){
return 6-get.value(card);
},
discard:false,
lose:false,
delay:0,
content:function(){
var targets=game.filterPlayer(function(current){
return current!=player;
}).randomGets(cards.length);
for(var i=0;i<targets.length;i++){
var target=targets[i];
target.addSkill('reqianxin2');
target.storage.reqianxin2.push([cards[i],player]);
player.$give(1,target);
target.gain(cards[i],player);
}
},
ai:{
order:1,
result:{
player:1,
},
},
},
reqianxin2:{
trigger:{player:'phaseZhunbeiBegin'},
forced:true,
popup:false,
charlotte:true,
init:function(player,skill){
if(!player.storage[skill]) player.storage[skill]=[];
},
onremove:true,
filter:function(event,player){
var list=player.storage.reqianxin2;
if(Array.isArray(list)){
var hs=player.getCards('h');
for(var i=0;i<list.length;i++){
if(hs.contains(list[i][0])&&list[i][1].isIn()) return true;
}
}
return false;
},
content:function(){
'step 0'
var current=player.storage.reqianxin2.shift();
event.source=current[1];
if(!event.source.isIn()||!player.getCards('h').contains(current[0])) event.goto(3);
'step 1'
source.logSkill('reqianxin',player);
player.chooseControl().set('choiceList',[
'令'+get.translation(source)+'摸两张牌',
'令自己本回合的手牌上限-2',
]).set('prompt',get.translation(source)+'发动了【遣信】,请选择一项').set('source',source).set('ai',function(){
var player=_status.event.player;
if(get.attitude(player,_status.event.source)>0) return 0;
if(player.maxHp-player.countCards('h')>1) return 1;
return Math.random()>0.5?0:1;
});
'step 2'
if(result.index==0) source.draw(2);
else{
player.addTempSkill('reqianxin3')
player.addMark('reqianxin3',2,false)
}
'step 3'
if(player.storage.reqianxin2.length) event.goto(0);
else player.removeSkill('reqianxin2');
},
},
reqianxin3:{
onremove:true,
mod:{
maxHandcard:function(player,num){
return num-player.countMark('reqianxin3');
},
},
},
renshi:{
audio:2,
trigger:{player:'damageBegin4'},
@ -1309,6 +1532,20 @@ game.import('character',function(lib,game,ui,get,ai,_status){
renshi_info:'锁定技当你受到【杀】的伤害时若你已受伤则你防止此伤害并获得此【杀】对应的所有实体牌然后减1点体力上限。',
wuyuan:'武缘',
wuyuan_info:'出牌阶段限一次你可将一张【杀】交给一名其他角色然后你回复1点体力其摸一张牌。若此【杀】为红色【杀】其回复1点体力属性【杀】其改为摸两张牌。',
re_weiwenzhugezhi:'手杀卫温诸葛直',
re_xugong:'手杀许贡',
re_zhanggong:'手杀张恭',
reqianxin:'遣信',
reqianxin_info:'出牌阶段限一次,你可将至多两张手牌随机交给等量的其他角色,称为「信」。这些角色的准备阶段开始时,若其手牌中有「信」,则其选择一项:令你摸两张牌,本回合手牌上限-2。',
rebiaozhao:"表召",
"rebiaozhao_info":"结束阶段你可以将一张牌置于武将牌上称为「表」。当有一张与「表」点数相同的牌进入弃牌堆时你将「表」置入弃牌堆并失去1点体力。准备阶段若你的武将牌上有「表」则你移去「表」并选择一名角色该角色回复1点体力并摸三张牌。",
"rebiaozhao2":"表召",
"rebiaozhao2_info":"",
"rebiaozhao3":"表召",
"rebiaozhao3_info":"",
refuhai:'浮海',
refuhai_info:'出牌阶段限一次你可弃置一张手牌令其他角色同时在「潮起」和「潮落」中选择一项并依次展示这些角色的选项。若从你下家开始选择了相同选项的角色数目大于1则你摸X张牌X为连续相同结果的数量。',
}
};
});

View File

@ -2300,7 +2300,8 @@ game.import('character',function(lib,game,ui,get,ai,_status){
player.addSkill('biaozhao2');
player.addSkill('biaozhao3');
player.logSkill('biaozhao');
player.lose(result.cards,ui.special,'toStorage');
player.lose(result.cards,ui.special,'toStorage','visible');
player.$give(result.cards,player,false);
player.storage.biaozhao=result.cards;
player.markSkill('biaozhao');
}
@ -10345,7 +10346,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
else{
var trigger2=trigger.getParent();
if(typeof trigger2.baseDamage!='number'){
trigger2.baseDamage=0;
trigger2.baseDamage=1;
}
trigger2.baseDamage+=nd;
}

View File

@ -608,8 +608,8 @@ game.import('character',function(lib,game,ui,get,ai,_status){
dis:{
mod:{
maxHandcard:function (player,num){
return num-2;
},
return num-2;
},
},
sub:true,
},
@ -639,7 +639,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
'令自己本回合的手牌上限-2'
]).set('ai',function(){
var player=_status.event.player;
var source=_status.event.getParent().player;
var source=_status.event.getParent().source;
if(get.attitude(player,source)>0) return 0;
if(player.hp-player.countCards('h')>1) return 1;
return [0,1].randomGet();

View File

@ -4896,6 +4896,17 @@ game.import('character',function(lib,game,ui,get,ai,_status){
skillTagFilter:function(player,tag,arg){
if(arg.target!=player.storage.xinxianzhen) return false;
},
effect:{
player:function(card,player,target){
if(target==player.storage.xinxianzhen&&['sha','guohe','shunshou','huogong','juedou'].contains(card.name)){
if(game.hasPlayer(function(current){
return current!=target&&player.canUse(card,current)&&get.effect(current,card,player,player)>0;
})){
return [1,1];
}
}
}
}
},
trigger:{player:'useCard2'},
filter:function(event,player){

View File

@ -1,5 +1,5 @@
window.noname_asset_list=[
'1.9.97.4',
'1.9.97.5',
'audio/background/aozhan_chaoming.mp3',
'audio/background/aozhan_online.mp3',
'audio/background/aozhan_rewrite.mp3',
@ -2102,6 +2102,7 @@ window.noname_asset_list=[
'image/background/kyoani_bg.jpg',
'image/background/planetarian_bg.jpg',
'image/background/ol_bg.jpg',
'image/background/heaven_bg.jpg',
'image/background/noname_bg.jpg',
'image/background/wuming_bg.jpg',
'image/background/september_bg.jpg',
@ -2473,6 +2474,7 @@ window.noname_asset_list=[
'image/character/key_yuri.jpg',
'image/character/key_kyousuke.jpg',
'image/character/key_lucia.jpg',
'image/character/key_kagari.jpg',
'image/character/re_yujin.jpg',
'image/character/re_caopi.jpg',
'image/character/re_dongzhuo.jpg',

View File

@ -22878,6 +22878,8 @@
},
trigger:function(name){
if(_status.video) return;
if((this.name==='gain'||this.name==='lose')&&!_status.gameDrawed) return;
if(name==='gameDrawEnd') _status.gameDrawed=true;
if(name==='gameStart'){
if(_status.brawl&&_status.brawl.gameStart){
_status.brawl.gameStart();

View File

@ -1,7 +1,8 @@
window.noname_update={
version:'1.9.97.4',
update:'1.9.97.3.1',
version:'1.9.97.5',
update:'1.9.97.4',
changeLog:[
'手杀张恭,许贡,卫温诸葛直',
'BUG修复',
],
files:[
@ -12,19 +13,19 @@ window.noname_update={
//'card/swd.js',
//'card/guozhan.js',
//'card/gwent.js',
'character/diy.js',
'character/extra.js',
//'character/diy.js',
//'character/extra.js',
//'character/hearth.js',
//'character/gujian.js',
//'character/gwent.js',
'character/gwent.js',
'character/mobile.js',
//'character/mtg.js',
//'character/old.js',
'character/refresh.js',
'character/shenhua.js',
//'character/refresh.js',
//'character/shenhua.js',
'character/sp.js',
//'character/tw.js',
'character/standard.js',
//'character/standard.js',
//'character/swd.js',
//'character/xianjian.js',
'character/xinghuoliaoyuan.js',
@ -34,10 +35,10 @@ window.noname_update={
//'layout/default/layout.css',
//'mode/identity.js',
//'mode/doudizhu.js',
'mode/guozhan.js',
//'mode/guozhan.js',
//'mode/single.js',
//'mode/stone.js',
'mode/brawl.js',
//'mode/brawl.js',
//'mode/versus.js',
//'mode/boss.js',
'game/game.js',

Binary file not shown.

After

Width:  |  Height:  |  Size: 77 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 97 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 82 KiB