바드슈
2016-05-22 22:48
조회: 13,524
추천: 15
창 크기 조절 도우미(수정)라그나로크 창모드로 하시는 분들이 많을텐데,
장사캐릭을 켜둔다거나 보조캐릭 세워두는 용으로 창을 2~3개 이상 켜게 되는 일이 많습니다. 이때 창 크기가 다 같으면..뭐 별로 관계는 없지만 화면도 많이 가리고 비디오메모리도 많이 아깝고 하거든요. 그래서 주캐릭이 떠있는 창은 큰 창으로, 부캐릭이 떠있는 창은 작은 창으로.....이렇게 쓰고 싶은 분들을 위해 만들어봤습니다... 물론, setup 파일 실행시켜서 창 크기 조정하고 저장해도 됩니다. 그게 정석인데, 이게 창 크기가 달라지면 화면 아래 채팅창들 위치가 달라지고 이리저리 밀려서 매번 재조정하기가 영 귀찮더라는 말이죠.... 이런 식으로 생겼습니다. 제가 사용하는 5가지 해상도 기준으로 만들었습니다. 라그 실행 전 각 버튼을 클릭하면, 해당 해상도로 조정해줍니다. 맨 아래 있는 SavePosition 버튼은, 방금 실행했던 라그 창에 맞춰서 채팅창의 위치를 저장해주는 버튼입니다. 예를 들어보겠습니다. 지금 라그 사냥은 1600*1024 해상도로 켜서 주로 플레이하고, 프론테라에 노점 연 캐릭은 800*600 으로 켜두고 싶다고 합시다. 맨 처음 실행할 때는 좀 조정이 필요합니다.. 우선 해당 프로그램을 먼저 실행하고 나서, (지금 사용중인 라그 해상도가 표시됩니다) 아마도 지금 사용중일.. 1600*1024 해상도 그대로 라그를 한 번 실행했다 종료한 후, SavePosition 버튼을 누릅니다. 그러면 라그 폴더 내에 1600.lua 라는, 1600*1024 해상도에서 사용하던 채팅창 위치가 기록됩니다. 다음은 800*600 버튼을 눌러서 해상도를 바꿔주고, 다시 라그나로크를 켭니다. 큰 화면에 맞춰서 채팅창이 이리저리 밀려있을텐데요, 이것을 편하게 조절한 다음에 라그를 종료합니다. 그리고 다시 SavePosition 버튼을 누르면, 800.lua 파일에 채팅창 위치가 기록됩니다. 이걸로 끝입니다... 이제부터 큰 화면에서 하려면 1600*1024 버튼 누른 후 라그 실행, 작은 화면에서 하려면 800*600 버튼 누르고 라그 실행하면 됩니다. ---------------------------------------- 제가 GUI 프로그래밍을 할 줄 몰라서, 좀 간단한 것 없나 찾아보다가.. 무료로 간단하게 할 수 있는게 오토핫키라, 얼른 설명서 보고 만들어봤습니다. 오토핫키 프로그램 자체에 혐오감을 가진 분이 많으실 걸로 생각합니다..... 그렇기 때문에 압축파일 안에 소스코드 첨부했고, 자바나 다른 프로그래밍 툴 쓸 줄 아는 분은 직접 활용하시도록 관련된 내용 설명해두겠습니다. ----------------------------------------------------- 라그나로크 설치 폴더는 레지스트리 내에 저장되는데..위치는 HKEY_CURRENT_USERSOFTWAREGravityRagnarokOnline 변수명은 RagPath 입니다. 화면 해상도는..라그나로크 설치 폴더 내에 있는 Savedata 폴더, Optioninfo.lua 에 저장됩니다. OptionInfoList["WIDTH"] , OptionInfoList["HEIGHT"] 가 각각 화면 너비와 높이값입니다. 채팅창 위치는 동일 폴더 내 ChatWndInfo_U.lua 에 저장됩니다. 이 lua 파일들은 라그 종료시 다시 저장됩니다. 화면 위치나 줌 정도 등등 마지막 기록이 남아있는데, 다른 값은 건드리지 않도록 했습니다. 소스 보시면 아시겠지만 설명서 읽으면서 얼기설기 만들어 엉망진창입니다. 전문가 분들의 도움 환영합니다.... 아참,,, 64비트 윈도우에서 컴파일해서 32비트인분은 실행 안될지도 모르겠습니다 ------------------------------------------------------------------------------ 죄송합니다. 제가 챗창을 거의 신경 안써서 눈치못챘는데 첫번째 채팅창만큼은 파일이 아니라 레지스트리에 저장되네요;; 저장되는 경로는 64비트 윈도우에서는 HKEY_LOCAL_MACHINESOFTWAREWOW6432NodeGravity SoftRagnarokUIRectInfo 32비트 윈도우에서는 HKEY_LOCAL_MACHINESOFTWAREGravity SoftRagnarokUIRectInfo 여기에 각 윈도우 크기나 넓이 등등등이 다 저장되어있습니다.. 일단 따로 관리하기 귀찮아서;; saveposition 버튼 누르면 해당 레지스트리 각각 해상도.rgt 파일에 저장되도록 했습니다. 덕분에 이제 오만 UI가 해상도별로 다 확실하게 저장되지만 레지스트리를 다시 쓰기 때문에 관리자 권한으로 실행이 필요합니다..... 혹시 수정 전에 시험해보셨던 분들께는 정말 죄송합니다.
EXP
323,468
(53%)
/ 335,001
바드슈
|
인벤 공식 앱
댓글 알람 기능 장착! 최신 게임뉴스를 한 눈에 보자