/// <summary>
    /// 开启高亮
    /// </summary>
    /// <param name="flashColor"></param>
    /// <param name="frequency">Flashing frequency (times per second)</param>
    public void ConstantOn(Color NormalColor)
    {
        //SetRendererEnable(true);
        Highlighter h = RenderObj.AddMissingComponent <Highlighter>();

        h.ConstantOn(NormalColor);
    }
Пример #2
0
    protected Collider CreateCollider(GameObject go, List <int> args)
    {
        if (args.get_Count() < 1)
        {
            return(null);
        }
        int num = args.get_Item(0);

        if (num != 1)
        {
            if (num != 2)
            {
                return(null);
            }
            if (args.get_Count() < 5)
            {
                return(null);
            }
            SphereCollider sphereCollider = go.AddMissingComponent <SphereCollider>();
            sphereCollider.set_center(new Vector3((float)args.get_Item(1) * 0.01f, (float)args.get_Item(2) * 0.01f, (float)args.get_Item(3) * 0.01f));
            sphereCollider.set_radius((float)args.get_Item(4) * 0.01f);
            return(sphereCollider);
        }
        else
        {
            if (args.get_Count() < 7)
            {
                return(null);
            }
            BoxCollider boxCollider = go.AddMissingComponent <BoxCollider>();
            boxCollider.set_center(new Vector3((float)args.get_Item(1) * 0.01f, (float)args.get_Item(2) * 0.01f, (float)args.get_Item(3) * 0.01f));
            boxCollider.set_size(new Vector3((float)args.get_Item(4) * 0.01f, (float)args.get_Item(5) * 0.01f, (float)args.get_Item(6) * 0.01f));
            return(boxCollider);
        }
    }
    public void AddScprits(Transform deviceT)
    {
        int  childCount = deviceT.childCount;
        bool isJ1F1Devs = deviceT.name.StartsWith(J1F1StaticDev);//或者J1_F1_Devices_Loader,不小心改名了

        for (int i = 0; i < childCount; i++)
        {
            GameObject obj = deviceT.GetChild(i).gameObject;
            if (obj.name.Contains("Invalid"))
            {
                continue;
            }
            if (!isJ1F1Devs)
            {
                FacilityDevController devController = obj.AddMissingComponent <FacilityDevController>();
                if (RoomFactory.Instance)
                {
                    RoomFactory.Instance.SaveStaticDevInfo(devController);
                }
                MeshRenderer render = obj.transform.GetComponent <MeshRenderer>();
                if (render != null)
                {
                    MeshCollider meshCollider = obj.AddMissingComponent <MeshCollider>();
                }
            }
            AddSubDevScripts(obj.transform, isJ1F1Devs);
        }
    }
Пример #4
0
    //--需要重构
    public void ShootBall()
    {
        int             randomIndex = Random.Range(0, _RandomPlayerCells.Count);
        SGridCoordinate coor        = _RandomPlayerCells[randomIndex];
        GridInfo        theCell     = BallGrid[coor.x, coor.z];

        if (theCell.IsEmpty())
        {
            _RandomPlayerCells.RemoveAt(randomIndex);
            Vector3 worldPosition = Definition.GridToWorld(coor.x, coor.z);
            sc.Show(coor);


            GameObject      ball   = GameObject.Instantiate(Ball, Boss.transform.position, Quaternion.identity) as GameObject;
            MotionParabolic motion = ball.AddMissingComponent <MotionParabolic>();
            motion.Go(Boss.transform.position, worldPosition, 30, 10);
            motion.SetCallBack(
                delegate()
            {
                ToolAutoDestory boom = ball.AddMissingComponent <ToolAutoDestory>();
                boom.SetCallBack(delegate {
                    theCell.CleanOccupant();
                    _RandomPlayerCells.Add(coor);
                });
                boom.Do(20);
            }

                );

            //网格准备被占领.
            theCell.BeginOccupy(ball);
            ball.AddMissingComponent <BallMoveHelper>().SetAim(theCell);
        }
    }
Пример #5
0
    public static void SetGoFrontUiEffect(GameObject go, bool isCanClick, int order = 10)
    {
        bool isActive = true;

        if (!go.activeSelf)
        {
            isActive = false;
            go.SetActive(true);
        }
        Canvas m_canvas = go.AddMissingComponent <Canvas>();

        m_canvas.overrideSorting = true;
        if (isCanClick)
        {
            go.AddMissingComponent <GraphicRaycaster>();
        }
        if (!m_canvas.overrideSorting)
        {
            m_canvas.overrideSorting = true;
        }
        m_canvas.sortingOrder = order;
        if (!isActive)
        {
            go.SetActive(false);
        }
    }
