Exemple #1
0
    public override void OnInspectorGUI()
    {
        bl_MiniMapItem script            = (bl_MiniMapItem)target;
        bool           allowSceneObjects = !EditorUtility.IsPersistent(target);

        serializedObject.Update();

        GUILayout.BeginVertical("box");
        script.Target     = EditorGUILayout.ObjectField("Target", script.Target, typeof(Transform), allowSceneObjects) as Transform;
        script.m_IconType = (bl_MiniMapItem.IconType)EditorGUILayout.EnumPopup("Icon Type", script.m_IconType);
        GUILayout.EndVertical();

        GUILayout.BeginVertical("box");
        EditorGUILayout.LabelField("Icon Settings", EditorStyles.toolbarButton);
        GUILayout.Space(4);
        script.Icon        = EditorGUILayout.ObjectField("Icon", script.Icon, typeof(Sprite), allowSceneObjects) as Sprite;
        script.DeathIcon   = EditorGUILayout.ObjectField("Death Icon", script.DeathIcon, typeof(Sprite), allowSceneObjects) as Sprite;
        script.Size        = EditorGUILayout.Slider("Icon Size", script.Size, 1, 100);
        script.RenderDelay = EditorGUILayout.Slider("Start render delay", script.RenderDelay, 0, 3);
        script.IconColor   = EditorGUILayout.ColorField("Icon Color", script.IconColor);
        GUILayout.EndVertical();

        GUILayout.BeginVertical("box");
        EditorGUILayout.LabelField("Circle Area Settings", EditorStyles.toolbarButton);
        script.ShowCircleArea = EditorGUILayout.ToggleLeft("Show Circle Area", script.ShowCircleArea, EditorStyles.toolbarButton);
        if (script.ShowCircleArea)
        {
            script.CircleAreaRadius = EditorGUILayout.Slider("Radius", script.CircleAreaRadius, 1, 100);
            script.CircleAreaColor  = EditorGUILayout.ColorField("Circle Color", script.CircleAreaColor);
        }
        GUILayout.EndVertical();

        GUILayout.BeginVertical("box");
        EditorGUILayout.LabelField("Settings", EditorStyles.toolbarButton);
        script.OffScreen = EditorGUILayout.ToggleLeft("Show icon off screen", script.OffScreen, EditorStyles.toolbarButton);
        if (script.OffScreen)
        {
            script.BorderOffScreen = EditorGUILayout.Slider("Border Off set", script.BorderOffScreen, 0, 5);
            script.OffScreenSize   = EditorGUILayout.Slider("Off screen icon size", script.OffScreenSize, 1, 50);
        }
        script.isInteractable = EditorGUILayout.ToggleLeft("is Interact able", script.isInteractable, EditorStyles.toolbarButton);
        if (script.isInteractable)
        {
            script.InfoItem = EditorGUILayout.TextField("Text", script.InfoItem);
        }
        script.m_Effect            = (ItemEffect)EditorGUILayout.EnumPopup("Effect", script.m_Effect);
        script.DestroyWithObject   = EditorGUILayout.ToggleLeft("Destroy with Object", script.DestroyWithObject, EditorStyles.toolbarButton);
        script.isHoofdPunt         = EditorGUILayout.ToggleLeft("is place holder", script.isHoofdPunt, EditorStyles.toolbarButton);
        script.useCustomIconPrefab = EditorGUILayout.ToggleLeft("Use Custom Icon Prefab", script.useCustomIconPrefab, EditorStyles.toolbarButton);
        if (script.useCustomIconPrefab)
        {
            script.CustomIconPrefab = EditorGUILayout.ObjectField("Custom Icon Prefab", script.CustomIconPrefab, typeof(GameObject), false) as GameObject;
        }
        GUILayout.EndVertical();

        if (GUI.changed)
        {
            EditorUtility.SetDirty(script);
        }
    }
