Серия «Python»

2

Продолжение проекта на питоне

Увеличил объем кода ~в 2 раза. Добавил количество раундов, счётчик выигранных раундов(в планах исправить, потому что не работает), ну и ещё чего-то, лень вспоминать. Из недочётов помимо счётчика выигранных раундов есть баг, по которому можно стрелять патронами, которых нет(ах да, я добавил рандом, который определяет количество каждых патронов на раунд). Видео, код и фото кода(Пикабу убирает табы) ниже(предлагайте, что можно реализовать (я не про-разработчик, а новичок, так что идеи приземлённые)):

С вертикальным монитором так удобно кодить:D

Подготовка видео...

from random import choice

from random import randint

from time import sleep

from termcolor import colored

# предметы=["шоколад", "адреналин", "инвертер", "лупа"]

# import flet as ft

# предметыуигроков={}

количествохп={1:3,2:3,3:3,4:3}

игроки=[1,2,3,4]

next_move=choice([1,2,3,4])

патрон=''

цель=0

round=1

количествопатронов={"Холостых":randint(1, 5), "Боевых":randint(1,5)}

количествораундов=int(input(" Введи количество раундов: "))

выйгранныераунды={1:0, 2:0, 3:0, 4:0}

print(colored(f"Количество патронов:{количествопатронов} \n", "light_red"))

def началораунда(количествораундов):

global игроки

global количествохп

global next_move

global цель

global round

global количествопатронов

global выйгранныераунды

# выйгранныераунды={1:0, 2:0, 3:0, 4:0}

if round<количествораундов:

количествопатронов={"Холостых":randint(1, 5), "Боевых":randint(1,5)}

количествохп={1:3,2:3,3:3,4:3}

игроки=[1,2,3,4]

next_move=choice([1,2,3,4])

цель=0

round+=1

print(colored(f"\n Начало {round} раунда \n \n", "light_green"))

print(colored(f"Количество патронов:{количествопатронов} \n", "light_red"))

ход()

for key in выйгранныераунды.keys():

if key in игроки:

выйгранныераунды[key]+=1

else:

print(выйгранныераунды)

exit()

def ход():

global next_move

global количествопатронов

global round

global патрон

global количествораундов

global выйгранныераунды

инвертер()

if list(количествопатронов.values())==[0, 0]:

print(f'\n В раунде {round} выжили игроки {игроки} со здоровьем {количествохп} \n')

началораунда(количествораундов)

next_move+=1

if next_move not in игроки:

next_move+=1

if next_move>4:

next_move=1

while next_move not in игроки:

next_move+=1

if next_move>4:

next_move=1

while next_move not in игроки:

next_move+=1

if next_move==3:

print(colored("Ходит игрок 3", 'green'))

sleep(1)

игрок()

if next_move!=3:

print(colored(f"Ходит игрок {next_move}", 'blue'))

sleep(1)

боты()

def патроны():

global next_move

global количествопатронов

global патрон

if цель in игроки:

патрон=choice(['боевой','холостой'])

инвертер()

if next_move!=3:

print(colored(f" Игрок {next_move} выбирает игрока {цель}, патрон {патрон} \n", 'yellow'))

sleep(1)

if next_move==3:

print(colored(f" Игрок 3 выбирает игрока {цель}, патрон {патрон} \n", 'yellow'))

sleep(1)

if патрон=="боевой":

if количествопатронов['Боевых']>0:

количествохп[цель]-=1

количествопатронов['Боевых']-=1

if количествохп[цель]==0:

print(colored(f"\n Игрок {цель} выбыл\n", 'grey'))

del количествохп[цель]

игроки.remove(цель)

print(colored(f' {количествохп}\n', 'grey'))

sleep(1)

if патрон=='холостой':

if количествопатронов['Холостых']>0:

количествопатронов['Холостых']-=1

print(colored(f' {количествохп}\n', 'grey'))

if цель==next_move:

next_move-=1

