Download Project/Assets/ML-Agents/Examples/Pyramids/Scripts/PyramidSwitch.cs from ashish2244/ppo-SnowballTarget: direct link, hf CLI and curl.
- Browser
- Download file 1.18 kB
-
https://huggingface.co/ashish2244/ppo-SnowballTarget/resolve/main/Project/Assets/ML-Agents/Examples/Pyramids/Scripts/PyramidSwitch.cs
- Command line
-
hf download hf://ashish2244/ppo-SnowballTarget/Project/Assets/ML-Agents/Examples/Pyramids/Scripts/PyramidSwitch.cs
-
curl -L -o PyramidSwitch.cs https://huggingface.co/ashish2244/ppo-SnowballTarget/resolve/main/Project/Assets/ML-Agents/Examples/Pyramids/Scripts/PyramidSwitch.cs
1.18 kB
| using UnityEngine; | |
| public class PyramidSwitch : MonoBehaviour | |
| { | |
| public Material onMaterial; | |
| public Material offMaterial; | |
| public GameObject myButton; | |
| bool m_State; | |
| GameObject m_Area; | |
| PyramidArea m_AreaComponent; | |
| int m_PyramidIndex; | |
| public bool GetState() | |
| { | |
| return m_State; | |
| } | |
| void Start() | |
| { | |
| m_Area = gameObject.transform.parent.gameObject; | |
| m_AreaComponent = m_Area.GetComponent<PyramidArea>(); | |
| } | |
| public void ResetSwitch(int spawnAreaIndex, int pyramidSpawnIndex) | |
| { | |
| m_AreaComponent.PlaceObject(gameObject, spawnAreaIndex); | |
| m_State = false; | |
| m_PyramidIndex = pyramidSpawnIndex; | |
| tag = "switchOff"; | |
| transform.rotation = Quaternion.Euler(0f, 0f, 0f); | |
| myButton.GetComponent<Renderer>().material = offMaterial; | |
| } | |
| void OnCollisionEnter(Collision other) | |
| { | |
| if (other.gameObject.CompareTag("agent") && m_State == false) | |
| { | |
| myButton.GetComponent<Renderer>().material = onMaterial; | |
| m_State = true; | |
| m_AreaComponent.CreatePyramid(1, m_PyramidIndex); | |
| tag = "switchOn"; | |
| } | |
| } | |
| } | |