|
@@ -53,7 +53,7 @@ namespace ET.Server
|
|
|
/** 单位死亡事件 **/
|
|
|
public static void OnUnitDead(this MapEventComponent self, Map map, JObject msg)
|
|
|
{
|
|
|
- Log.Debug($"怪物死亡处理...");
|
|
|
+ Log.Debug($"单位死亡...");
|
|
|
int unitType = Convert.ToInt32(msg.SelectToken("unitType"));
|
|
|
// 攻击者
|
|
|
long hitFinalPlayerId = msg.SelectToken("hitFinal").ToString() == "" ? 0 : Convert.ToInt64(msg.SelectToken("hitFinal"));
|
|
@@ -83,8 +83,8 @@ namespace ET.Server
|
|
|
Log.Error($"unitDead not fount montster : {unitTemplateId}, {map.MapId}, {msg}");
|
|
|
return;
|
|
|
}
|
|
|
- // todo 怪物死亡处理逻辑,先暂时加入死亡列表
|
|
|
- self.MonsterDeadList.Add(unitTemplateId);
|
|
|
+ // todo 怪物死亡处理逻辑
|
|
|
+ Log.Debug($"怪物死亡处理...");
|
|
|
break;
|
|
|
case 1:
|
|
|
// 玩家死亡
|
|
@@ -101,6 +101,17 @@ namespace ET.Server
|
|
|
// 被玩家杀死
|
|
|
Log.Debug($"玩家死亡...被玩家杀死...playerId={unitPlayerId}, 攻击者={hitFinalPlayerId}");
|
|
|
}
|
|
|
+
|
|
|
+ // 复活
|
|
|
+ WNPlayer unitPlayer = map.GetPlayer(unitPlayerId);
|
|
|
+ if (unitPlayer == null)
|
|
|
+ {
|
|
|
+ return;
|
|
|
+ }
|
|
|
+
|
|
|
+ unitPlayer.AddComponent<PlayerReliveTimeComponent, WNPlayer>(unitPlayer);
|
|
|
+ unitPlayer.GetComponent<PlayerReliveTimeComponent>().ReliveTime = TimeHelper.ClientNowSeconds() + 5;
|
|
|
+
|
|
|
break;
|
|
|
case 2:
|
|
|
// 宠物死亡
|