예제 #1
0
 private void LogEvent(TileSoldEvent e)
 {
     if (e.LoggingLevel <= LoggingLevel)
     {
         Debug.Log(e.Description);
     }
 }
예제 #2
0
 public void Sell(TileSoldEvent e)
 {
     if (e.CellLoc == (Vector2Int)gm.LevelMap.LocalToCell(transform.position))
     {
         gm.DestroyTile(gm.LevelMap.LocalToCell(trapOut.transform.position));
     }
 }
예제 #3
0
 protected void Awake()
 {
     PauseEvent.RegisterListener(LogEvent);
     MenuEvent.RegisterListener(LogEvent);
     TileSoldEvent.RegisterListener(LogEvent);
     TileDestroyedEvent.RegisterListener(LogEvent);
     TileDamageEvent.RegisterListener(LogEvent);
     TileUpdateEvent.RegisterListener(LogEvent);
     BaseDamageEvent.RegisterListener(LogEvent);
     BaseDamageUIEvent.RegisterListener(LogEvent);
     PurchaseMadeEvent.RegisterListener(LogEvent);
     PartsChangedUIEvent.RegisterListener(LogEvent);
     EnemyRecycledEvent.RegisterListener(LogEvent);
     GameStartEvent.RegisterListener(LogEvent);
     GameOverEvent.RegisterListener(LogEvent);
     GameWonEvent.RegisterListener(LogEvent);
     FastForwardEvent.RegisterListener(LogEvent);
 }
예제 #4
0
    protected void Awake()
    {
        if (Collider == null || Collider.GetComponent <BoxCollider2D>() == null)
        {
            Debug.LogError($"{name}: No collider assigned!");
        }

        gm = FindObjectOfType <GameManager>();

        if (gm == null)
        {
            Debug.LogError($"{name}: Could not find game manager!");
        }

        Paired = false;

        // Set up listeners
        TileSoldEvent.RegisterListener(Sell);
    }
예제 #5
0
 protected void OnDestroy()
 {
     trapOut.Paired = false;
     TileSoldEvent.UnregisterListener(Sell);
 }