매크로

자유
2015.02.04 01:41

세븐 나이츠 3쫄 교체 소스

조회 수 826 추천 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

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


최근 추천글

오핫 제작합니다 1 설입 2024-06-18 23:45 +2
List of Articles
분류 제목 글쓴이 최근변경 추천
자유 신규 모바일게임 추천받습니다 2 fehskjf 2021.06.28 0/-1
자유 시간지정해서 그시간이 되면 매크로가 동작되게 하고 ... 11 지니블렉션 2015.04.20 0/0
자유 슬 저도 그림이 그려져가네요 10 valum 2015.04.10 1/0
자유 스팀(Steam) 로그인 로그아웃 오토핫키 제작의뢰 합니다. 뉴비에요 2020.08.16 0/0
자유 스톤에이지프리서버매크로완성.. 2 아리가또웆 2021.06.19 0/0
자유 스톤에이지 메크로 완성및 vm우회 1 아리가또웆 2021.06.19 0/0
자유 스타크레프트 땅파기2 메크로 외주 구합니다 1 혀니 2023.02.24 0/0
자유 스킬 이미지인식 매크로 제작의뢰 원합니다 라일 2019.10.09 0/0
자유 스크립트짜는게 어려워서 디컴파일도전해봤지만 5 달봉 2016.09.21 0/0
자유 스크립트 제작 뭘로 하시나요? 1 북붕 2016.05.25 0/0
자유 숨어야산다님 조언 따라 만들어본 픽셀,좌표 확인기! 11 으뜸어린이 2014.11.28 1/0
자유 숨어야산다 님의 블레이드 메크로... 5 손맹 2015.01.16 0/0
자유 세상에.... 한글 변수가 가능한가요? 3 그레고리온 2015.01.04 0/0
자유 세븐나이츠 매크로 만드는중.. 11 캔디염 2015.02.20 1/0
자유 세븐나이츠 매크로 만드는 중 11 보득 2015.02.25 3/0
자유 세븐나이츠 만들었어요 ㅠㅠ 8 고파사탕 2016.11.20 0/0
자유 세븐 나이츠 3쫄 교체 소스 6 보득 2015.03.19 0/0
자유 세나게시판은 미라클매크로때문에 시끄럽군요. 8 외치기 2015.01.29 0/0
자유 세나 쫄작 소스공유합니다.(제약사항 많음) 18 swksd 2015.06.14 0/0
자유 세나 매크로 테스트 하실분 구합니다.(마감) 55 생물 2015.01.01 2/0
Board Pagination Prev 1 ... 121314151617181920 ... 28 Next
/ 28

전체 최신 인기글

전체 주간 인기글