-
Notifications
You must be signed in to change notification settings - Fork 0
/
collect_nuts.py
121 lines (110 loc) · 2.89 KB
/
collect_nuts.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
#!/usr/bin/env python3
import argparse
import serial
import time
from time import sleep
import datetime
parser = argparse.ArgumentParser()
parser.add_argument('port')
args = parser.parse_args()
def send(msg, duration=0):
print(msg)
ser.write(f'{msg}\r\n'.encode('utf-8'))
sleep(duration)
ser.write(b'RELEASE\r\n')
ser = serial.Serial(args.port, 9600)
def daychange():
send('Button HOME', 0.2)
sleep(0.8)
send('LY MAX', 0.1)
sleep(0.2)
send('LX MAX', 0.05) # ゲームニュース
sleep(0.05)
send('LX MAX', 0.05)
sleep(0.05)
send('LX MAX', 0.05)
sleep(0.05)
send('LX MAX', 0.05)
sleep(0.05)
send('Button A', 0.05) # 設定画面
sleep(1)
send('LY MAX', 1.5) # 一番したまで突っ切る
send('Button A', 0.05)
sleep(0.05)
send('LY MAX', 0.1)
sleep(0.05)
send('LY MAX', 0.1)
sleep(0.05)
send('LY MAX', 0.1)
sleep(0.05)
send('LY MAX', 0.1)
sleep(0.05)
send('Button A', 0.05) # 日付と時刻ページへ
sleep(0.2)
send('LY MAX', 0.1)
sleep(0.1)
send('LY MAX', 0.1)
sleep(0.1)
send('Button A', 0.05)
sleep(0.05)
send('Button A', 0.05) # 年
sleep(0.05)
send('Button A', 0.05) # 月
sleep(0.05)
send('Button A', 0.05) # 日
sleep(0.05)
send('LY MIN', 0.1)
sleep(0.05)
send('Button A', 0.05) # 時
sleep(0.05)
send('Button A', 0.05) # 分
sleep(0.05)
send('Button A', 0.05) # OK
sleep(0.05)
send('Button A', 0.05) # 現在の日付と時刻
sleep(0.15)
send('Button HOME', 0.1)
sleep(0.7)
send('Button HOME', 0.1)
sleep(1.0)
def getnuts():
send('LY MIN', 0.1) # 上を向く
sleep(0.1)
send('Button A', 0.1) # 木を向く
sleep(0.2)
send('Button A', 0.1) # 話しかける
sleep(0.2)
send('Button A', 0.1) # 揺らしてみますか
sleep(4)
send('Button A', 0.1) # 収穫一回目
sleep(1.5)
send('LY MAX', 0.1) # もう一度揺らしますか(1個のみ)
sleep(0.1)
send('Button A', 0.1)
sleep(1.5)
send('LY MAX', 0.1) # もう一度揺らしますか(2, 3個の時)
sleep(0.1)
send('Button A', 0.1) # 拾い上げた,いいえ,いいえ
sleep(1.5)
send('Button A', 0.1) # 木の実1をN個手に入れた
sleep(1.5)
send('Button A', 0.1) # 木の実2をN個手に入れた
sleep(1.5)
send('LY MAX', 0.1) # 下を向く(2個)
sleep(0.1)
send('Button A', 0.1) # 木の実3を手に入れた
sleep(1.5)
send('LY MAX', 0.1)
sleep(0.1)
send('Button A', 0.1)
sleep(1)
sleep(2)
send('Button LCLICK', 0.2)
sleep(2)
try:
while 1:
getnuts()
daychange()
except KeyboardInterrupt:
send('RELEASE')
ser.close()