Inheritance: MonoBehaviour
    private void ClickToMove()
    {
        if (!canMove || EventSystem.current.IsPointerOverGameObject())
        {
            return;
        }

        if (Input.GetKey(KeyCode.Mouse0) && !(Input.GetKey(KeyCode.LeftShift)))
        {
            Ray        ray = cam.ScreenPointToRay(Input.mousePosition);
            RaycastHit hit;
            if (Physics.Raycast(ray, out hit, 100))
            {
                ItemPickup pickup = hit.collider.gameObject.GetComponent <ItemPickup>();
                if (pickup != null)
                {
                    pickup.focused = true;
                }

                if (hit.point.y <= .8)
                {
                    navMeshAgent.destination = hit.point;
                    navMeshAgent.isStopped   = false;
                }
            }
        }
    }
Beispiel #2
0
    public void PutAtGround()
    {
        ItemPickup temp = Instantiate(itemPickup, Player.Instance.transform.position, Quaternion.identity);

        temp.Item = Item;
        Item      = null;
    }
Beispiel #3
0
 public void Awake()
 {
     IsPrefab     = false;
     IsGear       = GetComponent <GearItem>() != null;
     IsAttachment = GetComponent <Attachment>() != null;
     Pickup       = GetComponent <ItemPickup>();
 }
Beispiel #4
0
    public void equipArmor(ItemPickup armorPickup, CharacterInventory charInventory)
    {
        switch (armorPickup.itemDefinition.itemArmorSubType)
        {
        case ItemArmorSubType.Head:
            headArmor          = armorPickup;
            currentResistance += armorPickup.itemDefinition.itemAmount;
            break;

        case ItemArmorSubType.Chest:
            chestArmor         = armorPickup;
            currentResistance += armorPickup.itemDefinition.itemAmount;
            break;

        case ItemArmorSubType.Hand:
            handArmor          = armorPickup;
            currentResistance += armorPickup.itemDefinition.itemAmount;
            break;

        case ItemArmorSubType.Legs:
            legArmor           = armorPickup;
            currentResistance += armorPickup.itemDefinition.itemAmount;
            break;

        case ItemArmorSubType.Boots:
            footArmor          = armorPickup;
            currentResistance += armorPickup.itemDefinition.itemAmount;
            break;
        }
    }
Beispiel #5
0
    public void addToInvo(GameObject obj)
    {
        if (inventory.checkIfWeCanAdd(obj.GetComponent <ItemPickup>().item))
        {
            objPoolManager.ObjectPoolAddition(obj);
            ItemPickup ip = obj.GetComponent <ItemPickup>();
            tempItem      = ip.item;
            tempItemCount = ip.count;
            inventory.Add(tempItem, tempItemCount);
        }
        else
        {
            objPoolManager.DropTable(obj, transform.position);
        }

        /*  tempItemGameobject = obj;
         *
         * Debug.Log(tempItemGameobject.name);
         * if (tempItemCount <= 0)
         * {
         *    Debug.LogError(tempItemGameobject.name + " item pickup count is 0 or less then");
         * }
         *
         *
         *    objPoolManager.ReturnFromPool(obj);*/
    }
 public DespawnMessageHandler(NetworkRelay networkRelay, NetId netId, ItemPickup facade)
 {
     _networkRelay = networkRelay;
     _netId        = netId;
     _facade       = facade;
     PreInitialize();
 }
Beispiel #7
0
 private void HoldItem(ItemPickup itemToHold)
 {
     isHoldingItem = true;
     itemHeld      = itemToHold;
     DeactivateItemColliders();
     itemToHold.gameObject.transform.parent = this.gameObject.transform;
 }
