Ejemplo n.º 1
0
            static void Prefix(Region __instance, Unit unit, ItemPutInfo info, ItemObject item, bool immobile, HomeRegionType ___regionType, int fromArchive = -1)
            {
                if (!enabled || ___regionType != HomeRegionType.Farm || __instance.IsValidCell(info.cellIndex))
                {
                    return;
                }
                ItemHomeSystemUnitCmpt component = item.GetComponent <ItemHomeSystemUnitCmpt>();
                Area area = Module <UnitFactory> .Self.GetArea(info.cellIndex, info.areaRot, component, component.Rotate > 0, fromArchive);

                Slot slot = new Slot
                {
                    unit        = unit,
                    info        = info,
                    immobile    = immobile,
                    unitObjInfo = new UnitObjInfo(item, area)
                };

                if (outsideUnits.ContainsKey(info.cellIndex))
                {
                    outsideUnits[info.cellIndex] = slot;
                }
                else
                {
                    outsideUnits.Add(info.cellIndex, slot);
                }
            }
            static bool Prefix(PlantingBoxUnit ___cisternUnit)
            {
                if (!enabled || !settings.InstantFertilize)
                {
                    return(true);
                }
                ItemObject curUseItem = Module <Player> .Self.bag.itemBar.GetCurUseItem();

                if (curUseItem != null)
                {
                    ItemNutrientCmpt nutri = curUseItem.GetComponent <ItemNutrientCmpt>();
                    if (nutri != null)
                    {
                        UIStateMgr.Instance.ChangeStateByType(UIStateMgr.StateType.Empty, false, null);
                        UIUtils.ShowNumberSelectMinMax(curUseItem.ItemDataId, 1, Mathf.Min(curUseItem.Number, (int)(((float)___cisternUnit.MaxNutrient - ___cisternUnit.CurrentNutrient) / (float)nutri.Point)), 1, string.Empty, delegate(int o)
                        {
                            Module <Player> .Self.bag.itemBar.RemoveCurItem(o);
                            ___cisternUnit.TryAddNutrient((float)(nutri.Point * o), true);
                            UIStateMgr.Instance.PopState(false);
                        }, delegate()
                        {
                            UIStateMgr.Instance.PopState(false);
                        }, false, 0, string.Empty);
                    }
                }
                return(false);
            }
Ejemplo n.º 3
0
 protected void PickUpItem(ItemObject item)
 {
     item.transform.parent        = WeaponPoint;
     item.transform.localPosition = Vector3.zero;
     item.transform.localRotation = Quaternion.identity;
     item.GetComponent <BoxCollider>().enabled = false;
 }
            static bool Prefix(PlantingBoxUnit ___boxUnit, UnityEngine.Transform ___addNutriParticleParent)
            {
                if (!enabled || !settings.InstantFertilize)
                {
                    return(true);
                }
                ItemObject curUseItem = Module <Player> .Self.bag.itemBar.GetCurUseItem();

                if (curUseItem != null)
                {
                    ItemNutrientCmpt nutri = curUseItem.GetComponent <ItemNutrientCmpt>();
                    if (nutri != null && ___boxUnit.CanAddNutrient(nutri.Point))
                    {
                        Module <Player> .Self.bag.itemBar.RemoveCurItem(1);

                        ___boxUnit.TryAddNutrient((float)nutri.Point, true);
                        GameObject     addNutriParticle    = GameUtils.AddChildToTransform(___addNutriParticleParent, "FX_ApplyFertilizer", false, AssetType.Effect);
                        ParticleSystem componentInChildren = addNutriParticle.GetComponentInChildren <ParticleSystem>();
                        componentInChildren.Play();
                        Singleton <TaskRunner> .Instance.RunDelayTask(componentInChildren.main.duration, false, delegate
                        {
                            UnityEngine.Object.Destroy(addNutriParticle);
                        });
                    }
                }

                return(false);
            }
Ejemplo n.º 5
0
    public void Render()
    {
        item.Slot = this;
        item.transform.position = this.bounds.center;
        var itemSize = item.GetSize();
        var scale    = Math.Min(size.x / itemSize.x, size.y / itemSize.y) * 0.85f;

        item.transform.localScale = item.transform.localScale * scale;

        item.GetComponent <SpriteRenderer>().sortingOrder =
            this.GetComponent <SpriteRenderer>().sortingOrder + 1;
    }
Ejemplo n.º 6
0
    private void DropLoot()
    {
        if (lootDrops.Count <= 0 || lootDrops == null)
        {
            return;
        }

        int dropAmount = Random.Range(1, 5);

        for (int i = 0; i < dropAmount; i++)
        {
            int randomIndex = Random.Range(0, lootDrops.Count);

            int  nextItemSpawnID = lootDrops[randomIndex];
            Item itemToDrop      = GameManager.Instance.ItemDatabase.GetItem(nextItemSpawnID);

            //GameObject lootItemInstace = Instantiate(GameManager.Instance.ItemDatabase.GetSpawnablePrefab(nextItemSpawnID), transform.position, Quaternion.identity);

            ItemObject lootItemInstance = Instantiate(Resources.Load <GameObject>("Prefabs/Items/prefab_item_base"), transform.position, Quaternion.identity).GetComponent <ItemObject>();
            lootItemInstance.SetItem(itemToDrop);
            lootItemInstance.GetComponent <ItemObject>().MoveItemInRandomDirection();
        }
    }
Ejemplo n.º 7
0
    /* <summary>
    *  Load 버튼을 누를 경우 SQLlite에 있는 db값을 바탕으로 아이템을 하나씩하나씩 소환하는 함수
    *  </summary>*/
    /// <param name="_loadItem">        로드할 객체    </param>
    /// <param name="_currentPosition"> 객체가 소환될 위치  </param>
    /// <param name="_currentRotate">   객체가 가질 회전 값 </param>

    public void LoadItem(int _originNumber, Item _loadItem, string _objectName, Vector3 _currentPosition, Vector3 _currentRotate, Vector3 _currentScale)
    {
        GameObject _loadObject = Instantiate(_loadItem.item3d) as GameObject;

        _loadObject.transform.SetParent(_inDoor.transform);
        _loadObject = _loadObject.transform.GetChild(0).gameObject;

        _loadObject.layer = LayerMask.NameToLayer("Default");
        _loadObject.AddComponent <ItemObject>();

        /* 빠른 연결을 위한 캐싱 작업 */
        ItemObject _tmp = _loadObject.GetComponent <ItemObject>();

        Item _tmpItem;

        _tmpItem = new Item(_objectName, _itemListControl._itemDBIndex, _originNumber, _loadObject);

        /* 추가한 ItemObject에 현재 Item의 정보를 담음 */
        _tmp._thisItem = _tmpItem;
        _itemListControl.AddDB(_tmpItem);

        _tmp.GetComponent <ItemObject>()._thisItem._objectNumber = _itemListControl._itemDBIndex;


        // _loadObject.AddComponent<Outline>();
        ///* 윤곽선 안보이게 처리! */
        // _loadObject.GetComponent<Outline>().enabled = false;

        /* 위치 설정 */
        _loadObject.transform.parent.position = _currentPosition;

        /* 회전값 설정 */
        _loadObject.transform.parent.Rotate(_currentRotate);

        /* 크기값 설정*/
        _loadObject.transform.parent.localScale = _currentScale;
    }
Ejemplo n.º 8
0
    void OnGUI()
    {
        if (isInventoryOn)
        {
            if (holdItem != null)            //shows the held item button to the button right of the mouse (reminds user of held item)
            {
                holdItemButton.x = Input.mousePosition.x + 10;
                holdItemButton.y = Screen.height - Input.mousePosition.y + 20;
                GUI.Button(holdItemButton, holdItem.itemInfo.name);

                holdItemLabel.x = Input.mousePosition.x + 10 + (300 - labelSpacing - spacing - spacing - labelWidth);
                holdItemLabel.y = Screen.height - Input.mousePosition.y + 20;
                if (holdItem.itemInfo.GetType() == typeof(Container))
                {
                    GUI.Label(holdItemLabel, holdItem.itemInfo.volume + "/" + ((Container)holdItem.itemInfo).holdVolume);
                }
                else
                {
                    GUI.Label(holdItemLabel, holdItem.itemInfo.volume.ToString());
                }
            }

            //used to drop the item out into the real game world
            if (holdItem != null && Event.current.type == EventType.MouseDown &&            //canDropItem() &&
                !inventoryRect.Contains(Event.current.mousePosition) && Event.current.button == 0)
            {
                if (st.workbench == null)
                {
                    Debug.Log("dropping item");
                    if (holdItem != curArmor && holdItem != curWeapon)                               //if the item isn't an equip (inside the main bag)
                    {
                        removeFill(holdItem, holdItem.transform.parent.GetComponent <ItemObject>()); //remove the weight and volume from the old bags
                        getItemBagList(holdItem).RemoveAt(getBagIndex(holdItem));                    //remove the object from its old bag
                    }
                    else if (holdItem == curWeapon)
                    {
                        curWeapon = weaponSlot;
                    }
                    else if (holdItem == curArmor)
                    {
                        curArmor = armorSlot;
                    }

                    Debug.Log("dropping hold item");
                    if (holdItem.GetComponent <Rigidbody>().isKinematic)
                    {
                        holdItem.GetComponent <Rigidbody>().isKinematic = false;
                    }
                    dropHoldItem();                                                                 //drop the held item
                }
                else if (st.workbench != null && holdItem.itemInfo.GetType() == typeof(Consumable)) //if using the work bench, drop consumable on table
                {
                    RaycastHit hitobj;
                    Ray        ray = GetComponent <Camera>().ScreenPointToRay(Input.mousePosition);
                    Vector3    placePoint;
                    if (Physics.Raycast(ray, out hitobj))
                    {
                        removeFill(holdItem, holdItem.transform.parent.GetComponent <ItemObject>());     //remove the weight and volume from the old bags
                        getItemBagList(holdItem).RemoveAt(getBagIndex(holdItem));                        //remove the object from its old bag

                        placePoint = hitobj.point;

                        holdItem.gameObject.SetActive(true);
                        holdItem.transform.position = placePoint;
                        holdItem.transform.rotation = Quaternion.identity;
                        holdItem.GetComponent <Rigidbody>().isKinematic = true;
                        holdItem.transform.parent = null;
                        holdItem = null;
                    }
                }
            }

            if (st.workbench != null)
            {
                if (GUI.Button(new Rect(Screen.width - 100, 0, 100, 24), "Assemble"))
                {
                    string createObjectName = st.workbench.GetComponent <Workbench>().assemble();
                    if (createObjectName != "")
                    {
                        GameObject newObject = (GameObject)Instantiate(Resources.Load(createObjectName),
                                                                       st.workbench.GetComponent <Workbench> ().dropCraft.position,
                                                                       st.workbench.GetComponent <Workbench> ().dropCraft.rotation);
                        newObject.name = createObjectName;
                    }
                    //old broken code
//					else
//					{
//						GameObject newObject = (GameObject)Instantiate (Resources.Load (createObjectName),
//								st.workbench.GetComponent<Workbench> ().dropCraft.position,
//								st.workbench.GetComponent<Workbench> ().dropCraft.rotation);
//						newObject.name = createObjectName;
//					}
                }
                GUI.Box(new Rect(Screen.width - 100, 28, 100, st.workbench.GetComponent <Workbench>().craftList.Count *28), "");
                for (int i = 0; i < st.workbench.GetComponent <Workbench>().craftList.Count; i++)
                {
                    GUI.Label(new Rect(Screen.width - 100 + 4, i * 28 + 28, 92, 24), st.workbench.GetComponent <Workbench>().craftList[i].name);
                }
            }

            //create inventory window here
            inventoryRect = ClampToScreen(GUI.Window(0, inventoryRect, InventoryWindow, "Inventory"));
        }
    }
