Пример #1
0
 public void AddChild(AIDebugerTreeNode node)
 {
     if (null == node)
     {
         return;
     }
     m_ChildList.Add(node);
     ComponentTool.Attach(m_ObjChildRoot.transform, node.m_ObjRoot.transform);
 }
Пример #2
0
    private GameObject GetAttachPoint(GameObject root)
    {
        if (root == null || string.IsNullOrEmpty(m_FrameConfig.AttachPoingName))
        {
            return(root);
        }

        return(ComponentTool.FindChild(m_FrameConfig.AttachPoingName, root));
    }
Пример #3
0
        // Handles clicks on the inner tool icons.
        private void ProcessToolClickWebEvent(WisejEventArgs e)
        {
            ComponentTool tool = e.Parameters.Tool;

            if (tool != null)
            {
                OnToolClick(new ToolClickEventArgs(tool));
            }
        }
Пример #4
0
 public AudioSource GetRecordAudioSource()
 {
     if (null == m_RecordAudioSource)
     {
         var obj = new GameObject("AudioClip");
         ComponentTool.Attach(m_AudioRoot.transform, obj.transform);
         m_RecordAudioSource = obj.AddComponent <AudioSource>();
     }
     return(m_RecordAudioSource);
 }
Пример #5
0
    public void Initialize()
    {
        m_MapIndexStore    = new Dictionary <MapId, MapIndexStruct>();
        m_MapInstanceStore = new Dictionary <MapId, List <GameObject> >();

        m_2dMapRoot = ComponentTool.FindChild(m_str2dMapRoot, null);
        m_3dMapRoot = ComponentTool.FindChild(m_str3dMapRoot, null);

        MapDefiner.RegisterMap();
    }
Пример #6
0
 protected void AddChildElementClickEvent(UIEventListener.VoidDelegate handler, string childName, string rootName = "")
 {
     if (string.IsNullOrEmpty(rootName))
     {
         UIEventListener.Get(FindChild(childName)).onClick = handler;
     }
     else
     {
         UIEventListener.Get(ComponentTool.FindChild(childName, FindChild(rootName))).onClick = handler;
     }
 }
Пример #7
0
    public void Initialize()
    {
        m_AudioRoot            = ComponentTool.FindChild("AudioPlayer", null);
        m_AudioClipList        = new List <AudioElementStruct>(m_iPoolSize);
        m_AudioStorePool       = new Stack <AudioElementStruct>(m_iPoolSize);
        m_AudioCallBacktmpList = new List <AudioCallBackElement>();

        InitAudioPool();

        MessageDispatcher.Instance.RegistMessage(ClientCustomMessageDefine.C_CHANGE_SCENE, OnChangeScene);
    }
Пример #8
0
 private void InitStarElement(StarElementStruct elem)
 {
     elem.m_Root = GameObject.Instantiate(MusicGameManager.Instance.m_ElementTemplate);
     ComponentTool.Attach(MusicGameManager.Instance.m_StarElementRoot.transform, elem.m_Root.transform);
     elem.m_Root.transform.localScale = new Vector3(1.5f, 1.5f, 1.5f);
     elem.m_Controller = elem.m_Root.GetComponent <MusicGameTool_StarController>();
     if (elem.m_Controller == null)
     {
         Debug.LogError("MusicGameTool_StarController not found!");
         return;
     }
     elem.m_Controller.StartFall();
 }
Пример #9
0
    public AIDebugerTreeRoot CreateBehaviourTree(int iId, GameObject template, GameObject TreeRoot, XElement xml, bool isRuntime = false)
    {
        if (iId <= 0)
        {
            return(null);
        }
        m_Template = template;
        AIDebugerTreeRoot root = new AIDebugerTreeRoot(iId, template);

        ComponentTool.Attach(TreeRoot.transform, root.m_ObjRoot.transform);

        ParseBTXml(root, xml);
        return(root);
    }
Пример #10
0
    private void AddNpc(int id, Vector3 position, Vector3 rotation, Vector3 scale)
    {
        NpcConfig tmpConfig = ConfigManager.Instance.GetNpcConfig(id);

        if (null == tmpConfig)
        {
            EditorUtility.DisplayDialog("id 错误", "请检查表中npc id ,错误 id= " + id, "ok");
            return;
        }

        GameObject sourceObj = ResourceManager.Instance.LoadBuildInResource <GameObject>(tmpConfig.ModelResource,
                                                                                         AssetType.Char);

        if (null == sourceObj)
        {
            EditorUtility.DisplayDialog("模型 id 错误", "请检查表中npc id ,错误 id= " + tmpConfig.ModelResource, "ok");
            return;
        }

        if (IsExistNpcInScene(id))
        {
            EditorUtility.DisplayDialog("npc重复", "场景中已经存在相同ID的npc,错误 id= " + id, "ok");
            return;
        }

        NpcEditorData elem = new NpcEditorData();

        elem.m_NpcData       = new TerrainNpcData();
        elem.m_NpcData.Pos   = new ThriftVector3();
        elem.m_NpcData.Rot   = new ThriftVector3();
        elem.m_NpcData.Scale = new ThriftVector3();
        elem.m_NpcData.Id    = id;

        elem.m_NpcData.Pos.SetVector3(position);
        elem.m_NpcData.Rot.SetVector3(rotation);
        elem.m_NpcData.Scale.SetVector3(scale);

        elem.m_Instance = new Npc();
        elem.m_Instance.Initialize(id);
        GameObject instance = ((CharTransformData)(elem.m_Instance.GetTransformData())).GetGameObject();

        ComponentTool.Attach(m_ObjNpcRoot.transform, instance.transform);
        ((CharTransformData)(elem.m_Instance.GetTransformData())).SetPhysicStatus(false);
        elem.m_Instance.GetTransformData().SetPosition(position);
        elem.m_Instance.GetTransformData().SetRotation(rotation);
        elem.m_Instance.GetTransformData().SetScale(scale);


        m_NpcList.Add(elem);
    }
Пример #11
0
 private void InitAudioPool()
 {
     for (int i = 0; i < m_iPoolSize; ++i)
     {
         AudioElementStruct elem = new AudioElementStruct();
         elem.m_AudioClip = null;
         elem.m_Root      = new GameObject("AudioClip");
         ComponentTool.Attach(m_AudioRoot.transform, elem.m_Root.transform);
         elem.m_Root.transform.position = Vector3.zero;
         elem.m_AudioSource             = elem.m_Root.AddComponent <AudioSource>();
         elem.m_AudioSource.clip        = elem.m_AudioClip;
         elem.m_AudioSource.playOnAwake = false;
         m_AudioStorePool.Push(elem);
     }
 }
Пример #12
0
    public void Initialize(int id, GameObject root)
    {
        m_ID         = id;
        m_ObjectRoot = root;
        m_iDeepth    = 0;
        List <UIPanel> tmpPanelList = new List <UIPanel>();

        m_AllPanelsUnderWindow = new List <PanelStruct>();
        ComponentTool.FindAllChildComponents(m_ObjectRoot.transform, ref tmpPanelList);
        for (int i = 0; i < tmpPanelList.Count; ++i)
        {
            PanelStruct elem = new PanelStruct();
            elem.m_Panel         = tmpPanelList[i];
            elem.m_defaultDeepth = tmpPanelList[i].depth;
            m_AllPanelsUnderWindow.Add(elem);
        }
    }
Пример #13
0
    public AIDebugerTreeNode(string name, GameObject template)
    {
        m_bIsRuntime = UIWindow_BTViewPanel.GetInstance == null;
        m_strName    = name;
        m_ChildList  = new List <AIDebugerTreeNode>();
        m_ObjRoot    = GameObject.Instantiate(template);
        m_ObjRoot.SetActive(true);

        m_ObjChildRoot   = ComponentTool.FindChild("Root", m_ObjRoot);
        m_LabelName      = ComponentTool.FindChildComponent <UILabel>("Label", m_ObjRoot);
        m_LabelName.text = name;
        if (!m_bIsRuntime)
        {
            UIEventListener.Get(m_ObjRoot).onDoubleClick = UIWindow_BTViewPanel.GetInstance.OnDoubleClick;
            UIEventListener.Get(m_ObjRoot).onClick       = UIWindow_BTViewPanel.GetInstance.OnClick;
        }
    }
Пример #14
0
    private void CheckMap()
    {
        if (null != m_ObjMap)
        {
            if (null == m_ObjMapInstance)
            {
                // reset map
                m_ObjMapInstance = GameObject.Instantiate(m_ObjMap);
                ComponentTool.Attach(m_ObjSceneRoot.transform, m_ObjMapInstance.transform);
                //record map name
                m_CurrentMapResPath = m_ObjMap.name;

                TerrainEditorRuntime.Instance.SetSceneCamera(m_ObjMapInstance);
                TerrainEditorRuntime.Instance.SetClearWindow(ClearData);
                Debug.Log("map name : " + m_CurrentMapResPath);
            }
        }
    }
Пример #15
0
    private void OpenLog()
    {
        var obj = GameObject.Find("Reporter");

        if (null != obj)
        {
            obj.SetActive(true);
        }
        else
        {
            var o = Resources.Load("BuildIn/Widget/Reporter");
            if (null != o)
            {
                GameObject newobj = GameObject.Instantiate(o) as GameObject;
                ComponentTool.Attach(null, newobj.transform);
            }
        }
    }
Пример #16
0
 private void CheckMap()
 {
     if (null != m_ObjMap)
     {
         if (null == m_ObjMapInstance)
         {
             // reset map
             m_ObjMapInstance = GameObject.Instantiate(m_ObjMap);
             ComponentTool.Attach(m_ObjSceneRoot.transform, m_ObjMapInstance.transform);
             //record map name
             m_CurrentMapName = m_ObjMap.name;
             Debug.Log("map name : " + m_CurrentMapName);
             //reset Global Script
             GlobalScripts.Instance.Reset();
             //create npc
             OpenTerrain();
         }
     }
 }
Пример #17
0
    private GameObject CreateMapInstance(MapId id, MapType type, GameObject origin)
    {
        if (null == origin)
        {
            return(null);
        }

        GameObject instance = GameObject.Instantiate(origin) as GameObject;
        Transform  root     = type == MapType.MapType_2d ? m_2dMapRoot.transform : m_3dMapRoot.transform;

        ComponentTool.Attach(root, instance.transform);

        if (!m_MapInstanceStore.ContainsKey(id))
        {
            m_MapInstanceStore.Add(id, new List <GameObject>());
        }
        m_MapInstanceStore[id].Add(instance);

        return(instance);
    }
Пример #18
0
        public PilesAlphaElement(GameObject objRoot, string name, bool isVisable, string emptyTextureName)
        {
            m_ObjRoot             = objRoot;
            m_ObjOptionRoot       = ComponentTool.FindChild("Option", m_ObjRoot);
            m_ObjPlayerAttachRoot = ComponentTool.FindChild("PlayerAttachPos", m_ObjRoot);
            m_strName             = name;
            m_bIsVisable          = isVisable;

            m_MeshRenderer = m_ObjOptionRoot.GetComponent <MeshRenderer>();
            m_Materials    = new Material(ResourceManager.Instance.LoadBuildInResource <Material>("Piles/PilesMaterial", AssetType.Materials));
            if (m_bIsVisable)
            {
                m_Materials.mainTexture = ResourceManager.Instance.LoadBuildInResource <Texture2D>(m_strName, AssetType.Texture);
            }
            else
            {
                m_Materials.mainTexture = ResourceManager.Instance.LoadBuildInResource <Texture2D>(emptyTextureName, AssetType.Texture);
            }
            m_MeshRenderer.material = m_Materials;
        }