Beispiel #8
0
 public void AttemptItemPickup(ItemPickup itemToHold)
 {
     if (!isHoldingItem)
     {
         HoldItem(itemToHold);
     }
 }
    private void InitSceneState()
    {
        //Destroy items we already have
        ItemPickup itemPickup = GameObject.FindObjectOfType <ItemPickup>();

        if (itemPickup != null)
        {
            if (itemPickup.itemType == ReisenPickupItemType.Newspaper && gameProgress.Player.Newspaper != Assignment.NotAcquired)
            {
                Destroy(itemPickup.gameObject);
            }
            if (itemPickup.itemType == ReisenPickupItemType.Wrench && gameProgress.Player.Wrench != Assignment.NotAcquired)
            {
                Destroy(itemPickup.gameObject);
            }
        }

        //Set camera bounds properly
        if (FindObjectOfType <ReisenSceneManager>() != null)
        {
            CameraMan.instance.CameraBounds = FindObjectOfType <ReisenSceneManager>().CameraBounds;
        }

        //Sanity check
        if (gameProgress.Player.CoughMedicine == Assignment.NotAcquired)
        {
            Debug.Log("invalid state");
            gameProgress.Player.CoughMedicine = Assignment.Inventory;
        }

        SyncNpcState();
    }
Beispiel #10
0
 private void Start()
 {
     dt     = GameObject.FindGameObjectWithTag("IndicatorItemSpawn").GetComponent <DetectChild>();
     cr     = GameObject.FindGameObjectWithTag("Player").GetComponent <CharacterControls>();
     client = GameObject.FindGameObjectWithTag("GameManager").GetComponent <ClientInstance>();
     tp     = GameObject.FindGameObjectWithTag("Item").GetComponent <ItemPickup>();
 }
Beispiel #11
0
    public IEnumerator messageObjet()
    {
        ItemPickup.SetActive(true);
        yield return(new WaitForSeconds(2f));

        ItemPickup.SetActive(false);
    }
Beispiel #12
0
    public void loadEnemies()
    {
        int i = 0;

        string jsonString = PlayerPrefs.GetString("itemSave" + SceneManager.GetActiveScene().name + id.instance.saveIndex);

        tester = JsonUtility.FromJson <itemDataContainer>(jsonString);

        foreach (GameObject obj in items)
        {
            if (tester.pool.Contains(obj.name))
            {
                obj.SetActive(false);
                obj.transform.parent = pooler.transform;
                continue;
            }

            if (tester.alive.Contains(obj.name))
            {
                //   Enemy enemy = obj.GetComponent<Enemy>();
                //   enemy.health = tester.dataHolder[i].enemyHealth;


                obj.transform.position = tester.dataHolder[i].pos;
                obj.GetComponent <ItemPickup>().count = tester.dataHolder[i].counter;
                i++;
            }
            else
            {
                obj.SetActive(false);
            }
        }


        i = 0;
        foreach (string name in tester.objsToInstantiate)
        {
            GameObject enemy = new GameObject();
            enemy.name = tester.objsToInstantiate[i];
            enemy.transform.position = tester.newObjectsData[i].pos;
            SpriteRenderer   sprite = enemy.AddComponent <SpriteRenderer>();
            CircleCollider2D cc     = enemy.AddComponent <CircleCollider2D>();
            cc.isTrigger = true;
            ItemPickup item = enemy.AddComponent <ItemPickup>();
            item.item            = tester.newObjectsData[i].item;
            item.count           = tester.newObjectsData[i].counter;
            item.madeFromScratch = true;
            //   item.item.itemPrefab = Resources.Load<GameObject>("Items/Prefabs/" + item.item.itemType.ToString() + "/" + item.item.name);
            sprite.sprite       = item.item.defaultSprite;
            sprite.sortingOrder = 5;
            item.enabled        = true;
            enemy.tag           = "Items";
            items.Add(enemy);
            enemy.layer = LayerMask.NameToLayer("Item");
            i++;
        }
        tester.pool.Clear();
        pooler.itemCache.Clear();
        pooler.sendit();
    }
Beispiel #13
0
    public override void AddItemModel(ItemPickup obj, ItemData item, GameObject[] hardpoints, GameObject hand)
    {
        GameObject ItemModel = Instantiate(obj.Model);

        ItemModel.transform.SetParent(hand.transform);
        item.SetModelPosRot(ItemModel, hand);

        //ItemModel.SetActive(false);
        if (inventoryListSlotRestriction.Length > 0)
        {
            for (int i = 0; i < inventoryListSlotRestriction.Length; i++)
            {
                if (inventoryListSlotRestriction[i] != null)
                {
                    if (obj.inventoryItem.gameObject == inventoryListSlotRestriction[i].gameObject)
                    {
                        ItemModelList[i] = ItemModel;
                        item.itemModel   = ItemModel;
                        // set parent to hardpoint
                        ItemModel.transform.SetParent(hardpoints[i].transform);
                        // set position & rotation to hardpoint
                        item.SetModelPosRot(ItemModel, hardpoints[i]);
                    }
                }
            }
        }
    }
