RPG in City/남부 1구역구/백괴낚시소녀: 두 판 사이의 차이

리버티게임(개발), 모두가 만들어가는 자유로운 게임
둘러보기로 이동 검색으로 이동
백괴게임>느금마허벌창
편집 요약 없음
백괴게임>느개비허벌창
편집 요약 없음
4번째 줄: 4번째 줄:
<choose>
<choose>
<option>
<option>
너는 백괴낚시소녀에경애하는 우리의 령도자 문재인이 대장군님 만세!ㅍ경애하는 우리의 령도자 문재인이 대장군님 만세!ㅍ경애하는 우리의 령도자 문재인이 대장군님 만세!ㅍ경애하는 우리의 령도자 문재인이 대장군님 만세!ㅍ경애하는 우리의 령도자 문재인이 대장군님 만세!ㅍ경애하는 우리의 령도자 문재인이 대장군님 만세!ㅍ경애하는 우리의 령도자 문재인이 대장군님 만세!ㅍ경애하는 우리의 령도자 문재인이 대장군님 만세!ㅍ경애하는 우리의 령도자 문재인이 대장군님 만세!ㅍ경애하는 우리의 령도자 문재인이 대장군님 만세!ㅍ경애하는 우리의 령도자 문재인이 대장군님 만세!ㅍ경애하는 우리의 령도자 문재인이 대장군님 만세!ㅍ경애하는 우리의 령도자 문재인이 대장군님 만세!ㅍ경애하는 우리의 령도자 문재인이 대장군님 만세!ㅍ경애하는 우리의 령도자 문재인이 대장군님 만세!ㅍ경애하는 우리의 령도자 문재인이 대장군님 만세!ㅍ경애하는 우리의 령도자 문재인이 대장군님 만세!ㅍ경애하는 우리의 령도자 문재인이 대장군님 만세!ㅍ경애하는 우리의 령도자 문재인이 대장군님 만세!ㅍ경애하는 우리의 령도자 문재인이 대장군님 만세!ㅍ게 말을 걸었다.
너는 백괴낚시소녀에경애하는 우리의 령도자 경애하는 우리의 영도자 문재인이 대장군님 만세!ㅍ경애하는 우리의 영도자 문재인이 대장군님 만세!ㅍ경애하는 우리의 영도자 문재인이 대장군님 만세!ㅍ경애하는 우리의 영도자 문재인이 대장군님 만세!ㅍ경애하는 우리의 영도자 문재인이 대장군님 만세!ㅍ경애하는 우리의 영도자 문재인이 대장군님 만세!ㅍ경애하는 우리의 영도자 문재인이 대장군님 만세!ㅍ경애하는 우리의 영도자 문재인이 대장군님 만세!ㅍ경애하는 우리의 영도자 문재인이 대장군님 만세!ㅍ경애하는 우리의 영도자 문재인이 대장군님 만세!ㅍ경애하는 우리의 영도자 문재인이 대장군님 만세!ㅍ경애하는 우리의 영도자 문재인이 대장군님 만세!ㅍ경애하는 우리의 영도자 문재인이 대장군님 만세!ㅍ경애하는 우리의 영도자 문재인이 대장군님 만세!ㅍ경애하는 우리의 영도자 문재인이 대장군님 만세!ㅍ경애하는 우리의 영도자 문재인이 대장군님 만세!ㅍ경애하는 우리의 영도자 문재인이 대장군님 만세!ㅍ경애하는 우리의 영도자 문재인이 대장군님 만세!ㅍ경애하는 우리의 영도자 문재인이 대장군님 만세!ㅍ경애하는 우리의 영도자 문재인이 대장군님 만세!ㅍ경애하는 우리의 영도자 문재인이 대장군님 만세!ㅍ경애하는 우리의 영도자 문재인이 대장군님 만세!ㅍ경애하는 우리의 영도자 문재인이 대장군님 만세!ㅍ경애하는 우리의 영도자 문재인이 대장군님 만세!ㅍ경애하는 우리의 영도자 문재인이 대장군님 만세!ㅍ경애하는 우리의 영도자 문재인이 대장군님 만세!ㅍ문재인이 대장군님 만세!ㅍ경애하는 우리의 령도자 문재인이 대장군님 만세!ㅍ경애하는 우리의 령도자 문재인이 대장군님 만세!ㅍ경애하는 우리의 령도자 문재인이 대장군님 만세!ㅍ경애하는 우리의 령도자 문재인이 대장군님 만세!ㅍ경애하는 우리의 령도자 문재인이 대장군님 만세!ㅍ경애하는 우리의 령도자 문재인이 대장군님 만세!ㅍ경애하는 우리의 령도자 문재인이 대장군님 만세!ㅍ경애하는 우리의 령도자 문재인이 대장군님 만세!ㅍ경애하는 우리의 령도자 문재인이 대장군님 만세!ㅍ경애하는 우리의 령도자 문재인이 대장군님 만세!ㅍ경애하는 우리의 령도자 문재인이 대장군님 만세!ㅍ경애하는 우리의 령도자 문재인이 대장군님 만세!ㅍ경애하는 우리의 령도자 문재인이 대장군님 만세!ㅍ경애하는 우리의 령도자 문재인이 대장군님 만세!ㅍ경애하는 우리의 령도자 문재인이 대장군님 만세!ㅍ경애하는 우리의 령도자 문재인이 대장군님 만세!ㅍ경애하는 우리의 령도자 문재인이 대장군님 만세!ㅍ경애하는 우리의 령도자 문재인이 대장군님 만세!ㅍ경애하는 우리의 령도자 문재인이 대장군님 만세!ㅍ게 말을 걸었다.


