Exemple #1
0
        public virtual void Release()
        {
            _isDead = true;

            for (int i = 0; i < _components.Count; i++)
            {
                _components[i].Release();
            }
            _components.Clear();

            SnakerNode node = _head;

            while (node != null)
            {
                // release node...
                node.Release();

                node = node.NextNode;
            }
            _head   = null;
            _tail   = null;
            hitNode = null;

            enegy        = 0;
            _ownerPlayer = null;

            _view = null;
        }
Exemple #2
0
 private void DestroySnaker(SnakerActor actor)
 {
     if (actor != null)
     {
         actor.Unbind();
         Destroy(actor.gameObject);
     }
 }
Exemple #3
0
        private SnakerActor CreateSnaker(Snaker snaker)
        {
            if (snaker == null)
            {
                return(null);
            }

            GameObject prefab = Resources.Load <GameObject>(snaker.Data["Prefab"].StringValue);
            GameObject go     = Instantiate <GameObject>(prefab);

            go.name = prefab.name + "_" + snaker.PlayerID.ToString();
            go.transform.SetParent(Root);
            SnakerActor view = go.EnsureComponent <SnakerActor>();

            view.Bind(snaker);

            return(view);
        }