diff --git a/game/config.js b/game/config.js index 99bffd662..d76eef79d 100644 --- a/game/config.js +++ b/game/config.js @@ -286,8 +286,6 @@ window.config={ bannedpile:{}, customcardpile:{}, addedpile:{}, - customCharacterPack:{}, - customCardPack:{}, mode:'identity', mode_config:{ diff --git a/game/game.js b/game/game.js index 6b8d1dc1b..7f578b4ab 100644 --- a/game/game.js +++ b/game/game.js @@ -65,8 +65,6 @@ canvasUpdates:[], video:[], _onDB:[], - customCharacters:[], - customCards:[], skilllist:[], characterPack:{}, cardPack:{}, @@ -99,37 +97,6 @@ lib._onDB.push(func); } }, - setTranslate:function(name){ - if(name.indexOf('|')==-1){ - lib.translate[name]=name; - } - else{ - if(name.lastIndexOf('|')>name.indexOf('|')){ - lib.translate[name]=name.slice(name.indexOf('|')+1,name.lastIndexOf('|')); - } - else{ - lib.translate[name]=name.slice(name.indexOf('|')+1); - } - } - }, - checkCharacterName:function(name){ - if(lib.character[name]){ - if(!lib.customCharacters.contains(name)) return true; - for(var i in lib.config.customCharacterPack){ - if(lib.config.customCharacterPack[i].character.contains(name)) return true; - } - } - return false; - }, - checkSkillName:function(name){ - if(lib.skill[name]){ - if(!lib.skill[name].createInfo) return true; - for(var i in lib.config.customCharacterPack){ - if(lib.config.customCharacterPack[i].skill.contains(name)) return true; - } - } - return false; - }, listenEnd:function(node){ if(!node._listeningEnd){ node._listeningEnd=true; @@ -5337,7 +5304,7 @@ var list=lib.rank.s.concat(lib.rank.ap).concat(lib.rank.a).concat(lib.rank.am). concat(lib.rank.bp).concat(lib.rank.b).concat(lib.rank.bm).concat(lib.rank.c).concat(lib.rank.d); for(var i in lib.character){ - if(i!='zuoci'&&i.indexOf('boss_')!=0&&i.indexOf('tafang_')!=0&&!list.contains(i)&&!lib.customCharacters.contains(i)) console.log(i); + if(i!='zuoci'&&i.indexOf('boss_')!=0&&i.indexOf('tafang_')!=0&&!list.contains(i)) console.log(i); } }, h:function(player){ @@ -16568,50 +16535,7 @@ } }, import:function(type,obj){ - if(type=='character'){ - if(lib.config.customCharacterPack[obj.name]){ - alert('武将包已存在'); - return; - } - var pack={ - name:obj.name, - character:[], - skill:[], - }; - for(var i in obj.character){ - if(lib.checkCharacterName(i)){ - alert('武将名重复:'+i); - continue; - } - game.putDB('character',i,obj.character[i]); - lib.character[i]=obj.character[i]; - lib.customCharacters.add(i); - pack.character.push(i); - lib.setTranslate(i); - } - for(var i in obj.skill){ - if(lib.checkSkillName(i)){ - alert('技能名重复:'+i); - continue; - } - var info=obj.skill[i]; - try{ - eval('lib.skill["'+info.name+'"]={'+info.content+'}'); - } - catch(e){ - console.log(e); - lib.skill[info.name]={}; - } - lib.skill[info.name].createInfo=info; - lib.setTranslate(i); - lib.translate[info.name+'_info']=info.description; - game.putDB('skill',info.name,info); - pack.skill.push(i); - } - lib.config.customCharacterPack[obj.name]=pack; - game.saveConfig('customCharacterPack',lib.config.customCharacterPack); - } - else if(type=='extension'){ + if(type=='extension'){ lib.extensionMenu['extension_'+obj.name]={ enable:{ name:'开启', @@ -16948,88 +16872,6 @@ downloadLink.click(); } }, - exportCharacters:function(packname,list,callback){ - var zipReady=function(){ - var zip=new JSZip(); - var imageLoaded=0; - var character={ - name:packname||'noname', - character:{}, - skill:{}, - }; - var load=function(img){ - var blob = zip.generate({type:"blob"}); - var fileNameToSaveAs = packname||'noname'; - fileNameToSaveAs=fileNameToSaveAs.replace(/\\|\/|\:|\?|\"|\*|<|>|\|/g,'.'); - fileNameToSaveAs+='.zip'; - - if(lib.device){ - var directory; - if(lib.device=='android'){ - directory=cordova.file.externalDataDirectory; - } - else{ - directory=cordova.file.documentsDirectory; - } - window.resolveLocalFileSystemURL(directory,function(entry){ - entry.getFile(fileNameToSaveAs,{create:true},function(fileEntry){ - fileEntry.createWriter(function(fileWriter){ - fileWriter.onwriteend=function(){ - alert('文件已导出至'+directory+fileNameToSaveAs); - } - fileWriter.write(blob) - }); - }); - }); - } - else{ - var downloadLink = document.createElement("a"); - downloadLink.download = fileNameToSaveAs; - downloadLink.innerHTML = "Download File"; - downloadLink.href = window.URL.createObjectURL(blob); - downloadLink.click(); - } - - if(typeof callback=='function'){ - callback(character); - } - }; - for(var i=0;i>',page,function(){ - this.classList.toggle('on'); - if(this.classList.contains('on')){ - importCharacter.style.display=''; - resetEditor(); - resetExport(); - currentEditing=null; - } - else{ - importCharacter.style.display='none'; - } - }); - var resetImport=function(){ - importCharacter.style.display='none'; - toggle3.classList.remove('on') - } - importCharacter=ui.create.div('.new_character.export.import',page); - importCharacter.style.display='none'; - ui.create.div('','',importCharacter); - importCharacter.firstChild.lastChild.onclick=function(){ - var fileToLoad=this.previousSibling.files[0]; - if(fileToLoad){ - var zipReady=function(){ - var fileReader = new FileReader(); - fileReader.onload = function(fileLoadedEvent) - { - var data = fileLoadedEvent.target.result; - var zip=new JSZip(); - zip.load(data); - var str=zip.file('pack.js').asText(); - try{ - eval(str); - if(!game.importedPack) throw('err'); - for(var i in game.importedPack.character){ - var buttons=page.querySelectorAll('.button.character'); - for(var j=0;j>',page,function(){ - this.classList.toggle('on'); - if(this.classList.contains('on')){ - exportCharacter.style.display=''; - resetEditor(); - resetImport(); - currentEditing=null; - packExporting=true; - } - else{ - resetExport(); - } - }); - var resetExport=function(){ - packExporting=false; - exportCharacter.style.display='none'; - toggle2.classList.remove('on'); - var selected=page.querySelectorAll('.button.character.selected'); - var list=[]; - for(var i=0;i',exportCharacter); - exportCharacter.firstChild.lastChild.onclick=function(){ - var name=this.previousSibling.value; - var selected=page.querySelectorAll('.button.character.selected'); - var list=[]; - var list2=[]; - for(var i=0;i>',page,function(){ - this.classList.toggle('on'); - if(this.classList.contains('on')){ - newCharacter.style.display=''; - resetExport(); - resetImport(); - } - else{ - newCharacter.style.display='none'; - } - }); - var resetEditor=function(){ - toggle.classList.remove('on'); - newCharacter.style.display='none'; - fakeme.classList.remove('inited'); - delete fakeme.image; - fakeme.style.backgroundImage=''; - var inputs=newCharacter.querySelectorAll('input'); - for(var i=0;i',newCharacter).style.paddingTop='10px'; - ui.create.div('.indent','体力:',newCharacter).style.paddingTop='10px'; - var sexes=ui.create.selectlist([ - ['male','男'], - ['female','女'], - ['none','无'], - ],null,ui.create.div('.indent','性别:',newCharacter)); - var groups=ui.create.selectlist([ - ['wei','魏'], - ['shu','蜀'], - ['wu','吴'], - ['qun','群'], - ],null,ui.create.div('.indent','势力:',newCharacter)); - var options=ui.create.div('.add_skill.options','主公BOSSAI禁选
',newCharacter); - var addSkill=ui.create.div('.add_skill','添加技能
',newCharacter); - var list=[]; - for(var i in lib.character){ - if(!lib.customCharacters.contains(i)&&lib.character[i][3].length) - list.push([i,lib.translate[i]]); - } - list.sort(function(a,b){ - a=a[0];b=b[0]; - var aa=a,bb=b; - if(aa.indexOf('_')!=-1){ - aa=aa.slice(aa.indexOf('_')+1); - } - if(bb.indexOf('_')!=-1){ - bb=bb.slice(bb.indexOf('_')+1); - } - if(aa!=bb){ - return aa>bb?1:-1; - } - return a>b?1:-1; - }); - var list2=[]; - var skills=lib.character[list[0][0]][3]; - for(var i=0;i创建技能...
',newCharacter); - createSkill.firstChild.listen(function(){ - createSkill.lastChild.classList.toggle('hidden'); - if(createSkill.lastChild.classList.contains('hidden')){ - this.innerHTML='创建技能...'; - skillList.style.top=''; - } - else{ - this.innerHTML='创建技能'; - skillList.style.top='435px'; - } - }); - var newSkill=document.createElement('textarea'); - createSkill.lastChild.appendChild(newSkill); - createSkill.lastChild.innerHTML+='
'; - ui.create.div('','技能名称:',createSkill.lastChild); - createSkill.lastChild.innerHTML+='
'; - ui.create.div('','技能描述:
',createSkill.lastChild); - createSkill.lastChild.lastChild.lastChild.previousSibling.style.marginTop='5px'; - createSkill.lastChild.lastChild.lastChild.previousSibling.style.marginRight='3px'; - createSkill.lastChild.lastChild.lastChild.previousSibling.onclick=function(){ - var node; - var name=createSkill.lastChild.querySelector('.skillname').value; - var description=createSkill.lastChild.querySelector('.skilldescription').value; - var content=createSkill.lastChild.querySelector('textarea').value; - if(!name||!description) return; - if(lib.checkSkillName(name)){ - alert('技能名重复'); - return; - } - for(var i=0;iname2.indexOf('|')){ - name2=name2.slice(name2.indexOf('|')+1,name2.lastIndexOf('|')); - } - else{ - name2=name2.slice(name2.indexOf('|')+1); - } - } - ui.create.div('',name2,node,editnode); - ui.create.div('','×',node,deletenode); - } - node.createInfo={ - name:name, - description:description, - content:content - } - createSkill.lastChild.querySelector('.skillname').value=''; - createSkill.lastChild.querySelector('.skilldescription').value=''; - createSkill.lastChild.querySelector('textarea').value=''; - - createSkill.lastChild.classList.add('hidden'); - createSkill.firstChild.innerHTML='创建技能...'; - skillList.style.top=''; - } - createSkill.lastChild.lastChild.lastChild.onclick=function(){ - createSkill.lastChild.querySelector('.skillname').value=''; - createSkill.lastChild.querySelector('.skilldescription').value=''; - createSkill.lastChild.querySelector('textarea').value=''; - - createSkill.lastChild.classList.add('hidden'); - createSkill.firstChild.innerHTML='创建技能...'; - skillList.style.top=''; - }; - var skillList=ui.create.div('.skill_list',newCharacter); - ui.create.div(skillList); - ui.create.div('.menubutton.large','创建武将',ui.create.div(skillList),function(){ - var image=fakeme.image;if(!image&&this.innerHTML!='编辑武将') return; - var name=newCharacter.querySelector('.new_name').value;if(!name) return; - if(lib.checkCharacterName(name)){ - alert('武将名重复');return; - } - var hp=newCharacter.querySelector('.new_hp').value; - hp=parseInt(hp); - if(!hp) hp=1; - var skills=[]; - var dontcreate=false; - if(this.innerHTML=='编辑武将'&&this._origin&&this._origin.link!=name){ - dontcreate=true; - var origin=this._origin; - game.getDB('image','character:'+this._origin.link,function(data){ - if(data){ - game.putDB('image','character:'+name,data); - origin.remove(); - lib.customCharacters.remove(origin.link); - game.deleteDB('character',origin.link); - game.deleteDB('image','character:'+origin.link); - if(lib.character[origin.link]){ - var skills=lib.character[origin.link][3]; - delete lib.character[origin.link]; - for(var i=0;i',newCharacter); var list=[]; for(var i in lib.character){ - if(!lib.customCharacters.contains(i)&&lib.character[i][3].length) - list.push([i,lib.translate[i]]); + if(lib.character[i][3].length){ + list.push([i,lib.translate[i]]); + } } list.sort(function(a,b){ a=a[0];b=b[0]; @@ -27345,7 +26509,6 @@ for(var i in lib.characterPack){ if(lib.characterPack[i][name]) return i; } - if(lib.customCharacters.contains(name)) return 'custom'; return null; } var packs={}; @@ -27467,9 +26630,6 @@ } var namecapt=[]; var getCapt=function(str){ - if(lib.customCharacters.contains(str)){ - return '自定义'; - } var capt; if(str.indexOf('_')==-1){ capt=str[0]; @@ -27788,17 +26948,6 @@ span.addEventListener(lib.config.touchscreen?'touchend':'click',clickCapt); newlined2.appendChild(span); } - if(lib.customCharacters.length){ - var span=document.createElement('div'); - span.style.display='inline-block'; - span.style.width='auto'; - span.style.margin='5px'; - // span.style.fontSize='20px'; - span.innerHTML='自定义'; - span.link='自定义'; - span.addEventListener(lib.config.touchscreen?'touchend':'click',clickCapt); - newlined2.appendChild(span); - } } @@ -34412,13 +33561,13 @@ else if(modeimage){ src='image/mode/'+modeimage+'/character/'+name+ext; } - else if(type=='character'&&lib.customCharacters.contains(name)){ - src=""; - var node=this; - game.getDB('image','character:'+name,function(src){ - node.style.backgroundImage="url('"+src+"')"; - }); - } + // else if(type=='character'&&lib.customCharacters.contains(name)){ + // src=""; + // var node=this; + // game.getDB('image','character:'+name,function(src){ + // node.style.backgroundImage="url('"+src+"')"; + // }); + // } else if(type=='character'&&lib.config.skin[name]){ src='image/skin/'+name+'/'+lib.config.skin[name]+ext; } diff --git a/game/update.js b/game/update.js index 0056b7708..c3e6bca31 100644 --- a/game/update.js +++ b/game/update.js @@ -3,6 +3,7 @@ window.noname_update={ update:'1.9.6.5', changeLog:[ 'bug修复', + '牌堆设置改进(旧版牌堆设置将被清除)', ], files:[ 'game/game.js',