• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

problem w zarabianiu po kupnie

Object Storage Arubacloud
0 głosów
78 wizyt
pytanie zadane 15 maja 2022 w Python przez Karp.exe Początkujący (340 p.)
import pygame
import Hero
import Button
import shopping
import Enemy
pygame.init()
#display settings
win = pygame.display.set_mode((1000, 700))
pygame.display.set_caption("Pixel_Hero")
#Initialize graphics
bg = pygame.transform.scale(pygame.image.load('background ph.png'), (1000, 700))
bg_choose_menu = pygame.transform.scale(pygame.image.load('background - choose menu.png'), (1000, 700))
bg_dungeon = pygame.transform.scale(pygame.image.load('enemies/dungeon_bg.png'), (1000, 700))
welcome_title = pygame.transform.scale(pygame.image.load('welcome title.png'), (400, 400))
#Buttons
play_button = Button.Button(450, 450, pygame.transform.scale(pygame.image.load('Play_button.png'), (250, 250)))
work_button = Button.Button(50, 100, pygame.transform.scale(pygame.image.load('Work_title.png'), (200, 200)))
shop_button = Button.Button(50, 310, pygame.transform.scale(pygame.image.load('shop_title.png'), (200, 200)))
dungeon_button = Button.Button(50, 520, pygame.transform.scale(pygame.image.load('Monsters_title.png'), (200, 200)))
cancel_button = Button.Button(0 , 500, pygame.transform.scale(pygame.image.load('cancel_button.png'), (200, 200)))
Skieleton = Button.Button(100, 0, pygame.transform.scale(pygame.image.load('enemies/skieleton.png'), (200, 200)))
Acient_Knight = Button.Button(500, 0, pygame.transform.scale(pygame.image.load('enemies/Acient Knight.png'), (200, 200)))
Dragon = Button.Button(800, 0, pygame.transform.scale(pygame.image.load('enemies/weird dragon.png'), (200, 200)))
fight_button = Button.Button(400, 250, pygame.transform.scale(pygame.image.load('fight_button.png'), (200, 200)))
#Human/enemies
Human = pygame.transform.scale(pygame.image.load('Hero.png'), (400, 400))
skieleton_bg = pygame.transform.scale(pygame.image.load('skieleton_bg.png'), (500, 500))
acient_knight_bg = pygame.transform.scale(pygame.image.load('acient_knight_bg.png'), (500, 500))
Weird_Dragon_bg = pygame.transform.scale(pygame.image.load('weird_dragon_bg.png'), (500, 500))
#text
cash = pygame.font.SysFont('comicsans', 32)
#shopping
swords_shop = [pygame.transform.scale(pygame.image.load('Wooden sword.png'), (200, 200)),
pygame.transform.scale(pygame.image.load('Iron Sword.png'), (200, 200)),
pygame.transform.scale(pygame.image.load('Magic Sword.png'), (200, 200))]
shields_shop = [pygame.transform.scale(pygame.image.load('Wooden Shield.png'), (200, 200)),
pygame.transform.scale(pygame.image.load('Iron shield.png'), (200, 200)),
pygame.transform.scale(pygame.image.load('Mithic shield.png'), (200, 200))]
suits_shop = [pygame.transform.scale(pygame.image.load('TRAVEL SUIT.png'), (200, 200)),
pygame.transform.scale(pygame.image.load("Warror's suit.png"), (200, 200)),
pygame.transform.scale(pygame.image.load('Mithic suit.png'), (200, 200))]
boots = [pygame.transform.scale(pygame.image.load('clothes/traveller boots.png'), (300, 300)),
pygame.transform.scale(pygame.image.load('clothes/iron boots.png'), (300, 300)),]
pants = [pygame.transform.scale(pygame.image.load('clothes/traveller pants.png'), (300, 300)),
pygame.transform.scale(pygame.image.load('clothes/Iron pants.png'), (300, 300))]
suits = [pygame.transform.scale(pygame.image.load('clothes/traveller suit.png'), (450, 300)),
pygame.transform.scale(pygame.image.load('clothes/iron suit.png'), (300, 300))]
helmets = [pygame.transform.scale(pygame.image.load('clothes/traveller_helmet.png'), (300, 300)),
pygame.transform.scale(pygame.image.load('clothes/iron helmet.png'), (300, 300)),
pygame.transform.scale(pygame.image.load('clothes/mithic suit.png'), (300, 300))]
shields = [pygame.transform.scale(pygame.image.load('clothes/traveller shield.png'), (300, 300)),
pygame.transform.scale(pygame.image.load('clothes/Iron shield.png'), (300, 300)),
pygame.transform.scale(pygame.image.load('clothes/mithic shield.png'), (300, 300))]
swords = [pygame.transform.scale(pygame.image.load('clothes/traveller sword.png'), (300, 300)),
pygame.transform.scale(pygame.image.load('clothes/Iron sword.png'), (300, 300)),
pygame.transform.scale(pygame.image.load('clothes/mithic_sword.png'), (300, 300))]
#Variables
s = 1000
su = 1000
sh = 1000
a = 0
g = 0
b = 0
sword_index = 0
suit_index = 0
shield_index = 0
sword_wear = 0
shield_wear = 0
armor_wear = 0
dungeon_active = False
skieleton_active = False
knight_active = False
war = False
#Events
Winning = pygame.USEREVENT + 1
Losing = pygame.USEREVENT + 2
tie = pygame.USEREVENT + 3
#Objects
Skieletor = Enemy.Enemy(50, 1)
Knight = Enemy.Enemy(150, 30)
Dragonn = Enemy.Enemy(200, 50)
active = False
def draw_menu():
    global a, active
    win.blit(bg, (0,0))
    win.blit(welcome_title, (450, 0))
    if play_button.draw(win) == True or active == True:
        active = True
        draw_choose_menu()
def draw_choose_menu():
    global a, g, dungeon_active
    dungeon_active = False
    win.blit(bg_choose_menu, (0, 0))
    win.blit(Human, (500, 300))
    namee = cash.render(Hero.hero.name, True, (255, 0, 0))
    cas = cash.render('Cash: ' + str(Hero.hero.cash), True, (255, 0, 0))
    win.blit(cas, (400, 300))
    win.blit(namee, (640, 200))
    if work_button.draw(win) and g == 0:
        g = 0
        Hero.hero.work()
    if dungeon_button.draw(win) or a == 1 and g == 0:
        dungeon_active = True
        g = 0
        a = 1
        draw_dungeon()
    if dungeon_active == False:
        if shop_button.draw(win) or a == 2:
            a = 2
            draw_shop()
    if a == 0 and g == 0:
        get_armor() 
def draw_shop():
    global sword, suit, shield, g, sword_index, suit_index, shield_index, a, cancel_button, s, su, sh, sword_wear, shield_wear, armor_wear
    if g == 0:
        if not(sword_index == 3):
            sword = shopping.shopp(400, 0, swords_shop[sword_index], 100, s)
            sword.clicked = True
        if not(suit_index == 3):
            suit = shopping.shopp(400, 250, suits_shop[suit_index], 100, su)
            suit.clicked = True
        if not(shield_index == 3):
            shield = shopping.shopp(400, 500, shields_shop[shield_index], 100, sh)
            shield.clicked = True
        g = 1
    win.fill((158, 255, 92))
    if sword.draw(win):
        if sword_index <= 2:
            if Hero.hero.cash >= sword.cost:
                Hero.hero.damage += 50
                sword_index += 1
                g = 0
                Hero.hero.cash -= sword.cost
                s += 1000
                sword_wear += 1
            else:
                print("You can't buy it. You haven't money")
        else:
            print("You have the best sword in this game")
    if suit.draw(win):
        if suit_index <= 2:
            if Hero.hero.cash >= suit.cost:
                Hero.hero.health += 50
                suit_index += 1
                g = 0
                Hero.hero.cash -= suit.cost
                su += 1000
                armor_wear += 1
            else:
                print("You can't buy it. You haven't money")
        else:
            print("You have the best suit in this game")
    if shield.draw(win):
        if shield_index <= 2:
            if Hero.hero.cash >= shield.cost:
                Hero.hero.health += 30
                shield_index += 1
                g = 0
                Hero.hero.cash -= shield.cost
                sh += 1000
                shield_wear += 1
            else:
                print("You can't buy it. You haven't money")
        else:
            print("You have the best shield in this game")
    if cancel_button.draw(win):
        a = 0
        g = 0
