質問編集履歴
2
【追記】を追記
title
CHANGED
File without changes
|
body
CHANGED
@@ -120,4 +120,120 @@
|
|
120
120
|
⇒しいて言うなら切り上げに区切りの制御を入れた感じ。
|
121
121
|
|
122
122
|
ちなみに処理的には動くはずなので、
|
123
|
-
動かしてみて、いくら勝てたか教えてくれ。(笑
|
123
|
+
動かしてみて、いくら勝てたか教えてくれ。(笑
|
124
|
+
|
125
|
+
|
126
|
+
【追記/編集しました。】
|
127
|
+
```ruby
|
128
|
+
#rotation 総回転数
|
129
|
+
#firstHit 初当たりの回数
|
130
|
+
#hit16R 16R当たり回数
|
131
|
+
#hit6R 6R当たり回数
|
132
|
+
#wonPachinkoBall 出玉数
|
133
|
+
|
134
|
+
=begin
|
135
|
+
通常モードの処理。
|
136
|
+
1/319で初当たり当選。
|
137
|
+
出玉が1280発貰える。
|
138
|
+
その後確立変動への抽選処理へ移行する。
|
139
|
+
=end
|
140
|
+
|
141
|
+
def normalMode(rotation,firstHit,hit16R,hit6R,wonPachinkoBall)
|
142
|
+
loop do
|
143
|
+
|
144
|
+
result = rand(99)+1
|
145
|
+
rotation += 1
|
146
|
+
|
147
|
+
if result > 98 then
|
148
|
+
puts "大当たり"
|
149
|
+
firstHit += 1
|
150
|
+
wonPachinkoBall += 320
|
151
|
+
vChallenge(rotation,firstHit,hit16R,hit6R,wonPachinkoBall)
|
152
|
+
else
|
153
|
+
puts "はずれ"
|
154
|
+
end
|
155
|
+
end
|
156
|
+
end
|
157
|
+
|
158
|
+
=begin
|
159
|
+
確立変動への抽選処理
|
160
|
+
5割で確立変動Modeへ突入する。
|
161
|
+
確立変動Modeの抽選に漏れた場合は、通常モードの処理へ移行する。
|
162
|
+
確立変動Modeの抽選に当選した場合は、出玉を520増やし、確立変動モードへ移行する。
|
163
|
+
=end
|
164
|
+
|
165
|
+
def vChallenge(rotation,firstHit,hit16R,hit6R,wonPachinkoBall)
|
166
|
+
result = rand(10)+1
|
167
|
+
if result > 5 then
|
168
|
+
puts "確変突入"
|
169
|
+
wonPachinkoBall += 260
|
170
|
+
vMode(rotation,firstHit,hit16R,hit6R,wonPachinkoBall)
|
171
|
+
else
|
172
|
+
puts "リベンジモード突入"
|
173
|
+
normalMode(rotation,firstHit,hit16R,hit6R,wonPachinkoBall)
|
174
|
+
end
|
175
|
+
end
|
176
|
+
|
177
|
+
=begin
|
178
|
+
確立変動モードの処理
|
179
|
+
100回転以内に1/80の抽選に当選すれば、出玉を(1200(50%)/400(50%))で増やし、回転数をリセットする。
|
180
|
+
100回転以内に1/80の抽選に当選しなければゲーム終了。
|
181
|
+
清算処理へ移行する。
|
182
|
+
=end
|
183
|
+
|
184
|
+
def vMode(rotation,firstHit,hit16R,hit6R,wonPachinkoBall)
|
185
|
+
i = 0
|
186
|
+
while i < 100 do
|
187
|
+
i = i+1
|
188
|
+
result = rand(80)+1
|
189
|
+
rotation += 1
|
190
|
+
if result > 79 then
|
191
|
+
puts "Vistory"
|
192
|
+
i = 1
|
193
|
+
win = rand(100)+1
|
194
|
+
if win > 49
|
195
|
+
wonPachinkoBall += 1200
|
196
|
+
hit16R += 1
|
197
|
+
else
|
198
|
+
wonPachinkoBall += 400
|
199
|
+
hit6R += 1
|
200
|
+
end
|
201
|
+
else
|
202
|
+
puts "はずれ"
|
203
|
+
end
|
204
|
+
end
|
205
|
+
puts "確変終了"
|
206
|
+
clear(rotation,firstHit,hit16R,hit6R,wonPachinkoBall)
|
207
|
+
end
|
208
|
+
|
209
|
+
|
210
|
+
=begin
|
211
|
+
清算処理
|
212
|
+
総回転数、初当たり回数、16R取得回数、6R取得回数、出玉、投資を出力する。
|
213
|
+
プログラムを終了する。
|
214
|
+
=end
|
215
|
+
def clear(rotation,firstHit,hit16R,hit6R,wonPachinkoBall)
|
216
|
+
investment = rotation / 3
|
217
|
+
if investment < 5 then
|
218
|
+
investment = 5
|
219
|
+
end
|
220
|
+
investment /= 5.0
|
221
|
+
investment = (investment).ceil
|
222
|
+
investment *= 5
|
223
|
+
kankin = (wonPachinkoBall * 4)/500.0
|
224
|
+
kankin = kankin.floor
|
225
|
+
kankin *= 500
|
226
|
+
|
227
|
+
print "通常回転数は",rotation,"回\n"
|
228
|
+
print "初当たり回数は",firstHit,"回\n"
|
229
|
+
print "16R取得回数は",hit16R,"回\n"
|
230
|
+
print "6R取得回数は",hit6R,"回\n"
|
231
|
+
print "出玉は",wonPachinkoBall,"発で、換金すると",kankin,"円です。"
|
232
|
+
print "投資は",investment,"00円です。"
|
233
|
+
exit(0)
|
234
|
+
end
|
235
|
+
|
236
|
+
normalMode(0,0,0,0,0)
|
237
|
+
```
|
238
|
+
クラス適応はまだですが。
|
239
|
+
とりあえず500単位に出来ました。
|
1
クソ多い⇒多い
title
CHANGED
File without changes
|
body
CHANGED
@@ -109,7 +109,7 @@
|
|
109
109
|
|
110
110
|
分からなかったこと。
|
111
111
|
---
|
112
|
-
・Rubyでのmodelの作り方がわからず、引数が
|
112
|
+
・Rubyでのmodelの作り方がわからず、引数が多い。
|
113
113
|
⇒model.hoge = ~ ってやりたい。
|
114
114
|
⇒hogemethod(model)ってやりたい。
|
115
115
|
|