package main import ( "strconv" ) func resetMsgParsingRules2() error { _, err := db.Exec(`TRUNCATE TABLE msg_rules;`) failOnError(err, "resetMsgParsingRules2 : truncate table msg_rules") if err != nil { return err } return nil } func resetMsgParsingRules() { _, err := db.Exec(`TRUNCATE TABLE msg_rules;`) failOnError(err, "resetMsgParsingRules : truncate table msg_rules") _, err = db.Exec(`INSERT INTO msg_rules (prio, msg_type_id, descn, rule) VALUES (5000, ` + strconv.Itoa(objSubTypeMessageReportAck) + `, "Player war report", "^(?P[πŸ‰πŸ¦…πŸΊπŸ¦ˆπŸ¦ŒπŸ₯”πŸŒ‘])(\\[(?P[A-Z0-9]{1,3})\\]){0,1}(?P([A-Za-z0-9 ]*)) βš”:(?P[0-9]+)(?P\\((-|\\+)[0-9]+\\)){0,1} πŸ›‘:(?P[0-9]+) Lvl: (?P[0-9]+)\\n` + `Your result on the battlefield:\\n` + `(πŸ”₯Exp: (?P[0-9]+)){0,1}(\\n)*` + `(πŸ’°Gold: (?P\\-{0,1}[0-9]+)){0,1}(\\n)*` + `(πŸ“¦Stock: (?P\\-{0,1}[0-9]+)){0,1}(\\n)*` + `(❀️Hp: (?P\\-[0-9]+)){0,1}(\\n)*` + `((?P(πŸ”‹Stamina restored))){0,1}(\\n(?P(⚑Critical strike))){0,1}$") ,(5000, ` + strconv.Itoa(objSubTypeMessageAuctionAnnounce) + `, "Auction annouce", "^Lot #(?P[0-9]+) : (?P.*)\\n` + `(Quality: (?P.*)\\n){0,1}` + `(Condition: (?P.*)\\n){0,1}` + `Seller: (?P[πŸ‰πŸ¦…πŸΊπŸ¦ˆπŸ¦ŒπŸ₯”πŸŒ‘])( ){0,1}(\\[(?P[A-Z0-9]{1,3})\\]){0,1}(?P.*){0,1}\\n` + `Current price: (?P[0-9]+) pouch\\(es\\)\\n` + `Buyer: (None|(?P[πŸ‰πŸ¦…πŸΊπŸ¦ˆπŸ¦ŒπŸ₯”πŸŒ‘])( ){0,1}(\\[(?P[A-Z0-9]{1,3})\\]){0,1}(?P.*){0,1})\\n` + `End At: (?P.*)\\n` + `Status: (?P.*)(\\n)` + `*(?s:.*)") ,(5000, ` + strconv.Itoa(objSubTypeMessageTimeAck) + `, "Time", "^In Chat Wars world now\\n` + `(?P