Пример #6
0
        public void DrawImage(PSImage image, GameObject parent, GameObject ownObj = null)
        {
            if (image.imageSource == ImageSource.Common || image.imageSource == ImageSource.Custom)
            {
                UnityEngine.UI.Image pic;
                if (ownObj != null)
                {
                    pic = ownObj.AddMissingComponent <UnityEngine.UI.Image>();
                }
                else
                {
                    pic = PSDImportUtility.LoadAndInstant <UnityEngine.UI.Image>(PSDImporterConst.ASSET_PATH_IMAGE, image.name, parent);
                }

                RectTransform rectTransform = pic.GetComponent <RectTransform>();
                rectTransform.offsetMin = new Vector2(0.5f, 0.5f);
                rectTransform.offsetMax = new Vector2(0.5f, 0.5f);
                rectTransform.anchorMin = new Vector2(0.5f, 0.5f);
                rectTransform.anchorMax = new Vector2(0.5f, 0.5f);

                string assetPath = PSDImportUtility.baseDirectory + image.name + PSDImporterConst.PNG_SUFFIX;
                Sprite sprite    = AssetDatabase.LoadAssetAtPath(assetPath, typeof(Sprite)) as Sprite;

                if (sprite == null)
                {
                    Debug.Log("loading asset at path: " + PSDImportUtility.baseDirectory + image.name);
                }

                pic.sprite = sprite;

                rectTransform.sizeDelta        = new Vector2(image.size.width, image.size.height);
                rectTransform.anchoredPosition = new Vector2(image.position.x, image.position.y);
            }
            else if (image.imageSource == ImageSource.Global)
            {
                UnityEngine.UI.Image pic;
                if (ownObj != null)
                {
                    pic = ownObj.AddMissingComponent <UnityEngine.UI.Image>();
                }
                else
                {
                    pic = PSDImportUtility.LoadAndInstant <UnityEngine.UI.Image>(PSDImporterConst.ASSET_PATH_IMAGE, image.name, parent);
                }

                RectTransform rectTransform = pic.GetComponent <RectTransform>();
                rectTransform.offsetMin = new Vector2(0.5f, 0.5f);
                rectTransform.offsetMax = new Vector2(0.5f, 0.5f);
                rectTransform.anchorMin = new Vector2(0.5f, 0.5f);
                rectTransform.anchorMax = new Vector2(0.5f, 0.5f);

                SetGlobalImage(pic, image);
                pic.name = image.name;
            }
        }
Пример #7
0
    /// <summary>
    /// 添加一个帧动画在GameObject下;
    /// </summary>
    /// <param name="name">动画名</param>
    /// <param name="parent"></param>
    /// <param name="fps">frames per second</param>
    /// <param name="isLoop"></param>
    public UISpriteAnimation AddSpriteAnimation(string name, GameObject parent, int depth = 0, int fps = 30, bool isLoop = true, bool selfDestroy = false)
    {
        if (string.IsNullOrEmpty(name))
        {
            return(null);
        }

        if (parent == null)
        {
            return(null);
        }

        GameObject go = System.Activator.CreateInstance <GameObject>() as GameObject;

        go.SetActive(false);
        go.transform.parent        = parent.transform;
        go.name                    = name;
        go.transform.localPosition = Vector3.zero;
        go.transform.localScale    = Vector3.one;


        UISprite gold = go.AddMissingComponent <UISprite>();

        //gold.atlas = UIAtlasHelper.LoadAtlas("SpriteAnimation/" + name);
        gold.spriteName = "";
        gold.depth      = depth;
        gold.MakePixelPerfect();
        gold.width  = 1;
        gold.height = 1;

        SpriteAniParam param = new SpriteAniParam();

        param.fps           = fps;
        param.isLoop        = isLoop;
        param.isSelfDestroy = selfDestroy;
        param.obj           = go;

        UISpriteAnimation spriteAni = go.AddMissingComponent <UISpriteAnimation>();


        if (!mAniDatas.ContainsKey(name))
        {
            mAniDatas.Add(name, new List <SpriteAniParam>());
            mAniDatas[name].Add(param);

            UIResourceManager.Instance.LoadAnimationRes(name, OnAnimationResLoaded);
        }
        else
        {
            mAniDatas[name].Add(param);
        }

        return(spriteAni);
    }
Пример #8
0
 /// <summary>
 /// 初始化房间内设备
 /// </summary>
 /// <param name="room"></param>
 /// <param name="info"></param>
 /// <returns></returns>
 private DevNode InitRoomDevParent(GameObject copyModel, DepNode dep, GameObject devContainer, DevInfo info)
 {
     copyModel.transform.parent = devContainer.transform;
     if (TypeCodeHelper.IsCamera(info.TypeCode.ToString()))
     {
         CameraDevController roomDev = copyModel.AddMissingComponent <CameraDevController>();
         return(InitDevInfo(roomDev, info, dep));
     }
     else
     {
         RoomDevController roomDev = copyModel.AddMissingComponent <RoomDevController>();
         return(InitDevInfo(roomDev, info, dep));
     }
 }