Beispiel #14
0
 public Blackboard(Survivor s, PathNode[] g)
 {
     this.survivor    = s;
     this.nearestItem = null;
     this.pickupPath  = new LinkedList <PathNode>();
     this.graph       = g;
 }
Beispiel #15
0
    IEnumerator PickupsDistanceCheck()
    {
        if (neariestPickup == null || Vector3.Distance(neariestPickup.transform.position, transform.position) > 2f)
        {
            neariestPickup = null;
            float leastDistance = 2f;

            foreach (ItemPickup pickupItem in pickups.GetComponentsInChildren <ItemPickup>())
            {
                if (pickupItem == null)
                {
                    continue;
                }
                float distance = Vector3.Distance(pickupItem.transform.position, transform.position);
                if (distance < (neariestPickup == null ? leastDistance : leastDistance - .5f))
                {
                    leastDistance  = distance;
                    neariestPickup = pickupItem;
                }
                yield return(null);
            }

            if (neariestPickup != null)
            {
                uiManager.ShowPickupHint(neariestPickup, isUsingMouse);
            }
            else if (uiManager.promptBar.activeSelf)
            {
                uiManager.HidePickupHint();
            }
        }
    }
    public void Setup(Vector2 chunkCoord)
    {
        if (GameManager.instance.server)
        {
            System.Random prng = new System.Random(GameManager.instance.seed + (int)(transform.position.x + transform.position.y));
            var           pool = ObjectPooler.Instance.items;
            foreach (Transform item in itemSpawnPoint)
            {
                int        random  = prng.Next(0, pool.Count);
                GameObject newItem = ObjectPooler.Instance.IndexSpawnFromPool(pool, random);
                newItem.transform.rotation = item.rotation;
                if (newItem.CompareTag("Weapon"))
                {
                    newItem.transform.Rotate(new Vector3(0, 0, 90));
                    newItem.transform.position = item.position + new Vector3(0, 0.05f, 0);
                }
                else
                {
                    newItem.transform.position = item.position;
                }
                newItem.SetActive(true);

                NetworkServer.Spawn(newItem, SpawnManager.instance.itemIds[random]);
                ItemPickup itemPickup = newItem.GetComponent <ItemPickup>();
                ServerTerrainGenerator.instance.GetChunk(chunkCoord).onObserverChangedCallback += itemPickup.EditObservers;
                foreach (NetworkConnection observer in GameManager.GetObservers(chunkCoord))
                {
                    itemPickup.EditObservers(observer, true);
                }
                newItem.transform.SetParent(item);
            }
        }
    }
    private void addWeight()
    {
        if (currentWeight >= max_weight)
        {
            canvasText.SetNotificationText("<color=red> You're to fat ! </color>");
            return;
        }

        GameObject go     = PlayerData.ActiveItem;
        Item       goItem = go.GetComponent <Item>();

        if (goItem == null)
        {
            Debug.LogError("Please add Item script to " + go.name);
        }

        amount = goItem.Calories;

        for (int i = 0; i < materials.Length; i++)
        {
            Material mat = materials[i].material;

            currentWeight  = mat.GetFloat("_Amount");
            currentWeight += amount;
            mat.SetFloat("_Amount", currentWeight);
            PlayerData.PlayerWeight = currentWeight;
        }

        ItemPickup.ItemPickupEvent(PlayerData.ActiveItem);
    }
Beispiel #18
0
 // Start is called before the first frame update
 void Awake()
 {
     animator  = GetComponent <Animator>();
     render    = GetComponent <SpriteRenderer>();
     direction = PlayerMovement.Direction.Down;
     pickup    = GetComponent <ItemPickup>();
 }
 public void changeWeapon(ItemPickup weaponPickup)
 {
     if (!characterDefinition.unEquipWeapon(weaponPickup, charInv, characterWeaponSlot))
     {
         characterDefinition.equipWeapon(weaponPickup, charInv, characterWeaponSlot);
     }
 }
 public void weaponChange(ItemPickup armorPickup)
 {
     if (!characterDefinition.unEquipArmor(armorPickup, charInv))
     {
         characterDefinition.equipArmor(armorPickup, charInv);
     }
 }
Beispiel #21
0
 // Start is called before the first frame update
 void Start()
 {
     player            = GameObject.FindGameObjectWithTag("Player");
     displayTextScript = GetComponent <ItemDisplayText>();
     animChest         = GetComponent <Animator>();
     playerItemScript  = player.GetComponent <ItemPickup>();
 }
Beispiel #22
0
    public void SpawnLoot()
    {
        if (!CheckDrop())
        {
            return;
        }

        //Debug.Log(GameManager.GetItemPools().DetermineRarity() + " is the rarity");

        ItemData item = GameManager.GetItemPools().GetItem(pool);

        for (int i = 0; i < 10; i++)
        {
            if (item == null)
            {
                item = GameManager.GetItemPools().GetItem(pool);
            }
            else
            {
                break;
            }
        }

        if (item == null)
        {
            return;
        }

        GameObject drop       = Resources.Load("Item Prefabs/Item Pickup") as GameObject;
        GameObject activeDrop = Instantiate(drop, new Vector3(transform.position.x, transform.position.y, transform.position.z - 2), Quaternion.identity) as GameObject;

        ItemPickup pickup = activeDrop.GetComponent <ItemPickup>();

        pickup.Initialize(item);
    }
Beispiel #23
0
 public PickupCollisionHandler(IRelay relay, ClientInfo info, NetId netId, ItemPickup facade)
 {
     _relay  = relay;
     _info   = info;
     _netId  = netId;
     _facade = facade;
     PreInitialize();
 }
 void OnTriggerExit(Collider other)    // remove text popping up for itemName.
 {
     if (other.tag == "weapon")
     {
         ItemPickup pickup = other.gameObject.transform.Find("ItemText").GetComponent <ItemPickup>();
         pickup.SetTextActive(false);
     }
 }
 void OnTriggerEnter(Collider other)   // for popping up text for itemName.
 {
     if (other.tag == "weapon")
     {
         ItemPickup pickup = other.gameObject.transform.Find("ItemText").GetComponent <ItemPickup>();
         pickup.SetTextActive(true);
     }
 }
        public void PickItem(ItemPickup itemPickup)
        {
            // target = itemPickup;
            // set destination for CharacterPathfindingController

            // But now, lets simply add it to inventory right away
            inventory.AddItem(itemPickup.GetItem());
        }
Beispiel #27
0
 private void HoldItem(ItemPickup itemToHold)
 {
     isHoldingItem = true;
     itemHeld      = itemToHold;
     Destroy(itemHeld.GetComponent <Rigidbody2D>());
     itemToHold.gameObject.transform.parent = this.gameObject.transform;
     itemHeld.GetComponent <Projectile>().DeactivateItemColliders();
 }
Beispiel #28
0
    protected override void Awake()
    {
        base.Awake();

        ItemPickup itm = GetComponent <ItemPickup>();

        itm.pickupCallback += OnPickUp;
    }
Beispiel #29
0
 /// <summary>
 /// The character has exited a trigger. Check to see if the collider is currently active ItemPickup collider.
 /// </summary>
 /// <param name="other">The trigger collider.</param>
 private void OnTriggerExit(Collider other)
 {
     if (other.Equals(m_ActiveCollider) && !IsActive)
     {
         m_ActiveCollider   = null;
         m_ActiveItemPickup = null;
     }
 }
Beispiel #30
0
    public static ItemPickup Spawn(ItemPickup prefab, Item item, Vector2 position, Quaternion rotation)
    {
        ItemPickup pickup = Instantiate(prefab, position, rotation);

        pickup.Prime(item);

        return(pickup);
    }