Giter Site home page Giter Site logo

lonewanderer-gh / elvui_coolline_wrapper Goto Github PK

View Code? Open in Web Editor NEW
0.0 0.0 0.0 163 KB

An ElvUI mover box and config panel for the WoW addon CoolLine

Home Page: https://www.curseforge.com/wow/addons/elvui-coolline-wrapper

License: GNU General Public License v3.0

Lua 12.56% Shell 87.44%
coolline elvui-plugin wow wow-addon wow-classic

elvui_coolline_wrapper's People

Contributors

lonewanderer-gh avatar

Watchers

 avatar  avatar

elvui_coolline_wrapper's Issues

Feature: TomTom Crazy Arrow integration

It would be great to have a mover for the TomTom Crazy Arrow.

However, after many attempts, it seems that the arrow frame does not exist when player enters world (WoW API PLAYER_ALIVE event). I can create the mover manually using the Wow LUA addon when I'm in game, using the ElvUI API. see screenhsot
movers_for_coolline_tomtom

It would be nice to hook on the frame creation, or delay mover creation using a timer (AceTimer would do the trick).

However, since the addon is based on an Elvui plugin, I faced issues using the provided Ace timer.

1. using the ElvUI provided Timer

local E, L, V, P, G = unpack(ElvUI);
local ElvUI_CoolLine_Wrapper = E:NewModule('ElvUI_CoolLine_Wrapper', 'AceHook-3.0', 'AceEvent-3.0', 'AceTimer-3.0');
...
function ElvUI_CoolLine_Wrapper:CreateMovers()
    ...
end
...
function ElvUI_CoolLine_Wrapper:Initialize()
    ...
    E:ScheduleTimer(CreateMovers, 15) -- <== raises an AceTimer error due to function not existing in module
    ...
end

Ace Timer Error :
Tried to register 'CreateMovers' as the callback, but it doesn't exist in the module.

2. Using own timer lib instance(?) :

    local AceTimer = LibStub("AceTimer-3.0");
    AceTimer:ScheduleTimer(CreateMovers, 15)

I get:
AceTimer-3.0-17: ScheduleTimer(callback, delay, args...): 'callback' and 'delay' must have set values.

Explore usage of Global as a continuous integration tool

This tool is pretty neat https://www.townlong-yak.com/globe/
Using the website, you can end up here when searching for ElvUI_CoolLine_Wrapper
https://www.townlong-yak.com/globe/#h:1433549b4eb7588cd721d6235cb830d8
image

Why not use it as an integration tool ?


Example from javascript analysis:
https://www.townlong-yak.com/globe/api/search?q=ElvUI_CoolLine_Wrapper
returns
{"status":"okay","query":"ElvUI_CoolLine_Wrapper","link":"1433549b4eb7588cd721d6235cb830d8"}

Then
https://www.townlong-yak.com/globe/r/1433549b4eb7588cd721d6235cb830d8
returns this (quite messy) JSON :

