This commit is contained in:
Spmario233 2021-02-08 15:52:22 +08:00
parent f5b1344147
commit 9aba2b7106
12 changed files with 273 additions and 19 deletions

BIN
audio/die/guozhao.mp3 Normal file

Binary file not shown.

BIN
audio/skill/pianchong1.mp3 Normal file

Binary file not shown.

BIN
audio/skill/pianchong2.mp3 Normal file

Binary file not shown.

BIN
audio/skill/zunwei1.mp3 Normal file

Binary file not shown.

BIN
audio/skill/zunwei2.mp3 Normal file

Binary file not shown.

View File

@ -356,7 +356,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
if(player.countDisabled()>=1) return true;
},
cardUsable:function(card,player){
if(player.countDisabled()>=2) return true;
if(player.countDisabled()>=2) return Infinity;
},
},
trigger:{player:'useCard2'},

View File

@ -25,6 +25,7 @@ window.noname_character_rank={
'chunyuqiong',
'yangbiao',
'zhaoxiang',
'guozhao',
'sp_xiahoushi',
'ns_zhangwei',
'key_mio',
@ -1081,6 +1082,7 @@ window.noname_character_rank={
're_zuoci',
'ns_zhangwei',
'ol_yuanshao',
'guozhao',
'key_yuri',
'key_yuzuru',
'sp_key_kanade',

View File

@ -8640,7 +8640,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
reenyuan2:'恩怨',
reenyuan_info:'当你获得一名其他角色的至少两张牌后你可以令其摸一张牌。当你受到1点伤害后你可令伤害来源选择一项①失去1点体力。②交给你一张手牌。若此牌不为♥则你摸一张牌。',
rexuanhuo:'眩惑',
rexuanhuo_info:'摸牌阶段结束时你可以交给一名其他角色两张手牌然后该角色选择一项1. 视为对你选择的另一名角色使用任意一种【杀】2. 交给你所有手牌。',
rexuanhuo_info:'摸牌阶段结束时你可以交给一名其他角色两张手牌然后该角色选择一项1. 视为对你选择的另一名角色使用任意一种【杀】或【决斗】2. 交给你所有手牌。',
re_fuhuanghou:'界伏皇后',
reqiuyuan:'求援',
reqiuyuan_info:'当你成为【杀】的目标时,你可选择另一名其他角色。除非该角色交给你一张除【杀】以外的基本牌,否则其也成为此【杀】的目标且该角色不能响应此【杀】。',

View File

@ -12,6 +12,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
jin_simashi:['male','jin','3/4',['taoyin','yimie','ruilve','tairan'],['hiddenSkill','zhu']],
zhanghuyuechen:['male','jin',4,['xijue']],
duyu:['male','jin',4,['sanchen','zhaotao']],
guozhao:['female','wei',3,['pianchong','zunwei']],
hanfu:['male','qun',4,['hfjieying','weipo']],
re_quyi:['male','qun',4,['refuqi','jiaozi']],
dongxie:['female','qun','3/4',['juntun','jiaojie']],
@ -93,7 +94,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
sp_guandu:["sp_zhanghe","xunchen","sp_shenpei","gaolan","lvkuanglvxiang","chunyuqiong","sp_xuyou"],
sp_huangjin:['liuhong','zhujun','re_hejin','re_hansui','liubian'],
sp_fadong:['ol_dingyuan','wangrong','re_quyi','hanfu'],
sp_decade:['wulan','leitong','huaman','wangshuang','wenyang','re_liuzan','re_sunluyu','caobuxing','ol_yujin','re_maliang','xin_baosanniang','re_xinxianying','dongxie'],
sp_decade:['wulan','leitong','huaman','wangshuang','wenyang','re_liuzan','re_sunluyu','caobuxing','ol_yujin','re_maliang','xin_baosanniang','re_xinxianying','dongxie','guozhao'],
sp_mini:["mini_sunquan","mini_zuoci","mini_jiangwei","mini_diaochan","mini_zhangchunhua"],
sp_luanwu:["ns_lijue","ns_zhangji","ns_fanchou"],
sp_yongjian:["ns_chendao","yj_caoang"],
@ -101,6 +102,245 @@ game.import('character',function(lib,game,ui,get,ai,_status){
}
},
skill:{
pianchong:{
audio:2,
trigger:{player:'phaseDrawBegin1'},
filter:function(event,player){
return !event.numFixed;
},
content:function(){
'step 0'
trigger.changeToZero();
var cards=[];
var card1=get.cardPile2(function(card){
return get.color(card,false)=='red';
});
if(card1) cards.push(card1);
var card2=get.cardPile2(function(card){
return get.color(card,false)=='black';
});
if(card2) cards.push(card2);
if(cards.length) player.gain(cards,'gain2');
'step 1'
game.updateRoundNumber();
player.chooseControl('red','black').set('prompt','偏宠:请选择一种颜色。直至你的下回合开始时,失去该颜色的一张牌后,从牌堆获得另一种颜色的一张牌。').set('ai',function(){
var red=0,black=0;
var player=_status.event.player;
var cards=player.getCards('he');
for(var i of cards){
var add=1;
var color=get.color(i,player);
if(get.position(i)=='e') add=0.5;
else if(get.name(i,player)!='sha'&&player.hasValueTarget(i)) add=1.5;
if(color=='red') red+=add;
else black+=add;
}
if(black>red) return 'black';
return 'red';
});
'step 2'
player.storage.pianchong2=result.control;
player.addTempSkill('pianchong2',{player:'phaseBeginStart'});
player.popup(result.control,result.control=='red'?'fire':'thunder');
game.log(player,'声明了','#y'+get.translation(result.control));
},
ai:{
threaten:4.8,
},
},
pianchong2:{
audio:'pianchong',
trigger:{
player:'loseAfter',
global:['equipAfter','addJudgeAfter','gainAfter'],
},
forced:true,
charlotte:true,
onremove:true,
filter:function(event,player){
var evt=event.getl(player);
if(!evt||!evt.cards2||!evt.cards2.length) return false;
for(var i of evt.cards2){
if(get.color(i,player)==player.storage.pianchong2) return true;
}
return false;
},
content:function(){
'step 0'
var num=trigger.getl(player).cards2.filter(function(card){
return get.color(card,player)==player.storage.pianchong2;
}).length;
var cards=[];
while(num--){
var card=get.cardPile2(function(card){
return !cards.contains(card)&&get.color(card,false)!=player.storage.pianchong2;
});
if(card) cards.push(card);
else break;
}
if(cards.length) player.gain(cards,'gain2');
else event.finish();
'step 1'
game.updateRoundNumber();
},
mark:true,
intro:{
content:'失去一张$牌后,从牌堆中获得一张与此牌颜色不同的牌',
},
},
zunwei:{
audio:2,
enable:'phaseUse',
usable:1,
filter:function(event,player){
return !player.storage.zunwei||player.storage.zunwei.length<3;
},
chooseButton:{
dialog:function(event,player){
var list=[
'选择体力值大于你的一名角色',
'选择手牌数大于你的一名角色',
'选择装备数大于你的一名角色',
];
var choiceList=ui.create.dialog('尊位:清选择一项','forcebutton','hidden');
for(var i=0;i<list.length;i++){
if(player.storage.zunwei&&player.storage.zunwei.contains(i)) continue;
var bool=game.hasPlayer(function(current){
return current!=player&&lib.skill.zunwei.backups[i].filterTarget(null,player,current);
});
var str='<div class="popup text" style="width:calc(100% - 10px);display:inline-block">';
if(!bool) str+='<div style="opacity:0.5">';
str+=list[i];
if(!bool) str+='</div>';
str+='</div>';
var next=choiceList.add(str);
next.firstChild.addEventListener(lib.config.touchscreen?'touchend':'click',ui.click.button);
next.firstChild.link=i;
next.firstChild._filterButton=bool;
for(var j in lib.element.button){
next[j]=lib.element.button[i];
}
choiceList.buttons.add(next.firstChild);
}
return choiceList;
},
filter:function(button){
return button._filterButton;
},
backup:function(links){
var next=get.copy(lib.skill.zunwei.backups[links[0]]);
next.audio='zunwei';
next.filterCard=function(){return false};
next.selectCard=-1;
return next;
},
check:function(button){
var player=_status.event.player;
switch(button.link){
case 0:{
var target=game.findPlayer(function(current){
return current.isMaxHp();
});
return (Math.min(target.hp,player.maxHp)-player.hp)*2;
}
case 1:{
var target=game.findPlayer(function(current){
return current.isMaxHandcard();
});
return Math.min(5,target.countCards('h')-player.countCards('h'))*0.8;
}
case 2:{
var target=game.findPlayer(function(current){
return current.isMaxEquip();
});
return (target.countCards('e')-player.countCards('e'))*1.4;
}
}
},
prompt:function(links){
return [
'选择一名体力值大于你的其他角色,将体力值回复至与其相同',
'选择一名手牌数大于你的其他角色,将手牌数摸至与其相同',
'选择一名装备区内牌数大于你的其他角色,依次使用牌堆中的装备牌,直到装备数与其相同',
][links[0]];
},
},
backups:[
{
filterTarget:function(card,player,target){
if(player.isHealthy()) return false;
return target.hp>player.hp;
},
content:function(){
player.recover(target.hp-player.hp);
if(!player.storage.zunwei) player.storage.zunwei=[];
player.storage.zunwei.add(0);
},
ai:{
order:10,
result:{
player:function(player,target){
return (Math.min(target.hp,player.maxHp)-player.hp);
},
},
},
},
{
filterTarget:function(card,player,target){
return target.countCards('h')>player.countCards('h');
},
content:function(){
player.draw(Math.min(5,target.countCards('h')-player.countCards('h')));
if(!player.storage.zunwei) player.storage.zunwei=[];
player.storage.zunwei.add(1);
},
ai:{
order:10,
result:{
player:function(player,target){
return Math.min(5,target.countCards('h')-player.countCards('h'));
},
},
},
},
{
filterTarget:function(card,player,target){
return target.countCards('e')>player.countCards('e');
},
content:function(){
'step 0'
if(!player.storage.zunwei) player.storage.zunwei=[];
player.storage.zunwei.add(2);
event.num=1;
'step 1'
var type='equip'+num;
if(!player.isEmpty(type)) return;
var card=get.cardPile2(function(card){
return get.subtype(card,false)==type&&player.canUse(card,player);
});
if(card) player.chooseUseTarget(card,true).nopopup=true;
'step 2'
game.updateRoundNumber();
event.num++;
if(event.num<=5&&target.isAlive()&&player.countCards('e')<target.countCards('e')) event.goto(1);
},
ai:{
order:10,
result:{
player:function(player,target){
return (target.countCards('e')-player.countCards('e'));
},
},
},
},
],
ai:{
order:10,
result:{
player:1,
},
},
},
xinquanbian:{
audio:'quanbian',
trigger:{player:['useCard','respond']},
@ -8146,6 +8386,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
zhanghuyuechen:'张虎生卒年不详雁门马邑今山西朔城区大夫庄人。三国时期曹魏将领。名将张辽之子。官至偏将军袭封晋阳侯有一子张统。乐綝195~257年字号不详阳平郡卫国县今河南省清丰县人。三国时期曹魏将领右将军乐进的儿子。果毅坚毅袭封广昌亭侯累迁扬州刺史。甘露二年为叛乱的征东大将军诸葛诞所杀追赠卫尉。',
duyu:'杜预222年285年字元凯京兆郡杜陵县今陕西西安中国魏晋时期军事家、经学家、律学家曹魏散骑常侍杜恕之子。杜预初仕曹魏任尚书郎后成为权臣司马昭的幕僚封丰乐亭侯。西晋建立后历任河南尹、安西军司、秦州刺史、度支尚书等职。咸宁四年278年接替羊祜出任镇南大将军镇守荆州。他积极备战支持晋武帝司马炎对孙吴作战并在咸宁五年279年成为晋灭吴之战的统帅之一。战后因功进封当阳县侯仍镇荆州。太康五年285年杜预被征入朝拜司隶校尉途中于邓县逝世终年六十三岁。获赠征南大将军、开府仪同三司谥号为成。杜预耽思经籍博学多通多有建树时誉为“杜武库”。著有《春秋左氏传集解》及《春秋释例》等。为明朝之前唯一一个同时进入文庙和武庙之人。',
xiahouhui:'夏侯徽211年234年字媛容沛国谯县今安徽亳州司马师第一任妻子。征南大将军夏侯尚之女母德阳乡主为大司马曹真之妹。夏侯徽与司马师之间生有五个女儿。夏侯徽很有见识器度每当司马师有什么想法时都由她从旁策划协助。当时司马师之父司马懿位居上将重位而他的儿子们都有雄才大略。夏侯徽深知司马师绝非曹魏忠臣而司马师对出身曹魏家族的夏侯徽也非常顾忌。青龙二年234年正逢“大疫”、“大病”之年夏侯徽被司马师毒杀时年二十四岁死后葬于峻平陵。西晋建国后追谥夏侯徽为景怀皇后。',
guozhao:'郭照,电视剧《军师联盟》中的女主角之一,由唐艺昕饰演。原型为文德皇后郭氏(字女王),魏国皇后,张春华的义妹,深爱曹丕,替甄宓抚育曹叡,因甄宓之死被曹叡记恨,曹丕死后,成为皇太后,被曹叡逼上死路。自尽身亡。',
},
characterTitle:{
wulan:'#b对决限定武将',
@ -8680,6 +8921,13 @@ game.import('character',function(lib,game,ui,get,ai,_status){
gz_jin_xiahouhui:'夏侯徽',
xinquanbian:'权变',
xinquanbian_info:'出牌阶段,每当你首次使用/打出一种花色的手牌时你可以从牌堆顶的X张牌中获得一张与此牌花色不同的牌并将其余牌以任意顺序置于牌堆顶。出牌阶段你至多可使用X张手牌。X为你的体力上限',
guozhao:'郭照',
pianchong:'偏宠',
pianchong2:'偏宠',
pianchong_info:'摸牌阶段开始时,你可放弃摸牌。若如此做,你从牌堆中获得一张红色牌和一张黑色牌。然后你选择一种颜色。你的下回合开始前,当你失去该颜色的一张牌后,你从牌堆中获得另一种颜色的一张牌。',
zunwei:'尊位',
zunwei_backup:'尊位',
zunwei_info:"出牌阶段限一次你可选择本局游戏内未选择过的一项①若你已受伤则你可以选择一名体力值大于你的其他角色你将体力值回复至XX为你的体力上限与其体力值中的较小值②选择一名手牌数大于你的其他角色你将手牌数摸至与其相同至多摸五张③选择一名装备区内牌数大于你的其他角色。你令X=1。若你装备区内的('equip'+X)栏为空,则你使用牌堆中的一张副类别为('equip'+X)且能对自己使用的装备牌。你令X+1。若X不大于5且你装备区内的牌数仍小于目标角色则你重复此流程。",
sp_yingbian:'文德武备',
sp_whlw:"文和乱武",

View File

@ -1,5 +1,5 @@
window.noname_asset_list=[
'v1.9.108.4',
'v1.9.108.4.1',
'audio/background/aozhan_chaoming.mp3',
'audio/background/aozhan_online.mp3',
'audio/background/aozhan_rewrite.mp3',
@ -678,6 +678,7 @@ window.noname_asset_list=[
'audio/die/re_fazheng.mp3',
'audio/die/re_fuhuanghou.mp3',
'audio/die/huaxin.mp3',
'audio/die/guozhao.mp3',
'audio/skill/decadezishou1.mp3',
'audio/skill/decadezishou2.mp3',
@ -2970,6 +2971,10 @@ window.noname_asset_list=[
'audio/skill/wanggui2.mp3',
'audio/skill/xibing1.mp3',
'audio/skill/xibing2.mp3',
'audio/skill/pianchong1.mp3',
'audio/skill/pianchong2.mp3',
'audio/skill/zunwei1.mp3',
'audio/skill/zunwei2.mp3',
'audio/voice/male/0.mp3',
'audio/voice/male/1.mp3',
@ -3726,6 +3731,7 @@ window.noname_asset_list=[
'image/character/re_fazheng.jpg',
'image/character/re_fuhuanghou.jpg',
'image/character/wolongfengchu.jpg',
'image/character/guozhao.jpg',
'image/character/baiwuchang.jpg',
'image/character/baosanniang.jpg',

View File

@ -1,10 +1,8 @@
window.noname_update={
version:'1.9.108.4',
update:'1.9.108.3.3',
version:'1.9.108.4.1',
update:'1.9.108.4',
changeLog:[
'凤咲夜',
'联机快捷语音',
'界法正、界伏皇后、华歆、卧龙凤雏',
'郭照',
'bug修复',
],
files:[
@ -18,7 +16,7 @@ window.noname_update={
//'card/standard.js',
//'card/swd.js',
//'card/yunchou.js',
'card/yingbian.js',
//'card/yingbian.js',
//'card/zhenfa.js',
//'card/zhulu.js',
'character/diy.js',
@ -27,21 +25,21 @@ window.noname_update={
//'character/gujian.js',
//'character/gwent.js',
//'character/hearth.js',
'character/mobile.js',
//'character/mobile.js',
//'character/mtg.js',
'character/old.js',
//'character/old.js',
//'character/ow.js',
'character/rank.js',
'character/refresh.js',
'character/shenhua.js',
'character/sp.js',
//'character/shenhua.js',
//'character/sp.js',
'character/sp2.js',
//'character/tw.js',
'character/standard.js',
//'character/standard.js',
//'character/swd.js',
//'character/xianjian.js',
//'character/xinghuoliaoyuan.js',
'character/yijiang.js',
//'character/yijiang.js',
//'character/yxs.js',
//'extension/boss/extension.js',
//'layout/default/layout.css',
@ -49,15 +47,15 @@ window.noname_update={
//'layout/nova/layout.css',
//'mode/identity.js',
//'mode/doudizhu.js',
'mode/guozhan.js',
//'mode/guozhan.js',
//'mode/chess.js',
//'mode/tafang.js',
//'mode/single.js',
//'mode/stone.js',
//'mode/brawl.js',
'mode/versus.js',
//'mode/versus.js',
//'mode/boss.js',
'game/game.js',
//'game/game.js',
//'game/keyWords.js',
//'game/NoSleep.js',
//'game/config.js',

BIN
image/character/guozhao.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 121 KiB