批量修改等级

This commit is contained in:
2025-07-21 10:52:05 +08:00
parent 75ee0fe3f4
commit 9a2de2ac87
10 changed files with 350 additions and 100 deletions

View File

@@ -390,7 +390,7 @@ func _handle_visit_player_response(data):
"玩家账号": user_name, "玩家账号": user_name,
"玩家昵称": show_player_name.text.replace("玩家昵称:", ""), "玩家昵称": show_player_name.text.replace("玩家昵称:", ""),
"农场名称": show_farm_name.text.replace("农场名称:", ""), "农场名称": show_farm_name.text.replace("农场名称:", ""),
"level": level, "等级": level,
"money": money, "money": money,
"经验值": experience, "经验值": experience,
"stamina": stamina, "stamina": stamina,
@@ -405,7 +405,7 @@ func _handle_visit_player_response(data):
# 更新显示数据 # 更新显示数据
money = target_player_data.get("money", 0) money = target_player_data.get("money", 0)
experience = target_player_data.get("经验值", 0) experience = target_player_data.get("经验值", 0)
level = target_player_data.get("level", 1) level = target_player_data.get("等级", 1)
stamina = target_player_data.get("体力值", 20) stamina = target_player_data.get("体力值", 20)
farm_lots = target_player_data.get("农场土地", []) farm_lots = target_player_data.get("农场土地", [])
player_bag = target_player_data.get("种子仓库", []) player_bag = target_player_data.get("种子仓库", [])
@@ -482,7 +482,7 @@ func _handle_return_my_farm_response(data):
# 恢复玩家数据 # 恢复玩家数据
money = player_data.get("money", 500) money = player_data.get("money", 500)
experience = player_data.get("经验值", 0) experience = player_data.get("经验值", 0)
level = player_data.get("level", 1) level = player_data.get("等级", 1)
stamina = player_data.get("体力值", 20) stamina = player_data.get("体力值", 20)
farm_lots = player_data.get("农场土地", []) farm_lots = player_data.get("农场土地", [])
player_bag = player_data.get("种子仓库", []) player_bag = player_data.get("种子仓库", [])
@@ -1803,7 +1803,7 @@ func _handle_daily_check_in_response(response: Dictionary) -> void:
money = updated_data["money"] money = updated_data["money"]
experience = updated_data["经验值"] experience = updated_data["经验值"]
level = updated_data["level"] level = updated_data["等级"]
player_bag = updated_data["种子仓库"] player_bag = updated_data["种子仓库"]
# 更新UI # 更新UI
@@ -1942,7 +1942,7 @@ func _handle_lucky_draw_response(response: Dictionary) -> void:
var updated_data = response.get("updated_data", {}) var updated_data = response.get("updated_data", {})
money = updated_data["money"] money = updated_data["money"]
experience = updated_data["经验值"] experience = updated_data["经验值"]
level = updated_data["level"] level = updated_data["等级"]
player_bag = updated_data["种子仓库"] player_bag = updated_data["种子仓库"]
# 更新UI # 更新UI
@@ -2162,7 +2162,7 @@ func _handle_new_player_gift_response(data):
# 更新玩家数据 # 更新玩家数据
money = updated_data.get("money", money) money = updated_data.get("money", money)
experience = updated_data.get("经验值", experience) experience = updated_data.get("经验值", experience)
level = updated_data.get("level", level) level = updated_data.get("等级", level)
# 安全更新背包数据 # 安全更新背包数据
if updated_data.has("种子仓库"): if updated_data.has("种子仓库"):
@@ -2424,7 +2424,7 @@ func _handle_claim_online_gift_response(data: Dictionary):
# 更新玩家数据 # 更新玩家数据
money = updated_data["money"] money = updated_data["money"]
experience = updated_data["经验值"] experience = updated_data["经验值"]
level = updated_data["level"] level = updated_data["等级"]
player_bag = updated_data["种子仓库"] player_bag = updated_data["种子仓库"]
# 更新UI # 更新UI
@@ -2452,7 +2452,7 @@ func _handle_account_setting_response(data: Dictionary):
# 更新基本游戏状态显示 # 更新基本游戏状态显示
experience = account_info.get("经验值", 0) experience = account_info.get("经验值", 0)
level = account_info.get("level", 1) level = account_info.get("等级", 1)
money = account_info.get("money", 0) money = account_info.get("money", 0)
# 同步更新login_data和data中的账户信息 # 同步更新login_data和data中的账户信息
@@ -2526,8 +2526,8 @@ func _handle_use_farm_item_response(data: Dictionary):
if updated_data.has("经验值"): if updated_data.has("经验值"):
experience = updated_data["经验值"] experience = updated_data["经验值"]
# 安全更新等级 # 安全更新等级
if updated_data.has("level"): if updated_data.has("等级"):
level = updated_data["level"] level = updated_data["等级"]
# 安全更新道具背包数据 # 安全更新道具背包数据
if updated_data.has("道具背包"): if updated_data.has("道具背包"):
item_bag = updated_data["道具背包"] item_bag = updated_data["道具背包"]

View File

