Completed Auxbox

Moderator: EUO Moderators

Completed Auxbox

Postby Azalynn » Wed Jan 17, 2018 9:36 am

As someone who does not understand code in the least, if someone has a fully completed auxbox or can direct one to a compilation of codes that would be awesome!
Regular
Thrall

PD
Azalynn - Retired 1000
Thrall - Retired 1000
Windwalker
Azser
Az
Xentria [LotL]
Azalynn
Post in swahili or SHUT THE FUCK UP!
 
Posts: 221
Joined: Tue Mar 26, 2013 8:13 am

Re: Completed Auxbox

Postby Zilverlight » Wed Jan 17, 2018 12:35 pm

Chedich wrote:viewtopic.php?f=3&t=4983 - Custom Auxbox Creations
viewtopic.php?f=3&t=5001 - Completed Auxbox Codes


These ought to give you options. There aren't very many instructions however on how exactly to do it. Those I found asking other players online that were more familiar with it than myself.
Desmond (AKA: Rurik)
Zilverlight
Girls only want boyfriends who have great skills.
 
Posts: 708
Joined: Mon Sep 05, 2005 11:14 am

Re: Completed Auxbox

Postby speed » Thu Jan 18, 2018 10:52 am

I'm going to be hijacking this thread to finally post my own auxbox, that I've been working on periodically for the past few years! I tried to make it as readable as possible, and it should be rather easy to know where to insert your own functions and stuff. However, it is probably put together really inefficiently, as I've never really looked at a single LUA tutorial in my life. That being said, it'd be nice if someone could look through it.

The main gimmick is that the auxbox was designed for the smallest resolution (800x600), so I only had 13 lines to work with.
Thus, I have multiple pages! Pressing shift-A and shift-Q cycle the auxbox forwards and backwards a page respectively (These can be easily changed if it interferes with keybinds). The five pages I have currently are Spells, XP, Item stock, Misc Info, and LordMortiferus' ASCII map, though adding a 6th page for a DPS counter shouldn't be too difficult. Of course, the ASCII map requires a higher resolution, since it can't be loaded in 13 lines, but it's still nice to have.

For those of you who want to stuff pages upon pages of extra information in your auxbox, hopefully the multiple pages will help. Now you can have enough space to catalog every single item in the game, if you wanted.
I spent way too much time making everything nice and colorful.

Code: Select all
------------------------------------------------------------------------------------------------
--[[]]--[[]]--[[]]--[[]]--[[]]--[[]]--[[DEFINING VARIABLES]]--[[]]--[[]]--[[]]--[[]]--[[]]--[[]]
------------------------------------------------------------------------------------------------

shiftkeys = {"Shift","Alt","Ctrl+Shift","Shift+Alt","Ctrl+Alt","CtrlAltShift"}
filterTextLines=[[{47F}Filters:    Search with /{FFF}
w: weapons  W: wearables
s: shields  j: jewellry
S: scrolls  U: unidentified
p: potions  R: reagents
u: usable   f: food
G: gems  r: ring  n: neck
h: head  t: body  l: legs
b: feet  g: hand  a: ammo
v: cancel filtering]]
auxbox_next_line = 0     --
session_time = 0         --
sessionstart = os.time() --
current_slide = 0

--[[ Modifiable Variables (Feel free to change these) ]]

next_slide = 65 -- ASCII for the key required to cycle slides forwards (increases slide_counter by 1)
prev_slide = 81 -- ASCII for the key required to cycle slides backwards (decreases slide_counter by 1)
default_slide = 2 -- Initial auxbox slide on startup
number_of_slides = 5 -- Change this if you wish to add a slide

------------------------------------------------------------------------------------------
--[[]]--[[]]--[[]]--[[]]--[[]]--[[]]--[[AUXBOX SETUP]]--[[]]--[[]]--[[]]--[[]]--[[]]--[[]]
------------------------------------------------------------------------------------------