Пример #9
0
        void IGenerateNode.UpdateNode(BaseInfo baseInfo, GameObject node)
        {
            var info = baseInfo as LabelInfo;

            var text = node.AddMissingComponent <Text>();

            text.text     = info.GetContentWithColor();
            text.fontSize = info.FontSize;

            if (info.OutlineColor != Color.clear)
            {
                var outline = node.AddMissingComponent <Outline>();
                outline.effectColor    = info.OutlineColor;
                outline.effectDistance = info.OutlineSize;
            }

            var font = ResourceManager.GetFontByName(info.Font);

            if (font != null)
            {
                text.font = font;
            }
            else
            {
                Debug.LogError("找不到字体:" + info.Font);
            }

            text.horizontalOverflow = HorizontalWrapMode.Overflow;
            text.verticalOverflow   = VerticalWrapMode.Overflow;
            text.horizontalOverflow = HorizontalWrapMode.Wrap;
            text.verticalOverflow   = VerticalWrapMode.Truncate;

            text.alignment = info.TextAnchor;

            switch (info.TextDirection)
            {
            case LabelInfo.Direction.Horizontal:
                text.rectTransform.sizeDelta = new Vector2(text.preferredWidth, info.FontSize + k_AdjustFontSize);
                break;

            case LabelInfo.Direction.Vertical:
                text.rectTransform.sizeDelta = new Vector2(info.FontSize + k_AdjustFontSize, text.preferredHeight);
                break;

            default:
                throw new NotImplementedException();
            }
        }
    public GameObject CreateCameraUI(GameObject cameraDev, DepNode devDep, DevNode info)
    {
        GameObject targetTagObj = UGUIFollowTarget.CreateTitleTag(cameraDev, Vector3.zero);

        if (UGUIFollowManage.Instance == null)
        {
            Debug.LogError("UGUIFollowManage.Instance==null");
            return(null);
        }
        Camera mainCamera = GetMainCamera();

        if (mainCamera == null)
        {
            return(null);
        }
        string cameraDepName = GetDepNodeId(devDep) + CameraListName;
        DisposeFollowTarget dispostTarget = targetTagObj.AddMissingComponent <DisposeFollowTarget>();

        dispostTarget.SetInfo(cameraDepName);

        //if (!CameraDepNameList.Contains(cameraDepName)) CameraDepNameList.Add(cameraDepName);
        GameObject            name       = UGUIFollowManage.Instance.CreateItem(CameraUIPrefab, targetTagObj, cameraDepName, mainCamera, false, true);
        CameraMonitorFollowUI cameraInfo = name.GetComponent <CameraMonitorFollowUI>();

        if (cameraInfo != null)
        {
            cameraInfo.SetInfo(info);
        }
        if (DevSubsystemManage.IsRoamState || !FunctionSwitchBarManage.Instance.CameraToggle.ison || ObjectAddListManage.IsEditMode)
        {
            UGUIFollowManage.Instance.SetGroupUIbyName(cameraDepName, false);
        }
        return(name);
    }
Пример #11
0
        void IGenerateNode.UpdateNode(BaseInfo baseInfo, GameObject node)
        {
            var info  = baseInfo as TextureInfo;
            var image = node.AddMissingComponent <RawImage>();

            Extensions.UpdateTexture(image, info);
        }
        public static StardardMaterialController Add(GameObject o)
        {
            StardardMaterialController controller = o.AddMissingComponent <StardardMaterialController>();

            controller.AnewGetMaterials();
            return(controller);
        }
Пример #13
0
    private void FlyScore(Vector3 pos)
    {
        if (CameraController.Instance == null)
        {
            return;
        }

        if (WindowManager.current2DCamera == null)
        {
            return;
        }

        Vector3 fromPos = CameraController.Instance.WorldToScreenPoint(pos);

        fromPos.z = 0.0f;
        fromPos   = WindowManager.current2DCamera.ScreenToWorldPoint(fromPos);

        GameObject flyScore = (GameObject)GameObject.Instantiate(mFlySocre);

        flyScore.SetActive(true);
        flyScore.transform.parent        = mScore.transform.parent;
        flyScore.transform.localPosition = Vector3.zero;
        flyScore.transform.localRotation = Quaternion.identity;
        flyScore.transform.localScale    = Vector3.one;

        FlyEffect eff = flyScore.AddMissingComponent <FlyEffect>();

        eff.Play(fromPos, mScore.transform.localPosition, 0.5f);
    }
