Thank you very much for your work.
+1 on:
- Set ground flag
- Read the CID the user used to connect
- replacement for GDI+
- User CID and Name to be read
- manipulation of simulated traffic (to i.e. create custom panels/connections for easier simulation control, not only on the tags)
- thread safety / handling - (running plugins on a separate thread)
Having a plugin cause a freeze is annoying. This can be avoided. I mitigated this by processing everything asynchronously, but this of course adds more complexity.
personal thoughts:
- client connect / disconnect event - would be a good way to start / trigger plugin logic only once someone has connected / disconnected. During testing I observed that the OnControllerDisconnect does not trigger when the own client disconnects, but I may be wrong here. Of course you can check the connection type on a regular basis, but an event should be the better solution.
interoperability of plugins: - cache tag items - someone else’s suggestion, I’m just forwarding it.
Pass the old tag item into the OnGetTagItem function, this would allow one to use things like try lock or update the tag item based on the old one. - access other plugins tag items - would be nice to access other plugins tag items
- move plugin synchronisation from scratchpad string to separate event. It would be nice if we could move plugin sychronisation from using the scratchpad to a separate event / function. My suggestion would be to create a separate event, something like OnPlugInMessage() with the plugin name, the message and maybe the radar target / callsign.
- improved documentation - there is some information missing in the documentation, e.g. what FlightStripAnnotations are and how they are used.