private void removeKey(string colliderKey, string deleteKey) { if (colliderKey != null && deleteKey != null) { EnemyColliderModel colliderModel = getColliderModel(colliderKey); if (colliderModel != null) { colliderModel.removeKey(deleteKey); } } }
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); } } } }