아래 소스를 복사 하여
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_()
'개발 > Python' 카테고리의 다른 글
windows 환경에서 python 파이썬 설치된 경로 찾기 (0) | 2019.11.21 |
---|---|
python 으로 카지노 룰렛 number / color bet 베팅금액 별 승리 확률 구하기 (0) | 2019.11.20 |
파이썬에서 between 사용하기 python between function (0) | 2019.11.19 |
python 으로 특정 파일의 필요한 내용만 뽑아 새로 만들기 (0) | 2019.11.15 |
Python PyQt5 를 이용 하여 카지노 룰렛 시뮬레이터 만들기 (2) | 2019.11.11 |