Beispiel #1
0
    public void TurretBuy(DragHandeler Turret)
    {
        if (ShopManager.instance.currentHudId != 0 && ShopManager.instance.currentHudId != 5 && ShopManager.instance.currentHudId != 7 && ShopManager.instance.currentHudId != 9)
        {
            if (ShopManager.instance.spawnList[ShopManager.instance.currentHudId].childCount > 0)
            {
                Destroy(ShopManager.instance.spawnList[ShopManager.instance.currentHudId].GetChild(0).gameObject);
            }

            if (ShopManager.instance.Pay(Turret.cost) == true)
            {
                string     name  = (Turret.structType == Type.TURRET ? "T_" : "") + Turret.colorState.ToString();
                GameObject insta = GameManager.instance.InstantiateUnit(GameManager.instance.units[name], Unit.Side.ALLY, ShopManager.instance.spawnList[ShopManager.instance.currentHudId]);

                if (ShopManager.instance.spawnList[ShopManager.instance.currentHudId].GetComponent <OrderInLayer>() != null)
                {
                    int add = ShopManager.instance.spawnList[ShopManager.instance.currentHudId].GetComponent <OrderInLayer>().orderInLayer;

                    //SpriteRenderer[] sprRenders = insta.GetComponentsInChildren<SpriteRenderer>();
                    //for (int i = 0; i < sprRenders.Length; i++)
                    //{
                    //    sprRenders[i].sortingOrder += add;
                    //}
                    Tools.AddOiL(insta, add);
                }
            }
        }
    }
Beispiel #2
0
    static public event DragEvent OnItemDragStartEvent;                             // Drag start event



    public void OnBeginDrag(PointerEventData eventData)
    {
//        Debug.Log("OnBeginDrag");

        isSpriteChanged = false;
        scanScene();

        draggedItem = this;                                                         // Set as dragged item
        icon        = new GameObject("Icon");                                       // Create object for item's icon
        Image image = icon.AddComponent <Image>();

        image.sprite        = GetComponent <Image>().sprite;
        image.raycastTarget = false;                                                // Disable icon's raycast for correct drop handling
        RectTransform iconRect = icon.GetComponent <RectTransform>();

        // Set icon's dimensions
        iconRect.sizeDelta = new Vector2(GetComponent <RectTransform>().sizeDelta.x,
                                         GetComponent <RectTransform>().sizeDelta.y);
        Canvas canvas = GetComponentInParent <Canvas>();                             // Get parent canvas

        if (canvas != null)
        {
            // Display on top of all GUI (in parent canvas)
            icon.transform.SetParent(canvas.transform, true);                       // Set canvas as parent
            icon.transform.SetAsLastSibling();                                      // Set as last child in canvas transform
        }
        if (OnItemDragStartEvent != null)
        {
            OnItemDragStartEvent(this);                                             // Notify all about item drag start
        }
    }
Beispiel #3
0
 public void BuyUnit(DragHandeler unit)
 {
     if (ShopManager.instance.Pay(unit.cost) == true)
     {
         string name = (unit.structType == Type.TURRET ? "T_" : "") + unit.colorState.ToString();
         GameManager.instance.InstantiateUnit(GameManager.instance.units[name], Unit.Side.ALLY, ShopManager.instance.spawnList[ShopManager.instance.currentHudId]);
     }
 }
Beispiel #4
0
    public void OnDrop(PointerEventData eventData)
    {
        Debug.Log(eventData.pointerDrag.name + " dropped on " + gameObject.name);

        DragHandeler d = eventData.pointerDrag.GetComponent <DragHandeler>();

        if (d != null)
        {
            d.parentToReturnTo = this.transform;
        }
    }
Beispiel #5
0
    public void OnPointerEnter(PointerEventData eventData)
    {
        if (eventData.pointerDrag == null)
        {
            return;
        }

        DragHandeler d = eventData.pointerDrag.GetComponent <DragHandeler>();

        if (d != null)
        {
            d.placeHolderParent = this.transform;
        }
    }
Beispiel #6
0
    public void OnDrop(PointerEventData eventData)
    {
        //	if (!item) {
        //		DragHandeler.photoBeingDragged.transform.SetParent (transform);
        //	}

        DragHandeler d = eventData.pointerDrag.GetComponent <DragHandeler>();

        Debug.Log(eventData.pointerDrag.name + "was dropped" + gameObject.name);
        if (d != null)
        {
            if (type == DragHandeler.Slot1.SLOT)
            {
                d.startParent = this.transform;
            }
        }
    }
Beispiel #7
0
    public void OnEndDrag(PointerEventData eventData)
    {
//        Debug.Log("OnEndDrag");

        if (icon != null)
        {
            Destroy(icon);                                                          // Destroy icon on item drop
        }
//        MakeVisible(true);                                                          // Make item visible in cell
        if (!DestroyOnDropped.DestroyedFlag)
        {
            GameObject go;


            switch (draggedItem.typeOfItem)
            {
            case ElementType.Wire:
                go      = Instantiate(ElementList.TheList.RcElements[0]);
                go.name = "Wire " + id;
                id++;
                break;

            case ElementType.Resistance:
                go      = Instantiate(ElementList.TheList.RcElements[1]);
                go.name = "Resistance " + id;
                id++;
                if (isSpriteChanged)
                {
                    sprtsNew = go.GetComponentsInChildren <SpriteRenderer>();
                    foreach (SpriteRenderer srNew in sprtsNew)
                    {
                        if (srNew.tag == "Direnc")
                        {
                            srNew.sprite = comp_spriteDirenc;
                        }
                    }
                }
                break;

            case ElementType.Battery:
                go      = Instantiate(ElementList.TheList.RcElements [2]);
                go.name = "Battery " + id;
                id++;
                Debug.Log("is changed :" + isSpriteChanged);
                if (isSpriteChanged)
                {
                    sprtsNew = go.GetComponentsInChildren <SpriteRenderer>();
                    foreach (SpriteRenderer srNew in sprtsNew)
                    {
                        if (srNew.tag == "Pil")
                        {
                            srNew.sprite = comp_spritePil;
                        }
                    }
                }
                break;

            case ElementType.Switch:
                go = Instantiate(ElementList.TheList.RcElements[3]);
                break;

            case ElementType.Lamp:
                go      = Instantiate(ElementList.TheList.RcElements[4]);
                go.name = "Lamp " + id;
                id++;
                if (isSpriteChanged)
                {
                    sprtsNew = go.GetComponentsInChildren <SpriteRenderer>();
                    foreach (SpriteRenderer srNew in sprtsNew)
                    {
                        if (srNew.tag == "Lamba")
                        {
                            srNew.sprite = comp_spriteLamba;
                        }
                    }
                }
                break;

            case ElementType.Earthing:
                go = Instantiate(ElementList.TheList.RcElements[5]);
                break;

            case ElementType.Connector:
                go = Instantiate(ElementList.TheList.RcElements[6]);
                break;

            default:
                Debug.LogWarning("ElementType not initialized");
                go = new GameObject();
                break;
            }

            go.transform.position = spawnPosition(go.transform.position.z);
        }
        DestroyOnDropped.DestroyedFlag = false;
        draggedItem = null;
        icon        = null;
    }