public override bool TakeDamage(Living source, ref int damageAmount, ref int criticalAmount, int type, int delay) { bool result = false; bool result2; if (this.Blood > 0) { if (type == 0) { this.OnBeforeTakedDamage(source, ref damageAmount, ref criticalAmount, delay); this.StartAttacked(); } WorldBossMgr.TakeDamage(damageAmount + criticalAmount, Game.FindRandomPlayer().PlayerDetail.GamePlayerId); if (this.m_syncAtTime) { { this.m_game.SendGameUpdateHealth(this, 1, damageAmount + criticalAmount); } } this.OnAfterTakedDamage(source, damageAmount, criticalAmount, delay); if (this.Blood <= 0) { this.Die(); } source.OnAfterKillingLiving(this, damageAmount, criticalAmount, delay); result = true; } else { this.Die(); } result2 = result; return(result2); }
public override int HandlePacket(GamePlayer player, GSPacketIn packet) { int a = packet.ReadInt(); //just for debug // if (false) if (!WorldBossMgr.CanJoin) { player.Out.SendMessage(eMessageType.Normal, "世界Boss尚未开放"); // player.Out.SendMessage(eMessageType.Normal, "世界Boss尚未开放,世界boss只于每天10点、14点、20点开放,并于击杀后结束"); } else { WorldBossMgr.AddPlayer(player); player.Out.SendEnterWorldBossRoom(player); } return(0); }