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

[PYTANIE]Jakich bibliotek użyć


Rekomendowane odpowiedzi

Opublikowano

Witam

Chciałabym napisać bota na klikanie spacji lub jakiegokolwiek tam klawisza co wyznaczony czas odczytany z pliku

I oto moje pytanie, jakich bibliotek powinnam do tego użyć? Czy Timers? Albo adlibregister.

Oto potrzebny kawałek kodu:

[HitObjects]
124,308,912,2,0,B|180:332|228:308,3,100
292,276,3094,6,0,B|340:252|396:276,3,100,0|0|0|0
392,192,5276,6,0,B|376:80,1,100
304,64,6367,2,0,B|192:80,1,100
136,120,7458,6,0,B|152:232,1,100
224,248,8549,2,0,B|336:232,1,100,0|4
376,176,9640,6,0,B|488:160,1,100,0|8
432,88,10731,1,0
384,24,11276,2,0,B|285:38,1,100,8|0
240,104,12367,5,8
200,256,13458,1,8
136,208,14003,6,0,B|80:192|24:224,1,100,0|8
80,288,15094,1,0
128,352,15639,2,0,B|184:360|226:337,1,100,8|0
272,272,16731,5,8
312,120,17822,1,8
232,136,18367,6,0,B|128:112,3,100,0|8|0|8
112,192,20549,6,0,B|210:214,3,100,0|8|0|8
264,276,22731,5,0
344,284,23276,1,8
416,252,23822,1,0
448,180,24367,1,8
416,108,24912,6,0,B|208:92,1,200
136,88,26549,1,0
112,168,27094,6,0,B|80:216|104:280,2,100,4|8|0
184,208,28731,1,8
256,240,29276,2,0,B|274:287|242:335,2,100,0|8|0
336,232,30912,1,8
416,216,31458,6,0,B|424:104,2,100,0|8|0
336,232,33094,1,8
264,88,34185,1,8
264,88,34731,2,0,B|256:187,1,100,0|8
224,264,35822,6,0,B|160:288|112:256,2,100,4|8|0
304,240,37458,1,8
376,208,38003,2,0,B|440:184|488:216,2,100,0|8|0
328,144,39640,1,8
280,80,40185,6,0,B|160:72,2,100,0|8|0
328,144,41822,1,8
360,304,42912,5,8
280,296,43458,1,0
200,288,44003,1,4

 

 

 

Generalnie czas po 2 przecinku (3 liczba) to czas po którym trzeba nacisnąć klawisz np. 3 pierwsze

912
3094
5276

@a i czas liczy się od początku czyli 2 raz trzeba nacisnąć po (3094-912)

I jeśli w linijce pojawi się znacznik B| klawisz musi być przytrzymany najlepiej do 50 max 100 ms przed kolejnym kliknięciem

124,308,912,2,0,B|180:332|228:308,3,100
292,276,3094,6,0,B|340:252|396:276,3,100,0|0|0|0

 

Więc moje 1 pytanie jest takie:

Jakiej biblioteki użyć do odczytania pliku w formacie .osu (ale otwiera się normalnie w notatniku)

Czego użyć do odmierzania czasu?

@

I czy to jest w ogóle możliwe xD

Opublikowano

Żeby odczytać plik robisz tak:

$read = FileRead("plik")
W ten sposób w zmiennej masz zawartość tego pliku taką, jaką masz np. w notatniku.

Potem używasz paru funkcji typu np. StringSplit czy StringRegExp żeby wydobyć dane.

 

Do obsługi czasu albo TimerInit i TimerDiff albo baw się z Timers.au3

846331404756772371599.jpeg
Opublikowano

Co ty bota do osu! robisz? ;D

No tak jakby relax moda xD

Phoenix_PL dzięki za odpowiedź ^^ Jak wrócę do domu zacznę się bawić, teraz informatyka i uczymy się worda...

Opublikowano
standardowa biblioteka files i timers
$timer = _timer_init()

for $i = 1 to _filecountlines($sciezkaplikuLUBhandle)
$liniapliku = filereadline($sciezkaplikulubhandle,$i)
$split = stringsplit($liniapliku,",")
consolewrite($split[3] & @crlf) <- tym sobie sprawdzisz czy to jest ta tablica
do
sleep(10)
until(_timer_diff($timer) > $split[3])
next
 

mogą gdzieś być błędy i tablica może być nie ta

Opublikowano

Dzięki jakoś to działa ^^ teraz muszę sobie ogarnąć, żeby zaczęło sczytywać od linijki z zawartością

[HitObjects]

 

+1 linijka w dół

potem usprawnić działanie @działanie usprawnione

$sciezkaplikulubhandle

 

i będzie chyba z górki ;D

Opublikowano

@UP

jeśli chcesz zrobić sprawdzanie od np. tej linijki z tym [HitObjects], to:

 

$zmienna = StringInStr($zmienna_z_tekstem, "[HitObjects]")

zwróci Ci numer znaku w pliku, od którego zaczyna się ten tekst [HitObjects]. Później wystarczy 'uciąć' wszystkie znaki przed i gotowe.

 

 

$zmienna = StringInStr($zmienna_z_tekstem, "[HitObjects]")
$result = StringTrimLeft($zmienna_z_tekstem, zmienna+11)

 

przy czym w $zmienna_z_tekstem ma być zawartość pliku, a $result to tekst po [HitObjects]


 

Zarchiwizowany

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

×
×
  • Dodaj nową pozycję...