Advice please

I’ve been with my boyfriend for 4 years. We’re both 20 and just found out we’re having a baby boy! I’m 20 weeks pregnant. He’s been iffy our whole relationship. He’d rather make money illegally then get a real job. Hes been a heavy drinker and smoker our whole relationship and I thought he’d change for the baby but I guess not. He hasn’t really ever been affectionate and told me he never wanted kids. He’s not involved in my pregnancy at all. He didn’t come to my gender reveal and says he won’t be at the baby shower or birth. I’m at a loss. I really don’t know what to do.