[Turn on line numbering]arg str; var end, offset, noses; end = str.length(); switch (str[end]) { case "!": return "exclaim"; case "?": return "ask"; case ".": return "say"; case ")": if (end > 1) { if (end > 2 && str[end - 1] == "-") offset = 2; else offset = 1; switch (str[end - offset]) { case ";": return "wink"; case ":", "=": return "smile"; case "8": return "grin"; default: return "say"; } } case "(": if (end > 1) { if (end > 2 && str[end - 1] == "-") offset = 2; else offset = 1; if (str[end - offset] in ["=", "8", ":"]) return "frown"; } } return "say";
// Created 27-Mar-1995 as a part of ColdCore, see: @help Credit