I have an idea, make a big object with several material splits, it will have all roadsigns on it, including a nuclear (radiation) warning aswell. If you need a sign from that big object, you can re-texture any ordinary roadsign object from the game itself (or another item if you want too) and use the texture from that big object.
This way, you'll profit from object ID slots and have all of the roadsign objects in one single object.
There's a big object, It has lots of roadsigns on it,
Textures 0: Right turn
1: Left turn
2: One way
3: No entrance
4: Sharp turn (left)
5: Sharp turn (right)
6: Heavy trucks allowed.
7: Only bikes
8: No parking
...
The list goes on, so if lets say, I want the Left turn sign on an object I can use (a roadsign object, or maybe put it on a wall) I use the left turn sign texture via SetObjectMaterial() on the object I desire that sign to be.
Put all textures from these signs maybe? I don't know how hard this is though.
https://sampforum.blast.hk/showthread.php?tid=285398
Also, this way you can add a possibility for more textures to be used for other objects? Such as mossy / grass textures (just an example) this big object will have usable tiles that have visible seperate - usable textures via SetObjectMaterial() (source textures come from this big object)