@@ -274,7 +274,7 @@ func _on_data_received(data):
if success: if success:
main_game.money = updated_data["money"] main_game.money = updated_data["money"]
main_game.experience = updated_data["经验值"] main_game.experience = updated_data["经验值"]
main_game.level = updated_data["level"] main_game.level = updated_data["等级"]
# 只有偷菜时才会返回体力值,正常收获不会返回 # 只有偷菜时才会返回体力值,正常收获不会返回
if updated_data.has("体力值"): if updated_data.has("体力值"):
main_game.stamina = updated_data["体力值"] main_game.stamina = updated_data["体力值"]
@@ -357,7 +357,7 @@ func _on_data_received(data):
main_game.item_bag = updated_data["道具背包"] main_game.item_bag = updated_data["道具背包"]
main_game.farm_lots = updated_data["农场土地"] main_game.farm_lots = updated_data["农场土地"]
main_game.experience = updated_data["经验值"] main_game.experience = updated_data["经验值"]
main_game.level = updated_data["level"] main_game.level = updated_data["等级"]
main_game._update_ui() main_game._update_ui()
main_game._update_farm_lots_state() main_game._update_farm_lots_state()
main_game.item_bag_panel.update_item_bag_ui() main_game.item_bag_panel.update_item_bag_ui()
@@ -370,7 +370,7 @@ func _on_data_received(data):
if success: if success:
main_game.money = updated_data["money"] main_game.money = updated_data["money"]
main_game.experience = updated_data["经验值"] main_game.experience = updated_data["经验值"]
main_game.level = updated_data["level"] main_game.level = updated_data["等级"]
main_game.farm_lots = updated_data["农场土地"] main_game.farm_lots = updated_data["农场土地"]
main_game.player_bag = updated_data["种子仓库"] main_game.player_bag = updated_data["种子仓库"]
main_game._update_ui() main_game._update_ui()
@@ -397,7 +397,7 @@ func _on_data_received(data):
main_game.money = updated_data["money"] main_game.money = updated_data["money"]
main_game.farm_lots = updated_data["农场土地"] main_game.farm_lots = updated_data["农场土地"]
main_game.experience = updated_data["经验值"] main_game.experience = updated_data["经验值"]
main_game.level = updated_data["level"] main_game.level = updated_data["等级"]
main_game._update_ui() main_game._update_ui()
main_game._update_farm_lots_state() main_game._update_farm_lots_state()
Toast.show(message, Color.CYAN) Toast.show(message, Color.CYAN)
@@ -410,7 +410,7 @@ func _on_data_received(data):
main_game.money = updated_data["money"] main_game.money = updated_data["money"]
main_game.farm_lots = updated_data["农场土地"] main_game.farm_lots = updated_data["农场土地"]
main_game.experience = updated_data["经验值"] main_game.experience = updated_data["经验值"]
main_game.level = updated_data["level"] main_game.level = updated_data["等级"]
main_game._update_ui() main_game._update_ui()
main_game._update_farm_lots_state() main_game._update_farm_lots_state()
Toast.show(message, Color.PURPLE) Toast.show(message, Color.PURPLE)
@@ -446,7 +446,7 @@ func _on_data_received(data):
main_game.money = updated_data["money"] main_game.money = updated_data["money"]
main_game.crop_warehouse = updated_data["作物仓库"] main_game.crop_warehouse = updated_data["作物仓库"]
main_game.experience = updated_data.get("经验值", main_game.experience) main_game.experience = updated_data.get("经验值", main_game.experience)
main_game.level = updated_data.get("level", main_game.level) main_game.level = updated_data.get("等级", main_game.level)
main_game._update_ui() main_game._update_ui()
main_game.crop_warehouse_panel.update_crop_warehouse_ui() main_game.crop_warehouse_panel.update_crop_warehouse_ui()
Toast.show(message, Color.GREEN) Toast.show(message, Color.GREEN)
@@ -850,7 +850,7 @@ func sendUpdatePlayTime():
return true return true
#发送获取玩家排行榜请求 #发送获取玩家排行榜请求
func sendGetPlayerRankings(sort_by = "level", sort_order = "desc", filter_online = false, search_qq = ""): func sendGetPlayerRankings(sort_by = "等级", sort_order = "desc", filter_online = false, search_qq = ""):
if not client.is_client_connected(): if not client.is_client_connected():
return false return false

View File

@@ -420,7 +420,7 @@ func _handle_login_success(user_data: Dictionary):
# 更新主游戏数据 # 更新主游戏数据
main_game.experience = user_data.get("经验值", 0) main_game.experience = user_data.get("经验值", 0)
main_game.farm_lots = user_data.get("农场土地", []) main_game.farm_lots = user_data.get("农场土地", [])
main_game.level = user_data.get("level", 1) main_game.level = user_data.get("等级", 1)
main_game.money = user_data.get("money", 0) main_game.money = user_data.get("money", 0)
main_game.stamina = user_data.get("体力值", 20) main_game.stamina = user_data.get("体力值", 20)
main_game.show_farm_name.text = "农场名称:" + user_data.get("农场名称", "") main_game.show_farm_name.text = "农场名称:" + user_data.get("农场名称", "")

View File

@@ -72,7 +72,7 @@ func _build_seed_rewards_from_crop_data(crop_data: Dictionary) -> void:
"icon": "🌱", "icon": "🌱",
"color": rarity_color, "color": rarity_color,
"rarity": quality, "rarity": quality,
"level": crop_info.get("等级", 1), "等级": crop_info.get("等级", 1),
"cost": crop_info.get("花费", 50) "cost": crop_info.get("花费", 50)
} }

View File

@@ -35,7 +35,7 @@ extends Panel
# 排序状态管理 # 排序状态管理
var current_sort_by = "level" # 当前排序字段 var current_sort_by = "等级" # 当前排序字段
var current_sort_order = "desc" # 当前排序顺序 var current_sort_order = "desc" # 当前排序顺序
var filter_online_only = false # 是否只显示在线玩家 var filter_online_only = false # 是否只显示在线玩家
var current_search_qq = "" # 当前搜索的QQ号 var current_search_qq = "" # 当前搜索的QQ号
@@ -56,7 +56,7 @@ func _ready() -> void:
# 连接排序按钮信号 # 连接排序按钮信号
seed_sort_btn.pressed.connect(func(): _on_sort_button_pressed("seed_count")) seed_sort_btn.pressed.connect(func(): _on_sort_button_pressed("seed_count"))
level_sort_btn.pressed.connect(func(): _on_sort_button_pressed("level")) level_sort_btn.pressed.connect(func(): _on_sort_button_pressed("等级"))
online_time_sort_btn.pressed.connect(func(): _on_sort_button_pressed("online_time")) online_time_sort_btn.pressed.connect(func(): _on_sort_button_pressed("online_time"))
login_time_sort_btn.pressed.connect(func(): _on_sort_button_pressed("login_time")) login_time_sort_btn.pressed.connect(func(): _on_sort_button_pressed("login_time"))
like_num_sort_btn.pressed.connect(func(): _on_sort_button_pressed("like_num")) like_num_sort_btn.pressed.connect(func(): _on_sort_button_pressed("like_num"))
@@ -92,7 +92,7 @@ func _on_online_filter_pressed():
func _update_button_states(): func _update_button_states():
# 重置所有排序按钮 # 重置所有排序按钮
var sort_buttons = [seed_sort_btn, level_sort_btn, online_time_sort_btn, login_time_sort_btn, like_num_sort_btn, money_sort_btn] var sort_buttons = [seed_sort_btn, level_sort_btn, online_time_sort_btn, login_time_sort_btn, like_num_sort_btn, money_sort_btn]
var sort_fields = ["seed_count", "level", "online_time", "login_time", "like_num", "money"] var sort_fields = ["seed_count", "等级", "online_time", "login_time", "like_num", "money"]
var sort_names = ["种子数", "等级", "游玩时间", "登录时间", "点赞数", "金币数"] var sort_names = ["种子数", "等级", "游玩时间", "登录时间", "点赞数", "金币数"]
for i in range(sort_buttons.size()): for i in range(sort_buttons.size()):
@@ -214,7 +214,7 @@ func add_player_entry(player_data):
var display_name = player_data.get("玩家昵称", username) var display_name = player_data.get("玩家昵称", username)
player_name.text = display_name player_name.text = display_name
#都是整数,不要乱用浮点数 #都是整数,不要乱用浮点数
player_level.text = "等级: " + str(int(player_data.get("level", 0))) player_level.text = "等级: " + str(int(player_data.get("等级", 0)))
player_money.text = "金币: " + str(int(player_data.get("money", 0))) player_money.text = "金币: " + str(int(player_data.get("money", 0)))
player_seed_num.text = "种子: " + str(int(player_data.get("seed_count", 0))) player_seed_num.text = "种子: " + str(int(player_data.get("seed_count", 0)))
player_online_time.text = "游玩时间: " + player_data.get("总游玩时间", "0时0分0秒") player_online_time.text = "游玩时间: " + player_data.get("总游玩时间", "0时0分0秒")

