오토핫키 커뮤니티

자유
2015.02.04 01:41

세븐 나이츠 3쫄 교체 소스

조회 수 830 추천 0 댓글 6

쫄 교체?방식은 1,2,3 번 슬롯 확인후 레벨이 30이 넘거나 슬롯이 비어있는 경우 해당 슬롯의 영웅 교체입니다.

작업한 블루스택의 해상도는 960, 600 입니다. 이미지서치는 모바게님께서 함수 만들어 주신거 응용했습니다.

?

방금전에 만들어서 혹시 오류있을수도 있는데 혹시 보충 사항이나 더 좋은 방법 있으면 댓글 부탁드립니다.

?

ChangeHero()
{
?
?TrayTip, , 쫄 교체 시작
?hero1 := false
?hero2 := false
?hero3 := false
?
?;1번 슬롯 영웅 레벨 확인
?;1번 슬롯이 비어 있는 경우에도 영웅 교체
?if(imageSearcher("영웅관리_1번슬롯.png", "F") = false) {
??x:=210?? ;1번 슬롯?X,Y 좌표 값,
??y:=160
??N:=x|y<<16
??PostMessage, 0x201, 1, %N%, , BlueStacks App Player
??PostMessage, 0x202, 0, %N%, , BlueStacks App Player
??sleep, 2000
??
??if(imageSearcher("영웅관리_레벨30.png", "F") = true)?{
???;팀 해제 버튼 클릭
???imageSearcher("영웅관리_팀해제.png", "C")
??}
??else?{
???imageSearcher("영웅관리_정보창닫기.png", "C")
???hero1 := true
??}
??sleep, 2000
?}

?;2번 슬롯 영웅 레벨 확인
?;2번 슬롯이 비어 있는 경우에도 영웅 교체
?if(imageSearcher("영웅관리_2번슬롯.png", "F") = false) {
??x:=210?? ;2번 슬롯 X,Y 좌표값
??y:=260
??N:=x|y<<16
??PostMessage, 0x201, 1, %N%, , BlueStacks App Player
??PostMessage, 0x202, 0, %N%, , BlueStacks App Player
??sleep, 2000
??
??if(imageSearcher("영웅관리_레벨30.png", "F") = true)
??{
???;팀 해제 버튼 클릭
???imageSearcher("영웅관리_팀해제.png", "C")
??}
??else?{
???imageSearcher("영웅관리_정보창닫기.png", "C")
???hero2 := true
??}
??sleep, 2000
?}
?
?;3번 슬롯 영웅 레벨 확인
?;3번 슬롯이 비어 있는 경우에도 영웅 교체
?if(imageSearcher("영웅관리_3번슬롯.png", "F") = false) {
??x:=210?? ;3번?슬롯 X,Y 좌표값
??y:=360
??N:=x|y<<16
??PostMessage, 0x201, 1, %N%, , BlueStacks App Player
??PostMessage, 0x202, 0, %N%, , BlueStacks App Player
??sleep, 2000
??
??if(imageSearcher("영웅관리_레벨30.png", "F") = true)
??{
???;팀 해제 버튼 클릭
???imageSearcher("영웅관리_팀해제.png", "C")
??}
??else?{
???imageSearcher("영웅관리_정보창닫기.png", "C")
???hero3 := true
??}
??sleep, 2000
?}
?
?loop, 10{
??if(hero1 = false) {
???if (imageSearcher("영웅_해피_1성_레벨1.png", "Hero") = true){
????hero1 := true
???}
???else if (imageSearcher("영웅_해피_2성_레벨1.png", "Hero") = true){
????hero1 := true
???}
???else if(imageSearcher("영웅_해피_3성_레벨1.png", "Hero") = true){
????hero1 := true
???}
???
???if(hero1 = true){
????sleep, 2000
????imageSearcher("영웅관리_팀배치.png", "C")
????sleep, 2000
????imageSearcher("영웅관리_1번슬롯.png", "C")
????sleep, 1000
???}
??}
??sleep, 200

??if(hero2 = false) {
???if (imageSearcher("영웅_아론_2성_레벨1.png", "Hero") = true){
????hero2 := true
???}
???else if(imageSearcher("영웅_아론_3성_레벨1.png", "Hero") = true){
????hero2 := true
???}
???
???if(hero2 = true){
????sleep, 2000
????imageSearcher("영웅관리_팀배치.png", "C")
????sleep, 2000
????imageSearcher("영웅관리_2번슬롯.png", "C")
????sleep, 1000
???}
??}
??sleep, 200
??
??if(hero3 = false) {
???if (imageSearcher("영웅_바론_2성_레벨1.png", "Hero") = true){
????hero3 := true
???}
???else if(imageSearcher("영웅_바론_3성_레벨1.png", "Hero") = true){
????hero3 := true
???}
???
???if(hero3 = true)
???{
????sleep, 2000
????imageSearcher("영웅관리_팀배치.png", "C")
????sleep, 2000
????imageSearcher("영웅관리_3번슬롯.png", "C")
????sleep, 1000
???}
??}
??sleep, 200
??
??if(hero1 = true && hero2 = true && hero3 = true){
???TrayTip, , 쫄교체완료
???break
??}
??
??DragHero()
??sleep, 100
?}
?
?imageSearcher("영웅관리_나가기.png", "C")
?sleep, 2000
?
?return
}

