I can't lay one out for you perfectly but with 30 pounds to gain in 4 months you are going to half to FORCE food down your throat. Considering you have 16 or so weeks and 30 lbs to gain You are trying to build the maximum amount of muscle your body will allow you to which is 2 lbs per week and that is very hard to do and mostly done with aa's.
But that being said figure out you DAILY CALORIE intake and add to it (there are websites and apps that do this for you Myfitnesspal.com is one). 3600 calories not burned equals 1 pound and you spread double that out over a week and you gain 2 lbs a week. You should have a decent macro split like 40% of your calories from protein 40% from carbs and 20% from fat. Eat a lot of meat and healthy fats like peanut butter really adds up calories.
If you want to gain MUSCLE then you should be working out more and doing cardio less. I don't know your training regimen but consider taking one more day off. A tip I got was if you are lifting 5x a week and you stop gaining lift 4x and then cut to 3x. More time to let your muscles recover and grow. And take in 1-1.5 grams of protein per lb/bodyweight (this number goes up as you gain weight).
I really don't know how far to get into this but my meals today were something like
Breakfast- 2 eggs a slice of ham and cheese on a bagel with a glass of milk. I think thats 750 calories.
Lunch- Chicken sandwhich and yogurt with granola. Not sure but got a lot of cals from the granola
Snack- PBJ easily 500 calories.
Dinner- I ate a lot like sausage ribs beans and potato salad and even pasta salad. Probably to many carbs and fat but just listen to everybody else on that.
Next I will have my pre bed meal which is going to keep me from catabolism at night with slow releasing protein.
something like 3/4 cup cottage cheese has 18 grams of casein protein. An apple, or banana, some peanut butter (the fat slows down digestion), Glass of milk has a gram of casein protein per oz.
Thats a lot of info hope it helps.