Ejemplo n.º 1
0
 private void removeKey(string colliderKey, string deleteKey)
 {
     if (colliderKey != null && deleteKey != null)
     {
         EnemyColliderModel colliderModel = getColliderModel(colliderKey);
         if (colliderModel != null)
         {
             colliderModel.removeKey(deleteKey);
         }
     }
 }
Ejemplo n.º 2
0
        public void exitTrigger(string mainKey, GameObject enemyGO)
        {
            bool   isPlayer    = false;
            string colliderKey = null;

            if (enemyGO != null)
            {
                if (enemyGO.tag == PlayerView.ID)
                {
                    isPlayer = true;
                }
                else
                {
                    colliderKey = enemyGO.name;
                }
            }

            Debug.Log("exitTrigger. isPlayer = " + isPlayer.ToString() + ". mainkey = " + mainKey + ". otherKey = " + colliderKey);
            EnemyColliderModel mainColliderModel = getColliderModel(mainKey);

            if (mainColliderModel != null && mainColliderModel.view != null)
            {
                if (isPlayer)
                {
                    mainColliderModel.isPlayerTrigger = false;
                    if (!mainColliderModel.view.isMove && mainColliderModel.view.currentState != CharacterStates.HIT)
                    {
                        mainColliderModel.setState(CharacterStates.MOVE);
                    }
                }
                else if (colliderKey != null)
                {
                    EnemyColliderModel colliderModel = getColliderModel(colliderKey);
                    if (colliderModel != null && colliderModel.view != null)
                    {
                        bool isMainBefore = isFirstBefore(mainColliderModel.view, colliderModel.view);
                        mainColliderModel.removeKey(colliderKey, isMainBefore);
                        colliderModel.removeKey(mainKey, !isMainBefore);
                    }
                }
            }
        }