private CallbackResult OnPotionRequest(byte[] data, CallbackResult prevState) { UnicodeSpeechRequest a = new UnicodeSpeechRequest(data); if (a.Text[0] != '.') { return(CallbackResult.Normal); } bool check = false; if (PotionDelays.ContainsKey(a.Text)) { foreach (var it in PotionCounter.Values) { if (it.Command.Equals(a.Text) && it.Amount == 0) { check = false; } else { check = true; } } if (!check) { return(CallbackResult.Eat); } if (DateTime.Now - DrinkTime > TimeSpan.FromSeconds(LastDrinkDelay + 1)) { DrinkTime = DateTime.Now; LastDrinkDelay = PotionDelays[a.Text]; if (a.Text == ".potioncure") { CureDrinked = true; CureDrinkTime = DateTime.Now; } return(CallbackResult.Normal); } else { UO.PrintError("Jeste nemuzes pit!!"); return(CallbackResult.Eat); } } return(CallbackResult.Normal); }
private static CallbackResult OnUnicodeSpeechRequest(byte[] data, CallbackResult prevResult) { UnicodeSpeechRequest packet = new UnicodeSpeechRequest(data); if (!Core.LoggedIn || packet.Text.Length == 0) { return(CallbackResult.Eat); } if (packet.Text[0] == ',') { ProcessCommand(packet.Text); return(CallbackResult.Eat); } else { return(CallbackResult.Normal); } }
private static IMacroCommand OnUnicodeSpeechRequest(byte[] data) { UnicodeSpeechRequest packet = new UnicodeSpeechRequest(data); return(new SpeechMacroCommand(packet.Color, packet.Text)); }