Ejemplo n.º 9
0
    public void LoadHuman(int _originNumber, Item _loadItem, string _objectName, Vector3 _currentPosition, Vector3 _currentRotate, Vector3 _currentScale, int _humanNumber)
    {
        GameObject _loadObject = Instantiate(_loadItem.item3d) as GameObject;

        _loadObject.transform.SetParent(_inDoor.transform);
        _loadObject = _loadObject.transform.GetChild(0).gameObject;

        _loadObject.layer = LayerMask.NameToLayer("Default");
        _loadObject.AddComponent <ItemObject>();

        /* 빠른 연결을 위한 캐싱 작업 */
        ItemObject _tmp = _loadObject.GetComponent <ItemObject>();

        Item _tmpItem;

        _tmpItem = new Item(_objectName, _itemListControl._itemDBIndex, _originNumber, _loadObject);
        _tmpItem._loadHumanNumber = _humanNumber;
        /* 추가한 ItemObject에 현재 Item의 정보를 담음 */
        _tmp._thisItem          = _tmpItem;
        _tmp._thisItem.itemName = _objectName;
        _tmp._humanInitPosition = _currentPosition;
        _tmp._humanInitRotation = _currentRotate;

        _itemListControl.AddHuman(_tmpItem);

        _tmp.GetComponent <ItemObject>()._thisItem._objectNumber = _itemListControl._humanDBIndex;
        _tmp.GetComponent <ItemObject>()._thisHuman = new HumanItem("Idle", _itemListControl._humanDBIndex - 1);

        // _loadObject.AddComponent<Outline>();
        ///* 윤곽선 안보이게 처리! */
        // _loadObject.GetComponent<Outline>().enabled = false;

        /* 위치 설정 */
        _loadObject.transform.parent.position = _currentPosition;



        /* 회전값 설정 */
        _loadObject.transform.Rotate(_currentRotate);

        /* 크기값 설정*/
        _loadObject.transform.parent.localScale = _currentScale;

        /* 스케줄러 생성 파트*/
        int _objectNumber = _itemListControl._humanDBIndex;
        //스몰바 생성 및 설정
        GameObject _smallBar = Instantiate(Resources.Load("Prefab/SmallScheduler_Sample")) as GameObject;

        if (_originNumber == 2001)                                                                                                                     //클릭했을때의 오브젝트의 오리진 넘버로 구별
        {
            _smallBar.name = "Man" + (_objectNumber);                                                                                                  //스몰바의 이름 설정
            _smallBar.transform.GetChild(0).transform.GetChild(0).transform.GetChild(0).GetComponent <Text>().text = "" + _objectName + _objectNumber; //스몰바의 텍스트설정
        }
        else if (_originNumber == 2000)
        {
            _smallBar.name = "Daughter" + (_objectNumber);                                                                                              //스몰바의 이름 설정
            _smallBar.transform.GetChild(0).transform.GetChild(0).transform.GetChild(0).GetComponent <Text>().text = "" + _objectName + _objectNumber;; //스몰바의 텍스트설정
        }
        else if (_originNumber == 2002)
        {
            _smallBar.name = "Woman" + (_objectNumber);                                                                                                 //스몰바의 이름 설정
            _smallBar.transform.GetChild(0).transform.GetChild(0).transform.GetChild(0).GetComponent <Text>().text = "" + _objectName + _objectNumber;; //스몰바의 텍스트설정
        }
        else if (_originNumber == 2003)
        {
            _smallBar.name = "Woongin" + (_objectNumber);                                                                                               //스몰바의 이름 설정
            _smallBar.transform.GetChild(0).transform.GetChild(0).transform.GetChild(0).GetComponent <Text>().text = "" + _objectName + _objectNumber;; //스몰바의 텍스트설정
        }
        //content 설정
        GameObject _smallContent;

        _smallContent = GameObject.Find("Canvas").transform.GetChild(2).transform.GetChild(4).transform.GetChild(1).transform.GetChild(0).transform.GetChild(0).transform.GetChild(1).gameObject;

        _smallBar.transform.SetParent(_smallContent.transform);                     //small Bar의 부모설정
        _smallBar.transform.localScale = new Vector3(1, 1, 1);                      //크기 지정
        //small Bar의 정보
        _smallBar.GetComponent <SmallSchedulerBar>()._objectNumber = _objectNumber; //오브젝트넘버를 small bar에 저장
        _smallBar.GetComponent <SmallSchedulerBar>()._originNumber = _originNumber; //오리진 정보또한 저장
        _smallBar.GetComponent <SmallSchedulerBar>()._humanNumber  = _humanNumber;
        _smallBar.GetComponent <SmallSchedulerBar>()._object       = _tmpItem;

        //빅바 생성 및 설정
        GameObject _bigBar = Instantiate(Resources.Load("Prefab/BigScheduler_Sample")) as GameObject;

        if (_originNumber == 2001)                                                                                              //클릭했을때의 오브젝트의 오리진 넘버로 구별
        {
            _bigBar.name = "Man" + (_objectNumber);                                                                             //빅바의 이름 설정
            _bigBar.transform.GetChild(0).transform.GetChild(0).GetComponent <Text>().text = "" + _objectName + _objectNumber;; //빅바의 텍스트설정
        }
        else if (_originNumber == 2000)
        {
            _bigBar.name = "Daughter" + (_objectNumber);                                                                        //빅바의 이름 설정
            _bigBar.transform.GetChild(0).transform.GetChild(0).GetComponent <Text>().text = "" + _objectName + _objectNumber;; //빅바의 텍스트설정
        }
        else if (_originNumber == 2002)
        {
            _bigBar.name = "Woman" + (_objectNumber);                                                                           //빅바의 이름 설정
            _bigBar.transform.GetChild(0).transform.GetChild(0).GetComponent <Text>().text = "" + _objectName + _objectNumber;; //빅바의 텍스트설정
        }
        else
        {
            _bigBar.name = "Woongin" + (_objectNumber);                                                                         //빅바의 이름 설정
            _bigBar.transform.GetChild(0).transform.GetChild(0).GetComponent <Text>().text = "" + _objectName + _objectNumber;; //빅바의 텍스트설정
        }
        //content 설정
        GameObject _bigContent;

        _bigContent = GameObject.Find("Canvas").transform.GetChild(2).transform.GetChild(4).transform.GetChild(1).transform.GetChild(0).transform.GetChild(0).transform.GetChild(0).gameObject;

        _bigBar.transform.SetParent(_bigContent.transform);                     //big Bar의 부모설정
        _bigBar.transform.localScale = new Vector3(1, 1, 1);                    //크기 지정
        //big Bar의 정보
        _bigBar.GetComponent <BigSchedulerBar>()._objectNumber = _objectNumber; //오브젝트넘버를 small bar에 저장
        _bigBar.GetComponent <BigSchedulerBar>()._originNumber = _originNumber; //오리진 정보또한 저장
        _bigBar.GetComponent <BigSchedulerBar>()._humanNumber  = _humanNumber;  //휴먼넘버를 저장
        //생성된 빅바를 스몰바에 저장
        _smallBar.GetComponent <SmallSchedulerBar>()._bigScheduler = _bigBar;
        //big Bar는 우선 안보이게 처리
        _bigBar.SetActive(false);
        _itemListControl._dataBaseBigBar.Add(_bigBar);
        _itemListControl._dataBaseSmallbar.Add(_smallBar);
    }
