RUST API [и так далее]

  • Автор темы Автор темы AKUSIK
  • Дата начала Дата начала

AKUSIK

C# Developer
Автор темы
3 (80%)
16 Дек 2021
293
131
191
Полезная тема для будущих разработчиков

Rust Hooks​


  • Called when a plugin is being initialized
  • Other plugins may or may not be present, dependant on load order
  • No return behavior
<span>void</span> <span>Init</span><span>(</span><span>)</span><br><span>{</span><br> <span>Puts</span><span>(</span><span>"Init works!"</span><span>)</span><span>;</span><br><span>}</span>

  • Called when a server restart is being cancelled
  • Returning a non-null value overrides default behavior
<span>object</span> <span>OnServerRestartInterrupt</span><span>(</span><span>)</span><br><span>{</span><br> <span>Puts</span><span>(</span><span>"OnServerRestartInterrupt works!"</span><span>)</span><span>;</span><br> <span>return</span> <span>null</span><span>;</span><br><span>}</span>

  • Useful for saving something / etc on server shutdown
  • No return behavior
<span>void</span> <span>OnServerShutdown</span><span>(</span><span>)</span><br><span>{</span><br> <span>Puts</span><span>(</span><span>"OnServerShutdown works!"</span><span>)</span><span>;</span><br><span>}</span>

  • Useful for intercepting commands before they get to their intended target
  • Returning a non-null value overrides default behavior
<span>object</span> <span>OnServerCommand</span><span>(</span><span>ConsoleSystem<span>.</span>Arg</span> arg<span>)</span><br><span>{</span><br> <span>Puts</span><span>(</span><span>"OnServerCommand works!"</span><span>)</span><span>;</span><br> <span>return</span> <span>null</span><span>;</span><br><span>}</span>

  • Useful for intercepting server messages before they get to their intended target
  • Returning a non-null value overrides default behavior
<span>object</span> <span>OnMessagePlayer</span><span>(</span><span>string</span> message<span>,</span> <span>BasePlayer</span> player<span>)</span><br><span>{</span><br> <span>Puts</span><span>(</span><span>"OnMessagePlayer works!"</span><span>)</span><span>;</span><br> <span>return</span> <span>null</span><span>;</span><br><span>}</span>

  • Called each frame
  • No return behavior
<span>void</span> <span>OnFrame</span><span>(</span><span>)</span><br><span>{</span><br> <span>Puts</span><span>(</span><span>"OnFrame works!"</span><span>)</span><span>;</span><br><span>}</span>

  • Called after all steam information for the server has has been updated
  • No return behavior
<span>void</span> <span>OnServerInformationUpdated</span><span>(</span><span>)</span><br><span>{</span><br> <span>Puts</span><span>(</span><span>"OnServerInformationUpdated works!"</span><span>)</span><span>;</span><br><span>}</span>

  • Called when an RCON command is run
  • No return behavior
<span>void</span> <span>OnRconCommand</span><span>(</span><span>IPAddress</span> ip<span>,</span> <span>string</span> command<span>,</span> <span>string</span><span>[</span><span>]</span> args<span>)</span><br><span>{</span><br> <span>Puts</span><span>(</span><span>"OnRconCommand works!"</span><span>)</span><span>;</span><br><span>}</span>

  • Called when a new RCON connection is opened
  • Returning a non-null value overrides default behavior
<span>object</span> <span>OnRconConnection</span><span>(</span><span>IPAddress</span> ip<span>)</span><br><span>{</span><br> <span>Puts</span><span>(</span><span>"OnRconConnection works!"</span><span>)</span><span>;</span><br> <span>return</span> <span>null</span><span>;</span><br><span>}</span>

  • Called when any plugin has been loaded
  • No return behavior
  • Not to be confused with Loaded
<span>void</span> <span>OnPluginLoaded</span><span>(</span><span>Plugin</span> plugin<span>)</span><br><span>{</span><br> <span>Puts</span><span>(</span>$<span>"Plugin '{plugin.Name}' has been loaded"</span><span>)</span><span>;</span><br><span>}</span>

  • Called when a new savefile is created (usually when map has wiped)
  • No return behavior
<span>void</span> <span>OnNewSave</span><span>(</span><span>string</span> filename<span>)</span><br><span>{</span><br> <span>Puts</span><span>(</span><span>"OnNewSave works!"</span><span>)</span><span>;</span><br><span>}</span>

  • Called when a save file is loaded
  • Returning a non-null value overrides default behavior
<span>object</span> <span>OnSaveLoad</span><span>(</span>Dictionary<span>&lt;</span>BaseEntity<span>,</span> ProtoBuf<span>.</span>Entity<span>&gt;</span> entities<span>)</span><br><span>{</span><br> <span>Puts</span><span>(</span><span>"OnSaveLoad works!"</span><span>)</span><span>;</span><br> <span>return</span> <span>null</span><span>;</span><br><span>}</span>

  • Called when any plugin has been unloaded
  • No return behavior
  • Not to be confused with Unload
