Skocz do zawartości
  • 👋 Witaj na MPCForum!

    Przeglądasz forum jako gość, co oznacza, że wiele świetnych funkcji jest jeszcze przed Tobą! 😎

    • Pełny dostęp do działów i ukrytych treści
    • Możliwość pisania i odpowiadania w tematach
    • System prywatnych wiadomości
    • Zbieranie reputacji i rozwijanie swojego profilu
    • Członkostwo w jednej z największych społeczności graczy

    👉 Dołączenie zajmie Ci mniej niż minutę – a zyskasz znacznie więcej!

    Zarejestruj się teraz

[Problem] skrypt z timerem.


Rekomendowane odpowiedzi

Opublikowano

Witam. Posiadam taki oto skrypt:

 

;Anti Kick head to south

If (TimerDiff($Timer3) >= 488312 And GUICtrlRead($south) == 1) Or ($zmienna2 == 0 And GUICtrlRead($south) == 1) Then

$zmienna2 = 1

ControlSend("Tibia", '', '', '{CTRLDOWN}' & '{UP}' & '{CTRLUP}')

Sleep(10)

ControlSend("Tibia", '', '', '{CTRLDOWN}' & '{DOWN}' & '{CTRLUP}')

$Timer3 = TimerInit()

EndIf

If (GUICtrlRead($south) == 4) and $zmienna2 = 1 Then

$zmienna2 = 0

MsgBox(0, "Confirmation", "Anti-Kick has stopped work.")

EndIf

 

Z tego co zauważyłem to skrypt się odpala co 8 minut i więcej. Raz się odpala po 8 min, a raz i po 14.

 

Chciałbym by ten skrypt się odpalał w wylosowanym czasie w upływie od 8 min- 14. Czyli raz się poruszy np. 8:01, drugi raz 9:16, trzeci 13:21. Da się tak zrobić?

 

Dzięki.

 

 

Opublikowano

Z tego co zauważyłem to skrypt się odpala co 8 minut i więcej. Raz się odpala po 8 min, a raz i po 14. Chciałbym by ten skrypt się odpalał w wylosowanym czasie w upływie od 8 min- 14.

 

Co chciałbyś jak już sam zauważyłeś "skrypt się odpala co 8 minut i więcej. Raz się odpala po 8 min, a raz i po 14". :)

 

No ale pomijając tą zapewne przypadkową niezgodność to spróbuj:

Random(480000, 840000, 1). - Zwraca liczbę wylosowaną z podanego przedziału, czyli bezpośredni czas w ms. Od 8 do 14 min.

4417049059_6234f40fb5.jpg
Storm has passed but the destruction are still visible.

Opublikowano

No skoro zwraca Ci tą wartość to porównujesz z nią zamiast z konkretną czyli: 488312.

To twój skrypt więc ty powinieneś wiedzieć gdzie to wstawić.

Najlepiej zrób zmienną na początku programu czy globalną i przypisz do niej ten random, a potem zamiast 488312 wstawiasz tą zmienną i jak się wykonają te instrukcje to znowu przypisujesz random do tej zmiennej.

4417049059_6234f40fb5.jpg
Storm has passed but the destruction are still visible.

Opublikowano

Dzięki, zrobiłem tak i najwyraźniej działa xD

 

;Anti Kick head to north
If (TimerDiff($Timer3) >= Random(420000, 720000, 1) And GUICtrlRead($north) == 1) Or ($zmienna1 == 0 And GUICtrlRead($north) == 1) Then
		$zmienna1 = 1
		ControlSend("Tibia", '', '', '{CTRLDOWN}' & '{DOWN}' & '{CTRLUP}')
		Sleep(10)
		ControlSend("Tibia", '', '', '{CTRLDOWN}' & '{UP}' & '{CTRLUP}')
		$Timer3 = TimerInit()
	EndIf
		If (GUICtrlRead($north) == 4) and $zmienna1 = 1 Then
		$zmienna1 = 0
		MsgBox(0, "Confirmation", "Anti-Kick has stopped work.")
	EndIf

 

Zmienną jest Timer3 = 0

 

 

Zarchiwizowany

Ten temat przebywa obecnie w archiwum. Dodawanie nowych odpowiedzi zostało zablokowane.

×
×
  • Dodaj nową pozycję...