00:00.36 | *** join/#wowace Hirsute-phone (~yaaic@25.sub-97-181-103.myvzw.com) |
00:00.36 | *** join/#wowace Hirsute-phone (~yaaic@WoWUIDev/Norganna/Developer/Hirsute) |
00:02.15 | Stanzilla | so? I still want to see it :p |
00:02.26 | Stanzilla | always nice to see other people's uis |
00:04.59 | *** join/#wowace Tuller (~muffins@c-69-143-52-174.hsd1.va.comcast.net) |
00:07.04 | Talryn | Any addons out there that are mostly dialog-type boxes that people think have a good UI? |
00:08.58 | leech2k | To bad blizzard doesn't say what addons inspired there ideas as a sort of credit to the mod author. |
00:09.41 | leech2k | their* |
00:09.56 | Lulia | They don't because someone out there would say they had the idea first, etc... |
00:10.02 | Lulia | Or want payment and such |
00:10.06 | leech2k | True. |
00:10.24 | Lulia | It's why they don't post in the suggestion forums too |
00:10.24 | leech2k | Hmm, wonder if people can copyright mod ideas. |
00:10.42 | Primer | no |
00:10.44 | leech2k | patent even |
00:11.28 | selckin | i'm sure you signed away all your rights by clicking accept before you logged in |
00:11.34 | leech2k | Most likely. |
00:11.40 | leech2k | I really should read that someday. |
00:14.55 | Repo | 10inline-aura: 03Adirelle 07master * v1.5-beta-12-7-ga880217 Core.lua: [+1 commit] Fixed item buffs again. |
00:16.10 | Parnic | vhaarr: you might be amused to hear that over half of icehud's memory usage is its options table |
00:16.20 | Parnic | i guess that doesn't really need to be stored in the mod itself... |
00:19.24 | *** join/#wowace kandarz (~kandarz@c-67-183-240-167.hsd1.wa.comcast.net) |
00:20.27 | *** part/#wowace kandarz (~kandarz@c-67-183-240-167.hsd1.wa.comcast.net) |
00:25.20 | *** join/#wowace Next96 (Next96@121.129.140.83) |
00:32.28 | vhaarr | haha |
00:32.56 | vhaarr | Parnic: you're aware of how things inherit down in option tables right? |
00:33.05 | vhaarr | with regards to reducing the footprint if even slightly |
00:33.19 | Parnic | i guess not |
00:33.47 | Lulia | (7:54:18 PM) vhaarr: Lulia: yeah ClosetGnome uses it |
00:33.48 | Lulia | ? |
00:33.57 | vhaarr | Lulia: what? |
00:34.05 | SunTsu | Lulia: 00:44:28 < Lulia> Anyone here used SetOverrideBindingClick before? |
00:34.14 | vhaarr | Parnic: can you paste.wowace.com a section of your options table then? |
00:34.30 | Parnic | oh boy. one sec :P |
00:34.37 | Lulia | Right, SunTsu, but his response came much later after that, I wasn't sure who it was directed to. |
00:34.53 | vhaarr | Lulia: well you, obviously, that's why your name is in front :P |
00:35.12 | SunTsu | Lulia: you, and it was the only question you asked as far as I can see ;) |
00:35.23 | Lulia | Right, but I wasn't sure if ClosetGnome was an AddOn or some user you knew ;) |
00:35.55 | Lulia | I'm currently trying to use the function and it's not working, so I was hoping to find someone who has used it and had it work |
00:36.00 | SunTsu | Lulia: vhaarr has lots of addons with "Gnome" in their names |
00:36.02 | Lulia | To see if there were any differences. |
00:36.06 | Lulia | I see |
00:36.10 | vhaarr | Lulia: yes, so, eh, take a look at my code then |
00:36.13 | Lulia | ~purl vharr |
00:36.26 | Lulia | booo |
00:36.28 | Lulia | :P |
00:36.33 | Parnic | vhaarr: very small section: http://paste.wowace.com/2782/ -- modules.args gets populated with a table that's built from each module |
00:36.55 | vhaarr | yeah here we go |
00:37.55 | vhaarr | Parnic: so, first thing is the info argument to each set/get function, right |
00:38.10 | vhaarr | info is a table containing some stuff about the current option |
00:38.27 | vhaarr | the most important being info[#info], which will return the key of the option, like barBlendMode |
00:38.33 | vhaarr | or barProportion |
00:38.34 | vhaarr | see? |
00:38.54 | Parnic | ok |
00:39.08 | vhaarr | now, with that in mind, you should have one set and one get function set on the top level barSettings group |
00:39.27 | vhaarr | or possibly even higher |
00:39.28 | vhaarr | with something like |
00:39.29 | vhaarr | set = function(info, value) core:Set(info[ |
00:39.34 | vhaarr | #info], value) end |
00:39.40 | vhaarr | or whatever |
00:40.05 | vhaarr | which reduces the number of functions you need in your table dramatically |
00:40.14 | Parnic | makes sense |
00:40.32 | Parnic | that's a heck of a change to make, though, given that i have 1.3mb worth of options right now :P |
00:40.49 | vhaarr | not as big as you'd think |
00:40.54 | vhaarr | once you get started it's quite simple |
00:42.08 | Lulia | Generally such things end up reducing more code than they generate, no? |
00:42.08 | *** join/#wowace Ingela- (~Ingela@90-230-169-130-no35.tbcn.telia.com) |
00:42.12 | *** join/#wowace Lysithea (Lyset@c-59ad72d5.017-172-73746f34.cust.bredbandsbolaget.se) |
00:42.55 | vhaarr | Parnic: also note that you can define a handler=IceHUD.Core at the top level and then refer to methods by their name, like get="GetBarHeight" |
00:43.09 | Lulia | vharr, can I show you where I tried to use the function? The entirety of the code is 70 lines long |
00:43.11 | Lulia | So it's not much |
00:43.12 | vhaarr | which would invoke IceHUD.Core:GetBarHeight(info) |
00:43.20 | vhaarr | Lulia: can you just read my code? |
00:43.29 | Lulia | I need to find your AddOn first |
00:43.34 | vhaarr | @project closet-gnome |
00:43.35 | Repo | vhaarr: http://www.wowace.com/addons/closet-gnome/. ClosetGnome. Game: WoW. Rabbit (Manager/Author). Updated: 22 days ago. Tickets: 1/18 |
00:43.48 | Parnic | vhaarr: wouldn't it be easier to retrofit the options stuff to return a table instead of store it in IceHUD.options? |
00:44.11 | vhaarr | how's that related to this? |
00:44.24 | Lulia | Which file? |
00:44.40 | Parnic | because then it would register the options to the db instead of holding a local copy, right? |
00:44.56 | vhaarr | you're not making any sense |
00:45.08 | Parnic | ok then :P |
00:45.39 | Megalon | stop being so fiskeresque Parnic! |
00:46.47 | Lulia | See... |
00:46.58 | Lulia | I don't see how what I'm doing is any different, vharr |
00:47.05 | Lulia | I didnt use the optional argument at the end |
00:47.16 | Lulia | But it looks like you only used it to pass something |
00:52.04 | Lulia | Just curious |
00:52.08 | Lulia | What is set in that? |
00:52.18 | Lulia | The optional argument sends a specific button to click, no? |
00:52.20 | Lulia | Right or Left? |
00:53.00 | vhaarr | the set name |
00:53.19 | vhaarr | which should be obvious from |cgKeyFrame:SetScript("OnMouseUp", function(self, set) EquipmentManager_EquipSet(set) end)| |
00:55.48 | Lulia | well, I'm pretty bad at reading script :P |
00:56.27 | Lulia | I was pretty sure the last argument of the function was for mouse buttons |
00:56.28 | Lulia | hmm |
00:56.45 | Lulia | Either way, I see you call the button by name, like I so. |
00:56.53 | Lulia | And you run a fairly normal event script |
00:57.30 | Lulia | It's not drastically different from mine on a level of syntax, though it does different things and has slightly different formatting |
00:57.48 | Lulia | You use OnMouseUp, where I used OnClick, but I see that as a choice you made, no? |
00:57.52 | *** join/#wowace Wizardling (Durandal@ip-118-90-61-87.xdsl.xnet.co.nz) |
00:59.19 | vhaarr | it could be, I wrote this stuff a long time ago |
00:59.47 | Lulia | I don't see why OnMouseUp would work and OnClick wouldnt, but I could try that |
00:59.49 | Lulia | *sigh* |
01:01.28 | Wizardling | Hi, are any of the Pitbull devs on? |
01:01.38 | Lulia | O.o |
01:02.58 | *** join/#wowace [SW]Dodge`oFF (dodge@ip01.vserver01.remolus.at) |
01:03.35 | *** join/#wowace Baraius (~Adium@cpe-72-177-69-93.austin.res.rr.com) |
01:03.41 | Wizardling | Any devs for any popular addons I might know? |
01:03.54 | vhaarr | ~justask |
01:03.57 | Lulia | You're probably scaring them |
01:04.00 | Parnic | ~asktoask |
01:04.00 | purl | This is IRC. Don't ask to ask a question. Just ask your question and if someone's around, they'll be glad to help. |
01:04.03 | vhaarr | asdfølgoknaoiw |
01:04.04 | Wizardling | Let me put this another way - does some dev want to cast a Cast Scroll of Resurrection on me and get 30 days? |
01:04.21 | Parnic | sure |
01:04.31 | Wizardling | Ok, what addon? |
01:04.35 | Parnic | @project ice-hud |
01:04.36 | Repo | Parnic: http://www.wowace.com/addons/ice-hud/. IceHUD. Game: WoW. Parnic (Manager/Author), Rokiyo (Author). Updated: 5 hours ago. Tickets: 3/99 |
01:04.49 | Wizardling | Ummm... I know it, but have not used it, sorry. |
01:05.00 | *** join/#wowace Hirsute-phone (~yaaic@25.sub-97-181-103.myvzw.com) |
01:05.00 | *** join/#wowace Hirsute-phone (~yaaic@WoWUIDev/Norganna/Developer/Hirsute) |
01:05.01 | vhaarr | Wizardling: does it matter if I'm EU? |
01:05.12 | Wizardling | I... don't know. |
01:05.16 | vhaarr | indeed |
01:05.21 | Wizardling | *shrug* |
01:05.41 | Wizardling | No harm in finding out though |
01:06.37 | vhaarr | I do it from battle.net or what? |
01:07.35 | vhaarr | ah here we go |
01:07.36 | Wizardling | Go to worldofwarcraft.com, see the Account bit in the sidebar? The promotions menu is what you want. |
01:08.15 | Wizardling | So vhaarr - what addon do you develop? |
01:08.41 | vhaarr | I'm not a whore, find out yourself |
01:08.51 | vhaarr | forget this, time for hot chocolate |
01:08.53 | Wizardling | blinks |
01:09.05 | Wizardling | Did I offend somehow? |
01:09.14 | vhaarr | :P |
01:09.21 | vhaarr | it doesn't work anyway, the resurrect thing |
01:09.22 | Repo | 10decursive: 03Archarodim 07master * 2.5.2.2-2-g7509388 / (4 files in 1 directory): [+2 commits] |
01:09.23 | Repo | 7509388: - When checking other's version, their name will be colored according to their class |
01:09.24 | Repo | 655193d: - Added a notice message for those using Decursive in an unpackaged state mentioning all the disadvantages and problems involved. (Message will be displayed once every 24 hours). |
01:09.54 | *** join/#wowace Legorol (~legorol@cpc8-sgyl28-2-0-cust43.sgyl.cable.virginmedia.com) |
01:10.08 | vhaarr | and this is me; http://www.wowace.com/profiles/Rabbit/ |
01:10.17 | Wizardling | Oh, well is any US based addon dev for an addon I might know and love online, and would you like to cast Scroll of Resurrection on me to get 30 days free? |
01:10.46 | Wizardling | Ah, I've used BigWigs :-) |
01:11.18 | Hirsute-phone | ... What kind of problems and disadvantage, I wonder. |
01:11.22 | vhaarr | talking about my addons in past tense after trying to get me to sell myself in public is not a good strategy for making friends |
01:11.39 | Wizardling | I don't understand |
01:11.58 | Parnic | he said he needs a scroll of resurrection implying that his account is not current |
01:11.59 | Wizardling | I just want to offer a dev for an addon I like a tip of 30 days play. |
01:12.02 | Parnic | so there are no mods he's using right now |
01:12.19 | vhaarr | Parnic: that is a fair point |
01:12.27 | Wizardling | but I have used lots, and will again very soon. |
01:12.28 | Hirsute-phone | Well, it sounds like he isn't playing right now. |
01:12.37 | Parnic | but wants to start up again |
01:12.43 | Parnic | and in the process wants to grant someone 30 days |
01:12.46 | vhaarr | Wizardling: thing is, you can easily go on wowace.com and find the author you want |
01:12.51 | Wizardling | everything's still installed, I've updated WoW and my addons. I'm just ready to pay. |
01:12.52 | vhaarr | Wizardling: then offer him the thingy in a PM |
01:13.04 | SunTsu | vhaarr: if he makes the connection on you being Rabbit |
01:13.06 | vhaarr | ah, well if you want to make haste about it, then IRC is the right way |
01:13.15 | Archarodim | @Hirsute-phone: problems and disadvantages specific to Decurisve (debug messages, wrong locals, more memory and cpu usage, etc...) |
01:13.17 | Parnic | and now we're back at the beginning |
01:13.19 | Parnic | this is fun |
01:13.19 | vhaarr | SunTsu: he can make that connection from the project page to my profile |
01:13.21 | Wizardling | Sure, I can do that. I was just going to sub right now, so I didn't want to wait. |
01:13.22 | vhaarr | SunTsu: then PM me there |
01:13.39 | vhaarr | but, like I just said |
01:13.43 | vhaarr | <vhaarr> ah, well if you want to make haste about it, then IRC is the right way |
01:14.08 | Hirsute-phone | Archarodim: hmm. |
01:14.11 | Wizardling | heh, yeah that was the plan. But it's no big deal. |
01:14.41 | Wizardling | I'm sure I'll find someone I can thank with 30 days. |
01:14.46 | Parnic | the author you're looking for is probably shefki |
01:14.49 | Parnic | @project pitbull4 |
01:14.50 | Repo | Parnic: http://www.wowace.com/addons/pitbull4/. PitBull Unit Frames 4.0. Game: WoW. ckknight (Manager/Author), Shefki (Author/Maintainer), vangual (Author), sylvanshadows (Tester), Stanzilla (Ticket Manager), Trillianne (Documenter/Artist). Updated: 40 hours ago. Tickets: 156/849 |
01:17.09 | Wizardling | Thanks, cause of all my addons Pitbull is one of my most essential :-) |
01:17.35 | Lulia | I'm new to the AddOn world, no one loves me yet. |
01:17.41 | *** join/#wowace Antiarc (~Antiarc@ip70-190-192-186.ph.ph.cox.net) |
01:17.41 | *** mode/#wowace [+v Antiarc] by ChanServ |
01:17.50 | Lulia | Though I do have 20 favs on WoWInterface and 1 on Curse! |
01:17.53 | Lulia | So I feel the love :D |
01:17.57 | Wizardling | heh |
01:19.30 | Repo | 10broker-currency: 03Torhal 07master * 4.0.1-1.1.1-4-ge1c3c14 Broker_Currency.lua: [+4 commits] |
01:19.31 | Repo | e1c3c14: Merge branch 'master' of git.wowace.com:wow/broker-currency/mainline |
01:19.32 | Repo | bb38397: Massive overhaul resulting in immensely less code, which is much more understandable, with the side benefit of fixing money totals. |
01:19.33 | Repo | 821df0c: Fixed some find/replace goofs. |
01:19.34 | Repo | 580fc4e: Currency names and icons are now stored in and retrieved from SavedVariables since, for example, non-Jewelcrafting characters are unable to get information about Dalaran Jewelcrafting Tokens. |
01:20.31 | Wobin | pats Lulia |
01:20.40 | Wobin | soon you'll have more love than you know to deal with |
01:20.40 | Lulia | :P |
01:20.48 | Lulia | We'll see |
01:20.52 | Torhal | kicks pompy in the shins. Repeatedly. |
01:20.57 | Torhal | Making me merge :P |
01:20.57 | Wobin | see? |
01:21.00 | *** join/#wowace Hirsute (~chatzilla@adsl-76-215-208-90.dsl.scrm01.sbcglobal.net) |
01:21.04 | *** join/#wowace Hirsute (~chatzilla@WoWUIDev/Norganna/Developer/Hirsute) |
01:21.12 | Lulia | btw, Torhal, you made your way into my NaNoWriMo story |
01:21.22 | Torhal | Lulia: Foo? |
01:21.24 | Wobin | Infamy! At last! |
01:21.29 | Parnic | national novel writing month |
01:21.29 | Lulia | I needed a name for the city |
01:21.35 | Lulia | So I named it Toral |
01:21.39 | Torhal | Haha |
01:21.41 | Wobin | sticks a flag in Torhal |
01:21.44 | Lulia | Because I saw you kicking someone in #wowace |
01:21.47 | Wobin | I claim this city in the name of Wobin |
01:22.00 | Lulia | And I was like "that's a good city name" |
01:22.07 | Torhal | Nice :) |
01:24.30 | Megalon | and the inhabitants are called Fiskers? that's really nice |
01:24.52 | Lulia | heh |
01:27.24 | SunTsu | then it's be named "Trollhall" |
01:28.38 | Megalon | herp di derp |
01:30.23 | pompy | Torhal: deal with it |
01:30.23 | Repo | 10broker-currency: 03Torhal 044.0.1-1.2.0 * 154814b /: [new tag] Tagging new release. |
01:30.27 | pompy | i told u about it b4 i did it |
01:30.33 | pompy | :) |
01:30.43 | Torhal | No, you didn't, else I would have pulled first. |
01:30.56 | Torhal | I'm used to that with ARL since I know I'm not the only person working on it :P |
01:31.55 | pompy | ! |
01:33.02 | Lulia | USing OnMouseUp didn't work either |
01:33.03 | Lulia | :-/ |
01:34.13 | Lulia | Everything I know about the function tells me this should work |
01:36.28 | Hirsute | Everything you know is wrong! |
01:36.33 | Hirsute | (Sorry, couldn't resist) |
01:36.35 | Lulia | :( |
01:36.42 | Lulia | quits life. |
01:36.50 | Torhal | OnMouseUp where, when, and how? |
01:37.11 | Lulia | Well, I used it to replace OnClick to see if it was needed to work with SetOverrideBindingClick |
01:37.13 | Torhal | Lulia: You can't quit life. You have to give a two-week notice. |
01:38.23 | Hirsute | Lulia: What do you mean you used it to replace OnClick? Did you just do myframe:SetScript("OnMouseUp",function() foo end)? |
01:38.29 | Lulia | I'm trying to use OverrideBinding to allow a mousewheel (and the left and right arrow keys) to scroll through the text of the chatframe editbox when it has focus but the mouse isn't hovering over it (and for the arrow keys because apparently OnKeyDown and OnKeyUp are disabled for that frame) |
01:38.35 | Lulia | Nope |
01:39.03 | Lulia | http://paste.wowace.com/2784/ |
01:40.54 | *** join/#wowace PProvost_ (~PProvost@174-16-121-54.hlrn.qwest.net) |
01:41.51 | *** join/#wowace PProvost (~PProvost@WoWUIDev/WAU/Admin/Pprovost) |
01:41.51 | *** mode/#wowace [+v PProvost] by ChanServ |
01:45.12 | Lulia | :P |
01:45.17 | Lulia | I scared you guys off? |
01:45.36 | Megalon | brb basement! |
01:50.35 | pompy | ~seen oscarucb |
01:50.43 | purl | oscarucb <~oscarucb@d60-65-254-150.col.wideopenwest.com> was last seen on IRC in channel #wowace, 6d 2h 13s ago, saying: 'anyhow my question was whether anyone had a better + more reliable way to manage embeds, but I guess the answer is no'. |
02:00.17 | *** join/#wowace Groktar (~gr@c-76-20-77-109.hsd1.ca.comcast.net) |
02:05.00 | *** join/#wowace [SW]Dodge`oFF (dodge@ip01.vserver01.remolus.at) |
02:07.32 | Lulia | So, erm |
02:07.40 | pompy | http://forums.worldofwarcraft.com/thread.html?topicId=27508585253 |
02:07.43 | Lulia | No one can even tell me if I'm using the function incorrectly? |
02:09.57 | *** join/#wowace Trellmor (~Trellmor@91-118-56-199.dynamic.adsl-line.inode.at) |
02:15.59 | *** part/#wowace cralor (~cralor@c-98-217-6-30.hsd1.ma.comcast.net) |
02:17.13 | *** join/#wowace Jygga (Jygga@unaffiliated/jygga) |
02:18.11 | *** join/#wowace Jyggaa (Jygga@unaffiliated/jygga) |
02:20.42 | *** join/#wowace bien|| (~bien@p4FF45B52.dip.t-dialin.net) |
02:31.40 | Hirsute | Lulia: I haven't the foggiest, and I'm behind enough on fixing my own addons that I really need to get this paper written and get to that. |
02:32.41 | Torhal | Lulia: http://wowprogramming.com/docs/api_types#binding |
02:33.54 | Torhal | Also: http://wowprogramming.com/docs/api/SetOverrideBindingClick |
02:36.12 | Lulia | I, uh, have read those, Torhal |
02:36.18 | Lulia | They dont explain to me why mine isn't working |
02:37.39 | Torhal | Lulia: "Sets an override binding to "click" a Button object."... ChatFrame1EditBox is an EditBox, not a Button. |
02:37.59 | Lulia | Correct, but I'm not clicking the editbox |
02:38.02 | Lulia | I'm clicking a button |
02:38.17 | Lulia | The button to be clicked is defined right in the function |
02:38.54 | Lulia | It doesn't trigger off a button, it triggers off of a binding. |
02:39.15 | Lulia | I'm just setting it when the ChatFrame1EditBox gains focus, and clearing it when it loses focus. |
02:39.51 | Torhal | You're passing "self" to the OnEditFocusGained handler, which happens to be ChatManager.Main, which is ChatFrame1EditBox. |
02:40.08 | Torhal | You're then using "self" for SetOverrideBindingClick |
02:40.24 | Torhal | Ok |
02:40.26 | Torhal | Nevermind |
02:40.28 | Lulia | The frame in the beginning of it doesn't need to be a button |
02:40.42 | Torhal | I've been staring at code all day and life has been extremely shitty, so I'm not all here |
02:40.47 | Torhal | Hold on |
02:43.48 | Torhal | Did you try setting the second parameter to true? |
02:44.16 | Lulia | http://www.wowpedia.org/API_SetOverrideBinding |
02:44.28 | Lulia | isPriority Boolean - true if this is a priority binding, false otherwise. Both types of override bindings take precedence over normal bindings. |
02:44.35 | Lulia | No idea what it means |
02:45.13 | Torhal | Also, where are you defining ChatManager_Buttons_MoveCursorDn? |
02:45.26 | Torhal | Ah, I se |
02:45.29 | Torhal | see* |
02:45.43 | Lulia | Still not working with that set to true |
02:45.44 | Lulia | ;) |
02:46.16 | Torhal | Did you verify that the button works all on its own? |
02:48.18 | *** join/#wowace Monolit (~postid08@89.112.4.92) |
02:49.25 | Primer | Does anyone know what the deal with inspecting is? |
02:49.44 | Primer | Some are saying there's an inspect "limit", and that GS is causing it |
02:49.47 | Torhal | Primer: It's fucked. |
02:49.59 | Primer | So it's just a bug? |
02:50.00 | Torhal | You can inspect with the default UI and still have it not work. |
02:50.01 | Lulia | I put a print statement in the button to see if it was even firing |
02:50.16 | Lulia | I know the code in it works, because the code works for the mousewheel when the cursor is over the editbox |
02:52.43 | Lulia | Hmm, this button is refusing to show |
02:52.44 | Lulia | ugh |
02:53.42 | Repo | 10gridstatusdirectionarrows: 03slaren * r10 GridStatusDirectionArrows.lua: |
02:53.43 | Repo | - Do not filter anything when no unit filters are specified but "filter units" is enabled |
02:54.02 | Repo | 10gridstatusdirectionarrows: 03slaren 04v1.0 * r11 : Tagging as v1.0 |
02:56.12 | Lulia | Ot |
02:56.21 | Lulia | It's like no code wants to work for me tonight |
02:58.11 | Lulia | lol |
02:58.16 | Lulia | InitValues isn't even run |
02:58.19 | Lulia | That might be why... |
02:58.34 | Repo | 10pitbull4: 03Shefki 07master * v4.0.0-beta17-1-gc461986 GroupHeader.lua: [+1 commit] When changing Unit group on Groups change is_wacky if necessary. |
03:00.15 | VonhintenHOME` | is_wacky, nice |
03:00.34 | VonhintenHOME` | m_HackIssueNum50783 = true; |
03:01.34 | Kaelten | http://maps.google.com/maps?f=q&source=s_q&hl=en&geocode=FZw0IwIdReU1BinBQsblZI5QMTFvNp80fKodlQ%3BFRhxKAIdfJI9CCkvGX_XD05nNDFEUmZ81HVC9Q&q=japan+from+china&sll=34.758943,-86.717039&sspn=0.016783,0.016994&ie=UTF8&t=h&z=5&saddr=china&daddr=japan |
03:01.40 | Kaelten | pay attention to step 42ish |
03:02.15 | *** join/#wowace Iblise (~Iblise@d75-152-180-141.abhsia.telus.net) |
03:02.18 | Megalon | you know something is old |
03:02.27 | Megalon | when it even reached kaelten |
03:02.27 | Megalon | ! |
03:02.34 | VonhintenHOME` | lol |
03:02.43 | Kaelten | Megalon: :P |
03:02.54 | Megalon | herpyderp |
03:02.55 | Kaelten | a good bit of people I've showed it to haven't seen it |
03:03.05 | Kaelten | so :P |
03:03.06 | Iblise | is there a mod that shows everyone who is attacking a target besides xpearl? |
03:03.17 | Megalon | your non-internet friends in the mountains |
03:03.19 | Iblise | bitching at people who are not swapping on the omnitron fight |
03:03.28 | Iblise | and no one is fessing up |
03:03.29 | Megalon | ;P |
03:03.33 | Iblise | so need a mod to tattle |
03:09.56 | Lulia | omg, it works |
03:12.13 | Shefki | Iblise: It's trivial to write, I don't know of something off hand that does it. But I've always thought it was a useless feature. |
03:13.36 | Torhal | Lulia: So what did yuo change? |
03:13.38 | Shefki | Iblise: Just iterate the raid and check what raidNtarget is where n is 1 - 40 |
03:14.38 | ccKep | just PMed him a quick n dirty macro, untested though |
03:16.03 | Lulia | I forgot to run the init function, Torhal |
03:16.07 | Lulia | The button was never created |
03:16.22 | Lulia | I realized it when I tried to make the button show |
03:16.24 | Torhal | Makes sense :) |
03:16.28 | Lulia | I was like "why the fuck is this not showing" |
03:16.31 | Lulia | And then I realized... |
03:16.38 | Lulia | I defined the function, but never RAN it |
03:16.50 | Lulia | This was actually really easy |
03:16.57 | *** join/#wowace Mirrormn (~Mirrormn@h82.56.91.75.dynamic.ip.windstream.net) |
03:16.57 | Lulia | I'm surprised I dont know of another AddOn which does it |
03:17.18 | Mirrormn | does what? |
03:17.23 | Torhal | Cork and Bartender4 do it |
03:17.35 | Torhal | Unless you're talking about the chatframe deal |
03:17.36 | Lulia | Let's you use the middle mouse button or the arrow keys to scroll through the chatframe editbox |
03:17.46 | Lulia | I don't think bartender 4 does it |
03:17.47 | Lulia | :P |
03:18.06 | Torhal | No, it doesn't. Like I said, "Unless you're talking about..." |
03:18.10 | Lulia | ;) |
03:18.25 | Lulia | The only major issue is that it doesn't let you actually hold the key down and scroll through |
03:18.32 | Lulia | seamless scrolling only works with the scrollwheel |
03:18.42 | Lulia | As it needs a full register of the button click in order to fire |
03:18.49 | *** join/#wowace Stalls (~takai@66.49.162.105) |
03:18.51 | Lulia | "OnMouseDown" doesn't seem to do it |
03:19.02 | Lulia | You still need to press the key and let it come back up |
03:19.03 | Lulia | :-/ |
03:19.33 | Stalls | Having a problem with onupdate .. |
03:19.35 | Stalls | frame:SetScript("OnUpdate", function() obj:Update(self, elapsed) end) |
03:19.45 | Stalls | Yet elapsed in timer:Update is coming up nil |
03:19.48 | Stalls | self is fine of course |
03:19.58 | Lulia | Because you didnt pass it |
03:20.06 | Stalls | Didn't pass what, elapsed? |
03:20.10 | Lulia | frame:SetScript("OnUpdate", function(elapsed) obj:Update(self, elapsed) end) |
03:20.18 | Stalls | ugh |
03:20.19 | Stalls | duh |
03:20.24 | Stalls | k i'll try it thanks |
03:20.48 | Lulia | I suppose I could run another frame which checks to see if the arrow key is pressed at all |
03:21.02 | Stalls | em, now its telling me elapsed is a table value? |
03:21.05 | Stalls | That doesn't seem right |
03:21.15 | Lulia | frame:SetScript("OnUpdate", function(self, elapsed) obj:Update(self, elapsed) end) |
03:21.16 | Torhal | Lulia: You can do what you want with a throttled OnUpdate |
03:21.35 | Lulia | Probably, but I'm not sure I even need an OnUpdate |
03:21.54 | Torhal | To make it run continuously while the button is held, you probably do. |
03:22.11 | Lulia | Well, if I use an OnKeyDown event |
03:22.18 | Lulia | And have it run until OnKeyUp fires |
03:22.49 | Lulia | But I need another frame, since ChatFrame1EditBox doesn't register those events. |
03:23.04 | Stalls | Yea, its still the same. self has always been passed, its passed explicitly whether you pass it as an arg or not, but elapsed after adding it to the function call is being passed as a table |
03:23.30 | Torhal | Yah, just overlay it on top of the editbox |
03:23.42 | ccKep | Stalls: elapsed is the 2nd arg |
03:23.46 | Stalls | right |
03:23.48 | Lulia | Well, does it even need to be positioned, Torhal? |
03:23.56 | Lulia | A frame can be invis and still function |
03:24.20 | Lulia | Stalls: What ccKep said, I only had you pass self because elapsed is the second argument |
03:24.31 | Lulia | If, as the second argument it's still being passed as a table, then that's odd. |
03:24.46 | Stalls | agreed |
03:24.52 | Lulia | Paste the error? |
03:24.58 | Torhal | Lulia: For that script, probably now. |
03:25.06 | Torhal | Positioning, that is |
03:25.33 | Torhal | s/now/not/ |
03:26.10 | ccKep | cant you just ChatFrame1EditBox:RegisterForClicks() and such? (didn't read the whole conversation, just the last few lines) |
03:26.26 | Lulia | The ChatFrame ignores arrow keys |
03:26.34 | Lulia | Unless alt is pressed |
03:26.43 | Torhal | You can get around that - Prat does. |
03:26.48 | ccKep | prat has arrow keys working |
03:26.52 | ccKep | might want to take a look at that :D |
03:26.57 | Lulia | Well |
03:26.59 | Lulia | I got around it |
03:27.10 | Lulia | My arrow keys are working |
03:27.19 | Lulia | You just can't hold it down for seamless cursor movement |
03:27.27 | Lulia | But I think I have a way to do that too |
03:28.16 | Stalls | Ok I changed it to: frame:SetScript("OnUpdate", obj:Update(self, elapsed)) |
03:28.24 | Stalls | The error is: Interface\AddOns\GeekCooldown\CooldownBars.lua:133: attempt to index local 'self' (a number value) |
03:28.55 | ccKep | frame:SetScript("OnUpdate", function(self, elapsed) obj:Update(self, elapsed) end) |
03:29.09 | Lulia | I pasted that earlier |
03:29.12 | Lulia | And he said it failed |
03:29.18 | ccKep | woot? |
03:29.35 | Torhal | Keep in mind that you're not throttling at all, so if you have 120FPS you're running that 120 times per second |
03:29.38 | Stalls | lol Isn't that what I just pasted? :p |
03:29.48 | ccKep | nop |
03:29.54 | Stalls | Oh |
03:29.55 | Stalls | no |
03:29.56 | ccKep | function(...) stuff around it |
03:29.59 | Stalls | Yup |
03:30.17 | ccKep | and yea, be sure to throttle your stuff somewhere |
03:30.29 | Stalls | Yep, right now I just want to get the call working |
03:30.33 | Stalls | Then i'll setup throttling |
03:30.54 | Stalls | Trying it again btw with frame:SetScript("OnUpdate", function(self, elapsed) obj:Update(self, elapsed) end) |
03:31.04 | Stalls | Same error re: self |
03:31.09 | Stalls | and if I omit self |
03:31.16 | Stalls | self works, but elapsed is a table? |
03:31.31 | ccKep | what does your object:Update() function header look like? |
03:31.40 | Stalls | function timer:Update(self, elapsed) |
03:31.58 | Stalls | self.timer = self.timer - elapsed |
03:32.04 | Stalls | and would tell me elapsed is a nil value |
03:32.09 | Stalls | that was my original problem |
03:32.39 | Torhal | You're passing frame as self |
03:32.46 | Stalls | Yes |
03:33.05 | Stalls | attached to the frame is timer so I'm able to do self.timer self.text, etc |
03:33.07 | Torhal | Try /msg lua_bot !api onupdate |
03:33.39 | Stalls | lol no match |
03:33.40 | Shefki | Stalls: Your problem is obj:Update(self, elapsed) |
03:33.51 | Stalls | How so? |
03:33.53 | Shefki | obj will be your self in the other function. |
03:33.59 | Stalls | Right |
03:34.02 | Shefki | Becuase you're using the method call sugar. |
03:34.06 | ccKep | frame:SetScript("OnUpdate", self.Update) |
03:34.08 | Stalls | Exactly |
03:34.10 | Stalls | That's intended |
03:34.19 | Stalls | Because i'm referencing multiple objects |
03:34.23 | Torhal | function(this, elapsed) obj:Update(this, elapsed) end |
03:34.28 | Torhal | That will work |
03:34.31 | Stalls | local obj = setmetatable({ frame = frame, totalTime = timer, timer = timer }, mt) |
03:34.59 | Stalls | k lemme try |
03:35.16 | Torhal | Or even function(chickens, elapsed) obj:Update(chickens, elapsed) end |
03:35.24 | Torhal | Just so long as you're not using a second "self" |
03:35.25 | *** join/#wowace Sorha (76d05e52@gateway/web/freenode/ip.118.208.94.82) |
03:35.36 | Torhal | You're overwriting the obj->self |
03:35.44 | Stalls | function timer:Update(self, elapsed) <-- stays the same? |
03:35.49 | Torhal | No |
03:35.59 | Torhal | Oh |
03:36.05 | Torhal | No, definitely not |
03:36.06 | Stalls | That's the actual method |
03:36.07 | Lulia | lua doesn't have a while loop?? |
03:36.17 | Mirrormn | sure it does |
03:36.25 | Torhal | timer:Update() would be timer.Update(timer) (and timer equals self) |
03:36.43 | Torhal | So actually naming a parameter self when you have an actual self is bad |
03:36.44 | Lulia | Trying to do a find on the reference manual isn't turning anything up |
03:36.50 | Lulia | But I'm only searching the index |
03:36.52 | taleden | while test() do ... end |
03:36.54 | Torhal | while foo ~= bar do |
03:36.58 | taleden | or repeat ... until test() |
03:37.00 | Stalls | k |
03:37.18 | Lulia | I figured it would be under a section called loops |
03:37.25 | Lulia | But, there is no section labeled such. |
03:37.27 | Lulia | Thanks, Torhal |
03:37.31 | Stalls | lol and now I'm back to where I was :) |
03:37.36 | Stalls | Using your setup Torhal |
03:37.42 | Stalls | Elapsed is nil |
03:37.47 | Stalls | That's the problem I was initially having |
03:38.11 | pompy | Lulia: http://lua-users.org/wiki/ControlStructureTutorial |
03:38.40 | Lulia | No do until ? |
03:38.41 | Lulia | ;) |
03:38.49 | Lulia | (I'm kidding) |
03:39.23 | ccKep | well, post some code on paste.wowace.com and we'll look at it Stalls |
03:39.44 | ccKep | (frame creaton, setscript, your function header) |
03:39.56 | ccKep | and the error again, of course :D |
03:40.00 | Lulia | My genius idea with a while loop doesn't actually make sense now that I'm trying to put it to code |
03:40.34 | Lulia | Because I don't see how the OnKeyUp script will be able to affect a while loop started in the OnKeyDown script |
03:41.33 | Stalls | Actually I 'might' have solved it |
03:41.45 | Stalls | Just waiting for a spell cooldown so I can test it |
03:41.46 | Stalls | lol |
03:42.06 | ccKep | its actually not that hard, I dont know what went wrong with your code ^.^ |
03:42.33 | Lulia | Making a timer for your CDs? |
03:42.44 | Lulia | I had to make one for my Runes, in case users didnt have OmniCC |
03:43.28 | Stalls | http://pastebin.com/LPX15uVm |
03:43.30 | Stalls | There ya go |
03:43.55 | Stalls | That's the function creating the frame, the setscript at the bottom of it, and the update function itself |
03:44.13 | *** join/#wowace pompy1 (~Mike@c-76-116-64-179.hsd1.nj.comcast.net) |
03:44.41 | Sorha | Trying to cut down the number of times "QUEST_LOG_UPDATE" actually updates my quest minion if theres multiple firings of the event within say 1 second. Is setting a timer to call the update function in x time and ignoring all other calls until thats done the best way? |
03:45.18 | ccKep | is it me, or are you using setmetatable with a nil value? ^.^ |
03:45.28 | Stalls | Just amended it with the error |
03:45.31 | ccKep | (not that thats the prob) |
03:45.40 | Stalls | what nil value? |
03:45.49 | Mirrormn | Sorha: that's how I would do it |
03:46.02 | Sorha | Thanks :) |
03:46.05 | ccKep | frame:SetScript("OnUpdate", function(self, elapsed) self.obj:Update(elapsed) end) |
03:46.18 | Mirrormn | actually, you don't really need to use a timer |
03:46.22 | ccKep | and regarding the nil value:line 56 of your paste |
03:46.32 | ccKep | setmetatable({...}, mt) |
03:46.37 | ccKep | where's mt? ^.^ |
03:46.49 | Stalls | at the end |
03:46.54 | Stalls | after the table |
03:46.59 | Mirrormn | just have a "lastupdate = GetTime()" and only do that update "if(GetTime() - lastupdate > 1)" |
03:47.00 | ccKep | line? |
03:47.06 | Stalls | 56 |
03:47.13 | Stalls | Ohhhhh |
03:47.15 | Lulia | http://paste.wowace.com/2786/ |
03:47.16 | Stalls | :p |
03:47.18 | Lulia | That's the tiemr I made |
03:47.19 | ccKep | thats where you use mt, but there's no definition |
03:47.19 | Stalls | heh |
03:47.21 | Stalls | lawl |
03:47.23 | Lulia | In case you need them in the future |
03:47.30 | Stalls | Shit I didn't even realize I never declared it hahaha |
03:47.34 | Stalls | fail =( |
03:47.52 | Sorha | Wondering if that would that cause issues where I pick up one item and go to 7/10 done, then half a second later get another and have 8/10 but not updating the minion |
03:48.16 | Lulia | Mine isn't the most efficient now that I look at it |
03:48.30 | Lulia | But it worked. I suppose I'll need to go back and make it more efficient. |
03:48.39 | ccKep | anywhere, the code I posted above should work for you |
03:48.49 | Stalls | ccKep |
03:48.54 | ccKep | *anyway |
03:48.54 | Stalls | I love you man |
03:48.57 | Stalls | :) |
03:49.04 | Stalls | I've been banging my head against a wall for an HOUR on that line |
03:49.05 | Stalls | lol |
03:49.17 | Stalls | Yep that solved it |
03:49.34 | ccKep | well, frames call onupdate with two arguments... the frame that fires the event, and the elapsed time since last update |
03:49.46 | Stalls | Yea |
03:50.00 | Stalls | I've used onupdate in datatexts and other statusbars i've done |
03:50.11 | Stalls | but i'm coding a raid cooldown and using them quite a bit more :/ |
03:50.14 | Lulia | When I think about it |
03:50.18 | Stalls | I really need to setup some throttling though |
03:50.25 | Lulia | I think mine is literally creating a new frame for every time a rune goes on cd |
03:50.30 | Stalls | at 92 fps, it's chewing up a lot of cycles |
03:50.40 | Lulia | O.o |
03:51.03 | ccKep | <PROTECTED> |
03:51.03 | ccKep | :D |
03:52.19 | Stalls | lawl |
03:52.22 | Stalls | That's one way to throttle it |
03:52.31 | Stalls | I cringe at defile with 30 fps though :p |
03:53.15 | Jerub | i raid at under 30fps all the time. |
03:53.20 | Jerub | and i've killed the lk... |
03:53.28 | Jerub | and australian latency! |
03:53.31 | Lulia | Your eye cant differentiate between anything higher than 24 fps |
03:53.47 | ccKep | thats what everybody says... but it really is a lie |
03:53.53 | Lulia | It isnt |
03:54.01 | Lulia | 30 dps is perfectly smooth |
03:54.08 | ccKep | I do play with /console maxfps 30 all the time, and I do notice the difference if I unthrottle it |
03:54.11 | Lulia | It doesn't get smoother to your eyes because it goes from 30 to 120 fps |
03:54.13 | ccKep | and its noticable |
03:54.17 | Sorha | If you had to have up to 100 frames for an addon would you create them at the start and show/hide when needed etc or try create them only when needed? o_O |
03:54.50 | Lulia | Mine's at 30 right now, but it's usually at 60 and I dont see a single difference |
03:54.59 | Lulia | The difference you're "noticing" is purely psychological |
03:55.13 | ccKep | nah, I swear by it |
03:55.19 | ccKep | just scroll around your char with your mouse at 60 fps |
03:55.24 | ccKep | and have /console maxfps 30 in the editbox |
03:55.28 | ccKep | and press enter while rotating the cam |
03:56.00 | Mirrormn | your eye can differentiate up to about 60 fps |
03:56.18 | *** join/#wowace Lulia1 (~BleaS@pool-173-76-192-176.bstnma.fios.verizon.net) |
03:56.25 | ccKep | I didnt believe it myself when I tested it, but looking at my screen (and having someone else change fps with macros) I can definately tell the difference |
03:56.26 | Lulia1 | Ugh @ d/c |
03:56.27 | Mirrormn | for smooth motion |
03:56.30 | Lulia1 | In any case |
03:56.40 | Lulia1 | Your sight is highly influenced by expectation |
03:56.49 | Lulia1 | You expected a difference, even if it wasn't conscious |
03:56.53 | Lulia1 | And so you saw a difference |
03:57.03 | Antiarc | Hey tekkub, you about? |
03:57.21 | Mirrormn | and for more extreme things you can detect more than 60fps, I'd say |
03:57.40 | Mirrormn | I could definitely tell the difference between a CRT monitor running at 60hz, 75hz, and 85hz |
03:57.40 | Jerub | i think you're all talking about some very interesting things. |
03:57.59 | Jerub | the real question is, is there any advantage to a higher framerate, does it make playing wow easier/better/etc |
03:58.19 | ccKep | well, not above 20 I'd say |
03:58.29 | Lulia1 | It really doesn't matter after 24 fps, 30 if you like round numbers |
03:58.43 | Lulia1 | Even 20 is fine, it's only a little choppy |
03:58.49 | Lulia1 | But it's perfectly smooth at 24 or 25 |
03:58.50 | ccKep | but I'd hate myself if I had to play <20 fps |
03:58.56 | Jerub | i think we've established that it's hard to discern, but does it help to have the data sooner? does it help to have it less choppy (does it help to have it more choppy?) |
03:59.00 | Lulia1 | I used to raid with less than 15 fps |
03:59.01 | Jerub | there's science we could do here. |
03:59.02 | Mirrormn | I can easily tell between 20 and 30 fps |
03:59.06 | Lulia1 | Sometimes less than 10, it was disgusting. |
03:59.17 | Lulia1 | Well, 20 and 30 is essentially the breakoff point |
03:59.24 | Mirrormn | I'd say you'd have to really pay attention and have something moving in an expected and smooth manner to see more than 40ish |
03:59.38 | ccKep | Mirrormn: yea, but you dont really have any advantages (like... faster reaction times that matter) |
03:59.48 | Mirrormn | yeah |
04:02.16 | Jerub | i've raided at 5-10 fps. |
04:02.21 | Jerub | mostly tanking+healing |
04:02.54 | ccKep | that's really a pita if you're used to higher fps |
04:03.15 | ccKep | I remember running hodir at like 10fps |
04:03.36 | ccKep | it made me upgrade my comp and suddenly I was like "lol falling ice my ass" |
04:04.02 | Mirrormn | I've raided at 8 fps, it's very difficult to play like that |
04:04.32 | Lulia | Yeah, going from sub 10 fps to 60 fps was like "woah" |
04:04.33 | ccKep | and I'm really certain some of our raiders are STILL playing at framerates like that |
04:04.40 | Mirrormn | now I rarely dip below 25 fps though, even under the most grueling circumstances |
04:04.43 | Lulia | I used to have view distance all the way down too |
04:04.45 | Lulia | Now it's at max. |
04:04.50 | ccKep | and I dont even wonder why they're failing at halion / defiles then :o |
04:04.59 | Lulia | The first time I set it to max I said to myself, "Man, WoW is beautiful" |
04:05.29 | Mirrormn | sthat gives me a good idea for an addon |
04:05.44 | ccKep | oRA3-fpscheck? ;) |
04:05.48 | Mirrormn | one that automatically scales your graphics settings based on your group size |
04:06.00 | Lulia | :P |
04:06.17 | durcyn | there was something a few years back that tweaked settings based on framerate |
04:06.22 | durcyn | hell if i remember the name now |
04:06.42 | ccKep | think its been in an EJ thread regarding wow tweaks |
04:08.33 | taleden | did bliz ever add an API function to query temporary weapon buffs like poison/flametongue, or do we still have to do tooltip scanning? |
04:09.45 | ccKep | !api GetWeaponEnchantInfo |
04:09.45 | lua_bot | GetWeaponEnchantInfo: Returns information about temporary enchantments on the player's weapons (http://wowprogramming.com/docs/api/GetWeaponEnchantInfo) |
04:10.33 | taleden | aye, that says if one exists and its expiration and charges, but not its name or spellid |
04:11.44 | *** join/#wowace DarkAudit (~Brian@c-98-236-98-13.hsd1.wv.comcast.net) |
04:15.41 | ccKep | hm, looks like you still have to loop through unitbuffs ^.^ |
04:19.45 | taleden | they're not unit buffs though, they don't appear in UnitBuff() |
04:19.54 | ccKep | just noticed that myself |
04:20.16 | taleden | so I guess it's still tooltip scanning :( lazy lazy, blizzard |
04:22.56 | Sorha | Found a slight problem with using a timer to delay events.. makes colapsing/expanding zone headers feel really laggy :( |
04:23.58 | Lulia | is there a way for me to see the number of frames in the game? |
04:24.54 | ccKep | ctrl+r |
04:25.28 | ccKep | (bottom center of the screen, might be hidden under your UI) |
04:25.51 | Lulia | not frame rate |
04:26.02 | Lulia | My R key is bound, so ctrl+r doesn't work for me :( |
04:26.22 | ccKep | ah, number of widget frames you mean |
04:26.55 | ccKep | UIParent:GetNumChildren() maybe? |
04:27.18 | Sorha | 241 O_O scary |
04:27.59 | Repo | 10alts: 03talryn1 * r10 Alts.lua: |
04:28.00 | Repo | Added AKA: for guild import. Added ability to move main window and option to save position. |
04:28.03 | ccKep | don't know if it counts recursive, and if every frame that doesn't explicitly set a parent gets parented to UIParent.. so the actual number might be higher |
04:28.33 | *** join/#wowace Aens|Superiority (~a@69-196-167-66.dsl.teksavvy.com) |
04:28.37 | ccKep | +thats all children, not just frames (fontstrings, textures, statusbars) |
04:28.39 | *** part/#wowace Seerah (~Ryan@adsl-66-38-148.mem.bellsouth.net) |
04:29.07 | Repo | 10character-notes: 03talryn1 * r46 CharacterNotes.lua: |
04:29.08 | Repo | Added code to make the main window movable and to save the position. |
04:29.19 | ccKep | and according to wowwiki's CreateFrame description parent does _not_ default to UIParent if given nil... so that number might actually not be that helpful |
04:29.58 | Lulia | Hmm |
04:29.59 | Mirrormn | I have 474 children of UIParent =S |
04:30.26 | ccKep | 229, me wins! ^.^ |
04:30.50 | Lulia | So apparently if I hide a button |
04:30.59 | Lulia | I cant use it in SetOverrideBindingClick |
04:33.27 | *** join/#wowace steev_ (~steev@gentoo/developer/steev) |
04:40.21 | *** join/#wowace NeoTron (~neotron@pool-108-17-169-178.sttlwa.fios.verizon.net) |
04:42.39 | Torhal | Lulia: So don't hide it. Just don't give it dimensions. |
04:42.47 | Torhal | Or set its alpha to 0 |
04:43.36 | Lulia | I set it off to x position -10000000000000000000000000 |
04:43.41 | Lulia | or something like that |
04:43.54 | *** join/#wowace the-golem (~Darrin@c-98-255-201-176.hsd1.ca.comcast.net) |
04:44.11 | Lulia | My createbutton function gives it dimensions by default |
04:44.29 | Torhal | So change it, or override after creation. |
04:44.55 | Lulia | Well... |
04:45.01 | Lulia | Is there something wrong with what I did? |
04:45.03 | Lulia | I mean |
04:45.16 | Lulia | Is it any less efficient to position it off the screen? |
04:45.29 | Torhal | Technically? No. Just "feels" hackish. :D |
04:45.55 | Lulia | So does not giving it dimensions :P |
04:46.00 | Lulia | Or setting its alpha to 0 |
04:46.48 | Torhal | The dimensions thing is perfectly valid. Setting alpha to 0 is useful if the frame has to cover another to perform a function, which requires dimensions. |
04:47.05 | Torhal | Making something, actually giving it dimensions, and THEN throwing it off-screen is...?!? |
04:47.09 | Torhal | :D |
04:47.14 | Lulia | What I did was perfectly valid :P |
04:47.27 | Lulia | Why is setting its dimensions to 0 any more valid? :P |
04:47.31 | Lulia | Logically speaking |
04:47.49 | Torhal | I don't see the reason to set dimensions at all if you're locking it away. |
04:48.03 | Torhal | Like I said, not hurting anything. Just "meh" to me. |
04:48.08 | Lulia | It just does it automatically. |
04:48.19 | Lulia | So either way I have to do something |
04:48.21 | Torhal | Because you told it to. :) |
04:48.23 | Lulia | I could set its position |
04:48.25 | Lulia | Well |
04:48.33 | Lulia | Because in general I want a default size for my buttons |
04:48.44 | Lulia | Why would I change one function for one button? |
04:48.53 | *** join/#wowace doom0r (Doom0r@c-24-1-208-60.hsd1.il.comcast.net) |
04:48.54 | Lulia | When it would mean editing all my other buttons |
04:48.55 | Lulia | :P |
04:49.14 | Torhal | Not if you pass a parameter that tells the function "Ignore the fluff" |
04:49.28 | Torhal | But hey, whatever. Semantics. |
04:49.42 | Lulia | :P |
04:53.49 | Shefki | Anyone else noticed that UnitGetIncomingHeals bugs out sometimes? |
04:55.00 | Rokiyo | i'm not sure why positioning stuff offscreen is "hackish" when calling Frame:SetOwner(WorldFrame, "ANCHOR_NONE") does exactly that :P |
04:55.24 | Shadowed | Because you have no other choice |
04:55.50 | *** join/#wowace Thrae (~ircuser@generalmx-1-pt.tunnel.tserv13.ash1.ipv6.he.net) |
04:55.51 | Shadowed | when it comes to tooltips, you don't really have a need to do it otherwise |
04:57.39 | Lulia | But is there a need to do it otherwise here? |
04:57.43 | Lulia | I dont see a reason to |
04:57.58 | Shadowed | If your solution is move it offscreen and it's not a tooltip, you're probably doing it wrong :p |
04:58.08 | Torhal | :D |
04:58.13 | Lulia | Why? |
04:58.19 | Lulia | What's wrong with moving it off screen? |
04:58.20 | Rokiyo | i also want to know why |
04:58.22 | Lulia | HOW is it wrong? |
04:58.24 | Shadowed | Because, that's what :Hide() is for |
04:58.27 | Lulia | No |
04:58.35 | Shadowed | .. yes |
04:58.42 | Lulia | If I hide it, I cant use it for SetOverrideBindingsClick |
04:58.43 | Torhal | Shadowed: Apparently SetOverrideBindingClick doesn't work on hidden frames. |
04:58.56 | Shadowed | so make a blank frame with no content in it |
04:59.04 | Lulia | It has to be a button |
04:59.12 | Torhal | My argument was it's silly to make a frame, give it dimensions, then throw it offscreen |
04:59.15 | Shadowed | It has to be a button, it does not have to have anything *graphical* attached to it |
04:59.27 | Lulia | But there's nothing wrong with sending it off screen |
04:59.30 | Lulia | That's my point |
04:59.34 | Shadowed | ... |
04:59.37 | Shefki | Shadowed: But it'll create a deadspot if he positions it on screen. |
04:59.38 | Shadowed | sighs |
04:59.41 | Shadowed | Shefki wat |
04:59.50 | Torhal | Shadowed: Not with 0x and 0y |
04:59.53 | Shadowed | ^ |
04:59.56 | Torhal | Er, Shefki |
05:00.00 | Shadowed | you don't even have to SetPoint it |
05:00.05 | Shefki | That's true. |
05:00.13 | Lulia | My function for creating buttons does that though |
05:00.18 | Lulia | It's just how it works |
05:00.19 | Shefki | So change it. |
05:00.21 | Shadowed | look |
05:00.22 | Shadowed | you're wrong |
05:00.28 | Torhal | I'm saying, why are you using the function for the button you're not even using physically? |
05:00.30 | Lulia | There's nothing wrong about it though |
05:00.31 | Torhal | Just make in manually |
05:00.34 | Shadowed | You can decide to ignore everyone who has done stuff like this before and has more experience |
05:00.37 | Lulia | You can't objectively say why it's wrong |
05:00.40 | Lulia | Just that you don't like it. |
05:00.42 | Shadowed | I already did |
05:00.44 | Shadowed | It's unnecessary |
05:00.45 | Lulia | That doesn't make it wrong, just different |
05:00.45 | Torhal | It's unnecessary steps. |
05:00.47 | Lulia | No, you didnt |
05:00.50 | Lulia | It's less steps |
05:00.56 | Shadowed | "Shadowed: It has to be a button, it does not have to have anything *graphical* attached to it" |
05:00.57 | Lulia | Because I'm not typing out a button manually |
05:01.05 | Shadowed | I've done this before, I assure you, you're wrong |
05:01.08 | Lulia | Which would be more steps than using a function I already made |
05:01.18 | Shadowed | Fine |
05:01.18 | Lulia | There's nothing objectively wrong about it |
05:01.20 | Rokiyo | and you're failing to explain why we are wrong... We are asking "what's wrong with x?", you are saying "y is better", we are saying "why is y better?", you are saying "cos, lol, anything else is silly, you silly, lol" |
05:01.21 | Lulia | I refuse to discuss this |
05:01.23 | Shadowed | jesus christ |
05:01.30 | Torhal | <PROTECTED> |
05:01.31 | Lulia | If you can objectively show me I'm wrong, go ahead |
05:01.36 | Shadowed | I JUST DID |
05:01.40 | Lulia | YOU DIDNT |
05:01.42 | Shadowed | You are OBJECTIVELY wrong because you are OVERCOMPLICATING THIS |
05:01.46 | Lulia | I'm not |
05:01.48 | Lulia | You are |
05:01.54 | Lulia | But maintaining that I should manually create a button |
05:01.57 | Shefki | Just create the button, don't set the size and don't set point it. |
05:01.59 | Lulia | When I have a function that already does it |
05:01.59 | Shefki | Problem solved. |
05:02.10 | Lulia | That is more work than referencing a function that already exists, Shefki |
05:02.11 | Shadowed | Fine, keep doing it your way. It's wrong and awful code |
05:02.15 | Lulia | Clearly |
05:02.15 | Shadowed | but it's your right to write awful code |
05:02.19 | Lulia | lol |
05:02.26 | Lulia | You cannot objectively name why it's awful |
05:02.27 | Shadowed | Obviously, the people who have been doing this for years know nothing |
05:02.29 | Shefki | How is it more work to create a button and not size and position it? |
05:02.42 | Lulia | Because it means manually typing out the information to create the button |
05:02.43 | Shefki | Creating a button is one line. |
05:02.47 | Lulia | When I already have a function for it |
05:02.50 | Shadowed | ... |
05:02.58 | Torhal | Shefki: Because there's already a function to create buttons! (That also does a bunch of other un-fucking-necessary shit to said button) |
05:03.04 | Shadowed | And this my friends |
05:03.08 | Shadowed | is why most people write awful code |
05:03.12 | Torhal | :D |
05:03.17 | Lulia | It's not awful |
05:03.20 | Shadowed | "Well, I already do it this way, it might be bad and I could spend 5 seconds fixing it, but it's ok" |
05:03.21 | Lulia | You can't objectively say that |
05:03.25 | Shadowed | yes I |
05:03.28 | Shadowed | I can |
05:03.29 | Shadowed | and I just did |
05:03.29 | Lulia | No, you cant |
05:03.30 | Shadowed | about 5 times |
05:03.33 | Lulia | And you havent |
05:03.36 | Lulia | You refuse to |
05:03.37 | doom0r | i only write awful code because i don't know anything about programming |
05:03.38 | Shadowed | You're argument is basically "LALALALA IM NOT LISTENING LALALALAL" |
05:03.42 | Lulia | You insist that it's bad because you said it's bat. |
05:03.46 | Torhal | I'm objectively saying that you like to argue. The FPS conversation was my first clue. |
05:03.48 | Lulia | bad* |
05:03.52 | Lulia | That doesn't make it bad |
05:03.53 | Shadowed | Torhal I'm bored too so |
05:03.59 | Shefki | Lulia: It takes 2 lines to call your function and then position off screen. |
05:04.00 | Shadowed | Actually, I specifically told you why it's bad about 5 times |
05:04.04 | Shefki | It takes one line to create the button. |
05:04.05 | Rokiyo | damn, this blew up fast |
05:04.09 | Shefki | So your method takes more work. |
05:04.17 | Shadowed | You are overcomplicating it, overcomplicating is an *objective* argument for why code is bad |
05:04.26 | Shadowed | maybe not in your magical world |
05:04.26 | Lulia | No, my method was simple |
05:04.30 | Shadowed | :< |
05:04.34 | Lulia | I called the function I always use |
05:04.37 | Lulia | And positioned it off screen |
05:04.38 | Shadowed | You are the posterchild for why code is bad |
05:04.39 | Torhal | The fucking sky is chartreuse, ok? |
05:04.48 | Lulia | I don't care about the sky |
05:04.56 | Lulia | If my method is somehow slowing down the game |
05:04.57 | Torhal | Why not? Objectively... |
05:04.58 | Lulia | Then I'd change it |
05:05.02 | Shadowed | Pretty sure |
05:05.02 | Torhal | cackles. |
05:05.10 | Lulia | But I see why I should change it when it doesn't make any impact |
05:05.10 | Shadowed | If you use rationals like that to avoid cleaning up your code and making it proper and simple |
05:05.14 | Lulia | Ot |
05:05.15 | Shadowed | you have a lot of things that are inefficient |
05:05.15 | Lulia | s mpt nad |
05:05.21 | Lulia | It's not bad* |
05:05.52 | doom0r | feels bad for purl |
05:06.03 | Lulia | It's just now how you would do it, that doesn't make it bad. That's the wonderful thing about programming, you can accomplish the same thing many different ways. |
05:06.10 | Shefki | You really don't need to wrap the CreateFrame function and reuse it even when you don't need it. |
05:06.12 | Rokiyo | Lulia, when they're talking about "more work" they're not talking about the author, they're talking about the addon itself. Doing and undoing something might be less work for you, but it's more work your addon is asking the game client to do. |
05:06.13 | Shadowed | and most of those are wrong |
05:06.23 | Shadowed | unless it's perl |
05:06.29 | Shadowed | In which case, they are all right but nobody understands them |
05:06.36 | Lulia | sighs. |
05:06.47 | Lulia | My intent was never to argue, and I apologize for blowing up at you. |
05:07.05 | Shadowed | clearly |
05:07.25 | Lulia | Well if you don't want to accept my apology, that's your perogative. |
05:07.38 | Rokiyo | that did get out of hand, but I don't think you were unprovoked |
05:08.12 | Torhal | pulls a knife on Fisker. |
05:08.38 | *** join/#wowace ShadniX (shadow1st@b045.apm.etc.tu-bs.de) |
05:08.46 | doom0r | takes Groktar out of Fisker's lap for his own safety |
05:09.50 | Rokiyo | you asked a valid question and the first couple of responses you got were "cos we know better" |
05:09.50 | Lulia | I did what I had to do to make it work. Could I have done it differently? Sure. But I don't see a reason to unless it means an increase in performance. |
05:09.50 | Rokiyo | by the time the real answers came out, the explosions had already started :s |
05:09.50 | Lulia | Well, something that really irks me |
05:09.50 | Lulia | Is that when I ask whether or not one way is better |
05:09.50 | Lulia | No one says a thing |
05:09.54 | Lulia | Then I say I do something one way and suddenly I'm being told my code is "awful" |
05:10.18 | Rokiyo | forget the comments on awfulness, those were made in anger |
05:10.26 | Rokiyo | people say things harshly when they're angry :P |
05:10.34 | Lulia | No, I'm certain he earnestly believes them. |
05:10.34 | Shadowed | Uhh, your code is awful, sorry |
05:10.38 | Lulia | He won't even accept my apology. |
05:10.42 | Shefki | Lulia: Shadowed is prone to calling things evil, awwful etc... |
05:10.53 | *** join/#wowace SunTsu (~miyamoto@cl-1212.ham-01.de.sixxs.net) |
05:10.53 | *** join/#wowace SunTsu (~miyamoto@unaffiliated/suntsu) |
05:11.00 | Lulia | I'm not going to deal with it. I apologized, that's all I'll do. |
05:11.01 | Rokiyo | shadowed, have you even seen any of her work? |
05:11.04 | Lulia | He |
05:11.11 | Shadowed | I'm not saying that out of an emotional reason, if your reasoning for not fixing up code is "well I did it already, so no sense in going back and cleaning it up" you probably make that comprise on a lot more things |
05:11.18 | Lulia | I've been doing this for two weeks, and not spending all of my time at it either |
05:11.24 | steev_ | could be worse |
05:11.27 | steev_ | they could be Fisker |
05:11.28 | Lulia | I'm quite certain my code is "awful" to someone who has experience. |
05:11.45 | Lulia | No, I fix things that mean an increase in performance |
05:11.50 | Lulia | Or that make my code easier to manage |
05:12.01 | Shadowed | Programming is basically a giant slippery slope |
05:12.07 | Rokiyo | wow... that's got to be the most scientific and thorough evaluation of someone's entire collection of work I've ever seen, ever. |
05:12.07 | Shadowed | It's easy to say, I'll fix this up later, or I'll only fix it up if X |
05:12.16 | Lulia | Of course it is |
05:12.25 | Lulia | But I ask myself whether or not there's a benefit to fixing it |
05:12.27 | Shadowed | eventually you end up with something thats unwielding and you basically have to rewrite it or redo large portions |
05:12.30 | Lulia | If the answer is yes, then I'll fix it. |
05:12.36 | Torhal | I'm constantly re-factoring as I code. |
05:12.51 | Shadowed | you literally spent more time arguing that your code was right and you didn't want to change it unless you had to, then you would have spent removing a few lines to make it simple |
05:13.05 | Lulia | But I didn't have to have the argument either |
05:13.07 | Lulia | It works as is |
05:13.11 | Lulia | And it wont cause issues later. |
05:13.23 | Rokiyo | shadowed, the goal isn't always just to get stuff done... sometimes we want to learn why we do what we do as well |
05:13.41 | Shadowed | wat |
05:13.53 | Shadowed | That literally makes no sense :p |
05:13.54 | Lulia | In the actual AddOn I'm working on, I've changed a number of things to make it easier to manage |
05:13.58 | Lulia | Or to make it perform better |
05:14.07 | Shadowed | I think you meant, you want to learn how to do something rather than making it work |
05:14.18 | Shadowed | in which case, that doesn't apply here since info on how it's supposed to be done was given and ignored |
05:14.26 | Rokiyo | i'm saying sometimes we want both |
05:14.34 | Rokiyo | we want it to work, and we want to know why it worked |
05:14.44 | Torhal | Lulia: One thing you could do is not define everything as a member of your AddOn table/frame. You're performing a table lookup every time you access the member. |
05:15.12 | Shadowed | That's irrelevant to this Rokiyo |
05:15.35 | Torhal | MyAddOnTable.Main:SetScript() <-- two table lookups, the second to find the SetScript member function. |
05:15.41 | Rokiyo | you came into the conversation late shadowed, wanting to understand was where all this began |
05:15.53 | Lulia | I admit that I'm still learning what needs to be global and what doesn't. |
05:16.11 | Lulia | I'm new to this. But that doesn't mean I can be fed info and I'll placidly accept it as the truth. |
05:16.16 | Torhal | Not even global. File-local. |
05:16.22 | Rokiyo | lulia was told to not set dimensions first, and asked why, and didn't get very descriptive answer |
05:16.38 | Rokiyo | about 5mins later you rocked up with your lolawful comments |
05:16.41 | Torhal | I wasn't descriptive? |
05:16.51 | Shadowed | I'm pretty sure you're wrong |
05:16.51 | Torhal | Bah. |
05:16.54 | Shadowed | but let me scroll up and double chekc |
05:17.01 | Lulia | I eventually got one, but, the point is that it doesn't make my code any worse. It doesn't make a significant difference in performance. I could go back and change it, but I don't need to. It's information going forward. |
05:17.22 | Lulia | It doesnt make the code more difficult to manage either |
05:17.34 | Torhal | My philosophy is if something can be done better, I do it better. To hell with "it works!" |
05:17.48 | Torhal | But that's me :) |
05:17.51 | Lulia | But my point is that it's not objectively better to me |
05:17.54 | Lulia | It's just different |
05:18.01 | Lulia | It's literally the difference of one line of code |
05:18.03 | Shadowed | I blame Torhal for that more but, I only said if you are throwing something offscreen you're probably doing it wrong, I only said it was bad etc after he ignored it |
05:18.07 | Torhal | goes back to watching Stargate Universe. |
05:18.13 | Shefki | Can we just stop this stupid conversation? |
05:18.15 | Lulia | And it takes more work to delete the two lines of code and make one than to just leave the two. |
05:18.42 | Lulia | Which is, really, the only reason I was given for why it was better, in the end. |
05:18.59 | Lulia | Since it doesn't make the code more difficult to manage or impact performance in a noticeable way |
05:20.24 | ccKep | whats up? big party here? :o |
05:20.32 | Lulia | apparently |
05:20.46 | Lulia | There, I changed it |
05:20.56 | Lulia | Are people happy now? |
05:21.12 | Rokiyo | people have lost interest :P |
05:22.53 | Lulia | sighs. |
05:23.08 | Lulia | My goal was not to be defensive on here. I failed that miserably. |
05:23.34 | ccKep | I guess its not worth reading the last hour of this party? ^.^ |
05:23.39 | Lulia | no |
05:23.48 | Torhal | ccKep: Many were slaughtered. |
05:23.55 | ccKep | woooah |
05:24.52 | Lulia | http://paste.wowace.com/2787/ |
05:24.55 | Lulia | 30 lines of code |
05:25.09 | Lulia | oh, whoops |
05:25.11 | ccKep | just for the record, so I'm on track with this... all this is due to an addon that enables scrolling through the editbox with arrows / mousewheel, am I right? |
05:25.22 | Lulia | I still left references to the no longer existing global table |
05:25.27 | ccKep | or did this topic change some hours ago without me noticing |
05:25.45 | Shadowed | You need to unregister ADDON_LOADED when your addon loads |
05:25.49 | Lulia | All of this was due to whether or not I should move a button off screen or not set its values |
05:25.55 | Shadowed | or else you're duplicating two functions every single time an addon loads |
05:26.01 | Lulia | Oh... |
05:26.24 | Shadowed | You don't need that wrapper function around ClearOverrideBindings either |
05:28.16 | Lulia | I get a usage error for Main:SetScript("OnEditFocusLost", ClearOverrideBindings(self)); |
05:28.28 | Shadowed | Remove (self) |
05:28.30 | Shadowed | it's not needed |
05:28.41 | Shadowed | Your wrapper function is the equivalent to just passing ClearOverrideBindings |
05:28.41 | Lulia | Self is implicitly passed? |
05:28.44 | Shadowed | yes |
05:28.45 | Torhal | It's implicitly passed |
05:28.55 | Shadowed | function(self) ClearOverrideBindings(self) end is the same as ClearOverrideBindings |
05:29.00 | Lulia | good to know |
05:29.15 | Shadowed | It's not exactly implicitly passed, you're writing the same code |
05:29.39 | Lulia | Well, there we go. It works the same, less code. |
05:29.52 | Lulia | http://paste.wowace.com/2787/ |
05:30.11 | Lulia | Of course, it still has the issues of requiring you to tap the left and right arrow keys instead of being able to hold them down |
05:30.22 | Lulia | But you can use the scroll wheel for seamless cursor movement |
05:32.27 | doom0r | curses getAll throttling workaround crap |
05:33.06 | Lulia | I wonder if I can make my Addon apply to all chat frames. |
05:33.17 | *** join/#wowace Silowyi (~silowyi_d@99-5-223-222.lightspeed.snantx.sbcglobal.net) |
05:33.21 | Torhal | Yes. |
05:33.28 | doom0r | quite easily |
05:33.42 | Lulia | Well, they all have separate names though, no? |
05:33.51 | ccKep | wrap it in a function that takes the chatframe as an argument and loop through them |
05:34.06 | *** join/#wowace wolftankk (~wolftankk@116.228.136.107) |
05:34.16 | Torhal | for index = 1, _G.NUM_CHAT_WINDOWS do local chat_frame = _G["ChatFrame"..index] -- Etcetera end |
05:34.43 | Shefki | No do it like this: |
05:34.50 | Shefki | ChatFrame1:Something |
05:34.53 | Shefki | ChatFrame2:Something |
05:34.54 | Shefki | ... |
05:34.58 | Shefki | I want to see Shadowed rage. |
05:34.59 | Lulia | >.> |
05:35.04 | Repo | 10gridstatussanity: 03Greltok * r20 / (2 files in 1 directory): |
05:35.05 | Repo | Name module according to standard, so that its name in debugging options is more appropriate. |
05:35.06 | Repo | This may cause some settings for this module to reset. |
05:35.07 | doom0r | ;x |
05:35.07 | *** join/#wowace Silowyi (~silowyi_d@99-5-223-222.lightspeed.snantx.sbcglobal.net) |
05:35.08 | Torhal | Haha |
05:35.17 | Lulia | I need to learn more about the global variable |
05:35.33 | Repo | 10gridstatusrole: 03Greltok * r39 / (2 files in 1 directory): |
05:35.34 | Repo | Name module according to standard, so that its name in debugging options is more appropriate. |
05:35.35 | Repo | This may cause some settings for this module to reset. |
05:35.38 | Torhal | Lulia: You mean the global environment? |
05:35.40 | doom0r | sanitizing a sanitizing modules name |
05:35.45 | Lulia | _G |
05:35.57 | Torhal | Lulia: It's just another table, really. |
05:36.07 | Lulia | Well, I know that much |
05:36.11 | Lulia | But not what it holds |
05:36.14 | Lulia | That I can use |
05:36.45 | doom0r | http://www.lua.org/pil/14.html |
05:36.45 | Torhal | You could always iterate it and print it out...but there's a lot to wade through if you do and a chatframe isn't gonna suffice. |
05:37.54 | Lulia | I'm sort of tempted to make a debugging chat frame |
05:38.06 | *** join/#wowace bien| (~bien@p4FF459AF.dip.t-dialin.net) |
05:38.20 | Repo | 10gridstatussanity: 03Greltok 041.1.1 * r21 : Tagging as 1.1.1 |
05:38.23 | Torhal | Lulia: http://www.wowinterface.com/downloads/info10426-tekDebug.html |
05:38.45 | Repo | 10gridstatusrole: 03Greltok 041.3.1 * r40 : Tagging as 1.3.1 |
05:39.13 | doom0r | why does tekdebug have a weird variation in the panel at the bottom right? |
05:39.33 | doom0r | it's like certain tiles have a background showing |
05:39.41 | Torhal | Because of how the texture API was changed in 3.3.0 (I believe) |
05:39.49 | Torhal | Statusbars were all borked because of it too |
05:40.01 | Lulia | Torhal, for: for index = 1, _G.NUM_CHAT_WINDOWS do local chat_frame = _G["ChatFrame"..index] |
05:40.13 | Lulia | I found the name is actually: ChatFrame<number>EditBox |
05:40.21 | Lulia | So I should be adding EditBox to it too, no? |
05:40.34 | Torhal | So change that to _G["ChatFrame"..index.."EditBox"] |
05:40.55 | Rokiyo | ooh... _G is shiny... does each addon get its own _G table? or is every global declared by every addon (and/or blizz's stuff too) all dumped into that one huge table? |
05:41.04 | Torhal | _G is global. Period. |
05:41.19 | Torhal | For an AddOn-wide table, use what Blizzard added a few patches back: |
05:41.29 | Torhal | local addon_name, addon_table = ... |
05:41.35 | Repo | 10character-notes: 03talryn1 * r47 CharacterNotes.lua: Added options to lock and remember the main window pos. |
05:41.35 | Torhal | At the top of the file |
05:41.55 | Rokiyo | is there any benefit to doing that? |
05:42.09 | Torhal | Then you can split your AddOn into multiple files, and use the addon_table as a non-taintable "global" environment |
05:42.20 | Rokiyo | ohh, cool |
05:42.57 | Torhal | Whereas making a table, throwing it in _G, and adding members to it opens it up for other AddOns to modify. |
05:43.24 | doom0r | or one more thing for them to have to parse through |
05:43.25 | *** part/#wowace Stalls (~takai@66.49.162.105) |
05:43.31 | Shefki | Which may be what you want. |
05:43.48 | Torhal | Aye, you can't very well have an API if everything is locked up |
05:44.38 | Lulia | Odd, there's no event for a chat frame being created. |
05:45.30 | Shefki | securehook the OnLoad function. |
05:45.55 | Lulia | Who are you talking to, Shefki? |
05:46.01 | Shefki | You. |
05:46.12 | Lulia | I dont know anything about hooks yet |
05:46.17 | Lulia | Where can I read? |
05:46.20 | doom0r | would be nice if blizzard would make getAll scans cache and provide an api to lookup from there |
05:46.48 | Shefki | google for hooksecurefunc |
05:49.56 | Lulia | But how does the hook know to fire for a new chat window being created? |
05:50.30 | Torhal | Lulia: When the ChatFrame's OnLoad is fired, the hook fires as well. |
05:51.04 | Torhal | Lulia: http://us.blizzard.com/support/article.xml?locale=en_US&articleId=21466 |
05:51.15 | Torhal | You can get the default UI code there. |
05:51.22 | Lulia | I have it |
05:51.25 | Torhal | Ok |
05:52.09 | Lulia | I just dont see how I can call an OnLoad for a chat frame that may never exist. |
05:52.21 | Rokiyo | it's the other way around |
05:52.47 | Rokiyo | when a new chat frame is created, OnLoad is called on it |
05:52.48 | Lulia | ? |
05:52.53 | Rokiyo | not by you, by the game or whatever :P |
05:53.05 | Lulia | Well, right |
05:53.07 | Lulia | I meant... |
05:53.15 | Rokiyo | by hooking into that function, you're having your function called when that OnLoad function fires off |
05:53.31 | Lulia | It fires when any OnLoad happens? |
05:53.46 | Lulia | I'm not even using OnLoad right now, I'll have to think about how I would use that for a moment |
05:53.48 | Repo | 10alts: 03talryn1 * r11 / (11 files in 2 directories): |
05:54.01 | Rokiyo | dunno, someone else would have to answer that :P |
05:54.08 | Repo | Moved to wowace localization. Added options to lock and remember the main window position. |
05:54.18 | Lulia | Well, going to see if I can figure this out |
05:54.40 | Rokiyo | but my initial dabbling has given me the impression that hooking a func is much like registering for an event, you're in a funny way treating that func as the event |
05:55.08 | Lulia | Well, right now I don't even have a coneptualization of how I would make a function that uses OnLoad to snag a chat frame |
05:55.21 | Lulia | I'm just grabbing all the chat frames that should exist when my addon loads |
05:55.34 | Lulia | Because they already exist and referencing them is easy |
05:56.06 | Lulia | It might be that I'm tired |
05:56.07 | Lulia | :-/ |
05:56.27 | Torhal | Lulia: hooksecurefunc("ChatFrame_OnLoad", MyChatFrameHookFunction) |
05:56.59 | Torhal | That fires MyChatFrameHookFunction immediately after ChatFrame_OnLoad is called |
05:57.46 | ccKep | ChatFrame_OnLoad doesnt seem to get called when I create a new chat frame though ^.^ |
05:58.33 | Torhal | Another possibility for what you're doing is ChatEdit_OnLoad |
05:59.01 | Shefki | It was a guess that they made them as needed. If they make them all in advance that won't work. |
05:59.13 | Shefki | But then you won't care when a new frame gets made because you can already do whatever you need. |
05:59.25 | Torhal | I think it will only work for custom channels or the whisper chatframes |
05:59.34 | Torhal | That's why I suggested the iteration |
05:59.43 | Torhal | NUM_CHAT_FRAMES is hard-coded at 7 |
05:59.48 | Torhal | So I assume they all exist |
06:00.36 | Rokiyo | wow, you can only have 7 chat tabs? huh... i never tried to make more than 5 or so, so i never bumped into that limit |
06:00.56 | Torhal | Oh, wait - they upped it to 10 |
06:01.06 | Torhal | When they added the IM-style chatframes |
06:01.21 | Rokiyo | do they count against the limit? |
06:01.22 | Lulia | I didnt know there was a limit |
06:01.45 | Torhal | NUM_CHAT_WINDOWS = 10; |
06:01.49 | Lulia | But if they don't exist until they're made, then I think what I'm doing currently is actually erroneous |
06:01.54 | Rokiyo | not that it matters i guess... WIM ftw |
06:01.55 | Lulia | And will return nil errors |
06:01.58 | Torhal | in ChatFrame.lua |
06:02.00 | *** join/#wowace mitchnull (~opera@catv3EC944A1.pool.t-online.hu) |
06:02.17 | Torhal | Lulia: The normal ChatFrames all pre-exist |
06:02.32 | Repo | 10pitbull4: 03Shefki 07master * v4.0.0-beta17-2-gbd9467a Modules/Aura/Update.lua: [+1 commit] Workaround for the problem with Aura Cooldown spinners flashing. |
06:02.37 | Torhal | 1-10, then from there I think you could hook the ChatFrame_OnLoad |
06:02.53 | Torhal | But that would only matter for custom channels and the new whisper chatframes |
06:02.59 | Lulia | That's code I definitely havent learned yet. |
06:03.10 | Lulia | All of which would ideally be affected. |
06:03.12 | *** join/#wowace Olison (olison@fukdruidsgrr.org) |
06:04.18 | ccKep | "Create new Window" gets greyed out when you have 10 chat frames @ Torhal |
06:04.25 | Lulia | Hmm, so that's a function that you can only find in FrameXML |
06:05.50 | Torhal | ccKep: Yes, but when you create a custom channel or allow whispers to make their own frame, a new ChatFrame is made |
06:05.55 | Torhal | Lulia: Yes. |
06:06.12 | ccKep | Torhal: are you sure those aren't limited to 10 at once too? |
06:06.43 | Torhal | I have 6 chat tabs. Someone made a RealID conversation with me last night and the tab name was ChatTab11 |
06:06.44 | Lulia | testing rightn ow |
06:07.11 | Torhal | So they start at 11 regardless, since the previous 10 are pre-defined |
06:07.28 | Lulia | yup |
06:07.36 | Lulia | You can have it greyed out and still make whisper windows |
06:07.42 | ccKep | I just had 10 chat windows, whispered myself and a new chat window did not pop up |
06:07.52 | ccKep | after I deleted a frame, then a new one popped |
06:08.00 | Torhal | Black magic. |
06:08.33 | Lulia | I just made 10 and got it greyed out |
06:08.35 | Lulia | whispered someone |
06:08.42 | Lulia | And right+clicked "move to whisper window" |
06:10.21 | Lulia | I think I'm overthinking it, but... if I use ChatFrame_OnLoad for all of them, won't I miss the frames that load before my AddOn does? |
06:10.25 | ccKep | whatever the case, looping through ChatFrame_EditBox _and_ hooking ChatEdit_OnLoad 's the way to go for your project methinks |
06:10.44 | Torhal | Lulia: What ccKep said |
06:11.00 | Torhal | Use the iteration for the pre-defined ones, hook ChatFrame_OnLoad for the others |
06:11.01 | ccKep | looping through those that get created before your addon loads, hooking for those after |
06:11.20 | Shefki | Night guys. |
06:11.23 | ccKep | nn |
06:12.09 | Lulia | Alright, hmm |
06:12.09 | *** part/#wowace mitchnull (~opera@catv3EC944A1.pool.t-online.hu) |
06:13.38 | ccKep | though I think ChatEdit_OnLoad should suffice instead of ChatFrame_OnLoad |
06:13.58 | Lulia | Is there a reason I would use one over the other? |
06:13.59 | Lulia | O.o |
06:14.35 | Lulia | Hmm |
06:14.45 | Lulia | I can use #(table) to see how many values it has? |
06:14.55 | ccKep | ChatFrame_OnLoad might get called before the editbox is created |
06:15.05 | Lulia | Ah, true |
06:15.13 | ccKep | though I didnt check on that |
06:15.25 | ccKep | but since you only care about the editboxes it seems natural to use ChatEdit_OnLoad :D |
06:15.31 | Lulia | It's a safe assumption and if it's not true it won't likely be worse. |
06:19.14 | Lulia | Yay, errors |
06:20.15 | Lulia | Just one time I would like to create some sort of code and run it and have no errors |
06:20.16 | Lulia | ;) |
06:21.40 | Mirrormn | I've done that, it's not as good as you'd think |
06:22.01 | Mirrormn | cause then you're just like "I know that code can't be entirely correct, but now I don't know what's wrong" |
06:23.16 | Lulia | :P |
06:27.35 | Lulia | omg, it might be working |
06:30.45 | Mirrormn | no chance |
06:34.08 | Lulia | Hmm |
06:34.14 | Lulia | Working on regular chat windows |
06:34.22 | Lulia | But not working on whisper windows |
06:34.54 | ccKep | <PROTECTED> |
06:35.36 | *** join/#wowace MoonWitch|Mobile (~Kelly@d54C547BE.access.telenet.be) |
06:35.42 | ccKep | there are FloatingChatFrames too I think |
06:36.11 | ccKep | dont know if they call ChatEdit_OnLoad or have their own code |
06:36.13 | Lulia | That's what I'm testing |
06:36.16 | Lulia | A floating whisper window |
06:36.36 | Lulia | It's ChatFrame11EditBox |
06:36.42 | Lulia | I think my hook function must be failing |
06:37.01 | Lulia | local function hook_ChatEdit_OnLoad() InitEdit(Chat[#(Chat)], #(Chat)); end hooksecurefunc("ChatEdit_OnLoad", hook_ChatEdit_OnLoad); |
06:38.04 | ccKep | you could just pass "self" and use that :o |
06:38.18 | Lulia | I didnt know hook had access to self |
06:38.25 | ccKep | nah |
06:38.40 | ccKep | ChatEdit_OnLoad has 1 parameter, the editbox frame that calls it |
06:38.49 | Rokiyo | ccKep: is that the same info that shows up in a /framestack? |
06:38.56 | Torhal | Rokiyo: It is |
06:39.02 | Rokiyo | cool |
06:39.07 | ccKep | so function ChatEdit_OnLoad(self) -> self = the editbox that just loaded |
06:39.18 | Torhal | Rokiyo: That's just what we used before /framestack was built-in |
06:39.31 | ccKep | but I dont know if hooksecurefunc is a pre-hook or post-hook :o |
06:39.38 | Torhal | Pre |
06:39.44 | Torhal | Your code fires after |
06:40.07 | ccKep | isnt that a post-hook then? *shrugs* |
06:40.09 | Rokiyo | is it worth naming all your frames so that they show up as something other than table in the framestack? or is that a "only do it if you really need it" sort of thing? |
06:40.13 | *** join/#wowace Networkerror (~evonder@unaffiliated/evonder) |
06:40.17 | Torhal | ccKep: Damn it, it is. |
06:40.21 | Torhal | You're right |
06:40.23 | Torhal | Heh |
06:40.33 | Lulia | so... |
06:40.40 | Torhal | Rokiyo: Only put your stuff in _G when you haev to |
06:40.44 | Torhal | have* |
06:40.54 | Lulia | local function hook_ChatEdit_OnLoad(self) InitEdit(self, #(Chat)); end hooksecurefunc("ChatEdit_OnLoad", hook_ChatEdit_OnLoad); |
06:41.24 | Torhal | WHat is #(Chat)? |
06:41.25 | ccKep | depends on what InitEdit does exactly :d |
06:41.41 | ccKep | lemme reply to your pastey from earlier |
06:41.48 | Lulia | It's supposed to be a lua convention which gets the number of members in Chat |
06:41.56 | Lulia | Well |
06:41.59 | Lulia | I changed it all |
06:41.59 | Torhal | I know that, what IS Chat |
06:42.02 | Lulia | I'll make a new pastey |
06:42.23 | Torhal | As in, when are you inserting things to it and what are you inserting? |
06:42.29 | Torhal | Also: #Chat is fine |
06:42.44 | Lulia | The example used (), so I just kept to that, good to know |
06:42.45 | Torhal | Parens are superflous in most cases, unless you absolutely have to disambiguate |
06:42.49 | Lulia | http://paste.wowace.com/2788/ |
06:42.52 | Rokiyo | Torhal: Are you referring to the strings that represent the frame names? |
06:43.14 | Torhal | And semicolons are unnecessary as well, they exist mostly for C/C++ folks (which I am) |
06:43.16 | Rokiyo | i'm struggling to understand the relationship between framestack and _G :P |
06:43.44 | Torhal | Rokiyo: CreateFrame("Frame", "MyFrameName", UIParent) does this: |
06:43.45 | ccKep | do you really need multiple MoveCursor Frames in there? (didnt read all through it yet) |
06:44.00 | Torhal | _G["MyFrameName"] = frame-you-jkust-created |
06:44.08 | Lulia | I come from C/C++ |
06:44.11 | Lulia | Which is why I do it |
06:44.15 | Torhal | So you're putting another entry in _G when you name them |
06:44.19 | Lulia | I feel like I'm doing something wrong if I dont semi-colon |
06:44.20 | Mirrormn | I feel lost and confused without semicolons |
06:44.22 | Lulia | It's just a habit |
06:44.26 | Rokiyo | ah right |
06:44.30 | Mirrormn | makes the code look naked |
06:44.32 | Torhal | Lulia: I come from C/C++ and I quickly dropped the semicolons and all unnecessary parens |
06:44.39 | Lulia | ccKep, I thought about that too |
06:44.43 | Lulia | I shouldnt needi t |
06:44.45 | Torhal | If you think of it as almost-natural-language, it makes sense |
06:44.48 | Rokiyo | thanks |
06:44.49 | Lulia | But I couldn't think of a way to not do it |
06:44.59 | Mirrormn | I hate almost-natural-language! |
06:44.59 | Lulia | Because itn eeds to act on the frame's info |
06:45.03 | ccKep | well,lets keep it as it is for now.. can still optimize it later |
06:45.04 | Lulia | And self would refer to the button |
06:45.09 | ccKep | so, focusing on the hook |
06:45.55 | ccKep | on another note: I'd remove the i as argument and just use local i = Chat:GetName() |
06:46.01 | Rokiyo | it's amusing that you compare it to looking naked mirrorm... because I feel very liberated about not having to use semicolons |
06:46.11 | Rokiyo | it felt like I was wearing too many clothes before :P |
06:46.18 | Mirrormn | -.- |
06:46.21 | Lulia | Well |
06:46.34 | Lulia | The only reason i is an argument is the multiple buttons, if we can get rid of that |
06:46.37 | ccKep | but that should work imho |
06:46.37 | Lulia | It's not needed at all |
06:46.39 | ccKep | as it is |
06:46.44 | Lulia | It's not |
06:46.47 | Lulia | I just tested it |
06:46.50 | Rokiyo | well, i feel far more liberated with the dynamic typing of anything into anything |
06:46.50 | ccKep | you get rid of it if you do local i = Chat:GetName() |
06:46.53 | Lulia | I got max frames, made a whisper window |
06:46.57 | Rokiyo | but it's all part of the package |
06:46.59 | Rokiyo | hurr hurr |
06:47.01 | Lulia | And neither the scroll nor the arrow keys moved the cursor |
06:47.02 | ccKep | your frames are called "MoveCursorChatFrame1EditBox" etc. |
06:47.03 | Torhal | Rokiyo: It can get hairy sometimes. |
06:47.13 | Rokiyo | ^.^ |
06:47.21 | ccKep | by doing that, and you remove the arg :D |
06:47.40 | *** join/#wowace mangeg (~sfg@c83-255-144-210.bredband.comhem.se) |
06:47.41 | Lulia | local MoveCursor = CreateFrame("Button", "MoveCursor"..Chat:GetName(), UIParent); |
06:48.09 | Lulia | Alright, so there's that |
06:48.12 | ccKep | nah |
06:48.16 | ccKep | wait |
06:48.19 | ccKep | I'll reply @ pastey |
06:48.26 | *** join/#wowace profalbert (~profalber@dns2.wedl.at) |
06:48.44 | Torhal | Lulia: If you're not planning on accessing your buttons from another AddOn, naming them is unnecessary and just adds new entries to _G |
06:49.07 | Torhal | Well |
06:49.17 | Torhal | That's not the only case |
06:49.32 | Rokiyo | here's a random question: Why do I need to explicitly pass self into my local functions? Why can't they access self directly like my global functions can? |
06:49.34 | Lulia | I have to name it for the SetOverrideBindingsClick |
06:49.35 | Torhal | You could want to access them programmatically, but you could also do that with a local table |
06:49.38 | Torhal | Ah |
06:49.39 | Torhal | Ok |
06:49.48 | ccKep | so, your script does work for the pre-created ones, but not for the ones created after addon load? |
06:49.54 | ccKep | (reply with what I meant is out) |
06:49.56 | Lulia | Correct |
06:50.18 | Lulia | How do I see the reply? |
06:50.31 | *** join/#wowace Kivnel (~Kivnel@aux.jmctech.com.au) |
06:50.38 | profalbert | Rokiyo: where should they get it from then? |
06:50.43 | ccKep | http://paste.wowace.com/2789/ |
06:51.02 | Mirrormn | Rokiyo: the passing of the "self" variable is not any kind of magical language construct |
06:51.15 | Mirrormn | it's just generally "hidden" by the semi-colon syntax |
06:51.41 | Talryn | Yes, the calls such as self:MyFunc will automatically pass self as the first parameter |
06:51.49 | Lulia | ccKep: Is there a reason to make it a local rather than just use the function directly? |
06:51.54 | Mirrormn | "function Addon:Function()" is simply a shorthand way of writing "function Addon.Function(self)" |
06:51.56 | Talryn | calling self.MyFunc doesn't |
06:52.04 | Torhal | object:function() is the same as object.function(object), but object is aliased as "self" |
06:52.22 | Mirrormn | er, yeah |
06:52.27 | Mirrormn | Torhal explained it better |
06:52.36 | Talryn | Lua isn't really OO so it's confusing. :-) |
06:52.38 | Rokiyo | oh... so.... so when i'm defining a local function and calling it with with no prefixes at all, I'm not doing the semi-colon thing |
06:52.47 | Mirrormn | yes |
06:52.50 | Repo | 10castyeller2: 03Adirelle * r102 Defaults.lua: Removed some spells that don't exist anymore. |
06:52.59 | Rokiyo | yeah i'm come from java-land, so this is all a bit out there for me :P |
06:53.07 | Rokiyo | s/i'm/i/ |
06:53.18 | profalbert | java-coding-styles cannot be applied to lua that easily |
06:53.27 | Mirrormn | it's more like "function Addon:Function()" is a shorthand way of writing "function Addon.Function() local self = Addon" |
06:53.34 | Rokiyo | i'm learning that the hard way :P |
06:53.48 | ccKep | Lulia: no, thats why I said "on another note" ;) |
06:53.54 | Talryn | Yes, the first thing to learn is don't try to make Lua be OO like Java, etc. |
06:54.02 | ccKep | I'm still looking at your code |
06:54.09 | Lulia | :P |
06:54.10 | ccKep | but I don't have that much experience with hooksecurefunc |
06:54.16 | Talryn | http://lua-users.org/wiki/ObjectOrientationTutorial |
06:54.19 | Lulia | Me neither ;) |
06:54.24 | Rokiyo | my brain naturally works in OO, it's hard not to code in it |
06:54.24 | Lulia | I'm learning it right now |
06:54.24 | Mirrormn | or http://www.lua.org/pil/16.html |
06:54.44 | Torhal | hooksecurefunc("FunctionToHook", function_to_run_after) |
06:54.45 | Mirrormn | you can actually emulate a lot of OO concepts in lua |
06:55.06 | Mirrormn | but why would you want to =/ |
06:55.13 | Lulia | There's also the issue of having to hit the arrow key every time too |
06:55.23 | Torhal | Lulia: OnUpdate :P |
06:55.27 | Lulia | >.> |
06:55.32 | Repo | 10alts: 03talryn1 * r12 Alts.lua: Making all frames movable. |
06:55.35 | Lulia | But I don't even know how that would work! |
06:56.02 | Torhal | local key_is_down = false |
06:56.11 | Torhal | OnKeyDown set it to true |
06:56.15 | Rokiyo | it's not so much that I want to, it's more than I've been indoctrinated into java's "hey let's go off and build an abstract model of our concrete model and fill it with boilerplate!" |
06:56.17 | Torhal | In the OnUpdate, check for it |
06:56.18 | Rokiyo | i'm trying to break free |
06:56.20 | Rokiyo | :P |
06:56.21 | ccKep | onkeydown -> set a variable indicating key is pressed, onkeyup -> unset variable |
06:56.24 | Torhal | In the OnKeyUp, set it to false |
06:56.26 | ccKep | onupdate -> if variable is set -> scrolloooo |
06:57.00 | Lulia | I just had deja vu |
06:57.02 | Lulia | creepy |
06:57.08 | Lulia | In any case |
06:57.16 | Lulia | I'll need to make a frame to register it to |
06:57.26 | profalbert | Also I think it's not a good idea to force some OO-coding styles when coding lua |
06:57.26 | profalbert | like ordering methods by significance (descending) |
06:57.28 | Lulia | The chat edit frame doesn't recognize those events for whatever reason |
06:57.48 | Torhal | What events? |
06:57.51 | Talryn | I just setup an addon to use the wowace localization and I'm getting errors for all the non-enUS lua files in FrameXML.log. The files look ok though and match up with another addon I did. |
06:57.56 | Talryn | Any thing I should check? |
06:57.57 | Lulia | OnKeyUp and OnKeyDown |
06:57.58 | Torhal | You mean the script handlers? |
06:58.02 | Lulia | If it did, this would be so much easier |
06:58.05 | Lulia | Right |
06:58.11 | Torhal | Events are CHAT_MSG_PARTY and the like |
06:58.19 | Lulia | Semantics :P |
06:58.59 | Torhal | Just make a dummy frame and use that |
06:59.13 | Lulia | Right |
06:59.26 | Lulia | But then I have to have the script check to see if an edit box has focus too |
06:59.35 | Torhal | Don't set any textures or anything, just dummy:SetAllPoints(ChatFrameXEditBox) |
06:59.35 | Lulia | Or, more specifically |
06:59.40 | Lulia | One of the chat edit boxes |
07:00.10 | Lulia | Well I cant set it to XEditBox, does that mean I need to set it to all of them? |
07:00.11 | Lulia | ;) |
07:00.31 | Lulia | Or just one attached to the first editbox |
07:00.37 | Lulia | Which can be used on all |
07:00.39 | Lulia | Hmm |
07:00.55 | ccKep | as for the hooking... you might want to test if ChatEdit_OnLoad even fires when hooking it |
07:01.07 | ccKep | <PROTECTED> |
07:01.25 | *** join/#wowace MoonWitch (~Kelly@d54C547BE.access.telenet.be) |
07:01.57 | Lulia | Any reason you put /script in front? |
07:02.30 | ccKep | to test it ingame ;) |
07:02.40 | Torhal | Either /script or /run works |
07:03.36 | Lulia | Entering that directly in the game does nothing ;) |
07:04.00 | ccKep | it should do somethign when you create a new chatframe / ChatEdit_OnLoad gets called |
07:04.13 | ccKep | if nothing happens then ChatEdit_OnLoad doesnt get called and all this hooking wont help you |
07:04.36 | Lulia | I typed it in and nothing happened |
07:04.42 | Lulia | Just made a new window, nothing happened |
07:04.43 | Lulia | :P |
07:04.45 | ccKep | yeah, create a new chatframe afterwards |
07:04.55 | ccKep | a chat window or a new whisper frame thngie? |
07:05.02 | Lulia | Chat window |
07:05.04 | Lulia | closed one |
07:05.07 | ccKep | ChatFrame1 - ChatFrame10 are pre-loaded |
07:05.08 | Lulia | and created a new one |
07:05.13 | ccKep | and just get hidden when unused |
07:05.15 | Repo | 10ouf_adirelle: 03Adirelle 07master * 1.5.1-7-g116e7e8 / (2 files in 2 directories): [+1 commit] Group frames: fixed indicators for player own buffs (hots/shield). |
07:05.35 | Lulia | ah there |
07:05.37 | Lulia | It fired |
07:05.51 | Lulia | twice because I put in twice |
07:06.11 | Lulia | so |
07:06.12 | ccKep | so, atleast that works... which means that your hook in the lua file should also have fired |
07:06.26 | ccKep | which itself means you should have your scrolling stuff |
07:06.27 | Lulia | I could have tested that with a print() ;) |
07:06.46 | Lulia | Hmm |
07:06.50 | ccKep | many ways to rome |
07:06.52 | Lulia | I do when it's part of the frames |
07:07.54 | Lulia | Okay, now it's working for some odd reason |
07:07.59 | Lulia | So now to work on the OnUpdate ;) |
07:08.18 | Lulia | The normal rate is 20 characters a second |
07:08.24 | Lulia | I just tried it with alt + left arrow key |
07:08.31 | Lulia | So I need to update every 20th of a second |
07:09.18 | Lulia | Hmm, I know the basic conceptualization of checking person |
07:09.35 | Torhal | ? |
07:11.04 | Repo | 10character-notes: 03talryn1 * r48 CharacterNotes.lua: Making all windows movable and raising them when shown. |
07:11.07 | *** join/#wowace profalbert1 (~profalber@212095007056.public.telering.at) |
07:11.08 | Lulia | local function something() countdown = 1; local frame = CreateFrame("FRAME"); frame:SetScript("OnUpdate", function(self, elapsed) countdown = countdown - elapsed if countdown <= 0 then --[[ stuff ]] countdown = countdown + 1 end end |
07:11.19 | Lulia | Well |
07:11.21 | Lulia | Meh |
07:11.25 | Lulia | I screwed that up, sec |
07:11.45 | Lulia | local function something() countdown = 1; local frame = CreateFrame("FRAME"); frame:SetScript("OnUpdate", function(self, elapsed) countdown = countdown - elapsed if countdown <= 0 then --[[ stuff ]] countdown = countdown + 1 end end); end |
07:12.37 | Lulia | Now if I did count <= 0.8 |
07:12.44 | Lulia | That should be every 20th of a second, no? |
07:13.20 | Torhal | Lulia: http://paste.wowace.com/2790/ |
07:13.58 | Torhal | Though I forgot to put "key_is_down = true" in the OnKeyDown script handler |
07:14.24 | Lulia | Aren't you just doing the opposite of what I did? |
07:15.09 | Torhal | As far as the counter goes, yes. |
07:15.15 | Lulia | Right |
07:15.19 | Lulia | I didnt put in the specifics of stuff |
07:15.27 | Torhal | Otherwise, I'm hiding the updater when I'm not using it because OnUpdate doesn't fire on hidden frames. |
07:15.35 | Lulia | Really? |
07:15.39 | Lulia | That's good to know |
07:15.40 | Torhal | Really |
07:15.54 | Lulia | That's important to know >.> |
07:16.02 | Lulia | your hair is long |
07:16.07 | Lulia | imo |
07:16.10 | Torhal | And I've also encapsulated the counter variable in an anonymous namespace so it's simply an implementation detail |
07:16.14 | Torhal | Heh, yah |
07:16.34 | Lulia | anonymous namespace? |
07:16.46 | doom0r | the correct phrase is "your hair is metal" |
07:16.47 | Torhal | do local variable = foo end |
07:17.06 | Torhal | That's an enclosed scope. I figured you'd know namespace better :) |
07:17.21 | Repo | 10alts: 03talryn1 040.1-beta2 * r13 : Tagging as 0.1-beta2 |
07:17.21 | Lulia | I thought it was called a closure |
07:17.27 | *** join/#wowace Wobin (~quassel@124-149-98-9.dyn.iinet.net.au) |
07:17.27 | *** mode/#wowace [+v Wobin] by ChanServ |
07:17.38 | Lulia | Also, I come from C/C++ but I'm by no means an expert in those ;) |
07:17.48 | Lulia | It's just what I learned first, but I was still learning them |
07:18.13 | Lulia | The do end stuff trips me out |
07:18.14 | Torhal | Closure: http://www.lua.org/pil/6.1.html |
07:18.21 | Lulia | My sequential mind set tells me it should only fire once |
07:19.11 | Torhal | It does. |
07:19.49 | Torhal | It declares and defines the variable, which is set aside in a memory address which is inaccessible from anything declared outside of the do block |
07:20.14 | Lulia | Just curious |
07:20.14 | Torhal | Since the script handler is defined within it, the handler has access to the variable |
07:20.29 | Lulia | If you were doing seconds, would you still use the counting up approach as opposed to counting down? |
07:21.50 | Torhal | Shouldn't really matter. I prefer counting up because I know I want to stop at 0.2 seconds, or 5 seconds...and starting from zero seems more natural. |
07:22.13 | Repo | 10rostertooltip: 03OrionShock 07master * v1.4.2-cata-beta-7-g4b1c985 localization.lua: [+1 commit] locale repack bump |
07:22.14 | Lulia | Well, I'm aware it doesn't matter. Just curious as to why people do things differently |
07:22.20 | Lulia | It's the psych major in me |
07:22.21 | Lulia | :P |
07:22.22 | Xinhuan | technically counting down is microseconds faster |
07:22.37 | Torhal | Operator technicalities! |
07:22.49 | Xinhuan | because when you compare 2 numbers, the CPU deducts one from the other and does a compare against zero |
07:23.14 | Xinhuan | ok so that makes it nanoseconds faster |
07:23.43 | Xinhuan | its not particularly exciting, but generally you would just choose the approach that makes the most sense in terms of readable code in this case |
07:24.22 | mitch0 | didum |
07:24.24 | *** join/#wowace Elkano (~elkano@pool018.vpn.uni-saarland.de) |
07:24.24 | *** join/#wowace Elkano (~elkano@WoWUIDev/WoWAce/Elkano) |
07:24.24 | *** mode/#wowace [+v Elkano] by ChanServ |
07:24.51 | Lulia | Hmm, I need a local variable called direction |
07:25.04 | Torhal | ? |
07:25.09 | Torhal | Oh |
07:25.13 | Lulia | And I was putting onupdate before the other frames, but I'll have to put it after |
07:25.22 | Lulia | Because I need to get direction from them |
07:25.42 | Torhal | Or you could just declare a file-local variable |
07:25.47 | Torhal | At the top |
07:25.52 | Torhal | And leave the rest where it is |
07:26.00 | mitch0 | or use _G, it has a lot of space in it |
07:26.02 | Lulia | true |
07:26.09 | Torhal | slaps mitch0 |
07:26.10 | *** join/#wowace dubf (~quassel@84.53.31.14) |
07:26.11 | Lulia | Not using _G |
07:26.27 | Torhal | Also, instead of a separate direction variable, you could just ise key_is_down |
07:26.42 | Torhal | When not down, set it to nil. When down, set it to the direction name |
07:26.58 | Lulia | I'm setting direction to a number |
07:27.01 | Lulia | 0 for no key down |
07:27.07 | Lulia | 1 for right |
07:27.10 | Lulia | -1 for left |
07:27.20 | Lulia | That way I can tie direction right into the math |
07:27.40 | Lulia | SetCursorPosition(GetCursorPosition()+direction) |
07:28.06 | Lulia | Though the other problem is that both of those requires frames, since they're widget functions |
07:28.25 | Lulia | So I need to know what has focus, hmm |
07:29.17 | Lulia | I'm so tired, this is a bad state to be scripting in |
07:29.22 | Lulia | But I hate leaving things unfinished |
07:29.38 | Torhal | Loop. Just slap the editboxes into a table as you come across them and loop through, checking each for focus |
07:29.41 | Lulia | I could make an "OnFocusGained" handler for each chatframe |
07:29.50 | Torhal | Yah |
07:30.21 | Lulia | And then, hmm |
07:30.25 | Lulia | Have a file local |
07:30.31 | Lulia | Which grabs the current focus from that |
07:30.37 | Torhal | Yup |
07:31.10 | Torhal | ChatFrame1EditBox:HookScript("OnFocusGained", function(self) current_focus = self end) |
07:31.35 | Lulia | hook script? |
07:31.48 | Torhal | Yeah - it allows the original script on the frame to fire before yours |
07:31.56 | Torhal | SetScript() overwrites |
07:32.06 | Lulia | Chat:SetScript("OnEditFocusGained", |
07:32.06 | Lulia | function() |
07:32.06 | Lulia | CurrEdit = self; |
07:32.06 | Lulia | end); |
07:32.07 | Lulia | oh |
07:32.15 | ccKep | ~api Frame_HookScript |
07:32.15 | purl | http://www.wowwiki.com/API_Frame_HookScript |
07:32.43 | Torhal | You actually want to do this, though: local function Chat_SetFocus(self) current_focus = self end |
07:32.59 | Torhal | Then Chat:HookScript("OnFocusGained", Chat_SetFocus) |
07:33.11 | Torhal | That way you're re-using the same function for every editbox |
07:33.16 | Lulia | Wait, what does SetScript overwrite? |
07:33.23 | ccKep | whatever the handler is |
07:33.31 | Torhal | If the editbox has an OnFocusGained handler alreadym you're nuking it |
07:33.35 | ccKep | suppose you have another addon that needs the focus event of the editbox |
07:33.49 | ccKep | when you SetScript it the other addon stops working |
07:33.49 | Lulia | okay |
07:33.52 | Lulia | Oh |
07:33.56 | Lulia | That explains something |
07:34.02 | Lulia | Earlier, when I first started all of this |
07:34.07 | Lulia | I used OnEditFocusGained |
07:34.14 | Lulia | And if I mouse clicked on the edit frame |
07:34.18 | Lulia | It was still ghosted |
07:34.24 | Lulia | With an odd cursor position |
07:34.34 | Lulia | Because I was interrupting the default UIs stuff |
07:34.55 | Torhal | Yup |
07:34.59 | Lulia | So you're saying if I used HookScript it wouldnt have interferred? |
07:35.09 | ccKep | most likely |
07:35.10 | Torhal | Right. The default handler fires first |
07:35.22 | Torhal | It's a stack effect. You HookScript, someone else HookScripts, etc |
07:35.28 | Torhal | They pop off after the original |
07:35.50 | Lulia | So why ever use SetScript? |
07:35.52 | ccKep | SetScript should just be used on your own frames |
07:35.56 | Torhal | Exactly |
07:36.47 | Lulia | Hmm, I shouldn't need to clear it |
07:36.53 | Lulia | Since a new edit gaining focus will clear it |
07:36.58 | Torhal | Right |
07:37.20 | *** join/#wowace pschriner (~Miranda@xdsl-78-34-209-193.netcologne.de) |
07:38.06 | Lulia | http://paste.wowace.com/2791/ |
07:38.46 | Lulia | Hmm, no errors |
07:38.56 | Lulia | But it doesn't let you hold the key down >.> |
07:39.14 | Fisker | ¨looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooode4555555555555555ioooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo9000000000000000, |
07:39.23 | Lulia | right |
07:39.24 | Lulia | I agree |
07:39.31 | ccKep | you are hiding the scrolltimer frame |
07:39.35 | ccKep | hidden frames dont fire OnUpdate |
07:39.54 | Talryn | Is there a way to make your own links in chat frames? Something besides the defined ones like item, enchant, player, etc.? |
07:40.13 | ccKep | Talryn: take a look at prats invite-link module |
07:40.24 | Lulia | Oh, whoops, right |
07:40.29 | ccKep | (it makes "inv(ite)" clickable and invite the person to your group that wrote it) |
07:40.40 | ccKep | but creating custom links that other people see is not possible |
07:41.01 | ccKep | they'll just see gibberish in that case |
07:41.27 | Talryn | Yes, I just want to make a link the player sees. I'll check it out. |
07:41.43 | Lulia | Didn't WIM used to create links that opened dialog boxes with edit boxes in them? |
07:42.01 | Lulia | Like you could type in a url and it would make a link object you click on to get an edit box with the link it |
07:42.05 | Lulia | That you could copy and paste |
07:42.57 | doom0r | chatter does, i'm sure prat does, and a billion more |
07:47.12 | ccKep | basically, you replace the text in your message with link-stuff and hook SetItemRef afaik |
07:47.43 | Repo | 10big-brother: 03oscarucb 043.2.0 * r247 : Tagging as 3.2.0 |
07:48.13 | Lulia | Uh oh, whatever I just did created the edit box of doomb |
07:48.16 | Lulia | doom* |
07:48.28 | Lulia | which is always focused, thus no enter to open chat, and no jumping |
07:48.30 | Lulia | >.> |
07:49.18 | *** join/#wowace Sliker (~ponies@5aca70df.bb.sky.com) |
07:49.31 | Lulia | KeyFrame:SetScript("OnKeyDown", function(self, key) if not ScrollTimer:IsVisible() then LastUpdate = 0; if key == "RightClick" thendirection = 1; elsedirection = -1; endScrollTimer:Show(); endend); |
07:49.36 | Lulia | That's all I added. |
07:49.49 | Torhal | Lulia: http://paste.wowace.com/2792/ |
07:50.00 | Torhal | That gets rid of the need for a frame for OnKeyDown |
07:50.51 | Torhal | Or it should. It's completely dry-coded. |
07:50.59 | Torhal | But I cleaned up some other stuff in there. |
07:51.18 | Lulia | But the key can be not-pressed and the chat still have focus |
07:51.26 | Torhal | Ugh |
07:51.37 | Torhal | I had a feeling I was overlooking something |
07:51.49 | Lulia | Well, let me share what I have |
07:51.52 | Lulia | It has an error though |
07:52.07 | Lulia | I commented out the part causing the bug |
07:52.20 | Lulia | http://paste.wowace.com/2793/ |
07:52.36 | Lulia | The code between the --[[ --]] |
07:52.42 | Lulia | Is causing the editbox of perm-focus doom |
07:52.44 | Lulia | Not sure why |
07:52.50 | Lulia | since KeyFrame isnt an edit box |
07:52.59 | ccKep | I might be overlooking something, but I find all this a bit much code for such a simple task :o |
07:53.09 | Lulia | It's possible! |
07:53.14 | Lulia | I'm a newbie though |
07:53.23 | Lulia | Still learning, but I'm learning quite a bit through this |
07:53.44 | Lulia | Solidifying my knowledge of timers, learning more about _G, learned about hooksecurefunc and HookScript |
07:53.52 | Lulia | I learned that hidden timers dont fire OnUpdate |
07:54.04 | ccKep | I joined the discussion kinda "late" (which itself was already hours ago...) but: why do you need to create frames actually? |
07:54.26 | Torhal | ccKep: EditBoxes don't fire OnKeyDown |
07:54.29 | Lulia | Because OnKeyDown and OnKeyUp dont dire for ChatFrame EditBoxes |
07:54.33 | Repo | 10gnomeworks: 03lilsparky * r62 / (5 files in 2 directories): |
07:54.33 | Repo | fixed skillups not affecting trade skill colors and the rank status bar |
07:54.35 | Repo | fixed some filtering issues (craftability and inventory filters) |
07:54.36 | Repo | fixed tradeID/player nil reports (i think) |
07:54.39 | Lulia | no clue why |
07:54.43 | Lulia | They just dont |
07:54.53 | Lulia | You can test it out yourself if you don't believe me ;) |
07:55.02 | Torhal | Because that would be insane if they did. Every time you typed a letter it would fire |
07:55.13 | Lulia | But you dont have to gather that info |
07:55.24 | Lulia | I'm sure a lot of stuff is firing constantly |
07:55.35 | Lulia | heck, it's redrawing all the frames multiple times a second, right? |
07:55.37 | Lulia | :) |
07:55.43 | ccKep | EditBoxes inherit from Frame |
07:55.49 | ccKep | which itself has :EnableKeyboard |
07:55.50 | *** join/#wowace profalbert (~profalber@128.131.167.8) |
07:55.56 | Lulia | That doesnt work though |
07:55.57 | Lulia | I tried it |
07:56.15 | Torhal | ccKep: http://wowprogramming.com/docs/scripts/OnKeyDown |
07:56.16 | Lulia | Trust me, I went through all the simple steps to get it to work |
07:56.21 | Torhal | It even says it doesn't support it |
07:57.33 | Lulia | The only thing I can think of is that setting KeyFrame to all of ChatFrame1EditBoxes points is that it's giving the frame focus |
07:57.38 | Lulia | :-/ |
07:57.50 | Lulia | Maybe if I do a clearfocus after the setallpoints call? |
07:58.38 | sbu | morning |
07:58.41 | Lulia | morning |
07:58.45 | Torhal | That shouldn't set focus. |
07:58.55 | Lulia | Well |
07:59.01 | Lulia | If you uncomment the code I commented out |
07:59.04 | Lulia | You get perm-focus issues |
07:59.18 | Lulia | No jumping, can't use enter to get focus on the chat frame edit box |
07:59.20 | Lulia | etc... |
07:59.47 | ccKep | we're talking about left<->right scrolling through the current text line, or up/down through the edit box history? |
08:00.07 | Lulia | Just left-right |
08:00.16 | Lulia | And mousewheel, but mousewheel scrolls seamlessly atm |
08:00.31 | Lulia | This just allows you to use left-right without using the alt key as well |
08:00.51 | Lulia | (which I didnt even know about the alt key + left (or right)) before today |
08:00.57 | Lulia | Though I did know alt + up or down for history |
08:01.31 | ccKep | ~api GetCurrentKeyBoardFocus |
08:01.31 | purl | http://www.wowwiki.com/API_GetCurrentKeyBoardFocus |
08:01.47 | Lulia | ClearFocus didnt work |
08:01.53 | Lulia | So that wasn't the issue, like you said |
08:02.19 | Lulia | brb |
08:03.10 | *** join/#wowace Vilkku (Vilkku@dsl-tkubrasgw1-fe0bfa00-122.dhcp.inet.fi) |
08:04.20 | ccKep | so, couldn't you just create _one_ button that registers for onkeydown / onkeyup / onupdate / mousewheel stuff and do something along the lines of |
08:04.26 | ccKep | local editbox = GetCurrentKeyBoardFocus() |
08:04.30 | ccKep | if not editbox then return end |
08:04.30 | ccKep | ? |
08:04.45 | ccKep | inside their respective script handlers |
08:06.07 | Lulia | back |
08:06.26 | Lulia | Well yes, we talked about that earlier, just using one button. It should be possible, but I couldn't conceptualize it at the time. |
08:06.56 | Lulia | Mostly because the buttons call a function which needs the frame |
08:06.58 | Lulia | However |
08:07.11 | Lulia | Now that we added CurrEdit, which knows which edit has the focus |
08:07.25 | Lulia | I think we can use that in the Button's script and just keep it to one button, no? |
08:07.29 | ccKep | GetCurrentKeyBoardFocus() returns the edit that has the focus too ^.^ |
08:07.38 | Lulia | d'oh |
08:07.54 | Torhal | Also, you're using both SetScript and HookScript for OnEditFocusGained |
08:08.01 | *** join/#wowace wolftankk (~wolftankk@116.228.136.107) |
08:08.11 | Lulia | I changed it to both HookScripts |
08:08.18 | Lulia | I just didn't update |
08:08.37 | Lulia | But with GetCurrentKeyBoardFocus we dont need the second one, I think |
08:08.50 | Lulia | Because that does what ChatFocus does |
08:09.40 | Torhal | You didn't need two to begin with :) |
08:10.47 | Repo | 10pet_ability_list: 03Anyia3 * r5 / (2 files in 1 directory): * Added keybinding to toggle the list. |
08:11.14 | Lulia | shhh |
08:12.48 | Lulia | http://paste.wowace.com/2794/ |
08:12.53 | Lulia | Only one button now |
08:13.01 | Lulia | And only one hookscript for OnFocusGained |
08:13.07 | Lulia | OnEditFocusGained* |
08:13.22 | Lulia | KeyFrame still causes issues though |
08:14.26 | Repo | 10librescomm-1-0: 03Phanx * r62 LibResComm-1.0/LibResComm-1.0.lua: - Fixed Ticket #6 |
08:14.35 | ccKep | do hidden frames receive keyboard input? |
08:14.50 | Lulia | They shouldn't... |
08:15.27 | Lulia | Things are starting to lose focus |
08:15.28 | Lulia | lol |
08:15.28 | mitch0 | onless they're "hidden" with SetAlpha(0) |
08:15.48 | Lulia | Well yeah, but then they're not "hidden" just invisible |
08:15.48 | Lulia | :P |
08:15.57 | Lulia | transparent or whatever |
08:16.07 | Lulia | It's semantics, of course |
08:16.14 | Lulia | But I got called out for bad terminology earlier |
08:16.20 | Lulia | peers at Torhal. |
08:16.30 | Lulia | realizies he is peering at a city. Hmm. |
08:17.50 | Lulia | Maybe Torhal was smart and went to bed |
08:18.26 | Elkano | or he's just dug into work again |
08:18.33 | Lulia | Maybe |
08:18.41 | Torhal | I just dug into your code. |
08:18.50 | Lulia | I'm more-or-less joking about my fatigue |
08:18.58 | Lulia | I should have been asleep 4 hours ago |
08:19.32 | Lulia | My code is ingenious! |
08:19.51 | doom0r | so, what you mean is, you have 4 more hours before you need to do anything? |
08:20.03 | Repo | 10pet_ability_list: 03Anyia3 044.0.0beta2 * r6 : |
08:20.04 | Repo | Tagging as 4.0.0beta2, now with key-binding for toggling the list. |
08:20.41 | Elkano | you did? did it moan? |
08:21.00 | Lulia | I mean that in 4 hours if I'm still awake I'll probably fall over |
08:21.28 | Rokiyo | i sometimes wonder why ingenious isn't similar to infamous, in that it's an ill-reputed or unfavourable way to acheive said status... |
08:21.28 | doom0r | well, don't stay up for 36+ hours |
08:21.34 | Lulia | Commented out all the stuff in KeyFrame:SetScript |
08:21.35 | Rokiyo | the english language is weird |
08:21.44 | Lulia | And it still caused the error |
08:21.58 | Lulia | It must be the KeyFrame:SetScript call itself |
08:22.14 | doom0r | Rokiyo: it's a bastard language |
08:22.18 | doom0r | always has been |
08:22.26 | Lulia | That's what makes it beautiful |
08:22.37 | Rokiyo | beautiful? o.O |
08:22.41 | Lulia | Yes |
08:22.46 | Lulia | I is a writer |
08:22.54 | Lulia | I will kill you if you do not agree! |
08:22.55 | doom0r | yup, modify it to whatever suits the users |
08:23.15 | Lulia | English contains words from so many cultures |
08:23.18 | ccKep | smashed something together how I would've done it, just testing if it actually works xD |
08:23.37 | *** join/#wowace TNZe (~evil@198.62-97-238.bkkb.no) |
08:23.44 | Lulia | In theory mine would work fine in its entirety if it didn't have issues with KeyFrame:SetScript |
08:23.44 | doom0r | ccKep: you're testing english? |
08:23.49 | doom0r | ;x |
08:23.56 | Lulia | In just 76 lines of code |
08:23.59 | ccKep | no, chat thingie |
08:24.02 | Lulia | Which isn't awful, no? |
08:24.56 | doom0r | it can be 12k lines, if it's more efficient and solid than something with 77 |
08:24.58 | doom0r | relativity |
08:25.44 | doom0r | lines are epeen and tekkub usually wins in here |
08:26.07 | Lulia | Changing KeyFrame:SetScript to KeyFrame:HookScript took the focus issue away |
08:26.12 | Lulia | But it's not working as intended |
08:26.14 | Rokiyo | I'm not particularly well attuned to the arts, I'm generally unable to detect if something is "artistic" or not. Perhaps English is artistically beautiful... But mechanically? Oh hell no! :P |
08:26.25 | Lulia | aka you cannot hold an arrow key down for seamless cursor scrolling |
08:26.43 | Lulia | The mechanics are part of the art. |
08:27.16 | Rokiyo | why is it that I can't say artistic without sniggering and thinking artesticle instead? |
08:27.18 | doom0r | Rokiyo: there's multiple languages that are used for the _common_ mechanics, knowing the language allows so much in the way of expression compared to many other strongly structured languages |
08:27.44 | Lulia | I'm fairly certain SetScript is causing the issue |
08:27.53 | Lulia | Since HookScript had no such problems |
08:28.10 | doom0r | altough it's given that understanding _requires_ context and previous knowledge quite often |
08:28.57 | doom0r | i couldn't imagine learning esl |
08:30.40 | Rokiyo | I think i'm a little burned by my interactions with British RP English speakers... It's almost as if they communicate by constructing a negative space in their phrases. |
08:30.56 | Rokiyo | and they hide all sorts of nasty insults and the like in those spaces |
08:31.02 | Rokiyo | which has put me off the whole thing, really :P |
08:31.52 | Rokiyo | mostly because I'm chronically unable to perceive their implied meanings, which leave me wondering at their otherwise innocent sounding overt statements |
08:33.02 | *** join/#wowace Kalroth (~kalroth@mail1.retailplanit.com) |
08:33.09 | Rokiyo | I once watched the BBC version of Pride & Prejudice, and I needed it paused every 10 seconds so my british girlfriend at the time could explain why everyone was acting insulted every time someone seemingly paid a compliment |
08:33.51 | Repo | 10grid2: 03jerry * r542 GridLayout.lua: Try to fix pet unitframes, following a comment from roncli. |
08:34.39 | Lulia | DEfinitely just fell asleep at the comp |
08:34.51 | Rokiyo | then go to bed :P |
08:34.51 | Lulia | Gonna have ot go AFK and get some sleep. I'lll tackle this later. |
08:34.59 | Rokiyo | you'll probably end up dreaming about your project |
08:35.01 | Lulia | Thanks for all the help guys, I did learn quite a bit |
08:35.03 | Rokiyo | and wake up having solved it :P |
08:35.12 | Lulia | And hopefully I'll figure out what's wrong |
08:35.28 | sbu | http://xkcd.com/814/ - phew... so true :p |
08:35.34 | Torhal | Lulia|Sleep: :P |
08:35.38 | Torhal | I'm working on it now |
08:35.44 | Zhinjio | Torhal: foof |
08:35.50 | Torhal | Zhinjio: Yay! |
08:36.15 | Lulia|Sleep | I didn't even work on my real addon at all today |
08:36.16 | Lulia|Sleep | shame on me |
08:36.18 | Lulia|Sleep | night |
08:36.22 | Mirrormn | huh |
08:36.27 | Rokiyo | sbu: I... I don't get what the diode is for... >.< |
08:36.27 | Mirrormn | now that I look at the comic again |
08:36.31 | Lulia|Sleep | 4:36am in the morning, and I'm off to bed |
08:36.32 | Mirrormn | I get it now =S |
08:37.04 | Zhinjio | Torhal: went to sleep shortly after we talked earlier (way early) ... and ended up waking up about 45 minutes ago with like, fully formed blueprints in my head for integrating a computer into a computer desk |
08:37.11 | Zhinjio | my brain is so fucked up |
08:37.15 | Torhal | Hahaha |
08:37.16 | Torhal | Nice |
08:37.41 | Zhinjio | Now it has me thinking I should go into the custom computer desk cabinetry business, which I would be utter fail at |
08:37.48 | Rokiyo | oh, derp, ignore me |
08:38.09 | sbu | Rokiyo: no need to apologize for her because hurt-feelings only flows in one direction (from her to him), diodes pass electricity in only one direction :p |
08:39.56 | *** join/#wowace bluspacecow (~bluspacec@60-234-165-167.bitstream.orcon.net.nz) |
08:40.23 | Rokiyo | heh, alternate interpretation on the xkcd forums: "He is saying that the guy cant apologize, because it will be blocked by the diode, the same way his first statement was blocked by the diode. Only the girl can talk, and only the guy can listen in this arrangement." |
08:40.50 | Zhinjio | in other news, it looks like someone who wants to overturn roe v wade is actually in serious contention for colorado's senate seat |
08:40.54 | Zhinjio | which scares the hell out of me |
08:42.31 | sbu | Rokiyo: in general its the same.. she doesnt want to hear that she did something wrong :p just like its in the real world :p |
08:42.44 | Rokiyo | yeah lol |
08:43.28 | Rokiyo | i've been single for like a year now, after having been in a relationship for 4 years... and I'm still not convinced I'm actually worse off, due to pretty much that |
08:43.33 | sbu | uh |
08:43.52 | sbu | today is men's world day :p |
08:44.13 | Rokiyo | lolwat? |
08:44.15 | *** join/#wowace stolenlegacy|lap (~stolenleg@193.170.222.163) |
08:48.48 | *** join/#wowace stolenlegacy_|la (~stolenleg@193.170.222.163) |
08:49.00 | *** join/#wowace faCe| (~face@p5489F1B1.dip.t-dialin.net) |
08:51.06 | Repo | 10autoprofity: 03Grayal * r36 libs/LibRule-1.0/LibRule-1.0.lua: prepare for cata |
08:51.57 | *** join/#wowace stolenlegacy_|la (~stolenleg@193.170.222.163) |
08:52.08 | doom0r | Rokiyo: you just need to watch more british tv |
08:52.48 | doom0r | i'm american and i get plenty of it after many years of absorption |
08:53.30 | Rokiyo | i've tried, it just doesn't absorb >.< |
08:53.46 | Rokiyo | like metaphors, i'm practically metaphor-blind |
08:53.53 | doom0r | takes a really dry sense of humor |
08:56.18 | ccKep | Lulia|Sleep: what I came up with: http://paste.wowace.com/2795/ |
08:56.27 | ccKep | don't know if it helps you solving any of your problems (if there still are any) |
08:57.17 | *** join/#wowace Adirelle|work (~Adirelle@tok69-5-82-235-150-60.fbx.proxad.net) |
08:57.52 | ccKep | could probably optimize it by moving the SetScript("OnUpdate" into the keydown stuff and such |
08:58.44 | *** join/#wowace vrak (vrak@putsch.kolbu.ws) |
08:59.52 | *** join/#wowace Pneumatus^ (~WiN@81.174.255.130) |
09:00.49 | *** join/#wowace Caleb| (~caleb@dsl4E5C05C4.pool.t-online.hu) |
09:02.48 | *** join/#wowace Vonhinten (~Kiss@c-71-203-110-77.hsd1.fl.comcast.net) |
09:03.01 | doom0r | i seen a pic of a faceroller plugin and it had what looks like the remaining time of the reactive ability buff overlayed on the action slot, anyone know of something that does this standalone? |
09:03.53 | doom0r | ability wasn't necessarily only available during, but was modified, i.e. pally exorcism from Art of War |
09:07.30 | Rokiyo | does anyone have a link to that screenshot of the wow paperclip addon? |
09:07.56 | doom0r | http://wow.tachyonsix.com/WoWScrnShot_082508_210848.jpg |
09:08.33 | Rokiyo | ty |
09:09.42 | Kalroth | haha, Antiarc made Clippy for WoW? |
09:09.55 | doom0r | couple years ago |
09:10.09 | Kalroth | oh |
09:10.29 | doom0r | as you can see by the then current bt |
09:10.46 | Antiarc | I prototyped it |
09:10.51 | Antiarc | I never really worked it out |
09:10.52 | Antiarc | But yeah |
09:11.16 | Rokiyo | it's still a funny pic to show others :P |
09:11.19 | Rokiyo | so it wasn't for nothing |
09:11.32 | Rokiyo | years later, people are still getting chuckles out of it |
09:11.50 | Antiarc | \o/ |
09:20.51 | *** join/#wowace CrazyBenny_ (~s_m@193.165.209.194) |
09:20.52 | *** join/#wowace Julith (~Miranda@i577B4334.versanet.de) |
09:29.37 | Fisker | helloooooooo Antiarc |
09:39.41 | Repo | 10atramedes: 03Rabbit * r13 Atramedes.lua: Minor cleanups. |
09:40.07 | Repo | 10atramedes: 03Rabbit * r14 Atramedes.lua: Fix zoning. |
09:45.01 | Repo | 10autoprofity: 03Grayal * r37 Options.lua: prepare for cata |
09:46.19 | *** join/#wowace nebula169 (~nebula@c-75-73-235-102.hsd1.mn.comcast.net) |
09:46.48 | doom0r | scratches head |
09:47.41 | doom0r | i can buy individual vial with buyemall and gnomeworks |
09:47.48 | doom0r | i can only buy 5 manually |
09:48.14 | doom0r | did i miss a change? or is there some way to buy individuals manually (didn't know you could buy _1_ at all) |
09:49.32 | *** join/#wowace MoonWitch|Mobile (~Kelly@d54C547BE.access.telenet.be) |
09:52.17 | dieck | doom0r: maybe it buys 5 and throws away 4? :) |
09:52.44 | doom0r | ~lart dieck |
09:52.44 | purl | explains, ever so gently, that if dieck doesn't give the channel more information, they can't help |
09:53.05 | Repo | 10atramedes: 03Maat * r15 Atramedes.lua: fix zoning some more |
09:53.10 | doom0r | purl, that was fail |
09:55.40 | mitch0 | erm, why does the git port want to modify /etc/shells? |
09:57.46 | Rokiyo | what triggers purl to say stuff? |
09:58.05 | SunTsu | Rokiyo: ~command |
09:58.06 | doom0r | purl does what she wants |
09:58.11 | Rokiyo | lol |
09:58.13 | SunTsu | ~lart Rokiyo |
09:58.13 | purl | slaps Rokiyo upside and over the head with one freakishly huge killer whale named hugh |
09:58.13 | doom0r | right, purl? |
09:58.21 | Rokiyo | lol |
09:58.37 | doom0r | purl, talk to me |
09:58.37 | purl | ACTION chatters endlessly to to me |
09:58.42 | Rokiyo | lol |
09:59.22 | SunTsu | ~Rokiyo is like all I can say is lol |
09:59.22 | purl | okay, SunTsu |
09:59.29 | SunTsu | ~Rokyo |
09:59.41 | SunTsu | ~emulate Rokiyo |
09:59.45 | SunTsu | ~emulate ~Rokiyo |
09:59.48 | Rokiyo | lol |
09:59.54 | doom0r | ~emulate Ackis |
09:59.54 | purl | I AM QQing!!! |
10:00.03 | SunTsu | ~purl forget ~Rokiyo |
10:00.03 | purl | SunTsu: i didn't have anything called '~rokiyo' to forget |
10:00.07 | SunTsu | ~purl forget Rokiyo |
10:00.07 | purl | SunTsu: i forgot rokiyo |
10:00.23 | SunTsu | ~botsnack |
10:00.23 | purl | :), SunTsu |
10:00.36 | Rokiyo | ding! ding! ding! go the mirc highlights o.O |
10:00.52 | Rokiyo | ~purl remember Rokiyo |
10:00.52 | purl | How can i forget about Rokiyo ? That person is the greatest <fill in whatever is appropriate> in the whole wide world ! |
10:00.59 | Rokiyo | lawl |
10:01.30 | Rokiyo | ~emulate purl |
10:01.30 | purl | Mwhaha, fear my spam! |
10:01.52 | doom0r | i may have taken the most empty IF bridge area ss on live ever |
10:02.04 | Rokiyo | ~emulate lua_bot |
10:02.15 | Rokiyo | aw |
10:02.56 | SunTsu | purl, Rokiyo is like lols and lawls for all! |
10:02.56 | purl | okay, SunTsu |
10:03.03 | SunTsu | ~emulate Rokiyo |
10:03.11 | SunTsu | damn ;) |
10:03.26 | SunTsu | ~Rokiyo |
10:03.26 | purl | extra, extra, read all about it, rokiyo is like lols and lawls for all! |
10:03.33 | Rokiyo | rofl |
10:03.47 | Rokiyo | ~SunTsu |
10:03.54 | Rokiyo | nuffin' |
10:04.04 | Rokiyo | touches purl |
10:04.07 | SunTsu | No, I'm like nothing else |
10:04.18 | *** join/#wowace arkanes (~arkanes@python/site-packages/arkanes) |
10:05.21 | Rokiyo | you know, i've just realised that I do say lol and lawl a lot |
10:05.23 | Rokiyo | :$ |
10:05.51 | SunTsu | Rokiyo: that comes to a big surprise to me ;) |
10:06.08 | Rokiyo | no, i mean I've finally just got what you were saying :P |
10:06.13 | Rokiyo | .... |
10:06.14 | Rokiyo | lol |
10:06.41 | Rokiyo | s/lol/I have nothing useful to say, but wish to acknowledge having read the above statement |
10:06.43 | SunTsu | you definitely have the highest rate of lol in here, yes ;) |
10:06.54 | Rokiyo | derp, forgot the closing slash |
10:07.29 | *** join/#wowace pschriner (~Miranda@xdsl-78-34-209-193.netcologne.de) |
10:07.37 | Rokiyo | i'm not much better irl... I tend to use "nice" as my generic response |
10:08.03 | Rokiyo | maybe I should cut to the chase and just use "acknowledged" |
10:08.09 | Rokiyo | ... or ack |
10:08.40 | SunTsu | Rokiyo: or maybe you should relax a bit and don't take it too serious |
10:08.55 | SunTsu | everybody has some quirks |
10:09.27 | Rokiyo | i tend to over-analyse |
10:09.31 | Rokiyo | :s |
10:09.55 | Rokiyo | you watch, soon i'll be over-analysing my over-analyse |
10:10.01 | Rokiyo | analysis* |
10:10.16 | doom0r | speaking of which, it's analyze |
10:10.26 | Rokiyo | i'm not American |
10:10.46 | doom0r | i'm not english |
10:10.46 | mitch0 | what port does git: use? |
10:11.02 | profalbert | 22? |
10:11.50 | SunTsu | Rokiyo: yay, I'm anxious to see you explode because recursion levels stacked too high |
10:11.58 | mitch0 | profalbert: erm |
10:12.44 | SunTsu | mitch0: git can use all kinds of transports, which url scheme do you use? |
10:13.06 | mitch0 | git:// |
10:13.29 | mitch0 | actually, I'd settle for anything that I can cram thru this stupid corporate proxy ;) |
10:13.42 | Rokiyo | SunTsu: my internal stack is horrifically broken... it can only hold 2 or 3 things, and if you push something new onto the stack, it uses the space taken by whatever was on the bottom of teh stack |
10:13.42 | profalbert | you could use http |
10:13.59 | Rokiyo | i tend to go on tangents of tangents and rapidly forget where I started, or why I'm even talking |
10:14.19 | profalbert | or ssh |
10:14.26 | mitch0 | error: The requested URL returned error: 502 while accessing http://git.curseforge.net/wow/tomtom/mainline.git/info/refs |
10:14.37 | doom0r | Rokiyo: you know there's 108 stitches on a baseball and 108 beads on a rosary? |
10:14.43 | doom0r | grins and hides |
10:15.02 | SunTsu | mitch0: that should be git-daemon then, and port 9418/tcp |
10:15.07 | Rokiyo | twitches |
10:16.28 | SunTsu | I suddenly wonder if there's something like buffer overflow exploits on human brains like Rokiyo'as |
10:16.31 | SunTsu | -a |
10:16.38 | *** join/#wowace Diao (vince@adsl-99-58-31-154.dsl.pltn13.sbcglobal.net) |
10:16.43 | Fisker | you know what i hate? |
10:16.51 | Fisker | Browsers that aren't web standards compliant |
10:16.57 | SunTsu | Fisker: everything, that's easy |
10:16.57 | mitch0 | suntsu: thanks. worksy |
10:17.07 | Fisker | Like chrome and firefox |
10:19.27 | doom0r | i hate sleep |
10:19.30 | doom0r | such a waste of time |
10:19.54 | doom0r | heads to bed = |
10:20.59 | Repo | 10skillet: 03yossa * r182 SkilletQueue.lua: Skillet: |
10:21.00 | Repo | - max item count for create all increased to 999 |
10:25.18 | *** join/#wowace Skizelli (skizelli@c-76-102-108-254.hsd1.ca.comcast.net) |
10:36.59 | Zhinjio | Torhal: ping |
10:39.38 | Zhinjio | so, I used to use GetItemInfo( itemnum ) to determine if something was cached or not. |
10:39.42 | Zhinjio | has that changed recently? |
10:39.54 | Zhinjio | my tooltip scanning to force cache items is broken somehow |
10:40.32 | Zhinjio | so either that doesn't properly detect a cached item anymore, or my scanning isn't caching things. or... hmm. Or I screwed something else unknown up |
10:41.50 | vhaarr | Zhinjio: no the item cache sometimes takes a long while to load |
10:41.57 | Zhinjio | hmm |
10:41.59 | Zhinjio | I see. |
10:42.03 | Zhinjio | hrmph. |
10:42.07 | Zhinjio | That would make sense. |
10:42.09 | vhaarr | I seemed to be able to force it to load by doing GetItemInfo("item:<id>") |
10:42.24 | vhaarr | but note the "seemed", I didn't test it that thoroughly |
10:42.42 | Zhinjio | nods. Thats what I'm doing |
10:42.46 | Zhinjio | I check that result. |
10:42.57 | Zhinjio | if it fails, I add that item to the scantable that I run through after |
10:43.17 | Zhinjio | to make sure all my items (ore, herbs, etc) are all cached |
10:43.30 | vhaarr | I think you will simply have to schedule a new scan then |
10:43.33 | Zhinjio | but it seems to be adding them all to the scantable every time. |
10:43.38 | vhaarr | until all items are properly cached |
10:44.08 | vhaarr | once you get information about one item, the others should follow immediately |
10:44.38 | Zhinjio | weird. guess I need to go through this code again and maybe time it differently |
10:44.49 | vhaarr | this is on login right? |
10:44.54 | Zhinjio | there's *no way* I should have to forceload herbs/ore every time I login |
10:44.54 | Zhinjio | yes |
10:45.13 | vhaarr | well just scan every 5 seconds after login until it catches? |
10:45.19 | vhaarr | certainly not difficult |
10:45.25 | Zhinjio | nods. |
10:45.35 | Zhinjio | no, it isn't. I'll take a look. |
10:45.51 | Zhinjio | thanks. |
10:46.03 | vhaarr | no problem |
10:46.59 | *** join/#wowace Southy (~nn@78-105-2-213.zone3.bethere.co.uk) |
10:48.25 | *** join/#wowace stolenlegacy|lap (~stolenleg@193.170.222.163) |
10:51.33 | *** join/#wowace sylvanaar_ipad (~sylvanaar@166.137.13.250) |
10:51.43 | sylvanaar_ipad | Morning |
10:51.46 | *** join/#wowace MoonWitch|Mobile (~Kelly@d54C547BE.access.telenet.be) |
10:52.18 | sbu | Fisker: so, hows your logitech revue doing? |
10:52.50 | Xinhuan | GetItemInfo() is broken atm |
10:52.58 | Zhinjio | Xinhuan: orly? |
10:53.03 | Xinhuan | if used on an uncached item, it will actually cause a server query |
10:53.21 | Xinhuan | so a 1-50000 loop on it would actually cause your client to hang for about 1 min |
10:53.32 | Xinhuan | with the end result that you get almost every known item cached |
10:53.38 | Xinhuan | until you exit wow |
10:54.25 | sylvanaar_ipad | FedEx tracking in the am is always off |
10:54.55 | Zhinjio | and once you exit, they don't get committed to your local cache files? or do they? |
10:55.01 | Xinhuan | uncertain |
10:55.09 | Zhinjio | hmm. |
10:55.09 | Xinhuan | i think the itemcache gets wiped when ue xit |
10:55.43 | Zhinjio | if that were true, my auction scans would taken forever every time. |
10:55.45 | Zhinjio | they don't |
10:55.49 | Zhinjio | only the first few times |
10:55.58 | Xinhuan | not sure |
10:55.59 | Zhinjio | but there's clearly *something* different going on with caching |
10:56.03 | Zhinjio | nods |
10:56.04 | Zhinjio | ok |
10:56.12 | Xinhuan | all i can say is its broken |
10:56.41 | Zhinjio | nods. |
10:57.56 | *** join/#wowace harl (harl@dslb-088-076-043-225.pools.arcor-ip.net) |
10:58.15 | harl | wuff wuff |
11:03.13 | Repo | 10skillet: 03yossa * r183 Locale/Locale-deDE.lua: Skillet: |
11:03.14 | Repo | - review of german translation |
11:05.58 | *** join/#wowace koaschten (~koaschten@188-193-133-170-dynip.superkabel.de) |
11:23.40 | *** join/#wowace faCe| (~face@tiliacordata.informatik.uni-bremen.de) |
11:35.00 | *** join/#wowace gaellalire (~Adium@mut38-5-82-246-188-2.fbx.proxad.net) |
11:46.37 | Repo | 10inline-aura: 03Adirelle 07[1 branches] 04[27 tags] * /: mass update |
11:50.32 | Repo | 10fbag-of-holding: 03feithar 074.0.1 * r233 / (11 files in 5 directories): FBagOfHolding: |
11:50.33 | Repo | - Moving all WoW API methods into a library so that it'll be easier to make global fixes when the WoW API changes. |
11:52.06 | *** join/#wowace mojosdojo (~mojosdojo@p4FEFD7D2.dip.t-dialin.net) |
11:52.16 | *** join/#wowace stolenlegacy|lap (~stolenleg@193.170.222.163) |
11:59.49 | *** join/#wowace Kazie (~Kazie@78.156.121.4) |
12:00.27 | *** join/#wowace Computerpunk (~Computerp@85.186.122.45) |
12:07.58 | *** join/#wowace rbarreiros (~rbarreiro@87-196-178-1.net.novis.pt) |
12:09.58 | *** join/#wowace the-golem (~Darrin@c-98-255-201-176.hsd1.ca.comcast.net) |
12:21.11 | *** join/#wowace Legorol (~legorol@cpc8-sgyl28-2-0-cust43.sgyl.cable.virginmedia.com) |
12:24.00 | *** join/#wowace profalbert (~profalber@128.131.167.8) |
12:38.55 | Repo | 10autoprofity: 03Grayal * r38 / (2 files in 1 directory): prepare for cata |
12:40.07 | *** join/#wowace Silowyi (~silowyi_d@99-5-223-222.lightspeed.snantx.sbcglobal.net) |
12:43.13 | vhaarr | haste: ping |
12:43.25 | Repo | 10autoprofity: 03Grayal * r39 AutoProfitY.lua: prepare for cata |
12:45.23 | haste | vhaarr: pong, kinda |
12:45.26 | Repo | 10bison: 03Grayal * r155 / (2 files in 1 directory): prepare for cata |
12:45.55 | vhaarr | haste: I get an error trying to spawnheader my raid group, saying "Wrong object type for member function" |
12:46.08 | vhaarr | it errors on the :RegisterForClicks("AnyUp") |
12:46.18 | vhaarr | so self isn't a unitframe? |
12:46.38 | haste | sounds odd\ |
12:46.48 | vhaarr | other layouts do the exact same thing |
12:46.50 | haste | also AnyUp is "bugged" in 4.0.1 |
12:47.04 | vhaarr | right, well I tried with AnyDown as well |
12:47.09 | haste | you have to use AnyDown due to an error in SecureGroupHeaders.lua |
12:47.20 | vhaarr | and when I comment that line out, oUF starts spewing errors all over the place |
12:47.33 | vhaarr | 1x oUF-1.5.4\elements\range.lua:18: Usage: UnitIsConnected("unit") |
12:47.33 | vhaarr | oUF-1.5.4\elements\range.lua:18: in function <oUF\elements\range.lua:11> |
12:47.38 | vhaarr | thousands of those |
12:48.50 | vhaarr | haste: http://paste.wowace.com/2796/ |
12:48.53 | haste | you're doing something odd I think |
12:49.09 | vhaarr | oUF_RaidUnitButton1 is present lots of places there |
12:50.33 | haste | sup with that |
12:50.48 | haste | looks like EnableElement is being rqn several timse on it |
12:51.24 | haste | I can't see what your error is out of this tho' |
12:51.49 | vhaarr | http://paste.wowace.com/2797/ |
12:54.01 | haste | calling rGroup:Show() will mess up the visibility filter |
12:54.07 | haste | I think :P |
12:54.23 | vhaarr | without that nothing shows up |
12:54.28 | vhaarr | no errors or anything |
12:54.42 | vhaarr | "raid10,raid25,raid40" |
12:54.43 | haste | your rule is show at raid10, raid20 and raid40 |
12:54.53 | vhaarr | I want it to show in a raid group, no matter what size |
12:54.55 | vhaarr | just "raid"? |
12:54.58 | haste | y |
12:55.21 | haste | I don't see anything that would screw things up tho' |
12:55.22 | vhaarr | okay same error then |
12:55.42 | haste | You have the same header name for all headers |
12:55.53 | vhaarr | aha |
12:55.55 | haste | not user if that screws with some blizzard code, which then screws with oUF |
12:56.02 | haste | fun fact! |
12:56.10 | haste | If you don't give it a name oUF does it for you |
12:56.20 | vhaarr | that wasn't a problem pre-4.0 :P |
12:56.25 | vhaarr | there we go! |
12:56.27 | vhaarr | zomg, thank you |
12:56.27 | haste | oUF_RabbitRaid or something for your frames |
12:57.02 | haste | my naming code should handle your case of spawning as well, except that the first frame won't be named oUF_RabbitRaid1 |
12:57.25 | vhaarr | yeah works fine I just tried passing nil |
12:57.58 | vhaarr | guess I need to hide the blizz raid frames myself |
12:57.59 | haste | let me know if the naming code produces some odd results, it's kinda stupid in the way it works :P |
12:58.06 | vhaarr | will do |
13:00.05 | *** join/#wowace CrazyBenny_ (~s_m@193.165.209.194) |
13:01.12 | haste | It's actually oUF bugging out due to the same name |
13:01.26 | haste | the way I break out of the secure environment is by frame name |
13:01.31 | Fisker | haste |
13:01.33 | Fisker | i hasted |
13:01.38 | Fisker | http://forums.wow-europe.com/thread.html?topicId=15042237441&sid=1#5 <- |
13:01.41 | haste | Fisker, I fisked |
13:02.31 | Fisker | i would've said fiskered but still |
13:05.59 | *** join/#wowace koaschten (~koaschten@193.175.177.226) |
13:06.39 | *** join/#wowace pschriner (~Miranda@xdsl-78-34-209-193.netcologne.de) |
13:09.48 | *** join/#wowace farmbuyer (~farmbuyer@74.83.0.226) |
13:10.26 | Kalroth | hasterade, experience the familiar flavor of mild soap mixed with bubbly bubles. Available at your local drugstore in ½ gallon cans! |
13:11.16 | *** join/#wowace MoonWitch|Mobile (~Kelly@d54C547BE.access.telenet.be) |
13:14.06 | *** join/#wowace Bibi (~Bibi@AVelizy-151-1-85-23.w86-205.abo.wanadoo.fr) |
13:14.09 | *** join/#wowace Bibi (~Bibi@unaffiliated/bibi) |
13:14.09 | *** mode/#wowace [+v Bibi] by ChanServ |
13:25.45 | *** join/#wowace Aeyan (~pancake@cpe-024-163-016-179.triad.res.rr.com) |
13:31.06 | *** join/#wowace koaschten (~koaschten@193.175.177.226) |
13:32.45 | *** join/#wowace profalbert (~profalber@128.131.167.8) |
13:33.58 | *** join/#wowace Baraius (~Adium@150.105.84.5) |
13:43.16 | harl | that latest inline aura's .toc is borked |
13:45.22 | kagaro | morning |
13:48.11 | Sorha | Any idea why questTitle from GetQuestLogTitle(i); would end up null on a german client? o_O |
13:49.21 | *** join/#wowace quiesense (~quiescens@203-217-28-61.perm.iinet.net.au) |
13:53.36 | *** join/#wowace stolenlegacy (~stolenleg@chello084115137250.5.graz.surfer.at) |
13:57.40 | syeren | I need a new square minimap, p3lim is taking 1000 years to finish his. |
13:57.43 | syeren | Any suggestions? |
13:59.22 | *** join/#wowace Megalon (Megalon@d86-32-5-77.cust.tele2.at) |
13:59.47 | *** join/#wowace Lex (~lexlexlex@CPE0040f449aaec-CM000a7369bd4f.cpe.net.cable.rogers.com) |
14:34.45 | *** join/#wowace kollektiv (~kollektiv@unaffiliated/kollektiv) |
14:34.45 | *** join/#wowace Galvin (Galvin@c-24-128-224-84.hsd1.nh.comcast.net) |
14:34.45 | *** join/#wowace arkanes_ (0c19e6d3@python/site-packages/arkanes) |
14:34.45 | *** join/#wowace Slayman (~dejhap08@port-24421.pppoe.wtnet.de) |
14:34.45 | *** join/#wowace Legorol|alt (~legorol@cpc8-sgyl28-2-0-cust43.sgyl.cable.virginmedia.com) |
14:34.45 | *** join/#wowace Odlaw (~ozzy@c-98-245-3-204.hsd1.co.comcast.net) |
14:34.45 | *** join/#wowace Lex (~lexlexlex@CPE0040f449aaec-CM000a7369bd4f.cpe.net.cable.rogers.com) |
14:34.45 | *** join/#wowace Megalon (Megalon@d86-32-5-77.cust.tele2.at) |
14:34.46 | *** join/#wowace stolenlegacy (~stolenleg@chello084115137250.5.graz.surfer.at) |
14:34.46 | *** join/#wowace quiescens (~quiescens@203-217-28-61.perm.iinet.net.au) |
14:34.46 | *** join/#wowace Baraius (~Adium@150.105.84.5) |
14:34.46 | *** join/#wowace profalbert (~profalber@128.131.167.8) |
14:34.46 | *** join/#wowace Bibi (~Bibi@unaffiliated/bibi) |
14:34.46 | *** join/#wowace farmbuyer (~farmbuyer@74.83.0.226) |
14:34.46 | *** join/#wowace DerSchreiner (~Miranda@xdsl-78-34-209-193.netcologne.de) |
14:34.46 | *** join/#wowace Silowyi (~silowyi_d@99-5-223-222.lightspeed.snantx.sbcglobal.net) |
14:34.46 | *** join/#wowace rbarreiros (~rbarreiro@87-196-178-1.net.novis.pt) |
14:34.46 | *** join/#wowace Computerpunk (~Computerp@85.186.122.45) |
14:34.46 | *** join/#wowace Kazie (~Kazie@78.156.121.4) |
14:34.46 | *** join/#wowace mojosdojo (~mojosdojo@p4FEFD7D2.dip.t-dialin.net) |
14:34.46 | *** join/#wowace faCe| (~face@tiliacordata.informatik.uni-bremen.de) |
14:34.46 | *** join/#wowace harl (harl@dslb-088-076-043-225.pools.arcor-ip.net) |
14:34.46 | *** join/#wowace Southy (~nn@78-105-2-213.zone3.bethere.co.uk) |
14:34.46 | *** join/#wowace Skizelli (skizelli@c-76-102-108-254.hsd1.ca.comcast.net) |
14:34.46 | *** join/#wowace Diao (vince@adsl-99-58-31-154.dsl.pltn13.sbcglobal.net) |
14:34.46 | *** join/#wowace arkanes (~arkanes@python/site-packages/arkanes) |
14:34.46 | *** join/#wowace nebula169 (~nebula@c-75-73-235-102.hsd1.mn.comcast.net) |
14:34.46 | *** join/#wowace Vonhinten (~Kiss@c-71-203-110-77.hsd1.fl.comcast.net) |
14:34.46 | *** join/#wowace Caleb| (~caleb@dsl4E5C05C4.pool.t-online.hu) |
14:34.46 | *** join/#wowace Pneumatus^ (~WiN@81.174.255.130) |
14:34.46 | *** join/#wowace vrak (vrak@putsch.kolbu.ws) |
14:34.46 | *** join/#wowace Adirelle|work (~Adirelle@tok69-5-82-235-150-60.fbx.proxad.net) |
14:34.46 | *** join/#wowace Kalroth (~kalroth@mail1.retailplanit.com) |
14:34.46 | *** join/#wowace Vilkku (Vilkku@dsl-tkubrasgw1-fe0bfa00-122.dhcp.inet.fi) |
14:34.46 | *** join/#wowace Elkano (~elkano@WoWUIDev/WoWAce/Elkano) |
14:34.47 | *** join/#wowace Wobin (~quassel@124-149-98-9.dyn.iinet.net.au) |
14:34.47 | *** join/#wowace MoonWitch (~Kelly@d54C547BE.access.telenet.be) |
14:34.47 | *** join/#wowace Kivnel (~Kivnel@aux.jmctech.com.au) |
14:34.47 | *** join/#wowace Olison (olison@fukdruidsgrr.org) |
14:34.47 | *** join/#wowace bien| (~bien@p4FF459AF.dip.t-dialin.net) |
14:34.47 | *** join/#wowace SunTsu (~miyamoto@unaffiliated/suntsu) |
14:34.47 | *** join/#wowace ShadniX (shadow1st@b045.apm.etc.tu-bs.de) |
14:34.47 | *** join/#wowace NeoTron (~neotron@pool-108-17-169-178.sttlwa.fios.verizon.net) |
14:34.47 | *** join/#wowace steev_ (~steev@gentoo/developer/steev) |
14:34.47 | *** join/#wowace Aens|Superiority (~a@69-196-167-66.dsl.teksavvy.com) |
14:34.47 | *** join/#wowace Lulia|Sleep (~BleaS@pool-173-76-192-176.bstnma.fios.verizon.net) |
14:34.47 | *** mode/#wowace [+vvv Bibi Elkano Wobin] by verne.freenode.net |
14:34.47 | *** join/#wowace pompy1 (~Mike@c-76-116-64-179.hsd1.nj.comcast.net) |
14:34.47 | *** join/#wowace Sorha (76d05e52@gateway/web/freenode/ip.118.208.94.82) |
14:34.47 | *** join/#wowace Mirrormn (~Mirrormn@h82.56.91.75.dynamic.ip.windstream.net) |
14:34.47 | *** join/#wowace Jygga (Jygga@unaffiliated/jygga) |
14:34.47 | *** join/#wowace Trellmor (~Trellmor@91-118-56-199.dynamic.adsl-line.inode.at) |
14:34.47 | *** join/#wowace [SW]Dodge`oFF (dodge@ip01.vserver01.remolus.at) |
14:34.47 | *** join/#wowace PProvost (~PProvost@WoWUIDev/WAU/Admin/Pprovost) |
14:34.47 | *** join/#wowace Antiarc (~Antiarc@ip70-190-192-186.ph.ph.cox.net) |
14:34.47 | *** join/#wowace Wizardling (Durandal@ip-118-90-61-87.xdsl.xnet.co.nz) |
14:34.47 | *** join/#wowace Lysithea (Lyset@c-59ad72d5.017-172-73746f34.cust.bredbandsbolaget.se) |
14:34.47 | *** join/#wowace Next96 (Next96@121.129.140.83) |
14:34.47 | *** join/#wowace ThiefMaster (~thief@unaffiliated/thiefmaster) |
14:34.47 | *** join/#wowace Xinhuan (~xinhuan@WoWUIDev/WoWAce/xinhuan) |
14:34.47 | *** join/#wowace Droolio (~drool@87-194-188-170.bethere.co.uk) |
14:34.47 | *** join/#wowace Zyn (~faggotry@h187n4-av-a11.ias.bredband.telia.com) |
14:34.48 | *** join/#wowace Bruners (lasseb@colargol.tihlde.org) |
14:34.48 | *** join/#wowace Codayus (~cody@web154.webfaction.com) |
14:34.48 | *** join/#wowace Dotoff (Dotted@bureaucrat.wowwiki.dk) |
14:34.48 | *** join/#wowace Xtek-Freenode (~Xtek-Free@2607:f0d0:1002:67::2) |
14:34.48 | *** join/#wowace tlund (~tlund@envy.nxs.se) |
14:34.48 | *** join/#wowace wink (fhtagn@unaffiliated/winkiller) |
14:34.48 | *** join/#wowace Lisimba (~Lisimba@s55915088.adsl.wanadoo.nl) |
14:34.48 | *** join/#wowace syeren (~syeren@cpc2-salf5-2-0-cust876.10-2.cable.virginmedia.com) |
14:34.48 | *** join/#wowace leech2k (~leech@66.119.206.225) |
14:34.48 | *** join/#wowace Gagorian (~k@104-172.turkunet.fi) |
14:34.48 | *** join/#wowace spode (spode@213.21.119.83) |
14:34.48 | *** join/#wowace zerix (zerix@ip24-250-250-189.ga.at.cox.net) |
14:34.48 | *** join/#wowace Funkeh` (~funk@WoWUIDev/WoWAce/Ace3/BigWigs/funkeh) |
14:34.48 | *** mode/#wowace [+vvvo PProvost Antiarc Xinhuan Funkeh`] by verne.freenode.net |
14:34.48 | *** join/#wowace Nechckn (Nechckn@WoWUIDev/Norganna/Admin/Nechckn) |
14:34.48 | *** join/#wowace Natch| (~natch@c-e2cde155.25-4-64736c10.cust.bredbandsbolaget.se) |
14:34.48 | *** join/#wowace Kilroo (~Kilroo@cpe-174-111-058-051.triad.res.rr.com) |
14:34.48 | *** join/#wowace ramoz (~ramoz@195.70.183.61) |
14:34.48 | *** join/#wowace asqq (~asq@ool-18bf3099.dyn.optonline.net) |
14:34.48 | *** join/#wowace RaydenUni (~rayden@ip68-5-22-175.oc.oc.cox.net) |
14:34.48 | *** join/#wowace Kaelten (~Kaelten@WoWUIDev/WoWAce/WoWIFA/CurseStaff/kaelten) |
14:34.48 | *** join/#wowace TheDude22 (~joe@24-177-122-255.dhcp.mdsn.wi.charter.com) |
14:34.48 | *** join/#wowace CyberKiLL (~ck@c-98-250-230-36.hsd1.mi.comcast.net) |
14:34.48 | *** join/#wowace Takika (~taki@alkoholista.hu) |
14:34.48 | *** join/#wowace Yivry (~Dave@145.116.21.39) |
14:34.48 | *** join/#wowace Torhal (~callahan@74-141-248-166.dhcp.insightbb.com) |
14:34.48 | *** join/#wowace kagaro (~kagaro@cpe-173-095-131-224.nc.res.rr.com) |
14:34.49 | *** join/#wowace Kody- (~nope@70-36-245-200.dsl.static.sonic.net) |
14:34.49 | *** mode/#wowace [+voov Nechckn Kaelten Torhal Kody-] by verne.freenode.net |
14:34.49 | *** join/#wowace Jedi- (~Dreamer@unaffiliated/jedi-) |
14:34.49 | *** join/#wowace Motig (~Motig@dhcp-077-249-165-250.chello.nl) |
14:34.49 | *** join/#wowace Jerub (~gideon@python/psf/Jerub) |
14:35.09 | *** join/#wowace Sunshine` (~Moonshine@li234-119.members.linode.com) |
14:35.09 | *** mode/#wowace [+o Sunshine`] by verne.freenode.net |
14:35.09 | *** join/#wowace Ackis (~Ackis@WoWUIDev/WoWAce/ARL/Troll/Ackis) |
14:35.09 | *** join/#wowace Shirik (~mpdelbuon@WoWUIDev/WoWIStaff/Norganna/StatisticalEngineer/Shirik) |
14:35.09 | *** join/#wowace DWSR (~DWSR@unaffiliated/dwsr) |
14:35.09 | *** join/#wowace erikd (~aphistic@claymore.novustorm.com) |
14:35.09 | *** join/#wowace Kemayo (~kemayo@adsl-99-72-24-100.dsl.stl2mo.sbcglobal.net) |
14:35.09 | *** join/#wowace mascondante (~kvirc@pool-72-71-111-191.atl01.dsl-w.verizon.net) |
14:35.09 | *** join/#wowace AKX (akx@dsl-tkubrasgw1-fe90f800-13.dhcp.inet.fi) |
14:35.09 | *** join/#wowace ccKep (~Kep@77-21-210-61-dynip.superkabel.de) |
14:35.09 | *** join/#wowace dieck (~dieck@bandbreiter.net) |
14:35.09 | *** join/#wowace nuoHep (~nuohep@89.222.156.36) |
14:35.09 | *** join/#wowace Mikk (~Mikk@WoWUIDev/mikk) |
14:35.09 | *** mode/#wowace [+ovvv Ackis Shirik Kemayo Mikk] by verne.freenode.net |
14:35.09 | *** join/#wowace RLD_osx (~rldempse@71-8-123-7.dhcp.ftwo.tx.charter.com) |
14:35.09 | *** join/#wowace thelibrarian (~thelibrar@adsl-99-148-246-229.dsl.hstntx.sbcglobal.net) |
14:35.09 | *** join/#wowace vithos (vith@unaffiliated/vithos) |
14:35.09 | *** join/#wowace selckin (~selckin@unaffiliated/selckin) |
14:35.10 | *** join/#wowace Archarodim (~Archarodi@lev92-4-88-164-134-95.fbx.proxad.net) |
14:35.10 | *** join/#wowace Cyrez (kvirc@c-69-181-203-45.hsd1.ca.comcast.net) |
14:35.10 | *** join/#wowace Repo (~supybot@68.64.47.56) |
14:35.10 | *** join/#wowace Daegalus (~daegalus@dsl081-057-092.sfo1.dsl.speakeasy.net) |
14:35.10 | *** join/#wowace Random (~Denial@unaffiliated/windaria) |
14:35.10 | *** join/#wowace frontendloader (~queue@207-118-140-152.dyn.centurytel.net) |
14:35.10 | *** join/#wowace Net (~hthieblot@c-71-198-32-135.hsd1.ca.comcast.net) |
14:35.10 | *** join/#wowace Fisker (~o_o@62.61.142.209.generic-hostname.arrownet.dk) |
14:35.10 | *** join/#wowace phyber (phyber@irssi.co.uk) |
14:35.10 | *** join/#wowace Dessa (Dessa@kvirc/staff/kuja) |
14:35.10 | *** join/#wowace Adirelle (~Adirelle@tok69-5-82-235-150-60.fbx.proxad.net) |
14:35.10 | *** join/#wowace Brybry (~DT@ip174-69-138-78.br.br.cox.net) |
14:35.10 | *** join/#wowace Parnic (user@staff.xbins.org) |
14:35.10 | *** join/#wowace durcyn (~durcyn@WoWUIDev/Durcyn) |
14:35.10 | *** join/#wowace dracula (dracula@dhcp-077-249-083-244.chello.nl) |
14:35.10 | *** join/#wowace Talryn (~Talryn@unaffiliated/talryn) |
14:35.10 | *** join/#wowace Axodious (~8q@modemcable106.115-23-96.mc.videotron.ca) |
14:35.10 | *** join/#wowace vhaarr (~folk@WoWUIDev/WoWAce/Rabbit/vhaarr) |
14:35.10 | *** join/#wowace Trela (~Alexia@c-68-62-218-98.hsd1.al.comcast.net) |
14:35.10 | *** join/#wowace mitch0 (~mitch@drvolomdental.hu) |
14:35.10 | *** join/#wowace steev (~steev@gentoo/developer/steev) |
14:35.10 | *** join/#wowace Primer (~daniel@www.ceregatti.org) |
14:35.10 | *** join/#wowace Aikar (~Aikar@wikia/Aikar) |
14:35.10 | *** join/#wowace Baps (~randall@gw1.damocles.com) |
14:35.10 | *** join/#wowace pnorman (~pnorman@d207-6-170-138.bchsia.telus.net) |
14:35.10 | *** join/#wowace Seeker` (~cjo20@unaffiliated/seeker) |
14:35.10 | *** join/#wowace pentium166 (~pentium16@d24-235-229-73.home1.cgocable.net) |
14:35.11 | *** join/#wowace copystring (11794copy@o0o.o0o.o0o.o88-51-51-6o9.co.uk) |
14:35.11 | *** join/#wowace nichdu (~nichdu@nerdcraft.eu) |
14:35.11 | *** join/#wowace silentium (silentium@dslb-088-064-188-088.pools.arcor-ip.net) |
14:35.11 | *** join/#wowace Mythor (~Mythor@duran.fourd.org) |
14:35.11 | *** mode/#wowace [+o vhaarr] by verne.freenode.net |
14:35.11 | *** join/#wowace netcurse (~zamispwne@70-36-245-200.dsl.static.sonic.net) |
14:35.11 | *** join/#wowace Elmoe_ (~elmoe@c-24-17-246-31.hsd1.wa.comcast.net) |
14:35.11 | *** join/#wowace Superfly_ (~superfly@89-vh-2-shost.hostoffice.hu) |
14:35.11 | *** join/#wowace Elmoe (~elmoe@c-24-17-246-31.hsd1.wa.comcast.net) |
14:35.11 | *** join/#wowace felipe` (~felipe@my.nada.kth.se) |
14:35.11 | *** join/#wowace renchap (~renchap@mara.renchap.com) |
14:35.11 | *** join/#wowace sbu (~sb@80.67.20.227) |
14:35.11 | *** join/#wowace Pucmel (~pucmel@dwarf.dkm.cz) |
14:35.11 | *** join/#wowace Rokiyo (~Rokiyo@ppp118-208-139-176.lns20.bne1.internode.on.net) |
14:35.11 | *** join/#wowace ulic (~ulic@75-171-209-103.hlrn.qwest.net) |
14:35.11 | *** join/#wowace gix (~gix@m18s09.vlinux.de) |
14:35.11 | *** join/#wowace Grum (~grum@codebase2.xs4all.nl) |
14:35.11 | *** join/#wowace jnwhiteh (~jnwhiteh@WoWUIDev/WoWI/Featured/Dongle/cladhaire) |
14:35.11 | *** join/#wowace dafire (~dafire@h1330469.stratoserver.net) |
14:35.11 | *** join/#wowace Chosi (osxchosi@unaffiliated/chosi) |
14:35.11 | *** join/#wowace orofar (thbraem@igwe11.vub.ac.be) |
14:35.11 | *** join/#wowace Zarhan (~kjetil@156.64.202.84.customer.cdi.no) |
14:35.11 | *** join/#wowace rapmoc (rapmoc@it-funzocker.com) |
14:35.11 | *** join/#wowace [Ammo] (~wouter@WoWUIDev/WowAce/ammo) |
14:35.11 | *** join/#wowace Shefki (~breser@macshare.com) |
14:35.11 | *** join/#wowace genetik- (genetik@elite.cabbits.com) |
14:35.11 | *** join/#wowace asmodai (asmodai@dhammapada.xs4all.nl) |
14:35.12 | *** join/#wowace Zarnivoop (~stmo@custchecker.rixport80.se) |
14:35.12 | *** join/#wowace WowBot (WowBot@armory.bot.nu) |
14:35.12 | *** join/#wowace dlat (dlat@eris.sickos.org) |
14:35.12 | *** join/#wowace Gnarfoz (smallbrain@WoWUIDev/WowAce/Gnarfoz) |
14:35.12 | *** join/#wowace starlon (~starlon@melody.lyrical.net) |
14:35.12 | *** join/#wowace Arrowmaster (arrow@WoWUIDev/WoWAce/ResponsibleForEverythingAndNothing/Arrowmaster) |
14:35.12 | *** join/#wowace sztanpet (sztanpet@sztanpet.me) |
14:35.12 | *** join/#wowace NightHawkTheSane (~jonathan@li83-182.members.linode.com) |
14:35.12 | *** join/#wowace ^Tempest (tempest@devnull.daug.net) |
14:35.12 | *** join/#wowace Shadowed (~Shadowed@li157-188.members.linode.com) |
14:35.12 | *** join/#wowace ajmitch (~ajmitch@ubuntu/member/ajmitch) |
14:35.12 | *** join/#wowace Niv (~niv@gw-105.extranet.sea01.isilon.com) |
14:35.12 | *** join/#wowace krka (krka@bronzon.pi.se) |
14:35.12 | *** join/#wowace haste (haste@hirano.ixo.no) |
14:35.12 | *** mode/#wowace [+vvo netcurse jnwhiteh [Ammo]] by verne.freenode.net |
14:38.06 | Repo | 10scorchio2: 03Morsker * r92 / (6 files in 3 directories): some refactoring of SVs format |
14:38.07 | Repo | also packaging more new localizations |
14:38.34 | Parnic | lua> function ptr(test) test = test + 1 end local a=1 print(a) ptr(a) print(a) |
14:38.37 | lua_bot | Parnic: 1, 1 |
14:39.17 | mitch0 | passbyvalueftw |
14:39.18 | Parnic | just verifying :) |
14:41.18 | Rokiyo | lua> function munge(test) test = test .. "bar" end local a="foo" print(a) munge(a) print(a) |
14:41.18 | lua_bot | Rokiyo: foo, foo |
14:41.26 | Rokiyo | right, same for strings then |
14:41.30 | thelibrarian | strings and numbers are both immutable |
14:41.48 | thelibrarian | .. generates a new string |
14:41.56 | Repo | 10adibags: 03Adirelle 07master * v1.2-beta-2-4-gaf309ca widgets/BagSlots.lua: [+2 commits] |
14:41.57 | Repo | af309ca: Bag slots: one can right click on a bag to try to empty it. |
14:42.10 | Repo | aca3aff: Bag slots: display the number of items in each bag. |
14:42.58 | Rokiyo | ok, how about tables? will they behave the same? |
14:43.12 | thelibrarian | try it with a table, I think you'll find the results quite different :) |
14:44.04 | thelibrarian | technically, the strings and numbers are being passed by reference as well (with test being bound to whatever reference a is bound to) |
14:44.12 | thelibrarian | but strings and numbers can't be modified so... |
14:45.15 | Rokiyo | lua> function addBar(table) table.insert(table, "bar") end local a={"foo"} print(table.concat(a)) addBar(a) print(table.concat(a)) |
14:45.15 | lua_bot | Rokiyo: foo, luabot:1: attempt to call field 'insert' (a nil value) |
14:45.18 | Rokiyo | waah |
14:45.40 | thelibrarian | try it with a var name other than "table" |
14:45.49 | *** join/#wowace mangeg (~sfg@c83-255-144-210.bredband.comhem.se) |
14:45.49 | Rokiyo | oh, lol |
14:46.00 | Rokiyo | lua> function addBar(t) table.insert(t, "bar") end local a={"foo"} print(table.concat(a)) addBar(a) print(table.concat(a)) |
14:46.00 | lua_bot | Rokiyo: foo, foobar |
14:46.02 | *** join/#wowace Funkeh` (~funk@82.111.112.176) |
14:46.02 | *** join/#wowace Funkeh` (~funk@WoWUIDev/WoWAce/Ace3/BigWigs/funkeh) |
14:46.02 | *** mode/#wowace [+o Funkeh`] by ChanServ |
14:46.11 | Rokiyo | there we go |
14:46.33 | thelibrarian | however |
14:46.42 | Adirelle|work | Elkano, you there ? |
14:46.54 | Elkano | yes, no, maybe |
14:47.01 | Adirelle|work | http://forums.wowace.com/showpost.php?p=310614&postcount=100 |
14:47.01 | thelibrarian | lua> function replaceTable(t) t = { "test2" } end local a = { "foo" } print(table.concat(a)) replaceTable(a) print(table.concat(a)) |
14:47.01 | lua_bot | thelibrarian: foo, foo |
14:47.05 | Parnic | Elkano, do you like me ? circle one |
14:47.19 | Elkano | <Parnic> Elkano, do you like me ? circle (one) |
14:47.25 | Parnic | nice |
14:47.57 | Elkano | Adirelle|work :) |
14:48.22 | Elkano | no back to getting that damn custom Hadoop file parser working :/ |
14:48.30 | Rokiyo | funny how lua is harder to read when it's all on one line :P |
14:48.42 | Rokiyo | hrmm |
14:48.44 | Rokiyo | ponders |
14:48.54 | thelibrarian | nah, it just trains you to learn how the parser works |
14:48.58 | Adirelle|work | Elkano, note this haven't destroyed any of my item yet, but I wouldn't try to click anywhere will it's running :o |
14:49.09 | syeren | How do you hide the new raid frames? I use Pitbull and this is the first time I have seen them. |
14:49.16 | Parnic | 't' is being told to point to a new table. 'a' still points to the old table |
14:50.09 | mitch0 | in other words, table references are passed by value :P |
14:50.11 | Stanzilla | syeren: pitbull modules hide blizzard - check raid |
14:50.19 | thelibrarian | right, in much the same way that test = "test" .. bar changes test to point to a new string |
14:50.34 | thelibrarian | test = test .. "bar" |
14:50.34 | thelibrarian | rather |
14:50.38 | syeren | Thank you, Stanzilla. |
14:50.40 | Rokiyo | so in some cases modify(a) is fine, and sometimes I need to call a = modify(a) |
14:50.44 | Rokiyo | waah |
14:50.55 | Parnic | in other words, mitch smells funny |
14:51.12 | mitch0 | I'll take a shower soon. xmas's coming |
14:51.17 | thelibrarian | all variables in lua are references |
14:51.36 | thelibrarian | = rebinds the reference to something else |
14:51.39 | Rokiyo | but immutables such as strings & numbers don't count as variables? |
14:51.58 | thelibrarian | no, they do |
14:52.08 | thelibrarian | but they're read-only |
14:52.09 | Rokiyo | derp, wait, the reference points to a string/number |
14:52.13 | Rokiyo | that was a silly question |
14:52.13 | thelibrarian | "test" will always be "test" |
14:52.19 | thelibrarian | if you append "bar", it's a new string |
14:52.28 | thelibrarian | it doesn't mutate the original |
14:52.46 | thelibrarian | so string variables are pointers to those read-only strings |
14:52.57 | thelibrarian | in theory anyway, under the hood there are some optimizations :) |
14:53.01 | nebula169 | syeren: if you want the flyout, just hit the arrow and click hide |
14:53.20 | nebula169 | pitbull hides the whole thing |
14:54.45 | Rokiyo | alright, so... if my variable is pointing at a frame object... I can treat it like a table, since it's mutable? |
14:54.55 | thelibrarian | right |
14:55.04 | thelibrarian | frames are extenal objects, but they are passed by refrence as well |
14:55.19 | Rokiyo | ie myFrame = modMyFrame(myFrame) is unnecessary? |
14:55.24 | thelibrarian | correct |
14:55.49 | Rokiyo | right, I think that about covers my questions for now |
14:55.52 | Rokiyo | thank you |
14:56.03 | Parnic | unless modMyFrame is setting "myFrame" to something explicitly via = |
14:56.12 | thelibrarian | ^ |
14:56.28 | thelibrarian | just remember that = changes what a variable points to, and you'll be good |
14:56.45 | thelibrarian | and function arguments are basically locals that are copies of the pointers |
14:57.06 | Rokiyo | ahh... so newFrame = replaceFrame(newFrame) is necessary? |
14:57.18 | Parnic | right |
14:57.21 | thelibrarian | if replaceFrame creates an entirely new frame |
14:57.31 | thelibrarian | rather than just changing an existing one |
14:58.19 | Rokiyo | heh... so unless I'm completely sure about the behaviour of the function I'm calling, it's safer to always include the "myFrame = " part |
14:59.20 | thelibrarian | well, if you're not completely sure about the behavior of the function, you can't guarantee that it won't return nil or something entirely random :) |
14:59.21 | mitch0 | unless of course that functions returns something completely unrelated to frame, then you just b0rked your frame. so in all cases make sure you understand what the function does :) |
14:59.44 | Rokiyo | lol |
14:59.48 | Rokiyo | yeah fair enough |
14:59.51 | nebula169 | what happens in function stays in function, you don't want to know about that stuff |
15:00.15 | Rokiyo | i guess this pretty much boils down to "know what you're doing before you do it" |
15:00.20 | arkanes_ | in this analogy return values are lik STDs |
15:00.31 | Rokiyo | wat? O.O |
15:00.50 | arkanes_ | and side effects are like... unexplainable pregnancies? I guess? |
15:00.51 | nebula169 | lol |
15:00.54 | Parnic | ladies and gentlemen: arkanes_! |
15:01.04 | Rokiyo | bad analogies are like leaky screwdrivers |
15:01.08 | nebula169 | working as intented arkanes |
15:01.12 | arkanes_ | see, this is why you should use functional programming, guys |
15:01.13 | nebula169 | intended, even |
15:01.29 | arkanes_ | otherwise your wife gets pregnant and your bits fall off |
15:01.45 | farmbuyer | "Finding the right analogy is as difficult as... as..." *inarticulate grasping motion* |
15:01.54 | thelibrarian | you can screw up even in functional programming, especially if you're not careful with recursion :p |
15:02.03 | thelibrarian | stack overflows are like... an all you can eat buffet? |
15:02.15 | Parnic | quick, let's all start discussing whether tabs or spaces are better. i vote tabs. go. |
15:02.30 | thelibrarian | tabs+spaces. :vim:set sts=4 sw=4: |
15:02.34 | nebula169 | but how big are your tabs, parnic? |
15:02.50 | Parnic | nebula169: that's the beauty: it doesn't matter! your tabs can be whatever you prefer and mine can be what i prefer |
15:02.55 | Rokiyo | i'm overwhelmingly indifferent on the tabs vs spaces argument |
15:02.58 | Parnic | i stick with 4 spaces-long tabs :P |
15:03.01 | Rokiyo | as long as my code lines up right, i'm happy |
15:03.20 | Parnic | rokiyo: but if you use a mix it might not, depending on your ide ;) |
15:03.35 | nebula169 | i've used two spaces because my first boss yelled at me to do that and it just kind of stuck |
15:03.40 | *** join/#wowace Nechckn (Nechckn@WoWUIDev/Norganna/Admin/Nechckn) |
15:03.40 | arkanes_ | the only important thing is to not mix, because that is irritating |
15:03.40 | *** mode/#wowace [+v Nechckn] by ChanServ |
15:03.49 | Parnic | exactly |
15:03.52 | thelibrarian | I always leave hard tab size set to 8, otherwise it may look funny when exchanging code with others |
15:03.58 | thelibrarian | but soft tab at 4 spaces |
15:04.06 | Rokiyo | oh, I prefer sticking to one or the other within a project, but if I'm working on project that uses only tabs and another that only uses spaces, I'm a happy camper |
15:04.10 | Rokiyo | I don't like mixing them |
15:04.23 | arkanes_ | I configure my editor to do what it needs to do and always press the tab key |
15:04.34 | Rokiyo | lol same here arkanes :P |
15:04.42 | Rokiyo | which is probably why I don't care |
15:04.42 | arkanes_ | sometimes this bites me when I'm setting up a new machine and I forget to change the defaults |
15:04.43 | Parnic | this conversational diversion worked great |
15:04.58 | arkanes_ | Parnic: well done |
15:05.45 | Rokiyo | to be honest I had completely lost track of what the last conversation was actually about |
15:05.59 | Rokiyo | something about getting a screwdriver pregnant |
15:06.02 | Parnic | arkanes_'s std's |
15:06.02 | Rokiyo | i dunno |
15:06.12 | arkanes_ | locality of reference |
15:06.19 | Parnic | functional programming |
15:06.27 | arkanes_ | babies |
15:06.32 | arkanes_ | whats wrong with babies, Parnic |
15:06.34 | Parnic | peanut butter on monkeys |
15:06.37 | arkanes_ | are you some sort of baby hating nazi? |
15:06.51 | Rokiyo | ooh, yes... functional programming... vs OO |
15:06.53 | Parnic | i've never said i'm not, arkanes_ |
15:06.59 | Rokiyo | why is OO "bad" in lua? |
15:06.59 | arkanes_ | with your baby-murder simulator video game |
15:07.03 | arkanes_ | Rokiyo: it's not |
15:07.31 | arkanes_ | also you can't do functional programming in any serious way in lua, especially not in wow-lua |
15:07.41 | Parnic | i'm always serious |
15:07.50 | Rokiyo | heh... the people who were in here like 11 hours ago were all like "lua OO is evil, kill it with fire" (i'm paraphrasing just a wee bit) |
15:08.10 | arkanes_ | Rokiyo: well, its annoying, because you have to roll your own object system and everyones is a little different |
15:08.17 | arkanes_ | and of course nobody likes the one that anyone else wrote |
15:08.22 | Rokiyo | lol |
15:08.25 | Rokiyo | ofcourse |
15:08.45 | SunTsu | arkanes_: so you say it's not bad but quite not usable? ;) |
15:08.58 | arkanes_ | but the basic, underlying, important principle of OO is that you associate data with functions that act on that data |
15:08.58 | thelibrarian | it's kind of like javascript OO. You can do it, but it's not pretty. |
15:09.03 | Rokiyo | ok, so if lua isn't really functional... and isn't really OO.... what is it? |
15:09.06 | arkanes_ | and lua does have that built in, and everyone uses it |
15:09.09 | arkanes_ | Rokiyo: procedural |
15:09.10 | thelibrarian | procedural, mostly |
15:09.15 | thelibrarian | bah too slow :) |
15:09.49 | thelibrarian | loads up Mavis Beacon Teaches Typing. |
15:09.50 | Rokiyo | wow, there's a serious gap in my education... until now I thought procedural and functional were practically synonymous |
15:09.59 | arkanes_ | Rokiyo: not at all |
15:10.14 | arkanes_ | Rokiyo: I actually was mis-taught the same thing, by perl people |
15:10.21 | thelibrarian | functional and procedural are almost polar opposites |
15:10.24 | Rokiyo | i learned OO in a school... and everything that wasn't OO kinda got dumped into the same big bucket of "don't go there" |
15:10.26 | Parnic | http://en.wikipedia.org/wiki/Procedural_programming#Comparison_with_functional_programming |
15:10.29 | arkanes_ | who basically said that "functional" programming was anything that had first-class fucntions |
15:10.41 | Rokiyo | ah, yeah I taught by java people |
15:10.50 | arkanes_ | yeah thats not really the point |
15:10.55 | Rokiyo | s/I/I was/ |
15:11.05 | arkanes_ | in functional programming, the point is that you use function in the mathematical sese |
15:11.13 | thelibrarian | i.e. no side effects |
15:11.16 | arkanes_ | which has a lot of consequences for the way you compose things and manage state |
15:11.17 | thelibrarian | no mutable state |
15:11.17 | DerSchreiner | I learned Gopher first in University... |
15:11.44 | thelibrarian | all state exists as the variables that are passed to and returned from functions |
15:12.17 | arkanes_ | where as in a procedural language (especially the real procedural-only ones from the 70s), all state is global and procedures all mutate the global state |
15:12.31 | Rokiyo | ahh |
15:12.39 | arkanes_ | once upon a time, languages actually differentiated between functions, which could return values, and procedures, which couldn;t |
15:12.47 | Rokiyo | and that's where lua with it's massive _G table fits in |
15:12.55 | arkanes_ | exactly |
15:12.56 | thelibrarian | some still do |
15:13.00 | thelibrarian | people still use visual basic... |
15:13.11 | thelibrarian | shudders |
15:13.19 | Parnic | Dim ! |
15:13.35 | Rokiyo | while we're touching on semantics... what's a method? as compared to a function or procedure? |
15:13.48 | arkanes_ | Rokiyo: a function which is associated with an object |
15:13.58 | thelibrarian | I never quite got the use of get/setglobal and later _G so often in wow. if it's global, why not just use it directly? name conflicts with locals? |
15:14.08 | Rokiyo | ahh |
15:14.12 | Parnic | thelibrarian: to be explicit, i think |
15:14.47 | arkanes_ | Rokiyo: well, technically, it can also be a procedure which is associated with an object, because methods often operate by side effect |
15:14.57 | arkanes_ | the difference is that they mutate *local* state, rather than global |
15:15.13 | thelibrarian | lua is a bit more lax than some languages about what it consiers a method |
15:15.28 | thelibrarian | you can assign any function and if you call it as a method lua will stick an implicit "self" as the first argument |
15:15.47 | Rokiyo | the : notation |
15:15.48 | arkanes_ | it's one of the thing that mildly irritates me |
15:16.02 | arkanes_ | methods aren't a real thing, but a calling convention |
15:16.18 | farmbuyer | thelibrarian: the points of _G are that, because it's a table, (1) you can compose variable names as strings and then access what the name refers to, and (2) setting metamethods on _G let you do some fantastically useful things |
15:16.28 | arkanes_ | which is why you have to wrap closures around your methods when you pass them to something that wants a function and so on |
15:16.50 | nebula169 | or you can just use . to call the function |
15:17.00 | arkanes_ | nebula169: the caller has to know to pass self then |
15:17.00 | thelibrarian | farmbuyer: I'd be afraid to set metamethods on _G in wow-lua since there's so much random crap in blizzard's code that uses globals :) |
15:17.08 | nebula169 | indeed it does |
15:17.12 | arkanes_ | nebula169: in all cases, the caller has to know if its a method or a regular function they're dealing with |
15:17.26 | farmbuyer | in wow-lua, sure, but the context (seems to be) regular lua :-) |
15:17.53 | arkanes_ | as a counterexample, in python while methods are defined as just functions, just like in lua, the lookup mechanism automatically creates closures over self for you |
15:17.55 | farmbuyer | I've always wanted to make an arena team named "/run wipe(_G)" |
15:18.23 | arkanes_ | you could probably do that in lua with a metatable, but thats one of those things that makes people yell about how horrible lua OO is |
15:18.38 | DerSchreiner | http://xkcd.com/327/ |
15:18.49 | Rokiyo | I have to admit, i haven't yet fully grasped the concept of a closure... Is it more than just an anonymous function? |
15:18.49 | farmbuyer | and for the new coders in the audience, don't type that name into the game, for f*ck's sake |
15:19.09 | thelibrarian | meh, /console reloadui fixes it :p |
15:19.15 | arkanes_ | Rokiyo: unrelated to anonymous functions entirely, except that people often use anonymous functions to create closures |
15:19.48 | arkanes_ | Rokiyo: a closure is a function that carries local state along with it. They're a fundamental compsci concept that can be generalized to objects |
15:20.03 | arkanes_ | in some languages, the object system is made entirely out of closures |
15:20.47 | thelibrarian | at least lua has closures. java always annoyed me with the whole having to define an anonymous inner class with a method just to get one |
15:20.48 | Rokiyo | carries local state along with it? as in locally created state isn't lost when the function returns? |
15:21.09 | arkanes_ | thelibrarian: right, the clever thing is that you can also build closures out of objects :P |
15:21.16 | arkanes_ | Rokiyo: right |
15:21.37 | arkanes_ | Rokiyo: like in lua, inside the body of a function, you can create a function that references variables in the enclosing scope |
15:21.38 | Rokiyo | do local x function() end is a closure then? |
15:21.56 | Rokiyo | s/end/end end/ |
15:21.58 | arkanes_ | no, because it doesn't use any free variables |
15:22.36 | farmbuyer | thelibrarian: actually, if _G is wiped, there's no more slash handler. Even if you could execute a reloadui, savedvars are written out before being loaded back in, and all the savedvars just got nil'd out.. |
15:22.36 | arkanes_ | local function foo(x) do return function() return x+10 end end |
15:23.12 | thelibrarian | will it write out a savedvar if it doesn't exist? it'll be nil rather than an empty table |
15:23.30 | arkanes_ | Rokiyo: if you return the created function outside of the enclosing one, it carries those references with it (they're called free variables) |
15:23.33 | thelibrarian | but then again maybe it would teach people to back up their savedvars :p |
15:23.35 | farmbuyer | yep, it writes an explicit "foo = nil" to the savedvar file |
15:23.39 | arkanes_ | Rokiyo: and thats how it's different than just passing argyuments |
15:23.43 | Rokiyo | ok so the inner function is considered a closer because it references the x passed into the outer function? |
15:23.49 | farmbuyer | it'd actually be safer to NOT do a reload at that point |
15:23.52 | Rokiyo | ohh |
15:23.56 | Rokiyo | it's returning the inner function |
15:23.57 | thelibrarian | that's when I "alt-f4" and tell my savedver sync to go the opposite direction |
15:24.08 | Rokiyo | and modding the local x |
15:24.18 | arkanes_ | Rokiyo: no it doesn't modify x |
15:24.24 | farmbuyer | but because there's no more UI, I don't think you'd even be able to hit escape or get a chatbox open, alt-f4 is about the only option |
15:24.45 | arkanes_ | Rokiyo: you call foo with a number, say 5, and you get back a function that returns whatever you passed into foo, plus 10 |
15:24.51 | Slayman | a 10year old gave birth in spain, if yu think about it for a minute it's quite ingenius. if you are 30 your kid has moved out |
15:25.27 | arkanes_ | Slayman: youngest recorded mother was.. 5, I think |
15:25.30 | arkanes_ | maybe 6 |
15:25.47 | Slayman | now that is kinda disturbing |
15:25.56 | arkanes_ | but 10 is fine? :P |
15:26.10 | Slayman | perfectly! ;P |
15:26.11 | arkanes_ | but yes I do agree |
15:26.43 | Rokiyo | so in this example, the returned function always returns 15 every time I call it, because I originally pass 5 into foo? |
15:26.49 | arkanes_ | Rokiyo: right |
15:26.56 | *** join/#wowace Mihau (~asmith@69.73.16.202) |
15:27.11 | Rokiyo | if I later recall foo with 10, what happens to the function I got back the first time around? |
15:27.16 | arkanes_ | nothing |
15:27.19 | thelibrarian | it still exists |
15:27.21 | Rokiyo | it continues to return 15? |
15:27.24 | thelibrarian | bound to whatever name you assigned it |
15:27.27 | arkanes_ | yes |
15:27.38 | Rokiyo | OH |
15:27.53 | Rokiyo | is this why returning closures on update is really really bad? |
15:27.57 | farmbuyer | you've made a function factory, churning out tiny functions |
15:27.58 | arkanes_ | however, if you didn't pass in 5, but instead you passed in a table |
15:28.14 | arkanes_ | then changes to that table would be visible to all the functions you created |
15:28.46 | arkanes_ | you can sort of think as an object who's attributes are the local variables of its enclosing scope |
15:28.55 | arkanes_ | "think of a closure as" |
15:29.06 | arkanes_ | which is exactly why you can create object systems with closures and closure systems with objects |
15:29.47 | Rokiyo | the function factory line really helped there btw, java is big on it's factory methods, so it's relating back to something I do understand |
15:30.03 | arkanes_ | there are some counter intuitive effects |
15:30.17 | arkanes_ | like if you close over a loop index |
15:30.27 | Rokiyo | ah, so closures still have the same pass by value/pass by reference complications as any other function |
15:30.54 | farmbuyer | functions is functions, no matter the scope in which they're created |
15:30.59 | arkanes_ | luas pass by object reference, same as python or java, I beleive |
15:31.19 | arkanes_ | in fact I'm pretty sure that it's binding semantics are exactly identitical to pythons |
15:31.24 | Rokiyo | unless we're talking about strings or numbers apparently, in which case they pass by value |
15:31.40 | arkanes_ | they're immutable so you can't tell the difference |
15:31.45 | selckin | in java you only have pass by value |
15:31.55 | Rokiyo | yup |
15:31.56 | farmbuyer | enh... in Lua they're all references, but those are read-only |
15:31.58 | arkanes_ | no |
15:32.07 | arkanes_ | java is pass by object reference |
15:32.16 | Rokiyo | wait, isn't C++ that's all pass by value? |
15:32.27 | arkanes_ | I don't want to get too far into this, because it's essentially an argument over definitions and semantics |
15:32.30 | Rokiyo | or C... something... |
15:32.33 | selckin | object references are passed by value. |
15:32.34 | arkanes_ | Rokiyo: C is pass by value |
15:32.37 | arkanes_ | selckin: correct |
15:32.37 | selckin | there is no pass by reference |
15:32.38 | farmbuyer | what arkanes said |
15:32.44 | selckin | arkanes_: your wording is comfusing |
15:33.03 | arkanes_ | selckin: there are more than 2 possible types of passing convention |
15:33.17 | arkanes_ | selckin: what Java, and python, and lua all use is something called "pass by name" or "pass by object reference" |
15:33.22 | farmbuyer | C and C++ you have to specify which you want; there's a very fine line between "implicit pass by reference" and "passing a copy (by value) of a reference" |
15:33.50 | selckin | arkanes_: no pass by value. |
15:33.53 | arkanes_ | selckin: the name was coined by Liskov in the 70s to define the semantics of Self |
15:34.13 | selckin | it's just that every variable to and object you have is a pointer |
15:34.17 | selckin | which are passed by value |
15:34.22 | arkanes_ | selckin: right |
15:34.32 | thelibrarian | arkanes_: was afk, but yes, lua's binding semantics are the same as python's |
15:34.36 | farmbuyer | I think we're all in violent agreement here. :-) |
15:34.39 | arkanes_ | selckin: and under that definition pass by vaue is the only calling convention that exists |
15:34.44 | farmbuyer | names are slippery |
15:34.47 | arkanes_ | this is why I hate this argument |
15:34.49 | selckin | we only disagree on the terminology, but i still say yours is more confusing |
15:34.54 | arkanes_ | everyone knows how stuff works |
15:35.06 | arkanes_ | I don't think that pass by value in the sense that Java people use it means anything |
15:35.19 | arkanes_ | because by that definition there is nothing which is *not* pass by value |
15:35.42 | arkanes_ | C is pass by value in the traditional sense, where pass by value means pass by copy |
15:35.51 | selckin | c++ has explicit pass by reference |
15:35.58 | farmbuyer | Rokiyo: if you really want to be careful about how this works in practice, get one of those 2'-by-3' whiteboards, or a sheet of paper, and draw box-and-line diagrams of memory blocks. |
15:36.01 | arkanes_ | if you pass a struct, rather than a pointer to a struct, you get a copy of the struct |
15:36.12 | arkanes_ | selckin: and how is the reference passed |
15:36.51 | selckin | arkanes_: undefined |
15:37.06 | selckin | arkanes_: the diffrence is that it works with primitives |
15:37.17 | arkanes_ | selckin: right |
15:37.32 | arkanes_ | selckin: and again, that is way in which C is not like Java |
15:37.33 | Torhal | arkanes_: "everyone knows how stuff works" <-- especially AddOn users. *nods sagely* |
15:37.43 | farmbuyer | C++ reference? depends on the implementation, but behind the scenes it's typically a pointer. It's an implementation detail not visible to the user. (Why yes, I *did* write compilers for a living, the scars are still visible.) |
15:38.19 | arkanes_ | selckin: the whole "java is pass by value" think substatially post-dates all the people who actually thought about and coined these terms, and I don't think it leads to useful understanding |
15:38.53 | Rokiyo | for the record I'm still here and paying attention, i'm just lacking anything meaningful to contribute |
15:38.57 | selckin | arkanes_: if you include pass by reference in the definition, people will start to think you can do function(Foo foo) { foo = bar }; // foo chaged outside of the function |
15:38.59 | arkanes_ | C and Java behave in substantially different ways. Giving them both the same name is not useful |
15:39.00 | Rokiyo | s/for the record I'm still here and paying attention, i'm just lacking anything meaningful to contribute/lol |
15:39.10 | arkanes_ | selckin: thats why I don't say pass by reference |
15:39.14 | Rokiyo | d'oh, i keep forgetting the trailing slash |
15:39.28 | selckin | arkanes_: you should say pass by value. which is clear in every way |
15:39.33 | farmbuyer | Rokiyo: occasionally saying "I like cheese" is always good in any conversation, regardless of topic |
15:39.34 | arkanes_ | selckin: it isn't |
15:39.43 | arkanes_ | selckin: if it's pass by value, why can't I copy |
15:39.44 | Rokiyo | i love lamp |
15:39.46 | selckin | anyway, we'll never agree, i have to get back to work |
15:40.02 | *** join/#wowace MindWorX` (~Nikolaj.M@188.176.197.82) |
15:40.31 | thelibrarian | when C programmers see "pass by value" ,they'll assume that passing a table creates a copy of the table |
15:40.36 | arkanes_ | indeed |
15:40.43 | arkanes_ | if Java is pass by value, we have to call C something different |
15:40.46 | arkanes_ | like "pass by copy" |
15:41.05 | arkanes_ | which would be fine except that the pass by value terminology already existed |
15:41.09 | Torhal | Rokiyo: http://www.snorgtees.com/i-love-lamp |
15:41.26 | Rokiyo | amagad |
15:41.28 | Rokiyo | win |
15:41.32 | arkanes_ | and so did "pass by name", which is what Java does, but for some reason nobody learns about Liskov in school anymore |
15:45.15 | thelibrarian | arkanes_: I've heard "pass by name" to mean something different, where you can pass an expression into a function and it doesn't get evaluated until you use it |
15:45.41 | arkanes_ | thelibrarian: yeah thats actually why I prefer pass by object reference |
15:45.49 | thelibrarian | I think java and lua are both "pass by reference", the big difference is that java has mutable primitive types whereas lua doesn't |
15:46.03 | *** join/#wowace Fisker (~o_o@82.103.139.67) |
15:46.07 | arkanes_ | thelibrarian: the origin of pass by name (in the context I was using) is that the name is rebound |
15:46.29 | arkanes_ | well the whole issue is that people don't agree on what these terms actually mean |
15:46.38 | thelibrarian | can't argue with that :) |
15:46.51 | arkanes_ | classically, though, pass by reference means that the reference itself has value and can be rebound |
15:47.11 | quiescens | o.o |
15:47.12 | thelibrarian | C++ is the only language I know off offhand that can do that |
15:47.16 | arkanes_ | which you can do with C++ references and explicitly with C pointers, but not with lua or java or python |
15:47.52 | thelibrarian | I don't know if I'd count C pointers, since you're explicitly creating a pointer and passing that by value, rather than anything the language does for you |
15:48.05 | arkanes_ | yes pointers aren't a language mechanism of course |
15:48.12 | arkanes_ | but they're an implementation of the technique |
15:48.28 | arkanes_ | you can't implement that kind of reference copying in any of those 3 languages either |
15:48.52 | krka | not sure what you mean by java having mutable primitives |
15:49.20 | thelibrarian | a java primitive follows different rules than objects do |
15:49.31 | krka | it works pretty much like lua |
15:49.54 | krka | i can't see i've found much difference at all between lua and java variables/values for function calls |
15:49.57 | *** join/#wowace EthanCentaurai (~ethan@92.28.251.42) |
15:50.05 | *** join/#wowace RatSkin (~ratskin@ratskin.nomaam.hu) |
15:50.35 | krka | int x = 3; <-- the variable is mutable, the value is not |
15:50.42 | krka | local x = 3; <-- the variable is mutable, the value is not |
15:51.40 | krka | the only primitive mutable type in java is arrays, such as int[], but lua has tables, which is also a primitive mutable type |
15:51.59 | *** join/#wowace LexSfX (~lexlexlex@CPE0040f449aaec-CM000a7369bd4f.cpe.net.cable.rogers.com) |
15:52.04 | *** join/#wowace Monolit (~postid08@89.112.4.92) |
15:52.12 | arkanes_ | I misspoke with some of my naming earlier |
15:52.32 | arkanes_ | anyway, here's how liskov defines *her* terms: http://users.sdsc.edu/~ludaesch/CSE130/ln5.html |
15:53.12 | arkanes_ | woops wrong link |
15:53.21 | arkanes_ | http://www.lcs.mit.edu/publications/pubs/pdf/MIT-LCS-TR-225.pdf |
15:58.33 | *** join/#wowace nuoHep (~nuohep@89.222.156.36) |
15:59.45 | *** join/#wowace pschriner (~Miranda@xdsl-89-0-142-115.netcologne.de) |
16:02.53 | *** join/#wowace Flowyk (Flowy@91.148.3.223) |
16:03.49 | Flowyk | is there way to get AceConfig tree from AceGUI UI? |
16:06.55 | farmbuyer | there's a AceConfigRegistry:GetOptionsTable(), but you also have to tell it what kind of UI you're using, and something to do with who's calling it. |
16:07.16 | farmbuyer | And the return value is itself a function which returns the options table, or something like that. |
16:07.19 | *** join/#wowace evl (~evl@c85-196-101-98.static.sdsl.no) |
16:07.19 | *** join/#wowace evl (~evl@unaffiliated/evl) |
16:07.30 | farmbuyer | that's all I remember offhand |
16:07.56 | Flowyk | I have code that creates my UI ... using AceGUI |
16:08.11 | Flowyk | is there way to get from there the "tree" for AceConfig? |
16:08.42 | Shefki | To be honest you're not making a whole lot of sense. |
16:08.57 | nevcairiel | he never is, don't mind him |
16:09.03 | farmbuyer | er. clarification: is it starting with aceconfig and generating an acegui options panel? or starting with acegui and assembling widgets from scratch? |
16:09.50 | farmbuyer | because aceconfig->acegui can be reversed, but if you're starting with acegui widgets, there's no aceconfig table associated with anything. |
16:09.56 | Flowyk | it creates UI with AceGUI ... but when I want to use in options it need to be "tree" |
16:10.27 | Shefki | Flowyk: You'll have to write the tree. |
16:10.47 | nevcairiel | I dont think i've seen one using the tree widget without AceConfig, its kinda complicated |
16:10.53 | Flowyk | is there web with more examples as http://www.wowace.com/addons/ace3/pages/ace-config-3-0-options-tables/ ? |
16:12.24 | Flowyk | or is there addon that shows my tree "live" in game? ... must I reload everytime? |
16:12.30 | Shefki | Flowyk: You have tons of examples, pick an Ace3 addon download it and look at it. |
16:13.01 | Flowyk | I found gladius |
16:13.08 | Flowyk | but its big ... |
16:13.08 | Computerpunk | Flowyk, go for something simpler. |
16:13.08 | Computerpunk | ;D |
16:13.20 | Computerpunk | Look at Broker plugins. |
16:13.24 | Shefki | If you're bothered by 10 seconds of reloading then god help you if you ever work on a major C++ app. |
16:13.30 | farmbuyer | for development, it's often handy to add a small widget into your UI that calls ReloadUI when licked |
16:13.33 | farmbuyer | er. |
16:13.36 | farmbuyer | "clicked" |
16:13.55 | farmbuyer | unless you have one of those new tongue-based monitors, in which case go with the first thing |
16:13.55 | Shefki | Why would you need a widget, /rl too hard to type? |
16:14.12 | farmbuyer | if you hands are already on the mouse, sure :-) |
16:14.25 | nevcairiel | if you're lazy, there is some modifier you can hold down, and click bugsack to reload |
16:14.27 | nevcairiel | i think its shift |
16:14.28 | nevcairiel | or alt |
16:14.29 | nevcairiel | i forget |
16:14.30 | Flowyk | I have slow pc ... |
16:14.52 | farmbuyer | it's shift, but only if bugsack is visible |
16:15.11 | mitch0 | nev: is there an option in SUF to replace the range checking function from UnitInRange to some spell based thing? |
16:15.13 | nevcairiel | why wouldnt it be when you're developing? :p |
16:15.24 | nevcairiel | mitch0: you tell me |
16:15.38 | mitch0 | aren't you the maintainer now? :) |
16:15.57 | farmbuyer | I have a snippet of code that hides bugsack on login if there aren't any actual errors to report, and then only shows it on error. |
16:15.58 | nevcairiel | sure, but i didnt write it, so i would have to go find it in the code, which you can do yourself as well |
16:15.59 | Flowyk | bugsack? |
16:16.25 | Flowyk | what means "bugsack"? |
16:16.33 | mitch0 | it's an addon |
16:16.35 | farmbuyer | so it's only visible when things are going wrong. |
16:17.12 | *** join/#wowace Fisker (~o_o@62.61.142.209.generic-hostname.arrownet.dk) |
16:19.22 | *** join/#wowace koaschten (~koaschten@193.175.177.178) |
16:19.52 | farmbuyer | Unrelated question. Can the "pages" associated with a given wowace project be retrieved/downloaded in any way other than going to the wowace server? |
16:20.44 | nevcairiel | they are hosted on the server, how else do you expect to get the bits to you? :) |
16:21.17 | farmbuyer | well, we can checkout the addon sources, downloaded the generated zip files, and so on |
16:21.21 | Megalon | i demand kaelten to print them out |
16:21.27 | Megalon | and send them to me by mail |
16:21.28 | farmbuyer | was wondering if the HTML pages had a similar thing |
16:21.39 | nevcairiel | probably not |
16:21.52 | Rokiyo | oh, do you mean you want to retrieve the pages without visiting them in your browser? |
16:22.07 | Rokiyo | as in some app that just retreives them and saves them locally? |
16:22.16 | Kaelten | Megalon: I'll be happy to 100 curse points per page, payment made in advance , 100 page mininium |
16:22.18 | nevcairiel | you can use a parser script and your api key =P |
16:22.19 | Rokiyo | s/retreives/retrieves/ |
16:23.08 | farmbuyer | the end goal is to view them locally in a browser, without waiting on the wowace.com webserver to find them. :-) Was hoping to avoid "File->Save As" and getting all the other stuff on the screen saved as well. |
16:23.18 | Megalon | this time, Kaelten, you got me this time!! |
16:23.43 | farmbuyer | trying to view (e.g.) the aceconfig options table reference takes about a minute. 59 seconds of "waiting on wowace.com..." and then it all comes through at once. |
16:24.02 | nevcairiel | doesnt happen to me |
16:24.05 | Rokiyo | there are more general apps out there that you can install, which can be instructed to locally cache pages of your choosing |
16:24.07 | nevcairiel | check your processing power :) |
16:24.46 | Repo | 10atlasloot-enhanced: 03Dynaletik 07cataclysm * r2950 / (2 files in 2 directories): - small fixes |
16:24.46 | Primer | If the project in question uses svn, you may use my svn web: http://ceregatti.org/svnweb/ |
16:24.51 | farmbuyer | quad core. there's nothing coming back down the pipe :-\ |
16:25.33 | Primer | I have my 2 active projects there as links, but simply replace the name of my project with the stub for the one you want, and it'll display it |
16:25.35 | nebula169 | still wish they ran something like viewvc on wowace ;[ |
16:25.55 | nevcairiel | we all do, but Kaelten refuses! |
16:26.07 | Kaelten | not refuse :( |
16:26.16 | quiescens | ): |
16:26.28 | nebula169 | doesn't gitweb come with git now-a-days, too? |
16:26.36 | Slayman | in Pitbull can't I position the Comobopoints as a barhoutside of the frame? I can't seem to do it, *sadpanda* |
16:26.45 | Lulia | Hmm, a good night's sleep hasn't changed my perspective on this bug, lol |
16:26.47 | Megalon | re-fuses the bomb |
16:27.09 | SunTsu | Slayman: sure you can |
16:27.47 | farmbuyer | Since the "pages" associated with a project are versioned themselves, I'm kind of surprised they can't be checked out. I don't know the details though. |
16:27.49 | Primer | Slayman: I've found that PitBull can do _anything_ |
16:28.04 | Primer | farmbuyer: what project are you referring to? |
16:28.54 | Shefki | Slayman: position as a bar kinda implies you want it inside the frame. |
16:29.49 | farmbuyer | Primer: mostly the ace3 references, but I was hoping to find something that could be used for any project with multiple "page" entries. |
16:30.09 | Flowyk | do I need AceGUI when creating options throught AceConfig? |
16:30.32 | Lulia | So, I have a frame with the only value being that it's set to all points of the ChatFrame1EditBox. That frame then has a script attached to it via SetScript, "OnKeyDown". The very act of attaching that script seems to give me the "permanent focus" issue where my bindings don't work, I can't use spacebar to jump or enter to open the chat edit box |
16:30.38 | Slayman | Shefki: yes inside but on top the other like the topmost bar, All i can do is move it left or right of the other bars which are horizontal |
16:31.13 | *** join/#wowace Ingela (~Ingela@90-230-169-130-no35.tbcn.telia.com) |
16:31.36 | Shefki | Slayman: Position as a bar is somewhat limited unless the indicator module has some logic in it to behave more like a bar module. |
16:32.14 | Slayman | Shefki: I see, well I may have to get me another addon for combopoints |
16:32.18 | Primer | farmbuyer: http://ceregatti.org/svnweb/index.cgi/ace3/browse/trunk |
16:32.19 | Primer | there you go |
16:32.25 | ShadniX | Lulia: have you tried EditBox:SetAutoFocus(false) ? I think, i had a similar problem with an EditBox in an option panel, which captured all inputs |
16:32.36 | Lulia | I tried editing out SetAllPoints, but the error continued, so my suspicions that it was tied to the EditBox were unconfirmed. |
16:32.37 | Shefki | Slayman: Well what exactly are you trying to do? |
16:32.45 | Rokiyo | farmbuyer: you could set up web server on your local machine have it squid-cache wowace.com, then modify your hosts file so requests to wowace.com get redirected to localhost:P (http://www.squid-cache.org/) |
16:32.49 | Lulia | Well, this isn't an EditBox I'm creating, ShadniX |
16:32.50 | Primer | farmbuyer: not sure if that's exactly what you want |
16:33.10 | Lulia | This is Blizzard's default EditBox for their chat frame. The frame I'm making isn't even an EditBox |
16:33.17 | *** join/#wowace nekoh (~nekoh@p4FD88ADA.dip0.t-ipconnect.de) |
16:33.21 | Lulia | It's just set to the same points as the EditBox |
16:33.47 | Slayman | at first I wanted to have a bar over the entire frames width basically enormous, that didn't work |
16:33.49 | farmbuyer | it isn't, what I'm after is local copies of http://www.wowace.com/addons/ace3/pages/ |
16:33.54 | farmbuyer | but thank you anyhow :-) |
16:34.06 | *** join/#wowace nekoh_ (~nekoh@p4FD88ADA.dip0.t-ipconnect.de) |
16:34.16 | Primer | np |
16:34.43 | farmbuyer | I have a local checkout of the *addon*, but the generated HTML is separate. |
16:35.00 | Flowyk | what is "getter" and "setter" function? |
16:35.01 | *** join/#wowace Baraius (~Adium@150.105.84.5) |
16:36.14 | Lulia | I changed the SetScript to a HookScript and it no longer had the focus issues. |
16:36.17 | nevcairiel | functions that get and set! |
16:36.18 | Slayman | Flowyk: in OOP an object has get and set functions determining it's attributes |
16:36.18 | Shefki | Slayman: Yeah well you still haven't given me a clear idea of what you want. I'm not concerned with how you think you can achieve it via the config, just tell me what you want and there's probably a way to get you what you want. |
16:36.21 | Lulia | But, sadly, the script didn't function. |
16:36.45 | Shefki | Lulia: You realize that HookScripts run AFTER the normal script. |
16:37.20 | Slayman | Shefki: please don't its ok I reverted to the indicator approach and gave that highl visibility scaling and coloring, it'll do |
16:37.22 | Flowyk | ok then setter function is called on show and sets state and getter function is called on event? |
16:38.12 | Lulia | Shefki: Erm, right, that might explain why the HookScript didn't function |
16:38.22 | Lulia | My point is that it isolates the focus issues to the SetScript |
16:39.01 | Flowyk | Slayman then setter function is called on show and sets state and getter function is called on event? |
16:39.50 | nevcairiel | Lulia: there is some new behaviour in 4.0, once you set a OnKeyDown script on a frame, it automagically becomes keyboard-enabled. You should call frame:EnableKeyboard(false) after the SetScript, and only call EnableKeyboard(true) when the editbox has focus again |
16:40.15 | Slayman | Flowyk: no idea at all about lua and wow programming |
16:41.08 | Lulia | nevcairiel: Thanks, I will see if that fixes it. |
16:42.17 | Lulia | That seemed to have to have fixed the focus issue :) |
16:42.29 | Lulia | Of course, the script isn't quite working yet either, but I'll figure that out. |
16:42.44 | Flowyk | nevcairiel then setter function is called on show and sets state and getter function is called on event? |
16:43.16 | nevcairiel | go read a book or something |
16:43.24 | nevcairiel | you miss the general concepts of programming |
16:43.29 | Flowyk | what book? |
16:43.38 | nevcairiel | ~wowprogramming |
16:43.38 | purl | it has been said that wowprogramming is World of Warcraft Programming: A Guide and Reference for Creating WoW Addons - http://is.gd/7A3Jx - a book written by Cladhaire (jnwhiteh) and Gazmik, or the companion site and API reference available online for free at http://wowprogramming.com |
16:43.46 | nevcairiel | that book, for all i care |
16:43.48 | Flowyk | hmm |
16:47.39 | *** join/#wowace MindWorX` (MindWorX@188.176.197.82) |
16:48.02 | *** join/#wowace Lenvik (~Kivnel@aux.jmctech.com.au) |
16:54.32 | Flowyk | http://paste.wowace.com/2798/ |
16:54.38 | Flowyk | why its not loaded? |
16:58.33 | *** join/#wowace Ghli (~IceChat7@netblock-68-183-229-160.dslextreme.com) |
17:05.06 | *** join/#wowace profalbert (~profalber@212095007022.public.telering.at) |
17:09.40 | Parnic | are you asking why /cf doesn't work? |
17:09.51 | Parnic | it needs to be just "cf" in the register function, not "/cf" |
17:10.41 | Repo | 10combo-points-redux: 03Starinnia 042.1.0 * r186 : Tagging as release 2.1.0 |
17:11.59 | Talryn | Is there a method on ItemRefTooltip that controls the icon shown on the left side of it? |
17:12.33 | *** join/#wowace DarkAudit (~Brian@c-98-236-98-13.hsd1.wv.comcast.net) |
17:17.47 | Fisker | slaps Parnic around a bit with a large trout |
17:18.14 | Lulia | throws Fisker off of a building. |
17:18.39 | Fisker | that wasn't very nice |
17:19.02 | Lulia | smiles innocently. |
17:20.05 | Lulia | So, erm, Nev. Setting keyboard enabled to false in the first pass makes it so that it never fires again |
17:20.08 | Lulia | Hmm |
17:20.19 | *** join/#wowace robokitty (~roboe@50A2E6C0.flatrate.dk) |
17:20.29 | Lulia | wait, nm |
17:23.41 | Repo | 10ice-hud: 03Rokiyo * r745 / (3 files in 2 directories): (Message trimmed by 1 line) |
17:23.42 | Repo | - Fixed Threat module's aggro bar positioning incorrectly |
17:23.43 | Repo | - Fixed combining expand & reverse modes causing bars to position incorrectly. |
17:23.44 | Repo | - All empty bars now skip resizing calculations and just Hide() immediately. |
17:23.45 | Repo | - Threat & SnD modules now use the new bar resizing system. |
17:29.40 | *** join/#wowace koaschten (~koaschten@193.175.177.166) |
17:43.15 | Repo | 10head-count-2: 03kagaro 07master * 272a136 / (3 files in 2 directories): [+2 commits] |
17:43.16 | Repo | 272a136: Boss and Loot manualy insertion should be functonal now. |
17:43.17 | Repo | b946464: Added in the rest of the options. Added cmdline toggle via /hc GUI is now used to enter new loot or raid kills. Adding a boss or raid lost accepts values but not yet implmented. |
17:46.48 | EthanCentaurai | heh, TotalBiscuit uses IceHUD |
17:48.16 | *** join/#wowace Yoshimo (~Miranda@p54998337.dip0.t-ipconnect.de) |
17:48.42 | *** join/#wowace Sliker (ponies@5acedee5.bb.sky.com) |
17:50.18 | *** join/#wowace Pneumatus (~WiN@unaffiliated/pneumatus) |
17:51.01 | *** join/#wowace Mera (~ecarlat@19.20.93-79.rev.gaoland.net) |
17:51.10 | *** join/#wowace Athrynn (~athryn@montreal02-3459238333.sdsl.bell.ca) |
17:51.10 | Parnic | and the default settings, too. ugh. |
17:53.12 | *** join/#wowace daev (~bleh@pool-71-188-132-215.aubnin.fios.verizon.net) |
17:53.20 | *** join/#wowace Silker (~ponies@5acf9979.bb.sky.com) |
17:53.25 | *** join/#wowace Nickenyfiken (~Miranda@c83-255-99-211.bredband.comhem.se) |
17:59.08 | *** join/#wowace Nexiuz (~Nexiuz@ip152-74-211-87.adsl2.static.versatel.nl) |
18:06.19 | *** join/#wowace Diao (vince@adsl-99-58-31-154.dsl.pltn13.sbcglobal.net) |
18:06.29 | *** join/#wowace Seerah (~Ryan@adsl-226-120-248.mem.bellsouth.net) |
18:08.54 | Flowyk | if I have optionsTable in AceConfig defined by local table and I make change in this table is it visible in options? |
18:09.50 | Pneumatus | yes |
18:10.21 | Nexiuz | Flowyk check #wowuidev for my reply |
18:10.33 | *** join/#wowace Sliker (ponies@5aced1cb.bb.sky.com) |
18:10.33 | Flowyk | Nexiuz yes thanks |
18:10.54 | Nexiuz | yw |
18:19.00 | *** join/#wowace gaellalire (~Adium@mut38-5-82-246-188-2.fbx.proxad.net) |
18:20.05 | Primer | Anyone know of any documentation regarding lua and its supposed "slowness" when it comes to object variables? |
18:20.49 | nevcairiel | wth is a object |
18:20.50 | Primer | When I first started coding my addon, I was told not to use MyAddon.foo to store stuff |
18:20.52 | nevcairiel | there is no such thing |
18:20.57 | Primer | table, whatever |
18:21.15 | nevcairiel | what else would you use, globals? those are even slower =p |
18:21.20 | Primer | ultimately it's just terminology |
18:21.26 | Lulia | MyAddOn is a global stored in _G, anything else you add to it is also global. |
18:21.33 | Lulia | The point is to limit the amount of globals you use. |
18:21.38 | Lulia | But sometimes it's necessary. |
18:21.38 | nevcairiel | eh |
18:21.41 | nevcairiel | thats just wrong |
18:21.54 | Lulia | Well hey, I can only say what I've been told. |
18:22.01 | Primer | So then it's false, this assertion that such things are slow? |
18:22.02 | nevcairiel | MyAddon does not have to be a global, you can make it whatever you want it to be |
18:22.16 | Lulia | It's generally Global |
18:22.24 | Lulia | :-/ |
18:22.36 | nevcairiel | And, stuff you add to it is not global. |
18:22.40 | *** join/#wowace Ketho (~Ketho@ip565063bd.direct-adsl.nl) |
18:22.42 | nevcairiel | Thats the whole point of it |
18:22.51 | nevcairiel | You store it in that MyAddon table |
18:22.55 | Lulia | But it is, it's added to the Global table, no? |
18:22.55 | Primer | I find that having a glogal MyAddon with all of its variables as "object properties" (what should I call them) is helpful when coding |
18:22.57 | nevcairiel | instead of storing it in the global table |
18:23.04 | Primer | /dump MyAddon.foo |
18:23.12 | nevcairiel | Primer: just continue doing that, thats fine |
18:23.15 | Primer | while in-game, for example |
18:23.18 | Lulia | It's what I do. |
18:23.35 | Lulia | All I know is I was told I use the table stuff too much |
18:23.42 | Lulia | So I'm looking for places to trim it off. |
18:23.46 | Primer | same here |
18:23.56 | Primer | but I've always questioned that |
18:24.06 | Primer | for example, I like perl |
18:24.12 | nevcairiel | However told you is either stupid, or you misunderstood him |
18:24.18 | nevcairiel | whoever* |
18:24.20 | Primer | and I know that perl is extremely optimized when it comes to hash lookups |
18:24.42 | Primer | $MyAddon->{foo} (hash reference) |
18:24.59 | Primer | there is absolutely NO reason why you would NOT want to do something like that in perl |
18:25.14 | *** join/#wowace koaschten (~koaschten@193.175.177.141) |
18:25.15 | Primer | which makes me think "The lua guys seem pretty smart. Why would there be such a limitation in lua?" |
18:25.27 | nevcairiel | For lua its basically like this, Local > Upvalue > Table > Global |
18:25.33 | Primer | or any other interpreted language for that matter |
18:25.46 | thelibrarian | I dunno, I think there's a lot of superstition about lua performance, especially in the wow addon development world |
18:25.55 | Primer | thelibrarian: indeed |
18:26.00 | Primer | and I think it's all hype |
18:26.16 | nevcairiel | I keep reading so much misinformation on the wowace forums when i'm at work |
18:26.23 | nevcairiel | but ever since the server move, i cannot login from work anymore |
18:26.24 | Primer | I'm about to add a bunch of new functionality to my old stale addon |
18:26.29 | nevcairiel | I should bug Kaelten about that |
18:26.32 | thelibrarian | as long as you avoid the obvious things like generating a new table every frame, the difference is marginal |
18:26.40 | thelibrarian | like using an upvalue for an API call you make every few seconds |
18:26.46 | *** join/#wowace Nechckn (Nechckn@WoWUIDev/Norganna/Admin/Nechckn) |
18:26.46 | *** mode/#wowace [+v Nechckn] by ChanServ |
18:27.08 | farmbuyer | Call it exaggeration rather than "all hype". For example, it's true that Local > Table, but others act like Local >>>>>> Table. |
18:27.10 | Primer | that's just it. I simply want to store ALL my addon's variables as an "object property" (still don't know the proper lua term) |
18:27.29 | nevcairiel | its a table, and you just store them in the table |
18:27.34 | farmbuyer | yeah |
18:27.43 | nevcairiel | but if it helps you to think about them as objects, sure, why not :P |
18:28.01 | farmbuyer | fields or members or attributes are common names (but the last one collides with secure frame attributes, so don't use that name) |
18:28.04 | Primer | because when I'm debugging, it's so convenient to be able to dump the "table elements" (Is that a good enough term?) |
18:28.10 | nevcairiel | sure |
18:28.21 | arkanes_ | Primer: wow passes your addon a table specifically for this purpose |
18:28.48 | nevcairiel | thats a rather new feature and barely documented (also, without any real advantage to use) |
18:28.55 | thelibrarian | I wouldn't put _too_ much interal state in there, but things that span functions are fine living in the addon's global table. |
18:29.00 | nevcairiel | unless you want to keep everything local |
18:29.22 | Shefki | nevcairiel: Well it has a clear advantage. It's the only way to share data between different files without a global of some sort. |
18:29.31 | thelibrarian | Something that is only used within a single function should probably be a local |
18:29.41 | thelibrarian | just to keep outside interference from screwing with it |
18:29.47 | nevcairiel | Shefki: you could just delete the global in your last file again, if you care that much =) |
18:29.52 | arkanes_ | if you're going to expose your addon table as a global there's not much benefit yeah |
18:29.53 | Shefki | nevcairiel: But it is certainly new and hasn't really entered the norm in development circles. |
18:29.55 | nevcairiel | its just a handy tool, but not something insanely new |
18:30.06 | arkanes_ | but it's a very convenient way to pass the addon between your files |
18:30.28 | Primer | so what about "object methods"? |
18:30.30 | arkanes_ | I don't see any reason to *avoid* using it |
18:30.32 | Primer | Myaddon:Foo() |
18:30.33 | Shefki | nevcairiel: Well sure, but you're still shoving something in the global namespace at some point. I think that was the whole point of the new addition. |
18:30.37 | thelibrarian | I kind of like having addons use the per-addon global, so that I can tweak them at runtime if I want |
18:30.46 | Primer | as opposed to "local function Foo..." |
18:30.57 | nevcairiel | I hate addons that are completly local |
18:31.04 | Primer | same here |
18:31.05 | arkanes_ | Primer: you can store functions in tables, and if you call them with : they get passed the table as an implict this |
18:31.07 | Shefki | Primer: Foo is a just a table entry in MyAddon. |
18:31.21 | arkanes_ | Primer: it's another way to avoid using globals |
18:31.28 | nevcairiel | Primer: MyAddon.Foo = function(self) -- do stuff end |
18:31.36 | Primer | I find that some addon authors went way too far in making functions local |
18:31.48 | Primer | for example, I wanted to add functionality to...err...I can't remember |
18:31.54 | Shefki | Only difference between MyAddon["Foo"]() and MyAddOn:Foo() is the syntatic sugar of MyAddOn being passed into Foo as the first param. |
18:31.57 | nevcairiel | thats the same as function MyAddon:Foo() --do stuff end |
18:32.01 | farmbuyer | Addon:Foo() is syntactic sugar for Addon.Foo(Addon), which is sugar for Addon["Foo"]( |
18:32.04 | farmbuyer | Addon) |
18:32.06 | Pneumatus | re MyAddon being global, i just _G.MyAddon = MyAddon in debugs when im developing, there's no need for it generally to be a direct global |
18:32.16 | thelibrarian | Shefki: MyAddon["Foo"](MyAddon) |
18:32.20 | farmbuyer | but without the accidental newline in the middle caused by a stray pinky finger |
18:32.23 | Shefki | Right. |
18:32.45 | nevcairiel | Pneumatus: if its not reachable through like AceAddon or some other registry, it kinda sucks to hide it when other people might want to script some interaction |
18:33.06 | Pneumatus | oh, its always available through AceAddon, but that makes /dump's horrible :) |
18:33.09 | durcyn | local everything, scope is scary |
18:33.25 | Shefki | Generally I have public interfaces which are accessible and private interfaces which are not. |
18:33.45 | nevcairiel | just sayin', its always nice to be able to like programmatically change your addons profiles, or something |
18:33.51 | Shefki | The stuff that's private is usually helper functions and things that aren't really useful to expose. |
18:34.05 | arkanes_ | I generally make everything private unless I have a reason for exposing it |
18:34.17 | arkanes_ | it's not like I can't change the visibility of anything I want |
18:34.29 | Pneumatus | yeh, i think there are a few addons that use some of the data tables in one of my addon for additional purposes anyway |
18:37.14 | Shefki | There is one advantage of having everything public. |
18:37.17 | Primer | How is public/private achieved? Simply prepending "local" to it? |
18:37.19 | Shefki | It's a hell of a lot easier to profile. |
18:37.23 | *** join/#wowace cralor (~cralor@c-98-217-6-30.hsd1.ma.comcast.net) |
18:37.30 | Shefki | And by profile I mean performance profile. |
18:37.35 | nevcairiel | I dont profile my code anymore |
18:38.05 | Primer | I've recently had a bug report where people claim my addon causes FPS loss, so I imagine I'll be profiling |
18:38.05 | nevcairiel | I just look at functions that are called alot, and look for obvious errors, like table creations that are not necessary |
18:38.09 | nevcairiel | otherwise, who cares |
18:38.24 | Parnic | primer: people are generally dumb :P |
18:38.36 | Parnic | i had someone claim that icehud dropped them from 60fps to 40fps. i laughed so hard |
18:39.04 | Primer | Last bug of that nature was my fault though, as I was triggering a function on every unit_aura in a raid |
18:39.06 | Parnic | 8.3ms per frame is a ton of time for an addon to take...plus i hover at 120fps with or without |
18:39.06 | arkanes_ | tell em its cause of the curved bars |
18:39.08 | Primer | and not filtering for player |
18:39.15 | arkanes_ | if they rotate the bars, it should get better |
18:39.21 | Parnic | i'll do that arkanes |
18:39.34 | arkanes_ | I should start a campaign |
18:39.35 | Shefki | People make all sorts of performance claims. |
18:39.37 | arkanes_ | I'll post comments on the icehud curse page |
18:39.56 | Primer | by default, my addon runs on every update, otherwise the effect isn't that nice :) |
18:40.09 | Primer | but I have a config option to add delay |
18:40.17 | arkanes_ | running every update is not neccesarily bad |
18:40.31 | Primer | well, I have inner loops in my onupdate |
18:40.35 | arkanes_ | and performance is a weird, non-intuitive thing |
18:40.48 | Shefki | Sometimes the effort to throttle updates actually creates more performance problems than it solves. |
18:40.53 | Parnic | and there's no way to measure it |
18:40.54 | Primer | the addon works beautifully for me on my 4+ year old code2duo |
18:40.57 | arkanes_ | I generally ignore anything anyone says about performance unless they have profiler output |
18:41.17 | Primer | and I run a lot of addons too |
18:41.20 | arkanes_ | and when they do, I still ignore them perhaps 80% of the time |
18:41.45 | thelibrarian | speaking of triggering a lot, has anyone considered a combat event library -- something kind of like AceTimer but that filters certain events to addons that register with it? |
18:41.54 | Primer | I'm genuinely surprised at how well it performs, given what it does. But then I'm way more impressed with addons like PitBull and with what it does |
18:41.55 | thelibrarian | so that everyone doesn't have to roll their own CLEU filter |
18:42.02 | arkanes_ | thelibrarian: you mean AceEvent? :P |
18:42.36 | Parnic | shhh, don't talk about pitbull. shefki might hear you |
18:42.38 | Shefki | thelibrarian: Yeah that's exactly what AceEvent does. |
18:42.54 | thelibrarian | oh really, I thought it just handled higher level frame events and such |
18:43.19 | arkanes_ | if you mean stuff like filtering so you only get SPELL_ events from CLEU, it doesn't do that |
18:43.26 | *** join/#wowace gaellalire1 (~Adium@mut38-5-82-246-188-2.fbx.proxad.net) |
18:43.26 | thelibrarian | yeah, that's what I mean arkanes_ |
18:43.40 | Shefki | Yeah it doesn't have specific handling for CLEU. |
18:43.49 | thelibrarian | I don't know if centralizing that kind of processing would be much of a performance gain or not |
18:43.53 | arkanes_ | it'd be really easy to do in a probably not very performant way |
18:44.04 | Shefki | I doubt it would help that much. |
18:44.09 | Slayman | jnwhiteh: ping |
18:44.10 | *** join/#wowace CrazyBenny_ (s_m@a02-0602c.kn.vutbr.cz) |
18:44.12 | arkanes_ | by just re-raising the event as a custom event |
18:44.21 | thelibrarian | so that 20 addons don't all do table lookups to find the ones they're interested in |
18:44.37 | thelibrarian | or if/then/else trees |
18:44.42 | arkanes_ | putting it in a library won't make the table look up go away |
18:44.52 | thelibrarian | but it would mean one lookup instead of multiple |
18:44.55 | Shefki | table lookups are faster than if then else trees if you have a lot of stuff. |
18:44.56 | arkanes_ | it'd just let you have an implementation that is probably pretty good |
18:45.22 | thelibrarian | exactly, and a lot of addons do use if/then/else because they only care about a couple events |
18:45.28 | arkanes_ | does aceevent handle registration globally, or is there a unique frame/dispatcher for each embed? |
18:45.48 | Shefki | There's a single dispatcher. |
18:45.52 | arkanes_ | I keep meaning to check that but I forget to |
18:45.59 | Shefki | AceEvent is really simple go look at it yourself. |
18:46.03 | thelibrarian | AceEvent30Frame |
18:46.15 | Pneumatus | yeh, aceevent is like 30 lines of code, if that |
18:46.35 | Shefki | AceTimer is slightly more complicated but not much more. |
18:47.09 | Pneumatus | it registers events to a single frame then fires them out to all the listeners |
18:48.37 | Lulia | Okay, this is odd... |
18:49.16 | Lulia | From my PowerBars Saved Variable file, I can see PowerBarsDB.PowSet.Frame[3] and all of its values, in table format of course. |
18:49.37 | Lulia | Oh wait, nm |
18:49.43 | Lulia | <.< |
18:51.22 | Shefki | Lulia: Don't put frames in SavedVariables. I've watched people who have done that try to debug strange behavior here before. |
18:51.26 | Lulia | I'm getting a usage error on SetSize :-/ when the values in it clearly exist. |
18:51.30 | Lulia | It's not actually a Frame |
18:51.34 | Lulia | It's the settings for the frame |
18:51.46 | Lulia | Width, height, position, etc... |
18:52.31 | Lulia | In any case... |
18:53.30 | *** join/#wowace faCe| (~face@p5489F40F.dip.t-dialin.net) |
18:54.08 | Lulia | http://paste.wowace.com/2799/ |
18:54.16 | Lulia | It's only 8 lines of script ;) |
18:54.26 | Lulia | I get a usage error on SetSize |
18:54.33 | Lulia | When its frame clearly exists |
18:54.45 | Lulia | And the values for RuneF.WIDTH and RuneF.HEIGHT are also both existing |
18:55.04 | Lulia | As confirmed by a /script print(PowerBarsDB.PowSet.Frame[3].WIDTH) |
18:56.12 | thelibrarian | I'd add a print(i) print(Rune.Frame) print(RuneF.WIDTH) in that loop |
18:57.11 | Lulia | hmm |
18:57.49 | *** join/#wowace Athrynn (~athryn@montreal02-3459238333.sdsl.bell.ca) |
18:57.54 | Lulia | It's magically error free |
18:57.59 | Lulia | After adding the print statements |
18:58.07 | Lulia | I then took them back out and there's no error |
18:58.08 | thelibrarian | heisenberg uncertainty principle |
18:58.10 | Lulia | wth? |
18:58.35 | Lulia | If the script hasn't changed in any meaningful fashion |
18:58.39 | Lulia | How does it fix itself? |
18:58.49 | thelibrarian | corrupt savedvars that got fixed after enough reloads? |
18:58.58 | thelibrarian | maybe |
18:59.06 | Lulia | O.o |
18:59.11 | Lulia | But I looked at the savedvars |
18:59.14 | Lulia | And they were fine |
18:59.28 | Lulia | The script looks no different |
18:59.31 | Lulia | And yet it works now |
18:59.42 | Lulia | I'm completely baffled |
18:59.43 | Shefki | Lulia: Forget the save your Lua file? |
18:59.52 | Shefki | Then when you add the prints you saved. |
19:00.03 | Lulia | It's possible, but I dont think that was it |
19:00.07 | Lulia | No way to know now though |
19:00.56 | Pneumatus | anyone know if anyone has shoved the raid flyout hiding stuff into an addon anywhere? |
19:03.11 | durcyn | fair number of unit frames do, but it's as simple as CompactRaidFrameContainer:Hide(); CompactRaidFrameManager:Hide(); |
19:03.37 | Pneumatus | yeh, i know its easy to do, but i wondered if there was an addon that just does that, somewhere :) |
19:05.37 | durcyn | -just- that? nah. |
19:06.16 | Lulia | It would literally be a 1 line AddOn |
19:06.17 | Lulia | >.> |
19:06.21 | Lulia | Well |
19:06.22 | Shefki | durcyn: Actually it's not that easy. |
19:06.26 | Lulia | A few kubes I suppose |
19:06.29 | Shefki | Pneumatus: Look at the HideBlizzard module in PB4. |
19:06.35 | Lulia | /s/kubes/lines/ |
19:06.41 | Shefki | durcyn: That will work for a while but it'll reshow itself. |
19:06.45 | Lulia | lines* |
19:07.00 | durcyn | you may have to also do CompactRaidFrameContainer.Show = function() end |
19:07.02 | Repo | 10skillet: 03yossa * r184 / (2 files in 1 directory): Skillet: |
19:07.03 | Repo | - fixed errors for users who install Skillet for the first time |
19:07.06 | durcyn | etc |
19:07.10 | Shefki | durcyn: NOoooooo. |
19:07.19 | Shefki | durcyn: Don't do that it taints the frames. |
19:07.21 | Lulia | >.> |
19:07.29 | durcyn | blah |
19:07.37 | *** join/#wowace Lex (~lexlexlex@CPE0040f449aaec-CM000a7369bd4f.cpe.net.cable.rogers.com) |
19:07.55 | *** join/#wowace taleden (~alex@user-38q41i6.cable.mindspring.com) |
19:07.56 | Shefki | When you care about not breaking the frames if someone decides to show them again later it's a little harder. |
19:08.13 | durcyn | who cares, he's trying to disable them for himself |
19:08.19 | durcyn | users are made to suffer anyway |
19:09.00 | durcyn | an :UnregisterAllEvents() wouldn't be amiss either |
19:09.37 | taleden | weapon buff tooltips show the duration like "3 sec" or "30 min" in english, but the abbreviations are different in other languages (like "Sec.", "Min.", "Stunde" in german) -- what's the best way to handle that? is there an API constant for each localized abbreviation, or do I have to hardcode them all? |
19:09.49 | *** join/#wowace the-golem (~Darrin@c-98-255-201-176.hsd1.ca.comcast.net) |
19:10.23 | Parnic | best way to handle that for what purpose? what are you trying to do? |
19:10.32 | Shefki | taleden: GlobalStrings |
19:10.59 | *** join/#wowace EthanCentaurai (~ethan@92.28.251.42) |
19:11.04 | durcyn | er, surely you're not scanning tooltips for temporary enchants instead of using GetWeaponEnchantInfo |
19:11.08 | farmbuyer | taleden: MINUTES and MINUTES_ABBR should be localized, just feed the right format() args |
19:11.37 | arkanes_ | GetWeaponEnchantInfo doesn't return much useful |
19:11.43 | taleden | durcyn: that function does not return the buff name, only existence and stacks |
19:11.59 | taleden | and I guess expiration, but not duration |
19:12.19 | arkanes_ | you can calculate duration from expiration, of course |
19:12.19 | Parnic | duration = expiration - gettime() :P |
19:12.33 | durcyn | and you need the name why |
19:12.38 | arkanes_ | I need to write some code that does all this too sometime, I've just been lazy so far |
19:12.46 | Shefki | Buff name you do have to tooltip scan and yes it sucks. |
19:12.56 | Shefki | The rest you can get from the function. |
19:13.23 | durcyn | i mean, if you're just trying to determine if you need to rebuff, then all that really matters is whether or not it currently exists |
19:13.33 | arkanes_ | durcyn: how do you know what do debuff with |
19:13.36 | arkanes_ | er, rebuff |
19:13.47 | durcyn | set it in the addon options |
19:14.03 | taleden | and then compare it to what to test? |
19:14.05 | durcyn | take a look at SimpleSelfRebuff for a workable example |
19:14.16 | durcyn | compare it to nothing to test, you're making it overly complicated |
19:14.20 | arkanes_ | anyway, I'm doing it because I want something more useful and less gigantic in my temporary enchant frame than the name of my weapon, and the tooltip for my weapon |
19:14.54 | arkanes_ | I'm not sure that "why would you ever want to do that" is really a reasonable argument against addon functionality |
19:14.59 | arkanes_ | since it applies to pretty much every addon |
19:15.03 | taleden | durcyn: the whole idea is to detect if a user-specified buff is present; if they want to watch for "Windfury", that API func will say if *something* is there, but not what it is |
19:15.21 | Shefki | arkanes_: Feel free to look at the weapon enchant handling code in PB4's Moudles/Aura/Update.lua |
19:15.49 | arkanes_ | taleden: there's no real reason to try to match the duration part, though, just use the spellids for all the weapon enchants to get the localized name and scan for it on any line |
19:15.55 | arkanes_ | Shefki: thanks |
19:16.22 | Shefki | arkanes_: It's a bit messy, I'd probably do things similar to how Blizzard did it with the ... args but I haven't refactored it yet. |
19:16.50 | arkanes_ | Shefki: don't forget to support the thrown weapon enchant! |
19:16.58 | Shefki | arkanes_: It's already supported. |
19:17.02 | arkanes_ | horray |
19:17.20 | arkanes_ | I'm still peeved that SAH doesn't have it |
19:18.35 | taleden | hm.. the way my addon is coded, which I did over a year ago, it takes the duration from GetWeaponEnchantInfo() if there is one, but if the duration isn't given there, then it tries to get it from the tooltip scan |
19:18.52 | taleden | I'm not sure why I would have done that unless there was some case when GWEI didn't return a duration |
19:19.13 | Shefki | taleden: I'm not aware of anything that doesn't. |
19:19.28 | Shefki | Believe me I'd have heard about it if there was, my users report all sorts of crazy issues to me. |
19:19.57 | arkanes_ | nothing that would have been around a year ago I don't think |
19:20.17 | arkanes_ | the classic version of windfury had some wierdness |
19:20.35 | taleden | well, it's more like a year and a half ago now that I put this support in :) |
19:20.53 | taleden | I guess maybe I was just being overly future-proof, since I had to tooltip scan for the name anyway, I figured I'd add the backup method for getting duration, just in case |
19:21.03 | *** join/#wowace Adys (~Adys@cpc3-chap8-2-0-cust26.aztw.cable.virginmedia.com) |
19:21.03 | *** join/#wowace Adys (~Adys@unaffiliated/adys) |
19:24.12 | taleden | oh, I think I know why I did that.. that part of my code is based on NeedToKnow, and looking that part of NeedToKnow I see a comment: "existence of enchant is correct at UNIT_INVENTORY_CHANGED but expiry time is not yet correct" |
19:24.32 | taleden | so I wonder if I used the tooltip's duration to avoid having to poll for the duration after the U_I_C event |
19:25.02 | Slayman | folks what Addon do you use for displaying buffs, debuffs and CDs (I'm using NeedToKnow) but it lacks a little in the customisation department |
19:26.03 | taleden | Slayman: Auracle doesn't do cooldowns, but it's made for one-glance checking of buff and debuff categories (i.e. a single icon in one spot on the screen to say if any of the half-dozen +bleed damage debuffs are present, etc) |
19:26.33 | Slayman | @describe Auracle |
19:26.52 | Torhal | @project sexycooldown |
19:26.57 | Torhal | @ping |
19:26.59 | Repo | pong |
19:27.00 | Repo | Slayman: http://www.wowace.com/addons/auracle/. Auracle (De)Buff Monitor. Compact & customizable filtering, monitoring and grouping of buffs and debuffs |
19:27.01 | Repo | Torhal: http://www.wowace.com/addons/sexycooldown/. SexyCooldown. Game: WoW. Antiarc (Manager/Author). Updated: 5 days ago. Tickets: 46/54 |
19:27.06 | Repo | 10skillet: 03yossa * r185 Skillet.lua: Skillet: |
19:27.07 | Repo | - fixed standby mode |
19:27.13 | durcyn | SCD is handy if you like logarithmic displays |
19:27.41 | Slayman | last time sexycooldown was not really down with 4.0.1 |
19:29.01 | durcyn | the Raid Debuff module no longer throws errors, but it's missing non-physical debuffs since Antiarc only cares about himself |
19:29.15 | *** join/#wowace Julith (~Miranda@i577B4334.versanet.de) |
19:30.19 | *** join/#wowace robokitty (~roboe@50A2E6C0.flatrate.dk) |
19:30.23 | durcyn | and for some reason Spell Hit is still in there, even though the effects no longer exist, ugh |
19:32.01 | Fisker | yeah Antiarc is a huge jerk :( |
19:33.08 | Fisker | (durcyn's word not mine) |
19:33.25 | Flowyk | LibStub("AceConfigDialog-3.0"):Open("ChannelFilters") end |
19:33.35 | Flowyk | how to open it in interface-options frame? |
19:33.35 | arkanes_ | I have a simple raid debuff watcher, although it doesn't (yet?) track durations |
19:33.35 | Slayman | so basically what you are saying is: sexycooldown is awesome but has more holes then swiss cheese? |
19:33.53 | arkanes_ | it's my short & sweet reimplementation of utopia |
19:34.05 | Parnic | Fisker, you're back |
19:34.44 | durcyn | Slayman: no, it works fine, but one or two of the modules could use some more polish |
19:35.14 | Slayman | "almost all of which are the ones you primarily care about" |
19:35.41 | durcyn | it works just as bloody well as it did before the patch, you malconent |
19:35.41 | arkanes_ | I also have my own mod for buffs/debuffs/CDs, but since it' |
19:35.45 | durcyn | malcontent* |
19:35.52 | arkanes_ | its for my personal use, it has even less configuration than need to know |
19:35.59 | arkanes_ | which is to say, it has exactly 0 |
19:39.39 | Repo | 10skillet: 03yossa 042.01 * r186 : Tagging as 2.01 |
19:41.28 | Fisker | i never left Parnic |
19:42.17 | Parnic | you were gone for 7 minutes between my statement and your reply at least |
19:42.24 | Parnic | you're back again |
19:42.41 | Fisker | i never left Parnic |
19:42.51 | Repo | 10libalts-1-0: 03talryn1 041.7 * r41 : Tagging as 1.7 |
19:43.18 | *** join/#wowace Takika (~taki@alkoholista.hu) |
19:43.49 | *** join/#wowace p3lim (~p3lim@200.41.202.84.customer.cdi.no) |
19:44.44 | Slayman | I don't know why But NeedToKnow has about everything I want regarding buffs,debuffs and CDs it's strange |
19:45.24 | Pneumatus | and a stupidly massive saved vars file to boot |
19:45.42 | arkanes_ | nothign wrong with need to know if it does what yuo want |
19:46.01 | arkanes_ | I don't use it because it's horribly written and near-impossible to extend or modify |
19:46.02 | zerix | gotta be someone that wants to update TrickorTreat |
19:46.04 | zerix | ;P |
19:46.43 | arkanes_ | and itself was a a more-functional duplicate of an addon that I originally wrote, so I'm just finally extending the original one to have the functionality I wanted |
19:47.05 | Shefki | arkanes_: Tell us how you really feel. |
19:47.28 | arkanes_ | Shefki: casually ambivilent? |
19:47.51 | arkanes_ | did you write need to know and I never noticed? :P |
19:48.19 | Shefki | No |
19:48.40 | Slayman | arkanes_: slap on some config shamoozle on your addon and release it, now |
19:48.54 | arkanes_ | Slayman: I'm lazy! |
19:48.54 | Repo | 10alts: 03talryn1 * r14 Alts.lua: Pulling in new version of LibAlts. |
19:49.04 | Shefki | I don't even know what needtoknow does. |
19:49.07 | Slayman | arkanes_: I give you a cookie? |
19:49.27 | Pneumatus | displays aura information, basically |
19:49.30 | Slayman | Shefki: display bars for basically everything you may or may not need |
19:49.33 | Pneumatus | or cooldowns |
19:49.49 | Slayman | but yes the savefile is retarded |
19:49.50 | arkanes_ | aura, cooldowns, and a convenient both-version called "available' |
19:49.51 | Shefki | Does it tell me when my GF is ovulating? |
19:49.56 | Shefki | Because I need to know that. |
19:50.20 | arkanes_ | Shefki: just spam the button and you'll get in as soon as the server opens |
19:50.21 | Slayman | Shefki: it tells you that in reality you don't have a girlfriend |
19:50.44 | Shefki | Slayman: Not true. I do. |
19:51.21 | Primer | Shefki: just pull out |
19:51.22 | Shefki | arkanes_: I don't think that's the desired result. |
19:51.22 | Slayman | Shefki: well in that case it tells you that your girl WAS ovulating 9 months before your child was born |
19:51.40 | Repo | 10wgclean (experimental): 03stolenlegacy * r24 / (2 files in 1 directory): |
19:51.41 | Repo | Added GUI. Added unified server-time UNIX timestamp. Added keybind to accept WG queue. Added more stuff which I'm probably forgetting right now. |
19:51.46 | Primer | that what I do (well, I have 2 kids) |
19:51.48 | Repo | 10auracle: 03taleden * r106 Auracle.lua: |
19:51.49 | Repo | - attempt at parsing localized duration strings (ticket #33) |
19:52.16 | *** join/#wowace Aeyan (~pancake@cpe-024-163-016-179.triad.res.rr.com) |
19:52.26 | Repo | 10wgclean (experimental): 03stolenlegacy 04beta-3 * r25 : tagging beta-3 for major changes. |
19:52.27 | Slayman | Primer: it's ok you can come here and get all kinds of acknowledgements for any of your RL Achievements |
19:53.10 | Slayman | congrats on your children btw for anything they do good and anything they do bad but in an amusing fashion |
19:53.24 | Primer | Slayman: I guess you missed the context? |
19:53.33 | Repo | 10alts: 03talryn1 040.1-beta3 * r15 : Tagging as 0.1-beta3. Pulled in new version of LibAlts. |
19:53.33 | Slayman | Primer: always do |
19:53.34 | *** join/#wowace Aeyan| (~pancake@cpe-024-163-016-179.triad.res.rr.com) |
19:54.01 | Parnic | Slayman has unlocked an achievement. [Whoa, what's going on you guys?] |
19:54.03 | Slayman | Primer: I see you pulled out resulting in 2 children |
19:54.03 | Primer | Slayman: it's ok, I take things out of context all the time too |
19:54.10 | Primer | yes |
19:54.23 | Slayman | you have learned your lessen, yes? |
19:54.28 | Primer | taking things out of context on IRC makes for good comedy |
19:54.30 | Slayman | *lesson |
19:54.50 | Primer | No. I was supposed to get a vasectomy but pussed out |
19:55.11 | Slayman | you american? |
19:55.23 | Primer | I was born in the Americas, yes |
19:55.31 | Primer | Brazil, specifically |
19:55.41 | Slayman | Brazil is awesome-cakes |
19:56.00 | Primer | but I'm now a citizen of the USA |
19:56.04 | Slayman | .. for vacation |
19:56.14 | Primer | I continue to be a citizen of Brazil though |
19:56.22 | Slayman | dual citizenship? |
19:56.25 | Primer | yes |
19:56.54 | Slayman | must be like dual talen specc, only with nationalities |
19:57.09 | Primer | I found that only costs 100 gold now! |
19:57.18 | Repo | 10skillet: 03yossa * r187 Skillet.lua: Skillet: |
19:57.18 | Slayman | so you still speak portuguese fluently |
19:57.19 | Repo | - force LS in Skillet.version (LSW compatibility) |
19:57.31 | Primer | I'm like, WTF...I want a 5x900 gold refund! |
19:57.34 | Primer | Indeed |
19:57.37 | Repo | 10skillet: 03yossa * r188 Skillet.toc: Skillet: |
19:57.39 | Repo | - force LS in Skillet.version (LSW compatibility) |
19:57.46 | Repo | 10bank-stack: 03Kemayo * r193 / (3 files in 1 directory): |
19:57.47 | Repo | Change to CanItemGoInBag call to make sure soulbound items are caught |
19:57.51 | Primer | I speak/read/write both English and Portuguese fluently |
19:57.55 | Slayman | Primer: you know riding 280% is cheaper as well? |
19:58.03 | Primer | oh wtf |
19:58.14 | Slayman | like a lot actually |
19:58.22 | Shefki | http://jobs.digg.com/ "I spend my day trying to avoid meetings and not piss off the software engineers. - Dash Product Manager" |
19:58.26 | Primer | well, I bought 310 on one toon |
19:58.29 | Shefki | God I hope he was one of the ones they're going to fire. |
19:58.29 | quiescens | moo |
19:58.45 | Primer | Shefki: should we know what Dash is? |
19:58.54 | Shefki | It's the guys name. |
19:59.12 | Repo | 10skillet: 03yossa 042.02 * r189 : Tagging as 2.02 |
19:59.19 | Primer | ahh |
19:59.27 | steev_ | Shefki, i'm a fan of managers who avoid pissing me off, personally |
19:59.35 | p3lim | I probably overlooked something, but I cant see what. Anyone? http://pastebin.com/BgaM46H2 |
19:59.36 | Primer | same |
20:00.13 | p3lim | getting this error: $(".permalink").style is undefined |
20:00.13 | Shefki | steev_: I don't know if that's the best thing he has to say to sell the company as someplace to work... It makes me wonder about his abilities. |
20:00.52 | Primer | sounds like you need #jquery |
20:00.58 | p3lim | got it |
20:01.28 | *** join/#wowace koaschten (~koaschten@188-193-133-170-dynip.superkabel.de) |
20:01.59 | Primer | shouldn't it be $(".permalink").css ('visibility', 'show') ? |
20:02.38 | Primer | you should probably just use $('.permalink').hover() |
20:02.59 | Primer | I really dislike doing in-line javascript in DOM |
20:03.15 | Primer | which is why I register all that crap in my document load function |
20:03.27 | arkanes_ | you should use IE, Orimer |
20:03.32 | *** join/#wowace doom0r (Doom0r@c-24-1-208-60.hsd1.il.comcast.net) |
20:03.42 | arkanes_ | then you can just use javascript expressions for your css values |
20:03.46 | Repo | 10castbars: 03xbeeps * r116 Castbars.lua: Small fixes to the merge tradeskill display. |
20:04.07 | Primer | I presume you meant me, and that you're trolling |
20:04.14 | steev_ | Shefki, you want to work there |
20:04.17 | arkanes_ | a little bit :P |
20:04.38 | arkanes_ | CSS expressions are actually kinda handy |
20:04.56 | arkanes_ | I suspect that if mozilla had implemented them first people would think they were cooler |
20:05.14 | Shefki | steev_: No I was bored so I clicked their link. |
20:05.35 | Shefki | Especially since it said "We're hiring" after I heard they're laying off like 30% of their employees. |
20:05.47 | steev_ | one of my frat brothers worked there, but he left to go to a startup |
20:05.51 | Fisker | steev |
20:05.53 | Primer | arkanes: they're only useful in IE since IE doesn't adhere to the standard |
20:06.00 | steev_ | Fisker |
20:06.04 | Primer | and it's the only way you can make shit like max-height work in IE |
20:06.16 | Fisker | that's what i want you to believe steev_ |
20:06.39 | Fisker | IE > * |
20:06.59 | Primer | Fisker: do you also play a Troll in WoW? |
20:07.19 | steev_ | he plays a cow |
20:07.29 | Fisker | http://test.w3.org/html/tests/reporting/report.htm |
20:07.37 | Fisker | read it and weep |
20:07.45 | Repo | 10wgclean (experimental): 03stolenlegacy * r26 WGClean.lua: beta-3a for /wgclean togglegui. |
20:07.58 | durcyn | i haven't seen an IE9 beta break 80% on ACID yet |
20:08.18 | Dotted | blows a kiss to stolenlegacy |
20:08.21 | Primer | Fisker: they'll find a way to fuck it up in the release |
20:08.38 | Repo | 10wgclean (experimental): 03stolenlegacy 04beta-3a * r27 : actual tag on beta-3a. |
20:08.50 | Shefki | durcyn: ACID is about CSS, that w3c report is about HTML5. |
20:08.58 | Primer | Fisker: no IE on mac/linux is also a big MINUS MINUS |
20:09.00 | stolenlegacy | hm what |
20:09.07 | Primer | not that I'd run it even if they made it |
20:09.10 | Repo | 10castbars: 03xbeeps 042.46 * r117 : Tagging as 2.46 |
20:09.29 | Fisker | sure you would |
20:09.36 | Shefki | Primer: How do you figure? I'm more than happy with Chrome or Firefox or even Safari. |
20:09.36 | Fisker | because you would run the best standards compliant client |
20:09.37 | Fisker | ,3 |
20:09.39 | Fisker | ;3 |
20:10.01 | Primer | Shefki: just counting the disadvantages of IE in general |
20:10.11 | Primer | I could care less about how it does HTML5 |
20:10.16 | arkanes_ | you can practically see Fiskers tusks growing in real time |
20:10.25 | Shefki | That's not really a disadvantage. |
20:10.28 | Primer | I'm more concerned with how it does shit like CSS2/CSS3 |
20:10.29 | Fisker | they're sticking through the monitor arkanes |
20:10.35 | Shefki | Windows has like 90% market share. |
20:10.39 | Primer | and even javascript |
20:10.41 | arkanes_ | Fisker: did you see my picture ofyou |
20:10.43 | Shefki | Not running on 10% of the machines doesn't matter much. |
20:10.49 | Primer | Windows might, yes |
20:10.55 | Primer | but IE no longer has that high a share |
20:11.02 | Fisker | naw arkanes_ |
20:11.20 | durcyn | HTML5 video and canvas matters more than you think, Primer, for this is how we will slay the Adobe beast |
20:11.28 | Shefki | IE doesn't have that high of a share because it hasn't been updated in a coons age. |
20:11.49 | Shefki | It's like driving around in your Yugo. It might work but peopel will point and laugh at you. |
20:11.51 | Primer | durcyn: unlikely to happen any time soon |
20:11.57 | Primer | don't get me wrong, I want this |
20:12.11 | Primer | I just don't see it happening as soon as people would expect |
20:12.26 | durcyn | I wasn't speaking in the present tense. |
20:12.34 | arkanes_ | I was discusssing this with a friend who is implementing a web-based game |
20:12.46 | Shefki | durcyn: In all fairness HTML5 won't slay flash. It might stop flash being the way to distribute video on the web (and rightly so). |
20:12.47 | Primer | I see it happening for video sooner than interactive flash content |
20:12.55 | Shefki | But Flash has a whole lot of users that HTML5 isn't really suited for. |
20:12.56 | arkanes_ | and he was pondering writing it in webgl and packaging ChromeTab as a distribution mechanism |
20:13.03 | Shefki | Uses that Flash was really made for. |
20:13.14 | Shefki | As opposed to this video crap that it was never really made for. |
20:13.26 | Primer | indeed. The only reason flash was ever used for video was its ubiquity |
20:13.37 | Shefki | Exactly. |
20:13.49 | arkanes_ | your alternatives were activex controls and java applets |
20:14.03 | arkanes_ | leveraging the work that adobe already did with browser and platform independence made sense |
20:14.06 | arkanes_ | still does, mostly |
20:14.07 | Primer | For interactive content, yes. |
20:14.07 | Shefki | And ActiveX didn't have the ubiquity and java blew. |
20:14.24 | Primer | Blows, you mean. |
20:14.30 | Primer | Blew, and still blows. |
20:14.42 | Shefki | Past tense, Java is dead on the client side. |
20:14.57 | Shefki | Oracle will ensure that. |
20:15.10 | Flowyk | how to get state from widgets created via table? (dropdown menu ie) |
20:15.29 | Primer | I know people that are still writing client side java with Swing |
20:15.37 | Primer | enormous projects |
20:15.59 | *** join/#wowace wex_ (~wex@cm-84.208.106.46.getinternet.no) |
20:16.00 | arkanes_ | Shefki: I read a theory on the internet that the whole oracle suit is a plan to make oracle buy java off them |
20:16.08 | arkanes_ | er, make google |
20:16.16 | Primer | HAH! |
20:16.20 | Shefki | arkanes_: I doubt that. |
20:16.21 | Flowyk | how to get the state from widgets created via table? (ie dropdown menu) |
20:16.22 | Primer | Google's not that stupid, I hope |
20:16.26 | Shefki | Oracle has too much invested in Java. |
20:16.35 | Primer | yeah, way |
20:16.36 | Shefki | They own Weblogic now. |
20:16.45 | Primer | Oracle's procedural language of choice now is java |
20:16.57 | Shefki | I still like PL/SQL |
20:17.00 | Primer | despite plsql being quite adequate for most needs |
20:17.21 | Shefki | If for no other reason than it being trivial to port to postgreql's pl. |
20:17.27 | Primer | mostly |
20:17.56 | Shefki | If it isn't trivial to port then you're probably doing something you shouldn't have been doing in the database. :P |
20:18.14 | arkanes_ | maybe just j2me |
20:18.19 | Primer | well, there's a few packages that oracle has that postgres doesn't |
20:18.29 | arkanes_ | but I think it's much simpler than all the conspiracy theories, and it's just your basic money grab |
20:18.30 | Primer | and calls to those would have to be adjusted |
20:18.41 | Primer | but other than that, it's pretty simple |
20:19.04 | Shefki | arkanes_: What conspiracy theories. They're suing Google because they think Google violated their rights. |
20:19.13 | Shefki | There's nobody to conspire with. |
20:19.32 | arkanes_ | there are many conspiracy theories |
20:19.34 | Shefki | At least with SCO there was someone (Microsoft) to conspire with. |
20:19.42 | Shefki | But Apple sure as hell isn't in bed with Oracle. |
20:19.51 | arkanes_ | like the one that its a plan to get google to assume the weight of Java, and the one that it's a plot to kill droid on behalf of apple |
20:20.05 | arkanes_ | conspiracy theories don't have to be sensible |
20:20.30 | Shefki | I'm willing to bet if this goes poorly Google will just shift Android to Go. |
20:20.42 | Shefki | Probably be better for it too. |
20:20.42 | Primer | to what? |
20:20.45 | Shefki | Go |
20:21.08 | Primer | I have a feeling that will be hard to google for...but, I will try... |
20:21.08 | Shefki | golang.org |
20:21.32 | durcyn | yeah, then the lawsuits will just be about the name |
20:21.44 | nevcairiel | Everyone is sueing everyone in the mobile business, of course oracle wanted in on it |
20:21.49 | Shefki | durcyn: Already ongoing. |
20:22.03 | Shefki | nevcairiel: Pretty much. |
20:22.25 | nevcairiel | also, software patents should just be purged from history |
20:22.27 | nevcairiel | so much sillyness |
20:22.36 | nevcairiel | hey look, i invented a button, that you can click on |
20:22.39 | nevcairiel | go pay me, noaw |
20:22.42 | Primer | Shefki: interesting |
20:23.11 | doom0r | nevcairiel: mp3 is a perfect example |
20:23.18 | Repo | 10alts: 03talryn1 * r16 Alts.lua: Enabled the /alts handler. |
20:23.26 | doom0r | just like they took the toilet patent away because it was too commonly used |
20:24.33 | nevcairiel | Honestly, you could design a user interface from scratch, and you would probably violate a handful of patents doing so |
20:25.21 | Shefki | The best advice anyone could ever get about software patents is to ignore them. |
20:25.24 | doom0r | that's the biggest bs, someone works til something is best, then patents it, even though another person will inevitably create the same thing with no prior knowledge of said work |
20:25.25 | Repo | 10ice-hud: 03Rokiyo * r746 / (3 files in 2 directories): |
20:25.26 | Repo | - removed check for shouldHideBarRotation, since all bars can now be rotated. |
20:25.33 | Shefki | If you violate them, deal with it when someone sues you. |
20:25.42 | nevcairiel | Shefki: i do anyway, your US patents dont carry much weight around here :) |
20:25.43 | Shefki | Odds are either their patent is crap or they just want some money. |
20:26.19 | *** join/#wowace bitbyte (bitbyte@unaffiliated/bitbyte) |
20:26.25 | Baps | you're in a better position legally to have done zero research -- if you searched and found their patent and then are accused of violating it, they can win treble damages for "willful violation" |
20:26.31 | Shefki | Right. |
20:26.49 | nevcairiel | what happend to stupidity doesnt protect you? :p |
20:26.59 | Baps | it doesn't |
20:27.03 | Primer | Shefki: I don't see android deviating from java any time soon, as that would be a HUDE undertaking. |
20:27.09 | Baps | but willful infringment is punished more |
20:27.18 | doom0r | stupidity causes the government to protect you |
20:27.26 | nevcairiel | no-one can prove that you knew about it anyway |
20:27.28 | p3lim | Primer: $('.permalink').hover() wont work, since its the parent object that has the scripts |
20:27.40 | *** join/#wowace Amadeo (~zenon@ip68-100-49-140.dc.dc.cox.net) |
20:27.49 | p3lim | or perhaps.. |
20:28.00 | Primer | p3lim: you get what I meant though |
20:28.08 | Primer | just apply that to the object in question |
20:28.12 | Repo | 10alts: 03talryn1 040.1-bet4 * r17 : Tagging as 0.1-bet4 |
20:28.17 | Amadeo | So when I'm in a BG, I keep getting spam in my chat saying, "You are not in a party!" - not sure what addon its from, but I'm guessing Shadowed Unit Frames |
20:28.21 | Amadeo | anyone experience this? |
20:28.23 | Shefki | Primer: As long as they don't change the VM it doesn't really matter and Android isn't using the JVM. |
20:28.32 | Primer | p3lim: I usually have ids on every dom node and reference everything via id anyhow |
20:28.45 | Shefki | Amadeo: Frankly that's a WoW bug. |
20:28.54 | Amadeo | oh? what's going on? |
20:29.14 | Shefki | WoW UI programmers are stupid and outputing text error messages where they shouldn't. |
20:29.14 | p3lim | Primer: I have too |
20:29.21 | Amadeo | sigh, lol |
20:29.43 | Amadeo | Shefki: You have to tell me when you get some great defaults for PitBull, because I want to try it again :) |
20:29.47 | Primer | I haven't seen that error in a while |
20:29.49 | Baps | the good news is you have the code. find it, fix it, submit a patch |
20:29.57 | Primer | I just presumed it was an addon, and that it was fixed |
20:30.01 | p3lim | I havent seen that error since mid-TBC |
20:30.12 | Primer | then you don't bg much |
20:30.25 | Primer | because I've seen it as recently as a month or two ago |
20:30.29 | p3lim | I don't play much :p |
20:30.36 | Primer | heh, I play all the time :/ |
20:30.40 | doom0r | Amadeo: the defaults are fine, they're so ugly you set up your own automatically |
20:30.41 | Primer | ok, lunch |
20:30.45 | p3lim | havent had an active account since may |
20:30.49 | Amadeo | doom0r: lol |
20:31.37 | starlon | Anyone else having troubling logging in? |
20:31.49 | doom0r | not on us |
20:31.50 | Shefki | Amadeo: I realize that the defaults make the barrier to entry a little higher, but I don't really see how that prevents someone from trying it. |
20:31.59 | starlon | As in, you get disconnected from the server. |
20:32.16 | doom0r | cache flush? |
20:32.52 | Amadeo | Shefki: I'm getting old and lazy |
20:33.17 | Amadeo | it's rough these days |
20:33.43 | starlon | Nope, didn't work. |
20:34.15 | doom0r | also, anything that's trying to gather a bunch of info that it would get from the cache, regardless of it being clean or not |
20:34.36 | EthanCentaurai | p3lim: Broker Equipment is broken in 4.0.1. To fix, remove the VARIABLES_LOADED stuff. |
20:34.50 | p3lim | EthanCentaurai: update |
20:35.32 | p3lim | as in get the newest version |
20:36.15 | EthanCentaurai | the version in the Curse Client is out of date |
20:36.21 | EthanCentaurai | that's where I fail |
20:36.49 | p3lim | yap, I havent updated anything on curse |
20:37.01 | stolenlegacy | @project wgclean |
20:37.01 | Shefki | Amadeo: As it is the architectural changes needed to make defaults make sense are "done" in my private branch I just need to fix the bugs it created. |
20:37.02 | Repo | stolenlegacy: http://www.wowace.com/addons/wgclean/. WGClean. Game: WoW. Status: Experimental needs final approval. stolenlegacy (Manager/Author). Updated: 26 minutes ago |
20:37.03 | stolenlegacy | offers a cookie in exchange for approval |
20:39.08 | *** join/#wowace DarkAudit (~Brian@64.181.5.194) |
20:41.14 | Flowyk | how to change children visibility dependant on the parrent? (dropdown list) |
20:42.14 | Shefki | Flowyk: Child frames or not Visible when their parent is hidden. |
20:42.14 | Flowyk | with GUI generated from table |
20:42.20 | Shefki | Thus we have IsVisible and IsShown |
20:42.53 | Shefki | Flowyk: inheritance is pretty clearly explained in the config table docs. |
20:43.43 | Flowyk | Shefki I have more childrens |
20:43.48 | Flowyk | and one dropdown list |
20:44.07 | Flowyk | its like "mode" |
20:44.12 | *** join/#wowace Axodious (~65d9rg4@96.23.115.106) |
20:44.18 | Flowyk | ... how to get the state of parrent? |
20:44.41 | EthanCentaurai | parent:IsVisible() |
20:45.12 | Flowyk | this will work in table for AceConfig? |
20:45.25 | *** join/#wowace ocularis (~wex@cm-84.208.106.46.getinternet.no) |
20:45.47 | *** join/#wowace Draake (~kvirc@c-67-164-106-50.hsd1.ca.comcast.net) |
20:48.11 | *** join/#wowace ocularis (~wex@cm-84.208.106.46.getinternet.no) |
20:48.24 | EthanCentaurai | try it and find out |
20:49.41 | quiescens | moo |
20:49.41 | Flowyk | it cant ... |
20:49.49 | *** join/#wowace tekkub (~tekkub@WoWUIDev/WoWI/Featured/Dongle/GitHub/Tekkub) |
20:49.49 | *** mode/#wowace [+v tekkub] by ChanServ |
20:49.51 | Flowyk | whats now? |
20:51.58 | ocularis | /reload |
20:52.01 | ocularis | oppsie |
20:56.09 | *** join/#wowace DarkAudit (~Brian@64.181.5.194) |
20:57.00 | *** join/#wowace ocularis (~wex@cm-84.208.106.46.getinternet.no) |
20:57.07 | *** join/#wowace Brandon_ (~rbarreiro@87.196.80.109) |
20:59.06 | *** join/#wowace lozon (~lozon@CPE0018f85e6502-CM001a66710456.cpe.net.cable.rogers.com) |
21:02.47 | *** join/#wowace VonhintenHOME` (~Kiss@c-71-203-110-77.hsd1.fl.comcast.net) |
21:02.55 | Pneumatus | # Rapture now cannot occur more than once every 12 sec, down from 6 sec. |
21:03.14 | Pneumatus | so i heard that 12 is down from 6 |
21:03.17 | Pneumatus | IN BACKWARDS LAND |
21:03.45 | doom0r | the frequency at which it can occur |
21:03.51 | doom0r | semantics, just like haste |
21:04.33 | Pneumatus | it can occur less frequently, which makes it up from 6 seconds |
21:05.04 | doom0r | the frequency is down across any time table |
21:05.20 | doom0r | apologizes for not letting Pneumatus have his moment |
21:06.06 | Pneumatus | nice to see that atonement subspec for disc is now basically worthless as well |
21:06.07 | arkanes_ | did they nerf revitalize yet? |
21:06.18 | Pneumatus | attonement is bad enough as it is, it didnt need nerfing |
21:06.28 | arkanes_ | I don't want to hear about any mana regen mechanic nerfs that are not "revitalize now increases the mana cost of all your spells by 10%" |
21:06.34 | arkanes_ | yeah I'm not sure why they did that |
21:06.38 | Pneumatus | its not like it ever hits anyway due to massive hitboxes |
21:06.59 | arkanes_ | the setup and investment into casting 5 smites was already a heavy enough cost for the regen |
21:07.12 | Pneumatus | especially with evangelism down to 5% total regen |
21:07.43 | arkanes_ | if they're going to leave evangelism lke that, they should up the buff duration and give disc access to free instant smites again |
21:07.44 | Pneumatus | the thing is, if you drop the 5 points from smite based disc stuff you have nothing worth putting the points in |
21:08.14 | arkanes_ | because then you can use your procs to roll your buff when you have gcds available, instead of having to cast smite for 10+ seconds |
21:08.19 | Pneumatus | and mana regen is gimped vs holy, where they have increased spirit regen |
21:08.53 | Pneumatus | with 100% attonement you could at least cast smite instead of heal |
21:09.33 | Pneumatus | nice that shadow mastery is actually of some scalable use though |
21:09.40 | Pneumatus | shame disc is still a complete waste of space |
21:10.02 | arkanes_ | good god |
21:10.06 | *** join/#wowace kandarz (~kandarz@c-67-183-240-167.hsd1.wa.comcast.net) |
21:10.08 | arkanes_ | they barely touched revitalize |
21:10.23 | thelibrarian | they need to just remove it |
21:10.34 | Megalon | I can touch you arkanes_ and it would certainly revitalize you |
21:10.40 | Pneumatus | cannot occur more than once every 12 sec (up from 6 sec). |
21:10.40 | arkanes_ | ooh baby |
21:11.08 | Pneumatus | so 12 is up from 6 for revitalize, but down from 6 for rapture |
21:11.11 | Pneumatus | consistancy troll |
21:11.27 | Megalon | oh, they finally realised that a talent that increases the %chance with icd is bullshit |
21:11.28 | arkanes_ | I mean I guess in absolute terms it'sa nerf |
21:11.34 | *** join/#wowace mitchnull (~opera@catv3EC944A1.pool.t-online.hu) |
21:11.38 | Megalon | and changed it so more point increase the amount gained |
21:11.39 | arkanes_ | since it's cut more than in half |
21:12.00 | vhaarr | haste: can you add a new health.colorCustom support to oUF? |
21:12.12 | thelibrarian | oh wait I know |
21:12.19 | vhaarr | haste: or meh, I guess I can do without |
21:12.22 | arkanes_ | but with 15% more mana relative to equal gear on other healers, it's not like they need incredibly powerful passive regen as well |
21:13.03 | thelibrarian | When you periodically heal with your Rejuvenation or Lifebloom spells, you have a 20% chance to instantly regenerate 2% of your total mana. This effect cannot occur more than once every 12 sec and reduces the healing done by Rejuvenation and Lifebloom for 12 sec. |
21:13.07 | thelibrarian | there, fixed |
21:13.19 | thelibrarian | *reduces the healing done by 50% |
21:13.39 | arkanes_ | :P |
21:14.18 | arkanes_ | whee light of dawn becomes a smart heal |
21:14.28 | thelibrarian | according to GC, mortal striking yourself to regen mana is a fun mechanic, so druids should get to share in the love too :) |
21:14.33 | arkanes_ | I will miss my healing lazer beams, but honestly the cone thing was a giant hassle |
21:14.40 | thelibrarian | it's still a cone though :( |
21:14.46 | arkanes_ | thelibrarian: exactly, and procs are fun, right? |
21:14.47 | thelibrarian | despite being target limited and smart |
21:14.54 | thelibrarian | exactly! |
21:15.06 | haste | vhaarr: can't you just put your own color at self.colors.health? |
21:15.12 | haste | vhaarr: and use colorHealth |
21:15.17 | vhaarr | oh I can |
21:15.20 | vhaarr | alright |
21:15.22 | arkanes_ | thelibrarian: and this gives a perfect reason to keep the restriction on buff removal! |
21:15.32 | arkanes_ | thelibrarian: you are a genius of game design |
21:15.33 | Repo | 10ice-hud: 03Parnic 041.7.3.1 * r747 : Tagging as 1.7.3.1 |
21:15.43 | thelibrarian | arkanes_: I'd like it a lot better if it was a targeted cone between me and who I cast it on, rather than depend on which way I'm facing |
21:15.56 | arkanes_ | thelibrarian: yes I've been wanting that since day 1 |
21:17.11 | thelibrarian | arkanes_: That change also helps discourage Rejuv spamming. hell, make it only reduce rejuv by 50% and not lifebloom :P |
21:17.35 | arkanes_ | haha blessed life and poi nerf |
21:17.38 | arkanes_ | who didn't see that coming |
21:17.58 | thelibrarian | not too surprised at poi nerf, it was OP for prot and probably ret too |
21:18.03 | arkanes_ | I did a bg in my pve gear, with no blessed life, and still easily outhealed incoming damage from any attacker except a mage |
21:18.14 | thelibrarian | i'd rather them make poi be a tier 3 talent and put something more useful in tier 1 |
21:18.33 | Pneumatus | im still not sure how resto shamans managed to avoid the nerfbat when every other healer got some nerfbat |
21:18.44 | thelibrarian | blizzard has always loved shamans best |
21:18.45 | Pneumatus | despite resto shamans being the most powerful healers at the moment |
21:18.57 | *** join/#wowace profalbert (~profalber@188-23-43-245.adsl.highway.telekom.at) |
21:19.01 | thelibrarian | except for the whole totem thing, so maybe it's a love/hate relationship |
21:19.02 | arkanes_ | poi in pve gave me a lot of freedom to keep standing in fire while I kept other people healed |
21:19.17 | arkanes_ | and basically immunized me against the classic healer mistake of healing everyone except myself |
21:19.27 | thelibrarian | they have to make them OP because their buffs are now inferior to everyone else's I guess |
21:19.27 | arkanes_ | it'd be nice to keep that |
21:19.48 | thelibrarian | it still does that, it just won't let you heal yourself for stupid amounts |
21:20.14 | arkanes_ | oh I see, I misread it |
21:20.33 | arkanes_ | thats fine then |
21:20.41 | arkanes_ | I wonder where I'm going to stick those points as prot |
21:20.49 | arkanes_ | divinity and hallowed ground I guess |
21:20.55 | thelibrarian | probably in ret for more dmg/threat |
21:21.19 | thelibrarian | they really want both of the other specs to subspec ret |
21:21.52 | *** join/#wowace Aeyan (~pancake@cpe-024-163-016-179.triad.res.rr.com) |
21:22.26 | arkanes_ | well holy is always going to be doing both prot and ret |
21:22.45 | arkanes_ | they need that 30% to holy shock from crusade, and they need wog and divinity in prot |
21:22.50 | thelibrarian | only because they moved eternal glory to prot |
21:23.08 | thelibrarian | which is a talent I both love and hate |
21:23.32 | thelibrarian | it procced 7 or 8 times in a row today for me in a raid |
21:23.50 | thelibrarian | but the lag on it makes me pause uncomfortably after using WoG to see if I get a free one or not |
21:24.00 | arkanes_ | yeah |
21:24.28 | arkanes_ | it's even worse at 85 when the amount of procs you get has an enormous effect on your mana efficiency |
21:24.39 | thelibrarian | go go rng healing |
21:24.40 | thelibrarian | daybreak procs too |
21:27.04 | arkanes_ | the inner focus change is bizarre |
21:27.24 | thelibrarian | using inner focus on heal would be a waste anyway, so I guess it sort of makes sense |
21:27.37 | arkanes_ | I have mine macroed into greater heal |
21:27.50 | arkanes_ | as disc anyway, I might do something else for holy |
21:28.19 | arkanes_ | er, holy doesn't get IF, ignore me :P |
21:28.38 | Pneumatus | yeh i have mine macrod to GH also |
21:32.23 | *** join/#wowace gaellalire (~Adium@mut38-5-82-246-188-2.fbx.proxad.net) |
21:32.25 | arkanes_ | I think mmo-c is showing level 1 values for all those heavy nerfs to melee abilities |
21:32.36 | arkanes_ | GC said they were making all those percentages scale with level |
21:33.15 | *** part/#wowace mitchnull (~opera@catv3EC944A1.pool.t-online.hu) |
21:33.30 | thelibrarian | arkanes_: oh? I haven't seen anything in the data files to indicate that the engine is capable of scaling coefficient based on level |
21:34.53 | arkanes_ | wasnt gc, but zarhym |
21:34.54 | arkanes_ | http://blue.mmo-champion.com/t/27497534774/so-enough-yet-with-the-bs-unbalance-1-60/ |
21:36.02 | thelibrarian | hmm, I'll see if I can find anything. the scaling tables I saw only seemed to have the base points in there. might be one of the unknown fields that's always 0 though |
21:36.43 | thelibrarian | unless they're just going to hardcode that into the engine itself |
21:39.22 | *** join/#wowace oscarucb (~oscarucb@d60-65-254-150.col.wideopenwest.com) |
21:44.13 | oscarucb | has anyone seen AceGUI TreeGroup fail to draw randomly? |
22:04.01 | *** join/#wowace pompy (~Mike@c-76-116-64-179.hsd1.nj.comcast.net) |
22:04.31 | *** join/#wowace Daegalus (~daegalus@dsl081-057-092.sfo1.dsl.speakeasy.net) |
22:05.30 | *** join/#wowace tlund (~tlund@envy.nxs.se) |
22:06.12 | *** join/#wowace Tuller (~muffins@c-69-143-52-174.hsd1.va.comcast.net) |
22:09.08 | Fisker | slaps Tuller around a bit with a large trout |
22:09.17 | Tuller | clearly |
22:11.52 | *** join/#wowace TNZe (~evil@ti0042a380-4395.bb.online.no) |
22:23.53 | harl | http://www.collegehumor.com/video:1917993 |
22:24.10 | *** join/#wowace TNSe (~evil@ti0042a380-4395.bb.online.no) |
22:28.19 | *** join/#wowace lozon2 (~lozon@CPE0018f85e6502-CM001a66710456.cpe.net.cable.rogers.com) |
22:30.08 | Repo | 10librescomm-1-0: 03myrroddin * r63 LibResComm-1.0/LibResComm-1.0.lua: deDE, koKR, zhCN, zhTW translations added |
22:31.03 | *** join/#wowace tekkub (~tekkub@WoWUIDev/WoWI/Featured/Dongle/GitHub/Tekkub) |
22:31.03 | *** mode/#wowace [+v tekkub] by ChanServ |
22:32.02 | Repo | 10librescomm-1-0: 03myrroddin 04r64 * r64 : Tagging as r64 |
22:46.55 | Repo | 10auracle: 03taleden * r107 Auracle.toc: - 1.2.3-beta-1 |
22:48.19 | Repo | 10auracle: 03taleden 041.2.3-beta-1 * r108 : Tagging as 1.2.3-beta-1 |
22:54.22 | Pneumatus | oh lawd, a massive sticky rotation in the cata dungeons forum... guess they have been working hard on the raid content |
22:55.41 | Repo | 10ark-inventory: 03Arkayenro * r276 / (8 files in 3 directories): (Message trimmed by 1 line) |
22:55.42 | Repo | *3.02.64 (04-NOV-2010)* |
22:55.43 | Repo | * fixed - cooldowns should now display properly when "on global cooldown" is enabled |
22:55.44 | Repo | * fixed - mount keybinding when used with a modifer should properly force an alterntive mount-type to be summoned, eg flying but you want ground. swimming (at the surface) but you want flying |
22:55.45 | Repo | * changed - framelevel workaround warnings set to disabled by default, and the warnings will now print (they never appeared regardless of setting) |
22:58.32 | Repo | 10broker_altguild: 03yess 04v1.5.1 * r22 : Tagging as v1.5.1 |
22:59.37 | *** join/#wowace Mikk (~Mikk@WoWUIDev/mikk) |
22:59.37 | *** mode/#wowace [+v Mikk] by ChanServ |
22:59.55 | Repo | 10ark-inventory: 03Arkayenro 043.02.64 * r277 : (Message trimmed by 1 line) |
22:59.56 | Repo | *3.02.64 (04-NOV-2010)* |
22:59.57 | Repo | * fixed - cooldowns should now display properly when "on global cooldown" is enabled |
22:59.58 | Repo | * fixed - mount keybinding when used with a modifer should properly force an alterntive mount-type to be summoned, eg flying but you want ground. swimming (at the surface) but you want flying |
22:59.59 | Repo | * changed - framelevel workaround warnings set to disabled by default, and the warnings will now print (they never appeared regardless of setting) |
23:03.44 | *** join/#wowace quiescens (~quiescens@203-217-28-61.perm.iinet.net.au) |
23:04.03 | Repo | 10o-uf_banzai: 03Rabbit * r41 oUF_Banzai.lua: Hacky way of preserving color on health bars. |
23:05.00 | *** join/#wowace Jyggaa (ordog@unaffiliated/jygga) |
23:07.49 | *** join/#wowace groktar (~gr@209-234-197-181.static.twtelecom.net) |
23:15.15 | *** join/#wowace Arrowmaster (arrow@WoWUIDev/WoWAce/ResponsibleForEverythingAndNothing/Arrowmaster) |
23:18.18 | *** part/#wowace CrazyBenny_ (s_m@a02-0602c.kn.vutbr.cz) |
23:26.58 | arkanes | thelibrarian: oh man the DD forums went apeshit |
23:31.55 | *** join/#wowace ckknight (~ckknight@WoWUIDev/WoWAce/CurseStaff/CurseForge/ckknight) |
23:31.55 | *** mode/#wowace [+o ckknight] by ChanServ |
23:32.29 | Adirelle | does anyone remember of a pretty long article about various loot systems ? |
23:32.46 | Adirelle | google failed to help me |
23:34.43 | thelibrarian | arkanes: lol. yeah, mmo posted some stuff without the scaling |
23:34.58 | *** join/#wowace LexSfX (~lexlexlex@CPE0040f449aaec-CM000a7369bd4f.cpe.net.cable.rogers.com) |
23:35.10 | thelibrarian | the % weapon damage is definitely something that can be scaled. just not sure about the AP coefficients |
23:35.40 | Repo | 10adibags: 03Adirelle 07master * v1.2-beta-2-7-g1a84262 / (2 files in 2 directories): [+3 commits] |
23:35.41 | Repo | 1a84262: Fixed the bag emptying process. |
23:35.42 | Repo | 47fd9d2: Merge github.com:Adirelle/AdiBags |
23:35.43 | Repo | 6b28820: Small README update. |
23:38.44 | arkanes | "Combat spec: Incontinent and Un-fun " |
23:38.51 | arkanes | ... I don't think that word means what you think it means |
23:40.04 | Megalon | combat makes you piss yourself? :( |
23:46.52 | Primer | shit yourself! |
23:48.08 | pompy | so is the new beta build.. 13241 or 13242? lol |
23:52.02 | *** join/#wowace Silker (~ponies@5acedf4a.bb.sky.com) |
23:57.00 | *** join/#wowace ckknight (~ckknight@WoWUIDev/WoWAce/CurseStaff/CurseForge/ckknight) |
23:57.00 | *** mode/#wowace [+o ckknight] by ChanServ |
23:57.33 | Stanzilla | GetBuildInfo() says 1 |
23:59.02 | pompy | ahh kk bibi mistyped it on his facebook post heh |