| Bandit : Glückspielautomat
Einfacher Nachbau :
Option Explicit OnOption Strict Off Imports FishFace40 Module Bandit3Dim ft As New FishFace() Const mScheibe1 As Out = Out.M1 Const iLichtS1 As Inp = Inp.I1 Const mScheibe2 As Out = Out.M2 Const iLichtS2 As Inp = Inp.I2 Const mScheibe3 As Out = Out.M3 Const iLichtS3 As Inp = Inp.I3 Const mAuswurf As Out = Out.M4 Const iEndeaus As Inp = Inp.I4 Const iMuenze As Inp = Inp.I5 Sub Action() Dim anzMuenzen As Integer Dim statLicht As Integer Dim status As String Dim zuf As New Random() Console.WriteLine( "Mnze einwerfen") Do' --- Scheiben drehen --- ft.WaitForInput(iMuenze) ft.SetMotor(mScheibe1, Dir.Left, Speed.Half) ft.SetMotor(mScheibe2, Dir.Left, Speed.Half) ft.SetMotor(mScheibe3, Dir.Left, Speed.Half) ft.Pause(4567) ft.SetMotor(mScheibe1, Dir.Off) ft.Pause(zuf.Next(122, 533)) ft.SetMotor(mScheibe2, Dir.Off) ft.Pause(zuf.Next(111, 422)) ft.SetMotor(mScheibe3, Dir.Off) ft.Pause(22) ' --- Status bestimmen ---- anzMuenzen = 0 statLicht = 0 status = "Licht : " If ft.GetInput(iLichtS1) Then statLicht += 1 If ft.GetInput(iLichtS2) Then statLicht += 1 If ft.GetInput(iLichtS3) Then statLicht += 1 Select Case statLicht Case 3 anzMuenzen = 5 Case 2 anzMuenzen = 2 Case 1 anzMuenzen = 1 End Select ' --- Ausgabe der Mnzen ---- Console.Write(anzMuenzen & " - ") If anzMuenzen > 0 Then Ausgabe(anzMuenzen) Loop Until ft.Finish() Console.WriteLine() End Sub Sub Ausgabe(ByVal anz As Integer) For i As Integer = 1 To anz ft.SetMotor(mAuswurf, Dir.Left) ft.WaitForInput(iEndeaus) ft.SetMotor(mAuswurf, Dir.Right) ft.Pause(1850) ft.SetMotor(mAuswurf, Dir.Off) Next End Sub Sub
Main() Das Programm ist ein Console-Programm und wurde mit VB 2008 für das Robo Interface erstellt. DownloadFishFace2005.DLL von www.ftcomputing.de/vb2005.htm Das Programm selber kann hier leicht abgeschrieben werden und dabei den eigenen Gegebenheiten angepaßt werden. Stand : 26.11.2010 |