добавил debug_functions.py, пока только добавление ивентов и то не полностью

This commit is contained in:
2022-12-26 17:12:08 +07:00
parent 654d5300df
commit 6437995082
2 changed files with 48 additions and 9 deletions
+39
View File
@@ -0,0 +1,39 @@
def add_new_event():
name = input("Введите название ивента\n")
description = input("Введите описание ивента\n")
try:
well = bool(input("Этот ивент хороший?\n"))
except Exception as e:
return e
variants = input("Введите варианты развития ивентов, разделённые */!/*\n").split("*/!/*")
consequence = input("Введите функции которые выполнятся при варианте ивента, "
"разделённые */!/*\n").split("*/!/*")
probability_consequence = [int(i) for i in input("Введите вероятности вариантов ивентов,"
" разделённые */!/*\n").split("*/!/*")]
if len(variants) == len(consequence) == len(probability_consequence):
response = {
"name": name,
"description": description,
"variants": variants,
"consequence": consequence,
"probability_consequence": probability_consequence,
"probability": 0,
"well": well
}
return response
else:
return "Длины variants, consequence и probability_consequence не равны"
def main():
while True:
answer = input("Что сегодня сделаем?\n")
if answer == "добавить эвент":
print(add_new_event())
else:
print("Ничего не понятно")
quit(0)
if __name__ == '__main__':
main()
+8 -8
View File
@@ -7,7 +7,8 @@ import configparser
def get_random_event():
db = UseDB("events")
response = db.find_document({})
random_event = random.choices([i["_id"] for i in response], weights=[i["probability"] for i in response])
random_event = random.choices([i["_id"] for i in response],
weights=[i["probability"] for i in response])
return db.find_document({"_id": random_event[0]})[0]
@@ -21,21 +22,20 @@ def recalculation_events(well):
config = configparser.ConfigParser()
config.read("conf/config.ini")
difficulty = config['Settings']['difficulty']
if well:
db = UseDB("events")
not_well_events = db.find_document({"well": False})
for i in not_well_events:
db.update_document({"_id": i["_id"]}, {"probability": i["probability"] + difficulties[difficulty][0]})
well_events = db.find_document({"well": True})
if well:
for i in not_well_events:
db.update_document({"_id": i["_id"]},
{"probability": i["probability"] + difficulties[difficulty][0]})
ratio = len(not_well_events) * difficulties[difficulty][0] / len(well_events)
for i in well_events:
db.update_document({"_id": i["_id"]}, {"probability": i["probability"] - ratio})
else:
db = UseDB("events")
well_events = db.find_document({"well": True})
for i in well_events:
db.update_document({"_id": i["_id"]}, {"probability": i["probability"] + difficulties[difficulty][1]})
not_well_events = db.find_document({"well": False})
db.update_document({"_id": i["_id"]},
{"probability": i["probability"] + difficulties[difficulty][1]})
ratio = len(well_events) * difficulties[difficulty][1] / len(not_well_events)
for i in not_well_events:
db.update_document({"_id": i["_id"]}, {"probability": i["probability"] - ratio})