다모앙 경험치 표시 상세화하기
알림
|
페이지 정보
작성일
2024.07.22 21:36
본문
tampermonkey 스크립트이므로 해당 확장이 필요합니다.
: https://chromewebstore.google.com/detail/tampermonkey/dhdgffkkebhmkfjojejmpbldmpobfkfo
위와 같이 현재 경험치, 총 경험치, 상세 퍼센트를 소숫점 둘째 자리까지 표시합니다.
소스코드는 댓글에...
댓글 6
/ 1 페이지
Purme님의 댓글
@SDK
이 기능 그냥 다모앙 자체에 포함시켜도 좋겠네요.
디폴트가 아니면 사용자 옵션 메뉴에서 선택 가능하게요.
현재는 프로그래스 바에 마우스 Hovering 하면 다음 단계까지 남은 점수가 툴팁으로 표시되긴 하는데 모바일에선 안되더라고요.
이 기능 그냥 다모앙 자체에 포함시켜도 좋겠네요.
디폴트가 아니면 사용자 옵션 메뉴에서 선택 가능하게요.
현재는 프로그래스 바에 마우스 Hovering 하면 다음 단계까지 남은 점수가 툴팁으로 표시되긴 하는데 모바일에선 안되더라고요.
LiNE님의 댓글의 댓글
@Purme님에게 답글
계산식 한줄이 끝이니.. 서버측에서 하면 더 별거아닌 코드죠 ㅎㅎ
humanitas님의 댓글
감사합니다.
그런데, 이것 표시 해 놓으면,
다모앙 중독 될 것 같습니다. ㅎㅎㅎ
퍼센테이지 보면서... 조금만 더 하면 몇 %네.. 조금 만 더... 더... 하다가... ㅎㅎㅎ
그런데, 이것 표시 해 놓으면,
다모앙 중독 될 것 같습니다. ㅎㅎㅎ
퍼센테이지 보면서... 조금만 더 하면 몇 %네.. 조금 만 더... 더... 하다가... ㅎㅎㅎ
LiNE님의 댓글
// @name 다모앙 경험치 표시 상세화
// @version 1.0
// @description 경험치에 퍼센트를 추가로 표시합니다
// @author LiNE
// @match https://damoang.net/*
// @grant none
// ==/UserScript==
(function() {
'use strict';
// 퍼센트를 추가하는 함수
function addExpPercentage() {
// Exp 요소 선택
const expElement = document.querySelector('.win_point');
if (!expElement) return;
// Exp 값을 가져와 숫자로 변환
const expText = expElement.textContent.trim();
const expValue = parseInt(expText.replace(/,/g, '').replace(/[^0-9]/g, ''), 10);
// 특정 data-bs-title 속성 요소 선택
const nextElement = document.querySelector('div[data-bs-title*="Next"]');
if (!nextElement) return;
// data-bs-title에서 Next 값을 가져와 숫자로 변환
const nextText = nextElement.getAttribute('data-bs-title');
const cleanedNextText = nextText.replace("Next ", "").replace(/,/g, '');
const nextValue = parseInt(cleanedNextText, 10);
// 퍼센트 계산
const percentage = (expValue / (expValue + nextValue)) * 100;
// 퍼센트를 소숫점 두 자리로 포맷
const formattedPercentage = percentage.toFixed(2);
// 총 값 계산
const totalValue = expValue + nextValue;
// Exp 요소의 텍스트를 업데이트
expElement.textContent = `Exp ${expValue.toLocaleString()} / ${totalValue.toLocaleString()} (${formattedPercentage}%)`;
}
// 페이지가 로드된 후 함수를 실행
window.addEventListener('load', addExpPercentage);
})();