Пример #19
0
        // Use this for initialization
        void Start()
        {
            apple = Instantiate(itemPrefab);
            apple.SetActive(true);
            ComponentTool.Attach(grid.transform, apple.transform);
            UITexture appleT = apple.GetComponent <UITexture>();

            appleT.mainTexture = ResourceManager.Instance.LoadBuildInResource <Texture>("Piles/Apple", AssetType.Texture);
            banana             = Instantiate(itemPrefab);
            banana.SetActive(true);
            ComponentTool.Attach(grid.transform, banana.transform);
            UITexture bananaT = banana.GetComponent <UITexture>();

            bananaT.mainTexture       = ResourceManager.Instance.LoadBuildInResource <Texture>("Piles/Banana", AssetType.Texture);
            finger.transform.position = apple.transform.position;

            //UIEventListener.Get(child).onClick = OnClickOption;

            //m_OptionalMap.Add(name, new RegularityOptionalElement(name, child));
        }
Пример #20
0
    private void AddNpc(int id, Vector3 position, Vector3 rotation, Vector3 scale)
    {
        NpcConfig tmpConfig = ConfigManager.Instance.GetNpcConfig(id);

        if (null == tmpConfig)
        {
            EditorUtility.DisplayDialog("id 错误", "请检查表中npc id ,错误 id= " + id, "ok");
            return;
        }

        GameObject sourceObj = ResourceManager.Instance.LoadBuildInResource <GameObject>(tmpConfig.ModelResource,
                                                                                         AssetType.Char);

        if (null == sourceObj)
        {
            EditorUtility.DisplayDialog("模型 id 错误", "请检查表中npc id ,错误 id= " + tmpConfig.ModelResource, "ok");
            return;
        }
        GameObject instance = GameObject.Instantiate(sourceObj);

        ComponentTool.Attach(m_ObjNpcRoot.transform, instance.transform);


        m_Config.Id = id;
        m_Config.Pos.SetVector3(position);
        m_Config.Rot.SetVector3(rotation);
        m_Config.Scale.SetVector3(scale);

        m_CreatedNpcObject = instance;
        m_CreatedNpcObject.transform.position    = position;
        m_CreatedNpcObject.transform.eulerAngles = rotation;
        m_CreatedNpcObject.transform.localScale  = scale;

        //disable npc anim
        Animator anim = m_CreatedNpcObject.GetComponent <Animator>();

        if (null != anim)
        {
            anim.applyRootMotion = false;
        }
    }
Пример #21
0
    private void AddTrigger(ETriggerAreaType TriggerAreaType, Vector3 position, Vector3 rotation, Vector3 scale, int targetId = 0, int enterLimitId = 0, int exitLimitId = 0, int enterFuncId = 0, int exitFuncId = 0)
    {
        GameObject sourceObj = m_TriggerTemplateMap[TriggerAreaType];

        if (null == sourceObj)
        {
            Debug.Log(TriggerAreaType.ToString() + " " + m_TriggerTemplateMap.Count);
        }
        else
        {
            GameObject instance = GameObject.Instantiate(sourceObj);
            ComponentTool.Attach(m_ObjTriggerRoot.transform, instance.transform);


            TriggerEditorData elem = new TriggerEditorData();
            elem.TriggerData       = new TerrainTriggerData();
            elem.TriggerData.Pos   = new ThriftVector3();
            elem.TriggerData.Rot   = new ThriftVector3();
            elem.TriggerData.Scale = new ThriftVector3();

            elem.TriggerData.Pos.SetVector3(position);
            elem.TriggerData.Rot.SetVector3(rotation);
            elem.TriggerData.Scale.SetVector3(scale);
            elem.TriggerData.AreaType = TriggerAreaType;


            elem.TriggerData.TargetMethodId     = targetId;
            elem.TriggerData.EnterLimitMethodId = enterLimitId;
            elem.TriggerData.ExitLimitMethodId  = exitLimitId;
            elem.TriggerData.EnterFuncMethodId  = enterFuncId;
            elem.TriggerData.ExitFuncMethodId   = exitFuncId;

            elem.m_SourceObj = instance;
            elem.m_SourceObj.transform.position    = position;
            elem.m_SourceObj.transform.eulerAngles = rotation;
            elem.m_SourceObj.transform.localScale  = scale;

            m_TriggerList.Add(elem);
        }
    }
