From 7cfdfab1987b96a6c3057a1701a401a26210301c Mon Sep 17 00:00:00 2001 From: hide_d Date: Thu, 19 Jul 2018 01:31:13 +0900 Subject: [PATCH] =?UTF-8?q?=EC=97=B0=EA=B0=90=EC=97=90=EC=84=9C=EB=8F=84?= =?UTF-8?q?=20=EB=B9=84=EA=B5=90=EC=A0=81=20=EB=B9=A0=EB=A5=B4=EA=B2=8C=20?= =?UTF-8?q?=EB=8F=99=EC=9E=91=ED=95=98=EB=8F=84=EB=A1=9D=20=EC=84=A4?= =?UTF-8?q?=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- hwe/a_history.php | 4 ++- hwe/js/map.js | 70 +++++++++++++++++++++++++++++++---------------- 2 files changed, 49 insertions(+), 25 deletions(-) diff --git a/hwe/a_history.php b/hwe/a_history.php index 4c719bbe..78d20a84 100644 --- a/hwe/a_history.php +++ b/hwe/a_history.php @@ -173,7 +173,9 @@ reloadWorldMap({ targetJson:'j_map_history.php?year=&month=&serverID=', showMe:false, neutralView:true, - useCachedMap:false + useCachedMap:false, + year:, + month:, }); diff --git a/hwe/js/map.js b/hwe/js/map.js index 7f9cc6c0..ef47e077 100644 --- a/hwe/js/map.js +++ b/hwe/js/map.js @@ -21,7 +21,10 @@ function reloadWorldMap(option){ aux:null, //기타 넣고 싶은 값을 입력 neutralView:false, //clickable, 소속 국가, 첩보 여부 등을 반환여부를 설정 showMe:true, //반환 값에 본인이 위치한 도시 값을 반환하도록 설정. neutralView와 별개 - targetJson:'j_map.php' + targetJson:'j_map.php', + + //기타 보조 값 + startYear:null, }; option = $.extend(defaultOption, option); @@ -35,6 +38,7 @@ function reloadWorldMap(option){ var cityPosition = getCityPosition(); var storedOldMapKey = 'sam.{0}.map'.format(serverNick); + var storedStartYear = 'sam.{0}.startYear'.format(serverNick); //OBJ : startYear, year, month, cityList, nationList, spyList, shownByGeneralList, myCity function checkReturnObject(obj){ @@ -55,6 +59,7 @@ function reloadWorldMap(option){ if(useCachedMap){ localStorage.setItem(storedOldMapKey, JSON.stringify([serverID, obj])); + localStorage.setItem(storedStartYear, JSON.stringify(obj.startYear)); } $world_map.removeClass('draw_required'); @@ -99,7 +104,6 @@ function reloadWorldMap(option){ else{ $world_map.addClass('map_winter'); } - console.log('haha?'); $map_title.html('{0}年 {1}月'.format(year, month)); @@ -481,32 +485,50 @@ function reloadWorldMap(option){ .then(setCityClickable) .then(saveCityInfo); - if(useCachedMap && $world_map.hasClass('draw_required')){ - //일단 불러옴 - do{ - var storedMap = localStorage.getItem(storedOldMapKey); - if(!storedMap){ - break; - } - storedMap = JSON.parse(storedMap); - var storedServerID = storedMap[0]; - if(storedServerID != serverID){ - break; - } + if($world_map.hasClass('draw_required')){ + if(useCachedMap){ + //일단 불러옴 + do{ + var storedMap = localStorage.getItem(storedOldMapKey); + if(!storedMap){ + break; + } + storedMap = JSON.parse(storedMap); + var storedServerID = storedMap[0]; + if(storedServerID != serverID){ + break; + } - storedMap = storedMap[1]; - storedMap = setMapBackground(storedMap); - storedMap = convertCityObjs(storedMap); - if(isDetailMap){ - storedMap = drawDetailWorldMap(storedMap); + storedMap = storedMap[1]; + storedMap = setMapBackground(storedMap); + storedMap = convertCityObjs(storedMap); + if(isDetailMap){ + storedMap = drawDetailWorldMap(storedMap); + } + else{ + storedMap = drawBasicWorldMap(storedMap); + } + storedMap = setMouseWork(storedMap); + storedMap = setCityClickable(storedMap); + storedMap = saveCityInfo(storedMap); + }while(false); + } + else if(option.year && option.month){ + var startYear = localStorage.getItem(storedStartYear); + if(startYear){ + startYear = JSON.parse(startYear); } else{ - storedMap = drawBasicWorldMap(storedMap); + startYear = option.year; } - storedMap = setMouseWork(storedMap); - storedMap = setCityClickable(storedMap); - storedMap = saveCityInfo(storedMap); - }while(false); + var tmp = { + year : option.year, + month : option.month, + startYear : startYear + }; + setMapBackground(tmp); + } + } }