View File

@@ -1110,7 +1110,7 @@ class TCPGameServer(TCPServer):
"玩家昵称": player_name or username, "玩家昵称": player_name or username,
"个人简介": "", # 新增个人简介字段,默认为空 "个人简介": "", # 新增个人简介字段,默认为空
"经验值": player_data.get("经验值", 0), "经验值": player_data.get("经验值", 0),
"level": player_data.get("level", 1), "等级": player_data.get("等级", 1),
"money": player_data.get("money", 1000) "money": player_data.get("money", 1000)
}) })
@@ -1436,7 +1436,7 @@ class TCPGameServer(TCPServer):
"updated_data": { "updated_data": {
"money": current_player_data["money"], "money": current_player_data["money"],
"经验值": current_player_data["经验值"], "经验值": current_player_data["经验值"],
"level": current_player_data["level"] "等级": current_player_data["等级"]
} }
}) })
@@ -1474,7 +1474,7 @@ class TCPGameServer(TCPServer):
"updated_data": { "updated_data": {
"money": current_player_data["money"], "money": current_player_data["money"],
"经验值": current_player_data["经验值"], "经验值": current_player_data["经验值"],
"level": current_player_data["level"] "等级": current_player_data["等级"]
} }
}) })
@@ -1533,9 +1533,9 @@ class TCPGameServer(TCPServer):
self._add_seeds_to_bag_optimized(player_data, seed_reward, crop_info.get("品质", "普通")) self._add_seeds_to_bag_optimized(player_data, seed_reward, crop_info.get("品质", "普通"))
# 检查升级 # 检查升级
level_up_experience = 100 * player_data["level"] level_up_experience = 100 * player_data["等级"]
if player_data["经验值"] >= level_up_experience: if player_data["经验值"] >= level_up_experience:
player_data["level"] += 1 player_data["等级"] += 1
player_data["经验值"] -= level_up_experience player_data["经验值"] -= level_up_experience
self.log('INFO', f"玩家 {username} 升级到 {player_data['level']}", 'SERVER') self.log('INFO', f"玩家 {username} 升级到 {player_data['level']}", 'SERVER')
@@ -1577,7 +1577,7 @@ class TCPGameServer(TCPServer):
"updated_data": { "updated_data": {
"money": player_data["money"], "money": player_data["money"],
"经验值": player_data["经验值"], "经验值": player_data["经验值"],
"level": player_data["level"], "等级": player_data["等级"],
"种子仓库": player_data.get("种子仓库", []), "种子仓库": player_data.get("种子仓库", []),
"作物仓库": player_data.get("作物仓库", []) "作物仓库": player_data.get("作物仓库", [])
} }
@@ -1659,9 +1659,9 @@ class TCPGameServer(TCPServer):
self._add_seeds_to_bag_optimized(current_player_data, seed_reward, crop_info.get("品质", "普通")) self._add_seeds_to_bag_optimized(current_player_data, seed_reward, crop_info.get("品质", "普通"))
# 检查当前玩家升级 # 检查当前玩家升级
level_up_experience = 100 * current_player_data["level"] level_up_experience = 100 * current_player_data["等级"]
if current_player_data["经验值"] >= level_up_experience: if current_player_data["经验值"] >= level_up_experience:
current_player_data["level"] += 1 current_player_data["等级"] += 1
current_player_data["经验值"] -= level_up_experience current_player_data["经验值"] -= level_up_experience
self.log('INFO', f"玩家 {current_username} 升级到 {current_player_data['level']}", 'SERVER') self.log('INFO', f"玩家 {current_username} 升级到 {current_player_data['level']}", 'SERVER')
@@ -1704,7 +1704,7 @@ class TCPGameServer(TCPServer):
"updated_data": { "updated_data": {
"money": current_player_data["money"], "money": current_player_data["money"],
"经验值": current_player_data["经验值"], "经验值": current_player_data["经验值"],
"level": current_player_data["level"], "等级": current_player_data["等级"],
"体力值": current_player_data["体力值"], "体力值": current_player_data["体力值"],
"种子仓库": current_player_data.get("种子仓库", []), "种子仓库": current_player_data.get("种子仓库", []),
"作物仓库": current_player_data.get("作物仓库", []) "作物仓库": current_player_data.get("作物仓库", [])
@@ -2247,7 +2247,7 @@ class TCPGameServer(TCPServer):
def _process_seed_purchase(self, client_id, player_data, username, crop_name, crop, quantity=1): def _process_seed_purchase(self, client_id, player_data, username, crop_name, crop, quantity=1):
"""处理种子购买逻辑""" """处理种子购买逻辑"""
# 检查玩家等级 # 检查玩家等级
if player_data["level"] < crop.get("等级", 1): if player_data["等级"] < crop.get("等级", 1):
return self._send_action_error(client_id, "buy_seed", "等级不足,无法购买此种子") return self._send_action_error(client_id, "buy_seed", "等级不足,无法购买此种子")
# 计算总花费 # 计算总花费
@@ -3257,7 +3257,7 @@ class TCPGameServer(TCPServer):
"updated_data": { "updated_data": {
"money": player_data["money"], "money": player_data["money"],
"经验值": player_data["经验值"], "经验值": player_data["经验值"],
"level": player_data["level"], "等级": player_data["等级"],
"农场土地": player_data["农场土地"], "农场土地": player_data["农场土地"],
"种子仓库": player_data["种子仓库"] "种子仓库": player_data["种子仓库"]
} }
@@ -3508,7 +3508,7 @@ class TCPGameServer(TCPServer):
"updated_data": { "updated_data": {
"money": player_data["money"], "money": player_data["money"],
"经验值": player_data["经验值"], "经验值": player_data["经验值"],
"level": player_data["level"], "等级": player_data["等级"],
"农场土地": player_data["农场土地"] "农场土地": player_data["农场土地"]
} }
}) })
@@ -3590,7 +3590,7 @@ class TCPGameServer(TCPServer):
"updated_data": { "updated_data": {
"money": current_player_data["money"], "money": current_player_data["money"],
"经验值": current_player_data["经验值"], "经验值": current_player_data["经验值"],
"level": current_player_data["level"] "等级": current_player_data["等级"]
} }
}) })
@@ -3706,7 +3706,7 @@ class TCPGameServer(TCPServer):
"updated_data": { "updated_data": {
"money": current_player_data["money"], "money": current_player_data["money"],
"经验值": current_player_data["经验值"], "经验值": current_player_data["经验值"],
"level": current_player_data["level"] "等级": current_player_data["等级"]
} }
}) })
@@ -3766,7 +3766,7 @@ class TCPGameServer(TCPServer):
"updated_data": { "updated_data": {
"money": player_data["money"], "money": player_data["money"],
"经验值": player_data["经验值"], "经验值": player_data["经验值"],
"level": player_data["level"], "等级": player_data["等级"],
"农场土地": player_data["农场土地"] "农场土地": player_data["农场土地"]
} }
}) })
@@ -4095,7 +4095,7 @@ class TCPGameServer(TCPServer):
"message": f"{message},获得 {experience_reward} 经验", "message": f"{message},获得 {experience_reward} 经验",
"updated_data": { "updated_data": {
"经验值": player_data["经验值"], "经验值": player_data["经验值"],
"level": player_data["level"], "等级": player_data["等级"],
"农场土地": player_data["农场土地"], "农场土地": player_data["农场土地"],
"道具背包": player_data["道具背包"] "道具背包": player_data["道具背包"]
} }
@@ -4160,7 +4160,7 @@ class TCPGameServer(TCPServer):
"message": final_message, "message": final_message,
"updated_data": { "updated_data": {
"经验值": player_data["经验值"], "经验值": player_data["经验值"],
"level": player_data["level"], "等级": player_data["等级"],
"农场土地": player_data["农场土地"], "农场土地": player_data["农场土地"],
"道具背包": player_data["道具背包"] "道具背包": player_data["道具背包"]
} }
@@ -4230,7 +4230,7 @@ class TCPGameServer(TCPServer):
"message": f"{message},获得 {experience_reward} 经验", "message": f"{message},获得 {experience_reward} 经验",
"updated_data": { "updated_data": {
"经验值": current_player_data["经验值"], "经验值": current_player_data["经验值"],
"level": current_player_data["level"], "等级": current_player_data["等级"],
"道具背包": current_player_data["道具背包"] "道具背包": current_player_data["道具背包"]
} }
}) })
@@ -4295,7 +4295,7 @@ class TCPGameServer(TCPServer):
"message": final_message, "message": final_message,
"updated_data": { "updated_data": {
"经验值": current_player_data["经验值"], "经验值": current_player_data["经验值"],
"level": current_player_data["level"], "等级": current_player_data["等级"],
"道具背包": current_player_data["道具背包"] "道具背包": current_player_data["道具背包"]
} }
}) })
@@ -4343,7 +4343,7 @@ class TCPGameServer(TCPServer):
"message": f"使用 {item_name} 成功铲除作物 {crop_type},获得 {experience_reward} 经验", "message": f"使用 {item_name} 成功铲除作物 {crop_type},获得 {experience_reward} 经验",
"updated_data": { "updated_data": {
"经验值": player_data["经验值"], "经验值": player_data["经验值"],
"level": player_data["level"], "等级": player_data["等级"],
"农场土地": player_data["农场土地"], "农场土地": player_data["农场土地"],
"道具背包": player_data["道具背包"] "道具背包": player_data["道具背包"]
} }
@@ -4400,7 +4400,7 @@ class TCPGameServer(TCPServer):
"message": f"使用 {item_name} 成功清除杂草 {crop_type},获得 {experience_reward} 经验", "message": f"使用 {item_name} 成功清除杂草 {crop_type},获得 {experience_reward} 经验",
"updated_data": { "updated_data": {
"经验值": player_data["经验值"], "经验值": player_data["经验值"],
"level": player_data["level"], "等级": player_data["等级"],
"农场土地": player_data["农场土地"], "农场土地": player_data["农场土地"],
"道具背包": player_data["道具背包"] "道具背包": player_data["道具背包"]
} }
@@ -4450,7 +4450,7 @@ class TCPGameServer(TCPServer):
"message": f"帮助 {target_username} 铲除作物 {crop_type} 成功,获得 {experience_reward} 经验", "message": f"帮助 {target_username} 铲除作物 {crop_type} 成功,获得 {experience_reward} 经验",
"updated_data": { "updated_data": {
"经验值": current_player_data["经验值"], "经验值": current_player_data["经验值"],
"level": current_player_data["level"], "等级": current_player_data["等级"],
"道具背包": current_player_data["道具背包"] "道具背包": current_player_data["道具背包"]
} }
}) })
@@ -4507,7 +4507,7 @@ class TCPGameServer(TCPServer):
"message": f"帮助 {target_username} 清除杂草 {crop_type} 成功,获得 {experience_reward} 经验", "message": f"帮助 {target_username} 清除杂草 {crop_type} 成功,获得 {experience_reward} 经验",
"updated_data": { "updated_data": {
"经验值": current_player_data["经验值"], "经验值": current_player_data["经验值"],
"level": current_player_data["level"], "等级": current_player_data["等级"],
"道具背包": current_player_data["道具背包"] "道具背包": current_player_data["道具背包"]
} }
}) })
@@ -4641,7 +4641,7 @@ class TCPGameServer(TCPServer):
"message": message, "message": message,
"updated_data": { "updated_data": {
"经验值": player_data["经验值"], "经验值": player_data["经验值"],
"level": player_data["level"], "等级": player_data["等级"],
"种子仓库": player_data.get("种子仓库", []), "种子仓库": player_data.get("种子仓库", []),
"作物仓库": player_data.get("作物仓库", []), "作物仓库": player_data.get("作物仓库", []),
"道具背包": player_data.get("道具背包", []) "道具背包": player_data.get("道具背包", [])
@@ -4778,7 +4778,7 @@ class TCPGameServer(TCPServer):
"message": message, "message": message,
"updated_data": { "updated_data": {
"经验值": current_player_data["经验值"], "经验值": current_player_data["经验值"],
"level": current_player_data["level"], "等级": current_player_data["等级"],
"种子仓库": current_player_data.get("种子仓库", []), "种子仓库": current_player_data.get("种子仓库", []),
"作物仓库": current_player_data.get("作物仓库", []), "作物仓库": current_player_data.get("作物仓库", []),
"道具背包": current_player_data.get("道具背包", []) "道具背包": current_player_data.get("道具背包", [])
@@ -5032,7 +5032,7 @@ class TCPGameServer(TCPServer):
"updated_data": { "updated_data": {
"money": player_data["money"], "money": player_data["money"],
"经验值": player_data["经验值"], "经验值": player_data["经验值"],
"level": player_data["level"], "等级": player_data["等级"],
"道具背包": item_bag "道具背包": item_bag
} }
} }
@@ -5897,7 +5897,7 @@ class TCPGameServer(TCPServer):
return self.send_data(client_id, response) return self.send_data(client_id, response)
# 获取排序和筛选参数 # 获取排序和筛选参数
sort_by = message.get("sort_by", "level") # 排序字段seed_count, level, online_time, login_time, like_num, money sort_by = message.get("sort_by", "等级") # 排序字段seed_count, level, online_time, login_time, like_num, money
sort_order = message.get("sort_order", "desc") # 排序顺序asc, desc sort_order = message.get("sort_order", "desc") # 排序顺序asc, desc
filter_online = message.get("filter_online", False) # 是否只显示在线玩家 filter_online = message.get("filter_online", False) # 是否只显示在线玩家
search_qq = message.get("search_qq", "") # 搜索的QQ号 search_qq = message.get("search_qq", "") # 搜索的QQ号
@@ -5952,7 +5952,7 @@ class TCPGameServer(TCPServer):
"玩家账号": player_data.get("玩家账号", account_id), "玩家账号": player_data.get("玩家账号", account_id),
"玩家昵称": player_data.get("玩家昵称", player_data.get("玩家账号", account_id)), "玩家昵称": player_data.get("玩家昵称", player_data.get("玩家账号", account_id)),
"农场名称": player_data.get("农场名称", ""), "农场名称": player_data.get("农场名称", ""),
"level": player_data.get("level", 1), "等级": player_data.get("等级", 1),
"money": player_data.get("money", 0), "money": player_data.get("money", 0),
"经验值": player_data.get("经验值", 0), "经验值": player_data.get("经验值", 0),
"体力值": current_stamina, "体力值": current_stamina,
@@ -5974,8 +5974,8 @@ class TCPGameServer(TCPServer):
if sort_by == "seed_count": if sort_by == "seed_count":
players_data.sort(key=lambda x: x["seed_count"], reverse=reverse_order) players_data.sort(key=lambda x: x["seed_count"], reverse=reverse_order)
elif sort_by == "level": elif sort_by == "等级":
players_data.sort(key=lambda x: x["level"], reverse=reverse_order) players_data.sort(key=lambda x: x["等级"], reverse=reverse_order)
elif sort_by == "online_time": elif sort_by == "online_time":
players_data.sort(key=lambda x: x["total_time_seconds"], reverse=reverse_order) players_data.sort(key=lambda x: x["total_time_seconds"], reverse=reverse_order)
elif sort_by == "login_time": elif sort_by == "login_time":
@@ -5986,7 +5986,7 @@ class TCPGameServer(TCPServer):
players_data.sort(key=lambda x: x["money"], reverse=reverse_order) players_data.sort(key=lambda x: x["money"], reverse=reverse_order)
else: else:
# 默认按等级排序 # 默认按等级排序
players_data.sort(key=lambda x: x["level"], reverse=True) players_data.sort(key=lambda x: x["等级"], reverse=True)
# 统计在线玩家数量 # 统计在线玩家数量
online_count = sum(1 for player in players_data if player.get("is_online", False)) online_count = sum(1 for player in players_data if player.get("is_online", False))
@@ -6110,7 +6110,7 @@ class TCPGameServer(TCPServer):
"username": target_username, # 添加username字段用于购买商品时标识卖家 "username": target_username, # 添加username字段用于购买商品时标识卖家
"玩家昵称": target_player_data.get("玩家昵称", target_username), "玩家昵称": target_player_data.get("玩家昵称", target_username),
"农场名称": target_player_data.get("农场名称", ""), "农场名称": target_player_data.get("农场名称", ""),
"level": target_player_data.get("level", 1), "等级": target_player_data.get("等级", 1),
"money": target_player_data.get("money", 0), "money": target_player_data.get("money", 0),
"经验值": target_player_data.get("经验值", 0), "经验值": target_player_data.get("经验值", 0),
"体力值": target_current_stamina, "体力值": target_current_stamina,
@@ -6182,7 +6182,7 @@ class TCPGameServer(TCPServer):
"玩家账号": player_data.get("玩家账号", username), "玩家账号": player_data.get("玩家账号", username),
"玩家昵称": player_data.get("玩家昵称", username), "玩家昵称": player_data.get("玩家昵称", username),
"农场名称": player_data.get("农场名称", ""), "农场名称": player_data.get("农场名称", ""),
"level": player_data.get("level", 1), "等级": player_data.get("等级", 1),
"money": player_data.get("money", 0), "money": player_data.get("money", 0),
"经验值": player_data.get("经验值", 0), "经验值": player_data.get("经验值", 0),
"体力值": my_current_stamina, "体力值": my_current_stamina,
@@ -6326,7 +6326,7 @@ class TCPGameServer(TCPServer):
"updated_data": { "updated_data": {
"money": player_data["money"], "money": player_data["money"],
"经验值": player_data["经验值"], "经验值": player_data["经验值"],
"level": player_data["level"], "等级": player_data["等级"],
"种子仓库": player_data.get("种子仓库", []) "种子仓库": player_data.get("种子仓库", [])
} }
}) })
@@ -6429,7 +6429,7 @@ class TCPGameServer(TCPServer):
#检查玩家是否升级 #检查玩家是否升级
def _check_level_up(self, player_data): def _check_level_up(self, player_data):
"""检查玩家是否升级""" """检查玩家是否升级"""
current_level = player_data.get("level", 1) current_level = player_data.get("等级", 1)
current_experience = player_data.get("经验值", 0) current_experience = player_data.get("经验值", 0)
# 计算升级所需经验 (每级需要的经验递增) # 计算升级所需经验 (每级需要的经验递增)
@@ -6441,7 +6441,7 @@ class TCPGameServer(TCPServer):
current_experience -= experience_needed current_experience -= experience_needed
experience_needed = current_level * 100 experience_needed = current_level * 100
player_data["level"] = current_level player_data["等级"] = current_level
player_data["经验值"] = current_experience player_data["经验值"] = current_experience
#更新玩家今日在线时间 #更新玩家今日在线时间
@@ -6908,7 +6908,7 @@ class TCPGameServer(TCPServer):
"updated_data": { "updated_data": {
"money": player_data["money"], "money": player_data["money"],
"经验值": player_data["经验值"], "经验值": player_data["经验值"],
"level": player_data["level"], "等级": player_data["等级"],
"种子仓库": player_data.get("种子仓库", []) "种子仓库": player_data.get("种子仓库", [])
} }
}) })
@@ -7139,11 +7139,11 @@ class TCPGameServer(TCPServer):
player_data["经验值"] = player_data.get("经验值", 0) + rewards["bonus_exp"] player_data["经验值"] = player_data.get("经验值", 0) + rewards["bonus_exp"]
# 检查升级 # 检查升级
level_up_experience = 100 * player_data.get("level", 1) level_up_experience = 100 * player_data.get("等级", 1)
while player_data.get("经验值", 0) >= level_up_experience: while player_data.get("经验值", 0) >= level_up_experience:
player_data["level"] = player_data.get("level", 1) + 1 player_data["等级"] = player_data.get("等级", 1) + 1
player_data["经验值"] -= level_up_experience player_data["经验值"] -= level_up_experience
level_up_experience = 100 * player_data["level"] level_up_experience = 100 * player_data["等级"]
# 应用种子奖励 # 应用种子奖励
if "seeds" in rewards: if "seeds" in rewards:
@@ -7230,7 +7230,7 @@ class TCPGameServer(TCPServer):
"updated_data": { "updated_data": {
"money": player_data["money"], "money": player_data["money"],
"经验值": player_data["经验值"], "经验值": player_data["经验值"],
"level": player_data["level"], "等级": player_data["等级"],
"种子仓库": player_data.get("种子仓库", []), "种子仓库": player_data.get("种子仓库", []),
"宠物背包": player_data.get("宠物背包", []), "宠物背包": player_data.get("宠物背包", []),
"新手礼包": player_data["新手礼包"] "新手礼包": player_data["新手礼包"]
@@ -7260,11 +7260,11 @@ class TCPGameServer(TCPServer):
player_data["经验值"] = player_data.get("经验值", 0) + gift_contents["经验值"] player_data["经验值"] = player_data.get("经验值", 0) + gift_contents["经验值"]
# 检查升级 # 检查升级
level_up_experience = 100 * player_data.get("level", 1) level_up_experience = 100 * player_data.get("等级", 1)
while player_data.get("经验值", 0) >= level_up_experience: while player_data.get("经验值", 0) >= level_up_experience:
player_data["level"] = player_data.get("level", 1) + 1 player_data["等级"] = player_data.get("等级", 1) + 1
player_data["经验值"] -= level_up_experience player_data["经验值"] -= level_up_experience
level_up_experience = 100 * player_data["level"] level_up_experience = 100 * player_data["等级"]
# 应用种子奖励 # 应用种子奖励
if "seeds" in gift_contents: if "seeds" in gift_contents:
@@ -7305,9 +7305,9 @@ class TCPGameServer(TCPServer):
# 检查升级 # 检查升级
while True: while True:
level_up_experience = 100 * player_data.get("level", 1) level_up_experience = 100 * player_data.get("等级", 1)
if player_data.get("经验值", 0) >= level_up_experience: if player_data.get("经验值", 0) >= level_up_experience:
player_data["level"] = player_data.get("level", 1) + 1 player_data["等级"] = player_data.get("等级", 1) + 1
player_data["经验值"] -= level_up_experience player_data["经验值"] -= level_up_experience
else: else:
break break
@@ -7418,7 +7418,7 @@ class TCPGameServer(TCPServer):
"updated_data": { "updated_data": {
"money": player_data["money"], "money": player_data["money"],
"经验值": player_data["经验值"], "经验值": player_data["经验值"],
"level": player_data["level"], "等级": player_data["等级"],
"种子仓库": player_data.get("种子仓库", []) "种子仓库": player_data.get("种子仓库", [])
} }
}) })
@@ -7773,11 +7773,11 @@ class TCPGameServer(TCPServer):
player_data["经验值"] = player_data.get("经验值", 0) + reward.get("amount", 0) player_data["经验值"] = player_data.get("经验值", 0) + reward.get("amount", 0)
# 检查升级 # 检查升级
level_up_experience = 100 * player_data.get("level", 1) level_up_experience = 100 * player_data.get("等级", 1)
while player_data.get("经验值", 0) >= level_up_experience: while player_data.get("经验值", 0) >= level_up_experience:
player_data["level"] = player_data.get("level", 1) + 1 player_data["等级"] = player_data.get("等级", 1) + 1
player_data["经验值"] -= level_up_experience player_data["经验值"] -= level_up_experience
level_up_experience = 100 * player_data["level"] level_up_experience = 100 * player_data["等级"]
elif reward_type == "seed": elif reward_type == "seed":
if "种子仓库" not in player_data: if "种子仓库" not in player_data:
@@ -8081,7 +8081,7 @@ class TCPGameServer(TCPServer):
"玩家昵称": player_data.get("玩家昵称", ""), "玩家昵称": player_data.get("玩家昵称", ""),
"农场名称": player_data.get("农场名称", ""), "农场名称": player_data.get("农场名称", ""),
"个人简介": player_data.get("个人简介", ""), "个人简介": player_data.get("个人简介", ""),
"level": player_data.get("level", 1), "等级": player_data.get("等级", 1),
"经验值": player_data.get("经验值", 0), "经验值": player_data.get("经验值", 0),
"money": player_data.get("money", 0) "money": player_data.get("money", 0)
} }
@@ -9187,7 +9187,7 @@ class TCPGameServer(TCPServer):
"updated_data": { "updated_data": {
"money": player_data["money"], "money": player_data["money"],
"经验值": player_data["经验值"], "经验值": player_data["经验值"],
"level": player_data["level"], "等级": player_data["等级"],
"作物仓库": player_data["作物仓库"] "作物仓库": player_data["作物仓库"]
} }
}) })
@@ -9635,9 +9635,9 @@ class ConsoleCommands:
player_data["经验值"] = old_exp + amount player_data["经验值"] = old_exp + amount
# 检查是否升级 # 检查是否升级
old_level = player_data.get("level", 1) old_level = player_data.get("等级", 1)
self.server._check_level_up(player_data) self.server._check_level_up(player_data)
new_level = player_data.get("level", 1) new_level = player_data.get("等级", 1)
# 保存数据 # 保存数据
self.server.save_player_data(qq_number, player_data) self.server.save_player_data(qq_number, player_data)
@@ -9668,9 +9668,9 @@ class ConsoleCommands:
return return
# 修改等级 # 修改等级
old_level = player_data.get("level", 1) old_level = player_data.get("等级", 1)
new_level = max(1, old_level + amount) # 确保等级不小于1 new_level = max(1, old_level + amount) # 确保等级不小于1
player_data["level"] = new_level player_data["等级"] = new_level
# 保存数据 # 保存数据
self.server.save_player_data(qq_number, player_data) self.server.save_player_data(qq_number, player_data)
@@ -9742,7 +9742,7 @@ class ConsoleCommands:
player_data = self.server._load_player_data_from_file(qq_number) player_data = self.server._load_player_data_from_file(qq_number)
if player_data: if player_data:
nickname = player_data.get("玩家昵称", "未设置") nickname = player_data.get("玩家昵称", "未设置")
level = player_data.get("level", 1) level = player_data.get("等级", 1)
money = player_data.get("money", 0) money = player_data.get("money", 0)
last_login = player_data.get("最后登录时间", "从未登录") last_login = player_data.get("最后登录时间", "从未登录")

