You've already forked KemoFureApi
							
							KF3: Api additions and improvements.
This commit is contained in:
		| @@ -87,6 +87,31 @@ def calculate_stats(friend, awaken : int, level : int, trust_percent = 0, trustA | ||||
|  | ||||
|     return stats | ||||
|  | ||||
| def get_stat_growth(friend, awaken : int): | ||||
|     stats_array = friend["attrScriptParam"] | ||||
|     max_awaken = friend["maxAwaken"]  | ||||
|  | ||||
|     awaken_step = max_awaken + 2   | ||||
|  | ||||
|     atk_ptr = 1 * awaken_step | ||||
|     satk_ptr = 2 * awaken_step | ||||
|     pdef_ptr = 3 * awaken_step | ||||
|     sdef_ptr = 4 * awaken_step | ||||
|     hp_ptr = 5 * awaken_step | ||||
|     speed_ptr = 6 * awaken_step | ||||
|  | ||||
|     stats = {} | ||||
|     i = awaken | ||||
|     stats["patk"] += stats_array[atk_ptr + 1 + i] | ||||
|     stats["satk"] += stats_array[satk_ptr + 1 + i] | ||||
|     stats["pdef"] += stats_array[pdef_ptr + 1 + i] | ||||
|     stats["sdef"] += stats_array[sdef_ptr + 1 + i] | ||||
|     stats["hp"] += stats_array[hp_ptr + 1 + i] | ||||
|     stats["speed"] += stats_array[speed_ptr + 1 + i] | ||||
|  | ||||
|     return stats | ||||
|  | ||||
|  | ||||
| def clean_skill_string(input_string): | ||||
|     if input_string is None: | ||||
|         return None | ||||
|   | ||||
| @@ -3,6 +3,11 @@ import platform | ||||
| from loaders.Kingdom.numeric import numeric | ||||
| from loaders.Kingdom.kemono import clean_skill_string, calculate_stats, fill_miracle, get_awaken_materials, get_skill_materials | ||||
|  | ||||
| from endpoints.Kingdom.friend import Kingdom_Friend | ||||
| from endpoints.Kingdom.friends import Kingdom_Friends | ||||
| from endpoints.Kingdom.item import Kingdom_Item | ||||
| from endpoints.Kingdom.items import Kingdom_Items | ||||
|  | ||||
| #element        1-orange 2-blue 3-green | ||||
| #showSkillType  1-control 2-guard 3-heal 4-support 5-assault 6-aoe | ||||
|  | ||||
| @@ -10,7 +15,8 @@ class KingdomDB: | ||||
|     processed_friends = {} | ||||
|     item_stages = {} | ||||
|  | ||||
|     def __init__(self, app) -> None: | ||||
|     def __init__(self, api) -> None: | ||||
|         app = api.app | ||||
|         if "Kingdom" in app.databases: | ||||
|             del app.databases["Kingdom"] | ||||
|  | ||||
| @@ -45,6 +51,10 @@ class KingdomDB: | ||||
|         self.process_stages() | ||||
|  | ||||
|         app.databases["Kingdom"] = self | ||||
|         api.add_resource(Kingdom_Friend, "/Kingdom/Friend/<int:id>") | ||||
|         api.add_resource(Kingdom_Friends, "/Kingdom/Friends") | ||||
|         api.add_resource(Kingdom_Item, "/Kingdom/Item/<int:id>") | ||||
|         api.add_resource(Kingdom_Items, "/Kingdom/Items") | ||||
|  | ||||
|     def process_friends(self): | ||||
|         self.processed_friends = {} | ||||
| @@ -87,11 +97,15 @@ class KingdomDB: | ||||
|                         raise Exception() | ||||
|                     if bk_value["effectType1"] == 4: | ||||
|                         lb = self.kfk_en_kemono_WkPaDc.get(bk_value['effectParam1'][0] * 100) | ||||
|                         if lb is None: | ||||
|                             lb = {"name": None, "describe": None}  | ||||
|                         limit_breaks.append({"name": lb["name"], "desc": clean_skill_string(lb["describe"])}) | ||||
|  | ||||
|             habits = [] | ||||
|             for habit in friend["habitSn"]: | ||||
|                 hbt = self.kfk_en_kemono_WkPaDc.get(habit*100) | ||||
|                 if hbt is None: | ||||
|                     hbt = {"name": None, "describe": None}  | ||||
|                 habits.append({"name":hbt["name"], "desc":hbt["describe"]}) | ||||
|             for i in range (3): | ||||
|                 if len(habits) < i+1: | ||||
| @@ -103,6 +117,8 @@ class KingdomDB: | ||||
|                 awaken_id = friend_id * 100 + i | ||||
|                 awaken = self.kfk_kemono_waken.get(awaken_id) | ||||
|                 awaken1 = self.kfk_en_kemono_waken.get(awaken_id) | ||||
|                 if awaken1 == None: | ||||
|                     awaken1 = {"describe":"missing", "brilliance":"missing"} | ||||
|                 if awaken != None and awaken1 != None: | ||||
|                     awaken["en"] = awaken1 | ||||
|                     awakens.append(awaken) | ||||
|   | ||||
		Reference in New Issue
	
	Block a user