// Use this for initialization void Start() { InitMinerData(); // Hay que hacer la fsm del agente fsm = new FSM(gameObject, this); // Crear los estados en que puede estar Bob Mining mining = new Mining(this); DepositInBank deposit = new DepositInBank(this); Sleeping sleep = new Sleeping(this); Eating eat = new Eating(this); Drinking drink = new Drinking(this); // Agregar eventos a los estados //sleep.AddEvent(EventList.events.dinnerReady); // Hay que agregarlos a la FSM fsm.AddState(StateID.Mining, mining); fsm.AddState(StateID.DepositInBank, deposit); fsm.AddState(StateID.Sleeping, sleep); fsm.AddState(StateID.Eating, eat); fsm.AddState(StateID.Drinking, drink); // Indicar cual es el estado inicial fsm.ChangeState(StateID.Mining); // Activo la fsm fsm.Activate(); }
public async Task <Sleeping> CreateSleeping(PostSleepingDTO sleepingDTO, int babyId) { if (sleepingDTO == null) { throw new ArgumentNullException(nameof(sleepingDTO)); } var babies = unitOfWork.Babies.GetAll(); var baby = babies.FirstOrDefault( baby => baby.Id == babyId); var sleeping = new Sleeping() { Name = sleepingDTO.Name, StartTime = sleepingDTO.StartTime, EndTime = sleepingDTO.EndTime, Notes = sleepingDTO.Notes, }; if (baby != null) { sleeping.BabyId = babyId; sleeping.Baby = baby; unitOfWork.Sleepings.Create(sleeping); await unitOfWork.SaveChangesAsync(); return(sleeping); } return(null); }
public IActionResult OnGet(int id) { var sleeping = sleepingsService.GetSleeping(id); EditSleeping = sleeping; return(Page()); }
public async Task <IActionResult> PutSleeping([FromRoute] Sleeping editSleeping) { var result = await sleepingsService.UpdateSleeping(editSleeping); if (result == null) { return(NotFound()); } return(NoContent()); }
public void SetSleep(int id) { Sleeping sleeping; if (!StatusDic.ContainsKey(id)) { sleeping = new Sleeping(id); StatusDic.Add(id, sleeping); } AbnormalRecorder.Add(AbnormalEnum.Sleep); }
void MakeFSM() { fsm = new FlexFSM(gameObject); Mining mining = new Mining(this); Drinking drinking = new Drinking(this); Sleeping sleeping = new Sleeping(this); MakingBankDeposit makingBankDeposit = new MakingBankDeposit(this); fsm.AddState(StateID.Mining, mining); fsm.AddState(StateID.Drinking, drinking); fsm.AddState(StateID.Sleeping, sleeping); fsm.AddState(StateID.MakingBankDeposit, makingBankDeposit); fsm.ChangeState(StateID.Mining); fsm.Activate(); }
public Sleeping GetSleeping(int id) { var result = unitOfWork.Sleepings.GetAllLazyLoad(s => s.Id == id, s => s.Baby).AsNoTracking().First(); var sleeping = new Sleeping() { Id = result.Id, Name = result.Name, StartTime = result.StartTime, EndTime = result.EndTime, Notes = result.Notes, BabyId = result.BabyId, Baby = new Baby { Id = result.BabyId } }; return(sleeping); }
protected override void Interact() { //wake a sleeping customer up if (GetComponentInChildren <Sleeping>()) { Sleeping tag = GetComponentInChildren <Sleeping>(); CustomerController controller = tag.gameObject.GetComponent <CustomerController>(); //change bed sprite to dirty bed ChangeBedSprite(false); controller.TransportCustomer(customerNode); } //clean bed, retrieve sheets and pajamas if (HasItemTransferrableChild()) { Player receiver = Player.Instance; //retrieve the sheets and change it to a dirty item transferrable bool received = receiver.GetItemFrom(this, -1, content as Sheets, out List <ItemTransferrable> sheets); if (received) { AddDirtyTag(sheets); } //retrieve the pajamas and change it to a dirty item transferrable received = receiver.GetItemFrom(this, -1, _content, out List <ItemTransferrable> pajamas); if (received) { AddDirtyTag(pajamas); } if (!HasItemTransferrableChild()) { ChangeBedSprite(true); } } }
public async Task <Sleeping> UpdateSleeping(Sleeping editSleeping) { if (editSleeping == null) { throw new ArgumentNullException(nameof(editSleeping)); } var babies = unitOfWork.Babies.GetAll(); var baby = babies.FirstOrDefault( baby => baby.Id == editSleeping.Baby.Id); var sleepings = unitOfWork.Sleepings.GetAll(); var sleeping = sleepings.FirstOrDefault( sleeping => sleeping.Id == editSleeping.Id); if (sleeping != null) { sleeping.Name = editSleeping.Name; sleeping.StartTime = editSleeping.StartTime; sleeping.EndTime = editSleeping.EndTime; sleeping.Notes = editSleeping.Notes; } if (baby != null) { sleeping.BabyId = editSleeping.Baby.Id; sleeping.Baby = baby; unitOfWork.Sleepings.Update(sleeping); await unitOfWork.SaveChangesAsync(); return(sleeping); } return(null); }
public async Task Send(Sleeping sleeping, User user) { var message = "Let your baby to sleep"; await Clients.Caller.SendAsync("Receive", user, message); }
protected virtual void OnSleeping(RenderTimer timer) { Sleeping?.Invoke(this, new FrameStageEventArgs(timer)); }
private static void BotVoid() { LocalizationController.SetLanguage(Config.language); while (true) { Thread.Sleep(100); if (Config.sleepenabled) { Sleeping.Sleep(); } if ((DateTime.Now - _lastdefinv).TotalSeconds >= 10) { if (Config.autoupgrade) { Buildings.AutoUpgrade(Config.upgradeonlyfactory); } if (Config.autoship) { Outposts.ConfirmOutpost(); Upgradable.UpgradeUpgradable(); Contractor.UpgradeContractor(); Ships.AutoShip(); } if (Config.collectfish) { FishPier.CollectFish(); } if (Config.collectmuseum) { Museum.CollectMuseum(); } if (Config.collectfactory) { Buildings.CollectMaterials(); } if (Config.prodfactory) { Factories.ProduceFactories(); } if (Config.finishupgrade) { Buildings.FinishUpgrade(); } _lastdefinv = DateTime.Now; } if (Config.barrelhack && (DateTime.Now - _lastbarrel).TotalSeconds >= Config.barrelinterval) { Barrels.CollectBarrel(); _lastbarrel = DateTime.Now; } } }