{"globe-version": "1.25-191003+WotW",
"name": "ElvUI_CoolLine_Wrapper",
"interface": 11303,
"title": "ElvUI CoolLine Wrapper by LoneWanderer-GH",
"version": "0.3",
"author": "LoneWanderer-GH",
"notes": "ElvUI CoolLine Wrapper allows various integration of CoolLine Addon (such as Mover ...).",
"depend": [["ElvUI",1],["CoolLine",1]],
"stats2": [["LOCAL","local variables","local variable",13,[0,13]],["SET","assignment statements","assignment statement",30,[0,30]],["CALL","function calls","function call",9,[0,9]],["SCALL","method calls","method call",31,[0,31]],["IF","conditional branches","conditional branch",11,[0,11]],["SEMI","explicit semicolons","explicit semicolon",2,[0,2]],["NOSEMI","implied semicolons","implied semicolon",81,[0,81]],["COMMENT","comments","comment",24,[0,24]]],
"warn": [{"wkey": "warn.toc.interface.old", "text": "Missing model for 11303 FrameXML; using 80205 instead."}],
"load": ["ElvUI_CoolLine_Wrapper/ElvUI_CoolLine_Wrapper.toc","ElvUI_CoolLine_Wrapper/ElvUI_CoolLine_Wrapper.lua"],
"fileid": ["c19acf989e320d6970d4b7d19f955947","4693e255b7cf929d18f41335c52c7917"],
"ufileid": [null,"2381f79f7c0ba7c5d6b37df05b779dd4"],
"events": [["ADDON_LOADED",1,1,39]],
"writes": [
["font",0,1,227,1,266],
["fontsize",0,1,227],
["statusbar",0,1,227,1,270],
["x",0,1,227,1,264],
["activealpha",0,1,227,1,269],
["h",0,1,227,1,263],
["w",0,1,227,1,262],
["y",0,1,227,1,265],
["inactivealpha",0,1,227,1,268],
["fontSize",0,1,267]
],
"reads": [
["ElvUI",0,1,2],
["LibStub",0,1,4],
["CoolLine",0,1,45,1,46,1,227,1,261,1,272],
["AceGUIWidgetLSMlists",0,1,110],
["font",9,1,237,1,272],
["fontsize",9,1,238],
["w",9,1,241,1,272],
["h",9,1,242,1,272],
["activealpha",9,1,245,1,272],
["inactivealpha",9,1,246,1,272],
["y",9,1,272],
["x",9,1,272],
["statusbar",9,1,272],
["fontSize",9,1,272],
["CoolLine.MainFrame",8,1,45,1,46,1,261,1,272],
["AceGUIWidgetLSMlists.font",8,1,110],
["CoolLine.NO_RELOCATE",8,1,272],
["print",2,1,23],
["unpack",1,1,2],
["GetBuildInfo",1,1,9,1,10],
["format",1,1,95]
],
"unlocal": [["info",3,1,111,1,114,1,124,1,127,1,147,1,150,1,162,1,165,1,183,1,186,1,196,1,199,1,210,1,213],["G",1,1,2],["V",1,1,2],["addonTable",1,1,5],
["IS_WOW_8",1,1,9]  // guess it means 1=> argument, 1=> file 1, 9 => line number, relates to "unlocal" section ...
,["IS_WOW_CLASSIC",1,1,10]],
"localize": ["Font Size","Font"],
"fragments": [
["45ae37c2e6744bd9ab007ff0ec58ac71",-1,1,20],
["5b7e91b13fdd02dc361b50b4009a194f",-1,1,28],
["309d7677116b55e1e110d2ac160d58a4",-1,1,42],
["680564b5ae81ab80c77bdca04cf4f221",-1,1,57],
["dc9f5e54a044580a4c013c20faddbccd",-1,1,66],
["6b3c8a04d8455b91531786f39600f655",-1,1,111],
["e193144c38aeaead8770c657625e61c5",-1,1,114],
["befc6e50ad1ca1f9cfab5742d09426dd",-1,1,124],
["e152331cc28506830698669363d1eb4c",-1,1,127],
["0028bba356f1ac65d23d152379e74180",-1,1,147],
["132b5ca75e77ce5ec4caad612bed88af",-1,1,150],
["be0671a379fd25e221119f14d3d2177f",-1,1,162],
["b3bfd72b549d86dbb744f82b86ead1e2",-1,1,165],
["d54ed0f25b43748f1e36634d07868c7b",-1,1,183],
["120547386b8c332c83aeb381fef43fcf",-1,1,186],
["63139a16914b51cfb6ef38e3394d9135",-1,1,196],
["2652d249567bee96ff263db16f0e86c8",-1,1,199],
["6e57f4f0dcba85c5fedcb70f8fa1164a",-1,1,210],
["0339d3a2ffc7991c352b29baa8335172",-1,1,213],
["2169e6d979d116ebbce5b398475a1af4",-1,1,223],
["f14aad32ca2a8409fe4acb3564e576c0",-1,1,258]
],
"sections": [["depend","Dependencies",30,[null,"Required"]],["events","Events handled",90,[null,"WoW Events"]],["writes","Global writes",600],["reads","Global accesses",600,[null,"WoW API","FrameXML functions",null,null,null,null,null,"Global tables","Written"]],["unlocal","Unaccessed variables",200,[null,"Local",null,"Argument"]]],
"ulibs": [["LibElvUIPlugin-1.0",-1,1,4]],
"pack": [{"notes": "ElvUI CoolLine Wrapper allows various integration of CoolLine Addon (such as Mover ...).",
"lastFile": 2,
"firstFile": 1,
"loaded": 0,
"author": "LoneWanderer-GH",
"sort": 1,
"depend": [["ElvUI",1],["CoolLine",1]],
"fields": {"x-curse-project-id": "356978", "x-loadon-always": "delayed", "loadmanagers": "AddonLoader"},
"name": "ElvUI_CoolLine_Wrapper",
"version": "0.3",
"title": "ElvUI CoolLine Wrapper by LoneWanderer-GH",
"interface": 11303}],
"web2": "https://www.curseforge.com/wow/addons/elvui-coolline-wrapper"}

