Python xlib warp_pointer не работи правилно в игрите

Опитвам се да променя показалеца на мишката с помощта на python xlib. Успешно го направих с помощта на warp_pointer. Но когато се опитвам да играя игри като Secret Maryo Chronicles, показалецът на мишката се премества в най-десния ъгъл на екрана, а не в посоченото място. Защо е така? Може ли някой да ми помогне с това?


person Rony Varghese    schedule 30.03.2011    source източник
comment
Може ли да бъдеш по-точен? Какво се опитвате да постигнете с warp_pointer? Как го използвате с игрите, на които го пробвате?   -  person ssokolow    schedule 30.03.2011
comment
С warp_pointer се опитвам да преместя показалеца на мишката във всяка конкретна позиция на екрана. Работи добре на работния плот (в моя случай Ubuntu). Но когато стартирам игра, програмата работи, но показалецът на мишката се премества в долния десен ъгъл на екрана   -  person Rony Varghese    schedule 31.03.2011


Отговори (2)


Изглежда, че противно на това, което се казва в документацията, това е абсолютна координата, а не отместване.

Опитах това и работи според очакванията, ако мислите за координатите като абсолютни координати с 1,1 (или 0,0), започващи в горния ляв ъгъл на прозореца.

from Xlib import X, display
import time

d = display.Display()
s = d.screen()
root = s.root
root.warp_pointer(500,500)
d.sync()

time.sleep( 5 )
root.warp_pointer(250,250)
d.sync()

time.sleep( 5 )
root.warp_pointer(100,100)
d.sync()

time.sleep( 5 )
root.warp_pointer(250,250)
d.sync()
person Atahualpa    schedule 13.06.2012

Не съм запознат със SMC. Възможно е самият той да използва warp_pointer. Знам, че много игри правят, за да симулират относителната поддръжка на движение, въведена едва наскоро в XInput, и мисля, че някои от тях я използват, за да скрият мишката „настрани“. Пробвал ли си с игри, които правят различни неща с мишката?

person ssokolow    schedule 31.03.2011