音效、bug

This commit is contained in:
libccy 2015-05-14 17:23:45 +08:00
parent c504b5a18b
commit 2c18c826a7
49 changed files with 55 additions and 26 deletions

Binary file not shown.

Binary file not shown.

BIN
audio/effect/damage2.mp3 Normal file

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

BIN
audio/effect/link.mp3 Normal file

Binary file not shown.

BIN
audio/effect/lose.mp3 Normal file

Binary file not shown.

BIN
audio/effect/loseHp.mp3 Normal file

Binary file not shown.

Binary file not shown.

BIN
audio/effect/tie.mp3 Normal file

Binary file not shown.

BIN
audio/effect/win.mp3 Normal file

Binary file not shown.

BIN
audio/skill/bagua_skill.mp3 Normal file

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

BIN
audio/skill/qilin_skill.mp3 Normal file

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

BIN
audio/skill/tengjia1.mp3 Normal file

Binary file not shown.

BIN
audio/skill/tengjia2.mp3 Normal file

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@ -29,12 +29,13 @@ card.ex={
hanbing_skill:{ hanbing_skill:{
trigger:{player:'shaHit'}, trigger:{player:'shaHit'},
direct:true, direct:true,
audio:true,
filter:function(event){ filter:function(event){
return event.target.get('he').length>0; return event.target.get('he').length>0;
}, },
content:function(){ content:function(){
"step 0" "step 0"
player.choosePlayerCard('是否发动【寒冰剑】?','he',trigger.target,[1,2],function(button){ player.choosePlayerCard('是否发动【寒冰剑】?','he',trigger.target,Math.min(2,trigger.target.num('he')),function(button){
var eff=ai.get.damageEffect(trigger.target,player,player); var eff=ai.get.damageEffect(trigger.target,player,player);
if(ai.get.attitude(player,trigger.target)>0){ if(ai.get.attitude(player,trigger.target)>0){
if(eff>=0) return false; if(eff>=0) return false;
@ -55,7 +56,7 @@ card.ex={
trigger.untrigger(); trigger.untrigger();
var cards=[]; var cards=[];
for(var i=0;i<result.buttons.length;i++) cards.push(result.buttons[i].link); for(var i=0;i<result.buttons.length;i++) cards.push(result.buttons[i].link);
player.logSkill('hanbing'); player.logSkill('hanbing_skill');
trigger.unhurt=true; trigger.unhurt=true;
trigger.target.discard(cards); trigger.target.discard(cards);
} }
@ -65,6 +66,7 @@ card.ex={
trigger:{target:'shaBefore'}, trigger:{target:'shaBefore'},
forced:true, forced:true,
priority:6, priority:6,
audio:true,
filter:function(event){ filter:function(event){
if(event.player.num('s','unequip')) return false; if(event.player.num('s','unequip')) return false;
return (event.card.name=='sha'&&get.color(event.card)=='black') return (event.card.name=='sha'&&get.color(event.card)=='black')

View File

@ -309,6 +309,7 @@ card.extra={
}, },
}, },
guding_skill:{ guding_skill:{
audio:true,
trigger:{source:'damageBegin'}, trigger:{source:'damageBegin'},
filter:function(event){ filter:function(event){
if(event.card&&event.card.name=='sha'){ if(event.card&&event.card.name=='sha'){
@ -332,6 +333,7 @@ card.extra={
trigger:{target:'useCardToBefore'}, trigger:{target:'useCardToBefore'},
forced:true, forced:true,
priority:6, priority:6,
audio:true,
filter:function(event,player){ filter:function(event,player){
if(event.player.num('s','unequip')) return false; if(event.player.num('s','unequip')) return false;
if(event.card.name=='nanman') return true; if(event.card.name=='nanman') return true;
@ -362,6 +364,7 @@ card.extra={
filter:function(event){ filter:function(event){
if(event.nature=='fire') return true; if(event.nature=='fire') return true;
}, },
audio:true,
forced:true, forced:true,
content:function(){ content:function(){
trigger.num++; trigger.num++;
@ -396,6 +399,7 @@ card.extra={
filter:function(event,player){ filter:function(event,player){
if(event.card.name=='sha'&&!event.card.nature) return true; if(event.card.name=='sha'&&!event.card.nature) return true;
}, },
audio:true,
check:function(event,player){ check:function(event,player){
var att=ai.get.attitude(player,event.target); var att=ai.get.attitude(player,event.target);
if(event.target.hasSkillTag('nofire')){ if(event.target.hasSkillTag('nofire')){

View File

@ -1,3 +1,4 @@
'use strict';
card.guozhan={ card.guozhan={
card:{ card:{
yuanjiao:{ yuanjiao:{
@ -104,7 +105,7 @@ card.guozhan={
target.chooseToDiscard(2,'he',true).ai=ai.get.disvalue; target.chooseToDiscard(2,'he',true).ai=ai.get.disvalue;
}, },
ai:{ ai:{
wuxie:function(target,card,player,viewer){ wuxie:function(){
if(lib.config.mode=='guozhan'){ if(lib.config.mode=='guozhan'){
return 0; return 0;
} }
@ -184,6 +185,7 @@ card.guozhan={
} }
}, },
sanjian_skill:{ sanjian_skill:{
audio:true,
trigger:{source:'damageAfter'}, trigger:{source:'damageAfter'},
direct:true, direct:true,
filter:function(event,player){ filter:function(event,player){
@ -213,7 +215,7 @@ card.guozhan={
}); });
"step 1" "step 1"
if(result.bool){ if(result.bool){
player.logSkill('sanjian'); player.logSkill('sanjian_skill');
player.discard(result.cards); player.discard(result.cards);
result.targets[0].damage(); result.targets[0].damage();
} }

View File

@ -202,7 +202,8 @@ card.refresh={
filter:function(event,player){ filter:function(event,player){
for(var i=0;i<event.cards.length;i++){ for(var i=0;i<event.cards.length;i++){
if(event.cards[i].name=='muniu'&&event.cards[i].original=='e'&& if(event.cards[i].name=='muniu'&&event.cards[i].original=='e'&&
player.skills.contains('muniu_skill6')==false) return true; player.skills.contains('muniu_skill6')==false&&
get.position(event.cards[i])==='d') return true;
} }
return false; return false;
}, },

View File

@ -987,6 +987,7 @@ card.standard={
cixiong_skill:{ cixiong_skill:{
trigger:{player:'shaBegin'}, trigger:{player:'shaBegin'},
priority:5, priority:5,
audio:true,
filter:function(event,player){ filter:function(event,player){
if(player.sex=='male'&&event.target.sex=='female') return true; if(player.sex=='male'&&event.target.sex=='female') return true;
if(player.sex=='female'&&event.target.sex=='male') return true; if(player.sex=='female'&&event.target.sex=='male') return true;
@ -1028,6 +1029,7 @@ card.standard={
selectCard:2, selectCard:2,
position:'h', position:'h',
viewAs:{name:'sha'}, viewAs:{name:'sha'},
audio:true,
prompt:'将两张手牌当杀使用或打出', prompt:'将两张手牌当杀使用或打出',
check:function(card){return 6-ai.get.useful(card)}, check:function(card){return 6-ai.get.useful(card)},
ai:{ ai:{
@ -1037,6 +1039,7 @@ card.standard={
guanshi_skill:{ guanshi_skill:{
trigger:{player:'shaMiss'}, trigger:{player:'shaMiss'},
direct:true, direct:true,
audio:true,
filter:function(event,player){ filter:function(event,player){
return player.num('he')>2; return player.num('he')>2;
}, },
@ -1058,7 +1061,7 @@ card.standard={
}; };
"step 1" "step 1"
if(result.bool){ if(result.bool){
player.logSkill('guanshi'); player.logSkill('guanshi_skill');
trigger.untrigger(); trigger.untrigger();
trigger.trigger('shaHit'); trigger.trigger('shaHit');
trigger._result.bool=false; trigger._result.bool=false;
@ -1081,15 +1084,17 @@ card.standard={
}, },
qilin_skill:{ qilin_skill:{
trigger:{player:'shaHit'}, trigger:{player:'shaHit'},
popup:false,
filter:function(event,player){ filter:function(event,player){
return event.target.get('e',{subtype:['equip3','equip4']}).length>0 return event.target.get('e',{subtype:['equip3','equip4']}).length>0
}, },
direct:true,
audio:true,
content:function(){ content:function(){
"step 0" "step 0"
player.chooseButton(ui.create.dialog('选择要弃置的马',trigger.target.get('e',{subtype:['equip3','equip4']}))); player.chooseButton(ui.create.dialog('选择要弃置的马',trigger.target.get('e',{subtype:['equip3','equip4']})));
"step 1" "step 1"
if(result.bool){ if(result.bool){
player.logSkill('qilin_skill');
trigger.target.discard(result.buttons[0].link); trigger.target.discard(result.buttons[0].link);
} }
} }
@ -1101,6 +1106,7 @@ card.standard={
if(event.parent.player.num('s','unequip')) return false; if(event.parent.player.num('s','unequip')) return false;
return true; return true;
}, },
audio:true,
content:function(){ content:function(){
"step 0" "step 0"
player.judge('bagua',function(card){return (get.color(card)=='red')?1.5:-0.5}); player.judge('bagua',function(card){return (get.color(card)=='red')?1.5:-0.5});

View File

@ -2445,8 +2445,8 @@ character.yijiang={
content:function(){ content:function(){
"step 0" "step 0"
event.cards=[targets[0].get('e'),targets[1].get('e')]; event.cards=[targets[0].get('e'),targets[1].get('e')];
targets[0].lose(event.cards[0]); targets[0].lose(event.cards[0],ui.special);
targets[1].lose(event.cards[1]); targets[1].lose(event.cards[1],ui.special);
if(event.cards[0].length) targets[0].$give(event.cards[0],targets[1]); if(event.cards[0].length) targets[0].$give(event.cards[0],targets[1]);
if(event.cards[1].length) targets[1].$give(event.cards[1],targets[0]); if(event.cards[1].length) targets[1].$give(event.cards[1],targets[0]);
"step 1" "step 1"

View File

@ -1142,7 +1142,7 @@ window.play={};
game.playAudio('card',sex,card.name); game.playAudio('card',sex,card.name);
} }
} }
else{ else if(get.type(card)!='equip'){
game.playAudio('card/default'); game.playAudio('card/default');
} }
} }
@ -1283,16 +1283,15 @@ window.play={};
var info=get.info(event.skill); var info=get.info(event.skill);
event._skill=event.skill; event._skill=event.skill;
if(lib.config.background_speak&&!lib.skill.global.contains(event.skill)){ if(lib.config.background_speak&&!lib.skill.global.contains(event.skill)){
if(info.audio){ if(typeof info.audio=='number'){
game.playAudio('skill',event.skill,Math.ceil(info.audio*Math.random())); game.playAudio('skill',event.skill+Math.ceil(info.audio*Math.random()));
}
else if(info.audio){
game.playAudio('skill',event.skill);
} }
else if(lib.config.background_ogg){ else if(lib.config.background_ogg){
game.playAudio('skill',event.skill); game.playAudio('skill',event.skill);
} }
else{
game.playAudio('skill','default',
player.sex=='female'?'female':'male',Math.ceil(Math.random()*5));
}
} }
if(player.checkShow){ if(player.checkShow){
player.checkShow(event.skill); player.checkShow(event.skill);
@ -1611,7 +1610,7 @@ window.play={};
damage:function(){ damage:function(){
"step 0" "step 0"
if(lib.config.background_audio){ if(lib.config.background_audio){
game.playAudio('effect','damage_'+(player.sex==='female'?'female':'male')); game.playAudio('effect','damage'+(num>1?'2':''));
} }
var str=get.translation(player)+'受到了'; var str=get.translation(player)+'受到了';
if(source) str+='来自'+(source==player?'自己':get.translation(source)+'的'); if(source) str+='来自'+(source==player?'自己':get.translation(source)+'的');
@ -1655,6 +1654,9 @@ window.play={};
}, },
loseHp:function(){ loseHp:function(){
"step 0" "step 0"
if(lib.config.background_audio){
game.playAudio('effect','loseHp');
}
game.log(get.translation(player)+'失去了'+get.cnNumber(num)+'点体力') game.log(get.translation(player)+'失去了'+get.cnNumber(num)+'点体力')
player.changeHp(-num); player.changeHp(-num);
"step 1" "step 1"
@ -1793,9 +1795,9 @@ window.play={};
else if(lib.config.background_ogg){ else if(lib.config.background_ogg){
game.playAudio('die',player.name); game.playAudio('die',player.name);
} }
} else if(lib.config.background_audio){
if(lib.config.background_audio){ game.playAudio('effect','die_'+(player.sex==='female'?'female':'male'));
game.playAudio('effect','die_'+(player.sex==='female'?'female':'male')); }
} }
if(player==game.me&&!_status.over){ if(player==game.me&&!_status.over){
ui.control.show(); ui.control.show();
@ -1816,7 +1818,7 @@ window.play={};
}, },
equip:function(){ equip:function(){
"step 0" "step 0"
if(get.owner(card)) get.owner(card).lose(card); if(get.owner(card)) get.owner(card).lose(card,ui.special);
if(card.clone){ if(card.clone){
card.clone.moveTo(player,Math.random()<0.8?'flip':'rotate').delete(); card.clone.moveTo(player,Math.random()<0.8?'flip':'rotate').delete();
@ -1934,6 +1936,7 @@ window.play={};
game.log(get.translation(player)+'被连环'); game.log(get.translation(player)+'被连环');
} }
player.classList.toggle('linked'); player.classList.toggle('linked');
game.playAudio('effect','link');
}, },
}, },
@ -3435,16 +3438,16 @@ window.play={};
} }
var info=lib.skill[name]; var info=lib.skill[name];
if(info&&lib.config.background_speak){ if(info&&lib.config.background_speak){
if(info.audio){ if(typeof info.audio==='number'){
game.playAudio('skill',name,Math.ceil(info.audio*Math.random())); game.playAudio('skill',name+Math.ceil(info.audio*Math.random()));
}
else if(info.audio){
game.playAudio('skill',name);
} }
else{ else{
if(lib.config.background_ogg){ if(lib.config.background_ogg){
game.playAudio('skill',name); game.playAudio('skill',name);
} }
else{
game.playAudio('skill','default',Math.ceil(Math.random()*5));
}
} }
} }
if(lib.config.mode=='chess'){ if(lib.config.mode=='chess'){
@ -5222,6 +5225,17 @@ window.play={};
_status.over=true; _status.over=true;
ui.control.show(); ui.control.show();
ui.clear(); ui.clear();
if(lib.config.background_audio){
if(result===true){
game.playAudio('effect','win');
}
else if(result===false){
game.playAudio('effect','lose');
}
else{
game.playAudio('effect','tie');
}
}
if(result===true) result='战斗胜利'; if(result===true) result='战斗胜利';
if(result===false) result='战斗失败'; if(result===false) result='战斗失败';
if(result==undefined) result='战斗结束'; if(result==undefined) result='战斗结束';