v1.9.96.2

This commit is contained in:
Spmario233 2019-12-12 13:00:00 +08:00 committed by GitHub
parent 1e32d426bd
commit 349a9c728d
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
5 changed files with 677 additions and 16 deletions

View File

@ -386,7 +386,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
});
"step 1"
if(result.control!='cancel2'){
player.logSkill('rexingshang');
player.logSkill(event.name,trigger.player);
if(result.control=='获得牌'){
event.togain=trigger.player.getCards('he');
player.gain(event.togain,trigger.player,'giveAuto');

View File

@ -239,7 +239,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
event.card=result.cards[0];
event.prompt=get.translation(player)+'声明了'+get.translation(event.name)+',是否质疑?';
event.guessers=game.filterPlayer(function(current){
return current!=player;
return current!=player&&current.hp>0;
});
event.guessers.sort(lib.sort.seat);
event.ally=[];

View File

@ -2,6 +2,12 @@
game.import('character',function(lib,game,ui,get,ai,_status){
return {
name:'refresh',
characterSort:{
refresh:{
refresh_standard:["re_caocao","re_simayi","re_guojia","re_lidian","re_zhangliao","re_xuzhu","re_xiahoudun","re_zhangfei","re_zhaoyun","re_guanyu","re_machao","re_xushu","re_zhouyu","re_lvmeng","re_ganning","re_luxun","re_daqiao","re_huanggai","re_lvbu","re_gongsunzan","re_huatuo","re_liubei","re_diaochan","re_huangyueying","re_sunquan","re_sunshangxiang","re_zhenji","re_zhugeliang","re_huaxiong"],
refresh_ol:["re_zhangjiao","xin_yuji","re_zuoci"],
},
},
connect:true,
character:{
re_caocao:['male','wei',4,['hujia','new_rejianxiong'],['zhu']],
@ -35,12 +41,587 @@ game.import('character',function(lib,game,ui,get,ai,_status){
re_huaxiong:["male","qun",6,["new_reyaowu"]],
re_zhangjiao:['male','qun',3,['xinleiji','xinguidao','huangtian'],['zhu']],
xin_yuji:['male','qun',3,['reguhuo']],
re_zuoci:['male','qun',3,['rehuashen','rexinsheng']],
},
characterIntro:{
re_gongsunzan:'群雄之一。出身贵族,因母地位卑贱,只当了郡中小吏。他貌美,声音洪亮,机智善辩。后随卢植于缑氏山中读书,粗通经传。',
re_lidian:'字曼成,曹操麾下将领。李典深明大义,不与人争功,崇尚学习与高贵儒雅,尊重博学之士,在军中被称为长者。李典有长者之风,官至破虏将军,三十六岁去世。魏文帝曹丕继位后追谥号为愍侯。',
},
characterFilter:{
re_zuoci:function(mode){
return mode=='identity'||mode=='single';
}
},
skill:{
rehuashen:{
mode:['identity','single'],
audio:'huashen1',
unique:true,
direct:true,
content:function(){
"step 0"
event.videoId=lib.status.videoId++;
var cards=player.storage.rehuashen.character.slice(0);
if(player.isOnline2()){
player.send(function(cards,id){
var dialog=ui.create.dialog('是否发动【化身】?',[cards,'character']);
dialog.videoId=id;
},cards,event.videoId);
}
event.dialog=ui.create.dialog(get.prompt('rehuashen'),[cards,'character']);
event.dialog.videoId=event.videoId;
if(!event.isMine()){
event.dialog.style.display='none';
}
if(event.triggername=='rehuashen') event._result={control:'更换技能'};
else player.chooseControl('弃置化身','更换技能','cancel2');
"step 1"
event.control=result.control;
if(event.control=='cancel2'){
if(player.isOnline2()){
player.send('closeDialog',event.videoId);
}
event.dialog.close();
event.finish();return;
}
if(!event.logged){player.logSkill('rehuashen');event.logged=true}
var next=player.chooseButton(true).set('dialog',event.videoId);
if(event.control=='弃置化身'){
next.set('selectButton',[1,2]);
next.set('filterButton',function(button){
return button.link!=_status.event.current;
});
next.set('current',player.storage.rehuashen.current);
}
var prompt=event.control=='弃置化身'?'选择弃置至多两张化身':'选择要切换的化身';
var func=function(id,prompt){
var dialog=get.idDialog(id);
if(dialog){
dialog.content.childNodes[0].innerHTML=prompt;
}
}
if(player.isOnline2()){
player.send(func,event.videoId,prompt);
}
else if(event.isMine()){
func(event.videoId,prompt);
}
"step 2"
if(result.bool&&event.control!='弃置化身'){
event.card=result.links[0];
var func=function(card,id){
var dialog=get.idDialog(id);
if(dialog){
for(var i=0;i<dialog.buttons.length;i++){
if(dialog.buttons[i].link==card){
dialog.buttons[i].classList.add('selectedx');
}
else{
dialog.buttons[i].classList.add('unselectable');
}
}
}
}
if(player.isOnline2()){
player.send(func,event.card,event.videoId);
}
else if(event.isMine()){
func(event.card,event.videoId);
}
var list=player.storage.rehuashen.map[event.card].slice(0);
list.push('返回');
player.chooseControl(list);
}
else{
lib.skill.rehuashen.removeHuashen(player,result.links.slice(0));
lib.skill.rehuashen.addHuashens(player,result.links.length);
}
"step 3"
if(result.control=='返回'){
var func=function(id){
var dialog=get.idDialog(id);
if(dialog){
for(var i=0;i<dialog.buttons.length;i++){
dialog.buttons[i].classList.remove('selectedx');
dialog.buttons[i].classList.remove('unselectable');
}
}
}
if(player.isOnline2()){
player.send(func,event.videoId);
}
else if(event.isMine()){
func(event.videoId);
}
event._result={control:'更换化身'};
event.goto(1);
return;
}
if(player.isOnline2()){
player.send('closeDialog',event.videoId);
}
event.dialog.close();
if(event.control=='弃置化身') return;
if(player.storage.rehuashen.current!=event.card){
player.storage.rehuashen.current=event.card;
game.broadcastAll(function(character,player){
player.sex=lib.character[character][0];
player.group=lib.character[character][1];
player.node.name.dataset.nature=get.groupnature(player.group);
},event.card,player);
}
var link=result.control;
player.storage.rehuashen.current2=link;
if(!player.additionalSkills.rehuashen||!player.additionalSkills.rehuashen.contains(link)){
player.addAdditionalSkill('rehuashen',link);
player.flashAvatar('rehuashen',event.card);
game.log(player,'获得技能','#g【'+get.translation(link)+'】');
player.popup(link);
player.syncStorage('rehuashen');
player.updateMarks('rehuashen');
}
},
init:function(player,skill){
if(!player.storage[skill]) player.storage[skill]={
character:[],
map:{},
}
},
group:'rehuashen_init',
trigger:{
player:['phaseBegin','phaseEnd','rehuashen'],
},
filter:function(event,player,name){
if(name=='phaseBegin'&&game.phaseNumber==1) return false;
return player.storage.rehuashen&&player.storage.rehuashen.character.length>0;
},
addHuashen:function(player){
if(!player.storage.rehuashen) return;
_status.characterlist.randomSort();
var bool=false;
for(var i=0;i<_status.characterlist.length;i++){
var name=_status.characterlist[i];
if(name.indexOf('zuoci')!=-1||name.indexOf('key')==0) continue;
var skills=lib.character[name][3];
for(var j=0;j<skills.length;j++){
var info=lib.skill[skills[j]];
if(info.charlotte||(info.unique&&!info.gainable)||info.juexingji||info.limited||info.zhuSkill) skills.splice(j--,1);
}
if(skills.length){
player.storage.rehuashen.character.push(name);
player.storage.rehuashen.map[name]=skills;
_status.characterlist.remove(name);
return name;
}
}
},
addHuashens:function(player,num){
var list=[];
for(var i=0;i<num;i++){
var name=lib.skill.rehuashen.addHuashen(player);
if(name) list.push(name);
}
if(list.length){
game.log(player,'获得了',get.cnNumber(list.length)+'张','#g化身')
lib.skill.rehuashen.drawCharacter(player,list);
}
},
removeHuashen:function(player,links){
player.storage.rehuashen.character.removeArray(links);
_status.characterlist.addArray(links);
game.log(player,'移去了',get.cnNumber(links.length)+'张','#g化身')
},
drawCharacter:function(player,list){
game.broadcastAll(function(player,list){
if(player.isUnderControl(true)){
var cards=[];
for(var i=0;i<list.length;i++){
var cardname='huashen_card_'+list[i];
lib.card[cardname]={
fullimage:true,
image:'character:'+list[i]
}
lib.translate[cardname]=lib.translate[list[i]];
cards.push(game.createCard(cardname,'',''));
}
player.$draw(cards,'nobroadcast');
}
},player,list);
},
intro:{
onunmark:function(storage,player){
_status.characterlist.addArray(storage.character);
storage.character=[];
},
mark:function(dialog,storage,player){
if(storage&&storage.current) dialog.addSmall([[storage.current],'character']);
if(storage&&storage.current2) dialog.addText('【'+get.translation(storage.current2)+
'】'+lib.translate[storage.current2+'_info']);
if(storage&&storage.character.length){
if(player.isUnderControl(true)){
dialog.addSmall([storage.character,'character']);
}
else{
dialog.addText('共有'+get.cnNumber(storage.character.length)+'张“化身”');
}
}
else{
return '没有化身';
}
},
content:function(storage,player){
return '共有'+get.cnNumber(storage.character.length)+'张“化身”'
},
markcount:function(storage,player){
if(storage&&storage.character) return storage.character.length;
return 0;
},
},
},
rehuashen_init:{
trigger:{
global:'gameDrawAfter',
player:'enterGame',
},
forced:true,
popup:false,
content:function(){
lib.skill.rehuashen.addHuashens(player,3);
player.syncStorage('rehuashen');
player.markSkill('rehuashen');
var next=game.createEvent('rehuashen');
next.player=player;
next._trigger=trigger;
next.triggername='rehuashen';
next.setContent(lib.skill.rehuashen.content);
},
},
rexinsheng:{
mode:['identity','single'],
unique:true,
audio:'xinsheng',
trigger:{player:'damageEnd'},
frequent:true,
content:function(){
lib.skill.rehuashen.addHuashens(player,trigger.num);
player.syncStorage('rehuashen');
player.updateMarks('rehuashen');
},
},
"reguhuo":{
group:["reguhuo_guess","reguhuo_respond","reguhuo_wuxie"],
derivation:'rechanyuan',
enable:"chooseToUse",
filter:function (event,player){
if(!player.countCards('h')||player.hasSkill('reguhuo_phase')) return false;
var list=['sha','tao','shan','jiu','taoyuan','wugu','juedou','huogong','jiedao','tiesuo','guohe','shunshou','wuzhong','wanjian','nanman'];
if(get.mode()=='guozhan'){
list=list.concat(['xietianzi','shuiyanqijunx','lulitongxin','lianjunshengyan','chiling','diaohulishan','yuanjiao','huoshaolianying']);
}
for(var i=0;i<list.length;i++){
if(event.filterCard({name:list[i]},player)) return true;
}
return false;
},
chooseButton:{
dialog:function (){
var list=[];
for(var i=0;i<lib.inpile.length;i++){
var name=lib.inpile[i];
if(name=='wuxie') continue;
if(name=='sha'){
list.push(['基本','','sha']);
list.push(['基本','','sha','fire']);
list.push(['基本','','sha','thunder']);
}
else if(get.type(name)=='trick') list.push(['锦囊','',name]);
else if(get.type(name)=='basic') list.push(['基本','',name]);
}
return ui.create.dialog('蛊惑',[list,'vcard']);
},
filter:function (button,player){
var evt=_status.event.getParent();
if(evt&&evt.filterCard){
return evt.filterCard({name:button.link[2]},player,evt);
}
return true;
},
backup:function (links,player){
return {
filterCard:true,
selectCard:1,
viewAs:{name:links[0][2],nature:links[0][3]},
}
},
prompt:function (links,player){
return '将一张手牌当'+get.translation(links[0][2])+'使用';
},
},
ai:{
save:true,
respondShan:true,
respondSha:true,
skillTagFilter:function(player){
if(!player.countCards('h')||player.hasSkill('reguhuo_phase')) return false;
},
},
},
"reguhuo_guess":{
audio:'guhuo_guess',
trigger:{
player:"useCardBefore",
},
filter:function (event,player){
return event.skill=="reguhuo_backup"||event.skill=="reguhuo_wuxie";
},
forced:true,
direct:true,
priority:15,
content:function (){
'step 0'
player.logSkill('reguhuo_guess');
player.addTempSkill('reguhuo_phase');
player.popup(trigger.card.name,'metal');
player.lose(trigger.cards,ui.special);
player.line(trigger.targets,trigger.card.nature);
trigger.line=false;
event.prompt=get.translation(player)+'声明了'+get.translation(trigger.card.name)+',是否质疑?';
event.guessers=game.filterPlayer(function(current){
return current!=player&&!current.hasSkill('rechanyuan');
});
event.guessers.sort(lib.sort.seat);
event.ally=[];
event.betray=[];
'step 1'
if(event.guessers.length==0) event.goto(3);
else{
event.guessers[0].chooseControl('质疑','不质疑').set('prompt',event.prompt).set('ai',function(){
if(get.attitude(event.guessers[0],player)>0) return '不质疑';
return Math.random()<0.5?'不质疑':'质疑';
});
}
'step 2'
if(!result.control) result.control='不质疑';
event.guessers[0].chat(result.control);
game.delay();
if(result.control=='不质疑'){
game.log(event.guessers[0],'#g不质疑');
event.ally.push(event.guessers[0]);
}else{
game.log(event.guessers[0],'#y质疑');
event.betray.push(event.guessers[0]);
}
event.guessers.remove(event.guessers[0]);
if(event.guessers.length) event.goto(1);
'step 3'
player.showCards(trigger.cards);
if(event.betray.length){
if(trigger.card.name==trigger.cards[0].name){
event.fake=false;
}
else{
event.fake=true;
game.log(player,'使用的','#y'+get.translation(trigger.card.name),'作废了');
game.cardsDiscard(trigger.cards);
trigger.cancel();
game.asyncDraw(event.betray);
if(trigger.name=='useCard'&&trigger.parent) trigger.parent.goto(0);
}
}
else event.finish();
'step 4'
if(event.fake){
game.delay();
event.finish();
}
'step 5'
var target=event.betray.shift();
event.target=target;
target.chooseToDiscard('弃置一张牌或失去一点体力','he').ai=lib.skill.qiangxi.check;
'step 6'
if(!result.bool) target.loseHp();
'step 7'
target.addSkill('rechanyuan');
if(event.betray.length) event.goto(5);
},
},
"reguhuo_respond":{
trigger:{
player:"chooseToRespondBegin",
},
filter:function (event,player){
if(event.responded) return false;
if(!event.filterCard({name:'shan'})&&!event.filterCard({name:'sha'})) return false;
if(!player.countCards('h')||player.hasSkill('reguhuo_phase')) return false;
return true;
},
direct:true,
content:function (){
'step 0'
if(trigger.filterCard({name:'shan'})&&lib.filter.cardRespondable({name:'shan'},player,trigger)) event.name='shan';
else event.name='sha';
player.chooseCard('是否发动【蛊惑】,将一张手牌当做'+get.translation(event.name)+'打出?');
'step 1'
if(result.bool){
player.logSkill('reguhuo_guess');
player.addTempSkill('reguhuo_phase');
player.popup(event.name,'metal');
player.lose(result.cards,ui.special);
event.card=result.cards[0];
event.prompt=get.translation(player)+'声明了'+get.translation(event.name)+',是否质疑?';
event.guessers=game.filterPlayer(function(current){
return current!=player&&!current.hasSkill('rechanyuan');
});
event.guessers.sort(lib.sort.seat);
event.ally=[];
event.betray=[];
}
else event.finish();
'step 2'
if(event.guessers.length==0) event.goto(4);
else{
event.guessers[0].chooseControl('质疑','不质疑').set('prompt',event.prompt).set('ai',function(){
if(get.attitude(event.guessers[0],player)>0) return '不质疑';
return Math.random()<0.5?'不质疑':'质疑';
});
}
'step 3'
if(!result.control) result.control='不质疑';
event.guessers[0].chat(result.control);
game.delay();
if(result.control=='不质疑'){
game.log(event.guessers[0],'#g不质疑');
event.ally.push(event.guessers[0]);
}else{
game.log(event.guessers[0],'#y质疑');
event.betray.push(event.guessers[0]);
}
event.guessers.remove(event.guessers[0]);
if(event.guessers.length) event.goto(2);
'step 4'
var bool=true;
player.showCards(event.card);
if(event.betray.length){
if(event.name==event.card.name){
event.fake=false;
}
else{
event.fake=true;
game.log(player,'打出的','#y'+get.translation(event.name),'作废了');
game.cardsDiscard(event.card);
bool=false;
game.asyncDraw(event.betray);
}
}
else event.finish();
if(bool){
trigger.untrigger();
trigger.responded=true;
trigger.result={bool:true,card:{name:event.name},cards:[event.card]};
}
'step 5'
if(event.fake){
game.delay();
event.finish();
}
'step 6'
var target=event.betray.shift();
event.target=target;
target.chooseToDiscard('弃置一张牌或失去一点体力','he').ai=lib.skill.qiangxi.check;
'step 7'
if(!result.bool) target.loseHp();
'step 8'
if(target.isAlive()) target.addSkill('rechanyuan');
if(event.betray.length) event.goto(6);
},
ai:{
order:4,
useful:-1,
value:-1,
},
},
"reguhuo_wuxie":{
log:false,
silent:true,
popup:false,
enable:"chooseToUse",
filterCard:true,
viewAsFilter:function (player){
return !player.hasSkill('reguhuo_phase')&&player.countCards('h')>0;
},
viewAs:{
name:"wuxie",
},
check:function(card){
if(card.name=='wuxie') return 1000;
return 0;
},
prompt:"将一张手牌当无懈可击使用",
threaten:1.2,
},
reguhuo_phase:{},
rechanyuan:{
//charlotte:true,
firstDo:true,
trigger:{
player:["phaseBefore","changeHp"],
},
priority:99,
forced:true,
popup:false,
unique:true,
content:function (){
if(player.hp<=1){
var skills=player.getSkills(true,false);
for(var i=0;i<skills.length;i++){
var info=get.info(skills[i]);
if(skills[i]=='chanyuan'||skills[i]=='rechanyuan'||info.charlotte){
skills.splice(i--,1);
}
}
player.disableSkill('rechanyuan',skills);
}
else player.enableSkill('rechanyuan');
},
mark:true,
intro:{
content:function (storage,player,skill){
var str='<li>锁定技你不能质疑于吉只要你的体力值不大于1你的其他技能便全部失效。';
var list=[];
for(var i in player.disabledSkills){
if(player.disabledSkills[i].contains(skill)){
list.push(i)
}
}
if(list.length){
str+='<br><li>失效技能:';
for(var i=0;i<list.length;i++){
if(lib.translate[list[i]+'_info']){
str+=get.translation(list[i])+'、';
}
}
return str.slice(0,str.length-1);
}else return str;
},
},
init:function (player,skill){
if(player.hp<=1){
var skills=player.getSkills(true,false);
for(var i=0;i<skills.length;i++){
var info=get.info(skills[i]);
if(skills[i]=='chanyuan'||skills[i]=='rechanyuan'||info.charlotte){
skills.splice(i--,1);
}
}
player.disableSkill(skill,skills);
}
},
onremove:function (player,skill){
player.enableSkill(skill);
},
locked:true,
},
botu:{
audio:2,
group:'botu_kanade',
@ -1594,7 +2175,8 @@ game.import('character',function(lib,game,ui,get,ai,_status){
}
},
rejiuyuan:{
global:'rejiuyuan2'
global:'rejiuyuan2',
zhuSkill:true,
},
rejiuyuan2:{
audio:'jiuyuan',
@ -3286,7 +3868,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
xinleiji:'雷击',
xinguidao:'鬼道',
xinleiji_info:'当你使用或打出【闪】或【闪电】时你可以进行判定。当你的判定牌生效后若结果为黑桃你对一名角色造成2点雷电伤害梅花你回复1点体力并对一名其他角色造成1点雷电伤害。',
xinleiji_info:'当你使用或打出【闪】或【闪电】时,你可以进行判定。<br>②当你的判定牌生效后若结果为黑桃你对一名角色造成2点雷电伤害梅花你回复1点体力并对一名其他角色造成1点雷电伤害。',
xinguidao_info:'一名角色的判定牌生效前你可以打出一张黑色牌作为判定牌并获得原判定牌。若你以此法打出的牌为黑桃2-9则你摸一张牌。',
reqiangxi:"强袭",
"reqiangxi_info":"出牌阶段对每名其他角色限一次你可以选择一项1. 失去一点体力并对你攻击范围内的一名其他角色造成一点伤害2. 弃置一张武器牌并对你攻击范围内的一名其他角色造成一点伤害。",
@ -3428,6 +4010,27 @@ game.import('character',function(lib,game,ui,get,ai,_status){
reganglie_info:'每当你受到1点伤害后可进行一次判定若结果为红色你对伤害来源造成1点伤害若结果为黑色你弃置其一张牌。',
botu:'博图',
botu_info:'回合结束时,若你本回合使用的牌包含四种花色,则你可以进行一个额外回合。',
xin_yuji:'界于吉',
re_zuoci:'界左慈',
"reguhuo":"蛊惑",
"reguhuo_info":"每名角色的回合限一次你可以扣置一张手牌当一张基本牌或普通锦囊牌使用或打出。其他角色依次选择是否质疑。然后你展示此牌。若有质疑的角色若此牌为假则此牌作废且所有质疑者各摸一张牌为真则所有质疑角色须弃置一张牌或失去1点体力并获得技能〖缠怨〗。",
"reguhuo_guess":"蛊惑",
"reguhuo_guess_info":"",
rechanyuan:"缠怨",
"rechanyuan_info":"锁定技你不能质疑于吉只要你的体力值不大于1你失去你的武将技能。",
"reguhuo_respond":"蛊惑",
"reguhuo_respond_info":"",
"reguhuo_wuxie":"蛊惑",
"reguhuo_wuxie_info":"",
"reguhuo_phase":"蛊惑",
"reguhuo_phase_info":"",
rehuashen:'化身',
rehuashen_info:'游戏开始后,你随机获得三张未加入游戏的武将牌,选一张置于你面前并声明该武将牌的一项技能,你拥有该技能且同时将性别和势力属性变成与该武将相同直到该化身被替换。你的每个准备阶段和结束后,你可以选择一项:①弃置至多两张未展示的化身牌并重新获得等量化身牌;②更换所展示的化身牌或技能。(你不可声明限定技、觉醒技或主公技)。',
rexinsheng:'新生',
rexinsheng_info:'当你受到1点伤害后你可以获得一张新的化身牌。',
refresh_standard:'界限突破·标',
refresh_ol:'界限突破OL',
},
};
});

View File

@ -10,7 +10,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
sp_zlzy:["zhangqiying","lvkai","zhanggong","weiwenzhugezhi","beimihu"],
sp_longzhou:["xf_tangzi","xf_huangquan","xf_sufei","sp_liuqi"],
sp_zizouqi:["mangyachang","xugong","zhangchangpu"],
sp_sbfm:["lisu","xinpi"],
sp_sbfm:["lisu","xinpi","zhangwen"],
sp_zhongdan:["cuiyan","huangfusong"],
sp_star:["sp_xiahoushi","jsp_zhaoyun","huangjinleishi","sp_pangtong","sp_daqiao","sp_ganning","sp_xiahoudun","sp_lvmeng","sp_zhangfei","sp_liubei"],
sp_guozhan:["shamoke","ganfuren","yuejin","hetaihou","dingfeng","panfeng","jianggan"],
@ -22,6 +22,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
character:{
xinpi:['male','wei',3,['xpchijie','yinju'],['unseen']],
lisu:['male','qun',2,['lslixun','lskuizhu']],
zhangwen:['male','wu',3,['songshu','sibian']],
hejin:['male','qun',4,['mouzhu','yanhuo']],
hansui:['male','qun',4,['mashu','niluan']],
@ -166,6 +167,8 @@ game.import('character',function(lib,game,ui,get,ai,_status){
//kaisa:["male","western",4,["zhengfu"]],
},
characterIntro:{
zhangwen:'张温193年—230年字惠恕吴郡吴县今江苏苏州人。少修节操容貌奇伟。孙权召拜议郎、选曹尚书徙太子太傅。黄武三年224以辅义中郎将身份出使蜀汉孙权原先害怕诸葛亮会有意留难张温但张温不担心。在呈上蜀汉朝廷的文书刻意称颂蜀汉以表明和解的诚意重建两国关系。他在蜀汉表现出色得蜀汉朝廷重视。回东吴后不久被调进豫章的军队事业上再无进展。孙权一方面介怀他出使蜀汉时称颂蜀汉又嫌他声名太盛恐怕张温不会尽忠地由他任用。当时正好碰上暨艳事件暨艳是张温引荐的臣子但他滥用职权升迁评定等只看自己喜恶。事件被揭发后暨艳及同党徐彪都自杀。孙权见此于是以张温与暨艳、徐彪等人多有来往而下罪张温后更将张温发还到家乡吴郡。将军骆统曾上书为张温辩解但孙权不理会。六年后张温病逝。',
lisu:'李肃192年五原治今内蒙古包头西北人。永汉三年四月司徒王允、尚书仆射士孙瑞、卓将吕布共谋诛卓。是时天子有疾新愈大会未央殿。布使同郡骑都尉肃等、将亲兵十馀人伪著卫士服守掖门。布怀诏书。卓至肃等格卓。卓惊呼布所在。布曰“有诏”遂杀卓夷三族。后卓女婿中郎将牛辅典兵别屯陕分遣校尉李傕、郭汜、张济略陈留、颍川诸县。卓死吕布使李肃至陕欲以诏命诛辅。辅等逆与肃战肃败走弘农布诛肃。',
xinpi:'辛毗生卒年不详字佐治颍川阳翟人。三国时期曹魏大臣。原居陇西郡治在今甘肃临洮县东汉光武帝建武年间其先人东迁。当初辛毗跟随其兄事袁绍。曹操任司空时征召辛毗他不受命。官渡战后辛毗事袁绍的儿子袁谭。公元204年曹操攻下邺城上表推荐辛毗任议郎后为丞相长史。公元220年曹丕即皇帝位以辛毗为侍中赐爵关内侯后赐广平亭侯。魏明帝即位封辛毗颍乡侯食邑三百户后为卫尉。公元234年诸葛亮屯兵渭南司马懿上表魏明帝。魏明帝任辛毗为大将军军师加使持节号。诸葛亮病逝后辛毗返回仍任卫尉。不久逝世谥肃侯。',
hejin:'何进(?~189年字遂高南阳郡宛县今河南南阳市宛城区人。东汉时期外戚大臣灵思皇后之兄。初以妹妹有宠拜为郎中出任虎贲中郎将、颍川太守迁侍中、将作大匠、河南尹。黄巾起义时拜为大将军总镇京师发现并镇压马元义的密谋封为慎侯。为张大威望在京师讲武结营置西园八校尉。汉灵帝驾崩后粉碎了中常侍蹇硕拥立皇子刘协的图谋听从袁绍之言博征智谋之士内借元舅之资外据辅政之权独揽朝中大权。中平六年189不纳陈琳和曹操劝谏阴结军阀董卓联合袁绍谋诛宦竖。事情败露后为中常侍张让等人损害其后代是魏晋高门士族南阳何氏。',
hansui:'韩遂215年字文约。凉州金城郡人。东汉末年军阀、将领汉末群雄之一。原名韩约后改名遂。韩遂最初闻名于西州被羌胡叛军劫持并推举为首领以诛宦官为名举兵造反聚众十万先后败皇甫嵩、张温、董卓、孙坚等名将使得天下骚动。后受朝廷招安拥兵割据一方长达三十余年。韩遂曾与马腾结为异姓兄弟后二人关系破裂。袁绍、曹操相争之际马腾、韩遂被钟繇说服依附于曹操。马腾入京后留其子马超统领部队。马超推举韩遂为都督起兵反叛曹操为曹操所败韩遂逃奔凉州后又为夏侯渊所败病死一说被杀享年七十余岁。',
@ -579,6 +582,61 @@ game.import('character',function(lib,game,ui,get,ai,_status){
skill:{
//上兵伐谋
//伊籍在标包 不会移动
songshu:{
audio:2,
enable:'phaseUse',
filter:function(event,player){
return !player.hasSkill('songshu_reflectionblue')&&player.countCards('h')>0;
},
filterTarget:function(card,player,target){
return target!=player&&player.canCompare(target);
},
content:function(){
'step 0'
player.chooseToCompare(target).set('small',get.attitude(player,target)>0);
'step 1'
if(!result.bool){
target.draw(2);
player.addTempSkill('songshu_reflectionblue');
}
},
},
songshu_reflectionblue:{
//不愧是你 马场老贼
},
sibian:{
audio:2,
trigger:{player:'phaseDrawBefore'},
content:function(){
'step 0'
trigger.cancel();
event.cards=get.cards(4);
player.showCards(event.cards);
'step 1'
cards.sort(function(a,b){
return b.number-a.number;
});
var gains=[];
var mx=[cards[0].number,cards[3].number];
for(var i=0;i<cards.length;i++){
if(mx.contains(cards[i].number)) gains.addArray(cards.splice(i--,1));
}
player.gain(gains,'gain2');
if(cards.length!=2||Math.abs(gains[0].number-gains[1].number)>=game.players.length) event._result={bool:false};
else player.chooseTarget('是否令一名手牌数最少的角色获得'+get.translation(cards),function(card,player,target){
return target.isMinHandcard();
}).ai=function(target){
return get.attitude(_status.event.player,target);
}
'step 2'
if(result.bool){
var target=result.targets[0];
player.line(target);
target.gain(cards,'gain2');
}
else if(cards.length) game.cardsDiscard(cards);
},
},
lslixun:{
audio:2,
forced:true,
@ -7048,14 +7106,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
}
}
game.delay(2);
if(trigger.name=='respond'){
if(trigger.parent.result){
trigger.parent.result.bool=false;
}
}
else{
trigger.cancel();
}
trigger.cancel();
}
else{
event.finish();
@ -12142,6 +12193,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
},
backup:function(links,player){
return {
audio:'aocai',
filterCard:function(){return false},
selectCard:-1,
viewAs:links[0],
@ -13253,12 +13305,17 @@ game.import('character',function(lib,game,ui,get,ai,_status){
niujin:'牛金',
xinpi:'辛毗',
lisu:'李肃',
zhangwen:'张温',
songshu:'颂蜀',
songshu_info:'出牌阶段,你可以和其他角色拼点。若你没赢,其摸两张牌,且你本阶段内不能再发动〖思辨〗',
sibian:'思辨',
sibian_info:'摸牌阶段,你可以放弃摸牌,改为亮出牌堆顶的四张牌,然后获得其中所有点数最大与点数最小的牌。若获得的牌是两张且点数之差小于存活人数,则你可以将剩余的牌交给手牌数最少的角色。',
lslixun:'利熏',
lslixun_fate:'利熏',
lslixun_info:'锁定技,当你受到伤害时,你防止此伤害,然后获得等同于伤害值的“珠”标记。出牌阶段开始时,你进行一次判定,若结果点数小于“珠”的数量,你弃置等同于“珠”数量的手牌(若弃牌的牌数不够,则失去剩余数量的体力值)。',
lskuizhu:'馈珠',
lskuizhu_info:'出牌阶段结束时你可以选择体力值全场最多的一名其他角色将手牌摸至与该角色相同最多摸至五张然后该角色观看你的手牌弃置任意张手牌并从观看的牌中获得等量的牌。若其获得的牌大于一张则你选择一项移去一个“珠”或令其对其攻击范围内的一名角色造成1点伤害。',
xpchijie:'持节',
xpchijie_info:'每回合限一次,当你成为其他角色使用牌的目标后,你可以获得如下效果:当此牌对其他角色造成伤害时,若此牌已对你造成过伤害,则你防止此伤害;当此牌使用结算完成时,你可以获得此牌对应的所有实体牌。',
xpchijie3:'持节',

View File

@ -4011,6 +4011,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
},
chanyuan:{
//charlotte:true,
firstDo:true,
trigger:{
player:["phaseBefore","changeHp"],
},
@ -4023,7 +4024,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
var skills=player.getSkills(true,false);
for(var i=0;i<skills.length;i++){
var info=get.info(skills[i]);
if(skills[i]=='chanyuan'||info.charlotte){
if(skills[i]=='chanyuan'||skills[i]=='rechanyuan'||info.charlotte){
skills.splice(i--,1);
}
}
@ -4057,7 +4058,7 @@ game.import('character',function(lib,game,ui,get,ai,_status){
var skills=player.getSkills(true,false);
for(var i=0;i<skills.length;i++){
var info=get.info(skills[i]);
if(skills[i]=='chanyuan'||info.charlotte){
if(skills[i]=='chanyuan'||skills[i]=='rechanyuan'||info.charlotte){
skills.splice(i--,1);
}
}