예제 #1
0
파일: YiObject.cs 프로젝트: Pircs/Yi
 public void GetHit(YiObject attacker, int damage)
 {
     if (!Alive)
     {
         return;
     }
     CurrentHp -= damage;
     if (CurrentHp <= 0)
     {
         KilledFrom(attacker);
     }
 }
예제 #2
0
파일: YiObject.cs 프로젝트: Pircs/Yi
        public virtual void KilledFrom(YiObject attacker)
        {
            if (HasFlag(StatusEffect.SuperMan) || HasFlag(StatusEffect.Cyclone))
            {
                (attacker as Player)?.Send(MsgInteract.Create(attacker, this, MsgInteractType.Death, 0xFFFF * attacker.XpKills));
            }
            else
            {
                ScreenSystem.Send(this, MsgInteract.Die(attacker, this), true);
            }

            var human = attacker;

            if (human != null)
            {
                human.PkPoints++;
            }
        }
예제 #3
0
파일: YiObject.cs 프로젝트: Pircs/Yi
 public bool IsBlack(YiObject mapObject)
 {
     return(mapObject.Level - Level < -4);
 }
예제 #4
0
파일: YiObject.cs 프로젝트: Pircs/Yi
 public bool IsRed(YiObject mapObject)
 {
     return(mapObject.Level - Level >= -4 && mapObject.Level - Level < 0);
 }
예제 #5
0
파일: YiObject.cs 프로젝트: Pircs/Yi
 public bool IsWhite(YiObject mapObject)
 {
     return(mapObject.Level - Level >= 0 && mapObject.Level - Level < 3);
 }
예제 #6
0
파일: YiObject.cs 프로젝트: Pircs/Yi
 public bool IsGreen(YiObject mapObject)
 {
     return(mapObject.Level - Level >= 3);
 }