From 6be0b78b1068a200c6b8bcf2e1db327b463af1bc Mon Sep 17 00:00:00 2001
From: Marko Lindqvist <cazfi74@gmail.com>
Date: Sat, 24 Oct 2026 03:45:43 +0300
Subject: [PATCH 85/85] Move ai_level_convert() to savegame2.c

...and make it static.

See RM #2357

Signed-off-by: Marko Lindqvist <cazfi74@gmail.com>
---
 server/savegame/savecompat.c | 29 -----------------------------
 server/savegame/savecompat.h |  1 -
 server/savegame/savegame2.c  | 29 +++++++++++++++++++++++++++++
 3 files changed, 29 insertions(+), 30 deletions(-)

diff --git a/server/savegame/savecompat.c b/server/savegame/savecompat.c
index 209ba37cb5..b5cb80cefa 100644
--- a/server/savegame/savecompat.c
+++ b/server/savegame/savecompat.c
@@ -2728,35 +2728,6 @@ static void compat_post_load_dev(struct loaddata *loading)
 }
 #endif /* FREECIV_DEV_SAVE_COMPAT */
 
-/************************************************************************//**
-  Convert old ai level value to ai_level
-****************************************************************************/
-enum ai_level ai_level_convert(int old_level)
-{
-  switch (old_level) {
-  case 1:
-    return AI_LEVEL_AWAY;
-  case 2:
-    return AI_LEVEL_NOVICE;
-  case 3:
-    return AI_LEVEL_EASY;
-  case 5:
-    return AI_LEVEL_NORMAL;
-  case 7:
-    return AI_LEVEL_HARD;
-  case 8:
-    return AI_LEVEL_CHEATING;
-  case 10:
-#ifdef FREECIV_DEBUG
-    return AI_LEVEL_EXPERIMENTAL;
-#else  /* FREECIV_DEBUG */
-    return AI_LEVEL_HARD;
-#endif /* FREECIV_DEBUG */
-  }
-
-  return ai_level_invalid();
-}
-
 /************************************************************************//**
   Convert old barbarian type value to barbarian_type
 ****************************************************************************/
diff --git a/server/savegame/savecompat.h b/server/savegame/savecompat.h
index f7b4acd682..5f45ac004f 100644
--- a/server/savegame/savecompat.h
+++ b/server/savegame/savecompat.h
@@ -207,7 +207,6 @@ int ascii_hex2bin(char ch, int halfbyte);
 
 int char2num(char ch);
 
-enum ai_level ai_level_convert(int old_level);
 enum barbarian_type barb_type_convert(int old_type);
 
 /* Old savegames might have padding up to this amount of trade routes */
diff --git a/server/savegame/savegame2.c b/server/savegame/savegame2.c
index 62212e5537..a8a240a722 100644
--- a/server/savegame/savegame2.c
+++ b/server/savegame/savegame2.c
@@ -1428,6 +1428,35 @@ static struct terrain *char2terrain(char ch)
   RETURN_VALUE_AFTER_EXIT(nullptr);
 }
 
+/************************************************************************//**
+  Convert old ai level value to ai_level
+****************************************************************************/
+static enum ai_level ai_level_convert(int old_level)
+{
+  switch (old_level) {
+  case 1:
+    return AI_LEVEL_AWAY;
+  case 2:
+    return AI_LEVEL_NOVICE;
+  case 3:
+    return AI_LEVEL_EASY;
+  case 5:
+    return AI_LEVEL_NORMAL;
+  case 7:
+    return AI_LEVEL_HARD;
+  case 8:
+    return AI_LEVEL_CHEATING;
+  case 10:
+#ifdef FREECIV_DEBUG
+    return AI_LEVEL_EXPERIMENTAL;
+#else  /* FREECIV_DEBUG */
+    return AI_LEVEL_HARD;
+#endif /* FREECIV_DEBUG */
+  }
+
+  return ai_level_invalid();
+}
+
 /************************************************************************//**
   Load technology from path + "_name".
 ****************************************************************************/
-- 
2.53.0

