Using a generic GameObject for better code structure