public bool FeedPet(MsgInformationEx MsgDTO, object[] param) { var name = param[0] as string; var pet = PetRecord.Get(MsgDTO.FromQQ); var expRec = ExpeditionRecord.GetLastest(MsgDTO.FromQQ); if (expRec != null && expRec.IsExpediting) { MsgSender.PushMsg(MsgDTO, $"{pet.Name}正在【{expRec.Scene}】进行一项伟大的远征,请于{expRec.EndTime:yyyy-MM-dd HH:mm:ss}后再试!"); return(false); } if (string.IsNullOrEmpty(pet.Attribute)) { MsgSender.PushMsg(MsgDTO, "请先设置宠物食性!", true); return(false); } if (pet.LastFeedTime != null && pet.LastFeedTime.Value.AddHours(FeedInterval) > DateTime.Now) { var msg = $"{pet.Name}还饱着呢,不想吃东西(请与{pet.LastFeedTime.Value.AddHours(FeedInterval)}后再试)"; MsgSender.PushMsg(MsgDTO, msg); return(false); } var item = HonorSvc.FindItem(name); if (item != null) { return(FeedPetWithItem(MsgDTO, pet, item)); } var diet = CookingDietSvc[name]; if (diet != null) { return(FeedPetWithDiet(MsgDTO, pet, diet)); } MsgSender.PushMsg(MsgDTO, "未查找到相关物品或菜肴!"); return(false); }
public bool ViewSomething(MsgInformationEx MsgDTO, object[] param) { var name = param[0] as string; // 漂流瓶物品 if (HonorSvc.FindItem(name) != null) { return(CrossWorldAiSvc[MsgDTO.FromGroup].AIInstance <DriftBottleAI>().ViewItem(MsgDTO, param)); } // 漂流瓶成就 if (HonorSvc.FindHonor(name) != null) { return(CrossWorldAiSvc[MsgDTO.FromGroup].AIInstance <DriftBottleAI>().ViewHonor(MsgDTO, param)); } // 礼物 if (GiftSvc[name] != null) { return(CrossWorldAiSvc[MsgDTO.FromGroup].AIInstance <GiftAI>().ViewGift(MsgDTO, param)); } // 宠物技能 if (PetSkillSvc[name] != null) { return(CrossWorldAiSvc[MsgDTO.FromGroup].AIInstance <PetAI>().ViewPetSkill(MsgDTO, param)); } // 宝藏碎片 if (SegmentSvc.FindSegmentByName(name) != null) { return(CrossWorldAiSvc[MsgDTO.FromGroup].AIInstance <SegmentAttachAI>().ViewSegment(MsgDTO, param)); } // 宝藏 if (SegmentSvc.FindTreasureByName(name) != null) { return(CrossWorldAiSvc[MsgDTO.FromGroup].AIInstance <SegmentAttachAI>().ViewTreasure(MsgDTO, param)); } // 菜肴 if (CookingDietSvc[name] != null) { return(CrossWorldAiSvc[MsgDTO.FromGroup].AIInstance <CookingAI>().ViewDiet(MsgDTO, param)); } // 装备 if (DailyVipShopSvc[name] != null) { return(CrossWorldAiSvc[MsgDTO.FromGroup].AIInstance <VipServiceAi>().ViewArmer(MsgDTO, param)); } // 远程地点 if (ExpeditionSceneSvc[name] != null) { return(CrossWorldAiSvc[MsgDTO.FromGroup].AIInstance <ExpeditionAI>().ViewExpedition(MsgDTO, param)); } // 东方自定义卡牌 if (!string.IsNullOrEmpty(TouhouCardSvc[name])) { return(CrossWorldAiSvc[MsgDTO.FromGroup].AIInstance <TouhouCardAi>().ViewCardCard(MsgDTO, param)); } MsgSender.PushMsg(MsgDTO, "未查找到相关信息!"); return(false); }