def draw_dungeon():
    global a, g, b, skieleton_active, knight_active, war
    win.blit(bg_dungeon, (0, 0))
    skieleton_active = False
    knight_active = False
    if cancel_button.draw(win):
        a = 0
        g = 0
    if Skieleton.draw(win) or b == 1:
        win.fill((173, 173, 173))
        win.blit(skieleton_bg, (250, 200))
        b = 1
        skieleton_active = True
        if fight_button.draw(win) or war == True:
            if Skieletor.fight() == 0:
                war = True
            if Skieletor.fight() == True:
                pygame.event.post(pygame.event.Event(Winning))
                war = False
            if Skieletor.fight() == False:
                pygame.event.post(pygame.event.Event(Losing))
                war = False
            if Skieletor.fight() == None:
                pygame.event.post(pygame.event.Event(tie))
                war = False
        if cancel_button.draw(win):
            b = 0
    if skieleton_active == False:
        if Acient_Knight.draw(win) or b == 2:
            win.fill((53, 1, 131))
            win.blit(acient_knight_bg, (250, 200))
            b = 2
            knight_active = True
        if knight_active == False:
            if Dragon.draw(win) or b == 3:
                win.fill((255, 0, 0))
                win.blit(Weird_Dragon_bg, (250, 200))
                b = 3
def get_armor():
    global sword_wear, shield_wear, armor_wear, Human
    if armor_wear == 1:
        helmet_wr = shopping.suits(helmets[0], 540, 140)
        armor_wr = shopping.suits(suits[0], 500, 350)
        pants_wr = shopping.suits(pants[0], 525, 500)
        boots_wr = shopping.suits(boots[0], 525, 420)
    if armor_wear == 2:
        helmet_wr = shopping.suits(helmets[1], 540, 250)
        armor_wr = shopping.suits(suits[1], 550, 350)
        pants_wr = shopping.suits(pants[1], 535, 465)
        boots_wr = shopping.suits(boots[1], 525, 420)
    if armor_wear == 3:
        Human = pygame.transform.scale(pygame.image.load('clothes/mithic suit.png'), (400, 400))
    if sword_wear == 1:
        sword_wr = shopping.suits(swords[0], 370, 360)
    if sword_wear == 2:
        sword_wr = shopping.suits(swords[1], 350, 360)
    if sword_wear == 3:
        sword_wr = shopping.suits(swords[2], 370, 350)
    if shield_wear == 1:
        shield_wr = shopping.suits(shields[0], 630, 400)
    if shield_wear == 2:
        shield_wr = shopping.suits(shields[1], 630, 400)
    if shield_wear == 3:
        shield_wr = shopping.suits(shields[2], 630, 400)
    try:
        if armor_wear == 1 or armor_wear == 2:
            helmet_wr.wear(win)
            armor_wr.wear(win)
            pants_wr.wear(win)
            boots_wr.wear(win)
        sword_wr.wear(win)
        shield_wr.wear(win)
    except:
        try:
            shield_wr.wear(win)
        except:
            pass
run = True
Clock = pygame.time.Clock()
while run:
    Clock.tick(70)
    for event in pygame.event.get():
        if event.type == pygame.QUIT:
            pygame.quit()
            run = False
        if event.type == Winning:
            win.fill((255, 0,0))
            cash.render('You Won')
            win.blit(cash, 500, 350)
            pygame.display.update()
            pygame.time.delay(5000)
            a = 0
            g = 0
            b = 0
        if event.type == Losing:
            print("Your enemy killed You")
            pygame.quit()
            run = False
        if event.type == tie:
            print("You both are dead")
            pygame.quit()
            run = False
    draw_menu()
    pygame.display.update()

Dzień dobry mam problem - w choose_menu() jest przycisk work - robi on, że zarabia się od 1 do 100 punktów (jest to w innym pliku). Gdy wejdzie się w przycisk shop i kupi się coś nagle pomimo, że pieniądze się zarabiają po przyciśnięciu work to nie można już nic kupić (no chyba, że wcześniej się poklikało więcej) i nie pokazuje się na ekranie ilość pieniędzy pomimo, że to zblitowałem. Proszę o pomoc

Zaloguj lub zarejestruj się, aby odpowiedzieć na to pytanie.

Podobne pytania

+1 głos
1 odpowiedź 275 wizyt
pytanie zadane 20 czerwca 2023 w Python przez Bondrusiek Maniak (61,370 p.)
0 głosów
1 odpowiedź 466 wizyt
pytanie zadane 17 grudnia 2022 w Python przez Kubas23 Użytkownik (630 p.)
0 głosów
0 odpowiedzi 196 wizyt
pytanie zadane 27 października 2022 w Python przez Podlasianin Początkujący (400 p.)

92,575 zapytań

141,424 odpowiedzi

319,649 komentarzy

61,960 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...