//action to execute if the player press the action button
 void ExecuteAction()
 {
     if (actualShopNpc != null && Vector3.Distance(actualShopNpc.transform.position, transform.position) < actualShopNpc.interactDistance)
     {
         actualShopNpc.Interact();
     }
     else if (actualTownNpc != null && Vector3.Distance(actualTownNpc.transform.position, transform.position) < actualTownNpc.talkDistance)
     {
         actualTownNpc.NPCPushTalk();
     }
     else if (actualEnterBuilding != null && Vector3.Distance(actualEnterBuilding.transform.position, transform.position) < actualEnterBuilding.detectionDistance)
     {
         actualEnterBuilding.Execute();
     }
     else if (actualExitLocation != null && Vector3.Distance(actualExitLocation.transform.position, transform.position) < actualExitLocation.detectionDistance)
     {
         actualExitLocation.Execute();
     }
     else
     {
         actualShopNpc       = null;
         actualTownNpc       = null;
         actualEnterBuilding = null;
         actualExitLocation  = null;
     }
 }