Not just "0", you can have any value as a default value, even on strings. From one of my libraries:
pawn Код:
stock Style:TD_Create(Float:x = 0.0, Float:y = 0.0, Float:letterX = 0.48, Float:letterY = 1.12, Float:textX = 1280.0, Float:textY = 1280.0, colour = 0xE1E1E1FF, boxColour = 0x80808080, bgColour = 0x000000FF, shadow = 2, outline = 0, align = _:td_align_none, font = 1, bool:proportional = false, bool:box = false, time = 0, name[] = "\1")
What's more, there are a lot of optional parameters there, you can specialise just one if you want:
By specifying ".parameter = value" when you CALL the function, it will set that parameter to your chosen value and leave all others the same. You can also use "_" to mean "default":
That will leave the first two parameters as their defaults, and set the third parameter to "0.5". You can even combine the two and don't have to do named parameters in order:
pawn Код:
TD_Create(_, _, 0.5, .box = true, .letterY = 1.0, .name = "A String");
The "box" parameter comes after the "letterY" parameter in the function definition, but because we specify the name, it can come before here.