Ejemplo n.º 10
0
    /* 놓은 장소에 물체 생성하는 과정*/
    private void ReleaseIfClicked()
    {
        if (Input.GetMouseButtonDown(0))
        {
            /* 마우스 작업상태 -> false 로 전환해준다! */
            UIController._isMouseUsed = false;

            /* 벽 밖에 포인터를 갖다대면, 그 위치로 조정 못하도록 */
            /* 내부에서만 */
            if (_inDoor.activeSelf == true)
            {
                _clickedItemSize = _placableGameObject.transform.GetChild(0).GetComponent <Collider>().bounds.size;
                if (point.x + _clickedItemSize.x / 2 > _vec3.x)
                {
                    _placableGameObject.transform.position = new Vector3(_vec3.x - _clickedItemSize.x / 2, _placableGameObject.transform.position.y, _placableGameObject.transform.position.z);
                }
                if (point.x - _clickedItemSize.x / 2 < -_vec3.x)
                {
                    _placableGameObject.transform.position = new Vector3(-_vec3.x + _clickedItemSize.x / 2, _placableGameObject.transform.position.y, _placableGameObject.transform.position.z);
                }
                if (point.z + _clickedItemSize.z / 2 > _vec3.z)
                {
                    _placableGameObject.transform.position = new Vector3(_placableGameObject.transform.position.x, _placableGameObject.transform.position.y, _vec3.z - _clickedItemSize.z / 2);
                }
            }

            /* 본체의 위치 - 중심점을 만들기 위하여 사용한 객체가 아니라 실제 객체*/
            _placableGameObject = _placableGameObject.transform.GetChild(0).gameObject;

            /* 설치한 오브젝트의 layer를 Default로 변경, 이걸 해야 클릭을 하든 뭘 하든 할 수가 있음 */
            _placableGameObject.layer = LayerMask.NameToLayer("Default");

            /* 재조정하는 물체인지 아닌지 판별 */
            /* 새로 위치를 잡는 아이템인 경우 */
            if (!_reLocateSwi)
            {
                /*생성된 오브젝트에 ItemObject라는 스크립트 추가*/
                _placableGameObject.AddComponent <ItemObject>();

                /* 빠른 연결을 위한 캐싱 작업 */
                ItemObject _tmp = _placableGameObject.GetComponent <ItemObject>();

                /* 만들어진 객체가 사람 일때 -> HumanItem.cs 추가 생성 */
                if (_placableItem._originNumber >= 2000 && _placableItem._originNumber < 3000)
                {
                    /* _tmpItem을 새로 선언해 주고 연결해준다. */
                    HumanItem _tmpHuman = new HumanItem("Idle", _itemListControl._humanDBIndex);

                    /* 추가한 ItemObject에 현재 Item의 정보를 담음 */
                    _tmp._thisHuman = _tmpHuman;

                    /* 생성한 사람 객체를 ItemListControl.cs에 있는 HumanList에 저장. ItemListControl.cs 의 _dataBaseHumanItem 변수와 관련 */
                    _itemListControl.AddHumanDB(_tmpHuman);
                }

                /* _tmpItem을 새로 선언해 주고 연결해준다. */
                /*사람객체를 생성할때는 오브젝트 넘버를 사람넘버에서 따와서 넣어준다.*/
                Item _tmpItem;
                if (_placableItem._originNumber >= 2000 && _placableItem._originNumber < 2005)
                {
                    _tmpItem = new Item(_placableItem.itemName, _itemListControl._humanDBIndex, _placableItem._originNumber, _placableGameObject);
                }
                else
                {
                    _tmpItem = new Item(_placableItem.itemName, _itemListControl._itemDBIndex, _placableItem._originNumber, _placableGameObject);
                }


                /* 추가한 ItemObject에 현재 Item의 정보를 담음 */
                _tmp._thisItem = _tmpItem;

                if (_placableItem._originNumber < 2000 || _placableItem._originNumber > 2005) //사람이 아닐때
                {
                    /* 생성한 객체를 ItemListControl.cs에 있는 List에 저장. ItemListControl.cs 의 _dataBaseItem 변수와 관련 */
                    _itemListControl.AddDB(_tmpItem);
                }
                else
                {
                    _itemListControl.AddHuman(_tmpItem);

                    /*
                     *   History
                     *   date   : 2020-02-10
                     *   author : skyde47
                     *   desc : HumanItem 갱신
                     */

                    HumanItem _tmpHuman = _tmp._thisHuman;
                    Transform _quick    = _tmpItem.item3d.transform.Find("shirt");
                    //shirt의 자식 객체를 탐색하며 활성화되어있는 객체 저장
                    for (int i = 0; i < _quick.childCount; i++)
                    {
                        if (_quick.GetChild(i).gameObject.activeSelf)
                        {
                            _tmpHuman._shirt     = _quick.GetChild(i).gameObject;
                            _tmpHuman._shirtName = _tmpHuman._shirt.name;
                        }
                    }
                    //pant의 자식 객체를 탐색하며 활성화되어있는 객체 저장
                    _quick = _tmpItem.item3d.transform.Find("pant");
                    for (int i = 0; i < _quick.childCount; i++)
                    {
                        if (_quick.GetChild(i).gameObject.activeSelf)
                        {
                            _tmpHuman._pant     = _quick.GetChild(i).gameObject;
                            _tmpHuman._pantName = _tmpHuman._pant.name;
                        }
                    }
                    //shoes의 자식 객체를 탐색하며 활성화되어있는 객체 저장
                    if (_tmpItem.item3d.transform.Find("shoes").GetChild(0).gameObject.activeSelf) //현재 발 상태가 normal
                    {
                        _quick = _tmpItem.item3d.transform.Find("shoes");
                        for (int i = 0; i < _quick.GetChild(0).childCount; i++)
                        {
                            //normal의 자식객체를 탐색하며 활성화된 객체의 경우 저장
                            if (_quick.GetChild(0).GetChild(i).gameObject.activeSelf)
                            {
                                _tmpHuman._shoes     = _quick.GetChild(0).GetChild(i).gameObject;
                                _tmpHuman._shoesName = _tmpHuman._shoes.name;
                            }
                        }
                    }
                    else //abnormal
                    {
                        _quick = _tmpItem.item3d.transform.Find("shoes");
                        for (int i = 0; i < _quick.GetChild(1).childCount; i++)
                        {
                            //normal의 자식객체를 탐색하며 활성화된 객체의 경우 저장
                            if (_quick.GetChild(1).GetChild(i).gameObject.activeSelf)
                            {
                                _tmpHuman._shoes     = _quick.GetChild(1).GetChild(i).gameObject;
                                _tmpHuman._shoesName = _tmpHuman._shoes.name;
                            }
                        }
                    }
                }


                /* Item의 생성번호를 부여 */
                if (_placableItem._originNumber >= 2000 && _placableItem._originNumber < 2005)
                {
                    _tmp.GetComponent <ItemObject>()._thisItem._objectNumber = _itemListControl._humanDBIndex;
                    HistoryController.pushObjectCreateHist(_placableGameObject, _placableItem._originNumber, _itemListControl._humanDBIndex);
                }
                else
                {
                    _tmp.GetComponent <ItemObject>()._thisItem._objectNumber = _itemListControl._itemDBIndex;
                    HistoryController.pushObjectCreateHist(_placableGameObject, _placableItem._originNumber, _itemListControl._itemDBIndex);
                }


                /* 윤곽선 안보이게 처리! */
                //_placableGameObject.GetComponent<Outline>().enabled = false;

                if (_placableItem._originNumber >= 2000 && _placableItem._originNumber < 2005)
                {
                    /* 스몰 스케줄러에 각 Item 값을 채워줌. */
                    Item      temp     = _tmp.GetComponent <ItemObject>()._thisItem;
                    Transform smallBar = _smallScheduler.transform.Find(temp.itemName + temp._objectNumber);
                    smallBar.GetComponent <SmallSchedulerBar>()._object = _tmpItem;
                }
            }
            /* 위치를 재조정하는 아이템인 경우 */
            else
            {
                _reLocateSwi = false;

                /* 윤곽선 보이게 처리! -> 위치 재조정 해도 클릭된 아이템은 여전하므로 */
                //_placableGameObject.GetComponent<Outline>().enabled = true;

                /* Sprite 이미지가 해당 위치로 이동하도록 설정 */
                _SpriteObject.transform.position = new Vector3(Input.mousePosition.x, Input.mousePosition.y + 30.0f, Input.mousePosition.z);

                _SpriteObject.SetActive(true);

                ///* 위치 설정 하는 객체가 사람일 경우 줌 인 필요! */
                //if (_placableItem._originNumber >= 2000 && _placableItem._originNumber < 3000)
                //{
                //    Static.STATIC.cameraMoveAroun.CameraZoomIn(_placableGameObject.transform.position);
                //}
            }

            _placableGameObject.GetComponent <ItemObject>()._humanInitPosition = point;
            _placableGameObject.GetComponent <ItemObject>()._humanInitRotation = _placableGameObject.transform.rotation.eulerAngles;

            /* 위치 조정을 마쳤으면 이제 null 선언으로 끊어준다. */
            _placableGameObject = null;
            _placableItem       = null;
        }

        /*
         * History
         * date   : 2018-11-26
         * author : Lugup
         * 내  용 : Item Relocate... 하는 스크립트였으나
         * 실행시 : 클릭한 객체의 위치를 기존의 위치에서 새로운 위치로 조정함
         * 취소시 : 클릭했던 객체의 위치를 새로운 위치에서 기존의 위치로 조정
         *
         */
    }