public Dungeon(RealmInfomation realm_infomation)
        {
            _RealmInfomation = realm_infomation;
            _Valid = true;
            _Map = new Map();
            _WaitingRoom = new List<Entity>();
            _Updater = new TimesharingUpdater(1.0f / 30.0f);
            _Aboriginals = new List<Aboriginal>();

            _EntityEnteranceResource = realm_infomation.EntityEnteranceResource;
            /*_EntityEnteranceResource = new Dictionary<ENTITY, int>
            {
                { ENTITY.ACTOR1, 10},
                { ENTITY.ACTOR2, 20},
                { ENTITY.ACTOR3, 20},
                { ENTITY.ACTOR4, 20},
                { ENTITY.ACTOR5, 20},
            };*/
            _EntityFieldResource = realm_infomation.EntityFieldResource;
            /*_EntityFieldResource = new Dictionary<ENTITY, int>
            {
                { ENTITY.ACTOR1, 10},
                { ENTITY.ACTOR2, 10},
                { ENTITY.ACTOR3, 10},
                { ENTITY.ACTOR4, 10},
                { ENTITY.ACTOR5, 10},
            };*/

            _LevelUnitToGroupBuilder = new Dictionary<Data.LEVEL_UNIT, EntityGroupBuilder>();
            foreach (var mazeUnitInfomation in _RealmInfomation.Maze.MazeUnits)
            {
                _LevelUnitToGroupBuilder.Add(mazeUnitInfomation.Type , new EntityGroupBuilder(mazeUnitInfomation.Name, _Map, this));
            }
        }
        public Realm(RealmInfomation realm_infomation)
        {
            _RealmInfomation = realm_infomation;

            _Updater = new TimesharingUpdater(1f/10f);
            _QueryRequesters = new Queue<Value<Map>>();
            _Dungeons = new List<Dungeon>();
        }
        public Zone(RealmInfomation[] realm_infomations)
        {
            this._Realms = new Dictionary<string, Realm>();
            _Updater = new TimesharingUpdater(1f/10f);
            if (realm_infomations == null)
                throw new System.NullReferenceException();

            foreach (var realm_infomation in realm_infomations)
            {
                var realm = new Realm(realm_infomation);
                this._Realms.Add(realm_infomation.Name, realm);
                _Updater.Add(realm);
            }
        }