요즘 심즈를 하고있는데 노가다성이 심해서 돈식물을 자동으로 심는 간단한 매크로를 만들려고 했는데요
제가 하려는것은 특정 이미지가 발견 안되었을떈 특정 좌표클릭(421,434)하고 잠시뒤 다시 어떤 특정좌표(399,301) 클릭을 하는것인데요.이미지가 안되면 딜레이가 생기는거 보면 명령은 진행되는거 같은데 막상 클릭이 특정좌표 클릭이 되질 않는 현상이 발생하고있습니다. 무엇이 문제인지 감을 못잡겠습니다 문제가 뭔지 알려주시면 정말 감사할 것 같습니다 또 블택이 컨트롤클릭이 막혀서 어쩔수없이 이런 번거로운 방법으로 특정좌표 클릭을하고 있는데 다른방법이 있을지요.. 1년전만해도 완전히 아무것도 몰랐는데 비활성도 도전해보는 제자신이 신기하네요!
f1::시작
coordmode, pixel, screen
wingetpos, pos_x, pos_y, width, height, BlueStacks App Player
x_right := width + pos_x
y_bottom := height + pos_y
ImageSearch, FoundX, FoundY, %pos_x%, %pos_y%, %x_right%, %y_bottom%, *50 구입.png
if (ErrorLevel = 0) {
sleep,1000
비활성왼쪽클릭(FoundX, FoundY) ;찾은 좌표를 클릭합니다.
ImageSearch ,FoundX, FoundY, %pos_x%, %pos_y%, %x_right%, %y_bottom%, *50 옥수수.png
if (ErrorLevel = 1) {
sleep,2000
lparam2 := 421|434<<16
PostMessage, 0x201, 1, %lparam2%, , BlueStacks App Player ;설치자리
PostMessage, 0x202, 0, %lparam2%, , BlueStacks App Player
sleep,2000
lparam3 := 399|301<<16
PostMessage, 0x201, 1, %lparam3%, , BlueStacks App Player ;설치확인닫기
PostMessage, 0x202, 0, %lparam3%, , BlueStacks App Player ;
sleep,3000
비활성왼쪽클릭(FoundX, FoundY) ;찾은 좌표를 클릭합니다.
}
비활성왼쪽클릭(x좌표, y좌표)
{
wingetpos, w_x, w_y, w_w, w_h, BlueStacks App Player
내부좌표x := x좌표 - w_x
내부좌표y := y좌표 - w_y
lparam := 내부좌표x|내부좌표y<<16
PostMessage, 0x201, 1, %lparam%, , BlueStacks App Player
PostMessage, 0x202, 0, %lparam%, , BlueStacks App Player
sleep, 1000
}
return
코드를 다 확인하진 않았지만 님이 특정 좌표를 찾으라고 한 코드 위에 메시지 출력문을 넣어서 거기까지 제대로 메시지가 출력이 되는지 확인해보세요. 만약 출력이 된다면 좌표값에 무엇이 들어있는지 확인해보시구요. 코드를 한줄한줄 추적해가면 문제를 발견할 수 있을거에요.