Загрузка...

Код в графический интерфейс

Тема в разделе Python создана пользователем WhiteRose404 21 ноя 2019. 136 просмотров

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

    Код

    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 21 ноя 2019 алкаш 1367 7 дек 2016
    Блять, я сыграл и проиграл(
    --- Сообщение объединено с предыдущим 21 ноя 2019
    Знаю что есть пакет PyGame, но как им пользоваться не знаю.
     
Top