<span>void</span> <span>OnPluginUnloaded</span><span>(</span><span>Plugin</span> plugin<span>)</span><br><span>{</span><br> <span>Puts</span><span>(</span>$<span>"Plugin '{plugin.Name}' has been unloaded"</span><span>)</span><span>;</span><br><span>}</span>

  • Called before a SERVER message is sent to a player
  • Return a non-null value to stop message from being sent
<span>// Example that stops message from being sent</span><br><br><span>object</span> <span>OnServerMessage</span><span>(</span><span>string</span> message<span>,</span> <span>string</span> playerName<span>,</span> <span>string</span> color<span>,</span> <span>ulong</span> playerId<span>)</span><br><span>{</span><br> <span>if</span> <span>(</span>message<span>.</span><span>Contains</span><span>(</span><span>"gave"</span><span>)</span><span>)</span><br> <span>{</span><br> <span>Puts</span><span>(</span>$<span>"Message to {playerName} ({playerId}) cancelled"</span><span>)</span><span>;</span><br> <span>return</span> <span>false</span><span>;</span><br> <span>}</span><br><br> <span>return</span> <span>null</span><span>;</span><br><span>}</span>
<span>// Example that does not stop message from being sent</span><br><br><span>void</span> <span>OnServerMessage</span><span>(</span><span>string</span> message<span>,</span> <span>string</span> playerName<span>,</span> <span>string</span> color<span>,</span> <span>ulong</span> playerId<span>)</span><br><span>{</span><br> <span>Puts</span><span>(</span>$<span>"{playerName} ({playerId}) was sent message: {message}"</span><span>)</span><span>;</span><br><span>}</span>

  • Called after the server startup has been completed and is awaiting connections
  • Also called for plugins that are hotloaded while the server is already started running
  • Boolean parameter, false if called on plugin hotload and true if called on server initialization
  • No return behavior
<span>void</span> <span>OnServerInitialized</span><span>(</span><span>bool</span> initial<span>)</span><br><span>{</span><br> <span>Puts</span><span>(</span><span>"OnServerInitialized works!"</span><span>)</span><span>;</span><br><span>}</span>

  • Called every tick (defined by the tick rate of the server)
  • For better performance, avoid using heavy calculations in this hook.
  • No return behavior
<span>void</span> <span>OnTick</span><span>(</span><span>)</span><br><span>{</span><br> <span>Puts</span><span>(</span><span>"OnTick works!"</span><span>)</span><span>;</span><br><span>}</span>

  • Called before the server saves
  • No return behavior
<span>void</span> <span>OnServerSave</span><span>(</span><span>)</span><br><span>{</span><br> <span>Puts</span><span>(</span><span>"OnServerSave works!"</span><span>)</span><span>;</span><br><span>}</span>

 
Полезная тема для будущих разработчиков

Rust Hooks​


  • Called when a plugin is being initialized
  • Other plugins may or may not be present, dependant on load order
  • No return behavior
<span>void</span> <span>Init</span><span>(</span><span>)</span><br><span>{</span><br> <span>Puts</span><span>(</span><span>"Init works!"</span><span>)</span><span>;</span><br><span>}</span>

  • Called when a server restart is being cancelled
  • Returning a non-null value overrides default behavior
<span>object</span> <span>OnServerRestartInterrupt</span><span>(</span><span>)</span><br><span>{</span><br> <span>Puts</span><span>(</span><span>"OnServerRestartInterrupt works!"</span><span>)</span><span>;</span><br> <span>return</span> <span>null</span><span>;</span><br><span>}</span>

  • Useful for saving something / etc on server shutdown
  • No return behavior
<span>void</span> <span>OnServerShutdown</span><span>(</span><span>)</span><br><span>{</span><br> <span>Puts</span><span>(</span><span>"OnServerShutdown works!"</span><span>)</span><span>;</span><br><span>}</span>

  • Useful for intercepting commands before they get to their intended target
  • Returning a non-null value overrides default behavior
<span>object</span> <span>OnServerCommand</span><span>(</span><span>ConsoleSystem<span>.</span>Arg</span> arg<span>)</span><br><span>{</span><br> <span>Puts</span><span>(</span><span>"OnServerCommand works!"</span><span>)</span><span>;</span><br> <span>return</span> <span>null</span><span>;</span><br><span>}</span>

  • Useful for intercepting server messages before they get to their intended target
  • Returning a non-null value overrides default behavior
<span>object</span> <span>OnMessagePlayer</span><span>(</span><span>string</span> message<span>,</span> <span>BasePlayer</span> player<span>)</span><br><span>{</span><br> <span>Puts</span><span>(</span><span>"OnMessagePlayer works!"</span><span>)</span><span>;</span><br> <span>return</span> <span>null</span><span>;</span><br><span>}</span>

  • Called each frame
  • No return behavior
<span>void</span> <span>OnFrame</span><span>(</span><span>)</span><br><span>{</span><br> <span>Puts</span><span>(</span><span>"OnFrame works!"</span><span>)</span><span>;</span><br><span>}</span>

  • Called after all steam information for the server has has been updated
  • No return behavior
