示例#1
0
 public static bool IsOwnerOrFriendly(Colony colony, Players.Player candidate)
 {
     if (colony.Owners.ContainsByReference(candidate))
     {
         return(true);
     }
     foreach (Players.Player owner in colony.Owners)
     {
         if (PlayerTracker.IsFriendly(owner, candidate))
         {
             return(true);
         }
     }
     return(false);
 }
示例#2
0
        public static void OnNPCHit(NPC.NPCBase npc, ModLoader.OnHitData data)
        {
            if (!(data.HitSourceObject is Players.Player))
            {
                return;
            }
            Players.Player killer = (Players.Player)data.HitSourceObject;
            foreach (Players.Player owner in npc.Colony.Owners)
            {
                if (owner == killer || PlayerTracker.IsFriendly(owner, killer))
                {
                    return;
                }
            }

            PlayerTracker.AddEnemy(npc.Colony, killer);
        }