Пример #14
0
        //private TweenPosition gridTween;

        protected override void Init()
        {
            inlayTips = FindInChild <UILabel>("desc");
            tips      = FindChild("tips");
            GameObject    temp;
            ItemContainer ic;

            for (int i = 1; i < 6; i++)
            {
                temp       = FindChild("item" + i);
                ic         = temp.AddMissingComponent <ItemContainer>();
                ic.onClick = SmeltBtnClick;
                itemList.Add(ic);
            }
            item      = FindChild("content/grid/item1");
            item.name = "0000";
            item.SetActive(false);
            ic         = item.AddMissingComponent <ItemContainer>();
            ic.onClick = SelectOnClick;
            smeltList.Add(ic);
            grid        = FindInChild <UIGrid>("content/grid");
            grid.sorted = true;
            scrollView  = FindInChild <UIScrollView>("content");
            temp        = null;
        }
Пример #15
0
    //设置显示深度
    public void SetDepth(int depth, bool autoPanel)
    {
        mDepth     = depth;
        mAutoPanel = autoPanel;

        if (mView != null)
        {
            UIPanel panel = null;
            if (mAutoPanel)
            {
                panel = mView.AddMissingComponent <UIPanel>();
            }
            else
            {
                panel = mView.GetComponent <UIPanel>();
            }

            if (panel != null)
            {
                panel.depth = depth * WindowManager.DepthMultiply;
            }

            Transform transform = mView.transform;

            for (int i = 0; i < transform.childCount; i++)
            {
                GameObject child = transform.GetChild(i).gameObject;
                if (child != null)
                {
                    WindowManager.Instance.SetChildDepth(child, (depth * WindowManager.DepthMultiply));
                }
            }
        }
    }
Пример #16
0
        void IGenerateNode.UpdateNode(BaseInfo baseInfo, GameObject node)
        {
            var info  = baseInfo as SliceInfo;
            var image = node.AddMissingComponent <Image>();

            image.type = Image.Type.Sliced;

            var nodeArgs = info.NodeArgs;
            var border   = new Vector4();

            if (nodeArgs.Length == 1)
            {
                border.x = border.y = border.z = border.w = int.Parse(nodeArgs[0]);
            }
            else if (nodeArgs.Length == 4)
            {
                border.x = int.Parse(nodeArgs[0]);
                border.y = int.Parse(nodeArgs[3]);
                border.z = int.Parse(nodeArgs[2]);
                border.w = int.Parse(nodeArgs[1]);
            }

            ResourceManager.SetSpriteBorder(PSDConfigManager.Instance.CurrentPsdName, info.ImageName, border);
            Extensions.UpdateImage(image, info);
        }
Пример #17
0
        public void DrawImage(PSImage image, GameObject parent, GameObject ownObj = null)
        {
            UnityEngine.UI.RawImage pic;
            if (ownObj != null)
            {
                pic = ownObj.AddMissingComponent <UnityEngine.UI.RawImage>();
            }
            else
            {
                pic = PSDImportUtility.LoadAndInstant <UnityEngine.UI.RawImage>(PSDImporterConst.ASSET_PATH_RAWIMAGE, image.name, parent);
            }

//             string assetPath = PSDImportUtility.baseDirectory + image.name + PSDImporterConst.PNG_SUFFIX;
//             Texture2D texture = AssetDatabase.LoadAssetAtPath(assetPath, typeof(Texture2D)) as Texture2D;
//             if (texture == null)
//             {
//                 Debug.Log("loading asset at path: " + PSDImportUtility.baseDirectory + image.name);
//             }
            Texture2D texture = image.LoadAssetAtPath <Texture2D>() as Texture2D;

            pic.texture = texture as Texture;
            RectTransform rectTransform = pic.GetComponent <RectTransform>();

            PSDImportUtility.SetAnchorMiddleCenter(rectTransform);
            rectTransform.sizeDelta        = new Vector2(image.size.width, image.size.height);
            rectTransform.anchoredPosition = new Vector2(image.position.x, image.position.y);
        }
Пример #18
0
    public static void Init()
    {
        GameObject obj = new GameObject("ApplicationState");

        GameObject.DontDestroyOnLoad(obj);
        obj.AddMissingComponent <ApplicationState>();
    }
Пример #19
0
        new void Start()
        {
            _renderer = GetComponent <SpriteRenderer>();
            _camera   = transform.parent.GetComponentInChildren <Camera>();

            if (_camera == null)
            {
                GameObject child = new GameObject("Splash_Camera", typeof(Camera));
                _camera = child.AddMissingComponent <Camera>();
            }

            _camera.orthographic       = true;
            _camera.transform.position = new Vector3(0, 0, -1);

            _captureCamera = new CaptureCamera(_camera);

            if (transition.effect != null)
            {
                _processor          = _camera.gameObject.AddMissingComponent <ShaderProcessor>();
                _processor.material = Instantiate(transition.effect) as Material;
                _processor.material.SetTexture("_tex1", _captureCamera.Texture);
                _processor.material.SetFloat("_startTime", 0f);
                _processor.material.SetFloat("_endTime", transition.duration);
                _processor.material.SetFloat("_now", transition.duration);
            }

            base.Start();
        }
