Ejemplo n.º 1
0
 protected virtual bool CanTouchNative(Touch touch)
 {
     VisualObject @this = this as VisualObject;
     CanTouchArgs args = new CanTouchArgs(@this, touch);
     TUI.Hooks.CanTouch.Invoke(args);
     lock (Locker)
         return Loaded && !Disposed && args.CanTouch;
 }
Ejemplo n.º 2
0
 private static void OnCanTouch(CanTouchArgs args)
 {
     if (args.Node.Configuration.Permission is string permission)
     {
         TSPlayer player = args.Touch.Player();
         args.CanTouch = player?.HasPermission(permission) ?? false;
         if (args.Touch.State == TouchState.Begin && player != null && args.CanTouch == false)
         {
             args.Touch.Session.Enabled = false;
             TUI.TUI.TrySetLockForObject(args.Node, args.Touch);
             player.SendErrorMessage("You do not have access to this interface.");
         }
     }
 }