?

DragHero()
{
?TrayTip,,Drag
?X:= 620
?Y:= 480
?N1:=X|Y<<16

?X:= 620
?Y:= 340
?N2:=X|Y<<16

?PostMessage, 0X201, 0, %N1%, , BlueStacks App Player??;마우스 다운
?Sleep, 100
?PostMessage, 0X200, 1, %N2%, , BlueStacks App Player??;마우스 이동
?PostMessage, 0X202, 0, %N2%, , BlueStacks App Player??;마우스 업

?
return
}

?

imageSearcher(img, mode){
?
?; mode 파라미터? F 찾기,? C 클릭, Hero 영웅(오차값 150)
?WinGetPos,x,y,w,h,BlueStacks App Player
?;Windows 7 64비트
?;Screen??775, 601
?;Relative?597, 513
?;Client??594, 488
?SysGet,wFrame,3 ; 현재 시스템의 Border값 (창 테두리 두께)
?SysGet,wCaption,22 ; 현재 시스템의 Caption값 (제목 표시줄 높이)

?posX:=x+wFrame
?posY:=y+wFrame+wCaption
?width:=w-wFrame*2
?height:=h-wCaption-wFrame*2
?edgeX := posX + width
?edgeY := posY? + height

?if(mode = "Hero") {
??msg = %img% %mode%
??;WriteLog(msg)
??ImageSearch, oX, oY, posX, posY, edgeX, edgeY, *150 %A_ScriptDir%\img\%img%
??;MouseMove,oX,oY???????? ;마우스 위치 확인
?}
?else {
??ImageSearch, oX, oY, posX, posY, edgeX, edgeY, *40 %A_ScriptDir%\img\%img%
?}

?;x2:=oX-posX
?;y2:=oY-posY
?;MsgBox, x : %oX%? y : %oY%, x2 : %x2%? y2: %y2%, posX : %posX%? posY: %posY%
?
?if(ErrorLevel = 0){
??;WriteImgLog(img, 0)
??
??;마우스 위치 확인
??;MouseMove,oX,oY
??
??if(mode="C" || mode="Hero")
??{
???;WriteImgLog("클릭",0)
???imgX := oX + 14
???imgY := oY - 8
???x:=imgX-posX
???y:=imgY-posY
???N:=x|y<<16
???
???PostMessage, 0x201, 1, %N%, , BlueStacks App Player
???PostMessage, 0x202, 0, %N%, , BlueStacks App Player
???sleep, 100
??}
??return true
?}
?else if (ErrorLevel = 1){
??;WriteImgLog(img, 1)
??;Msgbox, 못찾음
?return false
?}
}


  • 붕붕검 2015.02.05 09:52

    덕분에 잘보고 갑니다

  • 칼츠테일 2015.02.13 15:28

    혹시 스킬소스도 있나요? 지금 현재 스킬에서 완전 막혀서 멘붕상태 ㅠㅠ

  • 보득 2015.02.18 13:57
    스킬은 쉬워요. 스킬쪽 영웅 얼굴 잘라서 이미지서치해서 클릭하면 됩니다. 스킬 이미지로 찾지말고 영웅 얼굴 잘라서 찾아서 하심됩니다ㅡ
  • 내붕알용문신 2015.03.02 19:02

    잘보고가요 ^^?

  • 까르민 2015.03.03 13:50

    잘 봤습니다.... 근데 구조상 지연시간이 너무많네요 ..


    1. 블택 화면 전체에서 ?이미지를 찾으므로 지연

    2.슬립이 너무 많아요.?


    서치 함수를 만들어 쓰시니 거기다가 루프문의 더해서 찾으면 바로 분기되게 하는게 좋죠.


    모험끝나고 30업 확인창 누르고 30쫄위치 확인하고 영웅관리 창들어가서 오른쪽에서 영웅선택해서 변경하고

    변경 확인하고 나와서 모험시작창 확인하는데 까지(1마리 교환시) 걸리는 시간이 10초이내로는 힘들듯하네요~

    8~10초정도는 나와야 시간당 60+-2회 정도 돌아져요(제 매클 기준상....)


    아참 그리고?hero1,2,3 번을 gosub 쫄교환 으로 분기하면 코드를 좀 줄일 수 있겠네요.



    그러는 나도 귀찮아서 대충 ..털썩....아닙니다.....


  • profile
    다람쥐짱 2015.03.19 22:14

    알고리즘이 이렇게 되군요. 잘보고 배웁니다.


