아래 소스를 복사 하여

VScode 나 notepad++ 로 roulette.py 로 저장 하신 뒤

command 창에서 python roulette.py 로 실행 하시면 됩니다.

기본으로 게임에서 질 경우 더블배팅(마틴게일) 금액으로 설정 해 놓았습니다

카지노 가시려는 분이 계시다면 룰렛 홀짝(even,odd) 더블 배팅 연습 해보고 가셔요

실행 화면 입니다

# import error 가 날 경우에 각각 pip3 install 해주셔야 합니다.

import sys
from PyQt5.QtWidgets import QApplication, QMainWindow, QPushButton, QLabel, QLineEdit, QMessageBox
from PyQt5.QtCore import Qt
from random import randint

class MyWindow(QMainWindow):
    def __init__(self):
        super().__init__()
        self.setupUI()

    def setupUI(self):
    	# 프로그램 title
        self.setWindowTitle("Roulette")

		# 룰렛에서 나온 숫자
        self.number = QLabel(self)
        self.number.setText('0')
        self.number.move(35, 15)

		# 현재 금액
        self.tmoney = QLabel(self)
        # 시드머니 1000
        self.tmoney.setText('1000')
        self.tmoney.move(30, 40)
        
        # odd and even 구분 변수
        self.bet = QLineEdit(self)
        self.bet.resize(30, 20)
        self.bet.move(70, 45)
        self.bet.hide()

		# betting money
        self.mn = QLineEdit(self)
        # 기본 베팅 금액 15
        self.mn.setText('15')
        self.mn.resize(33, 20)
        self.mn.move(71, 20)

		# odd or even click view
        self.h_z = QLabel(self)
        self.h_z.setText('')
        self.h_z.move(117, 15)

		# start 버튼
        btn1 = QPushButton("START", self)
        btn1.resize(76,20)
        btn1.move(70,70)
        btn1.clicked.connect(self.btn1_clicked)        

		# 초기화 버튼 (돈)
        btn2 = QPushButton("INIT", self)
        btn2.resize(30,20)
        btn2.move(28,70)
        btn2.clicked.connect(self.btn2_clicked) 

		# 홀수 선택
        btnOdd = QPushButton("Odd", self)
        btnOdd.resize(35,20)
        btnOdd.move(70,45)
        btnOdd.clicked.connect(self.btnOdd_clicked) 

		# 짝수 선택
        btnEven = QPushButton("Even", self)
        btnEven.resize(35,20)
        btnEven.move(110,45)
        btnEven.clicked.connect(self.btnEven_clicked) 

	# 홀수 선택 함수
    def btnOdd_clicked(self):
        self.bet.setText('1')
        self.h_z.setText('ODD')

	# 짝수 선택 함수
    def btnEven_clicked(self):
        self.bet.setText('2')
        self.h_z.setText('EVEN')

	# enter 키로 start 버튼 대체
    def keyPressEvent(self, e):
        if e.key() in [Qt.Key_Return, Qt.Key_Enter]: 
            tm, num, status = self.btn1_clicked()
            print(tm, num, status) 

        if e.key() == Qt.Key_Escape:
            print('INIT')
            self.btn2_clicked()

	# 스타트 버튼 함수
    def btn1_clicked(self):
        a = randint(0,36)
        b = self.mn.text()
        c = self.bet.text()
        t = self.tmoney.text()
        if not b:
            self.number.setText(str(a))
            return 0, a, 'none'
            pass
        elif int(t) - int(b) < 0:
            QMessageBox.about(self, "error", "no money")
            return 0, a, 'none'
            pass
        elif not a or int(a) == 0:
            tm = int(t) - int(b)
            self.tmoney.setText(str(tm))
            self.number.setText(str(a))
            self.mn.setText(str(int(b)*2))
            return tm, a, 'lose'
        elif not c or int(c) == 0:
            return t, a, 'zero'
        else:
            if int(c)%2 != int(a)%2:
                tm = int(t) - int(b)
                self.tmoney.setText(str(tm))
                self.number.setText(str(a))
                self.mn.setText(str(int(b)*2))
                return tm, a, 'lose'
            else:
                tm = int(t) + int(b)
                self.tmoney.setText(str(tm))
                self.number.setText(str(a))
                self.mn.setText('15')
                return tm, a, 'win'
        
	# 초기화 버튼 함수
    def btn2_clicked(self):
        self.tmoney.setText('1000')
        self.number.setText('0')
        self.mn.setText('15')
        self.bet.setText('')

if __name__ == "__main__":
    app = QApplication(sys.argv)
    mywindow = MyWindow()
    mywindow.show()
    app.exec_()

 

+ Recent posts