public override ReturnType GetEnterResults( Move move, out EnterResult result, out IEnumerable <MoveResult> moveResults) { moveResults = new MoveResult[0]; result = new EnterResult { Position = move.Position, Destination = move.Position + Vector3Int.up, Step = Vector3Int.up, Entered = null, Moved = null, // TODO arriving at the ledge Offset = Vector3Int.zero, PitchAngle = 0, MoveType = MoveType.Climbing }; if (!LevelSession.Instance.Get( _levelPosition + Vector3Int.up, out BaseObject _ )) { result.Destination = _levelPosition + Vector3Int.up; } return(ReturnType.Succeeded_Next); //return base.GetEnterResults(move, out result, out moveResults); }
public HttpResponseMessage accountEnter([FromBody] EnterRequest nEnterRequest) { AccountInfo accountInfo_ = AccountAspect.getAccountId(nEnterRequest.mAccountName, nEnterRequest.mPassword, nEnterRequest.mAccountType); EnterResult enterResult_ = new EnterResult(); enterResult_.mErrorCode = ConstAspect.mFail; enterResult_.mAuthority = 0; enterResult_.mRoleItem = null; if ((null == accountInfo_) || (accountInfo_.mAccountId <= 0) || (accountInfo_.mAccountId != nEnterRequest.mAccountId)) { enterResult_.mErrorCode = ConstAspect.mAccount; return(ConstAspect.toJson(enterResult_)); } enterResult_.mAuthority = accountInfo_.mAuthority; RoleItem roleItem_ = RoleAspect.getRoleInfo(nEnterRequest.mOperatorName, nEnterRequest.mVersionNo, nEnterRequest.mAccountId, nEnterRequest.mRoleId, nEnterRequest.mServerId); if (null == roleItem_) { enterResult_.mErrorCode = ConstAspect.mRole; return(ConstAspect.toJson(enterResult_)); } enterResult_.mErrorCode = ConstAspect.mSucess; enterResult_.mRoleItem = roleItem_; if (nEnterRequest.mStart) { RoleAspect.updateRoleStart(nEnterRequest.mOperatorName, nEnterRequest.mVersionNo, nEnterRequest.mAccountId, nEnterRequest.mServerId, nEnterRequest.mRoleId); } return(ConstAspect.toJson(enterResult_)); }
// TODO public override ReturnType GetEnterResults( Move move, out EnterResult enterResult, out IEnumerable <MoveResult> moveResults ) { if (base.GetEnterResults( move, out enterResult, out moveResults ) > 0) { var dir = move.Step.SetY(0); // Moving up or moving down if ((move.Step.y >= 0 && dir == _direction) || (move.Step.y != 0 && dir == -_direction)) { enterResult.PitchAngle = dir == _direction ? VisitorAngle : -VisitorAngle; enterResult.Offset = Vector3.up * Level.CellSize / 2; return(ReturnType.Succeeded_Next); } } return(ReturnType.Failed); }
public override ReturnType GetEnterResults( Move move, out EnterResult result, out IEnumerable <MoveResult> moveResults) { result = null; moveResults = null; return(ReturnType.Failed); }
public override ReturnType GetEnterResults( Move move, out EnterResult result, out IEnumerable <MoveResult> results) { result = new EnterResult(); results = new MoveResult[0]; return(ReturnType.Failed); }
public override ReturnType GetEnterResults( Move move, out EnterResult enterResult, out IEnumerable <MoveResult> results) { results = new MoveResult[0]; enterResult = null; if (move.User is Characters.Character) { return(ReturnType.Failed); } return(base.GetEnterResults( move, out enterResult, out results)); }
public override ReturnType GetEnterResults( Move move, out EnterResult enterResult, out IEnumerable <MoveResult> moveResults ) { enterResult = null; moveResults = new MoveResult[0]; if (_visitor != null && !_struggleTimer.IsActive) { // Stepping on top of the visitor enterResult = new EnterResult { Destination = _levelPosition + Vector3Int.up, Moved = null, Entered = null, PitchAngle = 0f, MoveType = MoveType.Moving, Offset = Vector3.zero, Position = move.Position, Scale = 1, Step = move.Step.SetY(0) }; return(ReturnType.Succeeded_Next); } else { return(base.GetEnterResults( move, out enterResult, out moveResults )); } }
public override ReturnType GetEnterResults( Move move, out EnterResult enterResult, out IEnumerable <MoveResult> moveResults) { if (base.GetEnterResults( move, out enterResult, out moveResults) > 0) { enterResult.Entered = null; moveResults = new MoveResult[0]; if (LevelSession .Instance .GetOtherPortal( this, out Portal otherPortal)) { enterResult.Step = otherPortal.Transform.forward.ToVector3Int(); enterResult.MoveType = MoveType.UsingPortal; enterResult.Position = otherPortal._levelPosition; enterResult.Destination = enterResult.Position + enterResult.Step; enterResult.Offset = Vector3.up * Level.CellSize / 2; enterResult.Scale = EnterScale; if (LevelSession.Instance.Get( enterResult.Destination, out enterResult.Moved)) { if (enterResult.Moved.GetMoveResults( new Move { Type = MoveType.Moving, Entered = null, Position = enterResult.Destination, Step = enterResult.Step, User = enterResult.Moved }, out moveResults, isRecursiveCall: true) > 0) { return(ReturnType.Succeeded_Next); } else if (enterResult.Moved.GetEnterResults( new Move { Type = MoveType.Moving, Entered = null, Position = enterResult.Position, Step = enterResult.Step, User = move.User, Source = move.Source }, out EnterResult nextEnterResult, out moveResults) > 0) { enterResult.Position = nextEnterResult.Position; enterResult.Step = nextEnterResult.Step; enterResult.Destination = nextEnterResult.Position + nextEnterResult.Step; enterResult.Entered = nextEnterResult.Entered; enterResult.Moved = nextEnterResult.Moved; return(ReturnType.Succeeded_Next); } } else { return(ReturnType.Succeeded_Next); } } } return(ReturnType.Failed);; }