player swap implemented