print(количествопатронов) #отключить при готовности игры

def боты():

global цель

цель=choice(игроки)

патроны()

sleep(1.5)

def игрок():

global цель

цель=int(input(colored(' В кого стрелять?\n ', 'red')))

while цель not

def инвертер():

global патрон

global количествопатронов

for key, value in количествопатронов.items():

if value==0:

if количествопатронов[key]=='Холостой':

патрон='Боевой'

if количествопатронов[key]=='Боевой':

патрон='Холостой'

while True:

ход()

if len(игроки)==1:

print(colored(f'Победил игрок {игроки[0]}', 'magenta'))

exit()in игроки:

цель=int(input(colored(' Введи цель ещё раз\n ', 'light_red')))

патроны()

sleep(1.5)

Обманул, без видео. Какого-то чёрта видео и скрины сегодня ужасного качества(не знаю почему. Win+Shift+S и Win+Alt+R)

Продолжение проекта на питоне Игры, Программа, Программирование, Python, Программист, Разработка, Видео, Без звука, Вертикальное видео, Длиннопост
Продолжение проекта на питоне Игры, Программа, Программирование, Python, Программист, Разработка, Видео, Без звука, Вертикальное видео, Длиннопост
Показать полностью 2 1
5

Buckshot roulette на питоне

Прикольная темка, да?

Пока что это первая версия. В планах добавить интерфейс и предметы-бонусы. Ну и раунды, но это совсем легко. Раньше не делал ничего такого большого(относительно меня), поэтому я доволен, что оно работает. Без косяков не обошлось. Бот под именем "Игрок 4" как-то восстал из мертвых и захотел угробить первого. Если захотите попробовать этот код у себя, то предварительно в терминале напишите "pip install termcolor"

Python3

Код(молчите про русские названия🤫):

import random

from random import choice

from time import sleep

from termcolor import colored

# предметы=["шоколад", "адреналин", "инвертер", "лупа"]

# import flet as ft

# предметыуигроков={}

количествохп={1:3,2:3,3:3,4:3}

игроки=[1,2,3,4]

next_move=choice([1,2,3,4])

цель=0

def ход():

global next_move

next_move+=1

if next_move not in игроки:

next_move+=1

if next_move>4:

next_move=1

while next_move not in игроки:

next_move+=1

if next_move>4:

next_move=1

while next_move not in игроки:

next_move+=1

if next_move==3:

print(colored("Ходит игрок 3", 'green'))

sleep(1)

игрок()

if next_move!=3:

print(colored(f"Ходит игрок {next_move}", 'blue'))

sleep(1)

боты()

def патроны():

global next_move

if цель in игроки:

патрон=choice(['боевой','боевой','холостой'])

if next_move!=3:

print(colored(f" Игрок {next_move} выбирает игрока {цель}, патрон {патрон}", 'yellow'))

sleep(1)

if next_move==3:

print(colored(f" Игрок 3 выбирает игрока {цель}, патрон {патрон}", 'yellow'))

sleep(1)

if патрон=="боевой":

количествохп[цель]-=1

if количествохп[цель]==0:

print(colored(f"\n Игрок {цель} выбыл\n", 'grey'))

del количествохп[цель]

игроки.remove(цель)

print(f' {количествохп}\n')

sleep(1)

if патрон=='холостой':

print(f' {количествохп}\n')

if цель==next_move:

next_move-=1

def боты():

global цель

цель=choice(игроки)

патроны()

sleep(1.5)

def игрок():

global цель

цель=int(input(colored(' Кого пристрелить?\n ', 'red')))

while цель not in игроки:

цель=int(input(colored(' Введи цель ещё раз\n ', 'light_red')))

патроны()

sleep(1.5)

while True:

ход()

if len(игроки)==1:

print(colored(f'Победил игрок {игроки[0]}', 'magenta'))

exit()

Эх блин, Пикабу убрал табы. Теперь каша какая-то (

Показать полностью
Отличная работа, все прочитано!