public void SetScore(float Obj, float total) { score = Obj; totalScore = total; pl.distWent = 0; if (_PlayerView.score > 0 && _Game.playersList.Count > 1) { var max = _Game.playersList.Where(a => a != _Player).Select(a => a.pv.score).Max(); if (max == _Player.pv.score && leadState != LeadState.Tie) { leadState = LeadState.Tie; //_Game.PlayOneShot(res.tieLead); } else if (max > _Player.pv.score && leadState != LeadState.Lost) { leadState = LeadState.Lost; _Game.PlayOneShot(res.lostLead); } else if (max < _Player.pv.score && leadState != LeadState.Taken) { leadState = LeadState.Taken; _Game.PlayOneShot(res.takenLead); } } }
public async Task InsertAsync(Guid leadId, DateTime timeStamp, LeadState state) { using (var context = _contextFactory.CreateDataContext()) { await context.AddAsync(new LeadStatisticEntity { LeadId = leadId, TimeStamp = timeStamp, State = state }); await context.SaveChangesAsync(); } }
public void SetState(Guid leadId, EnumState state, EnumStateActionTaken action, string userName) { var leadState = new LeadState() { LeadId = leadId, StateId = state.ToString(), Actor = userName, Action = action.ToString(), ActionTimestamp = DateHelper.Now }; _context.LeadStates.Add(leadState); }
public override void StartFSM() { _leadState = new LeadState <states>(this, flags, leadStopDistance, _treeStartPoint); _attackState = new AttackState <states>(this, flags, _treeStartPoint); _buffState = new BuffState <states>(this, flags, _treeStartPoint); _escapeState = new EscapeState <states>(this, flags, _treeStartPoint); _idleState = new IdleState <states>(this, flags, _treeStartPoint); _reloadState = new ReloadState <states>(this, flags, _treeStartPoint); fsm = new FSM <states>(_idleState); _idleState.AddTransition(states.Attack, _attackState); _idleState.AddTransition(states.Buff, _buffState); _idleState.AddTransition(states.Lead, _leadState); _idleState.AddTransition(states.Escape, _escapeState); _idleState.AddTransition(states.Reload, _reloadState); _leadState.AddTransition(states.Attack, _attackState); _leadState.AddTransition(states.Buff, _buffState); _leadState.AddTransition(states.Escape, _escapeState); _leadState.AddTransition(states.Idle, _idleState); _leadState.AddTransition(states.Reload, _reloadState); _attackState.AddTransition(states.Lead, _leadState); _attackState.AddTransition(states.Buff, _buffState); _attackState.AddTransition(states.Escape, _escapeState); _attackState.AddTransition(states.Idle, _idleState); _attackState.AddTransition(states.Reload, _reloadState); _reloadState.AddTransition(states.Idle, _idleState); _reloadState.AddTransition(states.Attack, _attackState); _reloadState.AddTransition(states.Buff, _buffState); _reloadState.AddTransition(states.Lead, _leadState); _reloadState.AddTransition(states.Escape, _escapeState); _buffState.AddTransition(states.Lead, _leadState); _buffState.AddTransition(states.Attack, _attackState); _buffState.AddTransition(states.Escape, _escapeState); _buffState.AddTransition(states.Idle, _idleState); _buffState.AddTransition(states.Reload, _reloadState); _escapeState.AddTransition(states.Idle, _idleState); _escapeState.AddTransition(states.Lead, _leadState); fsm.SetState(_idleState); }
private ReportInvoiceVM GetReportInvoiceVM(Lead lead, LeadAssignment assignment , LeadState submittedState, LeadAssignmentState assignedState, LeadAssignmentState acceptedState , LeadAssignmentState currentState, StateAction currentAction) { return(new ReportInvoiceVM() { LeadId = lead.Id, LeadDetails = lead.Details, SubmittedDateTime = DateHelper.ConvertFromUtc(submittedState.ActionTimestamp), SubmittedDateTimeString = DateHelper.ConvertFromUtc(submittedState.ActionTimestamp).ToShortDateString() + " " + DateHelper.ConvertFromUtc(submittedState.ActionTimestamp).ToShortTimeString(), LeadTypeId = lead.LeadType.Id, LeadTypeName = lead.LeadType.Name, LeadTypeImage = ImageHelper.PATH_CLIENT_LEAD_TYPE + lead.LeadType.Image, LeadTypePrice = lead.LeadType.Price, CustomerId = lead.Customer.Id, CustomerUnique = lead.Customer.ContactName + " (" + lead.Customer.EMail + ")", CustomerName = lead.Customer.ContactName, CustomerContactNumber = lead.Customer.ContactNumber, CustomerEmail = lead.Customer.EMail, CustomerBusinessName = lead.Customer.BusinessName, CustomerState = lead.Customer.Address.State, CustomerAddress = AddressHelper.MergeAddress(lead.Customer.Address), PartnerId = assignment.PartnerBranch.Partner.Id, PartnerName = assignment.PartnerBranch.Partner.Name, PartnerLogo = ImageHelper.PATH_CLIENT_PARTNER + assignment.PartnerBranch.Partner.Logo, PartnerAddress = AddressHelper.MergeAddress(assignment.PartnerBranch.Address), LeadAssignmentId = assignment.Id, AssignedDateTime = DateHelper.ConvertFromUtc(assignedState.ActionTimestamp), AssignedDateTimeString = DateHelper.ConvertFromUtc(assignedState.ActionTimestamp).ToShortDateString() + " " + DateHelper.ConvertFromUtc(assignedState.ActionTimestamp).ToShortTimeString(), AcceptedDateTime = DateHelper.ConvertFromUtc(acceptedState.ActionTimestamp), AcceptedDateTimeString = DateHelper.ConvertFromUtc(acceptedState.ActionTimestamp).ToShortDateString() + " " + DateHelper.ConvertFromUtc(acceptedState.ActionTimestamp).ToShortTimeString(), CurrentStateId = currentState.State.Id, CurrentStateName = currentState.State.Name, CurrentStateTag = StatusHelper.GetHtmlBadge(currentState.State.Id, currentState.State.Name), CurrentActionId = currentAction.Action.Id, CurrentActionName = currentAction.Action.ActionName }); }
/// <summary> /// Add lead state /// </summary> /// <param name="name"></param> /// <param name="styleClass"></param> /// <param name="description"></param> /// <returns></returns> public async Task <ResultModel <Guid> > AddLeadStateAsync([Required] string name, string styleClass, string description) { if (name.IsNullOrEmpty()) { return(new InvalidParametersResultModel <Guid>("Name must be not null")); } var order = await _context.States.CountAsync(); var leadState = new LeadState { Name = name, Order = order + 1, StateStyleClass = styleClass, Description = description }; await _context.States.AddAsync(leadState); var dbResult = await _context.PushAsync(); return(dbResult.IsSuccess ? new SuccessResultModel <Guid>(leadState.Id) : dbResult.Map(Guid.Empty)); }
public Task AddAsync(Guid leadId, DateTime timeStamp, LeadState state) { return(_leadStatisticRepository.InsertAsync(leadId, timeStamp, state)); }