MiLo ارسال شده در 17 ساعت قبل اشتراک گذاری ارسال شده در 17 ساعت قبل (ویرایش شده) سلام به همگی! یچی درست کردم که توش میتونید هک کردنه بانک رو شبیهسازی کنید. https://uupload.ir/view/game1_luef.rar/ اگه خواستی کد بازی رو خودت تغییر بدی یا چیزی روش اضافه کنی، کل کد بازی رو گذاشتم. مخفی کننده import sys import random from PyQt5.QtWidgets import * from PyQt5.QtCore import * from PyQt5.QtGui import * class CalculatorGuessGame(QMainWindow): def __init__(self): super().__init__() self.adad_maghsad = random.randint(100000, 500000) self.tedad_hads = 0 self.max_hads = 30 # Increased to 30 self.jashn_faal = False self.animation_khata = False # Rangeye rangha self.rangha = { 'background': '#1E1E1E', 'surface': '#2D2D2D', 'primary': '#FFFFFF', 'secondary': '#A0A0A0', 'accent': '#3D3D3D', 'error': '#FF5252', 'success': '#4CAF50', 'button': '#323232', 'button_hover': '#424242', 'pak_kardan': '#FF5252', # Red for pak kardan 'backspace': '#4CAF50' # Green for guess } self.setWindowTitle("HackBankAG") self.setGeometry(100, 100, 400, 600) self.tarah_sazi_ui() self.Emal_Sabkha() # Timer animation self.animation_timer = QTimer(self) self.animation_timer.timeout.connect(self.update_animationha) self.animation_timer.start(16) # Animation dokme cheat self.namayesh_adad_animation_value = 0 self.namayesh_adad_animation_direction = 1 self.namayesh_adad_animation_timer = QTimer(self) self.namayesh_adad_animation_timer.timeout.connect(self.animation_dokme_cheat) self.namayesh_adad_animation_timer.start(50) # Faster animation for the button def tarah_sazi_ui(self): # Widget asli central_widget = QWidget() self.setCentralWidget(central_widget) # Layout asli main_layout = QVBoxLayout() main_layout.setAlignment(Qt.AlignCenter) main_layout.setSpacing(10) main_layout.setContentsMargins(20, 20, 20, 20) central_widget.setLayout(main_layout) # Header header_layout = QHBoxLayout() self.title_label = QLabel("HackBankAG") self.title_label.setAlignment(Qt.AlignCenter) header_layout.addWidget(self.title_label) # Range adad self.range_label = QLabel("100,000 - 500,000") self.range_label.setAlignment(Qt.AlignCenter) # Sakhte shode self.made_by_label = QLabel("Made by MiLo") self.made_by_label.setAlignment(Qt.AlignCenter) # Jai adad self.display = QLineEdit() self.display.setReadOnly(True) self.display.setAlignment(Qt.AlignRight) self.display.setMaxLength(9) # Dokmeha buttons_layout = QGridLayout() buttons_layout.setSpacing(8) # Dokme adad buttons = { '1': (0, 0), '2': (0, 1), '3': (0, 2), '4': (1, 0), '5': (1, 1), '6': (1, 2), '7': (2, 0), '8': (2, 1), '9': (2, 2), '0': (3, 1) } self.number_buttons = {} for btnText, pos in buttons.items(): button = QPushButton(btnText) button.setFixedSize(60, 60) button.clicked.connect(lambda _, text=btnText: self.Click_Adadi(text)) buttons_layout.addWidget(button, pos[0], pos[1]) self.number_buttons[btnText] = button # Dokme hads self.guess_btn = QPushButton("") self.guess_btn.setFixedSize(60, 60) self.guess_btn.clicked.connect(self.Hads_Bezan) buttons_layout.addWidget(self.guess_btn, 3, 2) # Dokme pak kardan self.pak_kardan_btn = QPushButton("") self.pak_kardan_btn.setFixedSize(60, 60) self.pak_kardan_btn.clicked.connect(self.pak_kardan) buttons_layout.addWidget(self.pak_kardan_btn, 3, 0) # Natije self.label_natije = QLabel("") self.label_natije.setAlignment(Qt.AlignCenter) self.label_natije.setWordWrap(True) # Hads haye mande self.label_hads_mande = QLabel(f"Times left: {self.max_hads - self.tedad_hads}") self.label_hads_mande.setAlignment(Qt.AlignCenter) # Dokme cheat self.dokme_cheat_btn = QPushButton("iMobin Cheats Activated! :D ") self.dokme_cheat_btn.setFixedHeight(40) self.dokme_cheat_btn.clicked.connect(self.namayesh_adad) # Link forum self.forum_label = QLabel("forum.arascia.ir") self.forum_label.setAlignment(Qt.AlignCenter) self.forum_label.setOpenExternalLinks(True) self.forum_label.setTextInteractionFlags(Qt.TextBrowserInteraction) self.forum_label.setText('<a href="https://forum.arsacia.ir/" style="color: #A0A0A0; text-decoration: none;">forum.arascia.ir</a>') # Ezafe kardan be layout main_layout.addLayout(header_layout) main_layout.addWidget(self.range_label) main_layout.addWidget(self.made_by_label) main_layout.addWidget(self.display) main_layout.addWidget(self.label_hads_mande) main_layout.addSpacing(10) main_layout.addLayout(buttons_layout) main_layout.addSpacing(10) main_layout.addWidget(self.label_natije) main_layout.addWidget(self.dokme_cheat_btn) main_layout.addWidget(self.forum_label) # Motaghayer haye animation self.animation_progress = 0 self.current_background_color = QColor(30, 30, 30) def Click_Adadi(self, text): current_text = self.display.text().replace(',', '') if len(current_text) < 6: # Limit to 6 digits (up to 500,000) new_text = current_text + text if int(new_text) <= 500000: self.display.setText(self.Shomare_Ghaleb(int(new_text))) def pak_kardan(self): self.display.setText("") def Shomare_Ghaleb(self, num): """Format number with commas for thousands""" return f"{num:,}" def animation_dokme_cheat(self): """Update the animation for the Show number button""" self.namayesh_adad_animation_value += 0.1 * self.namayesh_adad_animation_direction if self.namayesh_adad_animation_value >= 1.0: self.namayesh_adad_animation_value = 1.0 self.namayesh_adad_animation_direction = -1 elif self.namayesh_adad_animation_value <= 0.0: self.namayesh_adad_animation_value = 0.0 self.namayesh_adad_animation_direction = 1 # Mohasebe rang r = int(160 + (255 - 160) * self.namayesh_adad_animation_value) g = int(160 + (255 - 160) * self.namayesh_adad_animation_value) b = int(160 + (255 - 160) * self.namayesh_adad_animation_value) # Mohasebe range glow glow_size = 2 + int(2 * self.namayesh_adad_animation_value) # Style dadan self.dokme_cheat_btn.setStyleSheet(f""" QPushButton {{ font-size: 13px; font-weight: bold; background-color: transparent; color: rgb({r}, {g}, {b}); border: 1px solid rgb({r}, {g}, {b}); border-radius: 5px; }} QPushButton:hover {{ color: #FFFFFF; border: 2px solid #FFFFFF; background-color: rgba(255, 255, 255, 0.1); }} """) def Emal_Sabkha(self): style = f""" QMainWindow {{ background-color: {self.rangha['background']}; }} QLabel {{ font-size: 14px; color: {self.rangha['primary']}; padding: 4px; }} QLabel#title {{ font-size: 20px; font-weight: bold; color: {self.rangha['success']}; }} QLineEdit {{ font-size: 24px; padding: 12px; border: 2px solid {self.rangha['accent']}; border-radius: 5px; background-color: {self.rangha['surface']}; color: {self.rangha['primary']}; selection-background-color: {self.rangha['accent']}; }} QPushButton {{ font-size: 18px; border: none; border-radius: 5px; background-color: {self.rangha['button']}; color: {self.rangha['primary']}; }} QPushButton:hover {{ background-color: {self.rangha['button_hover']}; }} QPushButton:pressed {{ background-color: {self.rangha['accent']}; }} QPushButton:disabled {{ background-color: {self.rangha['accent']}; color: {self.rangha['secondary']}; }} """ self.setStyleSheet(style) self.title_label.setObjectName("title") # Style dokme adad for btn in self.number_buttons.values(): btn.setStyleSheet(f""" QPushButton {{ font-size: 18px; border: none; border-radius: 5px; background-color: {self.rangha['button']}; color: {self.rangha['primary']}; }} QPushButton:hover {{ background-color: {self.rangha['button_hover']}; }} QPushButton:pressed {{ background-color: {self.rangha['accent']}; }} """) # Style dokme pak (Ghermez) self.pak_kardan_btn.setStyleSheet(f""" QPushButton {{ border: none; border-radius: 5px; background-color: {self.rangha['pak_kardan']}; }} QPushButton:hover {{ background-color: #E53935; }} QPushButton:pressed {{ background-color: #C62828; }} """) # Style dokme hads (Sabz) self.guess_btn.setStyleSheet(f""" QPushButton {{ border: none; border-radius: 5px; background-color: {self.rangha['backspace']}; }} QPushButton:hover {{ background-color: #43A047; }} QPushButton:pressed {{ background-color: #2E7D32; }} QPushButton:disabled {{ background-color: #2E7D32; }} """) def Hads_Bezan(self): guess_text = self.display.text().replace(',', '') if not guess_text: self.namayesh_khata() self.label_natije.setText("Please enter a number") return guess = int(guess_text) self.tedad_hads += 1 remaining_guesses = self.max_hads - self.tedad_hads self.label_hads_mande.setText(f"Times left: {remaining_guesses}") if guess < self.adad_maghsad: self.namayesh_khata() self.label_natije.setText(f"{self.Shomare_Ghaleb(guess)} - Higher") elif guess > self.adad_maghsad: self.namayesh_khata() self.label_natije.setText(f"{self.Shomare_Ghaleb(guess)} - Lower") else: # Hads dorost self.namayesh_piroozi() self.ghofl_kardan_dokmeha() # Pak kardan jai adad self.pak_kardan() # Check kardan hads haye tamom shode if remaining_guesses <= 0 and guess != self.adad_maghsad: self.ghofl_kardan_dokmeha() self.namayesh_shekat() def namayesh_khata(self): self.animation_khata = True self.animation_progress = 0 self.target_background_color = QColor(255, 82, 82) # Error color def shoroo_jashn(self): self.jashn_faal = True self.animation_progress = 0 self.target_background_color = QColor(76, 175, 80) # Success color def ghofl_kardan_dokmeha(self): for btn in self.number_buttons.values(): btn.setEnabled(False) self.pak_kardan_btn.setEnabled(False) self.guess_btn.setEnabled(False) def namayesh_adad(self): self.namayesh_shekat() def namayesh_piroozi(self): # Dialog piroozi dialog = QDialog(self) dialog.setWindowTitle("You Win!") dialog.setFixedSize(300, 200) # Style dialog dialog.setStyleSheet(f""" QDialog {{ background-color: {self.rangha['background']}; }} QLabel {{ color: {self.rangha['primary']}; font-size: 14px; }} QPushButton {{ background-color: {self.rangha['button']}; color: {self.rangha['primary']}; padding: 8px; border: none; border-radius: 3px; min-width: 80px; }} QPushButton:hover {{ background-color: {self.rangha['button_hover']}; }} """) # Layout dialog layout = QVBoxLayout() # # Adad maghsad target_label = QLabel(f"Target number: <span style='color: #4CAF50; font-weight: bold;'>{self.Shomare_Ghaleb(self.adad_maghsad)}</span>") target_label.setAlignment(Qt.AlignCenter) target_label.setTextFormat(Qt.RichText) # Payam message_label = QLabel("You Won! Let's try again") message_label.setAlignment(Qt.AlignCenter) # Dokme OK ok_button = QPushButton("OK") ok_button.clicked.connect(dialog.accept) # Ezafe kardan be layout layout.addWidget(target_label) layout.addWidget(message_label) layout.addStretch() layout.addWidget(ok_button, alignment=Qt.AlignCenter) dialog.setLayout(layout) # Namayesh dialog if dialog.exec_() == QDialog.Accepted: # Restart bazi ba addad hadsi jadid self.restart_bazi() def namayesh_shekat(self): # Dialog shekat dialog = QDialog(self) dialog.setWindowTitle("Target Number") dialog.setFixedSize(300, 200) # Style dialog dialog.setStyleSheet(f""" QDialog {{ background-color: {self.rangha['background']}; }} QLabel {{ color: {self.rangha['primary']}; font-size: 14px; }} QPushButton {{ background-color: {self.rangha['button']}; color: {self.rangha['primary']}; padding: 8px; border: none; border-radius: 3px; min-width: 80px; }} QPushButton:hover {{ background-color: {self.rangha['button_hover']}; }} """) # Layout dialog layout = QVBoxLayout() # Adad maghsad (in red) target_label = QLabel(f"Target number: <span style='color: #FF5252; font-weight: bold;'>{self.Shomare_Ghaleb(self.adad_maghsad)}</span>") target_label.setAlignment(Qt.AlignCenter) target_label.setTextFormat(Qt.RichText) # Payam message_label = QLabel("You Lost, Retry!") message_label.setAlignment(Qt.AlignCenter) # Dokme OK ok_button = QPushButton("OK") ok_button.clicked.connect(dialog.accept) # Ezafe kardan be layout layout.addWidget(target_label) layout.addWidget(message_label) layout.addStretch() layout.addWidget(ok_button, alignment=Qt.AlignCenter) dialog.setLayout(layout) # Namayesh dialog if dialog.exec_() == QDialog.Accepted: # Restart bazi ba addad hadsi jadid self.restart_bazi() def restart_bazi(self): self.adad_maghsad = random.randint(100000, 500000) self.tedad_hads = 0 self.label_hads_mande.setText(f"Times left: {self.max_hads}") self.label_natije.setText("") self.pak_kardan() # Baz kardan dokmeha for btn in self.number_buttons.values(): btn.setEnabled(True) self.pak_kardan_btn.setEnabled(True) self.guess_btn.setEnabled(True) def update_animationha(self): if self.animation_khata or self.jashn_faal: self.animation_progress += 0.05 if self.animation_progress >= 1: self.animation_progress = 1 if self.animation_khata: self.animation_khata = False if self.jashn_faal: self.jashn_faal = False # Bargasht be zamine asli self.target_background_color = QColor(30, 30, 30) # Mohasebe rang miyane r = int(self.current_background_color.red() * (1 - self.animation_progress) + self.target_background_color.red() * self.animation_progress) g = int(self.current_background_color.green() * (1 - self.animation_progress) + self.target_background_color.green() * self.animation_progress) b = int(self.current_background_color.blue() * (1 - self.animation_progress) + self.target_background_color.blue() * self.animation_progress) # Ezafe kardan rang self.setStyleSheet(f""" QMainWindow {{ background-color: rgb({r}, {g}, {b}); }} QLabel {{ font-size: 14px; color: {self.rangha['primary']}; padding: 4px; }} QLabel#title {{ font-size: 20px; font-weight: bold; color: {self.rangha['success']}; }} QLineEdit {{ font-size: 24px; padding: 12px; border: 2px solid {self.rangha['accent']}; border-radius: 5px; background-color: {self.rangha['surface']}; color: {self.rangha['primary']}; }} QPushButton {{ font-size: 18px; border: none; border-radius: 5px; background-color: {self.rangha['button']}; color: {self.rangha['primary']}; }} QPushButton:hover {{ background-color: {self.rangha['button_hover']}; }} QPushButton:disabled {{ background-color: {self.rangha['accent']}; color: {self.rangha['secondary']}; }} """) if self.animation_progress == 1: self.current_background_color = self.target_background_color self.animation_progress = 0 if __name__ == "__main__": app = QApplication(sys.argv) # Font font = QFont("Arial", 9) app.setFont(font) window = CalculatorGuessGame() window.show() sys.exit(app.exec_()) حالا یه نسخه دیگه دارم ولی فک کنم چیت حساب میشه درواقع برعکس این عمل میکنه. اینطوریه که ست میکنم عدد بین چه بازه ای باشه مثلا 100,000 - 5000,000 و در لحظه نصف این رو در کادر میاره 300,000 که دقیقا نصفشه و در بازی این عدد رو مینویسم و Higher یا Lower بودن رو برام میخونه و من دوباره با کلید های Up Arrow Key(Higher) و Down Arrow Key(Lower) مقدار را مشخص میکنم: بازه اول: [100,000] ______________________________ [500,000] حدس اول: (100,000 + 500,000) / 2 = 300,000 اگر Higher بود: بازه جدید: [300,000] ____________________ [500,000] حدس بعدی: (300,000 + 500,000) / 2 = 400,000 اگر Lower بود: بازه جدید: [100,000] _____________ [300,000] حدس بعدی: (100,000 + 300,000) / 2 = 200,000 حالا ممکنه در جاهایی ام اعشار بیاد عدد رو به پایین گرد میشه. اگه ادمینا مشکلی با این قضیه ندارن این رو هم میزارم براتون. دوستون دارم شدید! فعلا خدافظ! 12 دقیقه قبل، MiLo گفته است: -لینک حذف شده است، از آپلود سنتر دیگر استفاده نمایید- https://uploadkon.ir/uploads/3b8214_25game1.rar ویرایش شده 17 ساعت قبل توسط MiLo نقل قول لینک به دیدگاه https://forum.arsacia.ir/topic/85409-%D8%A8%D8%B1%D9%86%D8%A7%D9%85%D9%87-%D8%AA%D9%85%D8%B1%DB%8C%D9%86-%D9%87%DA%A9-%D8%A8%D8%A7%D9%86%DA%A9-%D8%A8%D8%B1%D8%A7%DB%8C-%D8%A8%D8%A7%D8%B1-%D8%B5%D8%AF%D9%85/ به اشتراک گذاری در سایت های دیگر تنظیمات بیشتر اشتراک گذاری...
SinisteR ارسال شده در 11 ساعت قبل اشتراک گذاری ارسال شده در 11 ساعت قبل ممنون از زحماتت خسته نباشی نقل قول لینک به دیدگاه https://forum.arsacia.ir/topic/85409-%D8%A8%D8%B1%D9%86%D8%A7%D9%85%D9%87-%D8%AA%D9%85%D8%B1%DB%8C%D9%86-%D9%87%DA%A9-%D8%A8%D8%A7%D9%86%DA%A9-%D8%A8%D8%B1%D8%A7%DB%8C-%D8%A8%D8%A7%D8%B1-%D8%B5%D8%AF%D9%85/#findComment-890881 به اشتراک گذاری در سایت های دیگر تنظیمات بیشتر اشتراک گذاری...
RappeR ارسال شده در 11 ساعت قبل اشتراک گذاری ارسال شده در 11 ساعت قبل خیلی کمک کردی ممنون نقل قول جنگنده: لینک به دیدگاه https://forum.arsacia.ir/topic/85409-%D8%A8%D8%B1%D9%86%D8%A7%D9%85%D9%87-%D8%AA%D9%85%D8%B1%DB%8C%D9%86-%D9%87%DA%A9-%D8%A8%D8%A7%D9%86%DA%A9-%D8%A8%D8%B1%D8%A7%DB%8C-%D8%A8%D8%A7%D8%B1-%D8%B5%D8%AF%D9%85/#findComment-890913 به اشتراک گذاری در سایت های دیگر تنظیمات بیشتر اشتراک گذاری...
Integer ارسال شده در 8 ساعت قبل اشتراک گذاری ارسال شده در 8 ساعت قبل 8 ساعت قبل، MiLo گفته است: سلام به همگی! یچی درست کردم که توش میتونید هک کردنه بانک رو شبیهسازی کنید. -لینک حذف شده است، از آپلود سنتر دیگر استفاده نمایید- اگه خواستی کد بازی رو خودت تغییر بدی یا چیزی روش اضافه کنی، کل کد بازی رو گذاشتم. نمایش محتوا مخفی import sys import random from PyQt5.QtWidgets import * from PyQt5.QtCore import * from PyQt5.QtGui import * class CalculatorGuessGame(QMainWindow): def __init__(self): super().__init__() self.adad_maghsad = random.randint(100000, 500000) self.tedad_hads = 0 self.max_hads = 30 # Increased to 30 self.jashn_faal = False self.animation_khata = False # Rangeye rangha self.rangha = { 'background': '#1E1E1E', 'surface': '#2D2D2D', 'primary': '#FFFFFF', 'secondary': '#A0A0A0', 'accent': '#3D3D3D', 'error': '#FF5252', 'success': '#4CAF50', 'button': '#323232', 'button_hover': '#424242', 'pak_kardan': '#FF5252', # Red for pak kardan 'backspace': '#4CAF50' # Green for guess } self.setWindowTitle("HackBankAG") self.setGeometry(100, 100, 400, 600) self.tarah_sazi_ui() self.Emal_Sabkha() # Timer animation self.animation_timer = QTimer(self) self.animation_timer.timeout.connect(self.update_animationha) self.animation_timer.start(16) # Animation dokme cheat self.namayesh_adad_animation_value = 0 self.namayesh_adad_animation_direction = 1 self.namayesh_adad_animation_timer = QTimer(self) self.namayesh_adad_animation_timer.timeout.connect(self.animation_dokme_cheat) self.namayesh_adad_animation_timer.start(50) # Faster animation for the button def tarah_sazi_ui(self): # Widget asli central_widget = QWidget() self.setCentralWidget(central_widget) # Layout asli main_layout = QVBoxLayout() main_layout.setAlignment(Qt.AlignCenter) main_layout.setSpacing(10) main_layout.setContentsMargins(20, 20, 20, 20) central_widget.setLayout(main_layout) # Header header_layout = QHBoxLayout() self.title_label = QLabel("HackBankAG") self.title_label.setAlignment(Qt.AlignCenter) header_layout.addWidget(self.title_label) # Range adad self.range_label = QLabel("100,000 - 500,000") self.range_label.setAlignment(Qt.AlignCenter) # Sakhte shode self.made_by_label = QLabel("Made by MiLo") self.made_by_label.setAlignment(Qt.AlignCenter) # Jai adad self.display = QLineEdit() self.display.setReadOnly(True) self.display.setAlignment(Qt.AlignRight) self.display.setMaxLength(9) # Dokmeha buttons_layout = QGridLayout() buttons_layout.setSpacing(8) # Dokme adad buttons = { '1': (0, 0), '2': (0, 1), '3': (0, 2), '4': (1, 0), '5': (1, 1), '6': (1, 2), '7': (2, 0), '8': (2, 1), '9': (2, 2), '0': (3, 1) } self.number_buttons = {} for btnText, pos in buttons.items(): button = QPushButton(btnText) button.setFixedSize(60, 60) button.clicked.connect(lambda _, text=btnText: self.Click_Adadi(text)) buttons_layout.addWidget(button, pos[0], pos[1]) self.number_buttons[btnText] = button # Dokme hads self.guess_btn = QPushButton("") self.guess_btn.setFixedSize(60, 60) self.guess_btn.clicked.connect(self.Hads_Bezan) buttons_layout.addWidget(self.guess_btn, 3, 2) # Dokme pak kardan self.pak_kardan_btn = QPushButton("") self.pak_kardan_btn.setFixedSize(60, 60) self.pak_kardan_btn.clicked.connect(self.pak_kardan) buttons_layout.addWidget(self.pak_kardan_btn, 3, 0) # Natije self.label_natije = QLabel("") self.label_natije.setAlignment(Qt.AlignCenter) self.label_natije.setWordWrap(True) # Hads haye mande self.label_hads_mande = QLabel(f"Times left: {self.max_hads - self.tedad_hads}") self.label_hads_mande.setAlignment(Qt.AlignCenter) # Dokme cheat self.dokme_cheat_btn = QPushButton("iMobin Cheats Activated! :D ") self.dokme_cheat_btn.setFixedHeight(40) self.dokme_cheat_btn.clicked.connect(self.namayesh_adad) # Link forum self.forum_label = QLabel("forum.arascia.ir") self.forum_label.setAlignment(Qt.AlignCenter) self.forum_label.setOpenExternalLinks(True) self.forum_label.setTextInteractionFlags(Qt.TextBrowserInteraction) self.forum_label.setText('<a href="https://forum.arsacia.ir/" style="color: #A0A0A0; text-decoration: none;">forum.arascia.ir</a>') # Ezafe kardan be layout main_layout.addLayout(header_layout) main_layout.addWidget(self.range_label) main_layout.addWidget(self.made_by_label) main_layout.addWidget(self.display) main_layout.addWidget(self.label_hads_mande) main_layout.addSpacing(10) main_layout.addLayout(buttons_layout) main_layout.addSpacing(10) main_layout.addWidget(self.label_natije) main_layout.addWidget(self.dokme_cheat_btn) main_layout.addWidget(self.forum_label) # Motaghayer haye animation self.animation_progress = 0 self.current_background_color = QColor(30, 30, 30) def Click_Adadi(self, text): current_text = self.display.text().replace(',', '') if len(current_text) < 6: # Limit to 6 digits (up to 500,000) new_text = current_text + text if int(new_text) <= 500000: self.display.setText(self.Shomare_Ghaleb(int(new_text))) def pak_kardan(self): self.display.setText("") def Shomare_Ghaleb(self, num): """Format number with commas for thousands""" return f"{num:,}" def animation_dokme_cheat(self): """Update the animation for the Show number button""" self.namayesh_adad_animation_value += 0.1 * self.namayesh_adad_animation_direction if self.namayesh_adad_animation_value >= 1.0: self.namayesh_adad_animation_value = 1.0 self.namayesh_adad_animation_direction = -1 elif self.namayesh_adad_animation_value <= 0.0: self.namayesh_adad_animation_value = 0.0 self.namayesh_adad_animation_direction = 1 # Mohasebe rang r = int(160 + (255 - 160) * self.namayesh_adad_animation_value) g = int(160 + (255 - 160) * self.namayesh_adad_animation_value) b = int(160 + (255 - 160) * self.namayesh_adad_animation_value) # Mohasebe range glow glow_size = 2 + int(2 * self.namayesh_adad_animation_value) # Style dadan self.dokme_cheat_btn.setStyleSheet(f""" QPushButton {{ font-size: 13px; font-weight: bold; background-color: transparent; color: rgb({r}, {g}, {b}); border: 1px solid rgb({r}, {g}, {b}); border-radius: 5px; }} QPushButton:hover {{ color: #FFFFFF; border: 2px solid #FFFFFF; background-color: rgba(255, 255, 255, 0.1); }} """) def Emal_Sabkha(self): style = f""" QMainWindow {{ background-color: {self.rangha['background']}; }} QLabel {{ font-size: 14px; color: {self.rangha['primary']}; padding: 4px; }} QLabel#title {{ font-size: 20px; font-weight: bold; color: {self.rangha['success']}; }} QLineEdit {{ font-size: 24px; padding: 12px; border: 2px solid {self.rangha['accent']}; border-radius: 5px; background-color: {self.rangha['surface']}; color: {self.rangha['primary']}; selection-background-color: {self.rangha['accent']}; }} QPushButton {{ font-size: 18px; border: none; border-radius: 5px; background-color: {self.rangha['button']}; color: {self.rangha['primary']}; }} QPushButton:hover {{ background-color: {self.rangha['button_hover']}; }} QPushButton:pressed {{ background-color: {self.rangha['accent']}; }} QPushButton:disabled {{ background-color: {self.rangha['accent']}; color: {self.rangha['secondary']}; }} """ self.setStyleSheet(style) self.title_label.setObjectName("title") # Style dokme adad for btn in self.number_buttons.values(): btn.setStyleSheet(f""" QPushButton {{ font-size: 18px; border: none; border-radius: 5px; background-color: {self.rangha['button']}; color: {self.rangha['primary']}; }} QPushButton:hover {{ background-color: {self.rangha['button_hover']}; }} QPushButton:pressed {{ background-color: {self.rangha['accent']}; }} """) # Style dokme pak (Ghermez) self.pak_kardan_btn.setStyleSheet(f""" QPushButton {{ border: none; border-radius: 5px; background-color: {self.rangha['pak_kardan']}; }} QPushButton:hover {{ background-color: #E53935; }} QPushButton:pressed {{ background-color: #C62828; }} """) # Style dokme hads (Sabz) self.guess_btn.setStyleSheet(f""" QPushButton {{ border: none; border-radius: 5px; background-color: {self.rangha['backspace']}; }} QPushButton:hover {{ background-color: #43A047; }} QPushButton:pressed {{ background-color: #2E7D32; }} QPushButton:disabled {{ background-color: #2E7D32; }} """) def Hads_Bezan(self): guess_text = self.display.text().replace(',', '') if not guess_text: self.namayesh_khata() self.label_natije.setText("Please enter a number") return guess = int(guess_text) self.tedad_hads += 1 remaining_guesses = self.max_hads - self.tedad_hads self.label_hads_mande.setText(f"Times left: {remaining_guesses}") if guess < self.adad_maghsad: self.namayesh_khata() self.label_natije.setText(f"{self.Shomare_Ghaleb(guess)} - Higher") elif guess > self.adad_maghsad: self.namayesh_khata() self.label_natije.setText(f"{self.Shomare_Ghaleb(guess)} - Lower") else: # Hads dorost self.namayesh_piroozi() self.ghofl_kardan_dokmeha() # Pak kardan jai adad self.pak_kardan() # Check kardan hads haye tamom shode if remaining_guesses <= 0 and guess != self.adad_maghsad: self.ghofl_kardan_dokmeha() self.namayesh_shekat() def namayesh_khata(self): self.animation_khata = True self.animation_progress = 0 self.target_background_color = QColor(255, 82, 82) # Error color def shoroo_jashn(self): self.jashn_faal = True self.animation_progress = 0 self.target_background_color = QColor(76, 175, 80) # Success color def ghofl_kardan_dokmeha(self): for btn in self.number_buttons.values(): btn.setEnabled(False) self.pak_kardan_btn.setEnabled(False) self.guess_btn.setEnabled(False) def namayesh_adad(self): self.namayesh_shekat() def namayesh_piroozi(self): # Dialog piroozi dialog = QDialog(self) dialog.setWindowTitle("You Win!") dialog.setFixedSize(300, 200) # Style dialog dialog.setStyleSheet(f""" QDialog {{ background-color: {self.rangha['background']}; }} QLabel {{ color: {self.rangha['primary']}; font-size: 14px; }} QPushButton {{ background-color: {self.rangha['button']}; color: {self.rangha['primary']}; padding: 8px; border: none; border-radius: 3px; min-width: 80px; }} QPushButton:hover {{ background-color: {self.rangha['button_hover']}; }} """) # Layout dialog layout = QVBoxLayout() # # Adad maghsad target_label = QLabel(f"Target number: <span style='color: #4CAF50; font-weight: bold;'>{self.Shomare_Ghaleb(self.adad_maghsad)}</span>") target_label.setAlignment(Qt.AlignCenter) target_label.setTextFormat(Qt.RichText) # Payam message_label = QLabel("You Won! Let's try again") message_label.setAlignment(Qt.AlignCenter) # Dokme OK ok_button = QPushButton("OK") ok_button.clicked.connect(dialog.accept) # Ezafe kardan be layout layout.addWidget(target_label) layout.addWidget(message_label) layout.addStretch() layout.addWidget(ok_button, alignment=Qt.AlignCenter) dialog.setLayout(layout) # Namayesh dialog if dialog.exec_() == QDialog.Accepted: # Restart bazi ba addad hadsi jadid self.restart_bazi() def namayesh_shekat(self): # Dialog shekat dialog = QDialog(self) dialog.setWindowTitle("Target Number") dialog.setFixedSize(300, 200) # Style dialog dialog.setStyleSheet(f""" QDialog {{ background-color: {self.rangha['background']}; }} QLabel {{ color: {self.rangha['primary']}; font-size: 14px; }} QPushButton {{ background-color: {self.rangha['button']}; color: {self.rangha['primary']}; padding: 8px; border: none; border-radius: 3px; min-width: 80px; }} QPushButton:hover {{ background-color: {self.rangha['button_hover']}; }} """) # Layout dialog layout = QVBoxLayout() # Adad maghsad (in red) target_label = QLabel(f"Target number: <span style='color: #FF5252; font-weight: bold;'>{self.Shomare_Ghaleb(self.adad_maghsad)}</span>") target_label.setAlignment(Qt.AlignCenter) target_label.setTextFormat(Qt.RichText) # Payam message_label = QLabel("You Lost, Retry!") message_label.setAlignment(Qt.AlignCenter) # Dokme OK ok_button = QPushButton("OK") ok_button.clicked.connect(dialog.accept) # Ezafe kardan be layout layout.addWidget(target_label) layout.addWidget(message_label) layout.addStretch() layout.addWidget(ok_button, alignment=Qt.AlignCenter) dialog.setLayout(layout) # Namayesh dialog if dialog.exec_() == QDialog.Accepted: # Restart bazi ba addad hadsi jadid self.restart_bazi() def restart_bazi(self): self.adad_maghsad = random.randint(100000, 500000) self.tedad_hads = 0 self.label_hads_mande.setText(f"Times left: {self.max_hads}") self.label_natije.setText("") self.pak_kardan() # Baz kardan dokmeha for btn in self.number_buttons.values(): btn.setEnabled(True) self.pak_kardan_btn.setEnabled(True) self.guess_btn.setEnabled(True) def update_animationha(self): if self.animation_khata or self.jashn_faal: self.animation_progress += 0.05 if self.animation_progress >= 1: self.animation_progress = 1 if self.animation_khata: self.animation_khata = False if self.jashn_faal: self.jashn_faal = False # Bargasht be zamine asli self.target_background_color = QColor(30, 30, 30) # Mohasebe rang miyane r = int(self.current_background_color.red() * (1 - self.animation_progress) + self.target_background_color.red() * self.animation_progress) g = int(self.current_background_color.green() * (1 - self.animation_progress) + self.target_background_color.green() * self.animation_progress) b = int(self.current_background_color.blue() * (1 - self.animation_progress) + self.target_background_color.blue() * self.animation_progress) # Ezafe kardan rang self.setStyleSheet(f""" QMainWindow {{ background-color: rgb({r}, {g}, {b}); }} QLabel {{ font-size: 14px; color: {self.rangha['primary']}; padding: 4px; }} QLabel#title {{ font-size: 20px; font-weight: bold; color: {self.rangha['success']}; }} QLineEdit {{ font-size: 24px; padding: 12px; border: 2px solid {self.rangha['accent']}; border-radius: 5px; background-color: {self.rangha['surface']}; color: {self.rangha['primary']}; }} QPushButton {{ font-size: 18px; border: none; border-radius: 5px; background-color: {self.rangha['button']}; color: {self.rangha['primary']}; }} QPushButton:hover {{ background-color: {self.rangha['button_hover']}; }} QPushButton:disabled {{ background-color: {self.rangha['accent']}; color: {self.rangha['secondary']}; }} """) if self.animation_progress == 1: self.current_background_color = self.target_background_color self.animation_progress = 0 if __name__ == "__main__": app = QApplication(sys.argv) # Font font = QFont("Arial", 9) app.setFont(font) window = CalculatorGuessGame() window.show() sys.exit(app.exec_()) حالا یه نسخه دیگه دارم ولی فک کنم چیت حساب میشه درواقع برعکس این عمل میکنه. اینطوریه که ست میکنم عدد بین چه بازه ای باشه مثلا 100,000 - 5000,000 و در لحظه نصف این رو در کادر میاره 300,000 که دقیقا نصفشه و در بازی این عدد رو مینویسم و Higher یا Lower بودن رو برام میخونه و من دوباره با کلید های Up Arrow Key(Higher) و Down Arrow Key(Lower) مقدار را مشخص میکنم: بازه اول: [100,000] ______________________________ [500,000] حدس اول: (100,000 + 500,000) / 2 = 300,000 اگر Higher بود: بازه جدید: [300,000] ____________________ [500,000] حدس بعدی: (300,000 + 500,000) / 2 = 400,000 اگر Lower بود: بازه جدید: [100,000] _____________ [300,000] حدس بعدی: (100,000 + 300,000) / 2 = 200,000 حالا ممکنه در جاهایی ام اعشار بیاد عدد رو به پایین گرد میشه. اگه ادمینا مشکلی با این قضیه ندارن این رو هم میزارم براتون. دوستون دارم شدید! فعلا خدافظ! https://uploadkon.ir/uploads/3b8214_25game1.rar فقط امیدوارم اگه اشتباه حدس زدیم نزنه System32 رو حذف کنه واقعیتش اینکه ایمپورت SYS استفاده میکنه یه نمور مشکوکه نمیدونم چرا ولی حس خوبی ندارم بهش نقل قول The only things making you unhappy are your own thoughts :My Account :My Brothers لینک به دیدگاه https://forum.arsacia.ir/topic/85409-%D8%A8%D8%B1%D9%86%D8%A7%D9%85%D9%87-%D8%AA%D9%85%D8%B1%DB%8C%D9%86-%D9%87%DA%A9-%D8%A8%D8%A7%D9%86%DA%A9-%D8%A8%D8%B1%D8%A7%DB%8C-%D8%A8%D8%A7%D8%B1-%D8%B5%D8%AF%D9%85/#findComment-891014 به اشتراک گذاری در سایت های دیگر تنظیمات بیشتر اشتراک گذاری...
MiLo ارسال شده در 6 ساعت قبل سازنده اشتراک گذاری ارسال شده در 6 ساعت قبل 1 ساعت قبل، Integer گفته است: فقط امیدوارم اگه اشتباه حدس زدیم نزنه System32 رو حذف کنه واقعیتش اینکه ایمپورت SYS استفاده میکنه یه نمور مشکوکه نمیدونم چرا ولی حس خوبی ندارم بهش کاملاً درک میکنم نگرانی رو! ولی با اطمینان کامل میتونم بگم این کد فقط یک بازی ساده حدس عدد هست و هیچ دستوری برای حذف فایلها یا دستکاری سیستم وجود نداره. من از sys فقط برای sys.exit() استفاده کردم که برنامه رو تمیز ببنده. به نظرت اگر نخوام از sys استفاده کنم، برای بستن برنامه از QApplication.instance().quit() استفاده کنم بهتره یا همون sys.exit() رو نگه دارم؟ چه فرقی دارن؟ و نظرت درباره ایده پایینی چیه؟ اگه میخوای بیشتر توضیح بدم؟ بزار توضیح بدم این برنامه که فک میکنم چیت حساب میشه هر فایلی که اجرا بشه Always on Top حتی زمانی که برنامههای دیگر در حالت Fullscreen , windowed , fullscreen windowed هم باشه نیز قابل مشاهده هست. و دکمه های Arrow up و Down مثل Keybind عمل میکنه و در حالی که داری سیستم بانک را هک میکنی با فشار دادن دکمه عدد رو میتونی مشاهده کنی نقل قول لینک به دیدگاه https://forum.arsacia.ir/topic/85409-%D8%A8%D8%B1%D9%86%D8%A7%D9%85%D9%87-%D8%AA%D9%85%D8%B1%DB%8C%D9%86-%D9%87%DA%A9-%D8%A8%D8%A7%D9%86%DA%A9-%D8%A8%D8%B1%D8%A7%DB%8C-%D8%A8%D8%A7%D8%B1-%D8%B5%D8%AF%D9%85/#findComment-891113 به اشتراک گذاری در سایت های دیگر تنظیمات بیشتر اشتراک گذاری...
HosseinSiGma ارسال شده در 6 ساعت قبل اشتراک گذاری ارسال شده در 6 ساعت قبل بابا بنازم ای لاویو داری موفق باشید. بنازم یه خودم زو گوشی دارم تمرین میکنم 11 ساعت قبل، MiLo گفته است: سلام به همگی! یچی درست کردم که توش میتونید هک کردنه بانک رو شبیهسازی کنید. -لینک حذف شده است، از آپلود سنتر دیگر استفاده نمایید- اگه خواستی کد بازی رو خودت تغییر بدی یا چیزی روش اضافه کنی، کل کد بازی رو گذاشتم. نمایش محتوا مخفی import sys import random from PyQt5.QtWidgets import * from PyQt5.QtCore import * from PyQt5.QtGui import * class CalculatorGuessGame(QMainWindow): def __init__(self): super().__init__() self.adad_maghsad = random.randint(100000, 500000) self.tedad_hads = 0 self.max_hads = 30 # Increased to 30 self.jashn_faal = False self.animation_khata = False # Rangeye rangha self.rangha = { 'background': '#1E1E1E', 'surface': '#2D2D2D', 'primary': '#FFFFFF', 'secondary': '#A0A0A0', 'accent': '#3D3D3D', 'error': '#FF5252', 'success': '#4CAF50', 'button': '#323232', 'button_hover': '#424242', 'pak_kardan': '#FF5252', # Red for pak kardan 'backspace': '#4CAF50' # Green for guess } self.setWindowTitle("HackBankAG") self.setGeometry(100, 100, 400, 600) self.tarah_sazi_ui() self.Emal_Sabkha() # Timer animation self.animation_timer = QTimer(self) self.animation_timer.timeout.connect(self.update_animationha) self.animation_timer.start(16) # Animation dokme cheat self.namayesh_adad_animation_value = 0 self.namayesh_adad_animation_direction = 1 self.namayesh_adad_animation_timer = QTimer(self) self.namayesh_adad_animation_timer.timeout.connect(self.animation_dokme_cheat) self.namayesh_adad_animation_timer.start(50) # Faster animation for the button def tarah_sazi_ui(self): # Widget asli central_widget = QWidget() self.setCentralWidget(central_widget) # Layout asli main_layout = QVBoxLayout() main_layout.setAlignment(Qt.AlignCenter) main_layout.setSpacing(10) main_layout.setContentsMargins(20, 20, 20, 20) central_widget.setLayout(main_layout) # Header header_layout = QHBoxLayout() self.title_label = QLabel("HackBankAG") self.title_label.setAlignment(Qt.AlignCenter) header_layout.addWidget(self.title_label) # Range adad self.range_label = QLabel("100,000 - 500,000") self.range_label.setAlignment(Qt.AlignCenter) # Sakhte shode self.made_by_label = QLabel("Made by MiLo") self.made_by_label.setAlignment(Qt.AlignCenter) # Jai adad self.display = QLineEdit() self.display.setReadOnly(True) self.display.setAlignment(Qt.AlignRight) self.display.setMaxLength(9) # Dokmeha buttons_layout = QGridLayout() buttons_layout.setSpacing(8) # Dokme adad buttons = { '1': (0, 0), '2': (0, 1), '3': (0, 2), '4': (1, 0), '5': (1, 1), '6': (1, 2), '7': (2, 0), '8': (2, 1), '9': (2, 2), '0': (3, 1) } self.number_buttons = {} for btnText, pos in buttons.items(): button = QPushButton(btnText) button.setFixedSize(60, 60) button.clicked.connect(lambda _, text=btnText: self.Click_Adadi(text)) buttons_layout.addWidget(button, pos[0], pos[1]) self.number_buttons[btnText] = button # Dokme hads self.guess_btn = QPushButton("") self.guess_btn.setFixedSize(60, 60) self.guess_btn.clicked.connect(self.Hads_Bezan) buttons_layout.addWidget(self.guess_btn, 3, 2) # Dokme pak kardan self.pak_kardan_btn = QPushButton("") self.pak_kardan_btn.setFixedSize(60, 60) self.pak_kardan_btn.clicked.connect(self.pak_kardan) buttons_layout.addWidget(self.pak_kardan_btn, 3, 0) # Natije self.label_natije = QLabel("") self.label_natije.setAlignment(Qt.AlignCenter) self.label_natije.setWordWrap(True) # Hads haye mande self.label_hads_mande = QLabel(f"Times left: {self.max_hads - self.tedad_hads}") self.label_hads_mande.setAlignment(Qt.AlignCenter) # Dokme cheat self.dokme_cheat_btn = QPushButton("iMobin Cheats Activated! :D ") self.dokme_cheat_btn.setFixedHeight(40) self.dokme_cheat_btn.clicked.connect(self.namayesh_adad) # Link forum self.forum_label = QLabel("forum.arascia.ir") self.forum_label.setAlignment(Qt.AlignCenter) self.forum_label.setOpenExternalLinks(True) self.forum_label.setTextInteractionFlags(Qt.TextBrowserInteraction) self.forum_label.setText('<a href="https://forum.arsacia.ir/" style="color: #A0A0A0; text-decoration: none;">forum.arascia.ir</a>') # Ezafe kardan be layout main_layout.addLayout(header_layout) main_layout.addWidget(self.range_label) main_layout.addWidget(self.made_by_label) main_layout.addWidget(self.display) main_layout.addWidget(self.label_hads_mande) main_layout.addSpacing(10) main_layout.addLayout(buttons_layout) main_layout.addSpacing(10) main_layout.addWidget(self.label_natije) main_layout.addWidget(self.dokme_cheat_btn) main_layout.addWidget(self.forum_label) # Motaghayer haye animation self.animation_progress = 0 self.current_background_color = QColor(30, 30, 30) def Click_Adadi(self, text): current_text = self.display.text().replace(',', '') if len(current_text) < 6: # Limit to 6 digits (up to 500,000) new_text = current_text + text if int(new_text) <= 500000: self.display.setText(self.Shomare_Ghaleb(int(new_text))) def pak_kardan(self): self.display.setText("") def Shomare_Ghaleb(self, num): """Format number with commas for thousands""" return f"{num:,}" def animation_dokme_cheat(self): """Update the animation for the Show number button""" self.namayesh_adad_animation_value += 0.1 * self.namayesh_adad_animation_direction if self.namayesh_adad_animation_value >= 1.0: self.namayesh_adad_animation_value = 1.0 self.namayesh_adad_animation_direction = -1 elif self.namayesh_adad_animation_value <= 0.0: self.namayesh_adad_animation_value = 0.0 self.namayesh_adad_animation_direction = 1 # Mohasebe rang r = int(160 + (255 - 160) * self.namayesh_adad_animation_value) g = int(160 + (255 - 160) * self.namayesh_adad_animation_value) b = int(160 + (255 - 160) * self.namayesh_adad_animation_value) # Mohasebe range glow glow_size = 2 + int(2 * self.namayesh_adad_animation_value) # Style dadan self.dokme_cheat_btn.setStyleSheet(f""" QPushButton {{ font-size: 13px; font-weight: bold; background-color: transparent; color: rgb({r}, {g}, {b}); border: 1px solid rgb({r}, {g}, {b}); border-radius: 5px; }} QPushButton:hover {{ color: #FFFFFF; border: 2px solid #FFFFFF; background-color: rgba(255, 255, 255, 0.1); }} """) def Emal_Sabkha(self): style = f""" QMainWindow {{ background-color: {self.rangha['background']}; }} QLabel {{ font-size: 14px; color: {self.rangha['primary']}; padding: 4px; }} QLabel#title {{ font-size: 20px; font-weight: bold; color: {self.rangha['success']}; }} QLineEdit {{ font-size: 24px; padding: 12px; border: 2px solid {self.rangha['accent']}; border-radius: 5px; background-color: {self.rangha['surface']}; color: {self.rangha['primary']}; selection-background-color: {self.rangha['accent']}; }} QPushButton {{ font-size: 18px; border: none; border-radius: 5px; background-color: {self.rangha['button']}; color: {self.rangha['primary']}; }} QPushButton:hover {{ background-color: {self.rangha['button_hover']}; }} QPushButton:pressed {{ background-color: {self.rangha['accent']}; }} QPushButton:disabled {{ background-color: {self.rangha['accent']}; color: {self.rangha['secondary']}; }} """ self.setStyleSheet(style) self.title_label.setObjectName("title") # Style dokme adad for btn in self.number_buttons.values(): btn.setStyleSheet(f""" QPushButton {{ font-size: 18px; border: none; border-radius: 5px; background-color: {self.rangha['button']}; color: {self.rangha['primary']}; }} QPushButton:hover {{ background-color: {self.rangha['button_hover']}; }} QPushButton:pressed {{ background-color: {self.rangha['accent']}; }} """) # Style dokme pak (Ghermez) self.pak_kardan_btn.setStyleSheet(f""" QPushButton {{ border: none; border-radius: 5px; background-color: {self.rangha['pak_kardan']}; }} QPushButton:hover {{ background-color: #E53935; }} QPushButton:pressed {{ background-color: #C62828; }} """) # Style dokme hads (Sabz) self.guess_btn.setStyleSheet(f""" QPushButton {{ border: none; border-radius: 5px; background-color: {self.rangha['backspace']}; }} QPushButton:hover {{ background-color: #43A047; }} QPushButton:pressed {{ background-color: #2E7D32; }} QPushButton:disabled {{ background-color: #2E7D32; }} """) def Hads_Bezan(self): guess_text = self.display.text().replace(',', '') if not guess_text: self.namayesh_khata() self.label_natije.setText("Please enter a number") return guess = int(guess_text) self.tedad_hads += 1 remaining_guesses = self.max_hads - self.tedad_hads self.label_hads_mande.setText(f"Times left: {remaining_guesses}") if guess < self.adad_maghsad: self.namayesh_khata() self.label_natije.setText(f"{self.Shomare_Ghaleb(guess)} - Higher") elif guess > self.adad_maghsad: self.namayesh_khata() self.label_natije.setText(f"{self.Shomare_Ghaleb(guess)} - Lower") else: # Hads dorost self.namayesh_piroozi() self.ghofl_kardan_dokmeha() # Pak kardan jai adad self.pak_kardan() # Check kardan hads haye tamom shode if remaining_guesses <= 0 and guess != self.adad_maghsad: self.ghofl_kardan_dokmeha() self.namayesh_shekat() def namayesh_khata(self): self.animation_khata = True self.animation_progress = 0 self.target_background_color = QColor(255, 82, 82) # Error color def shoroo_jashn(self): self.jashn_faal = True self.animation_progress = 0 self.target_background_color = QColor(76, 175, 80) # Success color def ghofl_kardan_dokmeha(self): for btn in self.number_buttons.values(): btn.setEnabled(False) self.pak_kardan_btn.setEnabled(False) self.guess_btn.setEnabled(False) def namayesh_adad(self): self.namayesh_shekat() def namayesh_piroozi(self): # Dialog piroozi dialog = QDialog(self) dialog.setWindowTitle("You Win!") dialog.setFixedSize(300, 200) # Style dialog dialog.setStyleSheet(f""" QDialog {{ background-color: {self.rangha['background']}; }} QLabel {{ color: {self.rangha['primary']}; font-size: 14px; }} QPushButton {{ background-color: {self.rangha['button']}; color: {self.rangha['primary']}; padding: 8px; border: none; border-radius: 3px; min-width: 80px; }} QPushButton:hover {{ background-color: {self.rangha['button_hover']}; }} """) # Layout dialog layout = QVBoxLayout() # # Adad maghsad target_label = QLabel(f"Target number: <span style='color: #4CAF50; font-weight: bold;'>{self.Shomare_Ghaleb(self.adad_maghsad)}</span>") target_label.setAlignment(Qt.AlignCenter) target_label.setTextFormat(Qt.RichText) # Payam message_label = QLabel("You Won! Let's try again") message_label.setAlignment(Qt.AlignCenter) # Dokme OK ok_button = QPushButton("OK") ok_button.clicked.connect(dialog.accept) # Ezafe kardan be layout layout.addWidget(target_label) layout.addWidget(message_label) layout.addStretch() layout.addWidget(ok_button, alignment=Qt.AlignCenter) dialog.setLayout(layout) # Namayesh dialog if dialog.exec_() == QDialog.Accepted: # Restart bazi ba addad hadsi jadid self.restart_bazi() def namayesh_shekat(self): # Dialog shekat dialog = QDialog(self) dialog.setWindowTitle("Target Number") dialog.setFixedSize(300, 200) # Style dialog dialog.setStyleSheet(f""" QDialog {{ background-color: {self.rangha['background']}; }} QLabel {{ color: {self.rangha['primary']}; font-size: 14px; }} QPushButton {{ background-color: {self.rangha['button']}; color: {self.rangha['primary']}; padding: 8px; border: none; border-radius: 3px; min-width: 80px; }} QPushButton:hover {{ background-color: {self.rangha['button_hover']}; }} """) # Layout dialog layout = QVBoxLayout() # Adad maghsad (in red) target_label = QLabel(f"Target number: <span style='color: #FF5252; font-weight: bold;'>{self.Shomare_Ghaleb(self.adad_maghsad)}</span>") target_label.setAlignment(Qt.AlignCenter) target_label.setTextFormat(Qt.RichText) # Payam message_label = QLabel("You Lost, Retry!") message_label.setAlignment(Qt.AlignCenter) # Dokme OK ok_button = QPushButton("OK") ok_button.clicked.connect(dialog.accept) # Ezafe kardan be layout layout.addWidget(target_label) layout.addWidget(message_label) layout.addStretch() layout.addWidget(ok_button, alignment=Qt.AlignCenter) dialog.setLayout(layout) # Namayesh dialog if dialog.exec_() == QDialog.Accepted: # Restart bazi ba addad hadsi jadid self.restart_bazi() def restart_bazi(self): self.adad_maghsad = random.randint(100000, 500000) self.tedad_hads = 0 self.label_hads_mande.setText(f"Times left: {self.max_hads}") self.label_natije.setText("") self.pak_kardan() # Baz kardan dokmeha for btn in self.number_buttons.values(): btn.setEnabled(True) self.pak_kardan_btn.setEnabled(True) self.guess_btn.setEnabled(True) def update_animationha(self): if self.animation_khata or self.jashn_faal: self.animation_progress += 0.05 if self.animation_progress >= 1: self.animation_progress = 1 if self.animation_khata: self.animation_khata = False if self.jashn_faal: self.jashn_faal = False # Bargasht be zamine asli self.target_background_color = QColor(30, 30, 30) # Mohasebe rang miyane r = int(self.current_background_color.red() * (1 - self.animation_progress) + self.target_background_color.red() * self.animation_progress) g = int(self.current_background_color.green() * (1 - self.animation_progress) + self.target_background_color.green() * self.animation_progress) b = int(self.current_background_color.blue() * (1 - self.animation_progress) + self.target_background_color.blue() * self.animation_progress) # Ezafe kardan rang self.setStyleSheet(f""" QMainWindow {{ background-color: rgb({r}, {g}, {b}); }} QLabel {{ font-size: 14px; color: {self.rangha['primary']}; padding: 4px; }} QLabel#title {{ font-size: 20px; font-weight: bold; color: {self.rangha['success']}; }} QLineEdit {{ font-size: 24px; padding: 12px; border: 2px solid {self.rangha['accent']}; border-radius: 5px; background-color: {self.rangha['surface']}; color: {self.rangha['primary']}; }} QPushButton {{ font-size: 18px; border: none; border-radius: 5px; background-color: {self.rangha['button']}; color: {self.rangha['primary']}; }} QPushButton:hover {{ background-color: {self.rangha['button_hover']}; }} QPushButton:disabled {{ background-color: {self.rangha['accent']}; color: {self.rangha['secondary']}; }} """) if self.animation_progress == 1: self.current_background_color = self.target_background_color self.animation_progress = 0 if __name__ == "__main__": app = QApplication(sys.argv) # Font font = QFont("Arial", 9) app.setFont(font) window = CalculatorGuessGame() window.show() sys.exit(app.exec_()) حالا یه نسخه دیگه دارم ولی فک کنم چیت حساب میشه درواقع برعکس این عمل میکنه. اینطوریه که ست میکنم عدد بین چه بازه ای باشه مثلا 100,000 - 5000,000 و در لحظه نصف این رو در کادر میاره 300,000 که دقیقا نصفشه و در بازی این عدد رو مینویسم و Higher یا Lower بودن رو برام میخونه و من دوباره با کلید های Up Arrow Key(Higher) و Down Arrow Key(Lower) مقدار را مشخص میکنم: بازه اول: [100,000] ______________________________ [500,000] حدس اول: (100,000 + 500,000) / 2 = 300,000 اگر Higher بود: بازه جدید: [300,000] ____________________ [500,000] حدس بعدی: (300,000 + 500,000) / 2 = 400,000 اگر Lower بود: بازه جدید: [100,000] _____________ [300,000] حدس بعدی: (100,000 + 300,000) / 2 = 200,000 حالا ممکنه در جاهایی ام اعشار بیاد عدد رو به پایین گرد میشه. اگه ادمینا مشکلی با این قضیه ندارن این رو هم میزارم براتون. دوستون دارم شدید! فعلا خدافظ! https://uploadkon.ir/uploads/3b8214_25game1.rar یه نظر دارم اینه که تایم باز کردن در رو بهمون بگه نقل قول Every cloud has a silver lining لینک به دیدگاه https://forum.arsacia.ir/topic/85409-%D8%A8%D8%B1%D9%86%D8%A7%D9%85%D9%87-%D8%AA%D9%85%D8%B1%DB%8C%D9%86-%D9%87%DA%A9-%D8%A8%D8%A7%D9%86%DA%A9-%D8%A8%D8%B1%D8%A7%DB%8C-%D8%A8%D8%A7%D8%B1-%D8%B5%D8%AF%D9%85/#findComment-891130 به اشتراک گذاری در سایت های دیگر تنظیمات بیشتر اشتراک گذاری...
MiLo ارسال شده در 5 ساعت قبل سازنده اشتراک گذاری ارسال شده در 5 ساعت قبل 6 ساعت قبل، SinisteR گفته است: ممنون از زحماتت خسته نباشی 54 دقیقه قبل، HosseinSiGma گفته است: بابا بنازم ای لاویو داری موفق باشید 54 دقیقه قبل، HosseinSiGma گفته است: بنازم یه خودم زو گوشی دارم تمرین میکنم 54 دقیقه قبل، HosseinSiGma گفته است: یه نظر دارم اینه که تایم باز کردن در رو بهمون بگه حالا دوستان توسعه دهنده هم هستن و اینکه تایمم خالی شد خیلی چیزای دیگه هم اضافه میکنم. تازه این برای 1 سال پیش بود که دیشب به صورت اتفاقی داشتم فایل های سیستم رو مرتب میکردم کدش رو پیدا کردم 5 ساعت قبل، RappeR گفته است: خیلی کمک کردی ممنون نقل قول لینک به دیدگاه https://forum.arsacia.ir/topic/85409-%D8%A8%D8%B1%D9%86%D8%A7%D9%85%D9%87-%D8%AA%D9%85%D8%B1%DB%8C%D9%86-%D9%87%DA%A9-%D8%A8%D8%A7%D9%86%DA%A9-%D8%A8%D8%B1%D8%A7%DB%8C-%D8%A8%D8%A7%D8%B1-%D8%B5%D8%AF%D9%85/#findComment-891168 به اشتراک گذاری در سایت های دیگر تنظیمات بیشتر اشتراک گذاری...
ارسالهای توصیه شده
به گفتگو بپیوندید
هم اکنون می توانید مطلب خود را ارسال نمایید و بعداً ثبت نام کنید. اگر حساب کاربری دارید، برای ارسال با حساب کاربری خود اکنون وارد شوید.
توجه: strong> مطلب ارسالی شما پس از تایید مدیریت برای همه قابل رویت خواهد بود.