Загрузка...

Code to GUI

Thread in Python created by WhiteRose404 Nov 21, 2019. 138 views

  1. WhiteRose404
    WhiteRose404 Topic starter Nov 21, 2019 Изменить статус 217 Dec 21, 2018
    Есть легкий не большой код с мини игрой, которое я хочу перенести в графическое приложение.
    Есть умельцы которое смогут это сделать, а то я что то втыкаю.

    Code

    import random

    print('\n\n\n')
    person = {'name' : input('Введие имя вашего персонажа: '), 'hp' : 100}
    enemy = {'name' : input('Введите имя противника: '), 'hp' : 100}

    score = []

    def stata():
    global score
    while len(score) != 0:
    score.remove(1)

    def Russian_Ruletka(hp_1, hp_2):
    die = 0
    while die != 1:
    ammo = random.randint(1,6)
    print('\nОчередь {} - '.format(hp_1))
    if ammo == random.randint(1,6):
    print('>>> Неудачно <<<')
    return hp_1
    break
    else:
    print('>>> Удачно <<<')
    print('\nОчередь {} - '.format(hp_2))
    if ammo == random.randint(1,6):
    print('>>> Неудачно <<<')
    return hp_2
    break
    else:
    print('>>> Удачно <<<')


    def max_hps(heal_prs, hp):
    obshp = heal_prs + hp
    if obshp > 100:
    x = obshp - 100
    heal_prs -= x
    return heal_prs
    else:
    return heal_prs

    def min_hps(hp):
    obshp = hp
    if obshp < 0:
    obshp = 0
    return obshp
    else:
    return hp

    def game_battle(person1, person2):
    player_action = input('\n\n\nМеню: \n-> \'Удар\' - нанести урон противнику (урон от 10 до 25 хп)\n')
    while person1['hp'] > 0 and person2['hp'] > 0:
    if player_action == '1':
    if person1['hp'] < 25:
    Ru_Rul = input('\n{}, у Вас осталось мало хп: {}, вы можете сыграть в Русскую Рулетку.\nПредложить {} сыграть?(Да/Нет): '.format(person1['name'], person1['hp'], person2['name']))
    if Ru_Rul == 'Да':
    DIE = Russian_Ruletka(person1['name'], person2['name'])
    if DIE == person1['name']:
    person1['hp'] = 0
    if DIE == person2['name']:
    person2['hp'] = 0
    player_action = '1'

    elif len(score) == 5 and person1['hp'] > 25 and person2['hp'] > 50:
    print('\n{}, Вы провели 3 атаки сподрят и Вы можете провести ультра атаку на 50 единиц урона, но у Вас убавиться 25 хп'.format(person1['name']))
    ultra_attack = input('Выполнить Ультра Атаку?(Да/Нет): ')
    if ultra_attack == 'Да':
    person2['hp'] -= 50
    stata()
    print('{} использовал Ультра Удар и нанес {} 50 единиц урона. У {} осталось {}'.format(person1['name'], person2['name'], person2['name'], person2['hp']))
    player_action = '1'

    else:
    player_action = input('\n\nМеню: \n-> \'Удар\' - нанести урон противнику (урон от 10 до 25 хп)\n-> \'Аптечка\' - воспользоваться аптечкой (востановит от 5 до 30 хп)\n-> \'ХП\' - узнать кол-во здоровья персонажей\n')
    if player_action == 'Удар':
    person1['damage'] = random.randint(10,25)
    enemy_action = random.randint(0,1)
    score.append(1)
    if enemy_action == 0: #0 удар 1 аптечка
    person2['damage'] = random.randint(10,25)
    person2['hp'] -= person1['damage']
    person1['hp'] -= person2['damage']
    person2['hp'] = min_hps(person2['hp'])
    person1['hp'] = min_hps(person1['hp'])
    print('\n{} нанес -> {} и у противника осталось: {} ХП\n {} нанес -> {} и у Вас осталось: {} ХП\n'.format(person1['name'], person1['damage'], person2['hp'], person2['name'], person2['damage'], person1['hp']))
    elif enemy_action == 1:
    heal_person2 = random.randint(5, 30)
    heal_person2 = max_hps(heal_person2, person2['hp'])
    person2['hp'] -= person1['damage']
    person2['hp'] += heal_person2
    person2['hp'] = min_hps(person2['hp'])
    if person2['hp'] == 100:
    print('\nУ {} максимальное кол-во ХП'.format(person2['name']))
    print('\n{} воспользовался аптечкой и получил: {} ХП\n{} нанес -> {} и у противника осталось: {} ХП\n'.format(person2['name'], heal_person2, person1['name'], person1['damage'], person2['hp']))
    elif player_action == 'Аптечка':
    stata()
    heal_person1 = random.randint(5, 30)
    heal_person1 = max_hps(heal_person1, person1['hp'])
    person1['hp'] += heal_person1
    if person1['hp'] == 100:
    print('\nУ {} максимальное кол-во ХП'.format(person1['name']))
    enemy_action = random.randint(0,1)
    if enemy_action == 0: #0 удар 1 аптечка
    person2['damage'] = random.randint(10,25)
    person1['hp'] -= person2['damage']
    person1['hp'] = min_hps(person1['hp'])
    print('\n {} воспользовался аптечкой и получил: {} ХП\n {} нанес -> {} и у Вас осталось: {} ХП\n'.format(person1['name'], heal_person1, person2['name'], person1['damage'], person1['hp']))
    elif enemy_action == 1:
    heal_person2 = random.randint(5, 30)
    heal_person2 = max_hps(heal_person2, person2['hp'])
    person2['hp'] += heal_person2
    if person2['hp'] == 100:
    print('\nУ {} максимальное кол-во ХП'.format(person2['name']))
    print('\n', person2['name'], ' воспользовался аптечкой и получил:', heal_person2, 'ХП\n',person1['name'], 'воспользовался аптечкой и получил:', heal_person1, 'ХП\n')
    elif player_action == 'ХП':
    print('\n{} - {} хп\n{} - {} хп\n'.format(person1['name'], person1['hp'], person2['name'], person2['hp']))
    else:
    print('\nВы ввели дейстивие неправильно !!!\nИз-за этого у вашего персона убавлено 1 ХП')
    person1['hp'] -= 1
    player_action = '1'

    if person1['hp'] <= person2['hp']:
    return person2['name']
    elif person2['hp'] <= person1['hp']:
    return person1['name']
    elif person1['hp'] == person2['hp']:
    tie = 'Ничья'
    return tie
    print('\n\n Победил: ', game_battle(person, enemy), ' !!!')


     
  2. Blow
    Blow Nov 21, 2019 алкаш 1365 Dec 7, 2016
    Блять, я сыграл и проиграл(
    The post was merged to previous Nov 21, 2019
    Знаю что есть пакет PyGame, но как им пользоваться не знаю.
     
Loading...
Top