Exemple #2
0
    /// <summary>
    /// Create a new icon without reference in runtime.
    /// see all structure options in bl_MMItemInfo.
    /// </summary>
    public bl_MiniMapItem CreateNewItem(bl_MMItemInfo item)
    {
        if (hasError)
        {
            return(null);
        }

        GameObject     newItem = Instantiate(ItemPrefabSimple, item.Position, Quaternion.identity) as GameObject;
        bl_MiniMapItem mmItem  = newItem.GetComponent <bl_MiniMapItem>();

        if (item.Target != null)
        {
            mmItem.Target = item.Target;
        }
        mmItem.Size           = item.Size;
        mmItem.IconColor      = item.Color;
        mmItem.isInteractable = item.Interactable;
        mmItem.m_Effect       = item.Effect;
        if (item.Sprite != null)
        {
            mmItem.Icon = item.Sprite;
        }

        return(mmItem);
    }
    public static void AddItem()
    {
        GameObject     go = Selection.activeGameObject;
        bl_MiniMapItem m  = go.AddComponent <bl_MiniMapItem>();

        m.Target = go.transform;
    }
Exemple #4
0
 public void RegisterItem(bl_MiniMapItem item)
 {
     if (miniMapItems.Contains(item))
     {
         return;
     }
     miniMapItems.Add(item);
 }
    public UGUIMinimapUtilityWrapper(bl_MiniMapItem minimapItem)
    {
        this._minimapItem = minimapItem;
        // Ensure the icon has been created
        _minimapItem.TriggerCreateIcon();
        IconItem = _minimapItem.GraphicImage.GetComponent<bl_IconItem>();
        IconCanvasGroup = IconItem.GetComponent<CanvasGroup>();

    }
Exemple #6
0
    /// <summary>
    ///
    /// </summary>
    private void Awake()
    {
        AI      = GetComponent <bl_AIShooterAgent>();
        Anim    = GetComponentInChildren <Animator>();
        Pooling = bl_ObjectPooling.Instance;
        bl_PhotonCallbacks.PlayerEnteredRoom += OnPhotonPlayerConnected;
#if UMM
        miniMapItem = GetComponent <bl_MiniMapItem>();
#endif
    }
Exemple #7
0
    /// <summary>
    ///
    /// </summary>
    public void ConfigureWorlTarget()
    {
        if (m_Target == null)
        {
            return;
        }

        bl_MiniMapItem mmi = m_Target.AddComponent <bl_MiniMapItem>();

        mmi.Icon      = PlayerIcon.sprite;
        mmi.IconColor = PlayerIcon.color;
        mmi.Target    = m_Target.transform;
        mmi.Size      = PlayerIcon.rectTransform.sizeDelta.x + 2;
    }
Exemple #8
0
    /// <summary>
    ///
    /// </summary>
    public void ConfigureWorlTarget()
    {
        if (m_Target == null)
        {
            return;
        }

        bl_MiniMapItem mmi = m_Target.AddComponent <bl_MiniMapItem>();

        mmi.GraphicPrefab = ItemPrefab;
        mmi.Icon          = PlayerIcon.sprite;
        mmi.IconColor     = PlayerIcon.color;
        mmi.Target        = m_Target.transform;
    }
Exemple #9
0
#pragma warning disable 0414


    protected override void Awake()
    {
        base.Awake();
        bl_PhotonCallbacks.PlayerEnteredRoom += OnPhotonPlayerConnected;
        if (!PhotonNetwork.IsConnected)
        {
            Destroy(this);
        }
        if (!PhotonNetwork.InRoom)
        {
            return;
        }

        //FirstUpdate = false;
        if (!isMine)
        {
            if (HeatTarget.gameObject.activeSelf == false)
            {
                HeatTarget.gameObject.SetActive(true);
            }
        }

        m_PositionControl = new PhotonTransformViewPositionControl(m_PositionModel);
        m_RotationControl = new PhotonTransformViewRotationControl(m_RotationModel);
        Controller        = GetComponent <bl_FirstPersonController>();
        PDM           = GetComponent <bl_PlayerDamageManager>();
        DrawName      = GetComponent <bl_DrawName>();
        m_CController = GetComponent <CharacterController>();
        FrienlyFire   = (bool)PhotonNetwork.CurrentRoom.CustomProperties[PropertiesKeys.RoomFriendlyFire];
#if UMM
        MiniMapItem = this.GetComponent <bl_MiniMapItem>();
        if (isMine && MiniMapItem != null)
        {
            MiniMapItem.enabled = false;
        }
#endif
    }