--[[ Auxbox startup and menu slides ]]
function auxbox()
  local w=d:auxbox_get_width()
  local h=d:auxbox_get_height()

  d:auxbox_clear()
  auxbox_next_line = 0
 
  if not d:ok_to_draw_play_window() then return; end
     
  local cd=d:get_curr_display()
  local mode=d:get_statbox_mode()
  local lineNr=0
  local txta=explode("\n", filterTextLines)

  if cd==1 then
    if mode==SELECT_ABILITY then
       auxbox_prop_line("Hit F-key to bind")
       auxbox_blank_line()
       auxbox_ability_binds()
    else
        for i=1,#txta do
          auxbox_prop_line(txta[i])
        end
        if mode==SELECT_READY then
        auxbox_blank_line()
           auxbox_prop_line("{47F}Press {6F7}ENTER{47F} to equip")
       elseif mode==SELECT_BUY then        
        auxbox_blank_line()
          auxbox_prop_line("{47F}Press {6F7}ENTER{47F} to buy")
       elseif mode==SELECT_BANK then
          auxbox_prop_line("{47F}Press {6F7}ENTER{47F} to transfer one")
          auxbox_prop_line("Press {6F7}Shift+ENTER{47F}   for ten")
          auxbox_prop_line("Press {6F7}TAB{47F}   for whole stack")
       end
     end

---------------------------------------------------------------------------
--[[ Auxbox silde 1 = Spells and Abilities ]]
  elseif current_slide == 0 then
    auxbox_time() -- Real World / Session Time

    auxbox_prop_line("{FFF}")
    local cnt=auxbox_ability_binds()
    if cnt==0 then
      auxbox_prop_line("None!")
      auxbox_blank_line()
      auxbox_prop_line("Hit shift-c then F keys")
      auxbox_prop_line("to bind.")
    end
    auxbox_blank_line()
    auxbox_blank_line()
    auxbox_go_to_line("{47F}01) Spell and Ability Binds", nil, h - 2)
    auxbox_go_to_line("<- {4BB}Shift-Q       Shift-A{47F} ->", nil, h - 1)
   
    auxbox_slides()

---------------------------------------------------------------------------
--[[ Auxbox slide 2 = XP ]]
  elseif current_slide == 1 then
      auxbox_time()   -- Real World / Session Time

    auxbox_prop_line("{6F7}")
    ched_xp_init()
      auxbox_ched_xppmin() -- Level / Current XP / XP to next level / Last XP gain

    auxbox_blank_line()
    auxbox_go_to_line("{47F}02) Experience Information", nil, h - 2)
    auxbox_go_to_line("<- {4BB}Shift-Q       Shift-A{47F} ->", nil, h - 1)
    
    auxbox_slides()

---------------------------------------------------------------------------
--[[ Auxbox slide 3 = Item stock ]]
  elseif current_slide == 2 then
    auxbox_time() -- Real World / Session Time

    auxbox_blank_line()
    item_color_indicator(0x16b, 30) --If you add an item here, you must define it in the function, item_color_indicator
    item_color_indicator(0x16c, 30)
    auxbox_blank_line()
    item_color_indicator(0x177, 100)
    item_color_indicator(0x41d, 50)
    item_color_indicator(0x12b, 50)
    item_color_indicator(0x521, 10)

    auxbox_blank_line()
    auxbox_go_to_line("{47F}03) Item Count Information", nil, h - 2)
    auxbox_go_to_line("<- {4BB}Shift-Q       Shift-A{47F} ->", nil, h - 1)
   
    auxbox_slides()

---------------------------------------------------------------------------
--[[ Auxbox slide 4 = Extra Statistics ]]
  elseif current_slide == 3 then
    auxbox_time() -- Real World / Session Time

    auxbox_blank_line()
    auxbox_prop_line("{47F}HP: {6F7}"..me:get_hp_max().." {47F}MP: {6F7}"..me:get_mana_max(),"{47F}MR: {6F7}"..me:get_magic_resistance())
    auxbox_prop_line("{47F}Str: {6F7}"..me:get_str().." {47F}Dex: {6F7}"..me:get_dex().." {47F}Int: {6F7}"..me:get_intel())
    character_age()
    auxbox_blank_line()

    auxbox_prop_line("{47F}Weapon Skill: {FFF}"..wl:get_wep_skill_name(me.weapon))
    auxbox_prop_line("{47F}Weapon Type : {FFF}"..wl:get_wep_dmg_str(me.weapon))
    auxbox_prop_line("{47F}Weapon Level: {FFF}"..wl:get_min_id_skill(me.weapon).."/100")

    --Test Variables: (You can probably remove these)
    --testing = wl:is_artifact(me.weapon)
    --testing = wl:get_wep_skill_name(me.weapon)
    --testing = wl:get_wep_dmg_str(me.weapon)
    --testing = wl:is_legit(me.ring1)
    --testing = ml:is_aquatic(210)
    --testing = wl:is_wearable(me.weapon)
    --testing = spells:get_full_spell_name(21)
    --testing = nil
    --auxbox_prop_line(tostring(testing))
    --auxbox_prop_line("{7FF}"..wl:get_full_name(me.weapon))
    --auxbox_prop_line("{9BF}"..wl:get_full_name(me.shield))
    --auxbox_prop_line("{7FF}"..wl:get_full_name(me.ring1))
    --auxbox_prop_line("{9BF}"..wl:get_full_name(me.ring2))
    --auxbox_prop_line("{7FF}"..wl:get_full_name(me.amulet))   

    auxbox_blank_line()
    auxbox_prop_line("Forums: forums.swut.net")
    auxbox_prop_line("Manual: euotopia.com/manual")
    if d:numlock() then
      auxbox_prop_line("{FFF}Please turn numlock off!{47F}")
    else
      auxbox_blank_line()
    end
    auxbox_blank_line()
    auxbox_go_to_line("{47F}04) Stats and Weapon Info", nil, h - 2)
    auxbox_go_to_line("<- {4BB}Shift-Q       Shift-A{47F} ->", nil, h - 1)

    auxbox_slides()