Пример #20
0
        public void DrawImage(PSImage image, GameObject parent, GameObject ownObj)
        {
            //UnityEngine.UI.Image pic = AssetDatabase.LoadAssetAtPath(PSDImporterConst.PREFAB_PATH_IMAGE, typeof(UnityEngine.UI.Image)) as UnityEngine.UI.Image;
            //string commonImagePath = PSDImporterConst.Globle_BASE_FOLDER + image.name.Replace(".", "/") + PSDImporterConst.PNG_SUFFIX;
            //Debug.Log("==  CommonImagePath  ====" + commonImagePath);
            //Sprite sprite = AssetDatabase.LoadAssetAtPath(commonImagePath, typeof(Sprite)) as Sprite;

            UnityEngine.UI.Image pic;
            if (ownObj != null)
            {
                pic = ownObj.AddMissingComponent <UnityEngine.UI.Image>();
            }
            else
            {
                pic = PSDImportUtility.LoadAndInstant <UnityEngine.UI.Image>(PSDImporterConst.ASSET_PATH_IMAGE, image.name, parent);
            }

            RectTransform rectTransform = pic.GetComponent <RectTransform>();

            PSDImportUtility.SetAnchorMiddleCenter(rectTransform);
//             string assetPath = PSDImportUtility.baseDirectory + image.name + PSDImporterConst.PNG_SUFFIX;
//             Sprite sprite = AssetDatabase.LoadAssetAtPath(assetPath, typeof(Sprite)) as Sprite;
//             if (sprite == null)
//             {
//                 Debug.Log("loading asset at path: " + PSDImportUtility.baseDirectory + image.name);
//             }
            Sprite sprite = image.LoadAssetAtPath <Sprite>() as Sprite;

            pic.sprite = sprite;
            pic.type   = UnityEngine.UI.Image.Type.Sliced;

            //RectTransform rectTransform = pic.GetComponent<RectTransform>();
            rectTransform.sizeDelta        = new Vector2(image.size.width, image.size.height);
            rectTransform.anchoredPosition = new Vector2(image.position.x, image.position.y);
        }
Пример #21
0
    public void DrawSymbol(int index, BMSymbol symbol, float x, float y)
    {
        if (index < 0)
        {
            return;
        }

        UISprite sprite = null;

        if (index >= mFaces.Count)
        {
            GameObject obj = new GameObject(index.ToString());
            sprite = obj.AddMissingComponent <UISprite>();
            obj.gameObject.transform.parent     = mParant.transform;
            obj.gameObject.transform.localScale = Vector3.one;
            sprite.atlas      = mAtlas;
            sprite.spriteName = symbol.spriteName;
            sprite.width      = 38;
            sprite.height     = 38;
            mFaces.Add(sprite);
        }
        else
        {
            sprite = mFaces[index];
        }
        NGUITools.SetActive(sprite.gameObject, sprite);

        sprite.spriteName = symbol.spriteName;
        sprite.gameObject.transform.localPosition = new Vector3(x + sprite.width / 2.0f, -y - sprite.width / 2.0f);
    }
 /// <summary>
 /// 实例化子类型集合父物体
 /// </summary>
 /// <returns></returns>
 public void CreateChildTypeItemParent(string typeName)
 {
     SetParentsAllHide();
     if (!type_List.ContainsKey(typeName))
     {
         GameObject    o    = new GameObject(typeName);
         RectTransform rect = o.AddMissingComponent <RectTransform>();
         //GameObject o = rect.gameObject;
         o.name = typeName;
         o.transform.SetParent(content);
         o.transform.localPosition = Vector3.zero;
         o.transform.localScale    = Vector3.one;
         //RectTransform rect = o.GetComponent<RectTransform>();
         rect.pivot = new Vector2(0, 1);
         o.SetActive(true);
         VerticalLayoutGroup group = o.AddComponent <VerticalLayoutGroup>();
         group.childForceExpandWidth  = false;
         group.childForceExpandHeight = false;
         group.spacing = 10;
         type_List.Add(typeName, o);
         currentParent      = o;
         currenttoggleGroup = o.AddComponent <ToggleGroup>();
         currenttoggleGroup.allowSwitchOff = true;
     }
     else
     {
         currentParent = type_List[typeName];
         currentParent.SetActive(true);
         currenttoggleGroup = currentParent.GetComponent <ToggleGroup>();
     }
 }
