コード例 #1
0
 private static void CallRightCollisionMethod(ICollisionHandler collisionHandler, ICollider collider)
 {
     if (collider.GameObject is IPlayer)
     {
         collisionHandler.HandlePlayerCollision(collider);
     }
     else if (collider.GameObject is IItem)
     {
         collisionHandler.HandlePickupItemCollision(collider);
     }
     else if (collider.GameObject is IUsableItem)
     {
         collisionHandler.HandleUsableItemCollision(collider);
     }
     else if (collider.GameObject is IBlock)
     {
         collisionHandler.HandleBlockCollision(collider);
     }
     else if (collider.GameObject is INPC)
     {
         collisionHandler.HandleNPCCollision(collider);
     }
     else if (collider.GameObject is IEnemy)
     {
         collisionHandler.HandleEnemyCollision(collider);
     }
     else if (collider.GameObject is ISword)
     {
         collisionHandler.HandleSwordCollision(collider);
     }
     else if (collider.GameObject is IDoor)
     {
         collisionHandler.HandleDoorCollision(collider);
     }
     else if (collider.GameObject is IWall)
     {
         collisionHandler.HandleWallCollision(collider);
     }
 }