This commit is contained in:
parent
53174e7948
commit
40fb17f100
62
README.md
62
README.md
|
@ -1,62 +0,0 @@
|
||||||
# 无名杀
|
|
||||||
|
|
||||||
####使用方法
|
|
||||||
#####运行
|
|
||||||
使用chrome(推荐)或safari打开index.html<br>
|
|
||||||
#####升级
|
|
||||||
windows:覆盖resources/app文件夹内的同名文件<br>
|
|
||||||
mac:右键显示包内容,覆盖contents/resources/app文件夹内的同名文件<br>
|
|
||||||
android:用解压软件打开apk文件,覆盖assets/www文件夹内的同名文件
|
|
||||||
|
|
||||||
####选项设置
|
|
||||||
#####通用
|
|
||||||
开启“触屏模式”可消除触屏设备上的点击延迟
|
|
||||||
#####外观
|
|
||||||
屏幕较小的设备可在外观选项中将布局改为“移动”,在移动布局中,点击左上角或右上角可显示顶部按钮,双击顶部可令界面下移<br>
|
|
||||||
若运行速度较慢可关闭“游戏特效”<br>
|
|
||||||
#####玩法
|
|
||||||
为游戏添加额外的规则,开启并重启后可在帮助中看到说明
|
|
||||||
|
|
||||||
####添加配音
|
|
||||||
#####启用
|
|
||||||
添加游戏未自带的配音或音效。需在选项-音效中开启“补全配音”<br>
|
|
||||||
支持mp3或ogg格式
|
|
||||||
#####技能
|
|
||||||
路径:audio/skill<br>
|
|
||||||
同一技能最多技能两个配音。以制衡为例,若技能有一个配音,则命名为zhiheng.mp3,若有两个配音,则改为zhiheng1.mp3和zhiheng2.mp3<br>
|
|
||||||
查看自己技能名:在战局-命令中输入
|
|
||||||
````javascript
|
|
||||||
game.print(game.me.skills);
|
|
||||||
````
|
|
||||||
查看场上所有角色技能名:在战局-命令中输入
|
|
||||||
````javascript
|
|
||||||
var players=get.players(null,true);
|
|
||||||
while(players.length){
|
|
||||||
game.print(players.shift().skills);
|
|
||||||
}
|
|
||||||
````
|
|
||||||
#####卡牌
|
|
||||||
路径:audio/card<br>
|
|
||||||
查看所有卡牌名:在战局-命令中输入
|
|
||||||
````javascript
|
|
||||||
for(var i in lib.card){
|
|
||||||
if(lib.translate[i+'_info']){
|
|
||||||
game.print(lib.translate[i],i);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
````
|
|
||||||
#####阵亡
|
|
||||||
路径:audio/die<br>
|
|
||||||
查看场上所有角色名:在战局-命令中输入
|
|
||||||
````javascript
|
|
||||||
var players=get.players(null,true);
|
|
||||||
while(players.length){
|
|
||||||
var player=players.shift();
|
|
||||||
if(player.name1){
|
|
||||||
game.print(player.name1,player.name2);
|
|
||||||
}
|
|
||||||
else{
|
|
||||||
game.print(player.name);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
````
|
|
|
@ -39,7 +39,6 @@ character.sp={
|
||||||
lingcao:['male','wu',4,['dujin']],
|
lingcao:['male','wu',4,['dujin']],
|
||||||
sunru:['female','wu',3,['shixin','qingyi']],
|
sunru:['female','wu',3,['shixin','qingyi']],
|
||||||
lingju:['female','qun',3,['jieyuan','fenxin']],
|
lingju:['female','qun',3,['jieyuan','fenxin']],
|
||||||
lifeng:['male','shu',3,['tunchu','shuliang']],
|
|
||||||
},
|
},
|
||||||
perfectPair:{
|
perfectPair:{
|
||||||
zhugejin:['zhugeke'],
|
zhugejin:['zhugeke'],
|
||||||
|
@ -55,6 +54,48 @@ character.sp={
|
||||||
lingju:['diaochan','lvbu'],
|
lingju:['diaochan','lvbu'],
|
||||||
},
|
},
|
||||||
skill:{
|
skill:{
|
||||||
|
danji:{
|
||||||
|
trigger:{player:'phaseBegin'},
|
||||||
|
forced:true,
|
||||||
|
filter:function(event,player){
|
||||||
|
return !player.storage.danji&&player.num('h')>player.hp;
|
||||||
|
},
|
||||||
|
content:function(){
|
||||||
|
player.storage.danji=true;
|
||||||
|
player.loseMaxHp();
|
||||||
|
player.addSkill('mashu');
|
||||||
|
player.addSkill('nuzhan');
|
||||||
|
}
|
||||||
|
},
|
||||||
|
nuzhan:{
|
||||||
|
mod:{
|
||||||
|
cardUsable:function(card){
|
||||||
|
if(card.name=='sha'&&get.color(card)=='red') return Infinity;
|
||||||
|
}
|
||||||
|
},
|
||||||
|
trigger:{player:'useCard'},
|
||||||
|
filter:function(event,player){
|
||||||
|
return event.card.name=='sha'&&get.color(event.card)=='red';
|
||||||
|
},
|
||||||
|
forced:true,
|
||||||
|
content:function(){
|
||||||
|
if(player.stat[player.stat.length-1].card.sha>0){
|
||||||
|
player.stat[player.stat.length-1].card.sha--;
|
||||||
|
}
|
||||||
|
},
|
||||||
|
group:'nuzhan2'
|
||||||
|
},
|
||||||
|
nuzhan2:{
|
||||||
|
trigger:{player:'shaBegin'},
|
||||||
|
forced:true,
|
||||||
|
popup:false,
|
||||||
|
filter:function(event,player){
|
||||||
|
return event.card&&get.color(event.card)=='red';
|
||||||
|
},
|
||||||
|
content:function(){
|
||||||
|
trigger.directHit=true;
|
||||||
|
}
|
||||||
|
},
|
||||||
tunchu:{
|
tunchu:{
|
||||||
audio:2,
|
audio:2,
|
||||||
trigger:{player:'phaseDrawBegin'},
|
trigger:{player:'phaseDrawBegin'},
|
||||||
|
@ -3721,7 +3762,12 @@ character.sp={
|
||||||
sunru:'孙茹',
|
sunru:'孙茹',
|
||||||
lingju:'灵雎',
|
lingju:'灵雎',
|
||||||
lifeng:'李丰',
|
lifeng:'李丰',
|
||||||
|
jsp_guanyu:'sp关羽',
|
||||||
|
|
||||||
|
nuzhan:'怒斩',
|
||||||
|
nuzhan_info:'锁定技,你使用的由一张锦囊牌转化而来的【杀】不计入限制的使用次数;锁定技,你使用的由一张装备牌转化而来的【杀】的伤害值基数+1',
|
||||||
|
danji:'单骑',
|
||||||
|
danji_info:'觉醒技,准备阶段开始时,若你的手牌数大于你的体力值,你减1点体力上限,然后获得“马术”和“怒斩”',
|
||||||
tunchu:'屯储',
|
tunchu:'屯储',
|
||||||
tunchu_info:'摸牌阶段摸牌时,你可以额外摸两张牌,若如此做,将一张手牌置于你的武将上,称为“粮”,只要你的武将牌上有“粮”,你便不能使用【杀】和【决斗】',
|
tunchu_info:'摸牌阶段摸牌时,你可以额外摸两张牌,若如此做,将一张手牌置于你的武将上,称为“粮”,只要你的武将牌上有“粮”,你便不能使用【杀】和【决斗】',
|
||||||
shuliang:'输粮',
|
shuliang:'输粮',
|
||||||
|
|
|
@ -1512,7 +1512,7 @@ character.standard={
|
||||||
tuxi_info:'摸牌阶段,你可以放弃摸牌,并从1~2名其他角色各抽取一张手牌',
|
tuxi_info:'摸牌阶段,你可以放弃摸牌,并从1~2名其他角色各抽取一张手牌',
|
||||||
luoyi_info:'摸牌阶段,你可以少摸一张牌,若如此做,你本回合内[杀]或[决斗]造成的伤害+1',
|
luoyi_info:'摸牌阶段,你可以少摸一张牌,若如此做,你本回合内[杀]或[决斗]造成的伤害+1',
|
||||||
tiandu_info:'你可以立即获得你的判定牌',
|
tiandu_info:'你可以立即获得你的判定牌',
|
||||||
yiji_info:'每当你受到一点伤害,可以观看牌堆顶的两张牌,并将其交给任意1~名角色',
|
yiji_info:'每当你受到一点伤害,可以观看牌堆顶的两张牌,并将其交给任意1~2名角色',
|
||||||
luoshen_info:'回合开始阶段,你可以进行一定判定,若为黑色则可以继续判定,直到出现红色。然后你获得所有黑色的判定牌',
|
luoshen_info:'回合开始阶段,你可以进行一定判定,若为黑色则可以继续判定,直到出现红色。然后你获得所有黑色的判定牌',
|
||||||
qingguo_info:'你可以将一张黑色手牌当[闪]使用或打出',
|
qingguo_info:'你可以将一张黑色手牌当[闪]使用或打出',
|
||||||
rende_info:'出牌阶段,你可以将任意手牌送给其他角色,若送出的手牌不少于两张,你回复一点体力',
|
rende_info:'出牌阶段,你可以将任意手牌送给其他角色,若送出的手牌不少于两张,你回复一点体力',
|
||||||
|
|
|
@ -1454,7 +1454,7 @@ character.yijiang={
|
||||||
if(!event.filterCard({name:'shan'})) return false;
|
if(!event.filterCard({name:'shan'})) return false;
|
||||||
if(player.skills.contains('huomo2')) return false;
|
if(player.skills.contains('huomo2')) return false;
|
||||||
if(event.parent.name!='sha') return false;
|
if(event.parent.name!='sha') return false;
|
||||||
var hs=player.get('h',{color:'black'});
|
var hs=player.get('he',{color:'black'});
|
||||||
for(var i=0;i<hs.length;i++){
|
for(var i=0;i<hs.length;i++){
|
||||||
if(get.type(hs[i])!='basic'){
|
if(get.type(hs[i])!='basic'){
|
||||||
break;
|
break;
|
||||||
|
@ -1466,7 +1466,7 @@ character.yijiang={
|
||||||
direct:true,
|
direct:true,
|
||||||
content:function(){
|
content:function(){
|
||||||
"step 0"
|
"step 0"
|
||||||
player.chooseCard('是否发动【活墨】?',function(card){
|
player.chooseCard('是否发动【活墨】?','he',function(card){
|
||||||
return get.type(card)!='basic'&&get.color(card)=='black';
|
return get.type(card)!='basic'&&get.color(card)=='black';
|
||||||
}).ai=function(card){
|
}).ai=function(card){
|
||||||
if(!player.num('h','shan')){
|
if(!player.num('h','shan')){
|
||||||
|
@ -1511,7 +1511,7 @@ character.yijiang={
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
if(player.getStat().card.sha) return false;
|
if(player.getStat().card.sha) return false;
|
||||||
var hs=player.get('h',{color:'black'});
|
var hs=player.get('he',{color:'black'});
|
||||||
for(var i=0;i<hs.length;i++){
|
for(var i=0;i<hs.length;i++){
|
||||||
if(get.type(hs[i])!='basic'){
|
if(get.type(hs[i])!='basic'){
|
||||||
break;
|
break;
|
||||||
|
@ -1523,6 +1523,7 @@ character.yijiang={
|
||||||
}
|
}
|
||||||
return false;
|
return false;
|
||||||
},
|
},
|
||||||
|
position:'he',
|
||||||
filterCard:function(card){
|
filterCard:function(card){
|
||||||
return get.type(card)!='basic'&&get.color(card)=='black';
|
return get.type(card)!='basic'&&get.color(card)=='black';
|
||||||
},
|
},
|
||||||
|
@ -1557,7 +1558,7 @@ character.yijiang={
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
if(player.getStat().card.tao) return false;
|
if(player.getStat().card.tao) return false;
|
||||||
var hs=player.get('h',{color:'black'});
|
var hs=player.get('he',{color:'black'});
|
||||||
for(var i=0;i<hs.length;i++){
|
for(var i=0;i<hs.length;i++){
|
||||||
if(get.type(hs[i])!='basic'){
|
if(get.type(hs[i])!='basic'){
|
||||||
break;
|
break;
|
||||||
|
@ -1566,6 +1567,7 @@ character.yijiang={
|
||||||
if(i==hs.length) return false;
|
if(i==hs.length) return false;
|
||||||
return player.hp<player.maxHp;
|
return player.hp<player.maxHp;
|
||||||
},
|
},
|
||||||
|
position:'he',
|
||||||
filterCard:function(card){
|
filterCard:function(card){
|
||||||
return get.type(card)!='basic'&&get.color(card)=='black';
|
return get.type(card)!='basic'&&get.color(card)=='black';
|
||||||
},
|
},
|
||||||
|
@ -1601,7 +1603,7 @@ character.yijiang={
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
if(player.getStat().card.jiu) return false;
|
if(player.getStat().card.jiu) return false;
|
||||||
var hs=player.get('h',{color:'black'});
|
var hs=player.get('he',{color:'black'});
|
||||||
for(var i=0;i<hs.length;i++){
|
for(var i=0;i<hs.length;i++){
|
||||||
if(get.type(hs[i])!='basic'){
|
if(get.type(hs[i])!='basic'){
|
||||||
break;
|
break;
|
||||||
|
@ -1610,6 +1612,7 @@ character.yijiang={
|
||||||
if(i==hs.length) return false;
|
if(i==hs.length) return false;
|
||||||
return true;
|
return true;
|
||||||
},
|
},
|
||||||
|
position:'he',
|
||||||
filterCard:function(card){
|
filterCard:function(card){
|
||||||
return get.type(card)!='basic'&&get.color(card)=='black';
|
return get.type(card)!='basic'&&get.color(card)=='black';
|
||||||
},
|
},
|
||||||
|
|
|
@ -2099,7 +2099,7 @@ character.yxs={
|
||||||
wumu:'武穆',
|
wumu:'武穆',
|
||||||
wumu_info:'锁定技,你的黑杀无视距离,红色不计入回合内的出杀限制',
|
wumu_info:'锁定技,你的黑杀无视距离,红色不计入回合内的出杀限制',
|
||||||
sheshen:'舍身',
|
sheshen:'舍身',
|
||||||
sheshen_info:'每当你受到一点伤害,可以观看牌堆顶的两张牌,并将其交给任意1~名角色',
|
sheshen_info:'每当你受到一点伤害,可以观看牌堆顶的两张牌,并将其交给任意1~2名角色',
|
||||||
sanbanfu:'三板斧',
|
sanbanfu:'三板斧',
|
||||||
sanbanfu_info:'当你对其他角色使用杀时,你可以使此杀有如下效果:若对方没有出闪,其受到2点伤害;若对方打出了一张闪,你与其各受到1点伤害;若对方打出了两张闪,你受到一点伤害',
|
sanbanfu_info:'当你对其他角色使用杀时,你可以使此杀有如下效果:若对方没有出闪,其受到2点伤害;若对方打出了一张闪,你与其各受到1点伤害;若对方打出了两张闪,你受到一点伤害',
|
||||||
bingsheng:'兵圣',
|
bingsheng:'兵圣',
|
||||||
|
|
32
game/game.js
32
game/game.js
|
@ -12,15 +12,15 @@
|
||||||
},
|
},
|
||||||
ai:{},
|
ai:{},
|
||||||
lastdragchange:[],
|
lastdragchange:[],
|
||||||
skillaudio:[],
|
skillaudio:[
|
||||||
|
'界面问题修正',
|
||||||
|
'引用配音方法调整'
|
||||||
|
],
|
||||||
dieClose:[]
|
dieClose:[]
|
||||||
};
|
};
|
||||||
var lib={
|
var lib={
|
||||||
version:1.73,
|
version:1.74,
|
||||||
changeLog:[
|
changeLog:[],
|
||||||
'bug修复',
|
|
||||||
'新武将'
|
|
||||||
],
|
|
||||||
configprefix:'noname_0.9_',
|
configprefix:'noname_0.9_',
|
||||||
updates:[],
|
updates:[],
|
||||||
canvasUpdates:[],
|
canvasUpdates:[],
|
||||||
|
@ -4088,10 +4088,10 @@
|
||||||
(!lib.skill.global.contains(event.skill)||lib.skill[event.skill].forceaudio)){
|
(!lib.skill.global.contains(event.skill)||lib.skill[event.skill].forceaudio)){
|
||||||
var audioname=event.skill;
|
var audioname=event.skill;
|
||||||
var audioinfo=info.audio;
|
var audioinfo=info.audio;
|
||||||
if(audioname.indexOf('|')<audioname.lastIndexOf('|')){
|
if(typeof audioinfo=='string'){
|
||||||
audioname=audioname.slice(audioname.lastIndexOf('|')+1);
|
audioname=audioinfo;
|
||||||
if(lib.skill[audioname]){
|
if(lib.skill[audioinfo]){
|
||||||
audioinfo=lib.skill[audioname].audio;
|
audioinfo=lib.skill[audioinfo].audio;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if(typeof audioinfo=='number'){
|
if(typeof audioinfo=='number'){
|
||||||
|
@ -4101,7 +4101,7 @@
|
||||||
game.playAudio('skill',audioname);
|
game.playAudio('skill',audioname);
|
||||||
}
|
}
|
||||||
else if(lib.config.background_ogg&&info.audio!==false){
|
else if(lib.config.background_ogg&&info.audio!==false){
|
||||||
game.playSkillAudio(event.skill);
|
game.playSkillAudio(audioname);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if(player.checkShow){
|
if(player.checkShow){
|
||||||
|
@ -6538,10 +6538,10 @@
|
||||||
if(info&&lib.config.background_speak){
|
if(info&&lib.config.background_speak){
|
||||||
var audioname=name;
|
var audioname=name;
|
||||||
var audioinfo=info.audio;
|
var audioinfo=info.audio;
|
||||||
if(audioname.indexOf('|')<audioname.lastIndexOf('|')){
|
if(typeof audioinfo=='string'){
|
||||||
audioname=audioname.slice(audioname.lastIndexOf('|')+1);
|
audioname=audioinfo;
|
||||||
if(lib.skill[audioname]){
|
if(lib.skill[audioinfo]){
|
||||||
audioinfo=lib.skill[audioname].audio;
|
audioinfo=lib.skill[audioinfo].audio;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if(typeof audioinfo==='number'){
|
if(typeof audioinfo==='number'){
|
||||||
|
@ -6552,7 +6552,7 @@
|
||||||
}
|
}
|
||||||
else{
|
else{
|
||||||
if(lib.config.background_ogg&&info.audio!==false){
|
if(lib.config.background_ogg&&info.audio!==false){
|
||||||
game.playSkillAudio(name);
|
game.playSkillAudio(audioname);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Binary file not shown.
Before Width: | Height: | Size: 96 KiB |
|
@ -584,6 +584,16 @@ margin-bottom: 5px;
|
||||||
#arena.slim_player .player>.name.name2{
|
#arena.slim_player .player>.name.name2{
|
||||||
left:78px
|
left:78px
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#arena .player.minskin>.name,
|
||||||
|
#arena.slim_player .player.minskin>.name{
|
||||||
|
top:16px;
|
||||||
|
}
|
||||||
|
#arena .player.linked.minskin>.name,
|
||||||
|
#arena.slim_player .player.linked.minskin>.name{
|
||||||
|
transform: rotate(90deg) translate(83px,-65px);
|
||||||
|
}
|
||||||
|
|
||||||
.button.character>.name{
|
.button.character>.name{
|
||||||
font-family: 'xinwei'
|
font-family: 'xinwei'
|
||||||
}
|
}
|
||||||
|
@ -651,6 +661,7 @@ margin-bottom: 5px;
|
||||||
}
|
}
|
||||||
.judges{height: 24px;left: 14px;top: -18px;}
|
.judges{height: 24px;left: 14px;top: -18px;}
|
||||||
.marks{height: 24px;left: 14px;top: 112px;}
|
.marks{height: 24px;left: 14px;top: 112px;}
|
||||||
|
.player>.marks{z-index: 4}
|
||||||
.judges>div,.marks>div{width: 24px;height: 24px;margin-left: 0;margin-top: 0;margin-right: 4px;opacity: 1;}
|
.judges>div,.marks>div{width: 24px;height: 24px;margin-left: 0;margin-top: 0;margin-right: 4px;opacity: 1;}
|
||||||
.hp{left: 18px;top:14px;width: 72px;line-height: 14px;text-align: left;}
|
.hp{left: 18px;top:14px;width: 72px;line-height: 14px;text-align: left;}
|
||||||
.hp.text{top:18px;}
|
.hp.text{top:18px;}
|
||||||
|
|
|
@ -35,12 +35,7 @@
|
||||||
#arena .player.linked>.name{
|
#arena .player.linked>.name{
|
||||||
transform: rotate(90deg) translate(120px,-96px);
|
transform: rotate(90deg) translate(120px,-96px);
|
||||||
}
|
}
|
||||||
#arena .player.minskin>.name{
|
|
||||||
top:16px;
|
|
||||||
}
|
|
||||||
#arena .player.linked.minskin>.name{
|
|
||||||
transform: rotate(90deg) translate(83px,-71px);
|
|
||||||
}
|
|
||||||
.player>.identity.menubutton.round{
|
.player>.identity.menubutton.round{
|
||||||
padding: 0;
|
padding: 0;
|
||||||
transform: scale(1.2) translate(-2px,2px);
|
transform: scale(1.2) translate(-2px,2px);
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
{
|
{
|
||||||
"name": "noname",
|
"name": "noname",
|
||||||
"xwalk_version": "1.7.2",
|
"xwalk_version": "1.7.4",
|
||||||
"start_url": "index.html",
|
"start_url": "index.html",
|
||||||
"icons": [
|
"icons": [
|
||||||
{
|
{
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
{
|
{
|
||||||
"name": "无名杀",
|
"name": "无名杀",
|
||||||
"version": "1.7.2",
|
"version": "1.7.4",
|
||||||
"main": "main.js"
|
"main": "main.js"
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue