Yes Sanji has a great character, arguably better than most if not all the strawhats (the main cast in OP) until it doesn’t matter
Luffys character is so much richer and consistent, Luffy is a conventionally flawed person whereas Sanji is garbage on that end.
Luffy when there’s trouble remains srs, when there’s sadness is sad, when there’s peace is joyful.
Sanji does the erratic at any given moment. [Forgets his crew with Viola (supposed to be discrete bc of Doffy), hunting whores in War, nose bleeding while supposed to leave Sabaody & FI Battle. Interferes with Zoro/Kuma, leaves crew at little garden, kicks Captain, hunts prostitutes while in the bathhouse with RS while Luffy is in prison (you know the guy that just saved ur life)