added some gameplay functional