public override void OnLoad() { PLAYER = GameObject.Find("PLAYER"); foodInteraction = PLAYER.AddComponent <InteractionRaycast>(); PLAYER.AddComponent <PlayerFoodSystems>(); GUIuse = PlayMakerGlobals.Instance.Variables.GetFsmBool("GUIuse"); //delet zone over AssetBundle ab = LoadAssets.LoadBundle(this, "foodoverhaul.unity3d"); GameObject peas = ab.LoadAsset("canned pea soup.prefab") as GameObject; GameObject fishsticc = ab.LoadAsset("fish sticks.prefab") as GameObject; GameObject colabruh = ab.LoadAsset("cola.prefab") as GameObject; GameObject sodabruh = ab.LoadAsset("soda.prefab") as GameObject; ab.Unload(false); GameObject peasbruh = GameObject.Instantiate(peas); LoadAssets.MakeGameObjectPickable(peasbruh); GameObject fishsticks = GameObject.Instantiate(fishsticc); LoadAssets.MakeGameObjectPickable(fishsticks); GameObject cola = GameObject.Instantiate(colabruh); LoadAssets.MakeGameObjectPickable(cola); GameObject soda = GameObject.Instantiate(sodabruh); LoadAssets.MakeGameObjectPickable(soda); }
void ThrowEvent() { transform.SetParent(null); LoadAssets.MakeGameObjectPickable(gameObject); rigidbody.isKinematic = false; transform.localPosition = Camera.main.transform.position + new Vector3(0, -0.1f, 0); MasterAudio.PlaySound3DAndForget("Burb", transform, false, 1f, null, 0f, "burb01"); rigidbody.AddForce(Camera.main.transform.forward * 150); gameObject.name = "empty(Clone)"; enabled = false; }
void TakeOutItem() { if (amount > 0) { GameObject instantiatedObject = GameObject.Instantiate(item) as GameObject; instantiatedObject.transform.position = gameObject.transform.position; LoadAssets.MakeGameObjectPickable(instantiatedObject); amount -= 1; } else { gameObject.name = "empty(Clone)"; enabled = false; } }
public void Load() { string old_path = Path.Combine(ModLoader.GetModConfigFolder(this), "case.save"); string old_path2 = Path.Combine(ModLoader.GetModConfigFolder(this), "cd.save"); if (File.Exists(old_path)) { File.Delete(old_path); } if (File.Exists(old_path2)) { File.Delete(old_path2); } CDSaveData data = SaveLoad.DeserializeSaveFile <CDSaveData>(this, "cdplayer.save"); if (data != null) { if (data.rackpurchased) { rack10.transform.position = data.rackpos; rack10.transform.rotation = Quaternion.Euler(data.rackrotX, data.rackrotY, data.rackrotZ); rack10.SetActive(true); rack10.GetComponent <CDRack>().purchased = true; } foreach (GameObject go in listOfCases) { for (int i = 0; i < data.cases.Count; i++) { if (data.cases[i].CDName == go.GetComponent <CDCase>().CDName&& data.cases[i].purchased) { if (!data.cases[i].inRack) { go.transform.position = data.cases[i].pos; go.transform.rotation = Quaternion.Euler(data.cases[i].rotX, data.cases[i].rotY, data.cases[i].rotZ); } else { go.GetComponent <Rigidbody>().isKinematic = true; go.GetComponent <Rigidbody>().detectCollisions = false; go.transform.SetParent(rack10.transform.GetChild(data.cases[i].inRackSlot), false); go.transform.localPosition = Vector3.zero; go.transform.localEulerAngles = Vector3.zero; go.GetComponent <CDCase>().inRack = true; go.GetComponent <CDCase>().inRackSlot = data.cases[i].inRackSlot; go.name = "cd case (" + (data.cases[i].inRackSlot + 1).ToString() + ")(item4)"; } go.GetComponent <CDCase>().purchased = true; go.SetActive(true); } } } foreach (GameObject go in listOfCDs) { for (int i = 0; i < data.cds.Count; i++) { if (data.cds[i].CDName == go.GetComponent <CD>().CDName) { if (!data.cds[i].inCase) { go.GetComponent <CD>().inCase = false; LoadAssets.MakeGameObjectPickable(go); go.transform.SetParent(null); go.transform.position = data.cds[i].pos; go.transform.rotation = Quaternion.Euler(data.cds[i].rotX, data.cds[i].rotY, data.cds[i].rotZ); } } } } } }
//Called when mod is loading public override void OnLoad() { //f**k playmaker, use AssetBundle! AssetBundle ab = LoadAssets.LoadBundle(this, "cdplayer.unity3d"); rack10 = GameObject.Instantiate(ab.LoadAsset <GameObject>("rack10.prefab")); cdp = ab.LoadAsset <GameObject>("cd.prefab"); cdCaseP = ab.LoadAsset <GameObject>("cd case.prefab"); cd_icon = ab.LoadAsset <Sprite>("cd.png"); rack_icon = ab.LoadAsset <Sprite>("rackicon.png"); ab.Unload(false); rack10.name = "CD Rack(item4)"; LoadAssets.MakeGameObjectPickable(rack10); rack10.transform.position = new Vector3(-9.76f, 0.17f, 6.47f); rack10.AddComponent <CDRack>(); rack10.SetActive(false); //it's now 3 disks, they works, but f**k them for safety reasons if (GameObject.Find("cd(item1") != null) { //if player loaded CD's they would spawn and we need to turn off them GameObject.Find("cd(item1)").SetActive(false); GameObject.Find("cd case(item1)").SetActive(false); } //there might be all 3 disks and only 1 if (GameObject.Find("cd(item2)") != null) { GameObject.Find("cd(item2)").SetActive(false); GameObject.Find("cd case(item2)").SetActive(false); } if (GameObject.Find("cd(item3)") != null) { GameObject.Find("cd(item3)").SetActive(false); GameObject.Find("cd case(item3)").SetActive(false); } string[] dirs = Directory.GetDirectories(path); int i = 0; listOfCDs = new List <GameObject>(); listOfCases = new List <GameObject>(); foreach (string dir in dirs) { //Quaternion e = Quaternion.Euler(new Vector3(270, 0, 0)); GameObject cd = (GameObject)Object.Instantiate(cdp); cd.layer = 0; GameObject cdCase = GameObject.Instantiate(cdCaseP); LoadAssets.MakeGameObjectPickable(cdCase); cd.name = "cd(item4)"; cdCase.name = "cd case(item4)"; cd.AddComponent <CD>().CDName = new DirectoryInfo(dir).Name; cdCase.AddComponent <CDCase>().CDName = new DirectoryInfo(dir).Name; if (i == dirs.Length - 1) { cdCase.GetComponent <CDCase>().cdp = this; } if (File.Exists(Path.Combine(dir, "folder.txt"))) { string[] txtDirs = File.ReadAllLines(Path.Combine(dir, "folder.txt")); cd.GetComponent <CD>().CDPath = Path.GetFullPath(txtDirs[0]); } else { cd.GetComponent <CD>().CDPath = Path.GetFullPath(dir); } cd.GetComponent <CD>().cdCase = cdCase.GetComponent <CDCase>(); cd.GetComponent <CD>().InCase(); cd.transform.SetParent(cdCase.transform.GetChild(2), false); //Load coverart.png if exists, else leave default. if (File.Exists(Path.Combine(dir, "coverart.png"))) { Texture2D t2d = new Texture2D(1, 1); t2d.LoadImage(File.ReadAllBytes(Path.Combine(dir, "coverart.png"))); cd.transform.GetChild(0).GetComponent <MeshRenderer>().material.mainTexture = t2d; cdCase.transform.GetChild(3).GetComponent <MeshRenderer>().material.mainTexture = t2d; cdCase.transform.GetChild(0).GetChild(0).GetComponent <MeshRenderer>().material.mainTexture = t2d; } listOfCDs.Add(cd); listOfCases.Add(cdCase); cdCase.SetActive(false); i++; } Load(); if (GameObject.Find("Shop for mods") != null) { ModsShop.ShopItem shop; //Shop for mods is installed shop = GameObject.Find("Shop for mods").GetComponent <ModsShop.ShopItem>(); if (!rack10.activeSelf) { ModsShop.ProductDetails cdRack = new ModsShop.ProductDetails { productName = "Rack for 10 CDs", multiplePurchases = false, productCategory = "Accesories", productIcon = rack_icon, productPrice = 50 }; shop.Add(this, cdRack, ModsShop.ShopType.Teimo, BuyCDRack, rack10); } foreach (GameObject go in listOfCases) { if (!go.activeSelf) { ModsShop.ProductDetails cases = new ModsShop.ProductDetails { productName = go.GetComponent <CDCase>().CDName, multiplePurchases = false, productCategory = "CDs", productIcon = cd_icon, productPrice = 100 }; shop.Add(this, cases, ModsShop.ShopType.Teimo, BuyCDs, go); } } } else { //if no shop catalog installed. rack10.SetActive(true); foreach (GameObject go in listOfCases) { go.SetActive(true); } } FindPlayer(); }
//Called when mod is loading public override void OnLoad() { //f**k playmaker, use AssetBundle! AssetBundle ab = LoadAssets.LoadBundle(this, "cdplayer.unity3d"); rack10 = GameObject.Instantiate(ab.LoadAsset <GameObject>("rack10.prefab")); cdp = ab.LoadAsset <GameObject>("cd.prefab"); cdCaseP = ab.LoadAsset <GameObject>("cd case.prefab"); cd_icon = ab.LoadAsset <Sprite>("cd.png"); rack_icon = ab.LoadAsset <Sprite>("rackicon.png"); ab.Unload(false); rack10.name = "CD Rack(itemy)"; LoadAssets.MakeGameObjectPickable(rack10); rack10.transform.position = new Vector3(-9.76f, 0.17f, 6.47f); rack10.AddComponent <CDRack>(); rack10.SetActive(false); if (!Directory.Exists(path)) //CD folder was renamed to CD1/2/3 { Directory.CreateDirectory(path); } if (!File.Exists(Path.Combine(path, "CD Player Enhanced.txt"))) { File.WriteAllText(Path.Combine(path, "CD Player Enhanced.txt"), readme); } string[] dirs = Directory.GetDirectories(path); int i = 0; listOfCDs = new List <GameObject>(); listOfCases = new List <GameObject>(); foreach (string dir in dirs) { //Quaternion e = Quaternion.Euler(new Vector3(270, 0, 0)); GameObject cd = (GameObject)Object.Instantiate(cdp); cd.layer = 0; GameObject cdCase = GameObject.Instantiate(cdCaseP); LoadAssets.MakeGameObjectPickable(cdCase); cd.name = "cd(itemy)"; cdCase.name = "cd case(itemy)"; cd.AddComponent <CD>().CDName = new DirectoryInfo(dir).Name; cdCase.AddComponent <CDCase>().CDName = new DirectoryInfo(dir).Name; string[] pls = Directory.GetFiles(dir, "*.*").Where(file => file.ToLower().EndsWith(".m3u", System.StringComparison.OrdinalIgnoreCase) || file.ToLower().EndsWith(".m3u8", System.StringComparison.OrdinalIgnoreCase) || file.ToLower().EndsWith(".pls", System.StringComparison.OrdinalIgnoreCase)).ToArray(); if (pls.Length > 0) { cd.GetComponent <CD>().isPlaylist = true; cd.GetComponent <CD>().CDPath = Path.GetFullPath(pls[0]); } else { if (File.Exists(Path.Combine(dir, "folder.txt"))) { string[] txtDirs = File.ReadAllLines(Path.Combine(dir, "folder.txt")); cd.GetComponent <CD>().CDPath = Path.GetFullPath(txtDirs[0]); } else { cd.GetComponent <CD>().CDPath = Path.GetFullPath(dir); } } cd.GetComponent <CD>().cdCase = cdCase.GetComponent <CDCase>(); cd.GetComponent <CD>().InCase(); cd.transform.SetParent(cdCase.transform.GetChild(2), false); //Load coverart.png if exists, else leave default. if (File.Exists(Path.Combine(dir, "coverart.png"))) { Texture2D t2d = new Texture2D(1, 1); t2d.LoadImage(File.ReadAllBytes(Path.Combine(dir, "coverart.png"))); cd.transform.GetChild(0).GetComponent <MeshRenderer>().material.mainTexture = t2d; cdCase.transform.GetChild(3).GetComponent <MeshRenderer>().material.mainTexture = t2d; cdCase.transform.GetChild(0).GetChild(0).GetComponent <MeshRenderer>().material.mainTexture = t2d; } listOfCDs.Add(cd); listOfCases.Add(cdCase); cdCase.SetActive(false); i++; } Load(); if (GameObject.Find("Shop for mods") != null) { ModsShop.ShopItem shop; //Shop for mods is installed shop = GameObject.Find("Shop for mods").GetComponent <ModsShop.ShopItem>(); if (!rack10.activeSelf) { ModsShop.ProductDetails cdRack = new ModsShop.ProductDetails { productName = "Rack for 10 CDs", multiplePurchases = false, productCategory = "Accesories", productIcon = rack_icon, productPrice = 50 }; shop.Add(this, cdRack, ModsShop.ShopType.Teimo, BuyCDRack, rack10); } foreach (GameObject go in listOfCases) { if (!go.activeSelf) { ModsShop.ProductDetails cases = new ModsShop.ProductDetails { productName = go.GetComponent <CDCase>().CDName, multiplePurchases = false, productCategory = "CDs", productIcon = cd_icon, productPrice = 100 }; shop.Add(this, cases, ModsShop.ShopType.Teimo, BuyCDs, go); } } } else { //if no shop catalog installed. rack10.SetActive(true); foreach (GameObject go in listOfCases) { go.SetActive(true); } } FindPlayer(); if (GameObject.Find("cd(item1)") != null) { GameObject.Find("cd(item1)").SetActive(false); } if (GameObject.Find("cd case(item1)") != null) { GameObject.Find("cd case(item1)").SetActive(false); } if (GameObject.Find("cd(item2)") != null) { GameObject.Find("cd(item2)").SetActive(false); } if (GameObject.Find("cd case(item2)") != null) { GameObject.Find("cd case(item2)").SetActive(false); } if (GameObject.Find("cd(item3)") != null) { GameObject.Find("cd(item3)").SetActive(false); } if (GameObject.Find("cd case(item3)") != null) { GameObject.Find("cd case(item3)").SetActive(false); } }
public void Load() { string old_path = Path.Combine(ModLoader.GetModConfigFolder(this), "case.save"); string old_path2 = Path.Combine(ModLoader.GetModConfigFolder(this), "cd.save"); if (File.Exists(old_path)) { File.Delete(old_path); } if (File.Exists(old_path2)) { File.Delete(old_path2); } CDSaveData data = SaveLoad.DeserializeSaveFile <CDSaveData>(this, "cdplayer.save"); if (data != null) { if (data.rackpurchased) { rack10.transform.position = data.rackpos; rack10.transform.eulerAngles = new Vector3(data.rackrotX, data.rackrotY, data.rackrotZ); rack10.SetActive(true); rack10.GetComponent <CDRack>().purchased = true; } for (int i = 0; i < listOfCases.Count; i++) { CaseSaveDataList cas = data.cases.Where(x => x.CDName == listOfCases[i].GetComponent <CDCase>().CDName&& x.purchased).FirstOrDefault(); if (cas != null) { if (!cas.inRack) { listOfCases[i].transform.position = cas.pos; listOfCases[i].transform.eulerAngles = new Vector3(cas.rotX, cas.rotY, cas.rotZ); } else { listOfCases[i].GetComponent <Rigidbody>().isKinematic = true; listOfCases[i].GetComponent <Rigidbody>().detectCollisions = false; listOfCases[i].transform.SetParent(rack10.transform.GetChild(cas.inRackSlot), false); listOfCases[i].transform.localPosition = Vector3.zero; listOfCases[i].transform.localEulerAngles = Vector3.zero; listOfCases[i].GetComponent <CDCase>().inRack = true; listOfCases[i].GetComponent <CDCase>().inRackSlot = cas.inRackSlot; listOfCases[i].name = "cd case (" + (cas.inRackSlot + 1).ToString() + ")(itemy)"; } listOfCases[i].GetComponent <CDCase>().purchased = true; listOfCases[i].SetActive(true); } } for (int i = 0; i < listOfCDs.Count; i++) { CDSaveDataList cds = data.cds.Where(x => x.CDName == listOfCDs[i].GetComponent <CD>().CDName).FirstOrDefault(); if (cds != null) { if (cds.CDName == listOfCDs[i].GetComponent <CD>().CDName) { if (!cds.inCase) { listOfCDs[i].GetComponent <CD>().inCase = false; LoadAssets.MakeGameObjectPickable(listOfCDs[i]); listOfCDs[i].transform.SetParent(null); listOfCDs[i].transform.position = cds.pos; listOfCDs[i].transform.eulerAngles = new Vector3(cds.rotX, cds.rotY, cds.rotZ); } } } } } }
public static void MakePickable(this GameObject gameObject, bool includeTag = true) => LoadAssets.MakeGameObjectPickable(gameObject);