private void UpdateCurrentTool(Client owner) { var toolName = owner.GetClientData <string>("tool_current", "tool_boxgun"); if (toolName == null) { return; } // Already the right tool if (CurrentTool != null && CurrentTool.Parent == this && CurrentTool.Owner == owner.Pawn && CurrentTool.ClassInfo.IsNamed(toolName)) { return; } if (CurrentTool != null) { CurrentTool?.Deactivate(); CurrentTool = null; } CurrentTool = Library.Create <BaseTool>(toolName, false); if (CurrentTool != null) { CurrentTool.Parent = this; CurrentTool.Owner = owner.Pawn as Player; CurrentTool.Activate(); } }
void UpdateCurrentTool(Player owner) { var toolName = owner.GetUserString("tool_current", "tool_boxgun"); if (toolName == null) { return; } DebugOverlay.ScreenText(0, $"tool_current: {toolName}"); DebugOverlay.ScreenText(1, $" CurrentTool: {CurrentTool}"); // Already the right tool if (CurrentTool != null && CurrentTool.Parent == this && CurrentTool.Owner == owner && CurrentTool.ClassInfo.IsNamed(toolName)) { return; } if (CurrentTool != null) { CurrentTool?.Deactivate(); CurrentTool = null; } CurrentTool = Library.Create <BaseTool>(toolName, false); if (CurrentTool != null) { CurrentTool.Parent = this; CurrentTool.Owner = owner; CurrentTool.Activate(); } }