批量修改农场土地
This commit is contained in:
10
MainGame.gd
10
MainGame.gd
@@ -394,7 +394,7 @@ func _handle_visit_player_response(data):
|
||||
"money": money,
|
||||
"experience": experience,
|
||||
"stamina": stamina,
|
||||
"farm_lots": farm_lots.duplicate(true),
|
||||
"农场土地": farm_lots.duplicate(true),
|
||||
"种子仓库": player_bag.duplicate(true)
|
||||
}
|
||||
|
||||
@@ -407,7 +407,7 @@ func _handle_visit_player_response(data):
|
||||
experience = target_player_data.get("experience", 0)
|
||||
level = target_player_data.get("level", 1)
|
||||
stamina = target_player_data.get("体力值", 20)
|
||||
farm_lots = target_player_data.get("farm_lots", [])
|
||||
farm_lots = target_player_data.get("农场土地", [])
|
||||
player_bag = target_player_data.get("种子仓库", [])
|
||||
crop_warehouse = target_player_data.get("作物仓库", [])
|
||||
item_bag = target_player_data.get("道具背包", [])
|
||||
@@ -484,7 +484,7 @@ func _handle_return_my_farm_response(data):
|
||||
experience = player_data.get("experience", 0)
|
||||
level = player_data.get("level", 1)
|
||||
stamina = player_data.get("体力值", 20)
|
||||
farm_lots = player_data.get("farm_lots", [])
|
||||
farm_lots = player_data.get("农场土地", [])
|
||||
player_bag = player_data.get("种子仓库", [])
|
||||
crop_warehouse = player_data.get("作物仓库", [])
|
||||
item_bag = player_data.get("道具背包", [])
|
||||
@@ -631,10 +631,10 @@ func _handle_crop_update(update_data):
|
||||
|
||||
if is_visiting_update and is_visiting_mode:
|
||||
# 访问模式下的更新,更新被访问玩家的农场数据
|
||||
farm_lots = update_data["farm_lots"]
|
||||
farm_lots = update_data["农场土地"]
|
||||
elif not is_visiting_update and not is_visiting_mode:
|
||||
# 正常模式下的更新,更新自己的农场数据
|
||||
farm_lots = update_data["farm_lots"]
|
||||
farm_lots = update_data["农场土地"]
|
||||
else:
|
||||
# 状态不匹配,忽略更新
|
||||
print("忽略不匹配的作物更新,当前访问模式:", is_visiting_mode, ",更新类型:", is_visiting_update)
|
||||
|
||||
@@ -355,7 +355,7 @@ func _on_data_received(data):
|
||||
elif action_type == "use_item":
|
||||
if success:
|
||||
main_game.item_bag = updated_data["道具背包"]
|
||||
main_game.farm_lots = updated_data["farm_lots"]
|
||||
main_game.farm_lots = updated_data["农场土地"]
|
||||
main_game.experience = updated_data["experience"]
|
||||
main_game.level = updated_data["level"]
|
||||
main_game._update_ui()
|
||||
@@ -371,7 +371,7 @@ func _on_data_received(data):
|
||||
main_game.money = updated_data["money"]
|
||||
main_game.experience = updated_data["experience"]
|
||||
main_game.level = updated_data["level"]
|
||||
main_game.farm_lots = updated_data["farm_lots"]
|
||||
main_game.farm_lots = updated_data["农场土地"]
|
||||
main_game.player_bag = updated_data["种子仓库"]
|
||||
main_game._update_ui()
|
||||
main_game._update_farm_lots_state()
|
||||
@@ -384,7 +384,7 @@ func _on_data_received(data):
|
||||
elif action_type == "remove_crop":
|
||||
if success:
|
||||
main_game.money = updated_data["money"]
|
||||
main_game.farm_lots = updated_data["farm_lots"]
|
||||
main_game.farm_lots = updated_data["农场土地"]
|
||||
main_game._update_ui()
|
||||
main_game._update_farm_lots_state()
|
||||
Toast.show(message, Color.GREEN)
|
||||
@@ -395,7 +395,7 @@ func _on_data_received(data):
|
||||
elif action_type == "water_crop":
|
||||
if success:
|
||||
main_game.money = updated_data["money"]
|
||||
main_game.farm_lots = updated_data["farm_lots"]
|
||||
main_game.farm_lots = updated_data["农场土地"]
|
||||
main_game.experience = updated_data["experience"]
|
||||
main_game.level = updated_data["level"]
|
||||
main_game._update_ui()
|
||||
@@ -408,7 +408,7 @@ func _on_data_received(data):
|
||||
elif action_type == "fertilize_crop":
|
||||
if success:
|
||||
main_game.money = updated_data["money"]
|
||||
main_game.farm_lots = updated_data["farm_lots"]
|
||||
main_game.farm_lots = updated_data["农场土地"]
|
||||
main_game.experience = updated_data["experience"]
|
||||
main_game.level = updated_data["level"]
|
||||
main_game._update_ui()
|
||||
@@ -421,7 +421,7 @@ func _on_data_received(data):
|
||||
elif action_type == "upgrade_land":
|
||||
if success:
|
||||
main_game.money = updated_data["money"]
|
||||
main_game.farm_lots = updated_data["farm_lots"]
|
||||
main_game.farm_lots = updated_data["农场土地"]
|
||||
main_game._update_ui()
|
||||
main_game._update_farm_lots_state()
|
||||
Toast.show(message, Color.GOLD)
|
||||
@@ -432,7 +432,7 @@ func _on_data_received(data):
|
||||
elif action_type == "buy_new_ground":
|
||||
if success:
|
||||
main_game.money = updated_data["money"]
|
||||
main_game.farm_lots = updated_data["farm_lots"]
|
||||
main_game.farm_lots = updated_data["农场土地"]
|
||||
main_game._create_farm_buttons()
|
||||
main_game._update_farm_lots_state()
|
||||
main_game._update_ui()
|
||||
|
||||
@@ -419,7 +419,7 @@ func _handle_login_success(user_data: Dictionary):
|
||||
|
||||
# 更新主游戏数据
|
||||
main_game.experience = user_data.get("experience", 0)
|
||||
main_game.farm_lots = user_data.get("farm_lots", [])
|
||||
main_game.farm_lots = user_data.get("农场土地", [])
|
||||
main_game.level = user_data.get("level", 1)
|
||||
main_game.money = user_data.get("money", 0)
|
||||
main_game.stamina = user_data.get("体力值", 20)
|
||||
|
||||
@@ -613,7 +613,7 @@ class TCPGameServer(TCPServer):
|
||||
"""通用的作物更新逻辑"""
|
||||
growth_updated = False
|
||||
|
||||
for farm_lot in player_data.get("farm_lots", []):
|
||||
for farm_lot in player_data.get("农场土地", []):
|
||||
if (farm_lot.get("crop_type") and farm_lot.get("is_planted") and
|
||||
not farm_lot.get("is_dead") and farm_lot["grow_time"] < farm_lot["max_grow_time"]):
|
||||
|
||||
@@ -701,7 +701,7 @@ class TCPGameServer(TCPServer):
|
||||
|
||||
update_message = {
|
||||
"type": "crop_update",
|
||||
"farm_lots": target_player_data.get("farm_lots", []),
|
||||
"农场土地": target_player_data.get("农场土地", []),
|
||||
"timestamp": time.time(),
|
||||
"is_visiting": True,
|
||||
"visited_player": visiting_target,
|
||||
@@ -714,7 +714,7 @@ class TCPGameServer(TCPServer):
|
||||
"""发送正常模式的更新"""
|
||||
update_message = {
|
||||
"type": "crop_update",
|
||||
"farm_lots": player_data.get("farm_lots", []),
|
||||
"农场土地": player_data.get("农场土地", []),
|
||||
"timestamp": time.time(),
|
||||
"is_visiting": False
|
||||
}
|
||||
@@ -1001,10 +1001,10 @@ class TCPGameServer(TCPServer):
|
||||
def _send_initial_login_data(self, client_id, player_data):
|
||||
"""发送登录后的初始数据"""
|
||||
# 立即向客户端发送一次作物状态
|
||||
farm_lots = player_data.get("farm_lots", [])
|
||||
farm_lots = player_data.get("农场土地", [])
|
||||
initial_crop_update = {
|
||||
"type": "crop_update",
|
||||
"farm_lots": farm_lots,
|
||||
"农场土地": farm_lots,
|
||||
"timestamp": time.time()
|
||||
}
|
||||
self.send_data(client_id, initial_crop_update)
|
||||
@@ -1115,10 +1115,10 @@ class TCPGameServer(TCPServer):
|
||||
})
|
||||
|
||||
# 确保农场地块存在
|
||||
if "farm_lots" not in player_data:
|
||||
player_data["farm_lots"] = []
|
||||
if "农场土地" not in player_data:
|
||||
player_data["农场土地"] = []
|
||||
for i in range(40):
|
||||
player_data["farm_lots"].append({
|
||||
player_data["农场土地"].append({
|
||||
"crop_type": "",
|
||||
"grow_time": 0,
|
||||
"is_dead": False,
|
||||
@@ -1410,10 +1410,10 @@ class TCPGameServer(TCPServer):
|
||||
return self._send_action_error(client_id, "harvest_crop", f"无法找到玩家 {target_username} 的数据")
|
||||
|
||||
# 验证地块索引
|
||||
if lot_index < 0 or lot_index >= len(target_player_data.get("farm_lots", [])):
|
||||
if lot_index < 0 or lot_index >= len(target_player_data.get("农场土地", [])):
|
||||
return self._send_action_error(client_id, "harvest_crop", "无效的地块索引")
|
||||
|
||||
target_lot = target_player_data["farm_lots"][lot_index]
|
||||
target_lot = target_player_data["农场土地"][lot_index]
|
||||
|
||||
# 检查地块状态
|
||||
if not target_lot.get("is_planted", False) or not target_lot.get("crop_type", ""):
|
||||
@@ -1448,10 +1448,10 @@ class TCPGameServer(TCPServer):
|
||||
else:
|
||||
# 正常模式:收获自己的作物
|
||||
# 验证地块索引
|
||||
if lot_index < 0 or lot_index >= len(current_player_data.get("farm_lots", [])):
|
||||
if lot_index < 0 or lot_index >= len(current_player_data.get("农场土地", [])):
|
||||
return self._send_action_error(client_id, "harvest_crop", "无效的地块索引")
|
||||
|
||||
lot = current_player_data["farm_lots"][lot_index]
|
||||
lot = current_player_data["农场土地"][lot_index]
|
||||
|
||||
# 检查地块状态
|
||||
if not lot.get("is_planted", False) or not lot.get("crop_type", ""):
|
||||
@@ -2056,7 +2056,7 @@ class TCPGameServer(TCPServer):
|
||||
"""为指定玩家的空地生长杂草"""
|
||||
import random
|
||||
|
||||
farm_lots = player_data.get("farm_lots", [])
|
||||
farm_lots = player_data.get("农场土地", [])
|
||||
if not farm_lots:
|
||||
return 0
|
||||
|
||||
@@ -2126,10 +2126,10 @@ class TCPGameServer(TCPServer):
|
||||
crop_name = message.get("crop_name", "")
|
||||
|
||||
# 验证参数
|
||||
if lot_index < 0 or lot_index >= len(player_data.get("farm_lots", [])):
|
||||
if lot_index < 0 or lot_index >= len(player_data.get("农场土地", [])):
|
||||
return self._send_action_error(client_id, "plant_crop", "无效的地块索引")
|
||||
|
||||
lot = player_data["farm_lots"][lot_index]
|
||||
lot = player_data["农场土地"][lot_index]
|
||||
|
||||
# 检查地块状态
|
||||
if not lot.get("is_diged", False):
|
||||
@@ -3177,10 +3177,10 @@ class TCPGameServer(TCPServer):
|
||||
lot_index = message.get("lot_index", -1)
|
||||
|
||||
# 验证地块索引
|
||||
if lot_index < 0 or lot_index >= len(player_data.get("farm_lots", [])):
|
||||
if lot_index < 0 or lot_index >= len(player_data.get("农场土地", [])):
|
||||
return self._send_action_error(client_id, "dig_ground", "无效的地块索引")
|
||||
|
||||
lot = player_data["farm_lots"][lot_index]
|
||||
lot = player_data["农场土地"][lot_index]
|
||||
|
||||
# 检查地块是否已开垦
|
||||
if lot.get("is_diged", False):
|
||||
@@ -3194,7 +3194,7 @@ class TCPGameServer(TCPServer):
|
||||
"""处理土地开垦逻辑"""
|
||||
|
||||
# 计算开垦费用 - 基于已开垦地块数量
|
||||
digged_count = sum(1 for l in player_data.get("farm_lots", []) if l.get("is_diged", False))
|
||||
digged_count = sum(1 for l in player_data.get("农场土地", []) if l.get("is_diged", False))
|
||||
dig_money = digged_count * 1000
|
||||
|
||||
# 检查玩家金钱是否足够
|
||||
@@ -3258,7 +3258,7 @@ class TCPGameServer(TCPServer):
|
||||
"money": player_data["money"],
|
||||
"experience": player_data["experience"],
|
||||
"level": player_data["level"],
|
||||
"farm_lots": player_data["farm_lots"],
|
||||
"农场土地": player_data["农场土地"],
|
||||
"种子仓库": player_data["种子仓库"]
|
||||
}
|
||||
})
|
||||
@@ -3325,10 +3325,10 @@ class TCPGameServer(TCPServer):
|
||||
lot_index = message.get("lot_index", -1)
|
||||
|
||||
# 验证地块索引
|
||||
if lot_index < 0 or lot_index >= len(player_data.get("farm_lots", [])):
|
||||
if lot_index < 0 or lot_index >= len(player_data.get("农场土地", [])):
|
||||
return self._send_action_error(client_id, "remove_crop", "无效的地块索引")
|
||||
|
||||
lot = player_data["farm_lots"][lot_index]
|
||||
lot = player_data["农场土地"][lot_index]
|
||||
|
||||
# 检查地块状态
|
||||
if not lot.get("is_planted", False) or not lot.get("crop_type", ""):
|
||||
@@ -3372,7 +3372,7 @@ class TCPGameServer(TCPServer):
|
||||
"message": f"成功铲除作物 {crop_type},花费 {removal_cost} 金钱",
|
||||
"updated_data": {
|
||||
"money": player_data["money"],
|
||||
"farm_lots": player_data["farm_lots"]
|
||||
"农场土地": player_data["农场土地"]
|
||||
}
|
||||
})
|
||||
|
||||
@@ -3406,10 +3406,10 @@ class TCPGameServer(TCPServer):
|
||||
return self._send_action_error(client_id, "water_crop", f"无法找到玩家 {target_username} 的数据")
|
||||
|
||||
# 验证地块索引
|
||||
if lot_index < 0 or lot_index >= len(target_player_data.get("farm_lots", [])):
|
||||
if lot_index < 0 or lot_index >= len(target_player_data.get("农场土地", [])):
|
||||
return self._send_action_error(client_id, "water_crop", "无效的地块索引")
|
||||
|
||||
target_lot = target_player_data["farm_lots"][lot_index]
|
||||
target_lot = target_player_data["农场土地"][lot_index]
|
||||
|
||||
# 检查地块状态
|
||||
if not target_lot.get("is_planted", False) or not target_lot.get("crop_type", ""):
|
||||
@@ -3420,10 +3420,10 @@ class TCPGameServer(TCPServer):
|
||||
else:
|
||||
# 正常模式:浇水自己的作物
|
||||
# 验证地块索引
|
||||
if lot_index < 0 or lot_index >= len(current_player_data.get("farm_lots", [])):
|
||||
if lot_index < 0 or lot_index >= len(current_player_data.get("农场土地", [])):
|
||||
return self._send_action_error(client_id, "water_crop", "无效的地块索引")
|
||||
|
||||
lot = current_player_data["farm_lots"][lot_index]
|
||||
lot = current_player_data["农场土地"][lot_index]
|
||||
|
||||
# 检查地块状态
|
||||
if not lot.get("is_planted", False) or not lot.get("crop_type", ""):
|
||||
@@ -3509,7 +3509,7 @@ class TCPGameServer(TCPServer):
|
||||
"money": player_data["money"],
|
||||
"experience": player_data["experience"],
|
||||
"level": player_data["level"],
|
||||
"farm_lots": player_data["farm_lots"]
|
||||
"农场土地": player_data["农场土地"]
|
||||
}
|
||||
})
|
||||
|
||||
@@ -3623,10 +3623,10 @@ class TCPGameServer(TCPServer):
|
||||
return self._send_action_error(client_id, "fertilize_crop", f"无法找到玩家 {target_username} 的数据")
|
||||
|
||||
# 验证地块索引
|
||||
if lot_index < 0 or lot_index >= len(target_player_data.get("farm_lots", [])):
|
||||
if lot_index < 0 or lot_index >= len(target_player_data.get("农场土地", [])):
|
||||
return self._send_action_error(client_id, "fertilize_crop", "无效的地块索引")
|
||||
|
||||
target_lot = target_player_data["farm_lots"][lot_index]
|
||||
target_lot = target_player_data["农场土地"][lot_index]
|
||||
|
||||
# 检查地块状态
|
||||
if not target_lot.get("is_planted", False) or not target_lot.get("crop_type", ""):
|
||||
@@ -3637,10 +3637,10 @@ class TCPGameServer(TCPServer):
|
||||
else:
|
||||
# 正常模式:施肥自己的作物
|
||||
# 验证地块索引
|
||||
if lot_index < 0 or lot_index >= len(current_player_data.get("farm_lots", [])):
|
||||
if lot_index < 0 or lot_index >= len(current_player_data.get("农场土地", [])):
|
||||
return self._send_action_error(client_id, "fertilize_crop", "无效的地块索引")
|
||||
|
||||
lot = current_player_data["farm_lots"][lot_index]
|
||||
lot = current_player_data["农场土地"][lot_index]
|
||||
|
||||
# 检查地块状态
|
||||
if not lot.get("is_planted", False) or not lot.get("crop_type", ""):
|
||||
@@ -3767,7 +3767,7 @@ class TCPGameServer(TCPServer):
|
||||
"money": player_data["money"],
|
||||
"experience": player_data["experience"],
|
||||
"level": player_data["level"],
|
||||
"farm_lots": player_data["farm_lots"]
|
||||
"农场土地": player_data["农场土地"]
|
||||
}
|
||||
})
|
||||
|
||||
@@ -3925,10 +3925,10 @@ class TCPGameServer(TCPServer):
|
||||
|
||||
def _handle_normal_item_use(self, client_id, player_data, username, lot_index, item_name, use_type):
|
||||
"""处理正常模式下的道具使用"""
|
||||
if lot_index < 0 or lot_index >= len(player_data.get("farm_lots", [])):
|
||||
if lot_index < 0 or lot_index >= len(player_data.get("农场土地", [])):
|
||||
return self._send_action_error(client_id, "use_item", "无效的地块索引")
|
||||
|
||||
lot = player_data["farm_lots"][lot_index]
|
||||
lot = player_data["农场土地"][lot_index]
|
||||
return self._process_item_use_normal(client_id, player_data, username, lot, lot_index, item_name, use_type)
|
||||
|
||||
def _handle_visiting_item_use(self, client_id, player_data, username, target_username, lot_index, item_name, use_type):
|
||||
@@ -3937,10 +3937,10 @@ class TCPGameServer(TCPServer):
|
||||
if not target_player_data:
|
||||
return self._send_action_error(client_id, "use_item", f"无法找到玩家 {target_username} 的数据")
|
||||
|
||||
if lot_index < 0 or lot_index >= len(target_player_data.get("farm_lots", [])):
|
||||
if lot_index < 0 or lot_index >= len(target_player_data.get("农场土地", [])):
|
||||
return self._send_action_error(client_id, "use_item", "无效的地块索引")
|
||||
|
||||
target_lot = target_player_data["farm_lots"][lot_index]
|
||||
target_lot = target_player_data["农场土地"][lot_index]
|
||||
return self._process_item_use_visiting(client_id, player_data, username, target_player_data, target_username, target_lot, lot_index, item_name, use_type)
|
||||
|
||||
def _has_item_in_inventory(self, player_data, item_name):
|
||||
@@ -4096,7 +4096,7 @@ class TCPGameServer(TCPServer):
|
||||
"updated_data": {
|
||||
"experience": player_data["experience"],
|
||||
"level": player_data["level"],
|
||||
"farm_lots": player_data["farm_lots"],
|
||||
"农场土地": player_data["农场土地"],
|
||||
"道具背包": player_data["道具背包"]
|
||||
}
|
||||
})
|
||||
@@ -4161,7 +4161,7 @@ class TCPGameServer(TCPServer):
|
||||
"updated_data": {
|
||||
"experience": player_data["experience"],
|
||||
"level": player_data["level"],
|
||||
"farm_lots": player_data["farm_lots"],
|
||||
"农场土地": player_data["农场土地"],
|
||||
"道具背包": player_data["道具背包"]
|
||||
}
|
||||
})
|
||||
@@ -4344,7 +4344,7 @@ class TCPGameServer(TCPServer):
|
||||
"updated_data": {
|
||||
"experience": player_data["experience"],
|
||||
"level": player_data["level"],
|
||||
"farm_lots": player_data["farm_lots"],
|
||||
"农场土地": player_data["农场土地"],
|
||||
"道具背包": player_data["道具背包"]
|
||||
}
|
||||
})
|
||||
@@ -4401,7 +4401,7 @@ class TCPGameServer(TCPServer):
|
||||
"updated_data": {
|
||||
"experience": player_data["experience"],
|
||||
"level": player_data["level"],
|
||||
"farm_lots": player_data["farm_lots"],
|
||||
"农场土地": player_data["农场土地"],
|
||||
"道具背包": player_data["道具背包"]
|
||||
}
|
||||
})
|
||||
@@ -5123,10 +5123,10 @@ class TCPGameServer(TCPServer):
|
||||
lot_index = message.get("lot_index", -1)
|
||||
|
||||
# 验证地块索引
|
||||
if lot_index < 0 or lot_index >= len(player_data.get("farm_lots", [])):
|
||||
if lot_index < 0 or lot_index >= len(player_data.get("农场土地", [])):
|
||||
return self._send_action_error(client_id, "upgrade_land", "无效的地块索引")
|
||||
|
||||
lot = player_data["farm_lots"][lot_index]
|
||||
lot = player_data["农场土地"][lot_index]
|
||||
|
||||
# 检查地块是否已开垦
|
||||
if not lot.get("is_diged", False):
|
||||
@@ -5187,7 +5187,7 @@ class TCPGameServer(TCPServer):
|
||||
"message": f"土地升级成功!升级到{next_level}级{next_name},作物将以{speed_multiplier}倍速度生长",
|
||||
"updated_data": {
|
||||
"money": player_data["money"],
|
||||
"farm_lots": player_data["farm_lots"]
|
||||
"农场土地": player_data["农场土地"]
|
||||
}
|
||||
})
|
||||
#==========================升级土地处理==========================
|
||||
@@ -5223,7 +5223,7 @@ class TCPGameServer(TCPServer):
|
||||
|
||||
# 检查地块数量限制
|
||||
max_lots = 1000 # 最大地块数量限制
|
||||
current_lots = len(player_data.get("farm_lots", []))
|
||||
current_lots = len(player_data.get("农场土地", []))
|
||||
if current_lots >= max_lots:
|
||||
return self._send_action_error(client_id, "buy_new_ground", f"已达到最大地块数量限制({max_lots}个)")
|
||||
|
||||
@@ -5244,9 +5244,9 @@ class TCPGameServer(TCPServer):
|
||||
}
|
||||
|
||||
# 添加到农场地块数组
|
||||
if "farm_lots" not in player_data:
|
||||
player_data["farm_lots"] = []
|
||||
player_data["farm_lots"].append(new_lot)
|
||||
if "农场土地" not in player_data:
|
||||
player_data["农场土地"] = []
|
||||
player_data["农场土地"].append(new_lot)
|
||||
|
||||
# 保存玩家数据
|
||||
self.save_player_data(username, player_data)
|
||||
@@ -5254,7 +5254,7 @@ class TCPGameServer(TCPServer):
|
||||
# 发送作物更新
|
||||
self._push_crop_update_to_player(username, player_data)
|
||||
|
||||
new_lot_index = len(player_data["farm_lots"])
|
||||
new_lot_index = len(player_data["农场土地"])
|
||||
self.log('INFO', f"玩家 {username} 成功购买新地块,花费 {new_ground_cost} 金钱,新地块位置:{new_lot_index}", 'SERVER')
|
||||
|
||||
return self.send_data(client_id, {
|
||||
@@ -5264,7 +5264,7 @@ class TCPGameServer(TCPServer):
|
||||
"message": f"购买新地块成功!花费 {new_ground_cost} 元,新地块位置:{new_lot_index}",
|
||||
"updated_data": {
|
||||
"money": player_data["money"],
|
||||
"farm_lots": player_data["farm_lots"]
|
||||
"农场土地": player_data["农场土地"]
|
||||
}
|
||||
})
|
||||
|
||||
@@ -6114,7 +6114,7 @@ class TCPGameServer(TCPServer):
|
||||
"money": target_player_data.get("money", 0),
|
||||
"experience": target_player_data.get("experience", 0),
|
||||
"体力值": target_current_stamina,
|
||||
"farm_lots": target_player_data.get("farm_lots", []),
|
||||
"农场土地": target_player_data.get("农场土地", []),
|
||||
"种子仓库": target_player_data.get("种子仓库", []),
|
||||
"作物仓库": target_player_data.get("作物仓库", []),
|
||||
"道具背包": target_player_data.get("道具背包", []),
|
||||
@@ -6186,7 +6186,7 @@ class TCPGameServer(TCPServer):
|
||||
"money": player_data.get("money", 0),
|
||||
"experience": player_data.get("experience", 0),
|
||||
"体力值": my_current_stamina,
|
||||
"farm_lots": player_data.get("farm_lots", []),
|
||||
"农场土地": player_data.get("农场土地", []),
|
||||
"种子仓库": player_data.get("种子仓库", []),
|
||||
"宠物背包": player_data.get("宠物背包", []),
|
||||
"巡逻宠物": self._convert_patrol_pets_to_full_data(player_data),
|
||||
@@ -9777,7 +9777,7 @@ class ConsoleCommands:
|
||||
print(f"总在线时长: {player_data.get('总游玩时间', '0时0分0秒')}")
|
||||
|
||||
# 显示土地信息
|
||||
farm_lots = player_data.get("farm_lots", [])
|
||||
farm_lots = player_data.get("农场土地", [])
|
||||
planted_count = sum(1 for lot in farm_lots if lot.get("is_planted", False))
|
||||
digged_count = sum(1 for lot in farm_lots if lot.get("is_diged", False))
|
||||
print(f"土地状态: 总共{len(farm_lots)}块,已开垦{digged_count}块,已种植{planted_count}块")
|
||||
@@ -9812,10 +9812,10 @@ class ConsoleCommands:
|
||||
return
|
||||
|
||||
# 重置土地状态
|
||||
if "farm_lots" in template_data:
|
||||
old_lots_count = len(player_data.get("farm_lots", []))
|
||||
player_data["farm_lots"] = template_data["farm_lots"]
|
||||
new_lots_count = len(player_data["farm_lots"])
|
||||
if "农场土地" in template_data:
|
||||
old_lots_count = len(player_data.get("农场土地", []))
|
||||
player_data["农场土地"] = template_data["农场土地"]
|
||||
new_lots_count = len(player_data["农场土地"])
|
||||
|
||||
# 保存数据
|
||||
self.server.save_player_data(qq_number, player_data)
|
||||
|
||||
@@ -8,7 +8,7 @@
|
||||
"user_password": "密码",
|
||||
"最后登录时间": "2025年07月20日17时19分16秒",
|
||||
"总游玩时间": "0时0分0秒",
|
||||
"farm_lots": [],
|
||||
"农场土地": [],
|
||||
"种子仓库": [],
|
||||
"作物仓库": [],
|
||||
"宠物背包": [],
|
||||
|
||||
@@ -8,7 +8,7 @@
|
||||
"user_password": "tyh@19900420",
|
||||
"最后登录时间": "2025年07月20日22时15分13秒",
|
||||
"总游玩时间": "6时47分9秒",
|
||||
"farm_lots": [
|
||||
"农场土地": [
|
||||
{
|
||||
"crop_type": "",
|
||||
"grow_time": 0,
|
||||
|
||||
@@ -10,7 +10,7 @@
|
||||
"总游玩时间": "0时8分51秒",
|
||||
"注册时间": "2025年07月20日23时08分10秒",
|
||||
"个人简介": "啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊",
|
||||
"farm_lots": [
|
||||
"农场土地": [
|
||||
{
|
||||
"crop_type": "树莓",
|
||||
"grow_time": 2770,
|
||||
@@ -35,7 +35,7 @@
|
||||
},
|
||||
{
|
||||
"crop_type": "龙果",
|
||||
"grow_time": 4440,
|
||||
"grow_time": 5840,
|
||||
"is_dead": false,
|
||||
"is_diged": true,
|
||||
"is_planted": true,
|
||||
@@ -57,7 +57,7 @@
|
||||
},
|
||||
{
|
||||
"crop_type": "苹果",
|
||||
"grow_time": 4310,
|
||||
"grow_time": 5710,
|
||||
"is_dead": false,
|
||||
"is_diged": true,
|
||||
"is_planted": true,
|
||||
|
||||
@@ -1,44 +1,11 @@
|
||||
{
|
||||
"farm_lots": [
|
||||
"农场土地": [
|
||||
{
|
||||
"crop_type": "",
|
||||
"grow_time": 0,
|
||||
"crop_type": "小麦",
|
||||
"grow_time": 300,
|
||||
"is_dead": false,
|
||||
"is_diged": true,
|
||||
"is_planted": false,
|
||||
"max_grow_time": 300,
|
||||
"已浇水": false,
|
||||
"已施肥": false,
|
||||
"土地等级": 4
|
||||
},
|
||||
{
|
||||
"crop_type": "",
|
||||
"grow_time": 0,
|
||||
"is_dead": false,
|
||||
"is_diged": true,
|
||||
"is_planted": false,
|
||||
"max_grow_time": 300,
|
||||
"已浇水": false,
|
||||
"已施肥": false,
|
||||
"土地等级": 4
|
||||
},
|
||||
{
|
||||
"crop_type": "",
|
||||
"grow_time": 0,
|
||||
"is_dead": false,
|
||||
"is_diged": true,
|
||||
"is_planted": false,
|
||||
"max_grow_time": 300,
|
||||
"已浇水": false,
|
||||
"已施肥": false,
|
||||
"土地等级": 4
|
||||
},
|
||||
{
|
||||
"crop_type": "",
|
||||
"grow_time": 0,
|
||||
"is_dead": false,
|
||||
"is_diged": true,
|
||||
"is_planted": false,
|
||||
"is_planted": true,
|
||||
"max_grow_time": 300,
|
||||
"已浇水": false,
|
||||
"已施肥": false,
|
||||
@@ -46,7 +13,40 @@
|
||||
},
|
||||
{
|
||||
"crop_type": "杂交树2",
|
||||
"grow_time": 592,
|
||||
"grow_time": 1300,
|
||||
"is_dead": false,
|
||||
"is_diged": true,
|
||||
"is_planted": true,
|
||||
"max_grow_time": 25200,
|
||||
"已浇水": false,
|
||||
"已施肥": false,
|
||||
"土地等级": 4
|
||||
},
|
||||
{
|
||||
"crop_type": "龙果",
|
||||
"grow_time": 1320,
|
||||
"is_dead": false,
|
||||
"is_diged": true,
|
||||
"is_planted": true,
|
||||
"max_grow_time": 14400,
|
||||
"已浇水": false,
|
||||
"已施肥": false,
|
||||
"土地等级": 4
|
||||
},
|
||||
{
|
||||
"crop_type": "杂交树1",
|
||||
"grow_time": 1340,
|
||||
"is_dead": false,
|
||||
"is_diged": true,
|
||||
"is_planted": true,
|
||||
"max_grow_time": 21600,
|
||||
"已浇水": false,
|
||||
"已施肥": false,
|
||||
"土地等级": 4
|
||||
},
|
||||
{
|
||||
"crop_type": "杂交树2",
|
||||
"grow_time": 894,
|
||||
"is_dead": false,
|
||||
"is_diged": true,
|
||||
"is_planted": true,
|
||||
@@ -56,19 +56,19 @@
|
||||
"土地等级": 1
|
||||
},
|
||||
{
|
||||
"crop_type": "",
|
||||
"grow_time": 0,
|
||||
"crop_type": "小麦",
|
||||
"grow_time": 300,
|
||||
"is_dead": false,
|
||||
"is_diged": true,
|
||||
"is_planted": false,
|
||||
"max_grow_time": 240,
|
||||
"is_planted": true,
|
||||
"max_grow_time": 300,
|
||||
"已浇水": false,
|
||||
"已施肥": false,
|
||||
"土地等级": 2
|
||||
},
|
||||
{
|
||||
"crop_type": "杂交树2",
|
||||
"grow_time": 1770,
|
||||
"grow_time": 2676,
|
||||
"is_dead": false,
|
||||
"is_diged": true,
|
||||
"is_planted": true,
|
||||
@@ -78,30 +78,30 @@
|
||||
"土地等级": 3
|
||||
},
|
||||
{
|
||||
"crop_type": "",
|
||||
"grow_time": 0,
|
||||
"crop_type": "小麦",
|
||||
"grow_time": 101,
|
||||
"is_dead": false,
|
||||
"is_diged": true,
|
||||
"is_planted": false,
|
||||
"max_grow_time": 14400,
|
||||
"is_planted": true,
|
||||
"max_grow_time": 300,
|
||||
"已浇水": false,
|
||||
"已施肥": false,
|
||||
"土地等级": 0
|
||||
},
|
||||
{
|
||||
"crop_type": "胡萝卜",
|
||||
"grow_time": 240,
|
||||
"crop_type": "小麦",
|
||||
"grow_time": 101,
|
||||
"is_dead": false,
|
||||
"is_diged": true,
|
||||
"is_planted": true,
|
||||
"max_grow_time": 240,
|
||||
"max_grow_time": 300,
|
||||
"已浇水": false,
|
||||
"已施肥": false,
|
||||
"土地等级": 0
|
||||
},
|
||||
{
|
||||
"crop_type": "杂交树2",
|
||||
"grow_time": 295,
|
||||
"grow_time": 446,
|
||||
"is_dead": false,
|
||||
"is_diged": true,
|
||||
"is_planted": true,
|
||||
@@ -111,44 +111,44 @@
|
||||
"土地等级": 0
|
||||
},
|
||||
{
|
||||
"crop_type": "",
|
||||
"grow_time": 0,
|
||||
"crop_type": "土豆",
|
||||
"grow_time": 480,
|
||||
"is_dead": false,
|
||||
"is_diged": true,
|
||||
"is_planted": false,
|
||||
"is_planted": true,
|
||||
"max_grow_time": 480,
|
||||
"已浇水": false,
|
||||
"已施肥": false,
|
||||
"土地等级": 4
|
||||
},
|
||||
{
|
||||
"crop_type": "",
|
||||
"grow_time": 0,
|
||||
"crop_type": "土豆",
|
||||
"grow_time": 480,
|
||||
"is_dead": false,
|
||||
"is_diged": true,
|
||||
"is_planted": false,
|
||||
"max_grow_time": 240,
|
||||
"已浇水": false,
|
||||
"已施肥": false,
|
||||
"土地等级": 4
|
||||
},
|
||||
{
|
||||
"crop_type": "",
|
||||
"grow_time": 0,
|
||||
"is_dead": false,
|
||||
"is_diged": true,
|
||||
"is_planted": false,
|
||||
"is_planted": true,
|
||||
"max_grow_time": 480,
|
||||
"已浇水": false,
|
||||
"已施肥": false,
|
||||
"土地等级": 4
|
||||
},
|
||||
{
|
||||
"crop_type": "",
|
||||
"grow_time": 0,
|
||||
"crop_type": "小麦",
|
||||
"grow_time": 300,
|
||||
"is_dead": false,
|
||||
"is_diged": true,
|
||||
"is_planted": false,
|
||||
"is_planted": true,
|
||||
"max_grow_time": 300,
|
||||
"已浇水": false,
|
||||
"已施肥": false,
|
||||
"土地等级": 4
|
||||
},
|
||||
{
|
||||
"crop_type": "小麦",
|
||||
"grow_time": 300,
|
||||
"is_dead": false,
|
||||
"is_diged": true,
|
||||
"is_planted": true,
|
||||
"max_grow_time": 300,
|
||||
"已浇水": false,
|
||||
"已施肥": false,
|
||||
@@ -156,73 +156,7 @@
|
||||
},
|
||||
{
|
||||
"crop_type": "土豆",
|
||||
"grow_time": 294,
|
||||
"is_dead": false,
|
||||
"is_diged": true,
|
||||
"is_planted": true,
|
||||
"max_grow_time": 480,
|
||||
"已浇水": false,
|
||||
"已施肥": false,
|
||||
"土地等级": 0
|
||||
},
|
||||
{
|
||||
"crop_type": "胡萝卜",
|
||||
"grow_time": 240,
|
||||
"is_dead": false,
|
||||
"is_diged": true,
|
||||
"is_planted": true,
|
||||
"max_grow_time": 240,
|
||||
"已浇水": false,
|
||||
"已施肥": false,
|
||||
"土地等级": 0
|
||||
},
|
||||
{
|
||||
"crop_type": "杂交树2",
|
||||
"grow_time": 293,
|
||||
"is_dead": false,
|
||||
"is_diged": true,
|
||||
"is_planted": true,
|
||||
"max_grow_time": 25200,
|
||||
"已浇水": false,
|
||||
"已施肥": false,
|
||||
"土地等级": 0
|
||||
},
|
||||
{
|
||||
"crop_type": "杂交树2",
|
||||
"grow_time": 293,
|
||||
"is_dead": false,
|
||||
"is_diged": true,
|
||||
"is_planted": true,
|
||||
"max_grow_time": 25200,
|
||||
"已浇水": false,
|
||||
"已施肥": false,
|
||||
"土地等级": 0
|
||||
},
|
||||
{
|
||||
"crop_type": "杂交树2",
|
||||
"grow_time": 293,
|
||||
"is_dead": false,
|
||||
"is_diged": true,
|
||||
"is_planted": true,
|
||||
"max_grow_time": 25200,
|
||||
"已浇水": false,
|
||||
"已施肥": false,
|
||||
"土地等级": 0
|
||||
},
|
||||
{
|
||||
"crop_type": "土豆",
|
||||
"grow_time": 292,
|
||||
"is_dead": false,
|
||||
"is_diged": true,
|
||||
"is_planted": true,
|
||||
"max_grow_time": 480,
|
||||
"已浇水": false,
|
||||
"已施肥": false,
|
||||
"土地等级": 0
|
||||
},
|
||||
{
|
||||
"crop_type": "土豆",
|
||||
"grow_time": 292,
|
||||
"grow_time": 445,
|
||||
"is_dead": false,
|
||||
"is_diged": true,
|
||||
"is_planted": true,
|
||||
@@ -233,7 +167,7 @@
|
||||
},
|
||||
{
|
||||
"crop_type": "小麦",
|
||||
"grow_time": 292,
|
||||
"grow_time": 100,
|
||||
"is_dead": false,
|
||||
"is_diged": true,
|
||||
"is_planted": true,
|
||||
@@ -243,19 +177,85 @@
|
||||
"土地等级": 0
|
||||
},
|
||||
{
|
||||
"crop_type": "",
|
||||
"grow_time": 0,
|
||||
"crop_type": "杂交树2",
|
||||
"grow_time": 444,
|
||||
"is_dead": false,
|
||||
"is_diged": true,
|
||||
"is_planted": false,
|
||||
"max_grow_time": 240,
|
||||
"is_planted": true,
|
||||
"max_grow_time": 25200,
|
||||
"已浇水": false,
|
||||
"已施肥": false,
|
||||
"土地等级": 0
|
||||
},
|
||||
{
|
||||
"crop_type": "杂交树2",
|
||||
"grow_time": 444,
|
||||
"is_dead": false,
|
||||
"is_diged": true,
|
||||
"is_planted": true,
|
||||
"max_grow_time": 25200,
|
||||
"已浇水": false,
|
||||
"已施肥": false,
|
||||
"土地等级": 0
|
||||
},
|
||||
{
|
||||
"crop_type": "杂交树2",
|
||||
"grow_time": 444,
|
||||
"is_dead": false,
|
||||
"is_diged": true,
|
||||
"is_planted": true,
|
||||
"max_grow_time": 25200,
|
||||
"已浇水": false,
|
||||
"已施肥": false,
|
||||
"土地等级": 0
|
||||
},
|
||||
{
|
||||
"crop_type": "土豆",
|
||||
"grow_time": 443,
|
||||
"is_dead": false,
|
||||
"is_diged": true,
|
||||
"is_planted": true,
|
||||
"max_grow_time": 480,
|
||||
"已浇水": false,
|
||||
"已施肥": false,
|
||||
"土地等级": 0
|
||||
},
|
||||
{
|
||||
"crop_type": "土豆",
|
||||
"grow_time": 443,
|
||||
"is_dead": false,
|
||||
"is_diged": true,
|
||||
"is_planted": true,
|
||||
"max_grow_time": 480,
|
||||
"已浇水": false,
|
||||
"已施肥": false,
|
||||
"土地等级": 0
|
||||
},
|
||||
{
|
||||
"crop_type": "小麦",
|
||||
"grow_time": 291,
|
||||
"grow_time": 100,
|
||||
"is_dead": false,
|
||||
"is_diged": true,
|
||||
"is_planted": true,
|
||||
"max_grow_time": 300,
|
||||
"已浇水": false,
|
||||
"已施肥": false,
|
||||
"土地等级": 0
|
||||
},
|
||||
{
|
||||
"crop_type": "小麦",
|
||||
"grow_time": 100,
|
||||
"is_dead": false,
|
||||
"is_diged": true,
|
||||
"is_planted": true,
|
||||
"max_grow_time": 300,
|
||||
"已浇水": false,
|
||||
"已施肥": false,
|
||||
"土地等级": 0
|
||||
},
|
||||
{
|
||||
"crop_type": "小麦",
|
||||
"grow_time": 100,
|
||||
"is_dead": false,
|
||||
"is_diged": true,
|
||||
"is_planted": true,
|
||||
@@ -266,7 +266,7 @@
|
||||
},
|
||||
{
|
||||
"crop_type": "土豆",
|
||||
"grow_time": 291,
|
||||
"grow_time": 442,
|
||||
"is_dead": false,
|
||||
"is_diged": true,
|
||||
"is_planted": true,
|
||||
@@ -277,7 +277,7 @@
|
||||
},
|
||||
{
|
||||
"crop_type": "杂交树2",
|
||||
"grow_time": 291,
|
||||
"grow_time": 442,
|
||||
"is_dead": false,
|
||||
"is_diged": true,
|
||||
"is_planted": true,
|
||||
@@ -288,7 +288,7 @@
|
||||
},
|
||||
{
|
||||
"crop_type": "小麦",
|
||||
"grow_time": 291,
|
||||
"grow_time": 99,
|
||||
"is_dead": false,
|
||||
"is_diged": true,
|
||||
"is_planted": true,
|
||||
@@ -298,30 +298,30 @@
|
||||
"土地等级": 0
|
||||
},
|
||||
{
|
||||
"crop_type": "胡萝卜",
|
||||
"grow_time": 240,
|
||||
"crop_type": "小麦",
|
||||
"grow_time": 99,
|
||||
"is_dead": false,
|
||||
"is_diged": true,
|
||||
"is_planted": true,
|
||||
"max_grow_time": 240,
|
||||
"max_grow_time": 300,
|
||||
"已浇水": false,
|
||||
"已施肥": false,
|
||||
"土地等级": 0
|
||||
},
|
||||
{
|
||||
"crop_type": "胡萝卜",
|
||||
"grow_time": 240,
|
||||
"crop_type": "小麦",
|
||||
"grow_time": 99,
|
||||
"is_dead": false,
|
||||
"is_diged": true,
|
||||
"is_planted": true,
|
||||
"max_grow_time": 240,
|
||||
"max_grow_time": 300,
|
||||
"已浇水": false,
|
||||
"已施肥": false,
|
||||
"土地等级": 0
|
||||
},
|
||||
{
|
||||
"crop_type": "杂交树2",
|
||||
"grow_time": 290,
|
||||
"grow_time": 441,
|
||||
"is_dead": false,
|
||||
"is_diged": true,
|
||||
"is_planted": true,
|
||||
@@ -331,11 +331,11 @@
|
||||
"土地等级": 0
|
||||
},
|
||||
{
|
||||
"crop_type": "胡萝卜",
|
||||
"grow_time": 240,
|
||||
"crop_type": "",
|
||||
"grow_time": 0,
|
||||
"is_dead": false,
|
||||
"is_diged": true,
|
||||
"is_planted": true,
|
||||
"is_planted": false,
|
||||
"max_grow_time": 240,
|
||||
"已浇水": false,
|
||||
"已施肥": false,
|
||||
@@ -552,39 +552,24 @@
|
||||
}
|
||||
],
|
||||
"种子仓库": [
|
||||
{
|
||||
"name": "龙果",
|
||||
"quality": "传奇",
|
||||
"count": 1
|
||||
},
|
||||
{
|
||||
"name": "杂交树1",
|
||||
"quality": "传奇",
|
||||
"count": 1
|
||||
},
|
||||
{
|
||||
"name": "杂交树2",
|
||||
"quality": "传奇",
|
||||
"count": 1
|
||||
},
|
||||
{
|
||||
"name": "小麦",
|
||||
"quality": "普通",
|
||||
"count": 1
|
||||
"count": 5
|
||||
},
|
||||
{
|
||||
"name": "土豆",
|
||||
"name": "胡萝卜",
|
||||
"quality": "普通",
|
||||
"count": 2
|
||||
"count": 3
|
||||
}
|
||||
],
|
||||
"experience": 1854,
|
||||
"experience": 1963,
|
||||
"farm_name": "树萌芽の狗窝",
|
||||
"player_name": "树萌芽",
|
||||
"level": 64,
|
||||
"money": 615197025864,
|
||||
"最后登录时间": "2025年07月21日09时30分33秒",
|
||||
"总游玩时间": "162时52分25秒",
|
||||
"money": 615197025464,
|
||||
"最后登录时间": "2025年07月21日09时48分48秒",
|
||||
"总游玩时间": "162时53分53秒",
|
||||
"user_name": "3205788256",
|
||||
"user_password": "tyh@19900420",
|
||||
"个人简介": "人生啊,就这样吧",
|
||||
@@ -638,7 +623,7 @@
|
||||
{
|
||||
"name": "小麦",
|
||||
"quality": "普通",
|
||||
"count": 27
|
||||
"count": 37
|
||||
},
|
||||
{
|
||||
"name": "山葵",
|
||||
@@ -688,7 +673,7 @@
|
||||
{
|
||||
"name": "胡萝卜",
|
||||
"quality": "普通",
|
||||
"count": 14
|
||||
"count": 25
|
||||
},
|
||||
{
|
||||
"name": "土豆",
|
||||
@@ -1115,8 +1100,10 @@
|
||||
},
|
||||
"在线礼包": {
|
||||
"当前日期": "2025-07-21",
|
||||
"今日在线时长": 17.757988214492798,
|
||||
"已领取礼包": [],
|
||||
"今日在线时长": 71.67846703529358,
|
||||
"已领取礼包": [
|
||||
"1分钟"
|
||||
],
|
||||
"登录时间": 1753061433.2417476
|
||||
},
|
||||
"玩家小卖部": [
|
||||
|
||||
Reference in New Issue
Block a user