[BUG][Classic]

Describe the bug
When logging in.

To Reproduce
Steps to reproduce the behavior:

  1. Login.

Expected behavior
No errors.

Screenshots
See error-message instead.

** Software verrsions (please complete the following information):**

  • OS: Linux.
  • WoW game version: 1.13.4 (33728)
  • Addon Version: 0.3-classic
  • Character class: Mage, Frost.

Additional context
Error message:
2x ElvUI\Core\Movers.lua:32: bad argument #2 to 'format' (string expected, got nil) [C]: ? ElvUI\Core\Movers.lua:32: in function <ElvUI\Core\Movers.lua:28> ElvUI\Core\Movers.lua:315: in function 'SetMoverLayoutPositionPoint' ElvUI\Core\Movers.lua:346: in function 'CreateMover' ...ns\ElvUI_CoolLine_Wrapper\ElvUI_CoolLine_Wrapper-0.3.lua:46: in function 'CreateMover' ...ns\ElvUI_CoolLine_Wrapper\ElvUI_CoolLine_Wrapper-0.3.lua:59: in function 'Update' ...ns\ElvUI_CoolLine_Wrapper\ElvUI_CoolLine_Wrapper-0.3.lua:253: in function <...ns\ElvUI_CoolLine_Wrapper\ElvUI_CoolLine_Wrapper.lua:223> [C]: ? ElvUI\Core\Core.lua:1222: in function 'CallLoadFunc' ElvUI\Core\Core.lua:1237: in function 'CallLoadedModule' ElvUI\Core\Core.lua:1263: in function 'InitializeModules' ElvUI\Core\Core.lua:1549: in function 'Initialize' ElvUI\init.lua:144: in function <ElvUI\init.lua:143> [C]: ? ...faceAtlas\Libs\AceAddon-3.0\AceAddon-3.0-12.lua:70: in function <...faceAtlas\Libs\AceAddon-3.0\AceAddon-3.0.lua:65> ...faceAtlas\Libs\AceAddon-3.0\AceAddon-3.0-12.lua:527: in function 'EnableAddon' ...faceAtlas\Libs\AceAddon-3.0\AceAddon-3.0-12.lua:620: in function <...faceAtlas\Libs\AceAddon-3.0\AceAddon-3.0.lua:605> [C]: in function 'LoadAddOn' FrameXML\UIParent.lua:353: in function <FrameXML\UIParent.lua:352> [C]: in function 'UIParentLoadAddOn' FrameXML\UIParent.lua:424: in function 'TimeManager_LoadUI' FrameXML\UIParent.lua:693: in function <FrameXML\UIParent.lua:658>

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.