Esempio n. 1
0
        public RenderableObj GetRenderableObject(int id)
        {
            RenderableObj ret = null;

            if (ret == null)
            {
                foreach (var pair in tileMap)
                {
                    SingleScene tile = pair.Value as SingleScene;
                    ret = tile.GetRuntimeOCObject(id);
                    if (ret != null)
                    {
                        break;
                    }
                }
            }
            return(ret);
        }
Esempio n. 2
0
        public void Do()
        {
            if (owner.owner.Owner == null)
            {
                foreach (var pair in visFlagDic)
                {
                    var key      = pair.Key;
                    var visFlags = pair.Value;

                    for (int i = 0; i < visFlags.Count; i++)
                    {
                        RenderableObj go = owner.owner.GetRuntimeOCObject(i);
                        if (go != null)
                        {
                            owner.owner.SetRenderableObjectVisible(go, visFlags[i]);
                        }
                    }
                }
                return;
            }

            //-----------------
            foreach (var pair in visFlagDic)
            {
                var key      = pair.Key;
                var visFlags = pair.Value;

                Index selfIndex   = owner.owner.TileIndex;
                Index targetIndex = Index.InValidIndex;
                targetIndex.x = selfIndex.x + key.x;
                targetIndex.y = selfIndex.y + key.y;

                Tile tile = null;
                owner.owner.Owner.tileMap.TryGetValue(targetIndex, out tile);

                if (tile == null)
                {
                    continue;
                }

                for (int i = 0; i < visFlags.Count; i++)
                {
                    SingleScene   curScene = tile as SingleScene;
                    RenderableObj go       = curScene.GetRuntimeOCObject(i);
                    if (go != null)
                    {
                        owner.owner.SetRenderableObjectVisible(go, visFlags[i]);
                    }

                    //if (key.Equals(Index.InValidIndex) == false)
                    //{
                    //if (owner.owner.Owner.IsValidIndex(selfIndex))
                    //{



                    //}

                    //}
                }
            }
        }