Beispiel #1
0
        public static RoomTemplate find_location(CharacterInstance ch, string arg)
        {
            if (arg.IsNumber())
            {
                return(RepositoryManager.Instance.ROOMS.CastAs <Repository <long, RoomTemplate> >().Get(arg.ToInt32()));
            }
            if (arg.Equals("pk"))
            {
                return(RepositoryManager.Instance.ROOMS.CastAs <Repository <long, RoomTemplate> >().Get(db.LastPKRoom));
            }

            var victim = ch.GetCharacterInWorld(arg);

            if (victim != null)
            {
                return(victim.CurrentRoom);
            }

            var obj = ch.GetObjectInWorld(arg);

            return(obj?.InRoom);
        }