vgc++ advanced final project