Exemple #10
0
    /// <summary>
    ///
    /// </summary>
    public void SetHoofdPunt()
    {
        //Verify is MiniMap Layer Exist in Layer Mask List.
        string layer = LayerMask.LayerToName(MiniMapLayer);

        //If not exist.
        if (string.IsNullOrEmpty(layer))
        {
            Debug.LogError("MiniMap Layer is null, please assign it in the inspector.");
            MiniMapUIRoot.gameObject.SetActive(false);
            hasError = true;
            enabled  = false;
            return;
        }
        if (HoofdPuntPrefab == null || m_MapType == MapType.Global)
        {
            return;
        }

        GameObject     newItem = Instantiate(HoofdPuntPrefab, new Vector3(0, 0, 100), Quaternion.identity) as GameObject;
        bl_MiniMapItem mmItem  = newItem.GetComponent <bl_MiniMapItem>();

        mmItem.Target = newItem.transform;
    }
Exemple #11
0
 public void RemoveItem(bl_MiniMapItem item)
 {
     miniMapItems.Remove(item);
 }
Exemple #12
0
        IEnumerator UpdateIcon()
        {
            WaitForSeconds delay = new WaitForSeconds(1f);

            while (true)
            {
                if (!SceneManager.GetActiveScene().name.Equals("Login") && !SceneManager.GetActiveScene().name.Equals(ClientAPI.Instance.characterSceneName))
                {
                    if (mobQuest != null && node != null)
                    {
                        if (node.PropertyExists("mobType") && (int)node.GetProperty("mobType") == 2)
                        {
                            if (GetComponent <bl_MiniMapItem>() != null)
                            {
                                bl_MiniMapItem item = GetComponent <bl_MiniMapItem>();
                                item.SetIcon(AtavismSettings.Instance.MinimapSettings.minimapBossIcon);
                                item.Size              = AtavismSettings.Instance.MinimapSettings.minimapBossIconSize;
                                item.IconColor         = AtavismSettings.Instance.MinimapSettings.minimapBossIconColor;
                                item.InfoItem          = "";
                                item.DestroyWithObject = true;
                            }
                            else
                            {
                                bl_MiniMapItem item = gameObject.AddComponent <bl_MiniMapItem>();
                                item.Icon              = AtavismSettings.Instance.MinimapSettings.minimapBossIcon;
                                item.Size              = AtavismSettings.Instance.MinimapSettings.minimapBossIconSize;
                                item.IconColor         = AtavismSettings.Instance.MinimapSettings.minimapBossIconColor;
                                item.InfoItem          = "";
                                item.DestroyWithObject = true;
                            }
                        }
                        else if (node.CheckBooleanProperty("questconcludable"))
                        {
                            if (mobQuest.GetComponent <TextMeshPro>() != null)
                            {
                                mobQuest.GetComponent <TextMeshPro>().text = AtavismSettings.Instance.QuestConcludableText;
                            }
                            if (GetComponent <bl_MiniMapItem>() != null)
                            {
                                bl_MiniMapItem item = GetComponent <bl_MiniMapItem>();
                                item.SetIcon(AtavismSettings.Instance.MinimapSettings.minimapQuestConcludableIcon);
                                item.Size              = AtavismSettings.Instance.MinimapSettings.minimapQuestConcludableIconSize;
                                item.IconColor         = AtavismSettings.Instance.MinimapSettings.minimapQuestConcludableIconColor;
                                item.InfoItem          = "";
                                item.DestroyWithObject = true;
                            }
                            else
                            {
                                bl_MiniMapItem item = gameObject.AddComponent <bl_MiniMapItem>();
                                item.Icon              = AtavismSettings.Instance.MinimapSettings.minimapQuestConcludableIcon;
                                item.Size              = AtavismSettings.Instance.MinimapSettings.minimapQuestConcludableIconSize;
                                item.IconColor         = AtavismSettings.Instance.MinimapSettings.minimapQuestConcludableIconColor;
                                item.InfoItem          = "";
                                item.DestroyWithObject = true;
                            }
                        }
                        else if (node.CheckBooleanProperty("questinprogress"))
                        {
                            if (mobQuest.GetComponent <TextMeshPro>() != null)
                            {
                                mobQuest.GetComponent <TextMeshPro>().text = AtavismSettings.Instance.QuestProgressText;
                            }
                            if (GetComponent <bl_MiniMapItem>() != null)
                            {
                                bl_MiniMapItem item = GetComponent <bl_MiniMapItem>();
                                item.SetIcon(AtavismSettings.Instance.MinimapSettings.minimapQuestProgressIcon);
                                item.Size              = AtavismSettings.Instance.MinimapSettings.minimapQuestProgressIconSize;
                                item.IconColor         = AtavismSettings.Instance.MinimapSettings.minimapQuestProgressIconColor;
                                item.InfoItem          = "";
                                item.DestroyWithObject = true;
                            }
                            else
                            {
                                bl_MiniMapItem item = gameObject.AddComponent <bl_MiniMapItem>();
                                item.Icon              = AtavismSettings.Instance.MinimapSettings.minimapQuestProgressIcon;
                                item.Size              = AtavismSettings.Instance.MinimapSettings.minimapQuestProgressIconSize;
                                item.IconColor         = AtavismSettings.Instance.MinimapSettings.minimapQuestProgressIconColor;
                                item.InfoItem          = "";
                                item.DestroyWithObject = true;
                            }
                        }
                        else if (node.CheckBooleanProperty("questavailable"))
                        {
                            if (mobQuest.GetComponent <TextMeshPro>() != null)
                            {
                                mobQuest.GetComponent <TextMeshPro>().text = AtavismSettings.Instance.QuestNewText;
                            }
                            if (GetComponent <bl_MiniMapItem>() != null)
                            {
                                bl_MiniMapItem item = GetComponent <bl_MiniMapItem>();
                                item.Icon              = AtavismSettings.Instance.MinimapSettings.minimapQuestAvailableIcon;
                                item.Size              = AtavismSettings.Instance.MinimapSettings.minimapQuestAvailableIconSize;
                                item.IconColor         = AtavismSettings.Instance.MinimapSettings.minimapQuestAvailableIconColor;
                                item.InfoItem          = "";
                                item.DestroyWithObject = true;
                            }
                            else
                            {
                                bl_MiniMapItem item = gameObject.AddComponent <bl_MiniMapItem>();
                                item.Icon              = AtavismSettings.Instance.MinimapSettings.minimapQuestAvailableIcon;
                                item.Size              = AtavismSettings.Instance.MinimapSettings.minimapQuestAvailableIconSize;
                                item.IconColor         = AtavismSettings.Instance.MinimapSettings.minimapQuestAvailableIconColor;
                                item.InfoItem          = "";
                                item.DestroyWithObject = true;
                            }
                        }
                        else if (node.CheckBooleanProperty("itemstosell"))
                        {
                            if (mobQuest.GetComponent <TextMeshPro>() != null)
                            {
                                mobQuest.GetComponent <TextMeshPro>().text = AtavismSettings.Instance.ShopText;
                            }
                            if (GetComponent <bl_MiniMapItem>() != null)
                            {
                                bl_MiniMapItem item = GetComponent <bl_MiniMapItem>();
                                item.SetIcon(AtavismSettings.Instance.MinimapSettings.minimapShopIcon);
                                item.Size              = AtavismSettings.Instance.MinimapSettings.minimapShopIconSize;
                                item.IconColor         = AtavismSettings.Instance.MinimapSettings.minimapShopIconColor;
                                item.InfoItem          = "";
                                item.DestroyWithObject = true;
                            }
                            else
                            {
                                bl_MiniMapItem item = gameObject.AddComponent <bl_MiniMapItem>();
                                item.Icon              = AtavismSettings.Instance.MinimapSettings.minimapShopIcon;
                                item.Size              = AtavismSettings.Instance.MinimapSettings.minimapShopIconSize;
                                item.IconColor         = AtavismSettings.Instance.MinimapSettings.minimapShopIconColor;
                                item.InfoItem          = "";
                                item.DestroyWithObject = true;
                            }
                        }
                        else if (node.CheckBooleanProperty("bankteller"))
                        {
                            if (mobQuest.GetComponent <TextMeshPro>() != null)
                            {
                                mobQuest.GetComponent <TextMeshPro>().text = AtavismSettings.Instance.BankText;
                            }
                            if (GetComponent <bl_MiniMapItem>() != null)
                            {
                                bl_MiniMapItem item = GetComponent <bl_MiniMapItem>();
                                item.SetIcon(AtavismSettings.Instance.MinimapSettings.minimapBankIcon);
                                item.Size = AtavismSettings.Instance.MinimapSettings.minimapBankIconSize;
                                item.SetColor(AtavismSettings.Instance.MinimapSettings.minimapBankIconColor);
                                item.InfoItem          = "";
                                item.DestroyWithObject = true;
                            }
                            else
                            {
                                bl_MiniMapItem item = gameObject.AddComponent <bl_MiniMapItem>();
                                item.Icon = AtavismSettings.Instance.MinimapSettings.minimapBankIcon;
                                item.Size = AtavismSettings.Instance.MinimapSettings.minimapBankIconSize;
                                item.SetColor(AtavismSettings.Instance.MinimapSettings.minimapBankIconColor);
                                item.InfoItem          = "";
                                item.DestroyWithObject = true;
                            }
                        }
                        else
                        {
                            if (mobQuest.GetComponent <TextMeshPro>() != null)
                            {
                                mobQuest.GetComponent <TextMeshPro>().text = "";
                            }
                            if (!node.Oid.Equals(ClientAPI.GetPlayerOid()))
                            {
                                if (GetComponent <bl_MiniMapItem>() != null)
                                {
                                    bl_MiniMapItem item = GetComponent <bl_MiniMapItem>();
                                    item.SetIcon(AtavismSettings.Instance.MinimapSettings.minimapIcon);
                                    item.Size              = AtavismSettings.Instance.MinimapSettings.minimapIconSize;
                                    item.IconColor         = AtavismSettings.Instance.MinimapSettings.minimapIconColor;
                                    item.DestroyWithObject = true;
                                }
                                else
                                {
                                    bl_MiniMapItem item = gameObject.AddComponent <bl_MiniMapItem>();
                                    item.Icon              = AtavismSettings.Instance.MinimapSettings.minimapIcon;
                                    item.Size              = AtavismSettings.Instance.MinimapSettings.minimapIconSize;
                                    item.IconColor         = AtavismSettings.Instance.MinimapSettings.minimapIconColor;
                                    item.InfoItem          = "";
                                    item.DestroyWithObject = true;
                                }
                            }
                        }
                        if (node.CheckBooleanProperty("deadstate"))
                        {
                            mobName.GetComponent <TextMeshPro>().enabled  = false;
                            mobQuest.GetComponent <TextMeshPro>().enabled = false;
                            if (GetComponent <bl_MiniMapItem>() != null)
                            {
                                bl_MiniMapItem item = GetComponent <bl_MiniMapItem>();
                                item.SetColor(Color.red);
                                item.DestroyWithObject = true;
                            }
                        }
                    }
                }
                UpdateNameDisplay(true);
                yield return(delay);
            }
        }