Пример #22
0
    private void AddHintPoint(Vector3 position, int num)
    {
        if (m_HintPointSource == null)
        {
            return;
        }

        GameObject instance = GameObject.Instantiate(m_HintPointSource);
        GameObject root     = GameObject.Find("Canvas");

        if (root)
        {
            ComponentTool.Attach(root.transform, instance.transform);
            Text txtComp = instance.GetComponentInChildren <Text>();
            if (txtComp)
            {
                txtComp.text = (num + 1).ToString();
            }
        }
        instance.transform.position = position;
        m_lstHintPointList.Add(instance);
    }
Пример #23
0
        private void ReLoadScene()
        {
            if (!m_bIsResetByUI)
            {
                m_CurrentConfig = m_DiffMgr.GetDifficulty();
            }
            m_bIsResetByUI = false;

            m_ElementList = new List <PilesElement>();
            for (int i = 0; i < m_CurrentConfig.OptionList.Count; ++i)
            {
                string     name = m_CurrentConfig.OptionList[i].Name;
                GameObject elem = GameObject.Instantiate(m_ElementTemplate);
                elem.name = i.ToString();
                MeshRenderer renderer     = ComponentTool.FindChildComponent <MeshRenderer>("Option", elem);
                Material     elemMaterial =
                    new Material(ResourceManager.Instance.LoadBuildInResource <Material>("Piles/PilesMaterial",
                                                                                         AssetType.Materials));
                if (m_CurrentConfig.OptionList[i].IsVisable)
                {
                    elemMaterial.mainTexture = ResourceManager.Instance.LoadBuildInResource <Texture2D>(name,
                                                                                                        AssetType.Texture);
                }
                else
                {
                    elemMaterial.mainTexture = ResourceManager.Instance.LoadBuildInResource <Texture2D>(m_strEmptyTextureName,
                                                                                                        AssetType.Texture);
                }
                renderer.material = elemMaterial;
                elem.SetActive(true);
                m_ElementList.Add(new PilesElement(renderer.gameObject, elem, name, elemMaterial, m_CurrentConfig.OptionList[i].IsVisable));
                ComponentTool.Attach(m_ObjRoot.transform, elem.transform);
            }
            m_Grid = m_ObjRoot.GetComponent <RegularityGame.SimpleUIGrid>();
            m_Grid.Reposition();
            FixPosition();

            m_bIsInit = true;
        }
Пример #24
0
    public void ResetWindow(Regularity2DWindowParam param)
    {
        ClearWindow();

        for (int i = 0; i < param.m_PilesList.Count; ++i)
        {
            var          data = param.m_PilesList[i];
            PilesElement elem = new PilesElement();
            elem.m_RootObj = GameObject.Instantiate(m_PilesTemplate);
            elem.m_RootObj.transform.parent = m_PilesRoot.transform;
            elem.m_bIsVisable            = data.IsVisable;
            elem.m_SpriteItem            = ComponentTool.FindChildComponent <UISprite>("Sprite_Option", elem.m_RootObj);
            elem.m_SpriteItem.spriteName = elem.m_bIsVisable ? data.Name : "";
            elem.m_strName = data.Name;
            elem.m_RootObj.SetActive(true);
            elem.m_RootObj.transform.localScale = Vector3.one;
            m_PilesList.Add(elem);
        }

        for (int i = 0; i < param.m_OptionList.Count; ++i)
        {
            var           data = param.m_OptionList[i];
            OptionElement elem = new OptionElement();
            elem.m_RootObj = GameObject.Instantiate(m_OptionTemplate);
            elem.m_RootObj.transform.parent = m_OptionRoot.transform;
            elem.m_SpriteItem            = ComponentTool.FindChildComponent <UISprite>("Sprite_Option", elem.m_RootObj);
            elem.m_SpriteItem.spriteName = data;
            elem.m_RootObj.GetComponent <MyUIDragDropItem>().RegisterDragEndAction(OnDragEnd);
            elem.m_strName = data;
            elem.m_RootObj.SetActive(true);
            elem.m_RootObj.transform.localScale = Vector3.one;
            m_OptionList.Add(elem);
        }
        m_ResultCallBack = param.m_ResultCallBack;

        m_OptionRoot.repositionNow = true;
        m_PilesRoot.repositionNow  = true;
    }
