// Spawn a item with given itemdata public static void SpawnItem(GameItem gameItem) { if (gameItem.Amount == 0) { return; } GameObject prefab; if (gameItem.resource.models.Count == 0) { prefab = Instance.planeItemPrefab; } else { prefab = gameItem.resource.models[gameItem.variation].gameObject; } GameObject go = Instantiate(prefab, gameItem.GetPosition(), gameItem.GetRotation(), Instance.itemParentTransform); ItemScript it = go.AddComponent <ItemScript>(); it.SetItem(gameItem); if (gameItem.resource.models.Count == 0) { go.transform.position += new Vector3(0, 0.01f, 0); go.GetComponent <MeshRenderer>().material.SetTexture("_MainTex", gameItem.resource.icon.texture); } }