Обновление до последней версии

main
none 10 months ago
parent b18496e57b
commit 3fb0ae9a7b

@ -1,641 +1,837 @@
{ {
"Аммиак": [
4,
[
"Водород",
3
],
[
"Азот",
1
]
],
"Диэтиламин": [
2,
[
"Аммиак",
1
],
[
"Этанол",
1
]
],
"Хлоральгидрат": [
1,
[
"Хлор",
3
],
[
"Этанол",
1
],
[
"Вода",
1
]
],
"Политриновая кислота": [
3,
[
"Серная кислота",
1
],
[
"Плазма",
1
],
[
"Калий",
1
]
],
"Фторсерная кислота": [
4,
[
"Фтор",
1
],
[
"Водород",
1
],
[
"Калий",
1
],
[
"Серная кислота",
1
]
],
"Серная кислота": [
3,
[
"Водород",
1
],
[
"Сера",
1
],
[
"Кислород",
2
]
],
"Нестабильный мутаген": [
3,
[
"Радий",
1
],
[
"Фосфор",
1
],
[
"Хлор",
1
]
],
"Токсин хартбрейкер": [
2,
[
"Дексалин плюс",
1
],
[
"Токсин майндбрейкер",
1
]
],
"Лексорин": [
2,
[
"Токсин хартбрейкер",
1
],
[
"Плазма",
1
],
[
"Вестин",
1
]
],
"Токсин майндбрейкер": [
3,
[
"Кремний",
1
],
[
"Водород",
1
],
[
"Диловен",
1
]
],
"Пакс": [
3,
[
"Токсин майндбрейкер",
1
],
[
"Синаптизин",
1
],
[
"Вода",
1
]
],
"Тазинид": [
1,
[
"[!] licoxide",
1
],
[
"Вестин",
1
]
],
"Криптобиолин": [ "Криптобиолин": [
3,
[ [
false,
"Калий", "Калий",
1 1
], ],
[ [
false,
"Кислород", "Кислород",
1 1
], ],
[ [
false,
"Сахар", "Сахар",
1 1
] ]
], ],
"Диловен": [ "Диловен": [
3,
[ [
false,
"Кремний", "Кремний",
1 1
], ],
[ [
false,
"Азот", "Азот",
1 1
], ],
[ [
false,
"Калий", "Калий",
1 1
] ]
], ],
"Дифенгидрамин": [ "Дифенгидрамин": [
3,
[ [
false, "Диэтиламин",
"[!] diethylamine",
1 1
], ],
[ [
false, "Масло",
"[!] oil",
1 1
], ],
[ [
false, "Столовая соль",
"[!] tablesalt",
1 1
], ],
[ [
false,
"Углерод", "Углерод",
1 1
], ],
[ [
false, "Этанол",
"[!] ethanol",
1 1
] ]
], ],
"Этилредоксразин": [ "Этилредоксразин": [
3,
[ [
false,
"Кислород", "Кислород",
1 1
], ],
[ [
true,
"Диловен", "Диловен",
1 1
], ],
[ [
false,
"Углерод", "Углерод",
1 1
] ]
], ],
"Аритразин": [ "Аритразин": [
2,
[ [
true,
"Хироналин", "Хироналин",
1 1
], ],
[ [
false,
"Водород", "Водород",
1 1
] ]
], ],
"Бикаридин": [ "Бикаридин": [
2,
[ [
true,
"Инапровалин", "Инапровалин",
1 1
], ],
[ [
false,
"Углерод", "Углерод",
1 1
] ]
], ],
"Криоксадон": [ "Криоксадон": [
3,
[ [
true,
"Дексалин", "Дексалин",
1 1
], ],
[ [
false,
"Вода", "Вода",
1 1
], ],
[ [
false,
"Кислород", "Кислород",
1 1
] ]
], ],
"Доксарубиксадон": [ "Доксарубиксадон": [
2,
[ [
true,
"Криоксадон", "Криоксадон",
1 1
], ],
[ [
true,
"Нестабильный мутаген", "Нестабильный мутаген",
1 1
] ]
], ],
"Дермалин": [ "Дермалин": [
3,
[ [
true,
"Келотан", "Келотан",
1 1
], ],
[ [
false,
"Кислород", "Кислород",
1 1
], ],
[ [
false,
"Фосфор", "Фосфор",
1 1
] ]
], ],
"Дексалин": [ "Дексалин": [
3,
[ [
false,
"Кислород", "Кислород",
2 2
], ],
[ [
false,
"Плазма", "Плазма",
1 1
] ]
], ],
"Дексалин плюс": [ "Дексалин плюс": [
3,
[ [
true,
"Дексалин", "Дексалин",
1 1
], ],
[ [
false,
"Углерод", "Углерод",
1 1
], ],
[ [
false,
"Железо", "Железо",
1 1
] ]
], ],
"Эпинефрин": [ "Эпинефрин": [
4,
[ [
false, "Фенол",
"[!] phenol",
1 1
], ],
[ [
false, "Ацетон",
"[!] acetone",
1 1
], ],
[ [
false,
"Хлор", "Хлор",
1 1
], ],
[ [
false, "Гидроксид",
"[!] hydroxide",
1 1
] ]
], ],
"Хироналин": [ "Хироналин": [
2,
[ [
false,
"Радий", "Радий",
1 1
], ],
[ [
true,
"Диловен", "Диловен",
1 1
] ]
], ],
"Ипекак": [ "Ипекак": [
2,
[ [
false,
"Калий", "Калий",
1 1
], ],
[ [
false,
"Азот", "Азот",
1 1
], ],
[ [
false, "Аммиак",
"[!] ammonia",
1 1
] ]
], ],
"Инапровалин": [ "Инапровалин": [
3,
[ [
false,
"Кислород", "Кислород",
1 1
], ],
[ [
false,
"Углерод", "Углерод",
1 1
], ],
[ [
false,
"Сахар", "Сахар",
1 1
] ]
], ],
"Келотан": [ "Келотан": [
2,
[ [
false,
"Кремний", "Кремний",
1 1
], ],
[ [
false,
"Углерод", "Углерод",
1 1
] ]
], ],
"Лепоразин": [ "Лепоразин": [
2,
[ [
false,
"Медь", "Медь",
1 1
], ],
[ [
false, "Силицид железа",
"[!] fersilicite",
1 1
], ],
[ [
false,
"Плазма", "Плазма",
1 1
] ]
], ],
"Фалангимин": [ "Фалангимин": [
3,
[ [
true,
"Хироналин", "Хироналин",
1 1
], ],
[ [
false, "Этанол",
"[!] ethanol",
1 1
], ],
[ [
true,
"Нестабильный мутаген", "Нестабильный мутаген",
1 1
] ]
], ],
"Амбузол": [ "Амбузол": [
4,
[ [
true,
"Диловен", "Диловен",
1 1
], ],
[ [
false, "Аммиак",
"[!] ammonia",
1 1
], ],
[ [
false,
"Кровь", "Кровь",
2 2
] ]
], ],
"Амбузол плюс": [ "Амбузол плюс": [
5,
[ [
true,
"Амбузол", "Амбузол",
5 5
], ],
[ [
false,
"Кровь зомби", "Кровь зомби",
15 15
] ]
], ],
"Физраствор": [ "Физраствор": [
5,
[ [
false,
"Вода", "Вода",
4 4
], ],
[ [
false, "Столовая соль",
"[!] tablesalt",
1 1
] ]
], ],
"Сидерлак": [ "Сидерлак": [
2,
[ [
false, "Алоэ",
"[!] aloe",
1 1
], ],
[ [
true,
"Стеллибинин", "Стеллибинин",
1 1
] ]
], ],
"Синаптизин": [ "Синаптизин": [
3,
[ [
false,
"Литий", "Литий",
1 1
], ],
[ [
false,
"Сахар", "Сахар",
1 1
], ],
[ [
false,
"Вода", "Вода",
1 1
] ]
], ],
"Транексамовая кислота": [ "Транексамовая кислота": [
3,
[ [
true,
"Инапровалин", "Инапровалин",
1 1
], ],
[ [
true,
"Серная кислота", "Серная кислота",
1 1
], ],
[ [
false,
"Сахар", "Сахар",
1 1
] ]
], ],
"Трикордразин": [ "Трикордразин": [
2,
[ [
true,
"Инапровалин", "Инапровалин",
1 1
], ],
[ [
true,
"Диловен", "Диловен",
1 1
] ]
], ],
"Липозин": [ "Липозин": [
3,
[ [
false, "Столовая соль",
"[!] tablesalt",
1 1
], ],
[ [
false, "Этанол",
"[!] ethanol",
1 1
], ],
[ [
false,
"Радий", "Радий",
1 1
] ]
], ],
"Ультраваскулин": [ "Ультраваскулин": [
2,
[ [
true,
"Гистамин", "Гистамин",
2 2
], ],
[ [
false,
"Плазма", "Плазма",
1 1
] ]
], ],
"Окулин": [ "Окулин": [
4,
[ [
false, "Столовая соль",
"[!] tablesalt",
1 1
], ],
[ [
false,
"Кровь", "Кровь",
1 1
], ],
[ [
false, "Гидроксид",
"[!] hydroxide",
2 2
] ]
], ],
"Когнизин": [ "Когнизин": [
1,
[ [
true,
"Карпотоксин", "Карпотоксин",
1 1
], ],
[ [
true,
"Сидерлак", "Сидерлак",
1 1
], ],
[ [
false, "Ацетон",
"[!] acetone", 1
]
],
"Этилоксиэфедрин": [
2,
[
"[!] desoxyephedrine",
1
],
[
"Стеллибинин",
1
]
],
"Дифенилметиламин": [
3,
[
"Этилоксиэфедрин",
1
],
[
"Карбонат натрия",
1
],
[
"Кофе",
1 1
] ]
], ],
"Сигинат": [ "Сигинат": [
4,
[ [
false, "Карбонат натрия",
"[!] sodiumcarbonate",
1 1
], ],
[ [
false, "Гидроксид натрия",
"[!] sodiumhydroxide",
1 1
], ],
[ [
true,
"Келотан", "Келотан",
1 1
], ],
[ [
false,
"Вода", "Вода",
1 1
], ],
[ [
false,
"Сахар", "Сахар",
1 1
] ]
], ],
"Лацеринол": [ "Лацеринол": [
2,
[ [
true,
"Бикаридин", "Бикаридин",
1 1
], ],
[ [
false, "Бензол",
"[!] benzene",
1 1
] ]
], ],
"Пунктураз": [ "Пунктураз": [
2,
[ [
true,
"Бикаридин", "Бикаридин",
1 1
], ],
[ [
false, "Гидроксид",
"[!] hydroxide",
1 1
] ]
], ],
"Бруизин": [ "Бруизин": [
2,
[ [
true,
"Бикаридин", "Бикаридин",
1 1
], ],
[ [
false,
"Литий", "Литий",
0.9 0.9
], ],
[ [
false,
"Сахар", "Сахар",
1 1
] ]
], ],
"Пиразин": [ "Пиразин": [
3,
[ [
true,
"Лепоразин", "Лепоразин",
1 1
], ],
[ [
true,
"Дермалин", "Дермалин",
1 1
], ],
[ [
false,
"Углерод", "Углерод",
1 1
] ]
], ],
"Инсузин": [ "Инсузин": [
3,
[ [
true,
"Лепоразин", "Лепоразин",
1 1
], ],
[ [
true,
"Келотан", "Келотан",
1 1
], ],
[ [
false,
"Кремний", "Кремний",
1 1
], ],
[ [
false, "Бензол",
"[!] benzene",
1 1
] ]
], ],
"Некрозол": [ "Некрозол": [
2,
[ [
false,
"Кровь", "Кровь",
3 3
], ],
[ [
true,
"Омнизин", "Омнизин",
1 1
], ],
[ [
true,
"Криоксадон", "Криоксадон",
2 2
] ]
], ],
"Алоксадон": [ "Алоксадон": [
4,
[ [
true,
"Криоксадон", "Криоксадон",
1 1
], ],
[ [
false, "Алоэ",
"[!] aloe",
2 2
], ],
[ [
true,
"Сигинат", "Сигинат",
2 2
] ]
], ],
"Токсин хартбрейкер": [ "Ацетон": [
2,
[ [
true, "Масло",
"Дексалин плюс",
1 1
], ],
[ [
true, "[!] weldingfuel",
"Токсин майндбрейкер", 1
],
[
"Кислород",
1 1
] ]
], ],
"Лексорин": [ "Фенол": [
2,
[ [
true, "Гидроксид",
"Токсин хартбрейкер",
1 1
], ],
[ [
false, "Бензол",
"Плазма",
1 1
]
], ],
"Уголь": [
1,
[ [
true, "Углерод",
"Вестин", 1
],
[
"Пепел",
1 1
] ]
], ],
"Токсин майндбрейкер": [ "Карбонат натрия": [
4,
[ [
false, "Аммиак",
"Кремний", 1
],
[
"Столовая соль",
1
],
[
"Углерод",
1
],
[
"Кислород",
1 1
]
], ],
"Бензол": [
1,
[ [
false,
"Водород", "Водород",
1 1
], ],
[ [
true, "Углерод",
"Диловен", 1
]
],
"Гидроксид": [
2,
[
"Кислород",
1
],
[
"Водород",
1
]
],
"Гидроксид натрия": [
2,
[
"Гидроксид",
1
],
[
"Натрий",
1
]
],
"Силицид железа": [
2,
[
"Железо",
1
],
[
"Кремний",
1
]
],
"Полиакрилат натрия": [
4,
[
"Кислород",
2
],
[
"Натрий",
1
],
[
"Азот",
1 1
] ]
] ]

@ -55,71 +55,81 @@ with amount:
#### CALCULATE RECIPE #### #### CALCULATE RECIPE ####
from calc import *
if option_react: if option_react:
parts = 0 comps, res = calc(option_react, option_amount, True)
part = 0
vol = option_amount
# Определяем 1 часть
for i in db[option_react]:
parts += i[2]
part = vol // parts
# Делаем около-кратным 10 и 15
# !!ЭКСПЕРЕМЕНТАЛЬНОЕ!!
part = round(part/10)*10
if part%10 != 0:
part = round(part/15)*15
# Название: количество (локальные части)
parted = {}
# Проверяем конфликты с составными частями: 48 != 50
lparts = 0 ; lpart = 0
for i in db[option_react]:
if i[0] == True:
# Перебираем составные
for el in db[i[1]]:
lparts += el[2]
# 50//3 ~ 16 16 * 3 = 48
lpart = (part//lparts) * lparts
if lpart < part:
part = lpart
parted[i[1]] = [part, lparts]
# part = 48
# parted["Инапровалин"] = [48, 3]
# 48 - 1 часть, 3 - кол. частей
# Фикс для плазмы в составных частях
# for i in db[option_react]:
# if i[0] == True:
# for el in db[i[1]]:
# if el[1] == "Плазма":
# parted[i[1]][0]
# parted[i[1]][1] -= 2
comps = {}
# Распределяем (пока не учитывает большую глубину)
for i in db[option_react]:
if i[0] == False:
if i[1] == "Плазма":
comps[i[1]] = 1
else:
comps[i[1]] = part * i[2]
elif i[0] == True:
# Перебираем составные
for el in db[i[1]]:
if el[1] == "Плазма":
comps[el[1]] = 1
else:
if el[1] not in comps:
comps[el[1]] = int( parted[i[1]][0]/parted[i[1]][1] * el[2] )
else:
comps[el[1]] += int( parted[i[1]][0]/parted[i[1]][1] * el[2] )
# Выводим результат # Выводим результат
for i in comps: for i in comps:
st.warning(f'{i}: {comps[i]}') st.warning(f'{i}: {comps[i]}')
st.success(f'{option_react}: {part*parts}') st.success(f'{option_react}: {res}')
# parts = 0
# part = 0
# vol = option_amount
# # Определяем 1 часть
# for i in db[option_react]:
# parts += i[2]
# part = vol // parts
# # Делаем около-кратным 10 и 15
# # !!ЭКСПЕРЕМЕНТАЛЬНОЕ!!
# part = round(part/10)*10
# if part%10 != 0:
# part = round(part/15)*15
# # Название: количество (локальные части)
# parted = {}
# # Проверяем конфликты с составными частями: 48 != 50
# lparts = 0 ; lpart = 0
# for i in db[option_react]:
# if i[0] == True:
# # Перебираем составные
# for el in db[i[1]]:
# lparts += el[2]
# # 50//3 ~ 16 16 * 3 = 48
# lpart = (part//lparts) * lparts
# if lpart < part:
# part = lpart
# parted[i[1]] = [part, lparts]
# # part = 48
# # parted["Инапровалин"] = [48, 3]
# # 48 - 1 часть, 3 - кол. частей
# # Фикс для плазмы в составных частях
# # for i in db[option_react]:
# # if i[0] == True:
# # for el in db[i[1]]:
# # if el[1] == "Плазма":
# # parted[i[1]][0]
# # parted[i[1]][1] -= 2
# comps = {}
# # Распределяем (пока не учитывает большую глубину)
# for i in db[option_react]:
# if i[0] == False:
# if i[1] == "Плазма":
# comps[i[1]] = 1
# else:
# comps[i[1]] = part * i[2]
# elif i[0] == True:
# # Перебираем составные
# for el in db[i[1]]:
# if el[1] == "Плазма":
# comps[el[1]] = 1
# else:
# if el[1] not in comps:
# comps[el[1]] = int( parted[i[1]][0]/parted[i[1]][1] * el[2] )
# else:
# comps[el[1]] += int( parted[i[1]][0]/parted[i[1]][1] * el[2] )
# # Выводим результат
# for i in comps:
# st.warning(f'{i}: {comps[i]}')
# st.success(f'{option_react}: {part*parts}')

Loading…
Cancel
Save