Int32 _LastDir = -1; // 9시 방향부터 0 ~ 반시계방향으로 public CObjectPad(FCheck fCheck_, FPad fCallback_, float StandbyRange_, float ActiveRange_, bool Tracking_, Int32 ExpDirCount_) : base(fCheck_) { if (StandbyRange_ < 0.0f) { throw new Exception("Invalid StandbyRange"); } if (ActiveRange_ < 0.0f) { throw new Exception("Invalid ActiveRange"); } if (ExpDirCount_ < 0) { throw new Exception("Invalid ExpDirCount Count"); } _fCallback = fCallback_; _StandbyRange = StandbyRange_; _ActiveRange = ActiveRange_; _Tracking = Tracking_; for (Int32 i = 0; i < ExpDirCount_; ++i) { _DirCount *= 2; } _UnitTheta = Mathf.PI * 2.0f / _DirCount; _UnitTheta_2 = _UnitTheta * 0.5f; }
public CObjectStick(FCheck fCheck_, FStick fCallback_, float StandbyRange_, float ActiveRange_, bool Tracking_) : base(fCheck_) { if (StandbyRange_ < 0.0f) { throw new Exception("Invalid StandbyRange"); } if (ActiveRange_ < 0.0f) { throw new Exception("Invalid ActiveRange"); } _fCallback = fCallback_; _StandbyRange = StandbyRange_; _ActiveRange = ActiveRange_; _Tracking = Tracking_; }
public CObjectAim(FCheck fCheck_, FAim fCallback_) : base(fCheck_) { _fCallback = fCallback_; }
public abstract void Up(); // Update() 호출 지연으로 Touch phase 의 Ended 가 누락된 경우 호출 public CObject(FCheck fCheck_) { _fCheck = fCheck_; }
public CObjectScroll(FCheck fCheck_, FScroll fCallback_) : base(fCheck_) { _fCallback = fCallback_; }
public CObjectButton(FCheck fCheck_, FButton fCallback_) : base(fCheck_) { _fCallback = fCallback_; }