View File

@@ -1,6 +1,6 @@
{ {
"经验值": 0, "经验值": 0,
"level": 1, "等级": 1,
"money": 5000, "money": 5000,
"农场名称": "农场名称", "农场名称": "农场名称",
"玩家昵称": "玩家名称", "玩家昵称": "玩家名称",

View File

@@ -1,6 +1,6 @@
{ {
"经验值": 455, "经验值": 455,
"level": 36, "等级": 36,
"money": 200797815, "money": 200797815,
"农场名称": "柚大青の小农场", "农场名称": "柚大青の小农场",
"玩家昵称": "柚大青", "玩家昵称": "柚大青",

View File

@@ -1,6 +1,6 @@
{ {
"经验值": 869, "经验值": 869,
"level": 15, "等级": 15,
"money": 1231231120406, "money": 1231231120406,
"农场名称": "123", "农场名称": "123",
"玩家昵称": "123", "玩家昵称": "123",

View File

@@ -13,7 +13,7 @@
}, },
{ {
"crop_type": "杂交树2", "crop_type": "杂交树2",
"grow_time": 17030, "grow_time": 17700,
"is_dead": false, "is_dead": false,
"is_diged": true, "is_diged": true,
"is_planted": true, "is_planted": true,
@@ -35,7 +35,7 @@
}, },
{ {
"crop_type": "杂交树1", "crop_type": "杂交树1",
"grow_time": 17070, "grow_time": 17740,
"is_dead": false, "is_dead": false,
"is_diged": true, "is_diged": true,
"is_planted": true, "is_planted": true,
@@ -46,7 +46,7 @@
}, },
{ {
"crop_type": "杂交树2", "crop_type": "杂交树2",
"grow_time": 4040, "grow_time": 4174,
"is_dead": false, "is_dead": false,
"is_diged": true, "is_diged": true,
"is_planted": true, "is_planted": true,
@@ -68,7 +68,7 @@
}, },
{ {
"crop_type": "杂交树2", "crop_type": "杂交树2",
"grow_time": 12114, "grow_time": 12516,
"is_dead": false, "is_dead": false,
"is_diged": true, "is_diged": true,
"is_planted": true, "is_planted": true,
@@ -101,7 +101,7 @@
}, },
{ {
"crop_type": "杂交树2", "crop_type": "杂交树2",
"grow_time": 2019, "grow_time": 2086,
"is_dead": false, "is_dead": false,
"is_diged": true, "is_diged": true,
"is_planted": true, "is_planted": true,
@@ -178,7 +178,7 @@
}, },
{ {
"crop_type": "杂交树2", "crop_type": "杂交树2",
"grow_time": 2017, "grow_time": 2084,
"is_dead": false, "is_dead": false,
"is_diged": true, "is_diged": true,
"is_planted": true, "is_planted": true,
@@ -189,7 +189,7 @@
}, },
{ {
"crop_type": "杂交树2", "crop_type": "杂交树2",
"grow_time": 2017, "grow_time": 2084,
"is_dead": false, "is_dead": false,
"is_diged": true, "is_diged": true,
"is_planted": true, "is_planted": true,
@@ -200,7 +200,7 @@
}, },
{ {
"crop_type": "杂交树2", "crop_type": "杂交树2",
"grow_time": 2017, "grow_time": 2084,
"is_dead": false, "is_dead": false,
"is_diged": true, "is_diged": true,
"is_planted": true, "is_planted": true,
@@ -277,7 +277,7 @@
}, },
{ {
"crop_type": "杂交树2", "crop_type": "杂交树2",
"grow_time": 2015, "grow_time": 2082,
"is_dead": false, "is_dead": false,
"is_diged": true, "is_diged": true,
"is_planted": true, "is_planted": true,
@@ -321,7 +321,7 @@
}, },
{ {
"crop_type": "杂交树2", "crop_type": "杂交树2",
"grow_time": 2014, "grow_time": 2081,
"is_dead": false, "is_dead": false,
"is_diged": true, "is_diged": true,
"is_planted": true, "is_planted": true,
@@ -555,26 +555,276 @@
{ {
"name": "小麦", "name": "小麦",
"quality": "普通", "quality": "普通",
"count": 14 "count": 23
}, },
{ {
"name": "胡萝卜", "name": "胡萝卜",
"quality": "普通", "quality": "普通",
"count": 3 "count": 7
}, },
{ {
"name": "土豆", "name": "土豆",
"quality": "普通", "quality": "普通",
"count": 10
},
{
"name": "鱼腥草",
"quality": "优良",
"count": 5
},
{
"name": "玉米",
"quality": "优良",
"count": 1
},
{
"name": "蓝莓",
"quality": "稀有",
"count": 1
},
{
"name": "大蒜",
"quality": "普通",
"count": 8
},
{
"name": "仙人掌",
"quality": "优良",
"count": 1
},
{
"name": "稻谷",
"quality": "普通",
"count": 7 "count": 7
},
{
"name": "大豆",
"quality": "普通",
"count": 6
},
{
"name": "咖啡豆",
"quality": "稀有",
"count": 4
},
{
"name": "芒果",
"quality": "稀有",
"count": 2
},
{
"name": "荔枝",
"quality": "稀有",
"count": 9
},
{
"name": "椰子",
"quality": "优良",
"count": 8
},
{
"name": "菠萝",
"quality": "稀有",
"count": 1
},
{
"name": "苹果",
"quality": "优良",
"count": 4
},
{
"name": "藏羚羊草",
"quality": "史诗",
"count": 1
},
{
"name": "向日葵",
"quality": "稀有",
"count": 2
},
{
"name": "石榴",
"quality": "优良",
"count": 13
},
{
"name": "幸运草",
"quality": "传奇",
"count": 1
},
{
"name": "枇杷",
"quality": "优良",
"count": 1
},
{
"name": "藏红花",
"quality": "稀有",
"count": 1
},
{
"name": "橘子",
"quality": "优良",
"count": 3
},
{
"name": "百合花",
"quality": "史诗",
"count": 1
},
{
"name": "牵牛花",
"quality": "稀有",
"count": 3
},
{
"name": "茄子",
"quality": "普通",
"count": 3
},
{
"name": "草莓",
"quality": "稀有",
"count": 1
},
{
"name": "番茄",
"quality": "普通",
"count": 4
},
{
"name": "大白菜",
"quality": "普通",
"count": 3
},
{
"name": "杂草2",
"quality": "普通",
"count": 4
},
{
"name": "梨子",
"quality": "优良",
"count": 2
},
{
"name": "生菜",
"quality": "普通",
"count": 8
},
{
"name": "黄瓜",
"quality": "普通",
"count": 6
},
{
"name": "面包树",
"quality": "传奇",
"count": 1
},
{
"name": "哈密瓜",
"quality": "稀有",
"count": 3
},
{
"name": "野草1",
"quality": "普通",
"count": 6
},
{
"name": "豌豆",
"quality": "普通",
"count": 4
},
{
"name": "柿子",
"quality": "稀有",
"count": 5
},
{
"name": "葡萄",
"quality": "普通",
"count": 3
},
{
"name": "树莓",
"quality": "优良",
"count": 3
},
{
"name": "玫瑰花",
"quality": "稀有",
"count": 1
},
{
"name": "甜菜",
"quality": "稀有",
"count": 5
},
{
"name": "辣椒",
"quality": "普通",
"count": 7
},
{
"name": "山葵",
"quality": "稀有",
"count": 2
},
{
"name": "可可豆",
"quality": "稀有",
"count": 1
},
{
"name": "桃子",
"quality": "稀有",
"count": 3
},
{
"name": "甘蔗",
"quality": "稀有",
"count": 3
},
{
"name": "人参",
"quality": "史诗",
"count": 1
},
{
"name": "南瓜",
"quality": "普通",
"count": 2
},
{
"name": "葫芦",
"quality": "优良",
"count": 3
},
{
"name": "杂交树1",
"quality": "传奇",
"count": 1
},
{
"name": "杂草1",
"quality": "普通",
"count": 3
},
{
"name": "香蕉",
"quality": "优良",
"count": 3
} }
], ],
"经验值": 2384, "经验值": 3553,
"农场名称": "树萌芽の狗窝", "农场名称": "树萌芽の狗窝",
"玩家昵称": "树萌芽", "玩家昵称": "树萌芽",
"level": 64, "等级": 66,
"money": 615197025903, "money": 615196901889,
"最后登录时间": "2025年07月21日10时47分21秒", "最后登录时间": "2025年07月21日10时51分16秒",
"总游玩时间": "162时56分4秒", "总游玩时间": "162时56分42秒",
"玩家账号": "3205788256", "玩家账号": "3205788256",
"玩家密码": "123456", "玩家密码": "123456",
"个人简介": "人生啊,就这样吧", "个人简介": "人生啊,就这样吧",