Exemple #1
0
    public void OnEnter(AAvatar avatar, string roomType)
    {
        if (!avatar.bAI)
        {
            if (dRooms.ContainsKey(avatar.username))
            {
                if (dRooms[avatar.username].roomType != roomType)
                {
                    AOutput.Log($"avatar.username enter different room {roomType}");
                    dRooms[avatar.username].OnExit(avatar.username);
                    dRooms.Remove(avatar.username);
                }
            }

            ARoomBase room = null;
            if (!dRooms.ContainsKey(avatar.username))
            {
                room = OnCreate(roomType);
                dRooms.Add(avatar.username, room);
            }
            else
            {
                room = dRooms[avatar.username];
            }
            room.OnEnter(avatar);
        }
    }
    internal JObject GetSimpleInfo(ARoomBase aRoomBase)
    {
        var jinfo = new JObject();

        jinfo[InfoNameDefs.AvatarName]  = AvatarName;
        jinfo[InfoNameDefs.AvatarLevel] = AvatarLevel;
        return(jinfo);
    }
Exemple #3
0
 internal void OnRemove(ARoomBase aRoomBase)
 {
     aRoomBase.OnDismiss();
 }