Not sure we can hook the CreateTownPortal behavior and replace it by a custom one, maybe pushedx can give some infos about it (pretty sure it has been already asked before on this board)
#104 (1.3.1.5) [13 Mar 15 03:40]
Updates for 1.3.1.5.
Coroutines.CreatePortalToTown will now attempt to create the portal using the Portal skill if it's on your skillbar before falling back to using portal scrolls in your inventory.