<span>void</span> <span>OnServerInformationUpdated</span><span>(</span><span>)</span><br><span>{</span><br> <span>Puts</span><span>(</span><span>"OnServerInformationUpdated works!"</span><span>)</span><span>;</span><br><span>}</span>

  • Called when an RCON command is run
  • No return behavior
<span>void</span> <span>OnRconCommand</span><span>(</span><span>IPAddress</span> ip<span>,</span> <span>string</span> command<span>,</span> <span>string</span><span>[</span><span>]</span> args<span>)</span><br><span>{</span><br> <span>Puts</span><span>(</span><span>"OnRconCommand works!"</span><span>)</span><span>;</span><br><span>}</span>

  • Called when a new RCON connection is opened
  • Returning a non-null value overrides default behavior
<span>object</span> <span>OnRconConnection</span><span>(</span><span>IPAddress</span> ip<span>)</span><br><span>{</span><br> <span>Puts</span><span>(</span><span>"OnRconConnection works!"</span><span>)</span><span>;</span><br> <span>return</span> <span>null</span><span>;</span><br><span>}</span>

  • Called when any plugin has been loaded
  • No return behavior
  • Not to be confused with Loaded
<span>void</span> <span>OnPluginLoaded</span><span>(</span><span>Plugin</span> plugin<span>)</span><br><span>{</span><br> <span>Puts</span><span>(</span>$<span>"Plugin '{plugin.Name}' has been loaded"</span><span>)</span><span>;</span><br><span>}</span>

  • Called when a new savefile is created (usually when map has wiped)
  • No return behavior
<span>void</span> <span>OnNewSave</span><span>(</span><span>string</span> filename<span>)</span><br><span>{</span><br> <span>Puts</span><span>(</span><span>"OnNewSave works!"</span><span>)</span><span>;</span><br><span>}</span>

  • Called when a save file is loaded
  • Returning a non-null value overrides default behavior
<span>object</span> <span>OnSaveLoad</span><span>(</span>Dictionary<span>&lt;</span>BaseEntity<span>,</span> ProtoBuf<span>.</span>Entity<span>&gt;</span> entities<span>)</span><br><span>{</span><br> <span>Puts</span><span>(</span><span>"OnSaveLoad works!"</span><span>)</span><span>;</span><br> <span>return</span> <span>null</span><span>;</span><br><span>}</span>

  • Called when any plugin has been unloaded
  • No return behavior
  • Not to be confused with Unload
<span>void</span> <span>OnPluginUnloaded</span><span>(</span><span>Plugin</span> plugin<span>)</span><br><span>{</span><br> <span>Puts</span><span>(</span>$<span>"Plugin '{plugin.Name}' has been unloaded"</span><span>)</span><span>;</span><br><span>}</span>

  • Called before a SERVER message is sent to a player
  • Return a non-null value to stop message from being sent
<span>// Example that stops message from being sent</span><br><br><span>object</span> <span>OnServerMessage</span><span>(</span><span>string</span> message<span>,</span> <span>string</span> playerName<span>,</span> <span>string</span> color<span>,</span> <span>ulong</span> playerId<span>)</span><br><span>{</span><br> <span>if</span> <span>(</span>message<span>.</span><span>Contains</span><span>(</span><span>"gave"</span><span>)</span><span>)</span><br> <span>{</span><br> <span>Puts</span><span>(</span>$<span>"Message to {playerName} ({playerId}) cancelled"</span><span>)</span><span>;</span><br> <span>return</span> <span>false</span><span>;</span><br> <span>}</span><br><br> <span>return</span> <span>null</span><span>;</span><br><span>}</span>
<span>// Example that does not stop message from being sent</span><br><br><span>void</span> <span>OnServerMessage</span><span>(</span><span>string</span> message<span>,</span> <span>string</span> playerName<span>,</span> <span>string</span> color<span>,</span> <span>ulong</span> playerId<span>)</span><br><span>{</span><br> <span>Puts</span><span>(</span>$<span>"{playerName} ({playerId}) was sent message: {message}"</span><span>)</span><span>;</span><br><span>}</span>

  • Called after the server startup has been completed and is awaiting connections
  • Also called for plugins that are hotloaded while the server is already started running
  • Boolean parameter, false if called on plugin hotload and true if called on server initialization
  • No return behavior
<span>void</span> <span>OnServerInitialized</span><span>(</span><span>bool</span> initial<span>)</span><br><span>{</span><br> <span>Puts</span><span>(</span><span>"OnServerInitialized works!"</span><span>)</span><span>;</span><br><span>}</span>

  • Called every tick (defined by the tick rate of the server)
  • For better performance, avoid using heavy calculations in this hook.
  • No return behavior
<span>void</span> <span>OnTick</span><span>(</span><span>)</span><br><span>{</span><br> <span>Puts</span><span>(</span><span>"OnTick works!"</span><span>)</span><span>;</span><br><span>}</span>

  • Called before the server saves
  • No return behavior
<span>void</span> <span>OnServerSave</span><span>(</span><span>)</span><br><span>{</span><br> <span>Puts</span><span>(</span><span>"OnServerSave works!"</span><span>)</span><span>;</span><br><span>}</span>

MrFallen удали пожалуйста