/// <summary> /// Check if the req allow it /// </summary> /// <param name="player"></param> /// <param name="final"></param> /// <returns>true=can use it, false=not possible</returns> public bool Check(Player player, bool final = false) { foreach (var req in reqs) { //can use it? BaseReq r = OLib.GetReq(req[0]); if (!r.Check(player, req[1]) && (r.Final(player, req[1]) || !final)) { return(false); } } return(true); }
/// <summary> /// Check if the req allow it /// </summary> /// <param name="player"></param> /// <param name="reqs"></param> /// <param name="onMap"></param> /// <param name="pos"></param> /// <returns>true=can use it, false=not possible</returns> public static bool CheckOnlyFinal(Player player, Dictionary <string, string> reqs, MapElementInfo onMap, NVector pos) { foreach (KeyValuePair <string, string> req in reqs) { //can use it? BaseReq r = OLib.GetReq(req.Key); if (!r.Check(player, onMap, req.Value, pos) && r.Final(player, onMap, req.Value, pos)) { return(false); } } return(true); }
/// <summary> /// Check if the req allow it /// </summary> /// <param name="player"></param> /// <param name="onMap"></param> /// <param name="pos"></param> /// <param name="final"></param> /// <returns>true=can use it, false=not possible</returns> public bool Check(Player player, MapElementInfo onMap, NVector pos, bool final = false) { foreach (var req in reqs) { //can use it? BaseReq r = OLib.GetReq(req[0]); if (!r.Check(player, onMap, req[1], pos) && (r.Final(player, onMap, req[1], pos) || !final)) { return(false); } } return(true); }