Загрузка...

Python mini-game, how to get rid of if ?!

Thread in Python created by WhiteRose404 Nov 9, 2019. 316 views

  1. WhiteRose404
    WhiteRose404 Topic starter Nov 9, 2019 Изменить статус 217 Dec 21, 2018
    Время: 5:53 и мне скучно.

    Вот написал мини-игру, что бы развеселить себя.

    Можно как-то избавиться от этих мозолящих глаза IF IF IF IF IF !
    Code

    import random

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

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

    if person1['hp'] <= person2['hp']:
    return person2['name']
    elif person2['hp'] <= person1['hp']:
    return person1['name']

    print('\n\n Победил: ', game_battle(person, enemy), ' !!!')


     
  2. Quali_inactive2763538
    Держи
    Code

    import random

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


    def hit(person1, person2):
    person1['damage'] = random.randint(10,25)

    def action_hit():
    person2['damage'] = random.randint(10,25)
    person2['hp'] -= person1['damage']
    person1['hp'] -= person2['damage']
    print('\n{} нанес -> {} и у противника осталось: {} ХП\n {} нанес -> {} и у Вас осталось: {} ХП\n'.format(person1['name'], person1['damage'], person2['hp'], person2['name'], person2['damage'], person1['hp']))

    def action_heal():
    heal_person2 = random.randint(5, 30)
    person2['hp'] -= person1['damage']
    person2['hp'] += heal_person2
    print('\n{}воспользовался аптечкой и получил: {} ХП\n{}нанес -> {} и у противника осталось: {} ХП\n'.format(person2['name'], heal_person2, person1['name'], person1['damage'], person2['hp']))

    enemy_action = random.choice([action_hit, action_heal])
    enemy_action()


    def heal(person1, person2):
    heal_person1 = random.randint(5, 30)
    person1['hp'] += heal_person1

    def action_hit():
    person2['damage'] = random.randint(10,25)
    person1['hp'] -= person2['damage']
    print('\n {} воспользовался аптечкой и получил: {} ХП\n {} нанес -> {} и у Вас осталось: {} ХП\n'.format(person1['name'], heal_person1, person2['name'], person1['damage'], person1['hp']))

    def action_heal():
    heal_person2 = random.randint(5, 30)
    person2['hp'] -= person1['damage']
    person2['hp'] += heal_person2
    print('\n', person2['name'], 'воспользовался аптечкой и получил:', heal_person2, 'ХП\n',person1['name'], 'воспользовался аптечкой и получил:', heal_person1, 'ХП\n')

    enemy_action = random.choice([action_hit, action_heal])
    enemy_action()


    def hp(person1, person2):
    print('\n{} - {} хп\n{} - {} хп\n'.format(person1['name'], person1['hp'], person2['name'], person1['hp']))


    actions = {
    'Удар': hit,
    'Аптечка': heal,
    'ХП': hp,
    }

    def game_battle(person1, person2):

    player_action = input('\n\n\nМеню: \n-> \'Удар\' - нанести урон противнику (урон от 10 до 25 хп)\n-> \'Аптечка\' - воспользоваться аптечкой (востановит от 5 до 30 хп) с начала игры у всех по 100хп\n')

    while person1['hp'] > 0 and person2['hp'] > 0:
    if person1['hp'] != 100 or person2['hp'] != 100:
    player_action = input('\n\nМеню: \n-> \'Удар\' - нанести урон противнику (урон от 10 до 25 хп)\n-> \'Аптечка\' - воспользоваться аптечкой (востановит от 5 до 30 хп)\n-> \'ХП\' - узнать кол-во здоровья персонажей\n')

    try:
    action = actions[player_action]
    action(person1, person2)
    except KeyError:
    print('\nВы ввели дейстивие неправильно !!!\nИз-за этого у вашего персона убавлено 1 ХП')
    person1['hp'] -= 1

    if person1['hp'] <= person2['hp']:
    return person2['name']

    return person1['name']

    print('\n\n Победил: ', game_battle(person, enemy), ' !!!')

     
  3. Cchecker
    Cchecker Nov 9, 2019 скидки билайн в лс 98 Nov 22, 2018
    пушкин с дантессом на минималках
     
Loading...
Top