Пример #23
0
    public void SetDepth(GameObject obj, int depth, bool autoAddPanel = false, int offset = 0)
    {
        if (depth <= 0 || depth >= MAX_DEPTH)
        {
            return;
        }
        if (obj != null)
        {
            UIPanel panel = null;
            if (autoAddPanel)
            {
                panel = obj.AddMissingComponent <UIPanel>();
            }
            else
            {
                panel = obj.GetComponent <UIPanel>();
            }

            if (panel != null)
            {
                panel.depth = depth * WindowManager.DepthMultiply + offset;
            }

            Transform transform = obj.transform;

            for (int i = 0; i < transform.childCount; i++)
            {
                GameObject child = transform.GetChild(i).gameObject;
                if (child != null)
                {
                    SetChildDepth(child, (depth * WindowManager.DepthMultiply + offset));
                }
            }
        }
    }
    /// <summary>
    /// 创建设备漂浮UI
    /// </summary>
    /// <param name="sisDev"></param>
    /// <param name="info"></param>
    /// <param name="isShow">是否显示</param>
    public GameObject CreateArchorFollowUI(GameObject archorDev, DepNode devDep, DevNode info)
    {
        GameObject targetTagObj = UGUIFollowTarget.CreateTitleTag(archorDev, Vector3.zero);

        if (UGUIFollowManage.Instance == null)
        {
            Debug.LogError("UGUIFollowManage.Instance==null");
            return(null);
        }
        Camera mainCamera = GetMainCamera();

        if (mainCamera == null)
        {
            return(null);
        }
        string devDepName = GetDepNodeId(devDep) + ArchorDevUIName;
        DisposeFollowTarget dispostTarget = targetTagObj.AddMissingComponent <DisposeFollowTarget>();

        dispostTarget.SetInfo(devDepName);

        //if (!DevDepNameList.Contains(devDepName)) DevDepNameList.Add(devDepName);
        GameObject          name         = UGUIFollowManage.Instance.CreateItem(ArchorDevUIPrefab, targetTagObj, devDepName, mainCamera, false, true);
        UGUIFollowTarget    followTarget = name.GetComponent <UGUIFollowTarget>();
        BaseStationFollowUI archorFollow = name.GetComponent <BaseStationFollowUI>();

        if (archorFollow != null)
        {
            archorFollow.InitInfo(info);
        }
        if (DevSubsystemManage.IsRoamState || !FunctionSwitchBarManage.Instance.ArchorInfoToggle.ison)
        {
            UGUIFollowManage.Instance.SetGroupUIbyName(devDepName, false);
        }
        return(name);
    }
Пример #25
0
    public AudioSource PlayBackgroundMusic(string musicName, bool loop)
    {
        AudioClip bgMusic = GetSound(GameLibrary.Resource_Music + musicName);

        if (bgMusic != null)
        {
            if (mBgMusic == null)
            {
                GameObject musicObj = new GameObject("BgMusic");
                musicObj.transform.parent = transform;
                mBgMusic = musicObj.AddMissingComponent <AudioSource> ();
            }
            if (mBgMusic != null && mBgMusic.enabled && NGUITools.GetActive(mBgMusic.gameObject))
            {
                mBgMusic.clip   = bgMusic;
                mBgMusic.loop   = loop;
                mBgMusic.pitch  = 1f;
                mBgMusic.volume = GameSetting.bgmVolume;
                mBgMusic.mute   = GameSetting.isBgmMute;
                mBgMusic.Play();
                bgmPlaying = musicName;
                return(mBgMusic);
            }
        }
        else
        {
            Debug.Log("@@ can't load music " + musicName);
        }
        return(null);
    }
Пример #26
0
    public static void GenBullet()
    {
        if (!GenerateBullet.CheckObjectType())
        {
            return;
        }
        GameObject selectedObj = Selection.activeObject as GameObject;

        if (selectedObj == null)
        {
            return;
        }
        GameObject bullet = new GameObject(selectedObj.name);

        bullet.transform.position = Vector3.zero;

        GameObject obj = GameObject.Instantiate <GameObject>(selectedObj);

        obj.name = "mesh";
        obj.transform.SetParent(bullet.transform);
        obj.transform.localPosition = Vector3.zero;

        EffectController effectCtrl = bullet.AddMissingComponent <EffectController>();

        effectCtrl.autoRemove = false;

        PrefabUtility.SaveAsPrefabAssetAndConnect(bullet, "Assets/RawResources/Scene/Prefab/Bullet/" + selectedObj.name + ".prefab", InteractionMode.AutomatedAction);

        GameObject.DestroyImmediate(bullet);
    }
