二袁的末日

This commit is contained in:
Spmario233 2021-02-25 20:26:19 +08:00
parent 18fbb2e73c
commit 4042ece7ac
30 changed files with 516 additions and 26 deletions

BIN
audio/die/gongsunkang.mp3 Normal file

Binary file not shown.

Binary file not shown.

BIN
audio/die/xin_guohuai.mp3 Normal file

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

BIN
audio/skill/taomie1.mp3 Normal file

Binary file not shown.

BIN
audio/skill/taomie2.mp3 Normal file

Binary file not shown.

BIN
audio/skill/taomie3.mp3 Normal file

Binary file not shown.

BIN
audio/skill/xinanjian1.mp3 Normal file

Binary file not shown.

BIN
audio/skill/xinanjian2.mp3 Normal file

Binary file not shown.

BIN
audio/skill/xinduodao1.mp3 Normal file

Binary file not shown.

BIN
audio/skill/xinduodao2.mp3 Normal file

Binary file not shown.

BIN
audio/skill/xinqiuyuan1.mp3 Normal file

Binary file not shown.

BIN
audio/skill/xinqiuyuan2.mp3 Normal file

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@ -6,16 +6,20 @@ game.import('character',function(lib,game,ui,get,ai,_status){
connect:true,
characterSort:{
mobile:{
mobile_default:["miheng","taoqian","lingcao","sunru","lifeng","zhuling","liuye","zhaotongzhaoguang","majun","simazhao","wangyuanji","pangdegong","shenpei","hujinding","zhangyì","jiakui","yangbiao","chendeng","dongcheng","yangyi","dengzhi","zhengxuan","sp_sufei","furong","dingyuan","simashi","yanghuiyu","hucheer"],
mobile_default:["miheng","taoqian","lingcao","sunru","lifeng","zhuling","liuye","zhaotongzhaoguang","majun","simazhao","wangyuanji","pangdegong","shenpei","hujinding","zhangyì","jiakui","yangbiao","chendeng","dongcheng","yangyi","dengzhi","zhengxuan","sp_sufei","furong","dingyuan","simashi","yanghuiyu","hucheer","gongsunkang"],
mobile_yijiang:["yj_zhanghe","yj_zhangliao","yj_xuhuang","yj_ganning"],
mobile_sunben:["re_sunben"],
mobile_standard:["xin_xiahoudun","xin_zhangfei"],
mobile_shenhua:["re_pangtong","re_guanqiujian","xin_yuanshao","re_liushan","re_dongzhuo","re_sp_zhugeliang","re_sunjian"],
mobile_yijiang1:["re_jikang","old_bulianshi","xin_liaohua","xin_caozhang","re_xusheng","xin_chengpu","xin_jianyong","xin_gongsunzan","xin_zhuran","re_lingtong","re_liubiao"],
mobile_yijiang1:["re_jikang","old_bulianshi","xin_liaohua","xin_caozhang","re_xusheng","xin_chengpu","xin_jianyong","xin_gongsunzan","xin_zhuran","re_lingtong","re_liubiao","xin_guohuai","xin_panzhangmazhong","xin_fuhuanghou"],
mobile_sp:["old_yuanshu","re_wangyun","re_baosanniang","re_weiwenzhugezhi","re_zhanggong","re_xugong","re_heqi","liuzan","xin_hansui"],
},
},
character:{
xin_fuhuanghou:['female','qun',3,['xinzhuikong','xinqiuyuan']],
xin_panzhangmazhong:['male','wu',4,['xinduodao','xinanjian']],
xin_guohuai:['male','wei',4,['mobilejingce']],
gongsunkang:['male','qun',4,['juliao','taomie']],
xin_zhangfei:['male','shu',4,['new_repaoxiao','liyong']],
xin_hansui:['male','qun',4,['xinniluan','xiaoxi_hansui']],
hucheer:['male','qun',4,['daoji']],
@ -84,6 +88,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
re_sunben:['male','wu',4,['jiang','rehunzi','zhiba'],['zhu']],
},
characterIntro:{
gongsunkang:'公孙康生卒年不详辽东襄平今辽宁辽阳人。东汉末年辽东地区割据军阀辽东太守公孙度长子一作庶子、车骑将军公孙恭之兄。公孙康在其父死后继任辽东太守。建安十二年207年擒斩图谋不轨的袁尚、袁熙兄弟将其首级献予曹操被拜为左将军封襄平侯。建安十四年209年公孙康大破高句丽陷其国都并讨伐韩濊设置带方郡。死后因二子年幼由公孙恭继任。曹丕称帝后被追赠为大司马。',
hucheer:'胡车儿(生卒年不详),东汉末年武将,初从张绣,为其心腹猛将,勇冠三军,与贾诩交情甚佳。宛城大战后,张绣投降曹操,曹操爱胡车儿之骁勇,手以黄金与之。后因曹操私纳张绣亡叔张济的遗孀邹氏,张绣深感其辱,欲杀曹操,与贾诩商议后决心反曹。《三国演义》中,作者考虑到典韦的勇猛,便增加了令胡车儿盗走典韦的双戟的情节。最终典韦、曹昂(曹操长子)、曹安民(曹操侄子)皆死于此次战斗。野史说胡车儿跟随曹操征战,被赵云在长坂坡上红枪挑死。',
simashi:'司马师208年255年3月23日字子元河内温县今河南省温县人。三国时期曹魏权臣西晋王朝的奠基人之一晋宣帝司马懿与宣穆皇后张春华的长子晋文帝司马昭的同母兄晋武帝司马炎的伯父。司马师沉着坚强雄才大略早年与夏侯玄、何晏齐名。高平陵政变后以功封长平乡侯旋加卫将军。司马懿死后以抚军大将军辅政独揽朝廷大权次年升为大将军。掌权后他制定选拔官吏的法规命百官推荐贤才整顿纲纪使其各有职掌朝野肃然。司马师也有卓越的军事才能曾用计于新城之战击溃吴国诸葛恪的大军。嘉平六年254年魏帝曹芳与中书令李丰等人密谋除司马师事情泄露司马师杀死参与者迫郭太后废曹芳改立高贵乡公曹髦为帝。次年亲自率兵平定毌丘俭、文钦之乱。回师途中病死时年四十八岁谥号“忠武”。后被追尊为晋景王。西晋建立后被追尊为景皇帝庙号世宗。',
yanghuiyu:'羊徽瑜214年278年泰山南城今山东新泰晋景帝司马师第三任妻子。羊徽瑜出身官宦世家泰山羊氏她是南阳太守羊续的孙女上党太守羊衜之女其母为东汉名士左中郎将蔡邕之女、蔡文姬的姐妹。羊徽瑜聪慧贤德嫁给司马师后未有子女。以司马师之弟司马昭的次子司马攸为继子。司马师死后司马攸侍奉羊徽瑜非常孝顺。泰始元年265年司马昭长子司马炎受禅登基建立西晋追谥伯父司马师为景皇帝。泰始二年266年尊奉羊徽瑜为景皇后因居弘训宫故称弘训太后。咸宁四年278年羊徽瑜去世时年六十五岁谥号景献皇后与司马师合葬峻平陵。',
@ -314,6 +319,403 @@ game.import('character',function(lib,game,ui,get,ai,_status){
},
},
skill:{
//界伏皇后
xinzhuikong:{
audio:2,
trigger:{global:'phaseZhunbeiBegin'},
check:function(event,player){
if(get.attitude(player,event.player)<-2){
var cards=player.getCards('h');
if(cards.length>player.hp) return true;
for(var i=0;i<cards.length;i++){
var useful=get.useful(cards[i]);
if(useful<5) return true;
if(cards[i].number>7&&useful<7) return true;
}
}
return false;
},
logTarget:'player',
filter:function(event,player){
return !player.hasSkill('xinzhuikong2')&&player.hp<=event.player.hp&&player.canCompare(event.player);
},
content:function(){
"step 0"
player.addTempSkill('xinzhuikong2','roundStart');
player.chooseToCompare(trigger.player).set('small',(player.hp>1&&get.effect(player,{name:'sha'},trigger.player,player)>0&&Math.random()<0.9));
"step 1"
if(result.bool){
trigger.player.addTempSkill('zishou2');
event.finish();
}
else if(result.target&&get.position(result.target)=='d') player.gain(result.target,'gain2','log');
"step 2"
var card={name:'sha',isCard:true};
if(trigger.player.canUse(card,player,false)) trigger.player.useCard(card,player,false);
},
},
xinzhuikong2:{charlotte:true},
xinqiuyuan:{
audio:2,
trigger:{target:'useCardToTarget'},
direct:true,
filter:function(event,player){
return event.card.name=='sha';
},
content:function(){
"step 0"
player.chooseTarget(get.prompt2('xinqiuyuan'),function(card,player,target){
return target!=player&&!_status.event.targets.contains(target)&&_status.event.playerx.canUse('sha',target,false);
}).set('ai',function(target){
var trigger=_status.event.getTrigger();
var player=_status.event.player;
return get.effect(target,trigger.card,trigger.player,player)+0.1;
}).set('targets',trigger.targets).set('playerx',trigger.player);
"step 1"
if(result.bool){
var target=result.targets[0];
player.logSkill('xinqiuyuan',target);
event.target=target;
target.chooseCard(function(card,player){
var name=get.name(card,player);
return name!='sha'&&get.type(name)=='basic';
},'h','交给'+get.translation(player)+
'一张不为【杀】的基本牌,或成为此杀的额外目标').set('ai',function(card){
return get.attitude(target,_status.event.sourcex)>=0?1:-1;
}).set('sourcex',player);
game.delay();
}
else{
event.finish();
}
"step 2"
if(result.bool){
player.gain(result.cards,event.target,'give');
game.delay();
}
else{
trigger.getParent().targets.push(event.target);
trigger.getParent().triggeredTargets2.push(event.target);
game.log(event.target,'成为了',trigger.card,'的额外目标');
}
},
ai:{
expose:0.2,
effect:{
target:function(card,player,target){
if(card.name!='sha') return;
var players=game.filterPlayer();
if(get.attitude(player,target)<=0){
for(var i=0;i<players.length;i++){
var target2=players[i];
if(player!=target2&&target!=target2&&player.canUse(card,target2,false)&&
get.effect(target2,{name:'shacopy',nature:card.nature,suit:card.suit},player,target)>0&&
get.effect(target2,{name:'shacopy',nature:card.nature,suit:card.suit},player,player)<0){
if(target.hp==target.maxHp) return 0.3;
return 0.6;
}
}
}
else{
for(var i=0;i<players.length;i++){
var target2=players[i];
if(player!=target2&&target!=target2&&player.canUse(card,target2,false)&&
get.effect(target2,{name:'shacopy',nature:card.nature,suit:card.suit},player,player)>0){
if(player.canUse(card,target2)) return;
if(target.hp==target.maxHp) return [0,1];
return [0,0];
}
}
}
}
}
}
},
//界潘璋马忠
xinduodao:{
audio:2,
trigger:{player:'damageEnd'},
logTarget:'source',
filter:function(event,player){
var source=event.source;
if(!source) return false;
var card=source.getEquip(1);
return card&&get.itemtype(card)=='card'&&lib.filter.canBeGained(card,player,source);
},
prompt2:function(event){
return '获得其装备区中的'+get.translation(event.source.getEquip(1));
},
check:function(event,player){
return (get.attitude(player,event.source)+0.1)*get.value(event.source.getEquip(1),event.source);
},
content:function(){
player.gain(trigger.source.getEquip(1),trigger.source,'give','bySelf');
},
},
xinanjian:{
audio:2,
trigger:{player:'useCardToPlayered'},
forced:true,
logTarget:'player',
filter:function(event,player){
return event.card.name=='sha'&&!player.inRangeOf(event.target);
},
content:function(){
'step 0'
var card=get.translation(trigger.card);
var target=get.translation(trigger.target);
player.chooseControl().set('prompt','暗箭:请选择一项').set('choiceList',[
'令'+target+'不能响应'+card,
'令'+card+'对'+target+'的伤害值基数+1',
]).set('ai',function(){
var target=_status.event.getTrigger().target;
var player=_status.event.player;
var num=target.mayHaveShan()?0:1;
if(get.attitude(player,target)>0) num=1-num;
return num;
});
'step 1'
if(result.index==0){
game.log(player,'令',trigger.card,'不能被',trigger.target,'响应');
trigger.directHit.push(trigger.target);
}
else{
game.log(player,'令',trigger.card,'对',trigger.target,'的伤害+1');
var id=trigger.target.playerid;
var map=trigger.customArgs;
if(!map[id]) map[id]={};
if(!map[id].extraDamage) map[id].extraDamage=0;
map[id].extraDamage++;
}
},
ai:{
directHit_ai:true,
skillTagFilter:function(player,tag,arg){
if(!arg||!arg.card||!arg.target||arg.card.name!='sha'||arg.target.inRange(player)||get.attitude(player,arg.target)>0) return false;
},
},
},
//界郭笨
mobilejingce:{
audio:2,
trigger:{player:'phaseJieshuBegin'},
frequent:true,
filter:function(event,player){
var num=0;
game.getGlobalHistory('cardMove',function(evt){
if(evt.name!='cardsDiscard') return;
var evtx=evt.getParent();
if(evtx.name!='orderingDiscard') return false;
var evt2=(evtx.relatedEvent||evtx.getParent());
if(evt2&&(evt2.name=='useCard'||evt2.name=='respond')) num+=evt.cards.length;
});
return num>=player.hp;
},
content:function(){
player.draw(2);
},
group:'mobilejingce_count',
intro:{
content:function(num,player){
if(num==0) return '一张都没有?就这?';
if(num<player.hp) return '才'+get.cnNumber(num)+'张?就这?';
return '卧槽,牛逼啊,居然'+get.cnNumber(num)+'张了!';
},
},
},
mobilejingce_count:{
trigger:{
global:['cardsDiscardEnd','phaseBefore'],
player:'phaseAfter',
},
silent:true,
firstDo:true,
filter:function(evt,player){
if(evt.name=='phase') return true;
if(player!=_status.currentPhase) return false;
var evtx=evt.getParent();
if(evtx.name!='orderingDiscard') return false;
var evt2=(evtx.relatedEvent||evtx.getParent());
return (evt2&&(evt2.name=='useCard'||evt2.name=='respond'))
},
content:function(){
if(trigger.name=='phase') player.unmarkSkill('mobilejingce');
else{
var num=0;
game.getGlobalHistory('cardMove',function(evt){
if(evt.name!='cardsDiscard') return;
var evtx=evt.getParent();
if(evtx.name!='orderingDiscard') return false;
var evt2=(evtx.relatedEvent||evtx.getParent());
if(evt2&&(evt2.name=='useCard'||evt2.name=='respond')) num+=evt.cards.length;
});
player.storage.mobilejingce=num;
player.markSkill('mobilejingce');
}
},
},
//公孙康
juliao:{
mod:{
globalTo:function(from,to,distance){
return distance+game.countGroup()-1;
},
},
},
taomie:{
audio:3,
group:['taomie1','taomie2','taomie3'],
trigger:{source:'damageBegin1'},
forced:true,
locked:false,
direct:true,
filter:function(event,player){
return event.player.hasMark('taomie');
},
content:function(){
'step 0'
player.logSkill(Math.random()<0.5?'taomie2':'taomie3',trigger.player);
var target=get.translation(trigger.player);
player.chooseControl().set('prompt','讨灭:请选择一项').set('choiceList',[
'令即将对'+target+'造成的伤害+1',
'获得'+target+'的一张牌,并可将其交给另一名其他角色',
'依次执行以上所有选项,并移去'+target+'的“讨灭”标记',
]).set('ai',function(){
var evt=_status.event.getTrigger();
var player=_status.event.player;
var target=evt.player;
var bool1=!target.hasSkillTag('filterDamage',null,{
player:player,
card:evt.card,
});
var bool2=get.effect(target,{name:'shunshou'},player,player)>0;
if(bool1&&bool2&&target.hp<=evt.num+1) return 2;
if(bool1) return 0;
return 1;
});
'step 1'
if(result.index==2){
trigger.taomie_player=trigger.player;
trigger.player.addTempSkill('taomie4');
}
if(result.index!=1){
trigger.num++;
}
if(result.index!=0&&trigger.player.countGainableCards(player,'hej')>0){
player.gainPlayerCard(trigger.player,'hej',true);
}
else event.finish();
'step 2'
var card=result.cards[0];
if(card&&player.getCards('h').contains(card)&&game.hasPlayer(function(current){
return current!=player&&current!=trigger.player;
})){
event.card=card;
player.chooseTarget('是否将'+get.translation(card)+'交给一名其他角色?',function(card,player,target){
return target!=player&&target!=_status.event.getTrigger().player;
}).set('ai',function(target){
var player=_status.event.player;
var card=_status.event.getParent().card;
if(target.hasSkillTag('nogain')||!player.needsToDiscard()||(get.tag(card,'damage')&&player.hasValueTarget(card,null,false)&&get.effect(_status.event.getTrigger().player,card,null,false)>0)) return 0;
return get.attitude(player,target)/(1+target.countCards('h'));
});
}
else event.finish();
'step 3'
if(result.bool){
var target=result.targets[0];
player.line(target);
target.gain(card,player,'giveAuto');
}
},
intro:{
content:'mark',
},
ai:{
effect:{
player:function(card,player,target){
if(target&&get.tag(card,'damage')&&target.hasMark('taomie')){
if(player.hasSkillTag('jueqing',false,target)) return;
if(get.attitude(player,target)>0){
return 0.7;
}
return 1.2;
}
},
},
},
},
taomie1:{
audio:true,
trigger:{
player:'damageEnd',
source:'damageSource',
},
logTarget:function(trigger,player){
if(player==trigger.player) return trigger.source;
return trigger.player;
},
filter:function(event,player){
var target=lib.skill.taomie1.logTarget(event,player);
return target&&target.isAlive()&&!target.hasMark('taomie');
},
check:function(event,player){
var target=lib.skill.taomie1.logTarget(event,player);
if(get.attitude(player,target)>0) return false;
var target0=game.findPlayer(function(current){
return current.hasMark('taomie');
});
if(!target0) return true;
var eff1=0,eff2=0;
player.countCards('h',function(card){
if(!get.tag(card,'damage')) return false;
if(player.hasValueTarget(card,null,true)>0){
if(player.canUse(card,target,null,true)){
var eff=get.effect(target,card,player,player);
if(eff>0) eff1+=eff;
}
if(player.canUse(card,target0,null,true)){
var eff=get.effect(target0,card,player,player);
if(eff>0) eff2+=eff;
}
}
});
return eff1>eff2;
},
prompt2:function(event,player){
var target=lib.skill.taomie1.logTarget(event,player);
var str='令'+get.translation(target)+'获得“讨灭”标记';
if(game.hasPlayer(function(current){
return current.hasMark('taomie');
})) str+=',并移去场上已有的“讨灭”标记';
return str;
},
content:function(){
game.countPlayer(function(current){
var num=current.countMark('taomie');
if(num) current.removeMark('taomie');
});
lib.skill.taomie1.logTarget(trigger,player).addMark('taomie',1);
},
},
taomie2:{audio:true},
taomie3:{audio:true},
taomie4:{
trigger:{
global:['damageAfter','damageCancelled','damageZero'],
player:'dieBegin',
},
forced:true,
popup:false,
charlotte:true,
filter:function(event,player){
return player.hasMark('taomie')&&(event.name=='die'||event.taomie_player==player);
},
content:function(){
player.removeMark('taomie',player.countMark('taomie'));
player.removeSkill('taomie2');
},
},
//铁骑飞
liyong:{
audio:'retishen',
@ -6629,6 +7031,28 @@ game.import('character',function(lib,game,ui,get,ai,_status){
liyong2:'厉勇',
liyong3:'厉勇',
liyong_info:'锁定技,若你于出牌阶段使用的【杀】被【闪】抵消,本阶段你下一张【杀】不可被响应且伤害+1指定的目标本回合非锁定技失效当此【杀】造成伤害后若目标角色未死亡你失去1点体力。',
gongsunkang:'公孙康',
juliao:'据辽',
juliao_info:'锁定技,其他角色计算与你的距离始终+XX为场上势力数-1。',
taomie:'讨灭',
taomie1:'讨灭',
taomie2:'讨灭',
taomie3:'讨灭',
taomie4:'讨灭',
taomie_info:'当你受到伤害后或当你造成伤害后你可以令伤害来源或受伤角色获得“讨灭”标记如场上已有标记则转换给该角色当你对有“讨灭”标记的角色造成伤害时选择一项1. 此伤害+12. 你获得其区域内的一张牌并可将之交给另一名角色3. 依次执行前两项并于伤害结算后弃置其“讨灭”标记。',
xin_guohuai:'手杀郭淮',
mobilejingce:'精策',
mobilejingce_info:'结束阶段,若此回合因使用或打出而置入弃牌堆的牌的数量不小于你的体力值,则你可以摸两张牌。',
xin_panzhangmazhong:'手杀潘璋马忠',
xinduodao:'夺刀',
xinduodao_info:'当你受到伤害后,你可以获得伤害来源装备区里的武器牌。',
xinanjian:'暗箭',
xinanjian_info:'锁定技当你使用【杀】指定目标后若你不在目标角色攻击范围内你选择一项1. 令其无法响应此【杀】2. 其受到此【杀】造成的伤害+1。',
xin_fuhuanghou:'手杀伏皇后',
xinzhuikong:'惴恐',
xinzhuikong_info:'每轮限一次,其他角色的回合开始时,若其体力值不小于你,你可与其拼点。若你赢,其本回合无法使用牌指定除其以外的角色为目标;若你没赢,你获得其拼点的牌,然后其视为对你使用一张【杀】。',
xinqiuyuan:'求援',
xinqiuyuan_info:'当你成为【杀】的目标时,你可以令另一名其他角色交给你一张除【杀】以外的基本牌,否则其也成为此【杀】的目标。',
mobile_standard:'手杀异构·标准包',
mobile_shenhua:'手杀异构·神话再临',
mobile_yijiang1:'手杀异构·一将成名',

View File

@ -244,6 +244,7 @@ window.noname_character_rank={
'shamoke',
'diy_wenyang',
'xin_lingtong',
'wolongfengchu',
'key_misuzu',
'key_sunohara',
'key_umi',
@ -806,6 +807,8 @@ window.noname_character_rank={
'ns_sunchensunjun',
'simashi',
'yanghuiyu',
'xin_panzhangmazhong',
're_xiaoqiao',
],
bm:[
'diy_xizhenxihong',
@ -817,7 +820,6 @@ window.noname_character_rank={
'ganning',
'caocao',
'huangzhong',
're_xiaoqiao',
'xuhuang',
'chendao',
'dongzhuo',
@ -908,6 +910,7 @@ window.noname_character_rank={
're_liaohua',
're_caozhang',
're_guohuai',
'xin_guohuai',
're_panzhangmazhong',
're_quancong',
'jsp_guanyu',
@ -946,7 +949,7 @@ window.noname_character_rank={
'hucheer',
'jin_xiahouhui',
'xin_zhangfei',
'wolongfengchu',
'xin_fuhuanghou',
],
c:[
'xiahoudun',
@ -1550,6 +1553,8 @@ window.noname_character_rank={
'zhanghuyuechen',
're_fazheng',
're_fuhuanghou',
'gongsunkang',
'xin_panzhangmazhong',
],
junk:[
'sunshao',

View File

@ -310,7 +310,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
var target=trigger.source;
if(target.isAlive()&&event.count>0) player.chooseBool(get.prompt('reenyuan',target),'令该角色选择一项①失去1点体力。②交给你一张手牌。若此牌不为♥则你摸一张牌。').set('ai',function(){
var evt=_status.event.getTrigger();
return lib.skill.reenyuan2.check(evt.player,evt.source);
return lib.skill.reenyuan2.check(evt,evt.player);
});
else event.finish();
'step 5'

View File

@ -22,7 +22,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
re_xiahouyuan:['male','wei',4,['xinshensu']],
huangzhong:['male','shu',4,['liegong']],
re_weiyan:['male','shu',4,['xinkuanggu','qimou']],
re_xiaoqiao:['female','wu',3,['retianxiang','hongyan']],
re_xiaoqiao:['female','wu',3,['retianxiang','xinhongyan']],
sp_zhangjiao:['male','qun',3,['releiji','guidao','huangtian'],['zhu']],
re_yuji:["male","qun",3,["xinfu_guhuo"],["forbidai"]],
// yuji:['male','qun',3,['guhuo']],
@ -6393,6 +6393,61 @@ game.import('character',function(lib,game,ui,get,ai,_status){
}
}
},
xinhongyan:{
audio:2,
mod:{
suit:function(card,suit){
if(suit=='spade') return 'heart';
}
},
trigger:{global:'judge'},
direct:true,
filter:function(event,player){
if(event.fixedResult&&event.fixedResult.suit) return event.fixedResult.suit=='heart';
return get.suit(event.player.judging[0],event.player)=='heart';
},
content:function(){
"step 0"
var str='红颜:'+get.translation(trigger.player)+'的'+(trigger.judgestr||'')+'判定为'+
get.translation(trigger.player.judging[0])+',请将其改为一种花色';
player.chooseControl('spade','heart','diamond','club').set('prompt',str).set('ai',function(){
var judging=_status.event.judging;
var trigger=_status.event.getTrigger();
var res1=trigger.judge(judging);
var list=lib.suit.slice(0);
var attitude=get.attitude(player,trigger.player);
if(attitude==0) return 0;
var getj=function(suit){
return trigger.judge({
name:get.name(judging),
nature:get.nature(judging),
suit:suit,
number:get.number(judging),
})
};
list.sort(function(a,b){
return (getj(b)-getj(a))*get.sgn(attitude);
});
return list[0];
}).set('judging',trigger.player.judging[0]);
"step 1"
if(result.control!='cancel2'){
player.addExpose(0.25);
player.popup(result.control);
game.log(player,'将判定结果改为了','#y'+get.translation(result.control+2));
if(!trigger.fixedResult) trigger.fixedResult={};
trigger.fixedResult.suit=result.control;
trigger.fixedResult.color=get.color({suit:result.control});
}
},
ai:{
rejudge:true,
tag:{
rejudge:0.4,
},
expose:0.5,
},
},
gzbuqu:{
audio:2,
trigger:{player:'changeHp'},
@ -7678,6 +7733,8 @@ game.import('character',function(lib,game,ui,get,ai,_status){
"guhuo_wuxie_info":"",
"guhuo_phase":"蛊惑",
"guhuo_phase_info":"",
xinhongyan:'红颜',
xinhongyan_info:'锁定技,你的♠牌和♠判定牌的花色视为♥。一名角色的判定结果生效前,若判定结果为♥,则你将其改为一种花色。',
shenhua_feng:'神话再临·风',
shenhua_huo:'神话再临·火',

View File

@ -457,9 +457,11 @@ game.import('character',function(lib,game,ui,get,ai,_status){
'step 2'
if(result.bool){
player.line(result.targets[0],'green');
game.asyncDraw([player,result.targets[0]]);
game.delay();
game.asyncDraw([player,result.targets[0]].sortBySeat());
}
else event.finish();
'step 3'
game.delay();
},
},
waishi:{

View File

@ -9394,6 +9394,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
return player!=target;
},
mark:true,
delay:false,
content:function(){
"step 0"
player.awakenSkill('xianzhou');
@ -12143,9 +12144,9 @@ game.import('character',function(lib,game,ui,get,ai,_status){
liubiao:['re_liubiao','xin_liubiao','liubiao'],
manchong:['re_manchong','manchong'],
caochong:['caochong','old_caochong'],
guohuai:['guohuai','re_guohuai','ol_guohuai'],
guohuai:['guohuai','re_guohuai','xin_guohuai','ol_guohuai'],
jianyong:['re_jianyong','xin_jianyong','jianyong'],
panzhangmazhong:['re_panzhangmazhong','panzhangmazhong'],
panzhangmazhong:['xin_panzhangmazhong','re_panzhangmazhong','panzhangmazhong'],
yufan:['re_yufan','yufan'],
zhuran:['re_zhuran','xin_zhuran','zhuran','old_zhuran'],
liru:['re_liru','xin_liru','liru'],

View File

@ -1,5 +1,5 @@
window.noname_asset_list=[
'v1.9.108.4.2',
'v1.9.108.5',
'audio/background/aozhan_chaoming.mp3',
'audio/background/aozhan_online.mp3',
'audio/background/aozhan_rewrite.mp3',
@ -3742,6 +3742,10 @@ window.noname_asset_list=[
'image/character/key_chihaya.jpg',
'image/character/key_rumi.jpg',
'image/character/key_youta.jpg',
'image/character/gongsunkang.jpg',
'image/character/xin_fuhuanghou.jpg',
'image/character/xin_guohuai.jpg',
'image/character/xin_panzhangmazhong.jpg',
'image/character/baiwuchang.jpg',
'image/character/baosanniang.jpg',

View File

@ -1,10 +1,8 @@
window.noname_update={
version:'1.9.108.4.2.1',
update:'1.9.108.4.2',
version:'1.9.108.5',
update:'1.9.108.4.2.1',
changeLog:[
'成神阳太、凤千早、七濑留美',
'小酒表情包',
'孙笨(国战)语音',
'公孙康,手杀郭淮、潘璋马忠、伏皇后,新小乔',
'bug修复',
],
files:[
@ -12,7 +10,7 @@ window.noname_update={
//'card/gujian.js',
//'card/guozhan.js',
//'card/gwent.js',
'card/huanlekapai.js',
//'card/huanlekapai.js',
//'card/mtg.js',
//'card/sp.js',
//'card/standard.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/ow.js',
//'character/rank.js',
//'character/refresh.js',
//'character/shenhua.js',
'character/rank.js',
'character/refresh.js',
'character/shenhua.js',
//'character/sp.js',
//'character/sp2.js',
//'character/tw.js',
'character/tw.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',

Binary file not shown.

After

Width:  |  Height:  |  Size: 104 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 95 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 83 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 94 KiB

View File

@ -1101,7 +1101,6 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
if(list.length) player.group=function(){
if(_status.mode!='zhong'&&game.zhu&&game.zhu.group){
if(['re_zhangjiao','liubei','re_liubei','caocao','re_caocao','sunquan','re_sunquan','zhangjiao','sp_zhangjiao','caopi','re_caopi','liuchen','caorui','sunliang','sunxiu','sunce','re_sunben','ol_liushan','re_liushan','key_akane','dongzhuo','re_dongzhuo','ol_dongzhuo','jin_simashi'].contains(game.zhu.name)) return game.zhu.group;
if(game.zhu.name=='sunhao'&&player.identity=='zhong') return 'wu';
if(game.zhu.name=='yl_yuanshu'){
if(player.identity=='zhong') list.remove('qun');
else return 'qun';
@ -2072,8 +2071,8 @@ game.import('mode',function(lib,game,ui,get,ai,_status){
else if(result[i]=='ai') result[i]=function(){
var player=lib.playerOL[i];
var list=['wei','shu','wu','qun','jin','key'];
for(var i=0;i<list.length;i++){
if(!lib.group.contains(list[i])) list.splice(i--,1);
for(var ix=0;ix<list.length;ix++){
if(!lib.group.contains(list[ix])) list.splice(ix--,1);
}
if(_status.mode!='zhong'&&game.zhu&&game.zhu.group){
if(['re_zhangjiao','liubei','re_liubei','caocao','re_caocao','sunquan','re_sunquan','zhangjiao','sp_zhangjiao','caopi','re_caopi','liuchen','caorui','sunliang','sunxiu','sunce','re_sunben','ol_liushan','re_liushan','key_akane','dongzhuo','re_dongzhuo','ol_dongzhuo','jin_simashi'].contains(game.zhu.name)) return game.zhu.group;