DeadworksPluginBase
Optional base class for plugins. Provides direct access to ITimer via a Timer property without needing interface casts or using aliases.
public abstract class DeadworksPluginBase : IDeadworksPlugin
Namespace: DeadworksManaged.Api
Inherits / implements: IDeadworksPlugin
Source: DeadworksPluginBase.cs#L7
Properties
DeadworksPluginBase.Name
Display name of the plugin.
Signature
public abstract string Name { get; }
Source: DeadworksPluginBase.cs#L8
DeadworksPluginBase.Timer
Per-plugin timer service.
Signature
protected ITimer Timer { get; }
Source: DeadworksPluginBase.cs#L17
DeadworksPluginBase.ContentAddons
Content addons this plugin needs connecting clients to download.
Signature
public virtual IReadOnlyList<string> ContentAddons { get; }
Source: DeadworksPluginBase.cs#L20
Methods
DeadworksPluginBase.OnLoad()
Called when the plugin is loaded or hot-reloaded.
Signature
public virtual void OnLoad(bool isReload)
Source: DeadworksPluginBase.cs#L13
DeadworksPluginBase.OnUnload()
Called when the plugin is unloaded. Clean up hooks and timers here.
Signature
public virtual void OnUnload()
Source: DeadworksPluginBase.cs#L14
DeadworksPluginBase.OnPrecacheResources()
Called during map load to precache resources (particles, models, etc). Use Precache.AddResource to register resources.
Signature
public virtual void OnPrecacheResources()
Source: DeadworksPluginBase.cs#L22
DeadworksPluginBase.OnStartupServer()
Called when the server starts up (new map load).
Signature
public virtual void OnStartupServer()
Source: DeadworksPluginBase.cs#L23
DeadworksPluginBase.OnGameFrame()
Called every server frame.
Signature
public virtual void OnGameFrame(bool simulating, bool firstTick, bool lastTick)
Source: DeadworksPluginBase.cs#L24
DeadworksPluginBase.OnTakeDamage()
Called when an entity takes damage. Return Stop to block the damage from being applied.
Signature
public virtual HookResult OnTakeDamage(TakeDamageEvent args)
Source: DeadworksPluginBase.cs#L25
DeadworksPluginBase.OnModifyCurrency()
Called when a player's currency is about to be modified. Return Stop to block the currency change.
Signature
public virtual HookResult OnModifyCurrency(ModifyCurrencyEvent args)
Source: DeadworksPluginBase.cs#L26
DeadworksPluginBase.OnChatMessage()
Called when a player sends a chat message. Return Stop to block the message from being processed further.
Signature
public virtual HookResult OnChatMessage(ChatMessage message)
Source: DeadworksPluginBase.cs#L27
DeadworksPluginBase.OnClientConCommand()
Called when a client sends a console command (e.g. selecthero, changeteam, respawn). Return Stop to block the command from being processed by the engine.
Signature
public virtual HookResult OnClientConCommand(ClientConCommandEvent args)
Source: DeadworksPluginBase.cs#L28
DeadworksPluginBase.OnClientConnect()
Called when a client is connecting. Return false to reject the connection. All plugins see the event regardless of any individual result.
Signature
public virtual bool OnClientConnect(ClientConnectEvent args)
Source: DeadworksPluginBase.cs#L29
DeadworksPluginBase.OnClientPutInServer()
Called when a client is put into the server (initial connection).
Signature
public virtual void OnClientPutInServer(ClientPutInServerEvent args)
Source: DeadworksPluginBase.cs#L30
DeadworksPluginBase.OnClientFullConnect()
Called when a client is fully in game: when they join, and again each time they finish loading into a new map. Bots included.
Signature
public virtual void OnClientFullConnect(ClientFullConnectEvent args)
Source: DeadworksPluginBase.cs#L31
DeadworksPluginBase.OnClientDisconnecting()
Called as a client starts disconnecting, while their controller and hero are still intact. A bot's hero is deleted right after this, so this is the place to hand it to someone else. OnClientDisconnect follows.
Signature
public virtual void OnClientDisconnecting(ClientDisconnectedEvent args)
Source: DeadworksPluginBase.cs#L32
DeadworksPluginBase.OnClientDisconnect()
Called after a client has disconnected. A player's controller and hero stay on the server for when they reconnect; a bot's hero is already gone.
Signature
public virtual void OnClientDisconnect(ClientDisconnectedEvent args)
Source: DeadworksPluginBase.cs#L33
DeadworksPluginBase.OnEntityCreated()
Called when an entity is created.
Signature
public virtual void OnEntityCreated(EntityCreatedEvent args)
Source: DeadworksPluginBase.cs#L34
DeadworksPluginBase.OnEntitySpawned()
Called when an entity has been fully spawned.
Signature
public virtual void OnEntitySpawned(EntitySpawnedEvent args)
Source: DeadworksPluginBase.cs#L35
DeadworksPluginBase.OnEntityDeleted()
Called when an entity is deleted.
Signature
public virtual void OnEntityDeleted(EntityDeletedEvent args)
Source: DeadworksPluginBase.cs#L36
DeadworksPluginBase.OnEntityStartTouch()
Called when an entity starts touching another entity (trigger zone entry, collision).
Signature
public virtual void OnEntityStartTouch(EntityTouchEvent args)
Source: DeadworksPluginBase.cs#L37
DeadworksPluginBase.OnEntityEndTouch()
Called when an entity stops touching another entity.
Signature
public virtual void OnEntityEndTouch(EntityTouchEvent args)
Source: DeadworksPluginBase.cs#L38
DeadworksPluginBase.OnModifierEvent()
Called when a modifier event fires (damage taken, ability cast, modifier gained/lost, ...). Observe-only.
Signature
public virtual void OnModifierEvent(ModifierEvent args)
Source: DeadworksPluginBase.cs#L39
DeadworksPluginBase.OnAbilityAttempt()
Called each think tick before ability execution. Set AbilityAttemptEvent.BlockedButtons to prevent specific abilities/items from being cast.
Signature
public virtual void OnAbilityAttempt(AbilityAttemptEvent args)
Source: DeadworksPluginBase.cs#L40
DeadworksPluginBase.OnProcessUsercmds()
Called when a player's usercmds are being processed.
Signature
public virtual void OnProcessUsercmds(ProcessUsercmdsEvent args)
Source: DeadworksPluginBase.cs#L41
DeadworksPluginBase.OnAddModifier()
Called when a modifier is about to be applied to an entity. Return Stop to block the modifier from being applied.
Signature
public virtual HookResult OnAddModifier(AddModifierEvent args)
Source: DeadworksPluginBase.cs#L42
DeadworksPluginBase.OnConfigReloaded()
Called after the plugin's config has been reloaded via dw_reloadconfig.
Signature
public virtual void OnConfigReloaded()
Source: DeadworksPluginBase.cs#L43
DeadworksPluginBase.OnCheckTransmit()
Called per-player each tick after the engine builds the default transmit list. Use CheckTransmitEvent.Hide to prevent entities from being networked to this player.
Signature
public virtual void OnCheckTransmit(CheckTransmitEvent args)
Source: DeadworksPluginBase.cs#L44
DeadworksPluginBase.OnPawnHeroInitialized()
Called whenever a pawn's hero abilities and modifiers have just been (re)populated server-side.
Signature
public virtual void OnPawnHeroInitialized(CCitadelPlayerPawn pawn)
Source: DeadworksPluginBase.cs#L45
DeadworksPluginBase.OnGameStateChanged()
Called after a CCitadelGameRules::ChangeGameState transition completes, whether the engine or a plugin (via GameRules.ChangeGameState) started it.
Signature
public virtual void OnGameStateChanged(EGameState newState)
Source: DeadworksPluginBase.cs#L46
DeadworksPluginBase.OnGameStateChanging()
Called before an engine-driven CCitadelGameRules::ChangeGameState transition is allowed to proceed. Return false to veto it. If multiple plugins implement this, any plugin returning false vetoes the transition. Transitions started by a plugin through GameRules.ChangeGameState are not vetoable. Default: allow.
Signature
public virtual bool OnGameStateChanging(EGameState currentState, EGameState newState)
Source: DeadworksPluginBase.cs#L47