Пример #27
0
        private void initView()
        {
            titleLabel = FindInChild <UILabel>("left/titleLabel");

            btn_close         = FindInChild <Button>("left/btn_close");
            btn_oneKeyExtract = FindInChild <Button>("left/BtnOneKeyExtract");
            btn_oneKeyDel     = FindInChild <Button>("left/BtnOneKeyDel");
            btn_del           = FindInChild <Button>("left/BtnDelete");

            noMailListImage   = NGUITools.FindChild(gameObject, "left/noMailList");
            delCheckBox       = NGUITools.FindInChild <UIToggle>(gameObject, "left/Checkbox");
            delCheckBox.value = false;
            delCheckBox.SetActive(false);
            delCheckBox.onChange.Add(new EventDelegate(delCheckBoxOnClick));

            mailViewTP   = FindInChild <TweenPlay>("left");
            scrollView   = FindInChild <UIScrollView>("left/content");
            mailItemGrid = FindInChild <UIGrid>("left/content/grid");
            mailItemGrid.onReposition += scrollView.ResetPosition;

            mailItemContainerList = new List <ItemContainer>();
            mailItem = NGUITools.FindChild(gameObject, "left/content/grid/item_0");
            ItemContainer itemContainer = mailItem.AddMissingComponent <ItemContainer>();

            mailItemContainerList.Add(itemContainer);
            mailItem.SetActive(false);
        }
Пример #28
0
        void IGenerateNode.UpdateNode(BaseInfo baseInfo, GameObject node)
        {
            var info  = baseInfo as SpriteInfo;
            var image = node.AddMissingComponent <Image>();

            image.type = Image.Type.Simple;
            Extensions.UpdateImage(image, info);
        }
Пример #29
0
    public static void SetGraphicRaycaster(GameObject target)
    {
        GraphicRaycaster graphicRaycaster = target.AddMissingComponent <GraphicRaycaster>();

        graphicRaycaster.set_enabled(true);
        graphicRaycaster.set_blockingObjects(0);
        graphicRaycaster.set_ignoreReversedGraphics(true);
    }
    /// <summary>
    /// Get or add an event listener to the specified game object.
    /// </summary>
    public static CameraLosChangedListener Get(GameObject go) {

        Profiler.BeginSample("Proper AddComponent allocation", go);
        CameraLosChangedListener listener = go.AddMissingComponent<CameraLosChangedListener>();
        Profiler.EndSample();

        return listener;
    }
Пример #31
0
        public void DrawImage(PSImage image, GameObject parent, GameObject ownObj = null)
        {
            RectTransform halfRectTrans = parent.GetComponent <RectTransform>();

            PSDImportUtility.SetAnchorMiddleCenter(halfRectTrans);
            halfRectTrans.sizeDelta        = new Vector2(image.size.width, image.size.height);
            halfRectTrans.anchoredPosition = new Vector2(image.position.x, image.position.y);

            UnityEngine.UI.Image leftOrUpSprite;
            if (ownObj != null)
            {
                leftOrUpSprite = ownObj.AddMissingComponent <UnityEngine.UI.Image>();
            }
            else
            {
                leftOrUpSprite = PSDImportUtility.LoadAndInstant <UnityEngine.UI.Image>(PSDImporterConst.ASSET_PATH_IMAGE, image.name, halfRectTrans.gameObject);
            }

            //string assetPath = "";
            //if (image.imageSource == ImageSource.Common || image.imageSource == ImageSource.Custom)
            //{
            //    assetPath = PSDImportUtility.baseDirectory + image.name + PSDImporterConst.PNG_SUFFIX;
            //}
            //else
            //{
            //    assetPath = PSDImporterConst.Globle_BASE_FOLDER + image.name.Replace(".", "/") + PSDImporterConst.PNG_SUFFIX;
            //}

            //Sprite sprite = AssetDatabase.LoadAssetAtPath(assetPath, typeof(Sprite)) as Sprite;
            Sprite sprite = image.LoadAssetAtPath <Sprite>() as Sprite;

//             if (sprite == null)
//             {
//                 Debug.Log("loading asset at path: " + assetPath);
//             }

            leftOrUpSprite.sprite = sprite;
            RectTransform lOrURectTrans = leftOrUpSprite.GetComponent <RectTransform>();

            lOrURectTrans.anchoredPosition = new Vector2(image.position.x, image.position.y);

            //添加镜像组件
            var mirror = lOrURectTrans.gameObject.AddComponent <UGUI.Effects.Mirror>();

            if (image.imageType == ImageType.BottomHalfImage)
            {
                mirror.mirrorType = UGUI.Effects.Mirror.MirrorType.Vertical;
            }
            else if (image.imageType == ImageType.LeftHalfImage)
            {
                mirror.mirrorType = UGUI.Effects.Mirror.MirrorType.Horizontal;
            }
            else if (image.imageType == ImageType.QuarterImage)
            {
                mirror.mirrorType = UGUI.Effects.Mirror.MirrorType.Quarter;
            }
            mirror.SetNativeSize();
        }