---------------------------------------------------------------------------
--[[ Auxbox slide 5 = LordMortiferus' ASCII MAP (requires higher resolution) ]]
 
  elseif current_slide == 4 then
   
    if h >= 24 then
      auxbox_prop_line(auxbox_lm_ascii_map())
      auxbox_blank_line()
    else
      auxbox_prop_line("Cannot load ASCII Map")
      auxbox_prop_line("Please Increase Resolution")
      auxbox_blank_line()
    end

    auxbox_go_to_line("{47F}05) ASCII Map", nil, h - 2)
    auxbox_go_to_line("<- {4BB}Shift-Q       Shift-A{47F} ->", nil, h - 1)

    auxbox_slides()

---------------------------------------------------------------------------
  --Add an elseif statement to insert slide 6 here
---------------------------------------------------------------------------
--[[ Auxbox Missing Slide (If you see this, lower your number_of_slides variable) ]]

  else               --
    auxbox_prop_line("You are now on slide ", string.format(current_slide + 1))
    auxbox_blank_line()
    auxbox_prop_line("There is no content here...")
    auxbox_blank_line()
    auxbox_prop_line("Please set number_of_slides")
    auxbox_prop_line("to a lower value.")
    auxbox_go_to_line("??) Missing Page", nil, h - 2)
    auxbox_go_to_line("<- {4BB}Shift-Q       Shift-A{47F} ->", nil, h - 1)
   
    auxbox_slides()
  end

end

-----------------------------------------------------------------------------------------
--[[]]--[[]]--[[]]--[[]]--[[]]--[[]]--[[FUNCTIONS]]--[[]]--[[]]--[[]]--[[]]--[[]]--[[]]--
-----------------------------------------------------------------------------------------

--[[ Blank line ]]

function auxbox_blank_line()
  auxbox_next_line = auxbox_next_line + 1
end

--[[ Insert line, prop_name is on the left, prop_val is on the right ]]

function auxbox_prop_line(prop_name, prop_val)
  local pvl=0
  if prop_name==nil then prop_name="" end
  if prop_val==nil then prop_val="" end
  local filler = string.rep(" ", 25 - string.len(prop_name) - string.len(prop_val))
  auxbox_next_line = auxbox_next_line + 1
  d:auxbox_set_line(auxbox_next_line, string.format("%s %s %s", prop_name, filler, prop_val))
end

--[[ Go To Line - Speed (Use this to jump to write something on a specific line, and override what would be under it) ]]

function auxbox_go_to_line(prop_name, prop_val, go_to_line)
  local pvl=0
  if prop_name==nil then prop_name="" end
  if prop_val==nil then prop_val="" end
  local filler = string.rep(" ", 25 - string.len(prop_name) - string.len(prop_val))
  auxbox_next_line = auxbox_next_line + 1
  d:auxbox_set_line(go_to_line, string.format("%s %s %s", prop_name, filler, prop_val))
end

--[[ Insert line with extra filler - Speed (This is to counteract color tags taking up space, sorta hacked together) ]]

prop_extra_filler = 0
function auxbox_prop_extra_filler(prop_name, prop_val, prop_extra_filler)
  local pvl=0
  if prop_name==nil then prop_name="" end
  if prop_val==nil then prop_val="" end
  local filler = string.rep(" ", 25 - string.len(prop_name) - string.len(prop_val) + prop_extra_filler)
  auxbox_next_line = auxbox_next_line + 1
  d:auxbox_set_line(auxbox_next_line, string.format("%s %s %s", prop_name, filler, prop_val))
end

---------------------------------------------------------------------------
--[[ Function to round numbers, idp is the decimal place ]]

function round(num , idp)
  local mult = 10^(idp or 0)
  return math.floor(num * mult + 0.5) / mult
end

---------------------------------------------------------------------------
--[[ Explode ]]
-- from http://lua-users.org/wiki/SplitJoin

function explode(d,p) -- explode(seperator, string)
  local t, ll
  t={}
  ll=0
  if(#p == 1) then return p end
    while true do
      l=string.find(p,d,ll+1,true) -- find the next d in the string
      if l~=nil then -- if "not not" found then..
        table.insert(t, string.sub(p,ll,l-1)) -- Save it in our array.
        ll=l+1 -- save just after where we found it for searching next time.
      else
        table.insert(t, string.sub(p,ll)) -- Save what's left in our array.
        break -- Break at end, as it should be, according to the lua manual.
      end
    end
  return t
end

---------------------------------------------------------------------------
--[[ Gets spell names ]]

function auxbox_ability_binds()
  local cnt=0     
  for i=10,15 do
    if me.spell_binds[i]~=-1 then
     auxbox_prop_line(shiftkeys[i-9],spells:get_full_spell_name(me.spell_binds[i]))
     cnt=cnt+1
    end
  end
  return cnt
end

---------------------------------------------------------------------------
--[[ Real World Time - Duncan (PD) / Zen (Reg) / Brentoboy (forums) ]]

function auxbox_time()
  auxbox_prop_line("{47F}Real World Time:  {FFF}", string.format(os.date("%I:%M%p")))
   if os.difftime(os.time(), sessionstart) > session_time then -- just to reduce the script to every second
 
    session_time = os.difftime(os.time(), sessionstart)
    session_d_float = session_time / 60 / 60 / 24
    session_d = math.floor(session_d_float)
    session_h = math.floor((session_d_float - session_d)*24)
    session_m = math.floor(((session_d_float - session_d)*24 - session_h) * 60)
    session_s = math.floor((((session_d_float - session_d)*24 - session_h) * 60 - session_m) * 60)
  end   
 
   if session_d~=nil then
     auxbox_prop_line("{47F}Session time: {FFF}", string.format("%02.f:%02.f:%02.f:%02.f", session_d, session_h, session_m, session_s))
   end
end

---------------------------------------------------------------------------
--[[ Automaticly compiled client script for EUO ]]
-- Containing:
-- XP/min by Chedich
-- XP by LordMortiferus 2013/01/28, rehashed by Brentoboy
-- Edited by Speed, so not all of the features still work! I removed parts of the original code, so feel free to replace it with the original.

req_xp = {} -- beginning of XP-array
req_xp[1] = 0 -- fixed XP value
req_xp[2] = 200 -- fixed XP value
req_xp[26] = 93000 -- fixed XP value

for i=3,25 do -- adds XP for lvl 3 to 25 to array
  req_xp[i] = math.floor(req_xp[i-1]+1.2*(req_xp[i-1]-req_xp[i-2]))
end

for i=27,1000 do -- adds XP for lvl 27 to 1000 to array
  req_xp[i] = req_xp[i-1]+(i-26)*1000*4+15000
end

if me.xp >= req_xp[1000] then
   current_level = 1000
else
   for i = 1,999 do -- getting current player level based on array
      if req_xp[i] <= me.xp
      and req_xp[i + 1] > me.xp
      then
         current_level = i
         break
      end
   end
end -- end of XP-array

ched_init=true
ched_xp_arr={}

function ched_xp_init()
   if ched_init then
      if current_level <= 1000 then
         xptolvl_float = ((me.xp - req_xp[current_level]))/(req_xp[current_level+1]-req_xp[current_level])
       end
      ched_xp=me.xp
      ched_currentlvl=me.lvl-(me.remort_level*75)
      ched_lastxp=0
      ched_sessionxp = 0  -- Added by Speed
      ched_xp_next_level = 0
      ched_lasttick = 0
      ched_lastname=me.name
      ched_init=false

      if xptolvl_float >= 1 or xptolvl_float < 0 then
         for i = 1,999 do
            if req_xp[i] <= me.xp
            and req_xp[i + 1] > me.xp
            then
               current_level = i
               break
            end
         end
      end

      for i=1,600 do
         ched_xp_arr[i]=0
      end
   end
end

function auxbox_ched_xppmin()
   if ched_xp<me.xp then
      ched_lastxp=me.xp-ched_xp
      ched_sessionxp = ched_sessionxp + ched_lastxp
      ched_xp=me.xp
   end
   if ched_init then
      return
   end
   if ched_lastxp == me.xp
   or ched_lastname ~= me.name then
      ched_init=true
      ched_xp_init()
   end

   if (os.difftime(os.time(), ched_lasttick)>0) then --We need to run this once per second
      ched_xp_next_level = (req_xp[(ched_currentlvl+1)]-me.xp)
      if ched_xp_next_level < 0 then --To account for non-meditated levels
         ched_currentlvl = ched_currentlvl + 1
      end

      ched_exact_level = ched_currentlvl + (req_xp[ched_currentlvl+1] - req_xp[ched_currentlvl] - ched_xp_next_level) / (req_xp[ched_currentlvl+1] - req_xp[ched_currentlvl])
      ched_rounded_exact_level = round(ched_exact_level, 5)
   end
   
   auxbox_prop_line("Current Level:", string.format(ched_rounded_exact_level))
   auxbox_prop_line("Current XP:", string.format("%d", me.xp))
   auxbox_prop_line(string.format("XP for level "..string.format(ched_currentlvl + 1)..":"), req_xp[(ched_currentlvl+1)] - req_xp[(ched_currentlvl)])
   auxbox_prop_line("XP to next level:", ched_xp_next_level)
   auxbox_blank_line()
   auxbox_prop_extra_filler("{AAA}Session XP gain:{BBB}", ched_sessionxp, 9)
   auxbox_prop_extra_filler("{AAA}Last XP gain:{FFF}", ched_lastxp, 9)
end

---------------------------------------------------------------------------
--[[ Character Age, Original by LordMortiferus ]]

function character_age()
  age_d= math.floor(me.age / 60 / 24)
  age_h= math.floor((me.age / 60 / 24 - age_d)*24)
  age_m= math.floor(((me.age / 60 / 24 - age_d)*24 - age_h) * 60)
  auxbox_prop_line(string.format("{47F}Age: {FFF}"..age_d.."{6F7}d, {FFF}"..age_h.."{6F7}h, {FFF}"..age_m.."{6F7}m"))
end

---------------------------------------------------------------------------
--[[ Item stock color display - Speed ]]

function item_color_indicator(item_code, amt_item)
  color_percent = items:get_qty_basecode(item_code) * 16 / amt_item
  local color_red= round((16 - color_percent) * 2)
  if color_red== 10 then color_red= "A"
  elseif color_red < 0 then color_red = 0
  elseif color_red == 11 then color_red= "B"
  elseif color_red == 12 then color_red= "C"
  elseif color_red == 13 then color_red= "D"
  elseif color_red == 14 then color_red= "E"
  elseif color_red == 15 then color_red= "F"
  elseif color_red > 15 then color_red= "F" end
  local color_green = round((2 * color_percent))
  if color_green == 10 then color_green = "A"
  elseif color_green < 0 then color_green = 0
  elseif color_green == 11 then color_green = "B"
  elseif color_green == 12 then color_green = "C"
  elseif color_green == 13 then color_green = "D"
  elseif color_green == 14 then color_green = "E"
  elseif color_green == 15 then color_green = "F"
  elseif color_green > 15 then color_green = "F" end

  item_color = ("{"..tostring(color_red)..tostring(color_green).."0}"..items:get_qty_basecode(item_code))

  if item_code == 0x16b then --List of known items, to add an item provide the item code
    auxbox_prop_line("{FFF}Mega Yellow Potions:", item_color.."/"..amt_item)
  elseif item_code == 0x16c then
    auxbox_prop_line("{FFF}Mega Blue Potions:  ", item_color.."/"..amt_item)
  elseif item_code == 0x177 then
    auxbox_prop_line("{FFF}Bandages:         ", item_color.."/"..amt_item)
  elseif item_code == 0x41d then
    auxbox_prop_line("{FFF}Blank Scrolls:      ", item_color.."/"..amt_item)
  elseif item_code == 0x12b then
    auxbox_prop_line("{FFF}Bread:              ", item_color.."/"..amt_item)
  elseif item_code == 0x521 then
    auxbox_prop_line("{FFF}Skull Keys:         ", item_color.."/"..amt_item)
  else
    auxbox_prop_line("{F66}Item            " .. item_code .. ":", item_color.."/"..amt_item)
  end
end

---------------------------------------------------------------------------
--[[ Auxbox slides - Speed ]]

gch=0                 -- Reset ASCII input value (gch is the ASCII code for the button pressed)
slide_counter = default_slide - 1

function auxbox_slides()
  if gch == next_slide then
    slide_counter = slide_counter + 1
  elseif gch == prev_slide then
    slide_counter = slide_counter - 1
  end
  gch = 0
  current_slide = slide_counter % number_of_slides
end

function auxbox_keypressed(key,ch,scancode)
 gch=ch
end

---------------------------------------------------------------------------
--[[ ASCII map for Auxbox - LordMortiferus]]

function auxbox_lm_ascii_map()
  local asciimap = {}
  local tilexy = 0
 
  -- scan of xy-cords around player
  sx=me.x-10
  ex=me.x+10
  sy=me.y-10
  ey=me.y+10
   
   for yy=sy,ey do
      for xx=sx,ex do
        tilexy = tilexy + 1
       -- checks if player is near an edge of a map
         if yy < 0 or xx < 0 or yy > cmap:get_max_y() or xx > cmap:get_max_x() then
          table.insert (asciimap,tilexy,"{000} ")
         elseif yy == me.y and xx == me.x then -- marks the player as a X on the map
          table.insert (asciimap,tilexy,"{f00}X")
         elseif (cmap:is_mountain(xx,yy)) then
          table.insert (asciimap,tilexy,"{888}A")
         elseif (cmap:is_forest(xx,yy)) then
          table.insert (asciimap,tilexy,"{060}&")
         elseif (cmap:is_lava(xx,yy)) then
          table.insert (asciimap,tilexy,"{a20}~")
         elseif (cmap:is_swamp(xx,yy)) then
          table.insert (asciimap,tilexy,"{073},")
         elseif (cmap:is_deep_water(xx,yy)) then
          table.insert (asciimap,tilexy,"{00f}~")
         elseif (cmap:is_void(xx,yy)) then
          table.insert (asciimap,tilexy,"{000} ")
         elseif (cmap:is_wet(xx,yy)) then
          table.insert (asciimap,tilexy,"{05f}~")
         elseif tiledata:is_blocking(cmap:get_tile(xx,yy))==true then
          table.insert (asciimap,tilexy,"{bbb}A")
         else
          table.insert (asciimap,tilexy,"{0f0}.") -- for anything that is not defined above but can be seen
         end
      end

        if tilexy == 21 then
       tilexy = 0
            if yy == sy or yy == ey then
               table.insert (asciimap,22," {fff}-10")
          elseif yy == sy+5 or yy == sy+15 then
           table.insert (asciimap,22," {fff}-5 ")
         elseif yy == sy+10 then
          table.insert (asciimap,22," {fff}-0 ")
          else
          table.insert (asciimap,22,"    ")
         end     
         auxbox_prop_line("", string.format("%s", table.concat(asciimap)))
          for i,v in pairs(asciimap) do
             asciimap[i]=nil
           end
      end
   end
 
  auxbox_blank_line()
  auxbox_prop_line("","{fff}|    |    |    |    |    ")
  auxbox_prop_line("","{fff}10   5    0    5    10   ")
end
You do not have the required permissions to view the files attached to this post.
-Speed(COG) = [Grandmaster Stafffighter idk...]
User avatar
speed
I'll be going back to Tibia next week.
 
Posts: 36
Joined: Tue Jul 14, 2009 7:49 am

Re: Completed Auxbox

Postby Azalynn » Thu Jan 18, 2018 10:46 pm

Absolutely love it. This is exactly what I asked for. Anyone else have completed once? Just getting a pool ans hopefully finding one that is useful to me on all chtacters!
Regular
Thrall

PD
Azalynn - Retired 1000
Thrall - Retired 1000
Windwalker
Azser
Az
Xentria [LotL]
Azalynn
Post in swahili or SHUT THE FUCK UP!
 
Posts: 221
Joined: Tue Mar 26, 2013 8:13 am

Re: Completed Auxbox

Postby eggmceye » Thu Apr 12, 2018 11:18 am

it's amazing - I haven't looked at the code, do you want an actual 'code review'? as if i was your supervisor or something LAUGHING OUT LOUD LIKE A MORON
User avatar
eggmceye
hello
 
Posts: 10158
Joined: Mon Mar 11, 2002 3:55 pm
Location: Sydney, Australia


Return to Auxbox repository

Who is online

Users browsing this forum: No registered users and 0 guests

cron