I already tried to do this but when ever I pick up an item it takes it to only the second slot!
Inventory script:
using UnityEngine;
using System.Collections;
using System.Collections.Generic;
public class Inventory : MonoBehaviour {
private Rect windowRect = new Rect(300, 100, 400, 400);
static public Dictionary inventorynamesDictionary = new Dictionary()
{
{0, string.Empty},
{1, string.Empty},
{2, string.Empty},
{3, string.Empty},
{4, string.Empty},
{5, string.Empty},
{6, string.Empty},
{7, string.Empty},
{8, string.Empty},
{9, string.Empty}
};
public static bool FirstSlot = false;
public static bool SecondSlot = false;
public static bool ThirdSlot = false;
public static bool FourthSlot = false;
public static bool FifthSlot = false;
public static bool SixthSlot = false;
ItemClass itemObject = new ItemClass();
void Start (){
}
void Update () {
}
void OnGUI() {
if(Input.GetKey (KeyCode.Tab))
windowRect = GUI.Window(0, windowRect, DoMyWindow, "Inventory");
}
void DoMyWindow(int windowID) {
GUILayout.BeginArea (new Rect (0, 50, 400, 400));
GUILayout.BeginHorizontal ();
if (GUILayout.Button (inventorynamesDictionary [0], GUILayout.Height (50))) {
if(inventorynamesDictionary[0] == itemObject.cm9Item.name)
{
Debug.Log("Equpuiped weapon!!");
}
}
GUILayout.Button (inventorynamesDictionary [1], GUILayout.Height (50));
GUILayout.Button (inventorynamesDictionary [2], GUILayout.Height (50));
GUILayout.EndHorizontal ();
GUILayout.BeginHorizontal ();
GUILayout.Button (inventorynamesDictionary [3], GUILayout.Height (50));
GUILayout.Button (inventorynamesDictionary [4], GUILayout.Height (50));
GUILayout.Button (inventorynamesDictionary [5], GUILayout.Height (50));
GUILayout.EndHorizontal ();
GUILayout.EndArea ();
}
}
PickUpgun script
using UnityEngine;
using System.Collections;
using System.Collections.Generic;
public class PickUpGun : MonoBehaviour {
public GameObject Gun;
public GameObject Gun1;
public bool GotPistol;
private Ray mouseRay;
private RaycastHit rayHit;
private Dictionary lootDictionary = new Dictionary ()
{{0, string.Empty},
{1, string.Empty},
{2, string.Empty},
{3, string.Empty},
{4, string.Empty},
{5, string.Empty}
};
ItemClass itemObject = new ItemClass();
public GameObject objectwithInventory;
Inventory Inventory ;
// Use this for initialization
void Start () {
lootDictionary [0] = itemObject.cm9Item.name;
lootDictionary [1] = itemObject.breadItem.name;
lootDictionary [2] = itemObject.painkillersItem.name;
Inventory = objectwithInventory.GetComponent();
}
// Update is called once per frame
void Update () {
mouseRay = Camera.main.ScreenPointToRay (new Vector3 (Screen.width / 2, Screen.height / 2,0));
if (Input.GetKeyDown (KeyCode.E))
{
Physics.Raycast(mouseRay, out rayHit);
if(rayHit.collider.transform.tag == "cm9")
{
Destroy(Gun);
GotPistol = true;
if(GotPistol = true){
if(Inventory.FirstSlot = false){
Inventory.inventorynamesDictionary [0] = lootDictionary[0];
Inventory.FirstSlot = true;
Debug.Log ("First Slot is now full");
}
if(Inventory.FirstSlot = true)
{
Inventory.inventorynamesDictionary [1] = lootDictionary[0];
Inventory.SecondSlot = true;
}
}
}
}
}
}
↧