Пример #1
0
        public static void RemoveMapObject(RemoveMapObject P)
        {
            if (MapObject.User.ObjectID == P.ObjectID)
            {
                return;
            }

            for (int I = 0; I < MapLayer.ObjectList.Count; I++)
            {
                if (MapLayer.ObjectList[I].ObjectID == P.ObjectID)
                {
                    MapLayer.ObjectList[I].Remove();
                    break;
                }
            }


            if (PlayerObject.TargetObject != null && PlayerObject.TargetObject.ObjectID == P.ObjectID)
            {
                PlayerObject.TargetObject = null;
            }

            if (PlayerObject.MouseObject != null && PlayerObject.MouseObject.ObjectID == P.ObjectID)
            {
                PlayerObject.MouseObject = null;
            }
        }
Пример #2
0
    void Update()
    {
        List <RemoveMapObject> cleanupList = new List <RemoveMapObject>();

        for (int i = 0; i < removeObjectList.Count; i++)
        {
            RemoveMapObject removeObject = removeObjectList[i];
            //shrink size
            float   size  = 1.0f - ((1.0f + Mathf.Sin(removeObject.timer * 4.0f)) * 0.5f);
            Vector3 scale = Vector3.one * size;
            removeObject.transform.localScale = scale;

            removeObject.timer += Time.deltaTime;
            if (removeObject.timer >= 0.5f)
            {
                Destroy(removeObject.obj);
                cleanupList.Add(removeObject);
            }
        }

        for (int i = 0; i < cleanupList.Count; i++)
        {
            removeObjectList.Remove(cleanupList[i]);
        }
    }