4     [
Attribute(
"0", 
desc: 
"How long before kicked-out player can reconnect.\n-1 means permanent ban (at least until exe restart)")]
 
    5     protected int m_iKickTimeout;
 
    7     [
Attribute(uiwidget: UIWidgets.SearchComboBox, 
desc: 
"Reason for kicking shown to kicked-out player.", enums: ParamEnumArray.FromEnum(SCR_PlayerManagerKickReason))]
 
    8     protected SCR_PlayerManagerKickReason m_KickReason;
 
   13         SCR_EditablePlayerDelegateComponent playerDelegate = SCR_EditablePlayerDelegateComponent.Cast(selectedEntity);
 
   14         return playerDelegate && !
SCR_Global.IsAdmin(playerDelegate.GetPlayerID());
 
   20         return CanBeShown(selectedEntity, cursorWorldPosition, flags);
 
   24     override void Perform(
SCR_EditableEntityComponent hoveredEntity, notnull set<SCR_EditableEntityComponent> selectedEntities, vector cursorWorldPosition,
int flags, 
int param = -1)
 
   26         SCR_EditablePlayerDelegateComponent playerDelegate;     
 
   29             playerDelegate = SCR_EditablePlayerDelegateComponent.Cast(entity);
 
   32                 GetGame().GetPlayerManager().KickPlayer(playerDelegate.GetPlayerID(), m_KickReason, m_iKickTimeout);