This is a good book:
https://www.amazon.com/Mating-Castled-King-Danny-Gormally/dp/190798271X
Also this puzzle book has sections dedicated to sacrifices on f7, g7, h7 etc.
https://www.amazon.com/Chess-5334-Problems-Combinations-Games/dp/1579125549
A more advanced work is this classic
https://www.amazon.com/Art-Attack-Chess-Ladimir-Vukovic/dp/1857444000
And of course you can google search for great attacking games. Some people have made collections on chessgames.com
(I haven't looked at the games in the following link, but I pulled it up in 5 seconds with a google search just for an example)
http://www.chessgames.com/perl/chesscollection?cid=1000778
Besides doing 25 random tactics a day on chess.com as well as thematic ones and mate in 1-4 in books (I spend an hour a day on tactics), I want to improve my attack skills like attacking castled, un-castled, opposite castled, sacrifice.... My question is, should we focus on one specific situation daily or weekly, or even monthly. If we should have a daily schedule, then what is the most general plan for practice? Thanks so much.