sourcemod
sourcemod copied to clipboard
`reload` and `refresh` problem
sm plugins reload
will unload a plugin, then turn its dependencies plugin into pause status, after that system will load it back, then check is pause plugin's native ok, then turn it back to running status
sm plugins refresh
will unload file updated plugin, then also turn its dependencies plugin into pause status(which wont call OnPluginEnd
), after unloaded, it wont load owner plugin again and turn dependencies plugin into running status again, Instead, direct invoke bridge->DoGlobalPluginLoads()
, the unloaded plugin and the plugin which in pause status will load again in this func, which mean the plugin with pause status call OnPluginStart
again without OnPluginEnd
I think it might not be reasonable, map change will auto invoke refresh
action, it may reload dependencies plugin without OnPluginEnd