protected override void OnDieUnit(Unit deadUnit) { int dropGold = 0, dropPoint = 0; //if (deadUnit.UnitType != UnitType.Prop && deadUnit.UnitType != UnitType.Boss) //{ if (deadUnit is Npc || deadUnit is Prop) { for (int i = 0; i < SpawnUnitList.Count; i++) { if (SpawnUnitList[i] != deadUnit) { continue; } uint lowDataId = SpawnUnitList[i] is Npc ? (SpawnUnitList[i] as Npc).NpcLowID : (SpawnUnitList[i] as Prop).PropLowID; for (int j = 0; j < MonDataList.Count; j++) //리젠 카운트 { if (MonDataList[j].IsDieMob || !MonDataList[j].MonsterId.Equals(lowDataId)) { continue; } MonDataList[j].IsDieMob = true; MonDataList[j].RunTime = 0; dropGold = MonDataList[j].DropGold; dropPoint = MonDataList[j].DropPoint; break; } SpawnUnitList.RemoveAt(i); break; } } else if (deadUnit is Pc) { base.OnDieUnit(deadUnit); return; } // return; //} AddGold(deadUnit, dropGold);//일단 골드만 //AddGold(deadUnit, dropPoint);//다른 방식으로 HUD페널에 전달해야할듯 //HudPanel.COIN_LOOTING((float)data.CurValue); if (HudPanel != null)//이거 죽여야하나??? { HudPanel.SpecialKillCount(0); } //if (DropRewardDic.ContainsKey(deadNpc.SpwanUnitId)) // DropRewardDic.Remove(deadNpc.SpwanUnitId); /* * if (SpawnPropList.Contains(deadNpc)) * SpawnPropList.Remove(deadNpc); * * if (0 < SpawnPropList.Count) * return; * * SpawnPropList.Clear(); * PrepareEndGame(true); * EndGame(true); */ }