List of Articles
분류 제목 글쓴이 최근변경 추천
질문 오토핫키 WinGetActiveTitle 11 쑤하람 2015.07.25 0/0
질문 마우스 기능 스크립트좀 도와주세요ㅠ.ㅠ 18 서시 2016.04.29 0/0
질문 오토핫키 맥북에서 사용가능한가요? 10 우유송이 2024.06.16 0/0
질문 초보 궁금한점 가르쳐주세요 2 야천 2015.02.05 0/0
질문 에디트박스 스크롤 질문드립니다 4 보득 2015.02.05 0/0
질문 혹시 스크립트 분석해서 최적화해주는 그런 프로그램 ... 7 옥짱 2015.02.05 0/0
자유 외치기님, 모바게님은 오핫계의 신의 영역이십니다... 3 파더 2015.02.05 0/0
질문 혹시 스크립트 비교 쉽게 해주는프로그램도있나요? 8 튀니지사람들 2015.02.13 0/0
질문 [오토핫키] 여러개의 사진을 이미지 서칭하는 방법에 ... 5 동방밀사 2015.02.05 0/0
질문 [별이되어라]오토핫키 잘 아시는분 있으시면 도와주세요 16 천조국 2015.02.05 0/0
질문 비활성 매크로에 관하여 4 냉면 2015.02.04 0/0
자유 혹시 여기 계시는 분들중에 티스토리 초대장 필요하신... 13 외치기 2015.02.21 2/0
질문 요기를 처음 알게되어 궁금한게 있어서 질문드려요~ 1 totoro 2015.02.04 0/0
질문 run을 이용한 adb 쉘 커맨드 실행 관련한 질문입니다 ㅠㅠ 11 Hangoon 2015.05.18 0/0
자유 세븐 나이츠 3쫄 교체 소스 6 보득 2015.03.19 0/0
자유 [AutoPM Ver 1.58] 포켓메이플스토리 매크로 8 은다 2015.04.25 4/0
정보 GUI - 파일(폴더) 목록을 DropDownList로 만들기 14 모바게 2016.06.13 3/0
질문 모비즌 pc버전의 color값이 안나오는 문제 시에 2015.02.03 0/0
질문 트레이 아이콘 더블클릭과 같은효과 1 웃기지마 2015.02.02 0/0
질문 이미지서치 img 이동 질문드립니다 4 광어형님 2015.02.02 0/0
Board Pagination Prev 1 ... 185186187188189190191192193 ... 209 Next
/ 209

전체 최신 인기글

전체 주간 인기글