private static void Bless(long QQNum, string BlessName, int BlessValue) { var response = PersonCacheRecord.Get(QQNum, "RandomFortune"); if (string.IsNullOrEmpty(response.Value)) { var randFor = GetRandomFortune(); var rf = new RandomFortuneCache() { QQNum = QQNum, FortuneValue = randFor, BlessName = BlessName, BlessValue = BlessValue }; response.Value = JsonConvert.SerializeObject(rf); response.ExpiryTime = CommonUtil.UntilTommorow(); response.Update(); } else { var model = JsonConvert.DeserializeObject <RandomFortuneCache>(response.Value); model.BlessName = BlessName; model.BlessValue = BlessValue; response.Value = JsonConvert.SerializeObject(model); response.ExpiryTime = CommonUtil.UntilTommorow(); response.Update(); } }
private static void RandBless(RandomFortuneCache rf) { if (rf.FortuneValue >= 50 || Rander.RandInt(100) > 20) { return; } var item = FortuneItemList.RandElement(); rf.BlessName = item.Name; rf.BlessValue = item.Value; }
private static void ShowRandFortune(MsgInformationEx MsgDTO, RandomFortuneCache rf) { var msg = "你今天的运势是:" + rf.FortuneValue + "%\r\n"; var builder = new StringBuilder(); builder.Append(msg); for (var i = 0; i < rf.FortuneValue; i++) { builder.Append("|"); } msg = builder.ToString(); MsgSender.PushMsg(MsgDTO, msg, true); }
public bool RandomFortune(MsgInformationEx MsgDTO, object[] param) { var response = PersonCacheRecord.Get(MsgDTO.FromQQ, "RandomFortune"); if (string.IsNullOrEmpty(response.Value)) { var randFor = GetRandomFortune(); var rf = new RandomFortuneCache { QQNum = MsgDTO.FromQQ, FortuneValue = randFor, BlessName = string.Empty, BlessValue = 0 }; RandBless(rf); ShowRandFortune(MsgDTO, rf); response.Value = JsonConvert.SerializeObject(rf); response.ExpiryTime = CommonUtil.UntilTommorow(); response.Update(); } else { ShowRandFortune(MsgDTO, JsonConvert.DeserializeObject <RandomFortuneCache>(response.Value)); } return(true); }
private static void ShowRandFortune(MsgInformationEx MsgDTO, RandomFortuneCache rf) { var msg = string.Empty; if (rf.BlessValue > 0) { rf.FortuneValue += rf.BlessValue; rf.FortuneValue = rf.FortuneValue > 100 ? 100 : rf.FortuneValue; msg += $"恭喜你受到了 {rf.BlessName} 的祝福\r\n"; msg += $"你今天的运势是:{rf.FortuneValue}%({rf.BlessValue}↑)\r\n"; } else if (rf.BlessValue < 0) { rf.FortuneValue += rf.BlessValue; rf.FortuneValue = rf.FortuneValue < 0 ? 0 : rf.FortuneValue; msg += $"哎呀呀,你受到了 {rf.BlessName} 的诅咒\r\n"; msg += $"你今天的运势是:{rf.FortuneValue}%({Math.Abs(rf.BlessValue)}↓)\r\n"; } else { msg += "你今天的运势是:" + rf.FortuneValue + "%\r\n"; } var builder = new StringBuilder(); builder.Append(msg); for (var i = 0; i < rf.FortuneValue; i++) { builder.Append("|"); } msg = builder.ToString(); MsgSender.PushMsg(MsgDTO, msg, true); }
private static void SetFortune(RandomFortuneCache fortune) { RapidCacher.SetCache($"RandomFortune:{fortune.QQNum}", fortune, CommonUtil.UntilTommorow()); }