Exemple #13
0
    private static void Instegrate()
    {
        bl_MiniMapItem mmi = bl_MiniMapData.Instance.PlayerSetupTemplate;
        GameObject     p1  = bl_GameData.Instance.Player1.gameObject;

        MiniMapDocumentation.CreateLayer("MiniMap");
        int layerID = LayerMask.NameToLayer("MiniMap");

        if (p1.GetComponent <bl_MiniMapItem>() == null)
        {
            bl_MiniMapItem mi = p1.AddComponent <bl_MiniMapItem>();
            mi.Target            = p1.transform;
            mi.Icon              = mmi.Icon;
            mi.DeathIcon         = mmi.DeathIcon;
            mi.IconColor         = mmi.IconColor;
            mi.Size              = mmi.Size;
            mi.OffScreenSize     = mmi.OffScreenSize;
            mi.m_IconType        = bl_MiniMapItem.IconType.Player;
            mi.isInteractable    = false;
            mi.OffScreen         = true;
            mi.DestroyWithObject = true;
            bl_PlayerSettings ps = p1.GetComponent <bl_PlayerSettings>();
            int cm = ps.PlayerCamera.cullingMask;
            cm = cm & ~(1 << layerID);
            ps.PlayerCamera.cullingMask = cm;
            EditorUtility.SetDirty(p1);
        }
        p1 = bl_GameData.Instance.Player2.gameObject;
        if (p1.GetComponent <bl_MiniMapItem>() == null)
        {
            bl_MiniMapItem mi = p1.AddComponent <bl_MiniMapItem>();
            mi.Target            = p1.transform;
            mi.Icon              = mmi.Icon;
            mi.DeathIcon         = mmi.DeathIcon;
            mi.IconColor         = mmi.IconColor;
            mi.Size              = mmi.Size;
            mi.OffScreenSize     = mmi.OffScreenSize;
            mi.m_IconType        = bl_MiniMapItem.IconType.Player;
            mi.isInteractable    = false;
            mi.OffScreen         = true;
            mi.DestroyWithObject = true;
            bl_PlayerSettings ps = p1.GetComponent <bl_PlayerSettings>();
            int cm = ps.PlayerCamera.cullingMask;
            cm = cm & ~(1 << layerID);
            ps.PlayerCamera.cullingMask = cm;
            EditorUtility.SetDirty(p1);
        }
        p1 = bl_GameData.Instance.BotTeam1.gameObject;
        if (p1.GetComponent <bl_MiniMapItem>() == null)
        {
            bl_MiniMapItem mi = p1.AddComponent <bl_MiniMapItem>();
            mi.Target            = p1.transform;
            mi.Icon              = mmi.Icon;
            mi.DeathIcon         = mmi.DeathIcon;
            mi.IconColor         = mmi.IconColor;
            mi.Size              = mmi.Size;
            mi.OffScreenSize     = mmi.OffScreenSize;
            mi.m_IconType        = bl_MiniMapItem.IconType.Bot;
            mi.isInteractable    = false;
            mi.OffScreen         = true;
            mi.DestroyWithObject = true;
            EditorUtility.SetDirty(p1);
        }
        p1 = bl_GameData.Instance.BotTeam2.gameObject;
        if (p1.GetComponent <bl_MiniMapItem>() == null)
        {
            bl_MiniMapItem mi = p1.AddComponent <bl_MiniMapItem>();
            mi.Target            = p1.transform;
            mi.Icon              = mmi.Icon;
            mi.DeathIcon         = mmi.DeathIcon;
            mi.IconColor         = mmi.IconColor;
            mi.Size              = mmi.Size;
            mi.OffScreenSize     = mmi.OffScreenSize;
            mi.m_IconType        = bl_MiniMapItem.IconType.Bot;
            mi.isInteractable    = false;
            mi.OffScreen         = true;
            mi.DestroyWithObject = true;
            EditorUtility.SetDirty(p1);
        }

#if PSELECTOR
        foreach (var p in bl_PlayerSelector.Data.AllPlayers)
        {
            if (p.Prefab == null)
            {
                continue;
            }
            p1 = p.Prefab.gameObject;
            if (p1.GetComponent <bl_MiniMapItem>() != null)
            {
                continue;
            }

            bl_MiniMapItem mi = p1.AddComponent <bl_MiniMapItem>();
            mi.Target            = p1.transform;
            mi.Icon              = mmi.Icon;
            mi.DeathIcon         = mmi.DeathIcon;
            mi.IconColor         = mmi.IconColor;
            mi.Size              = mmi.Size;
            mi.OffScreenSize     = mmi.OffScreenSize;
            mi.m_IconType        = bl_MiniMapItem.IconType.Player;
            mi.isInteractable    = false;
            mi.OffScreen         = true;
            mi.DestroyWithObject = true;
            EditorUtility.SetDirty(p1);
        }
#endif

        Debug.Log("Players setup for minimap correctly!");
    }