Results 1 to 7 of 7

Thread: Roshamuul loot counter

  1. #1
    Normal User
    Join Date
    Mar 2013
    Posts
    19
    Mentioned
    2 Post(s)
    Tagged
    0 Thread(s)
    Quoted
    1 Post(s)
    Reputation
    10
    Rep Power
    4

    Roshamuul loot counter

    Hello

    I am hunting in Roshamuul with a blocker and I need loot counter to we share the loot. Could anyone give me one? Ty =]

  2. #2
    iBot User sto1p's Avatar
    Join Date
    Feb 2012
    Posts
    483
    Mentioned
    32 Post(s)
    Tagged
    0 Thread(s)
    Quoted
    120 Post(s)
    Reputation
    31
    Rep Power
    5
    Roshamuul HUD
    Frazzlemaw
    Silencer
    Shock Head
    Lua Code:
    -- [[ INIT START ]] --
        --
        --                       88                                                                
        --                       ""                                                ,d              
        --                                                                         88              
        --            ,adPPYba,  88  8b,dPPYba,  88,dPYba,,adPYba,   ,adPPYYba,  MM88MMM  ,adPPYba,
        --            I8[    ""  88  88P'   "Y8  88P'   "88"    "8a  ""     `Y8    88    a8P_____88
        --             `"Y8ba,   88  88          88      88      88  ,adPPPPP88    88    8PP"""""""
        --            aa    ]8I  88  88          88      88      88  88,    ,88    88,   "8b,   ,aa
        --   Author:  `"YbbdP"'  88  88          88      88      88  `"8bbdP"Y8    "Y888  `"Ybbd8"'
        --   
        --   Monitor My Hunting!
        --
        --   Version: 1.0
        --   Created: 7.09.2012
        --   Last update: 18.09.2012
        --
     
        MONITOR_MY_HUNTING = MONITOR_MY_HUNTING or {
            SCRIPT_NAME = "Monitor My Hunting",
            SCRIPT_VERSION = "1.0",
     
            CLEARED_STATS = false,
            INITIALIZED = false,
        }
     
        MONITOR_MY_HUNTING.SHOW_ALL_ITEMS = false
        MONITOR_MY_HUNTING.ITEMS_LIST = {
            {NAME = "Gold Coin", VALUE = 1},
            {NAME = "Platinum Coin", VALUE = 100},
            {NAME = "Great Mana Potion", VALUE = 0},
            {NAME = "Great Health Potions", VALUE = 0},
            {NAME = "Frazzle Skin", VALUE = 400},
            {NAME = "Frazzle Tongue", VALUE = 700},
            {NAME = "Brown Crystal Splinter", VALUE = 400},
            {NAME = "Skull", VALUE = 0},
            {NAME = "Fish Tail", VALUE = 0},
            {NAME = "Banana Skin", VALUE = 0},
            {NAME = "Piece of Iron", VALUE = 0},
            {NAME = "Fishbone", VALUE = 0},
            {NAME = "Remains of a Fish", VALUE = 0},
            {NAME = "Bone", VALUE = 0},
            {NAME = "Crystal Rubbish", VALUE = 0},
            {NAME = "Fish", VALUE = 0},
            {NAME = "Red Crystal Fragment", VALUE = 800},
            {NAME = "Ham", VALUE = 4},
            {NAME = "Big Bone", VALUE = 0},
            {NAME = "Fish Fin", VALUE = 150},
            {NAME = "Hardened Bone", VALUE = 70},
            {NAME = "Violet Crystal Shard", VALUE = 1500},
            {NAME = "Iron Ore", VALUE = 500},
            {NAME = "Haunted Blade", VALUE = 8000},
            {NAME = "Two Handed Sword", VALUE = 450},
            {NAME = "Gold Ingot", VALUE = 5000},
            {NAME = "Sai", VALUE = 16500},
            {NAME = "Nightmare Blade", VALUE = 35000},
            {NAME = "Assassin Dagger", VALUE = 20000},
            {NAME = "Cluster of Solace", VALUE = 0},
            {NAME = "Silencer Claws", VALUE = 390},
            {NAME = "Assassin Star", VALUE = 100},
            {NAME = "Silencer Resonating Chamber", VALUE = 600},
            {NAME = "Dark Shield", VALUE = 400},
            {NAME = "Glorious Axe", VALUE = 3000},
            {NAME = "Titan Axe", VALUE = 4000},
            {NAME = "Stealth Ring", VALUE = 200},
            {NAME = "Terra Legs", VALUE = 11000},
            {NAME = "Diamond Sceptre", VALUE = 3000},
            {NAME = "Boots of Haste", VALUE = 30000},
            {NAME = "Terra Boots", VALUE = 2500},
            {NAME = "Shadow Sceptre", VALUE = 10000},
            {NAME = "Small Sapphire", VALUE = 250},
            {NAME = "Royal Helmet", VALUE = 30000},
            }
     
        MONITOR_MY_HUNTING.SHOW_ALL_SUPPLIES = true
        MONITOR_MY_HUNTING.SUPPLIES_LIST = {
            {NAME = "strong mana potion", PRICE = 80},
            {NAME = "great mana potion", PRICE = 120},
            {NAME = "sudden death rune", PRICE = 108},
            {NAME = "thunderstorm rune", PRICE = 38},
        }
     
        -- [[ DO NOT CHANGE ANYTHING BELOW THIS LINE. ]] --
     
        MONITOR_MY_HUNTING.TEMP_ITEMS_LIST = MONITOR_MY_HUNTING.TEMP_ITEMS_LIST or {}
        MONITOR_MY_HUNTING.TEMP_SUPPLIES_LIST = MONITOR_MY_HUNTING.TEMP_SUPPLIES_LIST or {}
        MONITOR_MY_HUNTING.COLORS = MONITOR_MY_HUNTING.COLORS or {
            BLACK = rgbcolor(1, 1, 1),
            ORANGE = rgbcolor(255, 165, 0),
            BLUE = rgbcolor(30, 144, 255),
            CORNSILK = rgbcolor(205, 200, 177),
            WHITE = rgbcolor(255, 255, 255),
            GREEN = rgbcolor(107, 142, 35),
            RED = rgbcolor(178, 34, 34),
        }
     
        local function CreateMessageObject(MESSAGE_DATA)
            if (type(MESSAGE_DATA) ~= "userdata") then
                return setmetatable({__data = {TYPE = -1, TIME_STAMP = -1, SENDER_NAME = "", SENDER_LEVEL = -1, CONTENT = ""}}, MessageMetaTable)
            else
                return setmetatable({__data = {TYPE = MESSAGE_DATA.type, TIME_STAMP = Misc.ConvertToSeconds(string.sub(MESSAGE_DATA.text  , 1, 5)), SENDER_NAME = MESSAGE_DATA.sender, SENDER_LEVEL = tonumber((tostring(string.match(MESSAGE_DATA.text, ".+ (%b[]): .+")):gsub("[^%d]", ""))) or 0, CONTENT = string.sub(MESSAGE_DATA.text, 7)}}, MessageMetaTable)
            end
        end
     
        local function addtextshadow(text, xpos, ypos, color)
            addtext(text, xpos+1, ypos)
            addtext(text, xpos-1, ypos)
            addtext(text, xpos, ypos+1)
            addtext(text, xpos, ypos-1)
            setfontcolor(color)
            addtext(text, xpos, ypos)
            setfontcolor(rgbcolor(1,1,1))
        end
    -- [[ INIT END ]] --
     
    if (not Stats.Update()) then
        local SERVER_LOG_MESSAGES = getnewmessages("Server Log")
        local SERVER_LOG_MESSAGES_COUNT = SERVER_LOG_MESSAGES.count - 1
     
        for INDEX = 0, SERVER_LOG_MESSAGES_COUNT do
            local MESSAGE_OBJECT = CreateMessageObject(SERVER_LOG_MESSAGES[SERVER_LOG_MESSAGES_COUNT - INDEX])
     
            if (MESSAGE_OBJECT:Type() == 20 and MESSAGE_OBJECT:Content():lower():match("^loot of")) then
                local LOOT_INFO = Message.ParseLootMessage(MESSAGE_OBJECT, true)
     
                if (#LOOT_INFO.NAME > 0) then
                    Stats.__data.MONSTERS_KILLED[LOOT_INFO.NAME] = (Stats.__data.MONSTERS_KILLED[LOOT_INFO.NAME] or 0) + 1
     
                    for _, LOOT_ITEM in ipairs(LOOT_INFO.ITEMS) do
                        if (Stats.__data.ITEMS_LOOTED[LOOT_ITEM.ID]) then
                            Stats.__data.ITEMS_LOOTED[LOOT_ITEM.ID].QUANTITY = Stats.__data.ITEMS_LOOTED[LOOT_ITEM.ID].QUANTITY + LOOT_ITEM.QUANTITY
                        else
                            Stats.__data.ITEMS_LOOTED[LOOT_ITEM.ID] = {ID = LOOT_ITEM.ID, NAME = LOOT_ITEM.NAME, QUANTITY = LOOT_ITEM.QUANTITY, VALUE = Item.GetValue(LOOT_ITEM.ID)}
                        end
                    end
                end
            end
        end
    end
     
    local RESET_ITEMS_AND_SUPPLIES = #MONITOR_MY_HUNTING.ITEMS_LIST ~= MONITOR_MY_HUNTING.TEMP_ITEMS_LIST or #MONITOR_MY_HUNTING.SUPPLIES_LIST ~= MONITOR_MY_HUNTING.TEMP_SUPPLIES_LIST
     
    if (not RESET_ITEMS_AND_SUPPLIES) then
        for INDEX, LOOT_ITEM in ipairs(MONITOR_MY_HUNTING.ITEMS_LIST) do
            if (LOOT_ITEM.NAME ~= MONITOR_MY_HUNTING.TEMP_ITEMS_LIST[INDEX].NAME or LOOT_ITEM.VALUE ~= MONITOR_MY_HUNTING.TEMP_ITEMS_LIST[INDEX].VALUE) then
                RESET_ITEMS_AND_SUPPLIES = true
                break
            end
        end
    end
     
    if (not RESET_ITEMS_AND_SUPPLIES) then
        for INDEX, SUPPLY_ITEM in ipairs(MONITOR_MY_HUNTING.SUPPLIES_LIST) do
            if (SUPPLY_ITEM.NAME ~= MONITOR_MY_HUNTING.TEMP_SUPPLIES_LIST[INDEX].NAME or SUPPLY_ITEM.PRICE ~= MONITOR_MY_HUNTING.TEMP_SUPPLIES_LIST[INDEX].PRICE) then
                RESET_ITEMS_AND_SUPPLIES = true
                break
            end
        end
    end
     
    if (not MONITOR_MY_HUNTING.INITIALIZED or RESET_ITEMS_AND_SUPPLIES) then
        if (not MONITOR_MY_HUNTING.CLEARED_STATS) then
            Stats.Clear(CLEAR_STATS_ALL)
            Stats.Update()
     
            MONITOR_MY_HUNTING.CLEARED_STATS = true
        end
     
        MONITOR_MY_HUNTING.TEMP_ITEMS_LIST, MONITOR_MY_HUNTING.TEMP_SUPPLIES_LIST = {}, {}
     
        for _, LOOT_ITEM in ipairs(MONITOR_MY_HUNTING.ITEMS_LIST) do
            local LOOT_ITEM_ID = Item.GetID(type(LOOT_ITEM.NAME) ~= "table" and LOOT_ITEM.NAME or unpack(LOOT_ITEM.NAME))
     
            Stats.AddItemsLooted(LOOT_ITEM_ID, 0, LOOT_ITEM.VALUE)
            table.insert(MONITOR_MY_HUNTING.TEMP_ITEMS_LIST, {ID = LOOT_ITEM_ID, NAME = LOOT_ITEM.NAME, VALUE = LOOT_ITEM.VALUE})
        end
     
        for _, SUPPLY_ITEM in ipairs(MONITOR_MY_HUNTING.SUPPLIES_LIST) do
            local SUPPLY_ITEM_ID = Item.GetID(type(SUPPLY_ITEM.NAME) ~= "table" and SUPPLY_ITEM.NAME or unpack(SUPPLY_ITEM.NAME))
     
            Stats.AddSuppliesUsed(SUPPLY_ITEM_ID, 0, SUPPLY_ITEM.PRICE)
            table.insert(MONITOR_MY_HUNTING.TEMP_SUPPLIES_LIST  , {ID = SUPPLY_ITEM_ID, NAME = SUPPLY_ITEM.NAME, PRICE = SUPPLY_ITEM.PRICE})
        end
     
        MONITOR_MY_HUNTING.INITIALIZED = true
    end
     
    setposition(Client.ClientWindow().right - 434, Client.WorldWindow().top + 5)
     
    local Y_POSITION, INDEX, ITEMS_LOOTED_WORTH, SUPPLIES_USED_WORTH = 30, 0, 0, 0
     
    addtextshadow(sprintf("%s v%s", MONITOR_MY_HUNTING.SCRIPT_NAME:upper(), MONITOR_MY_HUNTING.SCRIPT_VERSION), 10, Y_POSITION + (INDEX * 16), MONITOR_MY_HUNTING.COLORS.ORANGE)
     
    Y_POSITION = Y_POSITION + 20
     
    addtextshadow("ITEMS LOOTED", 10, Y_POSITION + (INDEX * 16), MONITOR_MY_HUNTING.COLORS.BLUE)
     
    Y_POSITION = Y_POSITION + 20
     
    for _, LOOT_ITEM in pairs(Stats.GetItemsLooted()) do
        if ((MONITOR_MY_HUNTING.SHOW_ALL_ITEMS or table.find(MONITOR_MY_HUNTING.TEMP_ITEMS_LIST, LOOT_ITEM.ID, "ID")) and LOOT_ITEM.QUANTITY > 0) then
        addtextshadow(((#LOOT_ITEM.NAME > 17 and sprintf("%s...", string.match(string.sub(LOOT_ITEM.NAME, 1, 17), "(.-)%s?$"))) or LOOT_ITEM.NAME):ucwords(), 10, Y_POSITION + (INDEX * 16), MONITOR_MY_HUNTING.COLORS.CORNSILK)
        addtextshadow(sprintf("%s (%sK)", Misc.FormatNumber(LOOT_ITEM.QUANTITY), tostring(math.floor(LOOT_ITEM.VALUE * LOOT_ITEM.QUANTITY / 100) / 10)), 140, Y_POSITION + (INDEX * 16), MONITOR_MY_HUNTING.COLORS.WHITE)
     
        INDEX, ITEMS_LOOTED_WORTH = INDEX + 1, ITEMS_LOOTED_WORTH + (LOOT_ITEM.VALUE * LOOT_ITEM.QUANTITY)
        end
    end
     
    addtextshadow("Total:", 10, Y_POSITION + (INDEX * 16), MONITOR_MY_HUNTING.COLORS.WHITE)
    addtextshadow(sprintf("%s GPs", Misc.FormatNumber(ITEMS_LOOTED_WORTH)), 10 + 35, Y_POSITION + (INDEX * 16), MONITOR_MY_HUNTING.COLORS.ORANGE)
     
    Y_POSITION = Y_POSITION + 20
     
    addtextshadow("SUPPLIES USED", 10, Y_POSITION + (INDEX * 16), MONITOR_MY_HUNTING.COLORS.BLUE)
     
    Y_POSITION = Y_POSITION + 20
     
    for _, SUPPLY_ITEM in pairs(Stats.GetSuppliesUsed()) do
        if ((MONITOR_MY_HUNTING.SHOW_ALL_SUPPLIES or table.find(MONITOR_MY_HUNTING.TEMP_SUPPLIES_LIST, SUPPLY_ITEM.ID, "ID")) and SUPPLY_ITEM.QUANTITY > 0) then
            addtextshadow(((#SUPPLY_ITEM.NAME > 17 and sprintf("%s...", string.match(string.sub(SUPPLY_ITEM.NAME, 1, 17), "(.-)%s?$"))) or SUPPLY_ITEM.NAME):ucwords(), 10, Y_POSITION + (INDEX * 16), MONITOR_MY_HUNTING.COLORS.CORNSILK)
            addtextshadow(sprintf("%s (%sK)", Misc.FormatNumber(SUPPLY_ITEM.QUANTITY), tostring(math.floor(SUPPLY_ITEM.PRICE * SUPPLY_ITEM.QUANTITY / 100) / 10)), 140, Y_POSITION + (INDEX * 16), MONITOR_MY_HUNTING.COLORS.WHITE)
     
            INDEX, SUPPLIES_USED_WORTH = INDEX + 1, SUPPLIES_USED_WORTH + (SUPPLY_ITEM.PRICE * SUPPLY_ITEM.QUANTITY)
        end
    end
     
    addtextshadow("Total:", 10, Y_POSITION + (INDEX * 16), MONITOR_MY_HUNTING.COLORS.WHITE)
    addtextshadow(sprintf("%s GPs", Misc.FormatNumber(SUPPLIES_USED_WORTH)), 10 + 35, Y_POSITION + (INDEX * 16), MONITOR_MY_HUNTING.COLORS.ORANGE)
     
    Y_POSITION = Y_POSITION + 20
     
    addtextshadow(sprintf("%s: %s GPs (%s K/H)", ((ITEMS_LOOTED_WORTH >= SUPPLIES_USED_WORTH and ("PROFIT")) or ("WASTE")), Misc.FormatNumber(ITEMS_LOOTED_WORTH - SUPPLIES_USED_WORTH), tostring(math.floor(((ITEMS_LOOTED_WORTH - SUPPLIES_USED_WORTH) * 3600) / (System.HuntingTime() / 1000) / 100) / 10)), 10, Y_POSITION + (INDEX * 16), ITEMS_LOOTED_WORTH >= SUPPLIES_USED_WORTH and MONITOR_MY_HUNTING.COLORS.GREEN or MONITOR_MY_HUNTING.COLORS.RED)
    Last edited by pink_panther; 03-28-2014 at 12:20 AM.

  3. #3
    Focus Group Gryllz's Avatar
    Join Date
    Jun 2012
    Location
    Dubai
    Posts
    3,482
    Mentioned
    89 Post(s)
    Tagged
    1 Thread(s)
    Quoted
    236 Post(s)
    Reputation
    342
    Rep Power
    10

  4. #4
    iBot User sto1p's Avatar
    Join Date
    Feb 2012
    Posts
    483
    Mentioned
    32 Post(s)
    Tagged
    0 Thread(s)
    Quoted
    120 Post(s)
    Reputation
    31
    Rep Power
    5
    Roshamuul HUD
    Frazzlemaw
    Silencer
    Shock Head
    Retching Horror
    Chocking Fear
    Guzzlemaw
    Sight of Surrender


    Lua Code:
    -- [[ INIT START ]] --
        --
        --                       88                                                                
        --                       ""                                                ,d              
        --                                                                         88              
        --            ,adPPYba,  88  8b,dPPYba,  88,dPYba,,adPYba,   ,adPPYYba,  MM88MMM  ,adPPYba,
        --            I8[    ""  88  88P'   "Y8  88P'   "88"    "8a  ""     `Y8    88    a8P_____88
        --             `"Y8ba,   88  88          88      88      88  ,adPPPPP88    88    8PP"""""""
        --            aa    ]8I  88  88          88      88      88  88,    ,88    88,   "8b,   ,aa
        --   Author:  `"YbbdP"'  88  88          88      88      88  `"8bbdP"Y8    "Y888  `"Ybbd8"'
        --   
        --   Monitor My Hunting!
        --
        --   Version: 1.0
        --   Created: 7.09.2012
        --   Last update: 18.09.2012
        --
     
        MONITOR_MY_HUNTING = MONITOR_MY_HUNTING or {
            SCRIPT_NAME = "Monitor My Hunting",
            SCRIPT_VERSION = "1.0",
     
            CLEARED_STATS = false,
            INITIALIZED = false,
        }
     
        MONITOR_MY_HUNTING.SHOW_ALL_ITEMS = false
        MONITOR_MY_HUNTING.ITEMS_LIST = {
    {NAME = "Gold Coin", VALUE = 1},
    {NAME = "Platinum Coin", VALUE = 100},
    {NAME = "Great Mana Potion", VALUE = 0},
    {NAME = "Great Health Potions", VALUE = 0},
    {NAME = "Frazzle Skin", VALUE = 400},
    {NAME = "Frazzle Tongue", VALUE = 700},
    {NAME = "Brown Crystal Splinter", VALUE = 400},
    {NAME = "Skull", VALUE = 0},
    {NAME = "Fish Tail", VALUE = 0},
    {NAME = "Banana Skin", VALUE = 0},
    {NAME = "Piece of Iron", VALUE = 0},
    {NAME = "Fishbone", VALUE = 0},
    {NAME = "Remains of a Fish", VALUE = 0},
    {NAME = "Bone", VALUE = 0},
    {NAME = "Crystal Rubbish", VALUE = 0},
    {NAME = "Fish", VALUE = 0},
    {NAME = "Red Crystal Fragment", VALUE = 800},
    {NAME = "Ham", VALUE = 4},
    {NAME = "Big Bone", VALUE = 0},
    {NAME = "Fish Fin", VALUE = 150},
    {NAME = "Hardened Bone", VALUE = 70},
    {NAME = "Violet Crystal Shard", VALUE = 1500},
    {NAME = "Iron Ore", VALUE = 500},
    {NAME = "Haunted Blade", VALUE = 8000},
    {NAME = "Two Handed Sword", VALUE = 450},
    {NAME = "Gold Ingot", VALUE = 5000},
    {NAME = "Sai", VALUE = 16500},
    {NAME = "Nightmare Blade", VALUE = 35000},
    {NAME = "Assassin Dagger", VALUE = 20000},
    {NAME = "Cluster of Solace", VALUE = 0},
    {NAME = "Silencer Claws", VALUE = 390},
    {NAME = "Assassin Star", VALUE = 100},
    {NAME = "Silencer Resonating Chamber", VALUE = 600},
    {NAME = "Dark Shield", VALUE = 400},
    {NAME = "Glorious Axe", VALUE = 3000},
    {NAME = "Titan Axe", VALUE = 4000},
    {NAME = "Stealth Ring", VALUE = 200},
    {NAME = "Terra Legs", VALUE = 11000},
    {NAME = "Diamond Sceptre", VALUE = 3000},
    {NAME = "Boots of Haste", VALUE = 30000},
    {NAME = "Terra Boots", VALUE = 2500},
    {NAME = "Shadow Sceptre", VALUE = 10000},
    {NAME = "Small Sapphire", VALUE = 250},
    {NAME = "Royal Helmet", VALUE = 30000},
    {NAME = "Goosebump Leather", VALUE = 650},
    {NAME = "Brown Mushroom", VALUE = 0},
    {NAME = "Pool of Chitinous Glue", VALUE = 480},
    {NAME = "Great Health Potion", VALUE = 0},
    {NAME = "Beastslayer Axe", VALUE = 1500},
    {NAME = "Broken Dream", VALUE = 0},
    {NAME = "Underworld Rod", VALUE = 4400},
    {NAME = "Mercenary Sword", VALUE = 12000},
    {NAME = "Crown Shield", VALUE = 8000},
    {NAME = "Spiked Squelcher", VALUE = 5000},
    {NAME = "Wand of Starstorm", VALUE = 3600},
    {NAME = "Fire Sword", VALUE = 4000},
    {NAME = "Tower Shield", VALUE = 8000},
    {NAME = "", VALUE = },
    {NAME = "Brown Crystal Splinter", VALUE = 400},
    {NAME = "Great Mana Potions", VALUE = 0},
            }
     
        MONITOR_MY_HUNTING.SHOW_ALL_SUPPLIES = true
        MONITOR_MY_HUNTING.SUPPLIES_LIST = {
            {NAME = "strong mana potion", PRICE = 80},
            {NAME = "great mana potion", PRICE = 120},
            {NAME = "sudden death rune", PRICE = 108},
            {NAME = "thunderstorm rune", PRICE = 38},
        }
     
        -- [[ DO NOT CHANGE ANYTHING BELOW THIS LINE. ]] --
     
        MONITOR_MY_HUNTING.TEMP_ITEMS_LIST = MONITOR_MY_HUNTING.TEMP_ITEMS_LIST or {}
        MONITOR_MY_HUNTING.TEMP_SUPPLIES_LIST = MONITOR_MY_HUNTING.TEMP_SUPPLIES_LIST or {}
        MONITOR_MY_HUNTING.COLORS = MONITOR_MY_HUNTING.COLORS or {
            BLACK = rgbcolor(1, 1, 1),
            ORANGE = rgbcolor(255, 165, 0),
            BLUE = rgbcolor(30, 144, 255),
            CORNSILK = rgbcolor(205, 200, 177),
            WHITE = rgbcolor(255, 255, 255),
            GREEN = rgbcolor(107, 142, 35),
            RED = rgbcolor(178, 34, 34),
        }
     
        local function CreateMessageObject(MESSAGE_DATA)
            if (type(MESSAGE_DATA) ~= "userdata") then
                return setmetatable({__data = {TYPE = -1, TIME_STAMP = -1, SENDER_NAME = "", SENDER_LEVEL = -1, CONTENT = ""}}, MessageMetaTable)
            else
                return setmetatable({__data = {TYPE = MESSAGE_DATA.type, TIME_STAMP = Misc.ConvertToSeconds(string.sub(MESSAGE_DATA.text  , 1, 5)), SENDER_NAME = MESSAGE_DATA.sender, SENDER_LEVEL = tonumber((tostring(string.match(MESSAGE_DATA.text, ".+ (%b[]): .+")):gsub("[^%d]", ""))) or 0, CONTENT = string.sub(MESSAGE_DATA.text, 7)}}, MessageMetaTable)
            end
        end
     
        local function addtextshadow(text, xpos, ypos, color)
            addtext(text, xpos+1, ypos)
            addtext(text, xpos-1, ypos)
            addtext(text, xpos, ypos+1)
            addtext(text, xpos, ypos-1)
            setfontcolor(color)
            addtext(text, xpos, ypos)
            setfontcolor(rgbcolor(1,1,1))
        end
    -- [[ INIT END ]] --
     
    if (not Stats.Update()) then
        local SERVER_LOG_MESSAGES = getnewmessages("Server Log")
        local SERVER_LOG_MESSAGES_COUNT = SERVER_LOG_MESSAGES.count - 1
     
        for INDEX = 0, SERVER_LOG_MESSAGES_COUNT do
            local MESSAGE_OBJECT = CreateMessageObject(SERVER_LOG_MESSAGES[SERVER_LOG_MESSAGES_COUNT - INDEX])
     
            if (MESSAGE_OBJECT:Type() == 20 and MESSAGE_OBJECT:Content():lower():match("^loot of")) then
                local LOOT_INFO = Message.ParseLootMessage(MESSAGE_OBJECT, true)
     
                if (#LOOT_INFO.NAME > 0) then
                    Stats.__data.MONSTERS_KILLED[LOOT_INFO.NAME] = (Stats.__data.MONSTERS_KILLED[LOOT_INFO.NAME] or 0) + 1
     
                    for _, LOOT_ITEM in ipairs(LOOT_INFO.ITEMS) do
                        if (Stats.__data.ITEMS_LOOTED[LOOT_ITEM.ID]) then
                            Stats.__data.ITEMS_LOOTED[LOOT_ITEM.ID].QUANTITY = Stats.__data.ITEMS_LOOTED[LOOT_ITEM.ID].QUANTITY + LOOT_ITEM.QUANTITY
                        else
                            Stats.__data.ITEMS_LOOTED[LOOT_ITEM.ID] = {ID = LOOT_ITEM.ID, NAME = LOOT_ITEM.NAME, QUANTITY = LOOT_ITEM.QUANTITY, VALUE = Item.GetValue(LOOT_ITEM.ID)}
                        end
                    end
                end
            end
        end
    end
     
    local RESET_ITEMS_AND_SUPPLIES = #MONITOR_MY_HUNTING.ITEMS_LIST ~= MONITOR_MY_HUNTING.TEMP_ITEMS_LIST or #MONITOR_MY_HUNTING.SUPPLIES_LIST ~= MONITOR_MY_HUNTING.TEMP_SUPPLIES_LIST
     
    if (not RESET_ITEMS_AND_SUPPLIES) then
        for INDEX, LOOT_ITEM in ipairs(MONITOR_MY_HUNTING.ITEMS_LIST) do
            if (LOOT_ITEM.NAME ~= MONITOR_MY_HUNTING.TEMP_ITEMS_LIST[INDEX].NAME or LOOT_ITEM.VALUE ~= MONITOR_MY_HUNTING.TEMP_ITEMS_LIST[INDEX].VALUE) then
                RESET_ITEMS_AND_SUPPLIES = true
                break
            end
        end
    end
     
    if (not RESET_ITEMS_AND_SUPPLIES) then
        for INDEX, SUPPLY_ITEM in ipairs(MONITOR_MY_HUNTING.SUPPLIES_LIST) do
            if (SUPPLY_ITEM.NAME ~= MONITOR_MY_HUNTING.TEMP_SUPPLIES_LIST[INDEX].NAME or SUPPLY_ITEM.PRICE ~= MONITOR_MY_HUNTING.TEMP_SUPPLIES_LIST[INDEX].PRICE) then
                RESET_ITEMS_AND_SUPPLIES = true
                break
            end
        end
    end
     
    if (not MONITOR_MY_HUNTING.INITIALIZED or RESET_ITEMS_AND_SUPPLIES) then
        if (not MONITOR_MY_HUNTING.CLEARED_STATS) then
            Stats.Clear(CLEAR_STATS_ALL)
            Stats.Update()
     
            MONITOR_MY_HUNTING.CLEARED_STATS = true
        end
     
        MONITOR_MY_HUNTING.TEMP_ITEMS_LIST, MONITOR_MY_HUNTING.TEMP_SUPPLIES_LIST = {}, {}
     
        for _, LOOT_ITEM in ipairs(MONITOR_MY_HUNTING.ITEMS_LIST) do
            local LOOT_ITEM_ID = Item.GetID(type(LOOT_ITEM.NAME) ~= "table" and LOOT_ITEM.NAME or unpack(LOOT_ITEM.NAME))
     
            Stats.AddItemsLooted(LOOT_ITEM_ID, 0, LOOT_ITEM.VALUE)
            table.insert(MONITOR_MY_HUNTING.TEMP_ITEMS_LIST, {ID = LOOT_ITEM_ID, NAME = LOOT_ITEM.NAME, VALUE = LOOT_ITEM.VALUE})
        end
     
        for _, SUPPLY_ITEM in ipairs(MONITOR_MY_HUNTING.SUPPLIES_LIST) do
            local SUPPLY_ITEM_ID = Item.GetID(type(SUPPLY_ITEM.NAME) ~= "table" and SUPPLY_ITEM.NAME or unpack(SUPPLY_ITEM.NAME))
     
            Stats.AddSuppliesUsed(SUPPLY_ITEM_ID, 0, SUPPLY_ITEM.PRICE)
            table.insert(MONITOR_MY_HUNTING.TEMP_SUPPLIES_LIST  , {ID = SUPPLY_ITEM_ID, NAME = SUPPLY_ITEM.NAME, PRICE = SUPPLY_ITEM.PRICE})
        end
     
        MONITOR_MY_HUNTING.INITIALIZED = true
    end
     
    setposition(Client.ClientWindow().right - 434, Client.WorldWindow().top + 5)
     
    local Y_POSITION, INDEX, ITEMS_LOOTED_WORTH, SUPPLIES_USED_WORTH = 30, 0, 0, 0
     
    addtextshadow(sprintf("%s v%s", MONITOR_MY_HUNTING.SCRIPT_NAME:upper(), MONITOR_MY_HUNTING.SCRIPT_VERSION), 10, Y_POSITION + (INDEX * 16), MONITOR_MY_HUNTING.COLORS.ORANGE)
     
    Y_POSITION = Y_POSITION + 20
     
    addtextshadow("ITEMS LOOTED", 10, Y_POSITION + (INDEX * 16), MONITOR_MY_HUNTING.COLORS.BLUE)
     
    Y_POSITION = Y_POSITION + 20
     
    for _, LOOT_ITEM in pairs(Stats.GetItemsLooted()) do
        if ((MONITOR_MY_HUNTING.SHOW_ALL_ITEMS or table.find(MONITOR_MY_HUNTING.TEMP_ITEMS_LIST, LOOT_ITEM.ID, "ID")) and LOOT_ITEM.QUANTITY > 0) then
        addtextshadow(((#LOOT_ITEM.NAME > 17 and sprintf("%s...", string.match(string.sub(LOOT_ITEM.NAME, 1, 17), "(.-)%s?$"))) or LOOT_ITEM.NAME):ucwords(), 10, Y_POSITION + (INDEX * 16), MONITOR_MY_HUNTING.COLORS.CORNSILK)
        addtextshadow(sprintf("%s (%sK)", Misc.FormatNumber(LOOT_ITEM.QUANTITY), tostring(math.floor(LOOT_ITEM.VALUE * LOOT_ITEM.QUANTITY / 100) / 10)), 140, Y_POSITION + (INDEX * 16), MONITOR_MY_HUNTING.COLORS.WHITE)
     
        INDEX, ITEMS_LOOTED_WORTH = INDEX + 1, ITEMS_LOOTED_WORTH + (LOOT_ITEM.VALUE * LOOT_ITEM.QUANTITY)
        end
    end
     
    addtextshadow("Total:", 10, Y_POSITION + (INDEX * 16), MONITOR_MY_HUNTING.COLORS.WHITE)
    addtextshadow(sprintf("%s GPs", Misc.FormatNumber(ITEMS_LOOTED_WORTH)), 10 + 35, Y_POSITION + (INDEX * 16), MONITOR_MY_HUNTING.COLORS.ORANGE)
     
    Y_POSITION = Y_POSITION + 20
     
    addtextshadow("SUPPLIES USED", 10, Y_POSITION + (INDEX * 16), MONITOR_MY_HUNTING.COLORS.BLUE)
     
    Y_POSITION = Y_POSITION + 20
     
    for _, SUPPLY_ITEM in pairs(Stats.GetSuppliesUsed()) do
        if ((MONITOR_MY_HUNTING.SHOW_ALL_SUPPLIES or table.find(MONITOR_MY_HUNTING.TEMP_SUPPLIES_LIST, SUPPLY_ITEM.ID, "ID")) and SUPPLY_ITEM.QUANTITY > 0) then
            addtextshadow(((#SUPPLY_ITEM.NAME > 17 and sprintf("%s...", string.match(string.sub(SUPPLY_ITEM.NAME, 1, 17), "(.-)%s?$"))) or SUPPLY_ITEM.NAME):ucwords(), 10, Y_POSITION + (INDEX * 16), MONITOR_MY_HUNTING.COLORS.CORNSILK)
            addtextshadow(sprintf("%s (%sK)", Misc.FormatNumber(SUPPLY_ITEM.QUANTITY), tostring(math.floor(SUPPLY_ITEM.PRICE * SUPPLY_ITEM.QUANTITY / 100) / 10)), 140, Y_POSITION + (INDEX * 16), MONITOR_MY_HUNTING.COLORS.WHITE)
     
            INDEX, SUPPLIES_USED_WORTH = INDEX + 1, SUPPLIES_USED_WORTH + (SUPPLY_ITEM.PRICE * SUPPLY_ITEM.QUANTITY)
        end
    end
     
    addtextshadow("Total:", 10, Y_POSITION + (INDEX * 16), MONITOR_MY_HUNTING.COLORS.WHITE)
    addtextshadow(sprintf("%s GPs", Misc.FormatNumber(SUPPLIES_USED_WORTH)), 10 + 35, Y_POSITION + (INDEX * 16), MONITOR_MY_HUNTING.COLORS.ORANGE)
     
    Y_POSITION = Y_POSITION + 20
     
    addtextshadow(sprintf("%s: %s GPs (%s K/H)", ((ITEMS_LOOTED_WORTH >= SUPPLIES_USED_WORTH and ("PROFIT")) or ("WASTE")), Misc.FormatNumber(ITEMS_LOOTED_WORTH - SUPPLIES_USED_WORTH), tostring(math.floor(((ITEMS_LOOTED_WORTH - SUPPLIES_USED_WORTH) * 3600) / (System.HuntingTime() / 1000) / 100) / 10)), 10, Y_POSITION + (INDEX * 16), ITEMS_LOOTED_WORTH >= SUPPLIES_USED_WORTH and MONITOR_MY_HUNTING.COLORS.GREEN or MONITOR_MY_HUNTING.COLORS.RED)
    Last edited by pink_panther; 03-28-2014 at 12:20 AM.

  5. #5
    iBot User pink_panther's Avatar
    Join Date
    May 2012
    Location
    Australia
    Posts
    4,075
    Mentioned
    49 Post(s)
    Tagged
    1 Thread(s)
    Quoted
    178 Post(s)
    Reputation
    309
    Rep Power
    10
    Use this one, it requires no configuration at all, works at ALL spawns.

  6. #6
    Normal User
    Join Date
    Mar 2013
    Posts
    19
    Mentioned
    2 Post(s)
    Tagged
    0 Thread(s)
    Quoted
    1 Post(s)
    Reputation
    10
    Rep Power
    4
    Quote Originally Posted by sto1p View Post
    Roshamuul HUD
    Frazzlemaw
    Silencer
    Shock Head
    Retching Horror
    Chocking Fear
    Guzzlemaw
    Sight of Surrender
    +rep!

    Ty! This is what I was looking for!

    (http://www.tibiaibot.com/forum/showt...t-Counter-v1-1 doesnt work for me...idk why)

  7. #7
    iBot User pink_panther's Avatar
    Join Date
    May 2012
    Location
    Australia
    Posts
    4,075
    Mentioned
    49 Post(s)
    Tagged
    1 Thread(s)
    Quoted
    178 Post(s)
    Reputation
    309
    Rep Power
    10
    If it doesnt work, you're doing it wrong.

    just copy and paste the loot counter from paste bin into a new hud
    Last edited by pink_panther; 03-28-2014 at 12:21 AM.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •