Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Питон. как сделать чтобы функция не всегда работала , а только когда вызывают

Gold Gold Ученик (22), на голосовании 2 месяца назад
как сделать, чтобы она работала не именно когда код включаю сразу
Голосование за лучший ответ
Сталкер Оракул (60545) 3 месяца назад
Вызывай когда надо, в чем проблема?
Gold GoldУченик (22) 3 месяца назад
она вызывается не когда надо
Gold GoldУченик (22) 3 месяца назад
сама
СталкерОракул (60545) 3 месяца назад
гонишь...Функция не вызывается пока в коде не вызовешь.
Gold Gold Ученик (22) Сталкер, то что на скрине это я её не вызвал. я просто написал функцию, а сработать она должна когда на экране появится идентификатор блока в майнкрафте. то есть я включаю код и вместо того чтобы включится когда я на лаву навожусь он включается сразу после включения кода
Gold GoldУченик (22) 3 месяца назад
дай тг
Сталкер Оракул (60545) Gold Gold, обойдешься:-)
Alex M Ученик (213) 3 месяца назад
Без тз и всего кода не понять что и как должно работать
Gold GoldУченик (22) 3 месяца назад
извини, оказывается там в другой функции активировалась эта функция
kassadin one Знаток (329) 3 месяца назад
Через проверку состояния. Как ты хочешь запускать скрипт? Можно сделать проверку состояний и при каком то условии(например нажатие на клавишу) запускается нужная функция, собственно это и будет её вызов во время которого она будет работать
Gold GoldУченик (22) 3 месяца назад
извини, я уже понял что за проблема, оказывается там в другой функции эта функция запускалась, а я не заметил. я хотел чтобы оно запускалось когда я в майне появлялся идентификатор лавы, но оно запускалось даже когда я не вписывал чтобы когда появится идентификатор то сработает функция, оказалось она запускалась раньше в другой функции
♡$ⴎG@r₱u₷sყ♡ Искусственный Интеллект (158632) 3 месяца назад
  
import time
import random
from pynput.mouse import Controller

def move_mouse_smoothly(x, y, duration, jitter=True):
"""
Плавное перемещение мыши с имитацией реальных движений.

Args:
x: Конечная координата X.
y: Конечная координата Y.
duration: Длительность перемещения в секундах.
jitter: Включить/выключить случайные отклонения для имитации дрожания рук.
"""

mouse = Controller()
start_x, start_y = mouse.position
start_time = time.time()

while time.time() - start_time < duration:
new_x = start_x + (x - start_x) * (time.time() - start_time) / duration
new_y = start_y + (y - start_y) * (time.time() - start_time) / duration
if jitter:
new_x += random.uniform(-2, 2)
new_y += random.uniform(-2, 2)
mouse.position = (new_x, new_y)
time.sleep(0.01)

def check_block_identifier():
# Здесь должна быть логика для проверки наличия идентификатора блока.
# Например, использование библиотеки для обработки изображений или взаимодействие с API.
return True # Или False, в зависимости от условия

# Основной цикл программы
while True:
if check_block_identifier():
move_mouse_smoothly(100, 100, 2) # Пример вызова функции с координатами и длительностью
time.sleep(1) # Пауза между проверками, чтобы не нагружать процессор
Gold GoldУченик (22) 3 месяца назад
извини, уже решил, там оказывается оно запускалось в другом месте
Похожие вопросы