Пример #32
0
	// Use this for initialization
	void Start () {

        m_queueDamageNum = new Queue<string>();
        this.m_damagePrefab = AssetManager.Singleton.LoadAsset<GameObject>(FilePath.FONT_PATH + "red.prefab");
//         this.m_damagePrefab = AssetManager.Singleton.LoadAsset<GameObject>(FilePath.PREFAB_PATH + "damageNum.prefab");
        this.m_damageTarget = transform.FindChild("pivot");

        if (null == m_damageTarget)
        {
            Debug.LogWarning("The Object used a damageNum Script but with no pivot!!!!!");
			m_damageTarget = transform;
        }

        m_damange = NGUITools.AddChild(GameObject.FindWithTag("UI"), m_damagePrefab);
		UIFont font = m_damange.GetComponent<UIFont>();
        this.m_damageNum = m_damange.AddMissingComponent<HUDText>();
		m_damageNum.bitmapFont = font;
		UIFollowTarget myFollow = m_damange.AddMissingComponent<UIFollowTarget>();
        myFollow.target = m_damageTarget;
	}
Пример #33
0
    private void InitializeContextMenu(GameObject ctxObjectGO, MenuPositionMode menuPosition) {    // IMPROVE use of strings

        Profiler.BeginSample("Proper AddComponent allocation", _ctxObject);
        _ctxObject = ctxObjectGO.AddMissingComponent<CtxObject>();
        Profiler.EndSample();

        switch (menuPosition) {
            case MenuPositionMode.Over:
                _ctxObject.toOffsetMenu = false;
                _ctxObject.toPositionMenuAtCursor = false;
                break;
            case MenuPositionMode.Offset:
                _ctxObject.toOffsetMenu = true;
                _ctxObject.toPositionMenuAtCursor = false;
                break;
            case MenuPositionMode.AtCursor:
                _ctxObject.toOffsetMenu = false;
                _ctxObject.toPositionMenuAtCursor = true;
                break;
            case MenuPositionMode.None:
            default:
                throw new NotImplementedException(ErrorMessages.UnanticipatedSwitchValue.Inject(menuPosition));
        }

        // NOTE: Cannot set CtxMenu.items from here as CtxMenu.Awake sets defaultItems = items (null) before I can set items programmatically.
        // Accordingly, the work around is 1) to either use the editor to set the items using a CtxMenu dedicated to ships, or 2) have this already dedicated 
        // CtxObject hold the .menuItems that are set programmatically when Show is called. 

        if (_availableSubMenus.Count == Constants.Zero) {
            _availableSubMenus.AddRange(GuiManager.Instance.gameObject.GetSafeComponentsInChildren<CtxMenu>()
                .Where(menu => menu.gameObject.name.Equals("SubMenu")));
            D.Assert(_uniqueSubmenusReqd <= _availableSubMenus.Count);
        }
        if (_generalCtxMenu == null) {
            _generalCtxMenu = GuiManager.Instance.gameObject.GetSafeComponentsInChildren<CtxMenu>()
                .Single(menu => menu.gameObject.name.Equals("GeneralMenu"));
        }

        if (!_generalCtxMenu.items.IsNullOrEmpty()) {
            // There are already populated items in this CtxMenu. In certain corner cases, this can occur when this object initializes itself while
            // another object is still showing the menu. One example: Use a context menu to scuttle a Settlement. The destruction of the settlement
            // immediately changes the system's owner which causes the system's context menu to reinitialize while the Settlement's context menu 
            // has yet to finish hiding. This reinitialization encounters the Settlement's items as they haven't been cleared yet which occurs
            // when finished hiding. Accordingly, we test for this condition by seeing if the menu is still visible.
            if (!_generalCtxMenu.IsVisible) {
                // A hidden CtxMenu should not have any items in its list
                D.Warn("{0}.{1}.CtxMenu.items = {2}.", ctxObjectGO.name, GetType().Name, _generalCtxMenu.items.Select<CtxMenu.Item, string>(i => i.text).Concatenate());
            }
        }
        _ctxObject.contextMenu = _generalCtxMenu;
        // this empty, general purpose CtxMenu will be populated with all menu items held by CtxObject when Show is called
        if (!_ctxObject.menuItems.IsNullOrEmpty()) {
            D.Warn("{0}.{1}.CtxObject.menuItems = {2}.", ctxObjectGO.name, GetType().Name, _ctxObject.menuItems.Select<CtxMenu.Item, string>(i => i.text).Concatenate());
        }
    }