Пример #25
0
    public void PlayAudio(AudioClip clip, Vector3 postion, bool isLoop, Action <string> onFinishedCallBack = null)
    {
        Debuger.Log("Play audio: " + clip.name);

        AudioElementStruct elem = null;

        if (m_AudioStorePool.Count > 0)
        {
            elem = m_AudioStorePool.Pop();
        }
        else
        {
            elem        = new AudioElementStruct();
            elem.m_Root = new GameObject("AudioClip");
            ComponentTool.Attach(m_AudioRoot.transform, elem.m_Root.transform);
            elem.m_AudioSource = elem.m_Root.AddComponent <AudioSource>();
        }

        elem.m_AudioClip = clip;
        if (elem.m_AudioClip == null)
        {
            return;
        }
        elem.m_Root.transform.position = postion;
        elem.m_AudioSource.clip        = elem.m_AudioClip;
        elem.m_AudioSource.loop        = isLoop;
        elem.m_bIsLoop = isLoop;
        elem.m_AudioSource.Play();
        elem.m_Root.name = clip.name;

        CheckCallBack(elem, onFinishedCallBack);

        if (null != elem)
        {
            m_AudioClipList.Add(elem);
        }
    }
Пример #26
0
        static Gtk.Toolbar CreateToolbar(CircuitEditor editor)
        {
            Gtk.Toolbar toolbar = new Gtk.Toolbar();

            SelectTool selectTool = new SelectTool(editor, toolbar);
            WireTool   wireTool   = new WireTool(editor, toolbar);
            // FIXME: Make this be selected with a callback or something
            //editor.CurrentTool = selectTool;

            ComponentTool constantTool = new ComponentTool(ComponentType.Constant, "Constant", editor, toolbar);

            ComponentTool bufferTool = new ComponentTool(ComponentType.Buffer, "Buffer gate", editor, toolbar);
            ComponentTool notTool    = new ComponentTool(ComponentType.Not, "Not gate", editor, toolbar);

            ComponentTool andTool = new ComponentTool(ComponentType.And, "And gate", editor, toolbar);

            ComponentTool orTool = new ComponentTool(ComponentType.Or, "Or gate", editor, toolbar);

            ComponentTool xorTool = new ComponentTool(ComponentType.Xor, "Xor gate", editor, toolbar);

            SeparatorToolItem sep = new SeparatorToolItem();

            int index = 0;

            toolbar.Insert(selectTool, index++);
            toolbar.Insert(wireTool, index++);
            toolbar.Insert(sep, index++);
            toolbar.Insert(constantTool, index++);
            toolbar.Insert(bufferTool, index++);
            toolbar.Insert(notTool, index++);
            toolbar.Insert(andTool, index++);
            toolbar.Insert(orTool, index++);
            toolbar.Insert(xorTool, index++);

            return(toolbar);
        }
Пример #27
0
    public void EnableOutline(GameObject go, Material mat, Color color, bool enable, bool updateChildrenLayer)
    {
        //获得原始层
        int originLayer = 0;
        int instanceID  = go.GetInstanceID();

        if (!m_originLayerDict.TryGetValue(instanceID, out originLayer))
        {
            originLayer = go.layer;
            m_originLayerDict[instanceID] = originLayer;
        }

        //设置显示层
        float alpha = enable ? 1 : 0;

        color.a = alpha;
        int layer = enable ? OutlintLayer : originLayer;

        if (updateChildrenLayer)
        {
            ComponentTool.SetLayer(go, layer);
        }
        else
        {
            go.layer = layer;
        }
        mat.SetColor(ShaderPropertyID.OutlineColor, color);

        //计数
        m_outlineCounter = m_outlineCounter + (enable ? 1 : -1);
        if (m_outlineCounter <= 0)
        {
            m_outlineCounter = 0;
        }
        m_outlineEffect.enabled = m_outlineCounter > 0;
    }