Beispiel #1
0
        void UpdateContactList()
        {
            ContactDiceList.Clear();
            for (int i = 0; i < SimMgr.Inst.DiceList.Count; i++)
            {
                if (SimMgr.Inst.DiceList[i] == this)
                {
                    continue;
                }

                float yDist = utlMath.FloatDistance(transform.position.y, SimMgr.Inst.DiceList[i].transform.position.y);
                if (yDist > m_HeightMatchThreshold)
                {
                    continue;
                }

                float dieToDieDist = Vector3.Distance(transform.position, SimMgr.Inst.DiceList[i].transform.position);
                if (dieToDieDist > m_DieToDieTestThreshold || !SimMgr.Inst.DiceList[i].IsDieOnSurface())
                {
                    continue;
                }

                int myIndex    = GetUpFaceTriggerObjectIndex();
                int theirIndex = SimMgr.Inst.DiceList[i].GetUpFaceTriggerObjectIndex();

                if (myIndex != theirIndex)
                {
                    continue;
                }

                m_ContactDiceList.Add(SimMgr.Inst.DiceList[i]);
            }
        }
Beispiel #2
0
 // Use this for initialization
 new void Start()
 {
     ContactDiceList.Clear();
     base.Start();
 }