using Godot; using System.Collections; using System.Collections.Generic; using Godot.Collections; namespace Rokojori { [GlobalClass] public partial class Pointer:Node3D { [Export] public Pointable pointable; [Export] public Caster caster; public override void _Process( double delta ) { if ( caster == null ) { return; } var currentCollider = caster.NumColliders() == 0 ? null : caster.GetCollider( 0 ); var currentPointable = currentCollider == null ? null : Nodes.Find( currentCollider ); // RJLog.Log( currentCollider, currentPointable ); if ( currentPointable == pointable ) { return; } if ( pointable != null ) { pointable.UpdatePointerState( this, false ); } pointable = currentPointable; if ( pointable != null ) { pointable.UpdatePointerState( this, true ); } } } }