{{대화|너|남부 1구역구가 원래대로 돌아갈 동안 뭐할거니?}}
{{대화|너|남부 1구역구가 원래대로 돌아갈 동안 뭐할거니?}}

2019년 1월 12일 (토) 13:07 판

function RPGinCity(){
	var usernameStr = mw.user.getName();
	var currentpage = mw.config.get("wgPageName");
	var pagenode = currentpage.split('/');
	console.log("사용자:"+ usernameStr + "/RPG_in_City.json");
	if (pagenode[0] !== "RPG_in_City"){
		if (currentpage !== "사용자:"+ usernameStr + "/RPG_in_City.json") {
			console.log("Current page is "+ currentpage +", not playing RPG in City");
			return;
		}
	}
	var fullbasepagename = "";
	for (var node = 0 ; node < pagenode.length - 2; node++){
		fullbasepagename = fullbasepagename + pagenode[node] + "/";
	}
	fullbasepagename = fullbasepagename + pagenode[pagenode.length - 2];
	console.log(fullbasepagename);
	
	/*
	function RPGinCity_Title() {
		var startbuttondiv = document.getElementById("RPGinCityStart");
		var loadbuttondiv =  document.getElementById("RPGinCityLoad");
		if (startbuttondiv !== null && loadbuttondiv !== null){
			if (usernameStr === null) {
				startbuttondiv.innerHTML = "<p>로그인이 필요합니다</p>";
			} else {
				var UserDBTitle = new mw.Title("사용자:"+usernameStr+"/RPG in City.json");
				startbuttondiv.innerHTML = "<p><big><a href=\""+mw.util.getUrl(UserDBTitle.toText(),{action: 'edit', preload : '틀:RPG_in_City_DB_양식', summary:'생성'})+ "\">시작하기</a></big></p>";
				loadbuttondiv.innerHTML = "<p><big><a href=\""+mw.util.getUrl(UserDBTitle.toText())+ "\">계속하기</a></big></p>";
	
			}
		}
	}
	*/
    /*
	function RPGinCity_GoToCheckpoint () {
		var JSONDatalist = document.getElementsByClassName("mw-json-value");
		if (currentpage === ("사용자:"+usernameStr+"/RPG_in_City.json") && JSONDatalist.length !== 0) {
			var MWContent = document.getElementById("mw-content-text"); 
			var GotoLink= document.createElement("a");
			GotoLink.href = mw.util.getUrl((JSONDatalist[0].innerText.substring(1, JSONDatalist[0].innerText.length-1)));
			console.log(GotoLink.href);
			GotoLink.innerText = "게임 계속하기";
			MWContent.appendChild(GotoLink);
		}
	}
	*/
	function RPGinCity_pushFightInfo(targetUri, Mhp, Ehp, Jam, PJam, BanBomb, Etype, Elevel, Turn) {
		targetUri.extend({mhp:Mhp});
		targetUri.extend({ehp:Ehp});
		targetUri.extend({j:Jam});
		targetUri.extend({bj:PJam});
		targetUri.extend({bb:BanBomb});
		targetUri.extend({etype:Etype});
		targetUri.extend({elevel:Elevel});
		targetUri.extend({turn:Turn});
		return targetUri;
	}
	
	function RPGinCity_HandleBattle(jsonfile) {
		var Battlelink = new mw.Uri(window.location.href);
		console.log("building battle phase...");
		var queryparams = Battlelink.query;
		// 이제 필요한 값을 구해 화면에 표시한다.
		// 플레이어 체력부터...
		var mhp = 0;
		var playerhealth = document.getElementById("RPGinCity-playerhealth");
		if (isNaN(queryparams.mhp)) {
			mhp = jsonfile.체력;
		} else {
			mhp = queryparams.mhp; // mhp는 이전 문서의 값을 받는다.
		}
		playerhealth.innerText = mhp;
		//적의 레벨
		var enemylevel = document.getElementById("RPGinCity-enemylevel");
		enemylevel.innerText = queryparams.elevel; // elevel는 항상 undefined이 아니다.
		//적의 체력
		var enemyhealth = document.getElementById("RPGinCity-enemyhealth");
		enemyhealth.innerText = queryparams.ehp; // ep는 항상 undefined이 아니다.
		//공격 페이즈
		var nextPhaseUri = new mw.Uri("https://libertyga.me/index.php?title="+currentpage);
        console.log("nextPhaseUri is "+nextPhaseUri);
		var attackEnemy = document.getElementById("RPGinCity-attackEnemy");
		var attackPower = Math.round(Math.random() * jsonfile.레벨*3) + jsonfile.무기;
		var attackEnemyUri = RPGinCity_pushFightInfo(nextPhaseUri.clone(), mhp, (queryparams.ehp - attackPower) >= 0?queryparams.ehp - attackPower : 0, queryparams.j, queryparams.bj, queryparams.bb, queryparams.etype, queryparams.elevel, 2);
        console.log(attackEnemyUri.toString());
		if (attackEnemy !== undefined && attackEnemy !== null){
            var attackEnemyLink = document.createElement("a");
            attackEnemyLink.href = attackEnemyUri.toString();
            attackEnemyLink.innerHTML="그냥 공격!";
            attackEnemy.appendChild(attackEnemyLink);
        }
		var useJam = document.getElementById("RPGinCity-useJam");
		var useJamUri = RPGinCity_pushFightInfo(nextPhaseUri.clone(), jsonfile.체력, queryparams.ehp, queryparams.j, queryparams.bj, queryparams.bb, queryparams.etype, queryparams.elevel, 2);
		if (useJam !== undefined && useJam !== null) {
            var useJamLink = document.createElement("a");
            useJamLink.href = useJamUri.toString();
            useJamLink.innerHTML="잼으로 회복!";
            useJam.appendChild(useJamLink);
        }
		var usePJ = document.getElementById("RPGinCity-usePJ");
		var usePJUri = RPGinCity_pushFightInfo(nextPhaseUri.clone(), mhp, queryparams.ehp > 20 ? queryparams.ehp - 20 : 0, queryparams.j, queryparams.bj, queryparams.bb, queryparams.etype, queryparams.elevel, 2);
		if (usePJ !== undefined && usePJ !== null) {
            var usePJLink = document.createElement("a");
            usePJLink.href = usePJUri.toString();
            usePJLink.innerHTML="배쨈 열기!";
            usePJ.appendChild(usePJLink);
        }
		var useBanbomb = document.getElementById("RPGinCity-useBanbomb");
		var useBanbombUri = RPGinCity_pushFightInfo(nextPhaseUri.clone(), mhp, queryparams.ehp/2, queryparams.j, queryparams.bj, queryparams.bb, queryparams.etype, queryparams.elevel, 2);
		if (useBanbomb !== undefined && useBanbomb !== null) {
            var useBanbombLink = document.createElement("a");
            useBanbombLink.href = useBanbombUri.toString();
            useBanbombLink.innerHTML="차단폭탄!";
            useBanbomb.appendChild(useBanbombLink);
        }
		//방어 페이즈
		var Blocking = document.getElementById("RPGinCity-Block");
		var BlockingUri = RPGinCity_pushFightInfo(nextPhaseUri.clone(), mhp- Math.round(Math.random() * queryparams.elevel * 0.75), queryparams.ehp , queryparams.j, queryparams.bj, queryparams.bb, queryparams.etype, queryparams.elevel, 1);
		if (Blocking !== undefined && Blocking !== null) {
            var BlockingLink = document.createElement("a");
            BlockingLink.href = BlockingUri.toString();
            BlockingLink.innerHTML="방어";
            Blocking.appendChild(BlockingLink);
        }
		var FailRunning = document.getElementById("RPGinCity-FailRunning");
		var FailRunningUri = RPGinCity_pushFightInfo(nextPhaseUri.clone(), mhp - Math.round(Math.random() * queryparams.elevel), queryparams.ehp, queryparams.j, queryparams.bj, queryparams.bb, queryparams.etype, queryparams.elevel, 1);
        console.log(FailRunningUri.toString());
		if (FailRunning !== undefined && FailRunning !== null) {
            var FailRunningLink = document.createElement("a");
            FailRunningLink.href = FailRunningUri.toString();
            FailRunningLink.innerHTML="도망치자!";
            FailRunning.appendChild(FailRunningLink);
        }
		var RunFromEnemy = document.getElementById("RPGinCity-RunFromEnemy");
		var MustKill = document.getElementById("mustKill");
		if (RunFromEnemy !== undefined && RunFromEnemy !== null && (MustKill === undefined || MustKill === null))RunFromEnemy.style.visibility = "visible";
	}
	
	function RPGinCity_SaveHandle(saveGameHandle) {
		var api = new mw.Api();
		var Templink = new mw.Uri(window.location.href);
		var queryparams = Templink.query;
		switch (saveGameHandle.innerText){
			case "서브퀘스트완료":
				new mw.Api().edit("사용자:"+usernameStr+"/RPG_in_City.json", function (revision) {
					var jsondata = JSON.parse(revision.content);
					jsondata.추가1 = 0;
                    jsondata.경험치 = jsondata.경험치 + 100;
					jsondata.최근페이지 = fullbasepagename;
					return {text: JSON.stringify(jsondata), summary: "서브퀘스트완료"};
				}
				).then(function () {
				    alert( '퀘스트 수행 완료!' );
				    document.getElementById("RPGinCity-searchphase").style.display = "block";
				});
				break;
			case "서브퀘스트수행":
				new mw.Api().edit("사용자:"+usernameStr+"/RPG_in_City.json", function (revision) {
					var jsondata = JSON.parse(revision.content);
					var questID = document.getElementById("RPGinCity-questID");
					if (questID !== undefined && questID !== null){
						jsondata.추가1 = parseInt(questID.innerText);
						jsondata.최근페이지 = fullbasepagename;
					}
					return {text: JSON.stringify(jsondata), summary: "서브퀘스트수행"};
				}
				).then(function () {
				    alert( '수락 완료!' );
				    document.getElementById("RPGinCity-searchphase").style.display = "block";
				});
				break;
			case "메인퀘스트수행":
				new mw.Api().edit("사용자:"+usernameStr+"/RPG_in_City.json", function (revision) {
					var jsondata = JSON.parse(revision.content);
					var mainQuestPoint = document.getElementById("mainQuestPoint");
					if (mainQuestPoint !== undefined && mainQuestPoint !== null) jsondata.최근페이지 = mainQuestPoint.innerText;
					var questID = document.getElementById("questID");
					if (questID !== undefined && questID !== null)jsondata.추가2 = parseInt(questID.innerText);
					return {text: JSON.stringify(jsondata), summary: "메인퀘스트수행"};
				}
				).then(function () {
				    alert( '완료!' );
				    document.getElementById("RPGinCity-searchphase").style.display = "block";
				});
				break;
			case "동부요금지불":
				new mw.Api().edit("사용자:"+usernameStr+"/RPG_in_City.json", function (revision) {
					var jsondata = JSON.parse(revision.content);
					jsondata.돈 -= 500*1;
					jsondata.추가2 = 5*1; // force to parse it a number
					jsondata.최근페이지 = "RPG in City/만남의 광장";
					return {text: JSON.stringify(jsondata), summary: "동부요금지불"};
				}
				).then(function () {
				    alert( '지불 완료!' );
				    document.getElementById("RPGinCity-searchphase").style.display = "block";
				});
				break;
			case "전투승리":
				new mw.Api().edit("사용자:"+usernameStr+"/RPG_in_City.json", function (revision) {
					var jsondata = JSON.parse(revision.content);
					jsondata.체력 = parseInt(queryparams.mhp);
					jsondata.경험치 += queryparams.elevel*4;
					jsondata.돈 += queryparams.elevel*5;
					jsondata.최근페이지 = currentpage.substring(0, currentpage.length-3);
					return {text: JSON.stringify(jsondata), summary: "전투승리"};
				}
				).then(function () {
				    alert( '승리!' );
				    document.getElementById("RPGinCity-searchphase").style.display = "block";
				});
				break;
			case "레벨업":
				new mw.Api().edit("사용자:"+usernameStr+"/RPG_in_City.json", function (revision) {
					var jsondata = JSON.parse(revision.content);
					jsondata.레벨 += (jsondata.경험치 - jsondata.경험치 % 128)/128;
					jsondata.경험치 = jsondata.경험치 % 128;
					return {text: JSON.stringify(jsondata), summary: "레벨업"};
				}
				).then(function () {
				    alert( '저장 완료!' );
				    if (currentpage !== "RPG in City/레벨 업")document.getElementById("RPGinCity-searchphase").style.display = "block";
				});
				break;
			case "회복":
				new mw.Api().edit("사용자:"+usernameStr+"/RPG_in_City.json", function (revision) {
					var jsondata = JSON.parse(revision.content);
					jsondata.체력 = jsondata.레벨 * 16;
					return {text: JSON.stringify(jsondata), summary: "회복"};
				}
				).then(function () {
				    alert( '체력이 완전히 회복되었습니다!' );
				    document.getElementById("RPGinCity-searchphase").style.display = "block";
				});
				break;
			case "결제":
				new mw.Api().edit("사용자:"+usernameStr+"/RPG_in_City.json", function (revision) {
					var jsondata = JSON.parse(revision.content);
					jsondata.잼 += queryparams.j*1;
					jsondata.배쨈 += queryparams.bj*1;
					jsondata.차단폭탄 += queryparams.bb*1;
					jsondata.무기 += queryparams.weapon*1;
					jsondata.돈 -= 50* queryparams.j + 75*queryparams.bj + 150*queryparams.bb + 1000 * queryparams.weapon;
					jsondata.최근페이지 = currentpage.substring(0, currentpage.length-3);
					return {text: JSON.stringify(jsondata), summary: "결제"};
				}
				).then(function () {
				    alert( '결제 완료!' );
				    document.getElementById("RPGinCity-searchphase").style.display = "block";
				});
				break;
			case "카통라킹폭탄지급":
				new mw.Api().edit("사용자:"+usernameStr+"/RPG_in_City.json", function (revision) {
					var jsondata = JSON.parse(revision.content);
                    jsondata.차단폭탄 = jsondata.차단폭탄 + 1;
					jsondata.최근페이지 = fullbasepagename;
					return {text: JSON.stringify(jsondata), summary: "폭탄지급"};
				}
				).then(function () {
				    alert( '폭탄 지급 완료!' );
				});
				break;
			default:
				new mw.Api().edit("사용자:"+usernameStr+"/RPG_in_City.json", function (revision) {
					var jsondata = JSON.parse(revision.content);
					jsondata.최근페이지 = fullbasepagename;
					return {text: JSON.stringify(jsondata), summary: "폭탄지급"};
				}
				).then(function () {
				    alert( '저장 완료!' );
				});
				break;
		}
	}
	
	function RPGinCity_HandleStore(jsondata, storeNumber) {
		var i = storeNumber;
		var Jam = document.getElementsByClassName("RPGinCity-JamAmount")[i];
		if (Jam !== undefined && Jam !== null && Jam.innerText === "") Jam.innerText = "0";
		var PearJam = document.getElementsByClassName("RPGinCity-PearJamAmount")[i];
		if (PearJam !== undefined && PearJam !== null && PearJam.innerText === "") PearJam.innerText = "0";
		var BB = document.getElementsByClassName("RPGinCity-BanBombAmount")[i];
		if (BB !== undefined && BB !== null && BB.innerText === "") BB.innerText = "0";
		var WeaponLevelUp = document.getElementsByClassName("RPGinCity-WeaponLevelUp")[i];
		if (WeaponLevelUp !== undefined && WeaponLevelUp !== null && WeaponLevelUp.innerText === "") WeaponLevelUp.innerText = "0";
		var BuyButton = document.getElementsByClassName("RPGinCity-BuyButton")[i];
		if (BuyButton !== undefined && BuyButton !== null) {
			if (50 * parseInt(Jam.innerText) + 75 * parseInt(PearJam.innerText) + 150* parseInt(BB.innerText) + 1000*parseInt(WeaponLevelUp.innerText) > jsondata.돈) {
				BuyButton.innerText = "돈이 부족하다. 나가서 돈을 구해오자.";
			}
			BuyButton.style.visibility = "visible";
		}
	}
	
	function RPGinCity_Callback_fetchUserInformation(jsonfile) {
		// 정보 틀 관련
		var playerinfo = document.getElementsByClassName("RPGinCity-Playerinfo");
		var LevelUpButton = document.getElementById("RPGinCity-LevelUp");
		if ( playerinfo !== undefined && playerinfo !== null && playerinfo.length > 0)  {
			playerinfo[0].innerText = jsonfile['레벨'];
			playerinfo[1].innerText = jsonfile['체력'];
			playerinfo[2].innerText = jsonfile['경험치'];
			playerinfo[3].innerText = jsonfile['잼'];
			playerinfo[4].innerText = jsonfile['배쨈'];
			playerinfo[5].innerText = jsonfile['차단폭탄'];
			playerinfo[6].innerText = jsonfile['돈'];
			playerinfo[7].innerText = jsonfile['무기'];
			if (LevelUpButton !== undefined && LevelUpButton !== null && jsonfile.경험치 > 128 && jsonfile.레벨 + jsonfile.경험치 /128 <= 50) {
                var levelup = document.createElement("a");
                levelup.href = "https://libertyga.me/index.php?title=RPG_in_City/레벨_업&lastgamepage=" + currentpage;
                levelup.innerHTML = "레벨업하기";
				LevelUpButton.appendChild(levelup);
			}
		}
		// RPG in City/집 쉬기 기능
		var RestingInHouse = document.getElementById("RPGinCity-House");
		if (RestingInHouse !== undefined && RestingInHouse != null) {
			if (jsonfile.체력 < jsonfile.레벨 * 16){
                document.getElementById("RPGinCity-needRest").innerHTML = "너는 한숨 자고 개운한 마음으로 이곳을 나가려고 한다.\n";
                var resting = document.createElement("a");
                resting.href = "https://libertyga.me/index.php?title="+currentpage+"/회복";
                resting.innerHTML = "\n쉬기";
				RestingInHouse.appendChild(resting);
			} else {
                RestingInHouse.innerHTML = "너는 몸 상태가 좋아 여기에 머물지 않기로 결정했다.";
            }
			RestingInHouse.style.visibility = "visible";
		}
		// RPG in City 전투 관련 스크립트
		var inBattle = document.getElementById("RPGinCity-Fight");
		if (inBattle !== undefined && inBattle !== null){ 
			RPGinCity_HandleBattle(jsonfile);
		} // 전투 틀 처리 완료
		// 일반적인 상점(문서 내에 단 한 개 존재) 처리
		var storeHandle = document.getElementById("RiCStore");
		if (storeHandle !== undefined && storeHandle !== null){
			RPGinCity_HandleStore(jsonfile, 0);
		}
		//동부2구역구 - 중부구역구 이동 가능 여부 처리
		var DowntownRoadOpen = document.getElementById("DowntownRoad");
		if (DowntownRoadOpen !== undefined && DowntownRoadOpen !== null) {
			if (jsonfile.추가2 < 60) {
				DowntownRoadOpen.innerText = "이런!!! 다운타운 로드는 반달로 인해 막혀있다.";
			}
			DowntownRoadOpen.style.visibility = "visible";
		}
		//남부 1구역구 메인퀘스트
		var south1st = document.getElementById("south1st");
		if (south1st !== undefined && south1st !== null) {
			var displaypart;
			if (jsonfile.추가2 < 10){
				displaypart = document.getElementById("beforeBossfight");
				displaypart.style.display = "block";
			} else {
				displaypart = document.getElementById("afterBossfight");
				displaypart.style.display = "block";
			}
		}
		//중부구역구
		var toWest = document.getElementById("toWest");
		if (toWest !== undefined && toWest !== null) {
			if (jsonfile.추가2 < 25) {
				toWest.innerText = "서부 구역구 방향으로 가기 - <중부 구역구가 파괴된 시점에서 서부 구역구를 분리하는 장벽은 강력한 반달러들로 인해 봉쇄 상태를 유지하고 있다>";
			}
			toWest.style.visibility = "visible";
		}
		var toCentralOffice = document.getElementById("toCentralOffice");
		if (toCentralOffice !== undefined && toCentralOffice !== null) {
			if (jsonfile.추가2 < 40) {
				toCentralOffice.innerText = "시청으로 들어가기 - < 시청에 들어갈 방법을 찾아야 한다 >";
			}
			toCentralOffice.style.visibility = "visible";
		}
		var peacefulCentral = document.getElementById("peacefulCentral");
		var dangerousCentral = document.getElementById("dangerousCentral");
		if (peacefulCentral !== undefined && peacefulCentral !== null && dangerousCentral !== undefined && dangerousCentral !== null) {
			if (jsonfile.추가2 >= 70) {
				peacefulCentral.style.visibility = "visible";
			} else {
				dangerousCentral.style.visibility = "visible";
			}
		}
		// 중부 구역구 대피소 퀘스트
		var rescuePeregirl = document.getElementsByClassName("rescuePeregirl");
		if (rescuePeregirl !== undefined && rescuePeregirl !== null && rescuePeregirl.length > 0) {
			if (jsonfile.추가2 < 15) {
				rescuePeregirl[1].remove();
				rescuePeregirl[0].style.display = "block";
			} else if (jsonfile.추가2 === 20) {
				rescuePeregirl[0].remove();
				rescuePeregirl[0].style.display = "block";
			} else {
				rescuePeregirl[0].remove();
				rescuePeregirl[0].remove();
				rescuePeregirl[0].style.display = "block";
			}
		}
		var meetPeregirl = document.getElementsByClassName("meetPeregirl");
		if (meetPeregirl !== undefined && meetPeregirl !== null && meetPeregirl.length > 0) {
			if (jsonfile.추가2 < 20) {
				meetPeregirl[0].style.display = "block";
			} else {
				meetPeregirl[0].remove();
				meetPeregirl[0].style.display = "block";
			}
		}
		//남부 1구역구 상점, 문서 구조상 좀 구현이 복잡하여 분리한다.
		var south1stStore = document.getElementsByClassName("south1stStore");
		if (south1stStore !== undefined && south1stStore !== null && south1stStore.length > 0) {
			if (jsonfile.추가2 < 10) {
				south1stStore[0].style.display = "block";
				RPGinCity_HandleStore(jsonfile, 0);
			} else {
				south1stStore[1].style.display = "block";
				RPGinCity_HandleStore(jsonfile, 1);
			}
		}
		//시청 안의 산토끼 몰매 맞고 가나요~
		var cityOffice = document.getElementsByClassName("cityOffice");
		if (cityOffice !== undefined && cityOffice !== null && cityOffice.length > 0) {
			if (jsonfile.추가2 < 70) {
				cityOffice[0].style.display = "block";
			} else {
				cityOffice[1].style.display = "block";
			}
		}
		var cityOfficeInternal = document.getElementsByClassName("cityOfficeInternal");
		if (cityOfficeInternal !== undefined && cityOfficeInternal !== null && cityOfficeInternal.length > 0) {
			if (jsonfile.추가2 >= 65) {
				cityOfficeInternal[0].style.display = "block";
			} else {
				cityOfficeInternal[1].style.display = "block";
			}
		}
		var cityOffice3F = document.getElementsByClassName("cityOffice3F");
		if (cityOffice3F !== undefined && cityOffice3F !== null && cityOffice3F.length > 0) {
			if (jsonfile.추가2 >= 65) {
				cityOffice3F[0].style.display = "block";
			} else {
				cityOffice3F[1].style.display = "block";
			}
		}
		var mayorRoom = document.getElementsByClassName("mayorRoom");
		if (mayorRoom !== undefined && mayorRoom !== null && mayorRoom.length > 0) {
			if (jsonfile.추가2 >= 70) {
				mayorRoom[0].style.display = "block";
			} else {
				mayorRoom[1].style.display = "block";
			}
		}
		// 서브 퀘스트 관련
		var subQuestContent = document.getElementById("SubQuestContent");
		var parentNode;
		if (subQuestContent !== undefined && subQuestContent !== null){
			parentNode = subQuestContent.parentElement;
		}
		if (parentNode !== undefined && parentNode !== null && subQuestContent !== undefined && subQuestContent !== null) {
			if (jsonfile.추가1 !== 0) {
				parentNode.removeChild( subQuestContent );
			} else {
				subQuestContent.style.display = "block";
			}
		}
		var subQuestEnd = document.getElementById("SubQuestEnd");
		if (parentNode !== undefined && parentNode !== null &&subQuestEnd !== undefined && subQuestEnd !== null) {
			if (jsonfile.추가1 !== 1) {
				parentNode.removeChild( subQuestEnd );
			} else {
				subQuestEnd.style.display = "block";
			}
		}
		var subQuestNotEnd = document.getElementsByClassName("SubQuestNotEnd");
		if (parentNode !== undefined && parentNode !== null && subQuestNotEnd !== undefined && subQuestNotEnd !== null) {
			if (jsonfile.추가1 < 2) {
				parentNode.removeChild( subQuestNotEnd[0] );
			} else {
				subQuestNotEnd[0].style.display = "block";
			}
		}
		// 자동 세이브 처리 - 가장 마지막에 와야 하는 것
		var saveGameHandle = document.getElementById("RPGinCity-saveGame");
		if (saveGameHandle !== undefined && saveGameHandle !== null) {
			console.log("Saving...");
			RPGinCity_SaveHandle(saveGameHandle);
		}
	}
	
	
	// ----------------------------------------------------Main------------------------------------------------------------
	
	// RPGinCity_Title();
	
	// if (currentpage === "사용자:"+usernameStr+"/RPG_in_City.json"){
	// 	RPGinCity_GoToCheckpoint();
	// }
	// else if (currentpage.substring(0,11) === "RPG_in_City") { // in game but not in title screen
		var api = new mw.Api();
		console.log("fetching player info...");
		fetch("https://libertyga.me/index.php?title="+"사용자:"+usernameStr+"/RPG_in_City.json"+"&action=raw")
			.then(function(response) {
				if (!response.ok) {
			        // make the promise be rejected if we didn't get a 2xx response
			        throw new Error("Not 2xx response", {cause: response});
			    }
				return response.json();
			})
			.then(function(response) {
				var parsedata = response;
				RPGinCity_Callback_fetchUserInformation(parsedata);
			}
			)
			.catch(function(e){
				console.log(e);
				document.getElementById("RPGinCityLoad").style.display = "none";
			});
	// }
}
$(RPGinCity);
상태 레벨 :
체력 :
경험치 :
잼 :
배쨈 :
폭탄 :
돈 :
무기 레벨:

문의 :

토론방으로

제작자  : “...이건 의도했던 상황이 아닌데?”

 : “뭐가?”

제작자  : “...남부 1구역구 퀘스트 정보가 날아갔어! 도대체 지금까지의 저장을 어떻게 한거야? 아니, 내가 세이브 틀을 잘못 썼나? 아님 이 문서에 허점이 있나...”

제작자가 허둥대는 걸 보니 아무래도 망한 것 같다...제작자가 문서를 수정할 때까지 여긴 다시 오지 않는게 좋겠다...

메인 화면으로 돌아가기