Next>> Scroll to Bottom
Stuff goes here
L1[00:12:16] ⇨ Joins: Caitlyn (Katie@eos.pc-logix.com)
L2[00:12:16] *** Server sets mode: +CQcnrtf #RegisterYourNameMoron
L3[00:12:52] *** Ecu is now known as Ecu|Zz_
L4[00:13:57] ⇦ Quits: Jdembo|Giraffe (~Giraffest@c-50-184-24-160.hsd1.ca.comcast.net) (Quit: Leaving)
L5[00:18:17] ⇨ Joins: Caitlyn (Katie@eos.pc-logix.com)
L6[00:18:17] *** Server sets mode: +CQcnrtf #RegisterYourNameMoron
L7[00:18:17] *** Server sets mode: +CQcnrtf #RegisterYourNameMoron
L8[00:22:31] *** Zidane is now known as Zidane|Away
L9[00:25:27] ⇨ Joins: mikeprimm_ (~mikeprimm@cpe-70-116-51-5.austin.res.rr.com)
L10[00:27:14] ⇨ Joins: Devin_Mobile (uid44396@id-44396.highgate.irccloud.com)
L11[00:29:54] ⇦ Quits: cpup (~cpup@32.218.113.33) (Ping timeout: 378 seconds)
L12[00:30:23] ⇨ Joins: Jetra (~Jetra@2607:fcd0:daaa:1400:f::2)
L13[00:30:44] ⇦ Quits: MalkContent (MalkConten@p4FDCC03B.dip0.t-ipconnect.de) (Quit: http://www.kiwiirc.com/ - A hand crafted IRC client)
L14[00:30:57] ⇨ Joins: AG_Clinton (Clinton@staff.allgamer.net)
L15[00:38:22] ⇦ Quits: Razaekel (~Razaekel@ec2-54-68-136-214.us-west-2.compute.amazonaws.com) (Quit: Per Terra Ad Astra)
L16[00:40:26] * ollieread reads up
L17[00:41:24] <Naiten> read oll way up
L18[00:41:33] <Lymia> fry, I'll refrain from using your code too much. :P
L19[00:41:37] <Lymia> I won't spoil my MIT license.
L20[00:42:14] <ollieread> Lymia: You'll have a job, I'm fairly certain fry has a lot of code in forge :P
L21[00:42:30] <Lymia> ollieread, ... code not in Forge!
L22[00:43:49] ⇦ Quits: Girafi (Girafi@0x555178eb.adsl.cybercity.dk) ()
L23[00:44:48] ⇨ Joins: Razaekel (~Razaekel@ec2-54-68-136-214.us-west-2.compute.amazonaws.com)
L24[00:45:16] ⇨ Joins: cpup (~cpup@32.218.113.33)
L25[00:46:03] <ollieread> :P
L26[00:47:28] ⇦ Quits: jakimfett (~overnet@c-73-180-36-141.hsd1.or.comcast.net) (Quit: No Ping reply in 180 seconds.)
L27[00:49:47] ⇨ Joins: jakimfett (~overnet@c-73-180-36-141.hsd1.or.comcast.net)
L28[00:50:36] ⇦ Quits: cpup (~cpup@32.218.113.33) (Ping timeout: 200 seconds)
L29[00:52:56] *** OndraSter|off is now known as OndraSter
L30[00:55:36] ⇦ Quits: mikeprimm_ (~mikeprimm@cpe-70-116-51-5.austin.res.rr.com) (Quit: mikeprimm_)
L31[00:56:44] ⇨ Joins: cpup (~cpup@32.218.113.33)
L32[01:01:24] <ollieread> Lymia: How goes your research system?
L33[01:02:50] ⇦ Quits: cpup (~cpup@32.218.113.33) (Ping timeout: 189 seconds)
L34[01:03:24] <Lymia> ollieread, I'm still
L35[01:03:26] <Lymia> Setting up build.
L36[01:03:26] <Lymia> :D
L37[01:03:31] <Lymia> I'll get to work as soon as I finish that
L38[01:03:50] <ollieread> You said you were starting earlier :O
L39[01:04:09] <Lymia> Design work!
L40[01:04:14] <Lymia> Like, figuring out how I'd use it
L41[01:04:19] <Lymia> I do a lot of that before coding.
L42[01:04:20] <Lymia> XD
L43[01:05:42] ⇨ Joins: mikeprimm_ (~mikeprimm@cpe-70-116-51-5.austin.res.rr.com)
L44[01:07:33] ⇨ Joins: matthew|mobile (uid27821@id-27821.highgate.irccloud.com)
L45[01:08:16] <Naiten> I've seen Class<? extends XXX> in the method args declaration in PacketPipeline code, is there a way to check if class implements another class? I've tried Class<? implements XXX>, but that gave me an error...
L46[01:09:34] ⇨ Joins: McJty (~McJty@bluecoat2.uzleuven.be)
L47[01:09:57] <McJty> Hi
L48[01:10:06] <Lymia> <? extends XXX> I believe
L49[01:10:14] <Lymia> Still that
L50[01:10:33] <ollieread> Lymia: I'm figuring out some stuff too
L51[01:10:38] <ollieread> Could call it design too I guess
L52[01:10:58] <xaero> Naiten: do you have an object isntance? use instanceof
L53[01:11:18] <Lymia> Yeah.
L54[01:11:29] <Naiten> xaero, i want to pass a class, not an instance
L55[01:11:34] <Lymia> Class<? extends XXX> would be an generics declaration, right?
L56[01:11:58] ⇨ Joins: moonrise (~hehehe@58.239.217.152)
L57[01:12:21] <ollieread> I'm trying to figure out the best way to do experiences on the top of forge events
L58[01:13:18] <Lymia> fry, Class<? extends XXX> is Class[T] forSome T <: XXX, right?
L59[01:13:53] <Lymia> Or, er
L60[01:14:09] <Lymia> forSome { type T <: XXX }
L61[01:14:12] <Lymia> Forgot the syntax for that
L62[01:14:20] ⇨ Joins: Greenphlem (uid22276@id-22276.uxbridge.irccloud.com)
L63[01:14:28] <Naiten> Ah, I'd better just register renders like it was done before...
L64[01:14:44] ⇨ Joins: cpup (~cpup@32.218.113.33)
L65[01:15:30] <Lymia> Naiten, Class<? extends Runnable> is legal to write
L66[01:17:36] <xaero> Naiten: is this what you're asking? http://stackoverflow.com/questions/10971888/implements-vs-extends-in-generics-in-java
L67[01:17:40] *** Crystal|AFK is now known as CrystalMare
L68[01:18:44] *** Genji is now known as Genji|away
L69[01:19:26] <Naiten> xaero, Lymia, thanks
L70[01:19:35] <fry> Lymia: yup
L71[01:20:40] ⇦ Quits: cpup (~cpup@32.218.113.33) (Ping timeout: 200 seconds)
L72[01:20:56] <Lymia> I haven't seen it in Java before
L73[01:21:25] <CrystalMare> That is valid
L74[01:22:32] <CrystalMare> even with interfaces, the keyword is still extends
L75[01:25:26] ⇨ Joins: iceman11a (iceman11a@cpe-74-141-56-150.swo.res.rr.com)
L76[01:26:50] ⇨ Joins: cpup (~cpup@32.218.113.33)
L77[01:28:45] ⇦ Quits: moonrise (~hehehe@58.239.217.152) (Ping timeout: 378 seconds)
L78[01:29:24] <fry> java calls those bounded wildcards: http://docs.oracle.com/javase/tutorial/extra/generics/wildcards.html
L79[01:31:33] ⇨ Joins: MalkContent (MalkConten@p4FDCF882.dip0.t-ipconnect.de)
L80[01:32:37] <Lymia> I'm most familiar with Scala, so. :P
L81[01:32:52] <Lymia> I think Class<?> is different from Class[T] forSome { type T } though
L82[01:33:06] <Lymia> Scala doesn't even let the T be an Object, right?
L83[01:33:48] <fry> sure it does
L84[01:33:55] <fry> Object == AnyRef
L85[01:34:13] <Lymia> I thought the T was some weird variant of Any
L86[01:35:07] <Lymia> Yep
L87[01:35:11] <Lymia> It coerces to Any
L88[01:35:13] <Lymia> Not AnyRef
L89[01:35:31] <fry> AnyRef <: Any :P
L90[01:36:27] <Lymia> But not Any <: AnyRef
L91[01:36:50] <Lymia> Which matters when interfacing with Java code
L92[01:37:25] ⇦ Quits: iceman11a (iceman11a@cpe-74-141-56-150.swo.res.rr.com) (Quit: Leaving)
L93[01:37:50] * fry isn't exactly sure if Class<?> is Class[_ <: Any] or Class[_ <: AnyRef] :P
L94[01:38:01] <Lymia> In Java
L95[01:38:07] <Lymia> You can't write Class<int> in the first place.
L96[01:38:32] <fry> but Class<Integer> exists, and Scala integrates with boxing
L97[01:38:38] <Lymia> Does it?
L98[01:38:46] <fry> So, Class[Int] might become Class<integer>
L99[01:38:47] <Lymia> I thought if a Java thing returned Class<Integer>
L100[01:38:52] <Lymia> Scala would, well...
L101[01:39:01] <fry> Other way around might work better :P
L102[01:39:02] <Lymia> Treat that as a Class[java.lang.Integer] instead of a Class[scala.Int]
L103[01:39:07] ⇨ Joins: sww1235 (~sww1235@news063183.halls.colostate.edu)
L104[01:41:24] ⇦ Quits: cpup (~cpup@32.218.113.33) (Ping timeout: 378 seconds)
L105[01:42:31] ⇦ Quits: mikeprimm_ (~mikeprimm@cpe-70-116-51-5.austin.res.rr.com) (Quit: mikeprimm_)
L106[01:42:50] *** CrystalMare is now known as Crystal|AFK
L107[01:45:24] <Lymia> fry, I had lots of fun with some Forge classes
L108[01:45:27] <Lymia> That had "Object..."
L109[01:45:34] ⇨ Joins: cpup (~cpup@32.218.113.33)
L110[01:45:36] <Lymia> Since Scala refuses to implicitly cast Ints or Floats into there.
L111[01:45:41] <Lymia> "It's an AnyRef..., right?"
L112[01:45:49] <Lymia> I wish Scala treated Object in Java code as Any
L113[01:45:59] <Lymia> And only allowed AnyVal or AnyRef to be expressed in Scala code
L114[01:46:02] <Lymia> Instead of the other way around
L115[01:46:50] <fry> Sadly, Object can be null :P
L116[01:50:09] *** OndraSter is now known as OndraSter|off
L117[01:50:18] <Lymia> Any can't be null?
L118[01:50:19] <Lymia> urgh
L119[01:50:22] <Lymia> That explains it
L120[01:50:31] <Lymia> Wait, what, really?
L121[01:50:33] * Lymia checks
L122[01:50:58] <Lymia> scala> null.asInstanceOf[AnyRef].asInstanceOf[Any]
L123[01:50:58] <Lymia> res3: Any = null
L124[01:50:58] <Lymia> lies
L125[01:54:06] <fry> Ah, AnyVal can't be null :P
L126[01:54:15] <fry> And Any can be AnyVal
L127[01:55:08] ⇦ Quits: cpup (~cpup@32.218.113.33) (Ping timeout: 200 seconds)
L128[01:55:29] ⇦ Quits: drazisil (~drazisil@cpe-69-207-23-141.buffalo.res.rr.com) (Read error: Connection reset by peer)
L129[01:55:34] ⇨ Joins: Xexanos (~lhilgenst@ip-78-94-101-188.hsi02.unitymediagroup.de)
L130[01:55:45] ⇦ Quits: Xexanos (~lhilgenst@ip-78-94-101-188.hsi02.unitymediagroup.de) (Client Quit)
L131[01:55:50] *** Xaw4|Sleep is now known as Xaw4|Work
L132[01:58:33] ⇦ Quits: MalkContent (MalkConten@p4FDCF882.dip0.t-ipconnect.de) (Quit: http://www.kiwiirc.com/ - A hand crafted IRC client)
L133[02:00:33] ⇨ Joins: cpup (~cpup@32.218.113.33)
L134[02:00:37] <Lymia> fry,
L135[02:00:37] <Lymia> scala> null.asInstanceOf[AnyRef].asInstanceOf[AnyVal]
L136[02:00:37] <Lymia> res4: AnyVal = null
L137[02:00:38] <Lymia> Liees
L138[02:00:39] ⇦ Quits: ElgarL (~ElgarL@cpc6-hawk15-2-0-cust537.18-1.cable.virginm.net) (Ping timeout: 378 seconds)
L139[02:00:52] <Lymia> Until it injects instructions to throw an NullPointerException
L140[02:00:55] <Lymia> It can be null
L141[02:01:59] <MCPBot_Reborn> [TEST CSV] Pushing snapshot_20150129 mappings to Forge Maven.
L142[02:02:03] <MCPBot_Reborn> [TEST CSV] Maven upload successful for mcp_snapshot-20150129-1.8.zip (mappings = "snapshot_20150129" in build.gradle).
L143[02:02:13] <MCPBot_Reborn> Semi-live (every 10 min), Snapshot (daily ~3:00 EST), and Stable (committed) MCPBot mapping exports can be found here: http://export.mcpbot.bspk.rs/
L144[02:02:33] ⇦ Quits: jk-5 (~jk-5@D97A1938.cm-3-3a.dynamic.ziggo.nl) (Quit: Bye)
L145[02:03:03] ⇨ Joins: jk-5 (~jk-5@D97A1938.cm-3-3a.dynamic.ziggo.nl)
L146[02:04:04] <fry> Hmm, asInstanceOf is clever
L147[02:04:15] <fry> It does autoboxing :P
L148[02:05:33] <Lymia> scala> null.asInstanceOf[AnyRef].asInstanceOf[AnyVal].getClass
L149[02:05:33] <Lymia> java.lang.NullPointerException
L150[02:05:37] <Lymia> What autoboxing
L151[02:05:37] <Lymia> :P
L152[02:05:51] <fry> val x: AnyRef = null; val y: Any = x; val z: AnyVal = y
L153[02:05:55] *** Jake_Evans is now known as Jake_Away
L154[02:06:00] <fry> <console>:9: error: type mismatch;
L155[02:06:10] <fry> found : Any required: AnyVal
L156[02:06:19] <Lymia> I believe you need an asInstanceOf to coerce null to Any
L157[02:06:26] <Lymia> AnyVal*
L158[02:06:28] <Lymia> But, still...
L159[02:06:28] ⇨ Joins: Trangar (~Trangar3@46.144.110.37)
L160[02:06:40] <fry> scala> null.asInstanceOf[Int]
L161[02:06:44] <fry> res4: Int = 0
L162[02:06:58] <Lymia> ... interesting
L163[02:07:02] <Lymia> That's not very normal
L164[02:07:17] <fry> Something more than just type coersion is happening here :P
L165[02:09:05] <Lymia> Yeah.
L166[02:09:10] <Lymia> Could that be a bug, even?
L167[02:09:27] <fry> Lymia: http://www.scala-lang.org/files/archive/spec/2.11/06-expressions.html#the-null-value
L168[02:11:24] <Lymia> scala> null.asInstanceOf[Any].asInstanceOf[Int]
L169[02:11:25] <Lymia> res10: Int = 0
L170[02:11:26] <Lymia> Interestting...
L171[02:11:31] <fry> Yup
L172[02:12:12] ⇦ Quits: mbl (~chatzilla@CPE-58-172-37-177.mnqi2.cht.bigpond.net.au) (Ping timeout: 194 seconds)
L173[02:12:13] *** Devin_Mobile is now known as Devin_Mobile|ZZZ
L174[02:12:39] <fry> null.asInstanceOf[Any] is still null
L175[02:12:53] <fry> and asIsntanceOf is just a normal object method
L176[02:12:59] ⇨ Joins: Techno (~Administr@cpe-66-67-8-129.rochester.res.rr.com)
L177[02:13:15] *** Cozza38|Away is now known as Cozza38
L178[02:13:23] <fry> (at least at the language level :P)
L179[02:14:23] <fry> Bottom types are interesting :P
L180[02:15:31] <fry> http://pastebin.com/Qn7bKQSv
L181[02:17:09] <Lymia> Also
L182[02:17:09] ⇦ Quits: cpup (~cpup@32.218.113.33) (Ping timeout: 378 seconds)
L183[02:17:14] <Lymia> "Object" from java is indeed Any
L184[02:17:17] <Lymia> But Object... was broken
L185[02:17:20] ⇨ Joins: cpup (~cpup@32.218.113.33)
L186[02:19:13] ⇨ Joins: RANKSHANK (~Michael@CPE-121-218-193-48.lnse4.cht.bigpond.net.au)
L187[02:19:20] ⇦ Parts: RANKSHANK (~Michael@CPE-121-218-193-48.lnse4.cht.bigpond.net.au) ())
L188[02:19:45] ⇨ Joins: ErusPrime (~chatzilla@71.50.21.35)
L189[02:21:16] <ErusPrime> So I've decided to go ahead and try to do that thing on my own. I've got everything all set up but my common folder is showing as empty in eclipse. might anyone be able to explain why?
L190[02:22:23] *** mezz_ is now known as mezz
L191[02:25:57] ⇦ Quits: ErusPrime (~chatzilla@71.50.21.35) (Quit: ChatZilla 0.9.91.1 [Firefox 35.0.1/20150122214805])
L192[02:28:49] ⇨ Joins: mbl (~chatzilla@CPE-58-172-37-177.mnqi2.cht.bigpond.net.au)
L193[02:30:50] ⇦ Quits: cpup (~cpup@32.218.113.33) (Ping timeout: 189 seconds)
L194[02:32:25] ⇨ Joins: pugi (~pugi@host-091-097-083-234.ewe-ip-backbone.de)
L195[02:34:25] ⇨ Joins: PrinceCat (~PrinceCat@124-170-156-26.dyn.iinet.net.au)
L196[02:37:06] ⇨ Joins: cpup (~cpup@32.218.113.33)
L197[02:42:03] ⇦ Quits: Mitchellbrine (uid38456@id-38456.uxbridge.irccloud.com) (Quit: Connection closed for inactivity)
L198[02:43:57] ⇦ Quits: PrinceCat (~PrinceCat@124-170-156-26.dyn.iinet.net.au) ()
L199[02:45:17] ⇨ Joins: megamit (~megamit@94.14.48.228)
L200[02:45:36] ⇨ Joins: covers1624ForReal (~covers162@ppp118-210-8-20.lns20.adl2.internode.on.net)
L201[02:45:42] ⇨ Joins: PrinceCat (~PrinceCat@124-170-156-26.dyn.iinet.net.au)
L202[02:45:43] ⇦ Quits: covers1624ForReal (~covers162@ppp118-210-8-20.lns20.adl2.internode.on.net) (Remote host closed the connection)
L203[02:45:46] ⇦ Quits: sww1235 (~sww1235@news063183.halls.colostate.edu) (Quit: Leaving)
L204[02:45:58] ⇨ Joins: covers1624 (~covers162@ppp118-210-8-20.lns20.adl2.internode.on.net)
L205[02:46:47] *** kroeser|away is now known as kroeser
L206[02:46:52] ⇦ Quits: Upth (~ogmar@108-204-125-173.lightspeed.frokca.sbcglobal.net) (Ping timeout: 194 seconds)
L207[02:47:34] ⇦ Quits: covers (~covers162@ppp118-210-245-194.lns20.adl6.internode.on.net) (Ping timeout: 200 seconds)
L208[02:48:26] ⇦ Quits: cpup (~cpup@32.218.113.33) (Ping timeout: 189 seconds)
L209[02:51:44] ⇨ Joins: Upthorn (~ogmar@108-204-125-173.lightspeed.frokca.sbcglobal.net)
L210[02:53:20] ⇨ Joins: cpup (~cpup@32.218.113.33)
L211[02:58:16] ⇦ Quits: McJty (~McJty@bluecoat2.uzleuven.be) (Quit: Poof)
L212[03:03:17] ⇦ Quits: cpup (~cpup@32.218.113.33) (Ping timeout: 189 seconds)
L213[03:10:06] ⇨ Joins: cpup (~cpup@32.218.113.33)
L214[03:14:10] ⇦ Quits: cpup (~cpup@32.218.113.33) (Ping timeout: 194 seconds)
L215[03:14:21] ⇨ Joins: drazisil (~drazisil@cpe-69-207-23-141.buffalo.res.rr.com)
L216[03:14:58] ⇦ Quits: PrinceCat (~PrinceCat@124-170-156-26.dyn.iinet.net.au) ()
L217[03:16:19] ⇨ Joins: cpup (~cpup@32.218.113.33)
L218[03:18:55] *** manmaed|AFK is now known as manmaed
L219[03:21:47] <RikSolo> how would i go about registering my block/itemblock combination?
L220[03:22:32] ⇦ Quits: cpup (~cpup@32.218.113.33) (Ping timeout: 189 seconds)
L221[03:25:02] ⇦ Quits: Kadah (~Kadah@72.21.158.30) (Quit: My planet needs me.)
L222[03:25:50] <drazisil> gameregistry I believe
L223[03:26:20] <drazisil> Take a look though http://www.wuppy29.com/minecraft/modding-tutorials/forge-modding-1-7/
L224[03:27:46] <drazisil> nope, not gameregitry, that that explains how, very good :)
L225[03:27:52] <drazisil> but*
L226[03:29:13] ⇨ Joins: PrinceCat (~PrinceCat@124-170-156-26.dyn.iinet.net.au)
L227[03:29:41] ⇨ Joins: cpup (~cpup@32.218.113.33)
L228[03:33:29] ⇨ Joins: Szernex (~Szernex@194-166-195-32.adsl.highway.telekom.at)
L229[03:34:06] *** sk89q is now known as sk89q|away
L230[03:38:00] ⇦ Quits: cpup (~cpup@32.218.113.33) (Ping timeout: 378 seconds)
L231[03:38:19] ⇨ Joins: Hunterz (~hunterz@62.182.234.189)
L232[03:40:03] ⇨ Joins: cpup (~cpup@32.218.113.33)
L233[03:43:31] *** kroeser is now known as kroeser|away
L234[03:44:24] ⇦ Quits: cpup (~cpup@32.218.113.33) (Ping timeout: 200 seconds)
L235[03:44:55] *** kroeser|away is now known as kroeser
L236[03:45:02] <RikSolo> oh, i thinkimight have found it, let's test.
L237[03:46:09] ⇨ Joins: moonrise (~hehehe@58.239.217.152)
L238[03:46:56] *** Quetzi|off is now known as Quetzi
L239[03:47:34] ⇨ Joins: MalkContent (MalkConten@p4FDCD507.dip0.t-ipconnect.de)
L240[03:48:22] <MalkContent> Wuppy, you don't happen to have a tutorial on IItemRenderer, do you?
L241[03:50:30] <Ivorius> MalkContent: https://gist.github.com/Ivorforce/38b27751d323abcfe3df
L242[03:50:31] <Ivorius> :P
L243[03:50:38] ⇦ Quits: Hanii (~Hanii@87.113.240.145) (Ping timeout: 200 seconds)
L244[03:50:47] <Ivorius> Basically you register for specific render types
L245[03:50:53] <Ivorius> And then go apeshit drawing quads
L246[03:50:58] <Ivorius> No tutorials required really
L247[03:51:05] ⇨ Joins: Hanii (~Hanii@234.161.200.146.dyn.plus.net)
L248[03:51:25] <MalkContent> I know. I'd basically just like to see a version that imitated regular rendering
L249[03:51:28] <MalkContent> so i can modify it
L250[03:51:51] <Ivorius> https://github.com/Ivorforce/Psychedelicraft/blob/master/src/main/java/ivorius/psychedelicraft/client/rendering/ItemRendererThatMakesFuckingSense.java
L251[03:51:52] ⇨ Joins: cpup (~cpup@32.218.113.33)
L252[03:51:53] <MalkContent> keep second guessing myself
L253[03:51:56] <Ivorius> This basically does
L254[03:52:03] <Ivorius> Except that it supports a bit more
L255[03:52:08] <Ivorius> Like, transparency
L256[03:52:13] <Ivorius> Hence the name :p
L257[03:52:31] <Mraof> mRendererThatMakesF
L258[03:52:33] <MalkContent> *squints eyes*
L259[03:52:35] <Mraof> That pinged me
L260[03:52:49] <Mraof> Oh well
L261[03:52:57] <Ivorius> How did that ping you o.0
L262[03:53:06] <Mraof> mr\w*f
L263[03:53:15] <MalkContent> well that totally doesn't happen to be the thing I have been at war with for the last two days or something.. *cough* :D
L264[03:53:20] ⇨ Joins: acegiak (~acegiak@ppp203-122-217-74.static.internode.on.net)
L265[03:53:32] <Ivorius> lol
L266[03:53:41] <Mraof> Or technically I made [Mm][rR]\w*[fF] ping me
L267[03:53:48] <Ivorius> MalkContent: If you properly credit me and link the original in the class, you may copy the code :P
L268[03:54:16] <MalkContent> was just gonna ask that
L269[03:54:26] <MalkContent> will do
L270[03:55:29] <acegiak> does anyone know what the correct way to remove gear from a mob is? cause entityliving.setcurrentitemorarmour(0,null) seems to cause NPEs occasionally with mob rendering
L271[03:55:36] <MalkContent> I'm crying a little now, because all the hours feel wasted ^^
L272[03:55:44] <Ivorius> Heh
L273[03:55:52] <MalkContent> well maybe the takeaway is a bit more opengl knowledge
L274[03:56:05] *** Crystal|AFK is now known as CrystalMare
L275[03:56:17] <MalkContent> psa: opengl can't easily do hsv adjustment
L276[03:56:20] <Ivorius> Oh, and this is how it's used https://github.com/Ivorforce/Psychedelicraft/blob/master/src/main/java/ivorius/psychedelicraft/items/ItemBottle.java
L277[03:56:46] <MalkContent> xD
L278[03:56:48] <MalkContent> o look
L279[03:56:48] *** diesieben|away is now known as diesieben07
L280[03:56:53] <MalkContent> you are doing an overlay, too
L281[03:57:06] <Ivorius> Bottle with transparent liquid inside :P
L282[03:57:21] <MalkContent> xD
L283[03:57:26] <MalkContent> colored base
L284[03:57:41] <MalkContent> and not-to-be-colored on top, eh?
L285[03:57:52] <MalkContent> some alpha channel in the top layer? ^^
L286[03:58:32] <Ivorius> For me, no, but you can use it for that :P
L287[03:58:38] <Ivorius> For me both are colored
L288[03:58:41] <Ivorius> But in different colors
L289[03:59:14] ⇦ Quits: cpup (~cpup@32.218.113.33) (Ping timeout: 194 seconds)
L290[03:59:39] <MalkContent> the biggest gain to what i already have is basically the regular rendering code, so i don't have to piece it together from vanilla stuff
L291[04:00:00] <MalkContent> i think i can manage to twist it into what i need if need be :D
L292[04:00:11] <fry> (btw, be prepared for everything changing in 1.8 :P)
L293[04:00:25] <Ivorius> fry: Gonna rename isRemote? :D
L294[04:00:40] * fry kicks Ivorius
L295[04:01:11] <MalkContent> is that a joke on how it was isClient at some point?
L296[04:01:20] * Lymia sits in fry's lap -w-
L297[04:01:24] <Lymia> fry, what should I be watching for?
L298[04:01:49] <fry> in 1.8? Or, just, like, in general? :P
L299[04:01:57] <Quetzi> its probably the most renamed mapping MalkContent ;)
L300[04:02:08] ⇦ Quits: jiraiyah (~jiraiyah@69.197.186.165) (Ping timeout: 189 seconds)
L301[04:02:08] ⇨ Joins: jiraiyah_ (~jiraiyah@188.245.166.255)
L302[04:02:21] <MalkContent> huh. btw how do you contribute the naming?
L303[04:02:38] <fry> /msg MCPBot_Reborn !help
L304[04:02:38] <Quetzi> closely followed by everything in CommandBase I think rofl
L305[04:03:21] <MalkContent> ty
L306[04:03:46] <fry> Lymia, ever worked with shapeless?
L307[04:03:57] <Lymia> What's it do?
L308[04:04:05] <Lymia> It's the, uh
L309[04:04:09] * fry is trying to find out :P
L310[04:04:15] <Lymia> Dependent typing library for Scala, right/
L311[04:04:27] <fry> Yup
L312[04:05:17] <fry> Basically: I want to formalize case class + regex for extracting it from string
L313[04:05:55] <fry> And do nested matching after that: str match { case A(B("1"), C) => }
L314[04:06:27] <fry> haskell's Read typeclass looks like the closest thing to that
L315[04:07:14] <fry> (But I'm not familliar with it enough :P)
L316[04:07:19] <PrinceCat> Does anyone have a modular item rendering tutorial or source that I can look at? I'm having a look at the source for mods like Tinkers' Construct but I can't find how to overlay textures over each other..
L317[04:07:47] ⇨ Joins: cpup (~cpup@32.218.113.33)
L318[04:08:14] <PrinceCat> Of course you use the Tessellator, but working out how to achieve the desired effect is confusing me.
L319[04:09:57] <MalkContent> multiple render passes, different icons for each render pass
L320[04:10:03] <fry> PrinceCat: basic idea is this: http://en.wikipedia.org/wiki/Traditional_animation#Cels
L321[04:10:26] <PrinceCat> Essentially, yes!
L322[04:10:33] <fry> You overlay multiple partially transparent icons, and blend them together
L323[04:11:17] <fry> So, you get the concept, and asking more about the implementation details?
L324[04:11:25] <PrinceCat> I have no idea how to achieve that with the Tessellator, I'll google some tutorials.
L325[04:11:42] <MalkContent> items even got this nifty getIconFromDamageForRenderpass
L326[04:12:08] <MalkContent> unless you wanna do something super special, you can use the existing renderer
L327[04:12:09] <PrinceCat> How many passes are there though?
L328[04:12:27] <fry> https://www.opengl.org/archives/resources/faq/technical/transparency.htm
L329[04:12:35] <MalkContent> uh. 2?
L330[04:12:47] <MalkContent> you set if it requires multiple render passes
L331[04:12:53] <PrinceCat> Yeah, of course.
L332[04:12:58] <fry> You don't need multiple passes - just feed all icons at once
L333[04:13:01] <MalkContent> also in the item
L334[04:13:10] <ollieread> My brain hurts
L335[04:13:21] <fry> (you might need to fiddle with depth testing and blend function to get the desired result)
L336[04:13:55] <PrinceCat> So basically what I want to do is get some information from the Item being rendered (in this case it's the augments that are on it) and then for each one draw the augmented gem over the top of the original texture.
L337[04:14:00] <PrinceCat> If that helps..
L338[04:14:44] <ollieread> Like the way this renders the liquid overlay? http://s.ollieread.com/ZUbj
L339[04:14:45] <PrinceCat> So there are 'augment' slots in the original texture that need to be programatically filled depending on what augments are applied.
L340[04:14:51] *** diesieben07 is now known as diesieben|away
L341[04:15:10] <PrinceCat> Essentially, yes!
L342[04:15:19] ⇦ Quits: jiraiyah_ (~jiraiyah@188.245.166.255) (Read error: Connection reset by peer)
L343[04:15:50] <ollieread> Do it the same way TiC does it
L344[04:15:55] <ollieread> Have multiple icons, each a piece
L345[04:16:03] <ollieread> Then just have as many render passes as you need
L346[04:16:17] <PrinceCat> I'm trying to sift through the TiC code though to find what I need, aha.
L347[04:16:21] <MalkContent> fry: i thought you had to draw a texture and the draw anotherone above it with blending enabled
L348[04:16:22] <ollieread> and return the correct icon for the correct render pass
L349[04:17:03] <fry> MalkContent: you can do that in 1 pass. At least in 1.7 :P
L350[04:17:27] <ollieread> PrinceCat: https://github.com/SlimeKnights/TinkersConstruct/blob/master/src/main/java/tconstruct/library/tools/ToolCore.java#L143
L351[04:17:48] <ollieread> Then https://github.com/SlimeKnights/TinkersConstruct/blob/master/src/main/java/tconstruct/library/tools/ToolCore.java#L143
L352[04:17:51] <ollieread> down
L353[04:17:55] ⇦ Quits: Devin_Mobile|ZZZ (uid44396@id-44396.highgate.irccloud.com) (Quit: Connection closed for inactivity)
L354[04:17:56] <ollieread> Nope, https://github.com/SlimeKnights/TinkersConstruct/blob/master/src/main/java/tconstruct/library/tools/ToolCore.java#L207
L355[04:18:00] <MalkContent> explain pass :P
L356[04:18:07] ⇨ Joins: jiraiyah (~jiraiyah@188.245.166.255)
L357[04:18:08] <MalkContent> isn't that just a shoopdaloop
L358[04:18:15] <MalkContent> to the next layer getting drawn?
L359[04:18:44] <PrinceCat> Essentially, MalkContent.
L360[04:18:55] <MalkContent> or are you telling me you only have to draw once
L361[04:19:45] <PrinceCat> I'll experiment with drawing each one on a pass.
L362[04:19:58] <PrinceCat> When.. I figure out how to do that.
L363[04:20:02] <fry> PrinceCat: https://github.com/SlimeKnights/TinkersConstruct/blob/80efde613ac73e98279e1ab8adb1107638f1a0e4/src/main/java/tconstruct/client/ToolCoreRenderer.java#L182-L188
L364[04:20:31] <PrinceCat> I was literally just looking at that section in that class and it all went right over my head.
L365[04:20:50] ⇦ Quits: cpup (~cpup@32.218.113.33) (Ping timeout: 189 seconds)
L366[04:22:21] <PrinceCat> I think the easiest way for me to go about this at the moment though is render passes
L367[04:22:32] <PrinceCat> Have a pass for each augment and then check if it's applied.
L368[04:24:50] <RikSolo> i dropped connection so i dont know if it came trough: does anyone know an example of a mod using an ItemBlock
L369[04:26:08] ⇨ Joins: AbdoTGM50 (~AbdoTGM50@89.203.29.214)
L370[04:26:32] ⇨ Joins: cpup (~cpup@32.218.113.33)
L371[04:26:44] *** Player|off is now known as Player
L372[04:26:55] <ollieread> Does this sound sensible/feasible? You create an Experience, say ExperienceDamage which would cover experiences that involve taking damage, receiving damage, attacking, being attacked etc. A piece of research is registered against the ExperienceDamage type, so whenever that type of experience happens, it passes it to the research for confirmation as to whether the specific conditions match?
L373[04:28:20] <ollieread> The research system cares not how the experience is generated, or what it contains save a few base methods.
L374[04:28:33] <drazisil> having trouble plinting to console, do i still use log4j, or us there an easier way?
L375[04:28:50] <ollieread> The way the implementing code is responsible for hooking into events and identifying conditions.
L376[04:30:55] <MinecraftForgeBot> Project Forge build #1292:SUCCESS in 5 min 0 sec: http://ci.jenkins.minecraftforge.net/job/minecraftforge/1292/
L377[04:30:55] <MinecraftForgeBot> rainwarrior: Added model loader registry
L378[04:31:25] <fry> No turning back now :P
L379[04:32:39] ⇦ Quits: lahwran (~lahwran@lahwran.net) (Ping timeout: 206 seconds)
L380[04:34:06] ⇦ Quits: flappyy (~flappy@a91-152-117-173.elisa-laajakaista.fi) (Ping timeout: 378 seconds)
L381[04:34:54] <MalkContent> fry: read my question? ^^
L382[04:35:14] <fry> abot passes?
L383[04:35:17] <fry> *about
L384[04:35:21] <MalkContent> yea
L385[04:35:31] ⇨ Joins: lahwran (~lahwran@lahwran.net)
L386[04:36:52] <fry> when I say "pass" I usually mean vanilla render pass - big iteration of render loop, going over some number of elements, and calling render methods for them
L387[04:37:20] <fry> So, if your render method is called multiple times - it's multiple passes
L388[04:37:37] <fry> But what you do inside your render method has nothing to do with this notion of pass
L389[04:38:13] <fry> And, you can do multi-layer transparency blending inside 1 "vanilla render pass"
L390[04:38:26] ⇦ Quits: cpup (~cpup@32.218.113.33) (Ping timeout: 189 seconds)
L391[04:39:17] <ollieread> What's the general thought regarding child/sub interfaces?
L392[04:39:26] <MalkContent> alright, ty
L393[04:39:31] ⇨ Joins: iceman11a (iceman11a@cpe-74-141-56-150.swo.res.rr.com)
L394[04:39:43] <ollieread> ie: https://gist.github.com/ollieread/e4016f88da5628fe0502
L395[04:39:52] ⇨ Joins: Emris (~Miranda@195.234.58.25)
L396[04:40:08] * fry uses nested classes/interfaces all the time
L397[04:40:25] <ollieread> Ahh excellent
L398[04:40:32] <ollieread> I didn't want a directory full of interfaces
L399[04:40:33] ⇨ Joins: turmfalke_ (~turmfalke@p54A68D2F.dip0.t-ipconnect.de)
L400[04:40:41] <fry> Exactly why I use them :P
L401[04:40:43] <ollieread> I already have IResearchTypehere blah like 6 times
L402[04:40:45] <MalkContent> it's just interfaces. if it fits yer needs, go wild
L403[04:41:07] <fry> (It often makes sense to group multiple classes/interfaces in 1 file)
L404[04:41:22] <ollieread> Though I suppose subtypes of IResearch should be inside IResearch
L405[04:41:31] <ollieread> and things like IExperience could be their own
L406[04:42:08] <ollieread> Rather than child, child child in one class lol
L407[04:42:18] ⇨ Joins: cpup (~cpup@32.218.113.33)
L408[04:43:00] ⇦ Quits: turmfalke (~turmfalke@p54A681CF.dip0.t-ipconnect.de) (Ping timeout: 194 seconds)
L409[04:45:33] ⇨ Joins: pixlepix (~localmaca@cpe-72-228-15-137.nycap.res.rr.com)
L410[04:47:45] <Wuppy> has anyone made leaves for 1.8?
L411[04:47:58] <Wuppy> I'm getting this error: Cannot get property PropertyBool{name=check_decay, clazz=class java.lang.Boolean, values=[true, false]} as it does not exist in BlockState{block=wuppy29_peacefulpack:blazeLeaves, properties=[]}
L412[04:48:27] <Wuppy> but I do have the property in there
L413[04:48:34] <Wuppy> is there soemwhere I have to register them or somethign?
L414[04:49:17] <fry> properties=[] <-- apparently you don't
L415[04:49:26] <fry> show your createBlockState
L416[04:49:27] <PrinceCat> Does anyone else get ridiculously discouraged by attempting to texture?
L417[04:49:43] ⇦ Quits: ellipsis (~ellipsis@c-76-105-146-89.hsd1.or.comcast.net) (Quit: Quit)
L418[04:49:44] <Wuppy> fry, do you have to add those in there?
L419[04:50:24] <fry> Wuppy: you used it before, didn't you stop to think what for? :P
L420[04:50:35] <Wuppy> true, but the vanilla leaves don't have iot
L421[04:51:34] <fry> PrinceCat: when you get discouraged about your drawing skills, look here: https://github.com/MinecraftForge/Installer/blob/60f70df139230552feab2cf8b4b2881a405cb4f3/src/big_logo.png xD
L422[04:52:24] <PrinceCat> Wow, cpw.. an inspiration to us all.
L423[04:52:51] <PrinceCat> That looks better than the rubbish I created though.. aha
L424[04:53:06] <PrinceCat> How do I geometrical shape?
L425[04:53:42] ⇦ Quits: cpup (~cpup@32.218.113.33) (Ping timeout: 200 seconds)
L426[04:53:48] ⇨ Joins: trab (~trab@28.np.emoserver.com)
L427[04:53:49] <fry> Wuppy: did you only look at BlockLeaves?
L428[04:54:01] <Wuppy> I looked at BlockLeavesBase as well
L429[04:54:04] <ollieread> PrinceCat: Yes, I hate texturing
L430[04:54:37] <ollieread> I've gone through so many iterations of textures and icons for my mod
L431[04:54:41] <fry> Wuppy: BlockLeaves is abstract, it should be a hint :P
L432[04:54:47] <PrinceCat> It's hard to ask someone else to help you as well because you know what you want.. you can see it in your head, but you just can't achieve it.
L433[04:55:08] <ollieread> If you stick to it, you'll eventually end up with something awesome
L434[04:55:10] <Wuppy> oh yeah it is, guess I've been in c++ too long for me to notice that abstract keyword there :P
L435[04:55:58] <fry> PrinceCat: nobody can get stuff from your head except you :P
L436[04:56:39] <PrinceCat> I know, it's the worst..
L437[04:56:49] <PrinceCat> Can we just advance in science already?
L438[04:57:07] <fry> That requires scientists to get stuff out of their head too :P
L439[04:57:08] ⇦ Quits: matthew|mobile (uid27821@id-27821.highgate.irccloud.com) (Quit: Connection closed for inactivity)
L440[04:57:10] <Wuppy> what the hell o____0
L441[04:57:11] ⇨ Joins: cpup (~cpup@32.218.113.33)
L442[04:57:18] <Wuppy> adding the states breaks textures
L443[04:57:20] <Wuppy> wot?
L444[04:57:47] <fry> Wuppy: blockstate json should change, if you changed properties
L445[04:57:52] <ollieread> PrinceCat: It took me almost 8 months to get item icon/textures that I'm happy with :P
L446[04:58:00] <ollieread> and 2 months for GUI
L447[04:58:05] <ollieread> Blocks I'm still not happy with
L448[04:58:09] <Wuppy> fry, isn't there some way you can just set the same block state regardless of properties?
L449[04:58:11] <MalkContent> textures are a bitch ^^
L450[04:58:23] <PrinceCat> Oh god, GUI is my next step..
L451[04:58:27] <PrinceCat> It's overwhelming.
L452[04:58:34] <fry> Wuppy: IStateMapper :P
L453[04:58:37] <PrinceCat> Trying to make a scrollbar to work... don't even get me started, aha.
L454[04:58:42] <ollieread> These are my items: http://s.ollieread.com/ZWIM
L455[04:59:04] <PrinceCat> They look really good man!
L456[04:59:04] <Wuppy> fry ?
L457[04:59:04] <MalkContent> my advice on textures: start with high res or even photos where aplicable
L458[04:59:07] <MalkContent> downstacle
L459[04:59:10] <PrinceCat> Very pokemon inspired.
L460[04:59:14] <ollieread> My GUI went through several iterations but here it is now: http://s.ollieread.com/ZPC6 http://s.ollieread.com/ZOP4
L461[04:59:15] <MalkContent> then add hsv noise
L462[04:59:24] <MalkContent> downscale*
L463[04:59:24] <PrinceCat> I'm getting a pokemon vibe, aha.
L464[04:59:40] <ollieread> Last Pokemon game I played was Pokemon yellow
L465[04:59:48] <Wuppy> what is that and how do I use it
L466[04:59:58] <PrinceCat> Are those icons in your GUI from Creative Commons? Haha.
L467[05:00:13] <PrinceCat> The bottom gem wand one at least?
L468[05:00:21] <ollieread> It's a free icon pack yeah
L469[05:00:24] <ollieread> Same pack used in Thaumcraft
L470[05:00:35] <PrinceCat> That's where I've seen it before.. haha.
L471[05:01:05] <MalkContent> ollie, those aren't 16x16 :D
L472[05:01:10] <ollieread> I also have the same pack that Ars Magica used, somewhere
L473[05:01:12] <MalkContent> high res heretic
L474[05:01:31] <ollieread> and I have the Photoshop brushes that Ars Magica and Thaumcraft used, for the most part
L475[05:01:47] <ollieread> These are all things I've found that look cool, but after using, realised they were the same
L476[05:02:43] <ollieread> Maps need a keyOf(value) method, like indexOf() in lists
L477[05:03:18] <fry> Wuppy: getMinecraft().getBlockRendererDispatcher().getBlockModelShapes().registerBlockWithStateMapper(block, iStateMapper)
L478[05:03:46] <Wuppy> and I should run that after registering the Block with the item model mesher?
L479[05:03:49] <fry> (And look at BlockModelShapes.registerAllBlocks() for one way of building IStameMapper)
L480[05:03:57] <fry> Around the same time
L481[05:04:16] <Wuppy> heh, I was actually looking in registerAllBlock already :D
L482[05:04:42] <Wuppy> was just trying to figure out how to get to the registerBlockwithstatemapper method
L483[05:04:42] <ollieread> Do I create a stringToClassMapping hashmap and then loop through it if I have the class and not the string, or create a stringToClassMapping and a classToStringMapping?
L484[05:05:59] ⇦ Quits: Raziel (~Raziel@cpc16-broo8-2-0-cust158.14-2.cable.virginm.net) (Ping timeout: 186 seconds)
L485[05:07:48] <ollieread> Both work, what do you guys think though?
L486[05:08:17] <fry> Why do you need reflected class at all?
L487[05:08:26] <fry> serialization?
L488[05:09:19] <ollieread> If I have ExperienceDamage that implements IExperience, which extends IResearchType, that's enough for me to know it's a research type, and an experience
L489[05:09:26] <PrinceCat> MalkContent, I'm curious on how you texture in high res and then downscale... doesn't that destroy everything? Unless you vector it..
L490[05:09:40] <ollieread> But when passing ExperienceDamage to the research, it'll need to be cast to the correct class, as ExperienceDamage will have its own methods
L491[05:09:49] <ollieread> for example public DamageSource getDamageSouce()
L492[05:09:56] <ollieread> That is unique to that specific experience
L493[05:10:00] <ollieread> fry: Does that make sense?
L494[05:10:21] <fry> Why do you need to know the explicit type?
L495[05:10:46] <ollieread> I intended to case before passing to the research
L496[05:10:50] <ollieread> cast, not case
L497[05:11:27] <fry> What's the relationship between IResearchType and IExperience?
L498[05:12:23] <ollieread> IResearchType just denotes that it's a research type, so it'll have basic methods like getName(), and IExperience is an extends of the research type, allowing me to identify that it's an experience research type, as well as providing a few more methods specific to experience research types
L499[05:13:13] <ollieread> Though the actual implementing class of IExperience will be so different to others
L500[05:13:30] ⇦ Quits: cpup (~cpup@32.218.113.33) (Ping timeout: 200 seconds)
L501[05:14:31] <fry> Does specific research expects specific experience/set of experiences, or arbitrary IExperience?
L502[05:14:42] <ollieread> Could be an action without a subject (using portals), could be an action with an item subject (using items/eating), could be an effect without a subject (DamageSource), could be an effect with a subject (DamageSource & EntityLiving), etc
L503[05:15:00] <ollieread> The research would expect specific experience
L504[05:15:18] <ollieread> Allows a piece of research to response to multiple experiences without lots of instanceof and casting
L505[05:16:20] <fry> interface IResearchType<E extends IExperience> { void handleExperience(E e); }
L506[05:16:30] <ollieread> The possible experiences are so different from each other, it's impossible for me to identify a way to specify the exact conditions of each. The best I can do, is make sure base bits of information are present, and trust that the research knows how to handle that specific type of experience
L507[05:16:38] ⇨ Joins: cpup (~cpup@32.218.113.33)
L508[05:17:01] <ollieread> There isn't only experience though
L509[05:17:08] <ollieread> IExperience, IExperiment, etc
L510[05:17:30] <fry> extends IResearch then
L511[05:17:42] ⇨ Joins: theoriginalbit (~BIT@thatcraniumguy.net)
L512[05:18:20] <fry> If you can narrow the type down - you'll get type safety and no casts at all. If you can't - you'll have to do casts anyway, even with your class-string map
L513[05:18:54] <ollieread> Generics removes the ability the respond to multiple experiences though, with one piece of research
L514[05:19:38] <ollieread> Example would be a piece of research that responds to the experience of firing an arrow from a bow, and the experience of being hit with an arrow from a Skeleton
L515[05:19:54] <fry> class R1 implements IResearch<IResearch> will let you handle everything
L516[05:20:29] <theoriginalbit> Hello all. I am attempting to make a mod for Minecraft 1.8 and I am getting an issue with blocks that have a 2D texture in the inventory. I'm just getting the pink 'missing texture' block, instead of the 2D texture, and no errors in the console. Thoughts? Suggestions?
L517[05:20:35] <ollieread> You think that's a better approach than casting before I pass to the research?
L518[05:20:36] <fry> (But for the case of arrows you'll probably be able to add some IArrowExperience)
L519[05:20:44] ⇨ Joins: SirWilli (~SirWilli@95.91.235.58)
L520[05:21:07] <ollieread> It wouldn't be IArrowExperience though
L521[05:21:21] <fry> If there's something common between those 2 arrow events - formalize it in the interface
L522[05:21:22] <ollieread> I'd have ExperienceUseItem and ExperienceAttackedBy for example
L523[05:21:36] <ollieread> Which would basically be payloads
L524[05:21:37] <fry> If there isn't - you'll have to special case for them anyway
L525[05:22:15] <fry> theoriginalbit: what does your item json look like? did you register your item with ItemModelMesher?
L526[05:22:27] <ollieread> Currently I have 113 experiences, identified by conditions within event handlers
L527[05:23:09] <theoriginalbit> fry: wait, I have to register blocks to that too?
L528[05:23:09] <ollieread> The idea would be that in my event handler, I identify the specific type of experience, populate it with the conditions and pass to the research handler, which finds experience research expecting this type of experience
L529[05:23:29] <fry> ollieread: let's say Ar1 and Ar2 are 2 arrow events, R1 should handle them. What'll be the signature of R1.handle?
L530[05:23:36] <fry> theoriginalbit: yup
L531[05:23:52] <ollieread> It'd have two handle()
L532[05:24:01] <theoriginalbit> fry: that's stupid as hell, alright, I'll give that a go
L533[05:24:02] ⇨ Joins: McJty (~McJty@bluecoat2.uzleuven.be)
L534[05:24:12] <ollieread> Oh wait, you can't do that with java can you
L535[05:24:26] *** AbdoTGM50 is now known as WitcherAbdo
L536[05:24:29] ⇦ Quits: pixlepix (~localmaca@cpe-72-228-15-137.nycap.res.rr.com) (Quit: pixlepix)
L537[05:24:42] <ollieread> public void handle(IExperience experience); and then implement with handle(Something experience);
L538[05:25:16] <fry> 2nd method more narrow than the 1st one
L539[05:25:26] <fry> you can't do that anywhere
L540[05:25:38] <ollieread> PHP :P
L541[05:26:05] <fry> PHP doesn't have a normal type system
L542[05:26:10] <ollieread> Well, you can have two methods
L543[05:26:13] <theoriginalbit> ok fry, that fixed it, thanks. Does the mesher+model.json replace the old interface system, IItemRenderer or whatever it was...?
L544[05:26:20] <ollieread> but you can implement an interface and type hint with an extending class
L545[05:26:24] <fry> theoriginalbit: yup
L546[05:26:27] <ollieread> Yeah, I realised that aha
L547[05:26:59] <theoriginalbit> fry: so it still possible to have Java based models, or does it all have to be in the JSON now?
L548[05:27:16] <fry> theoriginalbit: kinda both :P
L549[05:27:42] <ollieread> I guess instanceof checks and casting within the actual research is the best way to do it if I wish to handle multiple instances of it
L550[05:28:11] <theoriginalbit> fry: hmmm okay. I'll cross that bridge if/when I need it I suppose. thanks for the help
L551[05:28:14] <ollieread> no harm in if(experience instanceof blah) { handleBlah(experience); } else if(...
L552[05:28:22] <fry> ollieread: completely independend - yes :P
L553[05:28:42] <ollieread> Can you default a generic?
L554[05:28:55] <fry> Also, you might want to concider restructuring your code a bit more
L555[05:29:04] <fry> what exactly happend inside handleExperience?
L556[05:29:08] <fry> *happens
L557[05:29:31] ⇨ Joins: Hgrebnednav (~Hgrebnedn@d51A4F912.access.telenet.be)
L558[05:29:37] <fry> (default a generic?)
L559[05:29:59] <ollieread> It checks the conditions and identifies the amount of research to gain, for a specific knowledge topics
L560[05:31:31] <fry> Can that logic be moved to the other side? Do you actually need double dispatch for both research and event?
L561[05:31:32] ⇦ Quits: cpup (~cpup@32.218.113.33) (Ping timeout: 194 seconds)
L562[05:32:15] <ollieread> Research is rarely fired purely from research
L563[05:32:22] *** manmaed is now known as manmaed|AFK
L564[05:32:44] *** theoriginalbit is now known as BIT[Away]
L565[05:32:45] <ollieread> So research relating to attacking an entity will pick up on the correct event, and then identify the conditions, passing the conditions onto a loop of the research
L566[05:33:05] <ollieread> I figured that made more sense than passing the event to the research and having each piece of research identify the conditions
L567[05:33:43] <fry> loop of the research?
L568[05:34:08] <ollieread> Yeah, something that loops the specific research that matches that and passes in the conditions
L569[05:35:01] <fry> loops in what way?
L570[05:35:23] <ollieread> I have a research registry, with a hashmap
L571[05:35:32] <ollieread> HashMap<String, IResearch> for example
L572[05:36:34] ⇨ Joins: r4wk-work (~r4wk@mtprnf0110w-142166253246.dhcp-dynamic.FibreOP.nl.bellaliant.net)
L573[05:36:55] ⇨ Joins: cpup (~cpup@32.218.113.33)
L574[05:37:19] <ollieread> One specific event could fire multiple experiences
L575[05:37:47] ⇨ Joins: pixlepix (~localmaca@cpe-72-228-15-137.nycap.res.rr.com)
L576[05:37:48] <ollieread> Rather than fire each research that matches that event, it would only fire the research specific for that type of experience
L577[05:39:35] <ollieread> Though they aren't always events, in the sense they aren't always fired from forge events
L578[05:39:38] <fry> Can same experience instance be used in different researches?
L579[05:40:00] <ollieread> yes
L580[05:40:05] <ollieread> The experience would basically be a payload
L581[05:40:52] <ollieread> Similar to some events, specifically PlayerInteractEvent
L582[05:41:52] <ollieread> ExperienceDamaged for example, would specify whether you were damaged by a block, an entity or a potion
L583[05:42:11] <ollieread> The amount, the type etc
L584[05:42:42] <ollieread> Basically it's a tidied up version of the event, that has been processed to provide the specific conditions so a research item can simply check if they match
L585[05:44:04] <ollieread> For example, I hook into LivingSpawnEvent and do a few things to identify what's actually happened
L586[05:44:17] <ollieread> Though instead of experience, this would be an observation
L587[05:44:52] <fry> Well, traditional way of doing double dispatch like that is visitor parrent
L588[05:44:54] <ollieread> so the observation (IResearchObservation) would be passed in and simply have things like spawn.entity, spawn.child, spawn.parent etc
L589[05:44:56] <fry> *pattern
L590[05:45:24] <ollieread> spawn.from (egg, spawned, breeding, something else)
L591[05:46:02] <fry> You'll have onSpawn(Egg egg, boolean spawned, ...) and 150 other methods in your IResearch
L592[05:46:25] <ollieread> Oh no no
L593[05:46:42] <fry> Eliminates the need for any casting
L594[05:47:29] <ollieread> public class ObserveSpawn implements IObservation { public final EnumSpawnFrom from; } etc
L595[05:47:51] <fry> what does IObservation have?
L596[05:47:54] <ollieread> So from would be a field in the spawn object, denoting how it was spawned
L597[05:48:14] <ollieread> IExperience, IExperiment, IObservation are all relatively similar
L598[05:48:22] <ollieread> and at this point, I'm not sure I need to distinguish between them
L599[05:48:43] <ollieread> So I'll probably just stick with IResearchType
L600[05:48:50] ⇦ Quits: cpup (~cpup@32.218.113.33) (Ping timeout: 189 seconds)
L601[05:49:37] <ollieread> This is the thing I spoke about last type, where I redoing the research
L602[05:49:42] <ollieread> s/type/night/
L603[05:49:50] <ollieread> So most of this stuff is stuff I've identified since then
L604[05:50:27] <ollieread> Trying to figure out the most generic and the simplest method to get it working, so it's easy to add things on in the future
L605[05:51:01] <fry> what you do: r.handle(new Event1(args)); ... void handle(e){ if (e instanceof Event1) onEvent1((Event1)e); if(e instanceof Event2) onEvent2((Event2)e);}
L606[05:51:39] <fry> What traditional visitor does: r.onEvent1(args); ... void onEvent1(...); coid onEvent2(...);
L607[05:51:42] <fry> *void
L608[05:51:59] <ollieread> isn't that going to involve reflection though?
L609[05:52:09] <fry> What? How? 0_o
L610[05:52:23] <ollieread> The experience is as generic as the research
L611[05:52:41] <ollieread> There will be no concrete defined research types
L612[05:52:54] <ollieread> just that there are research types, and certain pieces of research respond to certain types
L613[05:53:12] <fry> Is the set of experiences closed?
L614[05:53:17] <ollieread> No
L615[05:53:33] <fry> How are new ones added to the system?
L616[05:53:50] <ollieread> Create new class, pass to registry
L617[05:53:57] <ollieread> Think of it like the api part of the mod
L618[05:54:15] <ollieread> The research system needs only know that there are types, that there is research, and which research requires which types
L619[05:54:31] <ollieread> The specific types, research and even when the types are fired would be up to the implementatin
L620[05:54:42] <fry> How would the new experience be emitted?
L621[05:54:58] <ollieread> The implementing code decides that
L622[05:55:04] <ollieread> Some cases it'd be a forge event
L623[05:55:22] <fry> So, why do you need to know about them at all? :P
L624[05:55:57] <ollieread> If I have 250 pieces of research, I don't want to loop through every single one and pass the experience to them
L625[05:56:01] ⇨ Joins: cpup (~cpup@32.218.113.33)
L626[05:56:04] <ollieread> and have all 250 do an isntanceof check
L627[05:56:22] <fry> Why are you handling the passing?
L628[05:56:35] <fry> And how?
L629[05:57:12] <fry> You said implementing code decides the emitting, how do you come in?
L630[05:57:20] <ollieread> In my implementing code, say an event handler, I identify what type of research should be fired, I create an instance of w/e, providing the conditions, and do something like ResearchManager.fire(myType)
L631[05:57:28] <ollieread> which then finds the research that needs to be fired
L632[05:58:35] <fry> How do you identify the type, if its added later by other implementing code?
L633[05:58:45] <ollieread> Oh it';s not added later
L634[05:59:00] <ollieread> In the init you'd have something like ResearchRegistry.addType(MyType.class)
L635[05:59:23] <ollieread> then ResearchRegistry.addResearch(myResearch, MyType.class) for example
L636[05:59:31] <fry> And how would you use that?
L637[05:59:54] ⇦ Quits: megamit (~megamit@94.14.48.228) (Ping timeout: 378 seconds)
L638[06:00:01] <ollieread> later on when ResearchRegistry receives an instanceof MyType it find the research that requires it, and loops through those passing it to each
L639[06:00:34] ⇦ Quits: Delaxarnyazer (~Delaxarny@ip5653e53d.direct-adsl.nl) (Ping timeout: 194 seconds)
L640[06:01:07] <ollieread> The registry doesn't care where the instanceof MyType comes from
L641[06:01:36] <ollieread> It receives an object, and somewhere it knows which other objects, require this object
L642[06:01:36] ⇦ Quits: xaero (xaero@ip70-162-11-251.ph.ph.cox.net) ()
L643[06:01:37] <fry> Why not delegate the work of passing event to the research to the implementing code?
L644[06:02:21] <ollieread> Because then ResearchRegistry becomes entirely redundant
L645[06:02:23] <fry> instead of ResearchRegistry.emit(myType), handlerForMyType.tick(listOfResearches)
L646[06:02:26] ⇨ Joins: Delax|Away (~Delaxarny@ip5653e53d.direct-adsl.nl)
L647[06:02:47] *** Delax|Away is now known as Delaxarnyazer
L648[06:03:18] <ollieread> Also means the implementing code needs to know which research needs it
L649[06:03:33] <fry> Which it does
L650[06:03:33] ⇦ Quits: pixlepix (~localmaca@cpe-72-228-15-137.nycap.res.rr.com) (Quit: pixlepix)
L651[06:03:43] <ollieread> Why would it?
L652[06:03:44] <fry> (and ResearchRegistry doesn't)
L653[06:04:11] <fry> inplementing code provides researches and experiences
L654[06:04:21] <fry> *im
L655[06:04:40] <ollieread> But multiple mods can provide experiences and research for other mods experiences and research
L656[06:04:55] *** heldplayer|off is now known as heldplayer
L657[06:05:24] *** kroeser is now known as kroeser|away
L658[06:05:25] <ollieread> Also means I have to hardcode it
L659[06:05:28] <fry> Researches will have to know about experiences, to be able to react to them in some way
L660[06:05:38] <fry> hardcode what? :P
L661[06:06:04] <ollieread> Well if I add an experience, everytime I add a piece of research that uses that, I have to go to the experience code and add that research there
L662[06:06:56] <ollieread> Also means each and every implementing mod needs to keep track of their own progression, what has been done and what hasn't
L663[06:06:56] ⇨ Joins: ElgarL (~ElgarL@cpc6-hawk15-2-0-cust537.18-1.cable.virginm.net)
L664[06:07:15] <ollieread> Which then makes having a generic API, entirely pointless
L665[06:07:30] ⇦ Quits: cpup (~cpup@32.218.113.33) (Ping timeout: 194 seconds)
L666[06:09:03] <fry> Only thing you need to provide is a way to emit custom experience, and route it to everyone needing to handle it
L667[06:09:16] <fry> Which sounds exactly like what EventBus does :P
L668[06:09:27] <ollieread> Yeah, it's a similar approach
L669[06:09:35] ⇨ Joins: pixlepix (~localmaca@cpe-72-228-15-137.nycap.res.rr.com)
L670[06:09:53] <fry> Why don't you just use the event bus directly then? :P
L671[06:09:56] <ollieread> though the idea is that this allows you to interact with my mod
L672[06:10:10] <ollieread> Having to manually do everything, would kind of defeat the purpose
L673[06:10:56] *** Ordi|Away is now known as Ordinastie
L674[06:12:31] <ollieread> child mods having to fire their own events also seems kind of redundant
L675[06:12:49] <fry> event handler way: bus.post(new Event1); class R1 { @SubscribeEvent onEvent1(Event1 e) {...};) bus.register(new R1)
L676[06:12:54] ⇨ Joins: cpup (~cpup@32.218.113.33)
L677[06:12:55] <ollieread> and at this point, they may as well not use my mod at all as they've just written themselves their own research system
L678[06:13:23] <fry> What exactly does your research system offer then?
L679[06:13:39] <ollieread> The research system is part of my mod
L680[06:13:59] <ollieread> It's not an independant research system
L681[06:14:03] <fry> You can add your own handlers for IExperience, and react to that in any way you want
L682[06:14:41] <fry> I mean, what would be the difference between using your system and posting events to the bus?
L683[06:14:44] ⇦ Quits: pixlepix (~localmaca@cpe-72-228-15-137.nycap.res.rr.com) (Quit: pixlepix)
L684[06:15:38] <ollieread> No need to manually do everything
L685[06:15:48] ⇨ Joins: pixlepix (~localmaca@cpe-72-228-15-137.nycap.res.rr.com)
L686[06:15:52] <fry> manually do what?
L687[06:16:05] <ollieread> Store that the research has happened, against a player
L688[06:16:15] <ollieread> add the research data to knowledge, for the player
L689[06:16:24] <ollieread> unlock recipes and or abilities
L690[06:16:54] <fry> So, you have some pieve of code that works for generic IExperience (storing it with the player, for example)?
L691[06:17:01] ⇦ Quits: pixlepix (~localmaca@cpe-72-228-15-137.nycap.res.rr.com) (Client Quit)
L692[06:18:56] ⇦ Quits: jiraiyah (~jiraiyah@188.245.166.255) (Read error: Connection reset by peer)
L693[06:18:56] <fry> Or not? how would you implement that? :P
L694[06:19:20] ⇨ Joins: jiraiyah (~jiraiyah@69.197.186.165)
L695[06:21:24] *** Sandra is now known as Sleepdra
L696[06:21:26] <ollieread> I have Knowledge, which is a knowledge topic providing unlocks
L697[06:21:51] <ollieread> each Knowledge topic is made of research, which has a value
L698[06:22:06] <ollieread> 1 knowledge topic could have 5 pieces of research
L699[06:22:29] <ollieread> each of those pieces of research could be fired in several ways
L700[06:23:03] <ollieread> Right now, I have more events (experiences) than I have research
L701[06:23:19] <ollieread> In that I have identified several hundred different conditions
L702[06:23:35] <ollieread> and I don't have research utilising every single one
L703[06:23:53] <ollieread> The idea was that in the future, more research could be added that relies on the already existing experiences
L704[06:24:06] <ollieread> A child mod could even add a new piece of research to a knowledge topic
L705[06:24:30] *** Cozza38 is now known as Cozza38|Away
L706[06:24:30] <ollieread> Think of it like Thaumcraft. Child mods don't add all the aspects, or the code of how to find the aspects
L707[06:24:47] <ollieread> They just say "this, requires these"
L708[06:24:54] <ollieread> then Thaumcraft internally does the rest
L709[06:25:16] <fry> Post your experiences to the bus then, all mods will need to do to use them is to add a method with @EventHandler :P
L710[06:25:42] ⇦ Quits: cpup (~cpup@32.218.113.33) (Ping timeout: 194 seconds)
L711[06:25:50] <fry> Adding researches to knowledges is independent of that
L712[06:26:11] <fry> (though you might want to implemnet it in the same way - post KnowledgeGainedEvent :P)
L713[06:26:45] <fry> EventBus is very powerful - leverage it :P
L714[06:26:54] <ollieread> But it doesn't work for this
L715[06:27:00] <fry> for what?
L716[06:27:31] <ollieread> Every mod would need to manually add data to knowledge
L717[06:27:36] <ollieread> and then manually add it to my IEEP
L718[06:27:48] *** MattOfflineMc is now known as MattMc
L719[06:27:59] <ollieread> and then manually check for unlocks
L720[06:28:34] <ollieread> and implement their own stuff, manually, which again comes down to it being entirely redundant and they may as well have used their own system
L721[06:29:32] <fry> Add a ganaric event handler to store stuff in IEEP
L722[06:29:35] <fry> *generic
L723[06:29:52] <fry> (listen for IResearch or whatever)
L724[06:30:14] <ollieread> Then that makes my IEEP pointless
L725[06:30:25] <ollieread> as I'm simply providing an API for people to add data to my IEEP
L726[06:30:28] <ollieread> Which they could do themselves
L727[06:30:36] <fry> How is it not pointless in the other case? :P
L728[06:30:56] ⇨ Joins: cpup (~cpup@32.218.113.33)
L729[06:30:59] <ollieread> Because people would be quite pissed off if they logged out and back in, to have lost everything
L730[06:32:05] <fry> How is listening for events different from a method call on ResearchRegistry?
L731[06:32:22] *** nekosune_Away is now known as nekosune
L732[06:32:29] <ollieread> Because if each mod is independantly handling its own research, how would somebody unlock something?
L733[06:32:42] <ollieread> Also means they aren't bound to the rules of my mod
L734[06:32:45] <ollieread> and they could just do whatever they pleased
L735[06:33:07] <fry> How would you make it not independent in your system? What rules would you enforce?
L736[06:33:16] <ollieread> Also means they need to write their own event handlers, and then fire a second event within that
L737[06:33:18] <fry> (what rules could you enforce?)
L738[06:34:20] <ollieread> Well I keep track of what research has been performed
L739[06:34:29] <ollieread> Some research can only happen once, others can happen x amount of times
L740[06:34:58] <fry> Why can't you do that with event bus?
L741[06:35:17] <ollieread> Because event bus doesn't have NBT
L742[06:35:38] ⇨ Joins: Six-One-Three (webchat@blk-89-209-224.eastlink.ca)
L743[06:35:41] ⇨ Joins: cad435 (~quassel@2a02:6d40:160:a5b:6c8f:33ca:3e8c:3611)
L744[06:35:44] <fry> how does NBT come into play?
L745[06:35:55] <ollieread> How else would event bus keep track?
L746[06:36:00] <ollieread> Once it's closed, the data is gone
L747[06:36:38] <fry> Again, you add your listener for IResearch, and do appropriate storage there
L748[06:36:53] <fry> (by "you" I mean you, and not implementers)
L749[06:38:00] <fry> You also check there if research has been fired multiple times, and complain in the same way as you would with the direct method call
L750[06:38:36] <ollieread> That doesn't make sense
L751[06:38:54] <fry> in what way? :P
L752[06:39:14] <ollieread> Only my instance of IResearch handling cheks and adding, means that other mods IResearch will be ignored
L753[06:39:26] <ollieread> Also means I have no way of knowing what research they have
L754[06:39:40] ⇦ Quits: cpup (~cpup@32.218.113.33) (Ping timeout: 200 seconds)
L755[06:40:22] <fry> 1) other mods emit something implementing IResearch, if they want it to be a research, so you'll catch it 2) why do you need to know the specific type in this case?
L756[06:41:04] <ollieread> I mentioned earlier, I don't _NEED_ the specific type, the idea was that it'd only call the ones that it needs
L757[06:41:25] <fry> What would only call what it needs?
L758[06:41:25] ⇦ Quits: VikeStep (~VikeStep@CPE-58-165-35-99.lns1.lon.bigpond.net.au) (Quit: Leaving)
L759[06:41:39] <ollieread> Because if my registry knows which bits of research respond to which types
L760[06:41:43] <ollieread> it only calls those
L761[06:41:58] <fry> Leave that part to the event bus
L762[06:42:22] <ollieread> So you think I should 200 brand new events?
L763[06:42:33] <fry> Why do you need to be between emitting and handling of the bits of the research?
L764[06:42:59] <ollieread> The research has a boolean method which says whether or not it can be done
L765[06:43:03] <ollieread> and it also has chance
L766[06:43:15] <fry> Making another bus for them might be a good idea
L767[06:43:20] <ollieread> The system needs to check if they already have this research
L768[06:43:41] <ollieread> None of this makes sense
L769[06:43:56] <ollieread> To do it this way would be to say "If you want to use my mod, create 80% of your own research system"
L770[06:45:29] <fry> void post(IResearch r) { if(!r.canBeDone()) complain; else bus.post(r) }
L771[06:45:47] <fry> expose this post instead of raw one
L772[06:46:04] <ollieread> Then we're back round in a circle
L773[06:46:11] <ollieread> Wait no
L774[06:46:16] <ollieread> IResearch is the result
L775[06:46:18] ⇨ Joins: cpup (~cpup@32.218.113.33)
L776[06:46:34] <fry> the result of what?
L777[06:46:43] <ollieread> IExperience is the event
L778[06:46:54] <ollieread> IResearch is the result of the event
L779[06:47:20] <fry> result or handler?
L780[06:47:23] <ollieread> result
L781[06:47:32] <fry> Who's the handler then? :P
L782[06:47:40] <ollieread> ResearchRegistry
L783[06:48:11] <fry> And in the case of custom handlers?
L784[06:48:11] <ollieread> You don't write a handler
L785[06:48:20] <ollieread> There's no need whatsoever for a custom handler
L786[06:48:27] <ollieread> as it completely defeates the purpose of the entire system
L787[06:49:01] <ollieread> So it goes like this
L788[06:49:23] <ollieread> Conditions are identified, conditions are sent to handler, handler matches conditions to research and handles the research response to those conditions
L789[06:49:32] ⇨ Joins: auenf (David@171.72.233.220.static.exetel.com.au)
L790[06:49:32] <ollieread> Handler adds knowledge progress if required
L791[06:50:03] <ollieread> I absolutely 100% have to know what research exists
L792[06:50:06] <ollieread> what knowledge exists
L793[06:50:19] <fry> "handler matches conditions to research" - how?
L794[06:50:21] *** Riking is now known as Riking|away
L795[06:50:22] <ollieread> Otherwise things like my progress GUI would only be my stuff
L796[06:50:26] <ollieread> people would need to add their own GUIs
L797[06:51:08] <ollieread> Experience contains conditions, experiences are registered, research is registered against experience
L798[06:51:20] <ollieread> Event happens, experience is selected and conditions populated
L799[06:51:38] <ollieread> Handler passes experience to research that requires it, research check the conditions, responds
L800[06:51:42] <ollieread> handler does the rest
L801[06:53:52] <ollieread> say 5 pieces of research require ExperienceAttackedBy
L802[06:54:04] <ollieread> 2 of those may required that the attacked be a Skeleton where the other 3 a zombie
L803[06:54:15] <ollieread> The handler would pass ExperienceAttackedBy to those 5 only
L804[06:54:17] ⇦ Quits: cpup (~cpup@32.218.113.33) (Ping timeout: 189 seconds)
L805[06:54:28] <ollieread> The other 5 that expect ExperienceAttack wouldn't be touched
L806[06:55:21] <fry> other 5?
L807[06:55:40] <ollieread> Pieces of research
L808[06:56:16] <fry> so, 10 pieces of research, 5 of them expect ExperienceAttackedBy, other 5 expect ExperienceAttack?
L809[06:56:20] ⇨ Joins: cpup (~cpup@32.218.113.33)
L810[06:56:50] <ollieread> Yes
L811[06:57:44] <ollieread> Except each loop of the research needs to be entirely independant
L812[06:58:19] <ollieread> Because it could be that each piece of research succeeds and does something different
L813[06:59:20] <fry> So, eventbus implementation: R1 { @Sub void onEvent(ExperienceAttackedBy e) { if(e.type == skeleton) doResearchDone(); } } R2 { ... if(e.type == zombie) ...} R3 { onEvent(ExperienceAttack e) ...}
L814[06:59:37] <fry> R1 and R2 are first 5, R3 is other 5
L815[07:00:05] <wildex999> Are there anyone with a 1.7.10 Forge server, with a lot of Entities/TileEntities and strugling with low TPS, willing to alpha test a new CoreMod? It's purpose is to keep the server running with a steady 20 TPS. Send me a pm =)
L816[07:00:12] <ollieread> Which means I need to rely on implementing mods to complete or add
L817[07:00:53] <fry> complete or add what?
L818[07:00:58] <ollieread> Data
L819[07:01:14] <fry> what data? where?
L820[07:01:33] <ollieread> doResearchDone()
L821[07:01:41] <ollieread> Where on earth would that come?
L822[07:01:58] <fry> make that ResearchSystem.doResearchDome(this), for exaple
L823[07:02:02] <fry> *example
L824[07:02:09] ⇦ Quits: TheBadShepperd (~tbs@246.215.178.107.bc.googleusercontent.com) (Quit: All of this has happened before and will happen again.)
L825[07:02:18] <ollieread> Which means I rely on them calling it
L826[07:02:31] ⇨ Joins: TheBadShepperd (~tbs@246.215.178.107.bc.googleusercontent.com)
L827[07:03:02] <fry> In your direct approach you rely on them returning something from the handle method?
L828[07:03:09] <ollieread> no
L829[07:03:38] <ollieread> Simplem boolean
L830[07:03:45] <fry> "research check the conditions, responds" <- how does it respond?
L831[07:04:23] <fry> boolean what? return value? field? method?
L832[07:05:15] <ollieread> for(research : researchList) { if(research.canPerform(e) && researchChance(research.getChance())) { addKnowledgeResearch(research.getKnowledge(), research.getData()); } }
L833[07:05:18] <ollieread> as an expample
L834[07:05:49] <Szernex> wildex999 is it open source?
L835[07:06:11] <wildex999> Not at the moment. I will make it that eventually tho.
L836[07:07:31] <ollieread> fry: In the example you provided, my system doesn't know about the research
L837[07:07:36] <ollieread> Which is an issue, I have to know about it
L838[07:08:44] <fry> call ResearchSystem.tryPerform(this) from the onEvent, if research accepts conditions
L839[07:09:38] <fry> inside tryPerform do what you do inside the for loop, but only for that research
L840[07:09:56] <ollieread> That requires them to call it
L841[07:10:27] <fry> Only slightly more complex than returning boolean :P
L842[07:10:34] <ollieread> I also need to know what is available, outside of the actual research loop
L843[07:10:39] ⇨ Joins: Soni (SoniEx2@201.74.211.46)
L844[07:11:12] <fry> Store researches when you add them to the bus, for example
L845[07:13:17] ⇦ Quits: MRX (~MRX@5.175.165.162) (Ping timeout: 198 seconds)
L846[07:13:33] <ollieread> I don't like relying on them to do it
L847[07:13:40] <ollieread> and also having to create their own handlers
L848[07:13:46] <ollieread> Completely defeats the purpose
L849[07:13:54] <ollieread> It's not a "Use my research system for your mod"
L850[07:14:02] <ollieread> it's a "Add to the research system of my mod"
L851[07:14:14] ⇦ Quits: cpup (~cpup@32.218.113.33) (Ping timeout: 194 seconds)
L852[07:15:00] ⇨ Joins: TheFjong (~TheFjong|@3e6b1460.rev.stofanet.dk)
L853[07:16:17] <fry> you'll have to choose between event handlers, visitor and a bunch of instanceofs inside the research
L854[07:17:08] <ollieread> instanceofs are fine
L855[07:17:14] <ollieread> Because it keeps them to using my system
L856[07:18:11] <fry> everything except the experience-research dispatch is completely the same in all 3 choices
L857[07:18:42] <fry> using eventbus won't let them not use your system in some magical way
L858[07:19:05] ⇨ Joins: MRX (~MRX@5.175.165.162)
L859[07:20:10] ⇨ Joins: cpup (~cpup@32.218.113.33)
L860[07:21:21] <fry> not calling ResearchSystem.tryPerform(this) is equivalent of returning false from the canPerform
L861[07:29:16] ⇨ Joins: chbachman (~chbachman@c-73-45-124-6.hsd1.il.comcast.net)
L862[07:30:56] ⇦ Quits: chbachman (~chbachman@c-73-45-124-6.hsd1.il.comcast.net) (Client Quit)
L863[07:32:42] ⇨ Joins: Hanii_ (~Hanii@212.159.126.186)
L864[07:33:18] ⇦ Quits: cpup (~cpup@32.218.113.33) (Ping timeout: 194 seconds)
L865[07:33:56] ⇨ Joins: Johannes13 (~Johannes@141.70.98.52)
L866[07:35:24] ⇦ Quits: jiraiyah (~jiraiyah@69.197.186.165) (Remote host closed the connection)
L867[07:35:50] ⇨ Joins: jiraiyah (~jiraiyah@69.197.186.165)
L868[07:35:51] <MalkContent> if I have many instances of an identical value in hard code, say lot's of 0.0F
L869[07:36:04] <MalkContent> would it help to create a final field for that?
L870[07:36:09] ⇦ Quits: Hanii (~Hanii@234.161.200.146.dyn.plus.net) (Ping timeout: 378 seconds)
L871[07:36:09] *** Hanii_ is now known as Hanii
L872[07:36:20] ⇦ Quits: PrinceCat (~PrinceCat@124-170-156-26.dyn.iinet.net.au) ()
L873[07:36:23] <MalkContent> or does it make no difference
L874[07:36:50] ⇨ Joins: cpup (~cpup@32.218.113.33)
L875[07:37:30] <Skuli> http://javamex.com/tutorials/synchronization_final.shtml
L876[07:39:22] ⇦ Quits: Johannes13 (~Johannes@141.70.98.52) (Ping timeout: 194 seconds)
L877[07:39:39] <MalkContent> the point isn't the final
L878[07:40:03] <Skuli> Oh I see
L879[07:40:04] <MalkContent> more like create reusable field to hold the value vs. hardcode every instance of the value
L880[07:40:19] <Skuli> I have no idea
L881[07:40:33] <MalkContent> ikr
L882[07:40:34] <Skuli> it would make it easier to update later at least
L883[07:40:54] <Skuli> if you ever needed to change that value globally
L884[07:41:10] <MalkContent> indeed. I'm afraid that many accesses on the same field might slow stuff down
L885[07:41:20] <Skuli> You'll have to wait for actual developer to chime in
L886[07:43:00] <MalkContent> yerp
L887[07:43:07] *** le683|afkzzz is now known as le683
L888[07:46:17] ⇨ Joins: asie (~asie@078088168214.elblag.vectranet.pl)
L889[07:46:30] <asie> Is there going to be a way to inject fake mod containers into the GUI mod list?
L890[07:47:47] <MalkContent> Ivorius: i have complaints. yer Renderer isn't perfect :o
L891[07:48:42] <Ivorius> It doesn't translate 100% correctly currently
L892[07:48:48] <Ivorius> Because I was too lazy to figure out all the values
L893[07:48:53] <Ivorius> But the rendering itself is perfect :P
L894[07:49:33] <MalkContent> inventory rendering is always true for alpha
L895[07:50:24] <MalkContent> and entities on the ground are tilted and also don't gain additional drawings depending on stacksize
L896[07:51:48] <Ivorius> 'always true for alpha'? :P
L897[07:51:55] *** Player is now known as Player|off
L898[07:51:59] ⇦ Quits: cpup (~cpup@32.218.113.33) (Ping timeout: 198 seconds)
L899[07:52:02] <Ivorius> The latter might be, I only used it for single item stacks
L900[07:52:09] <Ivorius> I think
L901[07:54:05] <MalkContent> you use your setColor function to do a glColor4f, if alpha is true it expects item.getColorbla to return a whole 32bit set of values, otherwise alpha channel is gonna be 0 and the thing's invisible
L902[07:54:25] ⇨ Joins: Johannes13 (~Johannes@141.69.100.46)
L903[07:54:54] <Ivorius> Well yes
L904[07:55:09] <Ivorius> You just have to overwrite getColor = super.getColor | 0xff000000
L905[07:55:18] ⇨ Joins: Vazkii (~Vazkii@a79-169-161-227.cpe.netcabo.pt)
L906[07:55:43] <Ivorius> That is intentional :P
L907[07:55:49] ⇨ Joins: cpup (~cpup@32.218.113.33)
L908[07:55:59] *** fry is now known as fry|sleep
L909[07:56:06] <Ivorius> See: My example usage
L910[07:56:18] ⇦ Quits: Strange (uid27214@id-27214.highgate.irccloud.com) (Quit: Connection closed for inactivity)
L911[07:56:25] <MalkContent> thing is, you made it optional in the equipped part
L912[07:57:46] ⇨ Joins: Noppes (~Noppes@82-168-212-152.ip.telfort.nl)
L913[07:58:27] ⇨ Joins: Loetkolben (~Loetkolbe@ipbcc23de8.dynamic.kabel-deutschland.de)
L914[08:00:03] ⇦ Quits: auenf (David@171.72.233.220.static.exetel.com.au) (Read error: No route to host)
L915[08:00:11] ⇦ Quits: MattMc (I@am.mattmc.info) (Remote host closed the connection)
L916[08:00:38] ⇨ Joins: auenf (David@171.72.233.220.static.exetel.com.au)
L917[08:03:06] *** kroeser|away is now known as kroeser
L918[08:04:08] ⇨ Joins: ChJees (~ChJees@h211n5-sv-a13.ias.bredband.telia.com)
L919[08:06:00] <wildex999> Are there anyone with a 1.7.10 Forge server, with a lot of Entities/TileEntities and strugling with low TPS, willing to alpha test a new CoreMod? It's purpose is to keep the server running with a steady 20 TPS. Send me a pm =)
L920[08:07:44] ⇦ Quits: cpup (~cpup@32.218.113.33) (Ping timeout: 198 seconds)
L921[08:09:25] ⇨ Joins: cpup (~cpup@32.218.113.33)
L922[08:10:11] ⇨ Joins: tattyseal (~tattyseal@2.28.36.79)
L923[08:16:10] ⇨ Joins: pixlepix (~localmaca@public.mgrhs.org)
L924[08:16:13] ⇦ Quits: iceman11a (iceman11a@cpe-74-141-56-150.swo.res.rr.com) (Quit: Leaving)
L925[08:21:01] ⇦ Quits: moonrise (~hehehe@58.239.217.152) (Remote host closed the connection)
L926[08:22:05] ⇨ Joins: Shukaro (~Shukaro@130.108.232.44)
L927[08:22:21] ⇦ Quits: cpup (~cpup@32.218.113.33) (Ping timeout: 378 seconds)
L928[08:34:52] <cad435> anyone knows a good tutorial where to start playing sounds with paulscode (in forge)?
L929[08:35:41] *** NotTomben is now known as Tombenpotter
L930[08:36:18] <MalkContent> you don't touch paulscode
L931[08:36:23] *** Zidane|Away is now known as Zidane
L932[08:37:02] ⇨ Joins: cpup (~cpup@32.218.113.33)
L933[08:37:44] <MalkContent> or do you wanna get into deeper sound stuffs?
L934[08:37:56] <asie> heh
L935[08:37:59] <asie> i had to touch OpenAL once
L936[08:38:03] <asie> to go around a bug in paulscode
L937[08:38:19] <asie> which was confirmed by paul himself but never fixed
L938[08:38:59] <MalkContent> i tried to get hall effect and speed of sound into the game
L939[08:39:12] <asie> you might want to work with OpenAL directly then
L940[08:39:17] <MalkContent> a day or two in i just said "you know wat, nop"
L941[08:39:17] <ollieread> fry|sleep: ahh you've gone
L942[08:39:36] <cad435> well thx i'll look into OpenAL
L943[08:40:07] <asie> cad435: no
L944[08:40:11] <asie> i was talking to Malk
L945[08:40:12] <MalkContent> he said and went down the rabbithole never to be seen again ^^
L946[08:40:13] <CrystalMare> the hall effect only works on moving objects, if the client is lagging this movement is interrupted
L947[08:40:25] <CrystalMare> Wich would screw your sound up
L948[08:40:28] <asie> i actually wrote a mod which adds live audio streaming over the minecraft protocol with no pre-downloading
L949[08:40:32] <asie> that's what i needed openal for
L950[08:40:39] <MalkContent> cad435: if you just want to play sounds, use what minecraft offers
L951[08:40:41] <asie> paulscode has a bug where raw audio streams refuse to configure their in-world position right
L952[08:40:53] <cad435> asie: i actually don't wanna do this with minecraft offers...
L953[08:41:01] ⇦ Quits: auenf (David@171.72.233.220.static.exetel.com.au) (Read error: No route to host)
L954[08:41:02] ⇦ Quits: Johannes13 (~Johannes@141.69.100.46) (Ping timeout: 200 seconds)
L955[08:41:21] ⇨ Joins: auenf (David@171.72.233.220.static.exetel.com.au)
L956[08:41:23] <MalkContent> CrystalMare: you almost make it sound like you would have to compensate for bad connection or anything
L957[08:41:34] <MalkContent> why that is unheard of :D
L958[08:41:41] <cad435> well that's the piont, goal is to have a class wich i give a sound-file and it sends it directly to audio output...
L959[08:41:41] <MalkContent> something*
L960[08:41:47] <CrystalMare> Yeah :P
L961[08:41:52] <CrystalMare> Good luck though
L962[08:41:53] <CrystalMare> xD
L963[08:42:04] <MalkContent> cad435: use mc :P don't go paulscode or openal
L964[08:42:47] <cad435> can i play sounds there without having an ingame-position of a sound then?
L965[08:43:03] <MalkContent> yea
L966[08:43:11] <MalkContent> basically the way music is played
L967[08:43:22] <Ivorius> Nah, impossible, cad435
L968[08:43:27] <Ivorius> Menu buttons are a hack
L969[08:43:35] <MalkContent> :D
L970[08:43:50] <cad435> Ivorius:... :D :D
L971[08:44:46] <MalkContent> they never retouched the menubuttons when they overhauled notch code, because everything else fell apart when they tried
L972[08:45:44] <Ivorius> Literally Hitler broke into their office and smashed their PCs with a hammer when they tried to fix it
L973[08:46:53] <Ivorius> And thus you can only still play positioned sounds... Menu buttons are just ubiquitous
L974[08:47:10] <ollieread> I think Fry may have been onto something with the eventbus thing
L975[08:47:15] <ollieread> Though I'd have to write my own
L976[08:47:15] <ollieread> hmm
L977[08:47:32] <Ivorius> With what ollieread
L978[08:48:20] <ollieread> My research system, right now, you register a research experience (payload) then you register a research item which specifies the type of experience (the class) it requires
L979[08:48:55] <ollieread> he said to have use the event bus and just have @SubscribeEvent in my research classes
L980[08:49:12] <ollieread> Though there's lots of other things I'd want to do and I wouldn't want to use Events
L981[08:49:24] <ollieread> the principal is great, though I'd have to write my own instance of EventBus
L982[08:50:20] <ollieread> Which after reading up, he did suggest lol
L983[08:50:48] <Ivorius> 'Write'?
L984[08:50:54] <Ivorius> You can just instantiate your own bu
L985[08:50:55] <Ivorius> *bus
L986[08:51:03] <ollieread> I know
L987[08:51:05] <Ivorius> I did that for some of my events :P
L988[08:51:08] <ollieread> But there's other things that it needs to do
L989[08:51:17] <ollieread> It also wouldn't even use the Event class
L990[08:51:45] <ollieread> and inside the post loop, I'd need to do something before and after the call
L991[08:51:48] <Ivorius> Uh-hu
L992[08:51:50] <Ivorius> h
L993[08:51:58] <ollieread> as I need to react to the result of each call
L994[08:52:10] ⇦ Quits: cpup (~cpup@32.218.113.33) (Ping timeout: 194 seconds)
L995[08:52:24] <ollieread> I can't work out whether he meant the currently implemented event bus, or the principal/pattern
L996[08:53:37] <ollieread> In round about way, I do something similar, except I don't use lovely annotations
L997[08:53:41] <ollieread> Though I could switch to that
L998[08:55:22] ⇨ Joins: Cojo (~Cojo@wvf6054rh.rh.ncsu.edu)
L999[08:55:35] *** esKaayY|away is now known as esKaayY
L1000[08:57:06] ⇨ Joins: cpup (~cpup@32.218.113.33)
L1001[08:57:24] ⇨ Joins: Johannes13 (~Johannes@141.70.98.52)
L1002[09:04:01] *** TTFT|Away is now known as TTFTCUTS
L1003[09:04:41] ⇦ Quits: pixlepix (~localmaca@public.mgrhs.org) (Quit: pixlepix)
L1004[09:05:25] *** Zidane is now known as Zidane|Away
L1005[09:06:00] *** Zidane|Away is now known as Zidane
L1006[09:07:52] *** Ecu|Zz_ is now known as Ecu
L1007[09:09:03] *** tterrag|ZZZzzz is now known as tterrag
L1008[09:09:04] ⇦ Quits: cpup (~cpup@32.218.113.33) (Ping timeout: 194 seconds)
L1009[09:13:26] ⇦ Quits: Delaxarnyazer (~Delaxarny@ip5653e53d.direct-adsl.nl) (Ping timeout: 198 seconds)
L1010[09:14:36] ⇨ Joins: Delax|Away (~Delaxarny@ip5653e53d.direct-adsl.nl)
L1011[09:15:03] *** Delax|Away is now known as Delaxarnyazer
L1012[09:17:38] ⇨ Joins: cpup (~cpup@32.218.113.33)
L1013[09:22:56] ⇦ Quits: ElgarL (~ElgarL@cpc6-hawk15-2-0-cust537.18-1.cable.virginm.net) (Ping timeout: 194 seconds)
L1014[09:27:07] <McJty> Time to go
L1015[09:27:11] ⇦ Quits: McJty (~McJty@bluecoat2.uzleuven.be) (Remote host closed the connection)
L1016[09:27:38] ⇨ Joins: Seremis (~Seremis@ip54547cc3.speed.planet.nl)
L1017[09:27:58] ⇦ Quits: Hanii (~Hanii@212.159.126.186) (Ping timeout: 200 seconds)
L1018[09:29:33] ⇨ Joins: Hanii_ (~Hanii@84.93.187.128)
L1019[09:29:54] ⇨ Joins: Devin_Mobile|ZZZ (uid44396@id-44396.highgate.irccloud.com)
L1020[09:30:28] ⇦ Parts: Devin_Mobile|ZZZ (uid44396@id-44396.highgate.irccloud.com) ())
L1021[09:32:47] ⇦ Quits: Vazkii (~Vazkii@a79-169-161-227.cpe.netcabo.pt) (Ping timeout: 198 seconds)
L1022[09:33:02] ⇨ Joins: Brokkoli (~Brokkoli@d215125.adsl.hansenet.de)
L1023[09:34:12] ⇦ Quits: cpup (~cpup@32.218.113.33) (Ping timeout: 194 seconds)
L1024[09:34:37] *** big_Xplo|Off is now known as big_Xplosion
L1025[09:36:49] ⇦ Quits: Emris (~Miranda@195.234.58.25) (Quit: Miranda IM! Smaller, Faster, Easier. http://miranda-im.org)
L1026[09:36:57] ⇦ Quits: Loetkolben (~Loetkolbe@ipbcc23de8.dynamic.kabel-deutschland.de) (Quit: Over and Out!)
L1027[09:37:22] ⇨ Joins: cpup (~cpup@32.218.113.33)
L1028[09:38:29] *** Ecu is now known as Ecu|Work
L1029[09:41:12] *** esKaayY is now known as esKaayY|eternalsleep
L1030[09:42:44] ⇨ Joins: Vazkii (~Vazkii@a79-169-161-227.cpe.netcabo.pt)
L1031[09:45:21] ⇦ Quits: Seremis (~Seremis@ip54547cc3.speed.planet.nl) (Quit: Leaving)
L1032[09:45:59] *** WitcherAbdo is now known as AbdoTGM50
L1033[09:46:12] ⇨ Joins: lexteam (uid59708@id-59708.highgate.irccloud.com)
L1034[09:51:25] ⇦ Quits: AbdoTGM50 (~AbdoTGM50@89.203.29.214) (Read error: Connection reset by peer)
L1035[09:52:29] ⇦ Quits: cpup (~cpup@32.218.113.33) (Ping timeout: 189 seconds)
L1036[09:54:06] ⇨ Joins: megamit (~megamit@94.14.48.228)
L1037[09:54:33] <Naiten> If I use new FileReader("file.txt") where should file.txt be placed?
L1038[09:56:18] ⇨ Joins: cpup (~cpup@32.218.113.33)
L1039[10:03:15] *** big_Xplosion is now known as big_Xplo|AFK
L1040[10:03:42] <tattyseal> Hello. I have a container and when I put an item in it, it just disappears. Does anyone see anything wrong? https://github.com/tattyseal/CompactStorage/blob/2.0/src/main/java/com/workshop/compactstorage/tileentity/TileEntityChest.java
L1041[10:07:20] ⇦ Quits: cpup (~cpup@32.218.113.33) (Ping timeout: 189 seconds)
L1042[10:08:34] <tattyseal> Nevermind.
L1043[10:08:36] ⇦ Parts: tattyseal (~tattyseal@2.28.36.79) (Leaving))
L1044[10:10:33] ⇨ Joins: killjoy (~killjoy@aolclient-66-26-10-51.aol.ec.res.rr.com)
L1045[10:11:19] ⇨ Joins: Corosus (~Corosus@23.233.1.220)
L1046[10:11:43] ⇦ Quits: killjoy (~killjoy@aolclient-66-26-10-51.aol.ec.res.rr.com) (Client Quit)
L1047[10:11:57] ⇦ Quits: Vazkii (~Vazkii@a79-169-161-227.cpe.netcabo.pt) (Quit: Stop. Hentai time.)
L1048[10:12:11] <Ivorius> Naiten: C://file.txt
L1049[10:12:13] ⇨ Joins: Vazkii (~Vazkii@a79-169-161-227.cpe.netcabo.pt)
L1050[10:12:14] <Ivorius> x)
L1051[10:12:48] <Ivorius> It depends on the environment actually
L1052[10:13:10] <Ivorius> Whatever your resources directory is. I recommend not reading your files like that :P
L1053[10:13:47] *** gratimax is now known as gratimax|away
L1054[10:13:47] ⇦ Quits: Trangar (~Trangar3@46.144.110.37) (Read error: Connection reset by peer)
L1055[10:14:16] ⇨ Joins: cpup (~cpup@32.218.113.33)
L1056[10:14:17] <Naiten> Okay, how do I read them?
L1057[10:14:36] <Ivorius> You want to read a plain text file?
L1058[10:15:01] ⇨ Joins: Loetkolben (~Loetkolbe@ipbcc23de8.dynamic.kabel-deutschland.de)
L1059[10:15:50] <Ivorius> Naiten: https://github.com/Ivorforce/IvToolkit/blob/master/src/main/java/ivorius/ivtoolkit/tools/IvFileHelper.java#L28
L1060[10:16:04] <Ivorius> And then just feed that stream to your reader
L1061[10:16:48] <progwml6> fry|sleep system.out.println in forge commits :(
L1062[10:18:08] <Naiten> Ivorius, yes, plain text. Thanks.
L1063[10:22:17] ⇦ Quits: Giratina548 (~Giratina5@107-209-128-138.lightspeed.mssnks.sbcglobal.net) (Ping timeout: 198 seconds)
L1064[10:26:52] <Naiten> Ivorius, when I try new FileReader(UtilFile.inputStreamFromResourceLocation(location)), it fires an error and suggests to wrap argument into String.valueof ... Will that work?
L1065[10:27:32] <Ivorius> String.valueOf what?
L1066[10:27:52] <Ivorius> Oh
L1067[10:27:53] <Ivorius> No, lol
L1068[10:28:01] <Ivorius> FileReader is for reading File objects
L1069[10:28:22] <Ivorius> Use InputStreamReader
L1070[10:28:54] <Naiten> okay
L1071[10:29:06] <Naiten> i'm noob about dat stuff
L1072[10:29:16] <Naiten> so don't laugh at me
L1073[10:30:38] <Ivorius> InputStream = some data source
L1074[10:30:43] <Ivorius> File = a file on your computer
L1075[10:31:01] <Ivorius> new FileReader(String) is the same as new FileReader(new File(String))
L1076[10:31:24] <Ivorius> So if you did String.valueOf(inputStream), you'd get new File("InputStream@q9uejq0");
L1077[10:31:43] <Ivorius> Which is not a valid file path. 'Files' inside the jar can't be represented by File objects anyway
L1078[10:32:00] <Ivorius> Which is the reason you can't use FileReader
L1079[10:33:16] <Naiten> Omg, okay.
L1080[10:34:58] *** Darkhax is now known as Darkhax_AFK
L1081[10:35:37] ⇨ Joins: Giratina548 (~Giratina5@107-209-128-138.lightspeed.mssnks.sbcglobal.net)
L1082[10:37:02] ⇦ Quits: asie (~asie@078088168214.elblag.vectranet.pl) (Ping timeout: 189 seconds)
L1083[10:38:07] ⇨ Joins: eledore (~Eledore@eledore.info)
L1084[10:38:12] ⇦ Quits: cpup (~cpup@32.218.113.33) (Ping timeout: 378 seconds)
L1085[10:38:40] *** helinus|off is now known as helinus
L1086[10:39:40] ⇦ Quits: turmfalke_ (~turmfalke@p54A68D2F.dip0.t-ipconnect.de) (Quit: turmfalke_)
L1087[10:41:11] *** Xaw4|Work is now known as Xaw4
L1088[10:41:14] ⇨ Joins: weneg (~weneg@preuschoff.me)
L1089[10:41:35] ⇨ Joins: cpup (~cpup@32.218.113.33)
L1090[10:41:54] *** gratimax|away is now known as gratimax
L1091[10:43:23] ⇨ Joins: Girafi (Girafi@0x555178eb.adsl.cybercity.dk)
L1092[10:43:35] ⇦ Quits: MCPBot_Reborn (~MCPBot_Re@mcpbot.bspk.rs) (Remote host closed the connection)
L1093[10:43:48] ⇨ Joins: MCPBot_Reborn (~MCPBot_Re@mcpbot.bspk.rs)
L1094[10:50:11] ⇦ Quits: trab (~trab@28.np.emoserver.com) (Ping timeout: 198 seconds)
L1095[10:53:03] ⇦ Quits: cpup (~cpup@32.218.113.33) (Ping timeout: 378 seconds)
L1096[10:57:18] *** manmaed|AFK is now known as manmaed
L1097[10:57:23] ⇦ Quits: cad435 (~quassel@2a02:6d40:160:a5b:6c8f:33ca:3e8c:3611) (Ping timeout: 189 seconds)
L1098[10:57:34] ⇨ Joins: cpup (~cpup@32.218.113.33)
L1099[10:59:50] *** manmaed is now known as manmaed|AFK
L1100[10:59:54] *** manmaed|AFK is now known as manmaed
L1101[11:00:15] ⇦ Quits: zhiayang (~zhiayang@bb42-60-154-134.singnet.com.sg) (Quit: Textual IRC Client: www.textualapp.com)
L1102[11:01:44] *** Quetzi is now known as Quetzi|off
L1103[11:02:19] ⇨ Joins: LexLaptop (~LexManos@2601:7:180:c900:bd59:8c22:7201:9e1)
L1104[11:02:19] MineBot sets mode: +o on LexLaptop
L1105[11:03:09] ⇨ Joins: LordIllyohs (~LordIllyo@76.243.46.93)
L1106[11:03:57] *** LordIllyohs is now known as Illyohs
L1107[11:06:30] ⇦ Quits: cpup (~cpup@32.218.113.33) (Ping timeout: 194 seconds)
L1108[11:07:19] *** Genji|away is now known as Genji
L1109[11:07:37] *** Abrar|gone is now known as AbrarSyed
L1110[11:09:09] *** Paleo|off is now known as PaleoCrafter
L1111[11:12:07] ⇨ Joins: cpup (~cpup@32.218.113.33)
L1112[11:13:02] <AbrarSyed> Ivorius, Naiten this is why you guys use the beutifl thing known as guava. string blah = new String(ByteStreams.readFully(inputStream), Charsets.UTF_8)
L1113[11:13:25] <AbrarSyed> also... Files.toString(file, Charsets.UTF_8)
L1114[11:13:29] ⇨ Joins: sciguyryan (~sciguyrya@80-254-76-171.dynamic.swissvpn.net)
L1115[11:13:38] <Naiten> Oh mein Gott, ich just got things work
L1116[11:14:17] <AbrarSyed> ALLWAYS check guava before dong something yourself
L1117[11:14:40] <AbrarSyed> most useful classes are: Files ByteStreams CHharStreams and the collections which I wont get into now
L1118[11:15:35] <Naiten> I won't touch a line of code if it works and works fine -.-
L1119[11:15:50] <AbrarSyed> tsk tsk ts
L1120[11:15:56] <AbrarSyed> what you do is this Naiten
L1121[11:16:02] <AbrarSyed> you commit and push when its working
L1122[11:16:03] <AbrarSyed> then break it
L1123[11:16:13] <AbrarSyed> if it ever stops working.. and you give up, just revert to the commit
L1124[11:16:16] <AbrarSyed> and everyones happy
L1125[11:16:28] <AbrarSyed> ^ the true power and use of git
L1126[11:17:12] <Naiten> Nope. It's a principle of rational programming. Don't fix working things, fix bugs. Otherwise it's just a waste of time.
L1127[11:17:38] <Naiten> I'm a perfectionist by nature, but perfectionism is bad when coding.
L1128[11:20:36] *** gratimax is now known as gratimax|away
L1129[11:21:38] ⇦ Quits: cpup (~cpup@32.218.113.33) (Ping timeout: 200 seconds)
L1130[11:21:51] <AbrarSyed> thats only true when time = money in the business
L1131[11:21:59] <AbrarSyed> for hobbyists, one should always strive for good code
L1132[11:22:05] <AbrarSyed> dont hack stuff unless its absolutely necessayr
L1133[11:23:19] *** gratimax|away is now known as gratimax
L1134[11:24:11] <Naiten> Time is significant to me although I'm a hobbyist. I can't spend my whole day improving what is already working...
L1135[11:25:31] * AbrarSyed shakes his head in disappointment
L1136[11:26:34] *** OndraSter|off is now known as OndraSter
L1137[11:28:28] ⇨ Joins: cpup (~cpup@32.218.113.33)
L1138[11:28:55] * Naiten sees word 'disappointment' can be translated into his language with four different meanings and doesn't know how to interpret that
L1139[11:30:45] <gigaherz> disappointment is any situation when you expected something, and the outcome was worse than your expectations
L1140[11:31:02] <gigaherz> if your language has different words for different kinds of disappointment, just choose the closest one ;P
L1141[11:31:41] <Naiten> gigaherz, four kins of disappointment indeed
L1142[11:32:01] ⇨ Joins: featurive (~Thunderbi@2001:983:315f:1:8c05:771d:1690:7894)
L1143[11:32:31] <Naiten> gigaherz, that's why this is actual http://i.imgur.com/p1LTgtc.jpg
L1144[11:32:56] *** gratimax is now known as gratimax|away
L1145[11:33:03] ⇨ Joins: iPixeli (~iPixeli@host86-128-98-216.range86-128.btcentralplus.com)
L1146[11:33:03] MineBot sets mode: +v on iPixeli
L1147[11:33:07] *** alekso56_off is now known as alekso56
L1148[11:38:40] ⇨ Joins: Unh0ly_Tigg (~Robert@c-76-115-95-185.hsd1.wa.comcast.net)
L1149[11:40:49] ⇨ Joins: ElgarL (~ElgarL@cpc6-hawk15-2-0-cust537.18-1.cable.virginm.net)
L1150[11:41:08] <Lumien> If i have certain "events" that can happen in the world on a specific location should i just put a invisible entity there to "sync" that to the client or use the ChunkWatchEvent to sync it?
L1151[11:41:56] ⇦ Quits: cpup (~cpup@32.218.113.33) (Ping timeout: 198 seconds)
L1152[11:44:40] <gigaherz> spawn an entity when the event happens, IMO
L1153[11:46:04] ⇦ Quits: Naiten (Naiten@77.34.42.77) (Quit: Leaving)
L1154[11:51:55] ⇨ Joins: cpup (~cpup@32.218.113.33)
L1155[11:59:46] ⇦ Quits: cpup (~cpup@32.218.113.33) (Ping timeout: 200 seconds)
L1156[12:02:41] *** Techokami|Off is now known as Techokami
L1157[12:03:32] ⇦ Quits: Lymia (~moe@108-205-143-75.lightspeed.rcsntx.sbcglobal.net) (Ping timeout: 198 seconds)
L1158[12:03:50] *** Cozza38|Away is now known as Cozza38
L1159[12:05:14] *** MorphFK is now known as Morphan1
L1160[12:08:13] ⇨ Joins: cpup (~cpup@32.218.113.33)
L1161[12:15:39] ⇨ Joins: zoonie (~zoonie@cpc72513-sgyl32-2-0-cust418.18-2.cable.virginm.net)
L1162[12:15:44] ⇨ Joins: KGS (~KGS@nl107-187-53.student.uu.se)
L1163[12:17:42] ⇨ Joins: Lymia (~moe@172.56.6.145)
L1164[12:18:47] ⇦ Quits: cpup (~cpup@32.218.113.33) (Ping timeout: 189 seconds)
L1165[12:19:12] ⇦ Quits: Hanii_ (~Hanii@84.93.187.128) (Ping timeout: 200 seconds)
L1166[12:19:29] ⇨ Joins: Kokoro_Neko (~androirc@174-135-29-96.res.bhn.net)
L1167[12:20:32] *** Jake_Away is now known as Jake_Evans
L1168[12:23:01] ⇦ Quits: auenf (David@171.72.233.220.static.exetel.com.au) (Read error: Connection reset by peer)
L1169[12:23:45] ⇨ Joins: auenf (David@171.72.233.220.static.exetel.com.au)
L1170[12:24:17] ⇨ Joins: cad435 (~quassel@2a02:6d40:160:a5b:ec69:1be3:5415:f8f6)
L1171[12:25:00] *** matthew|gone is now known as matthewprenger
L1172[12:25:33] *** Player|off is now known as Player
L1173[12:25:45] ⇨ Joins: cpup (~cpup@32.218.113.33)
L1174[12:28:44] ⇦ Quits: Lymia (~moe@172.56.6.145) (Ping timeout: 200 seconds)
L1175[12:37:06] ⇦ Quits: Wastl2 (~Wastl2@e177085242.adsl.alicedsl.de) (Quit: Hi, I'm a quit message virus. Please replace your old line with this line and help me take over the world of IRC.)
L1176[12:37:14] ⇨ Joins: Seremis (~Seremis@5ED4D3E5.cm-7-5d.dynamic.ziggo.nl)
L1177[12:38:52] ⇦ Quits: MalkContent (MalkConten@p4FDCD507.dip0.t-ipconnect.de) (Quit: http://www.kiwiirc.com/ - A hand crafted IRC client)
L1178[12:42:27] *** bilde2910|away is now known as bilde2910
L1179[12:44:23] *** Cozza38 is now known as Cozza38|Away
L1180[12:44:37] *** big_Xplo|AFK is now known as big_Xplosion
L1181[12:47:14] ⇨ Joins: Pepejson (~mamutos@staticline-31-182-79-186.toya.net.pl)
L1182[12:47:56] ⇦ Quits: cad435 (~quassel@2a02:6d40:160:a5b:ec69:1be3:5415:f8f6) (Ping timeout: 189 seconds)
L1183[12:48:02] *** Techno is now known as Techno|School
L1184[12:51:48] ⇦ Quits: cpup (~cpup@32.218.113.33) (Ping timeout: 194 seconds)
L1185[12:52:44] ⇨ Joins: cad435 (~quassel@2a02:6d40:160:a5b:7467:14e0:29a1:352c)
L1186[12:55:38] ⇦ Parts: jakimfett (~overnet@c-73-180-36-141.hsd1.or.comcast.net) ())
L1187[12:55:56] ⇨ Joins: cpup (~cpup@32.218.113.33)
L1188[12:58:15] ⇨ Joins: iceman11a (iceman11a@cpe-74-141-56-150.swo.res.rr.com)
L1189[13:00:40] *** Quetzi|off is now known as Quetzi
L1190[13:01:26] *** prassel|off is now known as prasselpikachu
L1191[13:03:27] *** prasselpikachu is now known as prassel|off
L1192[13:04:48] ⇨ Joins: MalkContent (MalkConten@p4FDCD507.dip0.t-ipconnect.de)
L1193[13:04:56] ⇨ Joins: Ipsis (~Ipsis@82-69-71-184.dsl.in-addr.zen.co.uk)
L1194[13:05:14] ⇦ Quits: cpup (~cpup@32.218.113.33) (Ping timeout: 194 seconds)
L1195[13:05:14] ⇦ Quits: ChJees (~ChJees@h211n5-sv-a13.ias.bredband.telia.com) (Ping timeout: 194 seconds)
L1196[13:08:03] <MalkContent> question: http://pastebin.com/N4Pc7MdJ asmeventhandler means probably some coremod fuckuppery?
L1197[13:10:06] ⇦ Quits: Seremis (~Seremis@5ED4D3E5.cm-7-5d.dynamic.ziggo.nl) (Read error: Connection reset by peer)
L1198[13:11:24] ⇨ Joins: kourbou (~kourbou@wis38-2-88-180-229-5.fbx.proxad.net)
L1199[13:11:44] ⇦ Quits: Hunterz (~hunterz@62.182.234.189) (Quit: Leaving.)
L1200[13:12:30] ⇨ Joins: killjoy (~killjoy@aolclient-66-26-10-51.aol.ec.res.rr.com)
L1201[13:12:36] ⇨ Joins: cpup (~cpup@32.218.113.33)
L1202[13:14:53] *** prassel|off is now known as prasselpikachu
L1203[13:17:30] ⇨ Joins: Hanii (~Hanii@87.112.57.200)
L1204[13:19:16] <killjoy> What sounds better? Forge Annotation Processor, Forge AP, or FAP?
L1205[13:19:34] <darkdiplomat> FAP
L1206[13:20:29] ⇦ Quits: kourbou (~kourbou@wis38-2-88-180-229-5.fbx.proxad.net) (Ping timeout: 198 seconds)
L1207[13:22:08] ⇦ Quits: cpup (~cpup@32.218.113.33) (Ping timeout: 194 seconds)
L1208[13:24:06] <killjoy> I guess it's only a question of what things it would do.
L1209[13:27:26] ⇨ Joins: kourbou (~kourbou@wis38-2-88-180-229-5.fbx.proxad.net)
L1210[13:28:37] ⇦ Quits: kourbou (~kourbou@wis38-2-88-180-229-5.fbx.proxad.net) (Client Quit)
L1211[13:29:04] ⇨ Joins: cpup (~cpup@32.218.113.33)
L1212[13:29:26] <PaleoCrafter> MalkContent, FML generates classes for event handlers at runtime, way better performance than a reflection based approach
L1213[13:29:48] <MalkContent> wah?
L1214[13:30:04] *** big_Xplosion is now known as big_Xplo|AFK
L1215[13:30:05] <MalkContent> a.
L1216[13:31:45] <Unh0ly_Tigg> when you register an object with an event bus, it creates a new class that invokes the various event methods instead of doing it via reflection. it uses less overhead, as calling a ton of methods via reflection over and over would cause a lot of lag over time.
L1217[13:34:17] ⇨ Joins: minecreatr (~minecreat@50.254.148.9)
L1218[13:36:33] <MalkContent> I don't think I can comprehend either of those two statements, but I'll take it as a "no".
L1219[13:37:44] ⇦ Quits: cpup (~cpup@32.218.113.33) (Ping timeout: 194 seconds)
L1220[13:37:57] ⇨ Joins: Strange (uid27214@id-27214.highgate.irccloud.com)
L1221[13:40:50] *** matthewprenger is now known as matthew|gone
L1222[13:42:29] ⇨ Joins: cpup (~cpup@32.218.113.33)
L1223[13:42:55] ⇨ Joins: IAMASB2 (~ASB2@ool-44c5ad1e.dyn.optonline.net)
L1224[13:44:47] ⇦ Quits: ASB2 (~ASB2@ool-44c5ad1e.dyn.optonline.net) (Ping timeout: 198 seconds)
L1225[13:46:03] *** Player is now known as Player|off
L1226[13:47:03] *** tterrag is now known as tterrag|away
L1227[13:47:40] <LexManos> ...
L1228[13:50:20] *** weneg is now known as weneg|off
L1229[13:50:33] ⇦ Quits: Berserker2K3 (~Berserker@p4FC78ECE.dip0.t-ipconnect.de) (*.net *.split)
L1230[13:50:33] ⇦ Quits: GenPage (~GenPage@pagefortress.com) (*.net *.split)
L1231[13:50:33] ⇦ Quits: waterpicker (~waterpick@99-91-172-164.lightspeed.ltrkar.sbcglobal.net) (*.net *.split)
L1232[13:51:21] <ollieread> killjoy: Probably shouldn't use forge in the name
L1233[13:51:35] <MalkContent> I apologize that my stupidity hath offended thee so
L1234[13:52:10] <Unh0ly_Tigg> "Annotation Processor for Forge-enabled Environments" ?
L1235[13:52:38] <Unh0ly_Tigg> or "APFE"?
L1236[13:52:45] <MalkContent> I'd support minecraft forge annotation processor, or MC FAP
L1237[13:53:27] <ollieread> As long as it says "for forge" I don't think it matters
L1238[13:53:39] <ollieread> Simply adding forge implies an official link
L1239[13:53:58] <ollieread> So you'd say "Annotation Processor for Forge"
L1240[13:54:13] ⇨ Joins: pixlepix (~localmaca@cpe-72-228-15-137.nycap.res.rr.com)
L1241[13:54:28] <ollieread> Annotation Process for Forge = An annotation processor for use with forge
L1242[13:54:41] <ollieread> Forge Annotation Processor = Forges annotation processor
L1243[13:54:42] <LexManos> ...
L1244[13:54:44] <Unh0ly_Tigg> I think how you include forge in the title should be up to lex to decide.
L1245[13:54:45] <ollieread> Is how it'd be seen
L1246[13:54:53] <LexManos> what trhe fuck are you doing..
L1247[13:55:04] ⇦ Quits: ElgarL (~ElgarL@cpc6-hawk15-2-0-cust537.18-1.cable.virginm.net) (Ping timeout: 194 seconds)
L1248[13:55:06] ⇦ Quits: cpup (~cpup@32.218.113.33) (Ping timeout: 378 seconds)
L1249[13:55:22] <ollieread> No idea, killjoy asked about a name, I was just saying to avoid implying that it's an offical project
L1250[13:57:05] ⇨ Joins: GenPage (~GenPage@pagefortress.com)
L1251[13:57:16] ⇨ Joins: cpup (~cpup@32.218.113.33)
L1252[13:57:59] ⇨ Joins: waterpicker (~waterpick@99-91-172-164.lightspeed.ltrkar.sbcglobal.net)
L1253[13:59:12] <killjoy> I probably won't release it.
L1254[13:59:22] <LexManos> what is it
L1255[13:59:29] <killjoy> It's an annotation processor
L1256[13:59:30] <LexManos> and dont use the forge name
L1257[13:59:38] <LexManos> -.-
L1258[13:59:45] <LexManos> WHAT IS IT
L1259[13:59:56] <LexManos> dont give me the fucking nasme
L1260[14:00:24] ⇨ Joins: Balduran (~kvirc@CPE602ad08791b2-CM602ad08791af.cpe.net.cable.rogers.com)
L1261[14:00:33] <killjoy> It's just something for me to toy with while I learn about javax.annotation.processing.Processor
L1262[14:00:47] <LexManos> then dont do it with forge
L1263[14:01:16] <killjoy> I'm just doing it because I like the name. Think of it like a codename
L1264[14:01:51] <LexManos> no
L1265[14:02:09] <LexManos> kappa
L1266[14:02:15] <LexManos> use that
L1267[14:02:38] <diphtherial> killjoy: i'm kind of curious, too; what annotations are you processing, exactly?
L1268[14:02:52] *** bilde2910 is now known as bilde2910|away
L1269[14:03:21] <MalkContent> killjoy: just don't. just because of the chance that something get's out and some dude innocently takes it as official, has problems with it and lex will suffer for it and then we all suffer
L1270[14:03:47] <killjoy> I'm going to start off by seeing if I can add annotations to access transformed members.
L1271[14:03:55] <diphtherial> so i guess the take-home here is not to use "forge" in the name in any capacity
L1272[14:04:03] <MalkContent> it's like a shitcovered waterballon. poking it with a stick is super fun, but there's a small chance of a rain of poop, so better not do it
L1273[14:04:11] <killjoy> Exactly. Codename FAP
L1274[14:04:17] <diphtherial> hot
L1275[14:04:23] <LexManos> No
L1276[14:04:35] <LexManos> name it Kappa, Killjow's Annotation Post Processing App
L1277[14:04:43] <Unh0ly_Tigg> perfect
L1278[14:04:49] <LexManos> NOTHING with the name Forge in it
L1279[14:04:59] <killjoy> So that's what you meant
L1280[14:05:10] <Unh0ly_Tigg> that name if freaking brilliant...
L1281[14:05:28] <diphtherial> out of curiosity, is there an official policy on use of 'forge' as a trademark or something..?
L1282[14:05:54] <diphtherial> the unofficial policy seems to be not using 'forge' in the name of a mod, which makes sense since it would imply endorsement
L1283[14:06:08] * Unh0ly_Tigg looks at FMP...
L1284[14:06:21] <drazisil> That's sorta a common rule, actually
L1285[14:06:30] <LexManos> I dont own any trademark on forge no
L1286[14:06:35] <killjoy> Well chickenbones intended for that to be put into forge, but was denied because scala
L1287[14:06:35] <LexManos> But please, just dont fucking do it
L1288[14:07:44] *** gratimax|away is now known as gratimax
L1289[14:07:46] <diphtherial> understood
L1290[14:07:47] <killjoy> i googled that name and this came up. http://en.wikipedia.org/wiki/Kappa_%28folklore%29
L1291[14:07:59] <diphtherial> kappa is also a letter in the greek alphabet, fwiw
L1292[14:08:11] <killjoy> I know that because fraternaties
L1293[14:08:12] <diphtherial> also a river monster with a bowlful of water in an indentation in its head
L1294[14:08:35] <killjoy> When lex said it the first time, I thought it was something in japanese
L1295[14:08:56] <diphtherial> it is :3
L1296[14:09:27] <Unh0ly_Tigg> google "twitch kappa"
L1297[14:09:40] <killjoy> Hm. I should tweak the name a bit so it's Nappa
L1298[14:09:42] <ollieread> Kappa is also an old sportswear company
L1299[14:10:18] <killjoy> >ITT http://en.wikipedia.org/wiki/Kappa_(disambiguation)
L1300[14:10:53] ⇦ Quits: Pepejson (~mamutos@staticline-31-182-79-186.toya.net.pl) (Remote host closed the connection)
L1301[14:11:16] <Unh0ly_Tigg> heh, the fraternity: "Kappa Kappa Kappa"
L1302[14:11:20] ⇦ Quits: cpup (~cpup@32.218.113.33) (Ping timeout: 198 seconds)
L1303[14:11:30] <killjoy> aka (KKK)
L1304[14:12:05] <killjoy> Every other fraternity has the abbr, except that one
L1305[14:12:17] <Unh0ly_Tigg> http://en.wikipedia.org/wiki/Kappa_Kappa_Kappa
L1306[14:13:44] ⇦ Parts: Six-One-Three (webchat@blk-89-209-224.eastlink.ca) ())
L1307[14:14:01] ⇨ Joins: cpup (~cpup@32.218.113.33)
L1308[14:17:11] ⇦ Quits: Ipsis (~Ipsis@82-69-71-184.dsl.in-addr.zen.co.uk) (Ping timeout: 198 seconds)
L1309[14:17:12] ⇨ Joins: OrthoLoess (~ortho@rossstone.plus.com)
L1310[14:20:34] ⇦ Quits: cpup (~cpup@32.218.113.33) (Ping timeout: 200 seconds)
L1311[14:22:07] *** Riking|away is now known as Riking
L1312[14:22:10] *** big_Xplo|AFK is now known as big_Xplosion
L1313[14:23:40] *** CrystalMare is now known as Crystal|AFK
L1314[14:24:30] ⇨ Joins: maya (~Maya@ppp-seco21th2-46-193-160-173.wb.wifirst.net)
L1315[14:26:01] *** gratimax is now known as gratimax|away
L1316[14:26:31] ⇨ Joins: parcel31u (~parcel31u@c-98-250-85-212.hsd1.mi.comcast.net)
L1317[14:26:41] *** Techno|School is now known as Techno|OuttaHouse
L1318[14:27:29] ⇦ Quits: Hgrebnednav (~Hgrebnedn@d51A4F912.access.telenet.be) (Ping timeout: 189 seconds)
L1319[14:27:32] ⇦ Quits: LexLaptop (~LexManos@2601:7:180:c900:bd59:8c22:7201:9e1) (Ping timeout: 198 seconds)
L1320[14:28:41] *** prasselpikachu is now known as prassel|off
L1321[14:29:43] ⇨ Joins: LexLaptop (~LexManos@2601:7:180:c900:bd59:8c22:7201:9e1)
L1322[14:29:43] MineBot sets mode: +o on LexLaptop
L1323[14:29:44] ⇨ Joins: Lex_ (~Lex@2601:7:180:c900:2c1b:cbd8:5565:f021)
L1324[14:29:45] MineBot sets mode: +o on Lex_
L1325[14:30:05] ⇦ Quits: r4wk-work (~r4wk@mtprnf0110w-142166253246.dhcp-dynamic.FibreOP.nl.bellaliant.net) (Quit: home time o/)
L1326[14:30:41] ⇦ Quits: LexManos (~Lex@2601:7:180:c900:2c1b:cbd8:5565:f021) (Ping timeout: 198 seconds)
L1327[14:31:25] *** prassel|off is now known as prasselpikachu
L1328[14:31:58] *** prasselpikachu is now known as prassel|off
L1329[14:32:13] ⇨ Joins: Raziel (~Raziel@cpc16-broo8-2-0-cust158.14-2.cable.virginm.net)
L1330[14:32:47] ⇨ Joins: NPException (~NPExcepti@cable-86-56-25-212.cust.telecolumbus.net)
L1331[14:32:48] <MalkContent> forge 1277 RenderItem line 323 creates an unused randomized float :|
L1332[14:33:33] *** Crystal|AFK is now known as CrystalMare
L1333[14:34:18] ⇨ Joins: Horfius (~Horfius@c-50-177-126-199.hsd1.nh.comcast.net)
L1334[14:34:44] ⇦ Quits: Kashike (~kashike@is.the.leader.of.the.kitteh.club) (Ping timeout: 198 seconds)
L1335[14:39:34] ⇨ Joins: Kashike (~kashike@is.the.leader.of.the.kitteh.club)
L1336[14:41:01] *** Techokami is now known as Techokami|Off
L1337[14:42:06] *** helinus is now known as helinus|off
L1338[14:43:21] ⇦ Quits: drazisil (~drazisil@cpe-69-207-23-141.buffalo.res.rr.com) (Quit: Leaving)
L1339[14:44:11] ⇦ Quits: minecreatr (~minecreat@50.254.148.9) (Quit: Leaving)
L1340[14:44:57] ⇨ Joins: cpup (~cpup@32.218.113.33)
L1341[14:45:07] ⇦ Quits: zetaPRIME (~zetaPRIME@209.141.57.4) (Quit: No Ping reply in 180 seconds.)
L1342[14:47:56] <cad435> is it possible to have a different block-texture in inventory and as "block-in-world"? Or can i only achieve this if i add place-items?
L1343[14:48:34] ⇦ Quits: Loetkolben (~Loetkolbe@ipbcc23de8.dynamic.kabel-deutschland.de) (Quit: Over and Out!)
L1344[14:50:29] ⇦ Quits: cpup (~cpup@32.218.113.33) (Ping timeout: 198 seconds)
L1345[14:50:49] <tterrag|away> Use a custom itemblock
L1346[14:52:22] ⇨ Joins: Hgrebnednav (~Hgrebnedn@d51A4F912.access.telenet.be)
L1347[14:53:08] *** big_Xplosion is now known as big_Xplo|Off
L1348[14:55:47] <Corosus> anyone have links on how to setup a forge dev environment that lets you edit mc source code as well?
L1349[14:56:00] *** dmillerw[OFF] is now known as dmillerw
L1350[14:56:55] ⇨ Joins: cpup (~cpup@32.218.113.33)
L1351[14:57:49] <ollieread> You can't edit mc source code
L1352[14:57:52] <ollieread> You have to use ASM
L1353[14:57:56] <ollieread> also, don't
L1354[14:58:16] <ollieread> You'll get shouted at
L1355[14:59:07] <Corosus> i need to just so i can run dev without openAL crashing my game
L1356[14:59:16] *** CrystalMare is now known as Crystal|AFK
L1357[14:59:24] <Corosus> a problem apparently few have
L1358[14:59:26] <ollieread> Surely that's a problem on your end, rather than with MC
L1359[14:59:41] <Corosus> ive been unable to fix it
L1360[14:59:57] <ollieread> Well afaik, you can't setup an environment where mc code can be edited
L1361[15:00:07] <ollieread> Pretty sure forge is created to prevent people from needing to do that
L1362[15:00:25] <Ordinastie> you can code against Forge cloned repo
L1363[15:00:43] <Corosus> ah thought so Ordinastie , i remember hearing about that but i never tested it myself
L1364[15:01:39] *** kroeser is now known as kroeser|away
L1365[15:02:36] ⇨ Joins: Doty1154 (~doty1154@50.136.193.35)
L1366[15:02:51] ⇦ Quits: SuPeRMiNoR2 (~SuPeR@superminor2.net) (Read error: Connection reset by peer)
L1367[15:03:22] <clienthax> just how the hell do i use onPlayerBlockPlace ?
L1368[15:03:25] <cad435> tterrag|away: i try to overwrite in class extends ItemBlock the method: "getIconFromDamage" (the parameter is meta, isn't it?) but that did't gave me a different texture in inventory...
L1369[15:04:23] <Ordinastie> cad435, just override both getIcon(int, int) and getIcon(world, int, int, int) from block
L1370[15:04:58] <cad435> and in ItemBlock i assign the textures for the inventory?
L1371[15:05:20] ⇦ Quits: cpup (~cpup@32.218.113.33) (Ping timeout: 198 seconds)
L1372[15:07:15] <PaleoCrafter> cad435, no, the inventory icons go in getIcon(int, int)
L1373[15:08:44] ⇦ Quits: RawringNymNym (~maria@BMTNON3746W-LP130-04-1279272311.dsl.bell.ca) (Ping timeout: 194 seconds)
L1374[15:09:17] ⇨ Joins: RawringNymNym (~maria@BMTNON3746W-LP130-01-1177624808.dsl.bell.ca)
L1375[15:09:39] <cad435> ok but i want to have a different texture if the block is placed in the world(not the same the block has in inventory)... is that possible than? because "getIcon" assignes the texture to both, the inventory-block and the block that is placed in the world
L1376[15:11:00] <PaleoCrafter> did you even read what Ordinastie wrote, cad435?
L1377[15:11:29] ⇨ Joins: SuPeRMiNoR2 (~SuPeR@superminor2.net)
L1378[15:11:48] ⇦ Quits: SuPeRMiNoR2 (~SuPeR@superminor2.net) (Remote host closed the connection)
L1379[15:11:49] <cad435> yes i have.... but that arent only two constructors that'*ll do the same? or is that a missthinking by me?
L1380[15:12:20] ⇨ Joins: SuPeRMiNoR2 (~SuPeR@superminor2.net)
L1381[15:12:21] <PaleoCrafter> they aren't constructors but normal functions and one is for the inventory, the other one for in-world (guess which is which)
L1382[15:12:31] ⇨ Joins: Captain_Shadows (~Thunderbi@208.92.78.142)
L1383[15:13:46] <cad435> ok, than sry i was stupid...
L1384[15:13:54] ⇨ Joins: cpup (~cpup@32.218.113.33)
L1385[15:15:22] ⇦ Quits: Balduran (~kvirc@CPE602ad08791b2-CM602ad08791af.cpe.net.cable.rogers.com) (Quit: Glory to the machine.)
L1386[15:17:07] <cad435> ah yes it's working... and why the hell did i mess up constructors and funktions -.- sry for that...
L1387[15:19:14] *** tterrag|away is now known as tterrag
L1388[15:19:21] ⇨ Joins: ChJees (~ChJees@h211n5-sv-a13.ias.bredband.telia.com)
L1389[15:22:32] *** PaleoCrafter is now known as Paleo|off
L1390[15:28:30] ⇦ Quits: cad435 (~quassel@2a02:6d40:160:a5b:7467:14e0:29a1:352c) (Remote host closed the connection)
L1391[15:28:40] ⇨ Joins: cad435 (~quassel@2a02:6d40:160:a5b:c1c5:b957:e85a:186f)
L1392[15:31:29] *** matthew|gone is now known as matthewprenger
L1393[15:32:15] <MalkContent> o fuck me
L1394[15:32:24] <MalkContent> was wondering how that renderer always did the same thing
L1395[15:32:27] ⇦ Quits: cpup (~cpup@32.218.113.33) (Ping timeout: 378 seconds)
L1396[15:32:30] <MalkContent> this.random.setSeed(187L)...
L1397[15:33:25] <tterrag> yeah that trick is nice :p
L1398[15:33:36] ⇨ Joins: xaero (xaero@ip70-162-11-251.ph.ph.cox.net)
L1399[15:34:38] <MalkContent> isn't that wasteful to put that into a renderer
L1400[15:34:53] <tterrag> no?
L1401[15:35:04] <tterrag> how else do you do consistent randomness?
L1402[15:35:09] <MalkContent> i always thought random stuff took up extra calculation
L1403[15:35:17] <tterrag> of course it does
L1404[15:35:21] <MalkContent> its used for the item spacing
L1405[15:35:22] <tterrag> but it's the only way to achieve a certain goal
L1406[15:35:30] <MalkContent> of 3d item's entities on the ground...
L1407[15:35:36] <tterrag> yes, and?
L1408[15:35:36] <Ordinastie> you could cache the values
L1409[15:35:47] <tterrag> not if the value is different between different renderings
L1410[15:35:57] <MalkContent> it's not
L1411[15:36:07] <MalkContent> if it was that would spazz out
L1412[15:36:11] ⇨ Joins: cpup (~cpup@32.218.113.33)
L1413[15:36:16] <MalkContent> like my custom rendered ones right now xD
L1414[15:36:18] <MalkContent> good fun
L1415[15:37:26] <MalkContent> Ordinastie: splendid idea
L1416[15:38:51] ⇦ Quits: Zyferus (Zyferus@c-174-58-160-193.hsd1.mo.comcast.net) (Read error: Connection reset by peer)
L1417[15:39:22] ⇨ Joins: Lymia (~moe@momoko.lymiahugs.com)
L1418[15:40:58] ⇨ Joins: Zyferus (Zyferus@c-174-58-160-193.hsd1.mo.comcast.net)
L1419[15:41:37] ⇦ Quits: maya (~Maya@ppp-seco21th2-46-193-160-173.wb.wifirst.net) (Read error: Connection reset by peer)
L1420[15:44:10] ⇦ Quits: Hanii (~Hanii@87.112.57.200) (Ping timeout: 200 seconds)
L1421[15:44:52] <clienthax> so, how can i fire a placement event ?
L1422[15:45:00] <clienthax> so crap like worldguard can pick up
L1423[15:46:51] ⇨ Joins: Hanii (~Hanii@40.30.125.91.dyn.plus.net)
L1424[15:47:51] ⇦ Quits: KJ4IPS|Gone (~KJ4IPS@75-131-45-218.static.kgpt.tn.charter.com) (Ping timeout: 378 seconds)
L1425[15:48:31] <cad435> MinecraftForge.EVENT_BUS.post(new BlockPlaceEvent)?
L1426[15:48:38] <cad435> @clienthax
L1427[15:49:26] ⇦ Quits: cpup (~cpup@32.218.113.33) (Ping timeout: 198 seconds)
L1428[15:50:22] ⇦ Quits: KilRoYDK (~KilRoYDK@89.184.156.11) (Quit: (null))
L1429[15:50:24] <killjoy> I just found a starwars reference in java
L1430[15:50:46] <Unh0ly_Tigg> ?
L1431[15:50:53] ⇨ Joins: KilRoYDK (~KilRoYDK@89.184.156.11)
L1432[15:52:15] <killjoy> http://docs.oracle.com/javase/7/docs/api/javax/lang/model/element/ElementKind.html#OTHER
L1433[15:52:40] <MalkContent> hah ^^
L1434[15:52:56] <MalkContent> I just found that grim fandango remastered is cheaper in the humble store than on steam
L1435[15:54:26] ⇦ Quits: KilRoYDK (~KilRoYDK@89.184.156.11) (Ping timeout: 200 seconds)
L1436[15:54:30] <clienthax> gah
L1437[15:54:36] <clienthax> our build system pisses me off -.-
L1438[15:55:24] ⇨ Joins: KJ4IPS|Gone (~KJ4IPS@75-131-45-218.static.kgpt.tn.charter.com)
L1439[15:55:35] *** KJ4IPS|Gone is now known as KJ4IPS
L1440[15:59:56] ⇦ Quits: Delaxarnyazer (~Delaxarny@ip5653e53d.direct-adsl.nl) (Ping timeout: 200 seconds)
L1441[16:00:48] ⇨ Joins: cpup (~cpup@32.218.113.33)
L1442[16:01:07] *** Genji is now known as Genji|away
L1443[16:01:17] *** gratimax|away is now known as gratimax
L1444[16:01:29] ⇨ Joins: Delax|Away (~Delaxarny@ip5653e53d.direct-adsl.nl)
L1445[16:01:49] *** Delax|Away is now known as Delaxarnyazer
L1446[16:04:06] <MalkContent> uh. in a for loop, does it matter if i increment if ++i or i++?
L1447[16:04:08] <AbrarSyed> ?+?
L1448[16:04:27] <MalkContent> just seeing the former one for the first time...
L1449[16:04:39] *** big_Xplo|Off is now known as big_Xplosion
L1450[16:04:43] <Ivorius> AbrarSyed: I have no idea what he wants to do
L1451[16:04:49] <Ivorius> For some things a reader is beneficial
L1452[16:04:55] <Ivorius> Don't tell me about Guava man :P
L1453[16:05:28] <AbrarSyed> wrong channel was all....
L1454[16:05:38] <AbrarSyed> MalkContent, dont matter...
L1455[16:05:51] <AbrarSyed> Ivorius, hmm?
L1456[16:06:00] <Ivorius> Scroll up, you pinged me :P
L1457[16:06:01] *** big_Xplosion is now known as big_Xplo|Off
L1458[16:06:07] <MalkContent> k, thx. i suspected it, but kept second guessing
L1459[16:06:44] <Lymia> ++i and i++ are basically the same for a loop, in Java.
L1460[16:06:51] <Lymia> And C, for everything but archaic compilers.
L1461[16:07:01] <Lymia> ++i is the habit of older C programmers and those who learned from them.
L1462[16:07:10] <Lymia> And i++ seems to be more "native" in Java
L1463[16:07:28] <killjoy> heaven forbid you type c++
L1464[16:07:42] <Lymia> What's C++?
L1465[16:07:54] <Lymia> I don't think any such language exists.
L1466[16:07:57] <killjoy> increment variable c by 1
L1467[16:07:58] <Lymia> ... please... ;-;
L1468[16:08:20] <killjoy> c = c + 1
L1469[16:08:58] ⇦ Quits: cpup (~cpup@32.218.113.33) (Ping timeout: 194 seconds)
L1470[16:09:06] <Lymia> But... c = c + 1 is an infinite loop. :(
L1471[16:09:14] <MalkContent> i know what ++i and i++ do, just never saw em in a loop
L1472[16:09:15] *** gratimax is now known as gratimax|away
L1473[16:09:25] <Lymia> MalkContent, why not?
L1474[16:09:25] <MalkContent> the ++i
L1475[16:09:27] <Lymia> That's, like...
L1476[16:09:32] <MalkContent> dunno
L1477[16:09:32] <clienthax> before or after use add
L1478[16:09:42] <Lymia> i++ is just habit because most Java code uses it.
L1479[16:09:49] <clienthax> 10:09 PM <clienthax> before or after use add
L1480[16:09:50] <Lymia> ++i is the habit that lots of C programmers have.
L1481[16:09:53] <Lymia> It's as simple as that.
L1482[16:09:55] *** sk89q|away is now known as sk89q
L1483[16:10:07] <clienthax> sk89q: i see you
L1484[16:10:08] <MalkContent> *shrugs*
L1485[16:10:29] <sk89q> hi
L1486[16:10:37] <clienthax> sk89q: regards to http://youtrack.sk89q.com/issue/WORLDGUARD-3353
L1487[16:10:39] <tterrag> no technically ++i is faster
L1488[16:10:41] <sk89q> well
L1489[16:10:45] <sk89q> I was typing my respond there but
L1490[16:10:48] <sk89q> response*
L1491[16:10:50] <tterrag> as ++i returns i+1
L1492[16:10:51] <clienthax> aha
L1493[16:10:54] <sk89q> let me finish
L1494[16:10:57] <tterrag> where as i++ returns i and then does i+1
L1495[16:10:58] <Lymia> tterrag, what ancient compiler from the 20th century are you using?
L1496[16:11:03] <tterrag> which is an extra instruction
L1497[16:11:05] <tterrag> it is
L1498[16:11:06] <tterrag> look it up
L1499[16:11:11] <Lymia> tterrag, what ancient compiler from the 20th century are you using?
L1500[16:11:13] <MalkContent> sweet
L1501[16:11:14] <MalkContent> til
L1502[16:11:42] <MalkContent> or not(?)
L1503[16:11:51] <Lymia> Any modern compiler, hopefully, doesn't return anything when used in the context for(;;expression)
L1504[16:12:00] <Lymia> And directly compiles something like inc ptr [...]
L1505[16:12:05] *** Darkhax_AFK is now known as Darkhax
L1506[16:12:50] ⇦ Quits: IAMASB2 (~ASB2@ool-44c5ad1e.dyn.optonline.net) (Ping timeout: 198 seconds)
L1507[16:13:32] <sk89q> clienthax, is pixelmon open source?
L1508[16:13:38] <clienthax> nope, but i have repo access
L1509[16:13:52] ⇦ Quits: killjoy (~killjoy@aolclient-66-26-10-51.aol.ec.res.rr.com) (Ping timeout: 200 seconds)
L1510[16:13:59] <sk89q> I figured that item use would have been picked up and this wouldn't be a problem
L1511[16:14:01] <sk89q> but apparently not
L1512[16:14:06] ⇨ Joins: cpup (~cpup@32.218.113.33)
L1513[16:14:12] <clienthax> sk89q: threw you a paste
L1514[16:14:13] <clienthax> in pm
L1515[16:14:30] <clienthax> attempting to fix it atm
L1516[16:14:45] <tterrag> someone told me that once
L1517[16:14:52] <tterrag> but now googling it I can't find any evidence of the fact
L1518[16:15:00] *** Lex_ is now known as LexManos
L1519[16:16:03] <clienthax> aha sk89q the code i just sent you seems to work
L1520[16:16:12] <clienthax> look good to you ?
L1521[16:16:14] <Lymia> sk89q? Uncomfortable aiming decompilers at things? :P
L1522[16:16:24] <Lymia> Maybe I'm the only evil one here.
L1523[16:16:34] <sk89q> no
L1524[16:16:35] <clienthax> mhm, the multiblock one still places
L1525[16:16:37] <clienthax> when it shouldnt
L1526[16:16:38] <sk89q> but I don't have a copy of pixelmon
L1527[16:16:51] <sk89q> did you add canPlayerEdit?
L1528[16:17:01] <Lymia> Multiblocks sounds like a huge nightmare.
L1529[16:17:15] <clienthax> don't think so sk89q
L1530[16:17:21] <sk89q> craftbook cauldrons were multiblocks :P
L1531[16:17:21] <Lymia> Is canPlayerEdit an event you can see from Forge?
L1532[16:17:39] <sk89q> clienthax, what did you change?
L1533[16:17:39] <Lymia> sk89q, for checking player permissions :P
L1534[16:17:41] <sk89q> or what do you mean by work
L1535[16:17:52] <sk89q> well
L1536[16:17:54] <Lymia> You'd need to, like, fire off block change events for every block at once, then only create if every passes, no?
L1537[16:17:57] <sk89q> mc has that spawn protection thing
L1538[16:18:19] <sk89q> well
L1539[16:18:37] <sk89q> that's really a limitation of forge adn bukkit events
L1540[16:18:42] <sk89q> but that's fixed in sponge...
L1541[16:22:07] <MinecraftForgeBot> Project Forge build #1293:SUCCESS in 2 min 37 sec: http://ci.jenkins.minecraftforge.net/job/minecraftforge/1293/
L1542[16:22:08] <MinecraftForgeBot> jadran.kotnik: Don't skip the first line when rendering (debug) text.
L1543[16:25:35] <Lymia> Forge and Bukkit
L1544[16:25:42] <Lymia> Don't sound like they'd work together well :/
L1545[16:29:13] ⇨ Joins: theplague (~atvaccaro@utdpat241069.utdallas.edu)
L1546[16:29:25] <cad435> Bukkit is almost dead... Sponge's coming^^ and sponge is developed on top of forge... so, yes that'll definately will work ;)
L1547[16:29:35] ⇦ Quits: cpup (~cpup@32.218.113.33) (Ping timeout: 189 seconds)
L1548[16:30:20] *** Tombenpotter is now known as NotTomben
L1549[16:30:38] ⇦ Quits: Horfius (~Horfius@c-50-177-126-199.hsd1.nh.comcast.net) (Ping timeout: 194 seconds)
L1550[16:31:10] ⇨ Joins: Horfius (~Horfius@c-50-177-126-199.hsd1.nh.comcast.net)
L1551[16:32:09] <MinecraftForgeBot> Project Forge build #1294:SUCCESS in 2 min 32 sec: http://ci.jenkins.minecraftforge.net/job/minecraftforge/1294/
L1552[16:32:09] <MinecraftForgeBot> techStackLp: Closes #1552
L1553[16:32:25] <Lymia> Yaayyyyy
L1554[16:32:26] <Lymia> :D
L1555[16:33:39] <Genuine> I don't even...
L1556[16:33:56] <Genuine> How is BlockState not an implementation of the IBlockState?
L1557[16:34:05] <Genuine> :P
L1558[16:34:08] <Genuine> I'm so confused.
L1559[16:34:23] <tterrag> because it's probably a bad name for the class
L1560[16:34:43] <LexManos> Because impl is the implementation
L1561[16:34:44] <Genuine> I assume so.
L1562[16:35:48] <Genuine> blockstate.getBaseState()
L1563[16:35:55] <Genuine> I need to study this more.
L1564[16:36:39] <Genuine> So many layers of abstraction, I need to not pull my hair out.
L1565[16:37:02] <Genuine> "It'll get easier", I tell myself.
L1566[16:37:24] ⇨ Joins: cpup (~cpup@32.218.113.33)
L1567[16:39:04] <belak> Is there an event a mod can get on shutdown?
L1568[16:39:16] <belak> Like, the opposite of preinit
L1569[16:39:40] <Genuine> I usually use World save event.
L1570[16:39:55] <Genuine> There was something that could be used in the sound engine back int he day too.
L1571[16:40:00] <Genuine> It was on shutdown.
L1572[16:40:04] <tterrag> BlockState might be BlockStateFactory or somethign similar in the actual src
L1573[16:40:11] <belak> But that can happen outside of shutdown... the world save at least
L1574[16:41:28] ⇦ Quits: cpup (~cpup@32.218.113.33) (Ping timeout: 194 seconds)
L1575[16:41:34] <Genuine> tterrag, it kind of is. It has many internal IBlockStates based on the IProperties it looks like.
L1576[16:41:43] <Genuine> But I can only access the base state.
L1577[16:42:18] <Genuine> belak, There is FMLServerStoppedEvent and FMLServerStoppingEvent
L1578[16:42:24] <Genuine> That's a little closer.
L1579[16:42:33] <belak> Ah, that should work... thanks
L1580[16:43:15] *** gratimax|away is now known as gratimax
L1581[16:43:28] *** Jake_Evans is now known as Jake_Away
L1582[16:44:19] ⇦ Quits: cad435 (~quassel@2a02:6d40:160:a5b:c1c5:b957:e85a:186f) (Remote host closed the connection)
L1583[16:44:36] ⇨ Joins: cad435 (~quassel@2a02:6d40:160:a5b:c1c5:b957:e85a:186f)
L1584[16:45:47] *** Jake_Away is now known as Jake_Evans
L1585[16:46:33] <sk89q> Genuine, getValidStates?
L1586[16:47:41] <Genuine> Oh I just needed to figure out how to set a block in 1.8 :P
L1587[16:47:49] <Genuine> Hopefully I did it right with world.setBlockState(pos, new BlockState(Blocks.netherrack).getBaseState());
L1588[16:49:16] <LexManos> not in the slightest
L1589[16:49:44] <LexManos> Blocks.netherrack.getDefaultState()
L1590[16:49:50] ⇨ Joins: PrinceCat (~PrinceCat@124-170-156-26.dyn.iinet.net.au)
L1591[16:49:55] <Genuine> Good to know.
L1592[16:49:57] <LexManos> you never init BlockState the block does
L1593[16:50:03] <Genuine> Nice.
L1594[16:52:33] ⇦ Quits: cad435 (~quassel@2a02:6d40:160:a5b:c1c5:b957:e85a:186f) (Remote host closed the connection)
L1595[16:53:08] <matthewprenger> Oh Lex, I think I got the patch on #1652 as small as possible. any other concerns?
L1596[16:57:04] <Genuine> The use of Predicates and other functional interfaces in Minecraft makes me want Java 8 as the standard THAT much more.
L1597[16:57:40] ⇨ Joins: cpup (~cpup@32.218.113.33)
L1598[16:58:38] *** Cazzar is now known as Cazzar|Away
L1599[17:00:45] ⇨ Joins: ASB2 (~ASB2@ool-44c5ad1e.dyn.optonline.net)
L1600[17:02:17] ⇦ Parts: esKaayY|eternalsleep (~esKaayY@2607:5300:100:200::3fc) ())
L1601[17:02:26] *** Riking is now known as Riking|away
L1602[17:03:12] ⇨ Joins: esKaayY (~esKaayY@2607:5300:100:200::3fc)
L1603[17:04:46] *** Xaw4 is now known as Xaw4|Sleep
L1604[17:04:51] ⇦ Quits: featurive (~Thunderbi@2001:983:315f:1:8c05:771d:1690:7894) (Ping timeout: 378 seconds)
L1605[17:06:01] <MalkContent> ooftz. can the custom renderers based on IItemRenderer also used for block itemstacks?
L1606[17:06:36] <MalkContent> am wondering if i have to handle that case, too
L1607[17:06:36] ⇦ Quits: theplague (~atvaccaro@utdpat241069.utdallas.edu) (Quit: theplague)
L1608[17:06:53] *** Techokami|Off is now known as Techokami
L1609[17:07:19] ⇦ Quits: wildex999 (wildex999@82.194.218.201) (Read error: Connection reset by peer)
L1610[17:07:54] <tterrag> MalkContent: sure it can be
L1611[17:07:58] <tterrag> Item.getItemFromBlock
L1612[17:08:35] ⇨ Joins: turmfalke (~turmfalke@p54A69AEA.dip0.t-ipconnect.de)
L1613[17:08:45] ⇨ Joins: orthoplex64 (~orthoplex@cpe-68-206-247-199.satx.res.rr.com)
L1614[17:08:54] <acegiak> does anyone know what the correct way to remove gear from a mob is? cause entityliving.setcurrentitemorarmour(0,null) seems to cause NPEs occasionally with mob rendering
L1615[17:09:22] <Jake_Evans> acegiak, check if it has armour first, then remove it
L1616[17:09:34] ⇦ Quits: OrthoLoess (~ortho@rossstone.plus.com) (Quit: Leaving)
L1617[17:09:56] <acegiak> Jake_Evans: I do check that there is something in the slot there first.
L1618[17:10:03] <MalkContent> a shit
L1619[17:10:07] <acegiak> but that should work?
L1620[17:11:24] ⇦ Quits: PrinceCat (~PrinceCat@124-170-156-26.dyn.iinet.net.au) ()
L1621[17:11:35] ⇦ Quits: ASB2 (~ASB2@ool-44c5ad1e.dyn.optonline.net) (Read error: Connection reset by peer)
L1622[17:12:05] ⇦ Quits: Kokoro_Neko (~androirc@174-135-29-96.res.bhn.net) (Remote host closed the connection)
L1623[17:12:27] ⇨ Joins: Kokoro_Neko (~androirc@174-135-29-96.res.bhn.net)
L1624[17:13:06] ⇦ Quits: cpup (~cpup@32.218.113.33) (Ping timeout: 194 seconds)
L1625[17:15:38] ⇦ Quits: Hgrebnednav (~Hgrebnedn@d51A4F912.access.telenet.be) (Quit: Leaving)
L1626[17:17:11] ⇨ Joins: cpup (~cpup@32.218.113.33)
L1627[17:21:16] ⇦ Parts: Techno|OuttaHouse (~Administr@cpe-66-67-8-129.rochester.res.rr.com) ())
L1628[17:21:19] ⇦ Quits: NPException (~NPExcepti@cable-86-56-25-212.cust.telecolumbus.net) (Quit: Leaving)
L1629[17:21:39] <Genuine> How do I get metadata from the block state.
L1630[17:21:49] <Genuine> I assume it's an IProperty
L1631[17:21:50] ⇦ Quits: cpup (~cpup@32.218.113.33) (Ping timeout: 189 seconds)
L1632[17:22:32] ⇨ Joins: killjoy (~killjoy@aolclient-66-26-10-51.aol.ec.res.rr.com)
L1633[17:23:03] <LexManos> nope
L1634[17:23:11] <LexManos> why do you want meta?
L1635[17:23:32] ⇦ Quits: parcel31u (~parcel31u@c-98-250-85-212.hsd1.mi.comcast.net) (Read error: Connection reset by peer)
L1636[17:23:33] *** Genji|away is now known as Genji
L1637[17:23:35] ⇦ Quits: keybounce_ (uid44894@id-44894.ealing.irccloud.com) (Quit: Connection closed for inactivity)
L1638[17:24:32] <Genuine> Well, just to get which sub block it is.
L1639[17:24:41] <Genuine> Like a wool or something like that.
L1640[17:25:01] <LexManos> Look at the differnt properties
L1641[17:25:08] ⇦ Quits: Xuros (~xuros@c-76-113-8-166.hsd1.nm.comcast.net) (Ping timeout: 189 seconds)
L1642[17:25:12] <LexManos> metadata doesnt exist anymore, or well you shouldnt ever use it
L1643[17:26:15] ⇨ Joins: Xuros (~xuros@c-76-113-8-166.hsd1.nm.comcast.net)
L1644[17:27:32] <Genuine> Sure, I'm just calling it metadata because I'm not familiar with the new idioms.
L1645[17:27:58] <Genuine> Is there a nice helper method to create an ItemStack from a IBlockState?
L1646[17:28:20] <LexManos> you dont
L1647[17:28:35] <LexManos> There are no 1:1 from BlockStates to Items
L1648[17:28:49] *** Riking|away is now known as Riking
L1649[17:31:28] *** AbrarSyed is now known as Abrar|gone
L1650[17:31:33] <Genuine> It was already a little troublesome to get a list of ItemStacks from OreDictionary and check them against the block to see if they were a match to that ore dict names.
L1651[17:31:50] <Genuine> Now there is even more layers.
L1652[17:31:57] <Genuine> Stay calm.
L1653[17:31:59] <LexManos> What are you doing...
L1654[17:32:09] <LexManos> and the thing is items are not blocks and blocks are not items
L1655[17:32:10] <gigaherz> Iwas going to answer, but I'm not certain that it's worth it ;P
L1656[17:32:15] <LexManos> there is no way to do a 1:1 map
L1657[17:33:02] <gigaherz> I think your "special needs" would require a special item counterpart, that exposes the custom item representations of your blocks, and place the actual blocks when used
L1658[17:33:13] <gigaherz> this is how Minecraft handles the Sign block, for example
L1659[17:35:35] ⇨ Joins: cpup (~cpup@32.218.113.33)
L1660[17:35:36] <Genuine> Well OreDictionary.getOres("oreCopper") for instance returns a list of ItemStack, I have to create an ItemStack from that block (with metadata or whatever you'd call it now) it's the only way I can think of to check if the block in the world is an oreCopper in this example.
L1661[17:35:53] <Genuine> Unless there's an easier way to do it, I've not been using it nor found it.
L1662[17:36:04] <LexManos> ...
L1663[17:36:35] <LexManos> feasibly, you can't check if the block in world is a item
L1664[17:37:34] <gigaherz> there's no reason to believe that the meta stored in a block will ever match the damage value of an item
L1665[17:38:04] <gigaherz> even if you could match the Block to the Item/ItemBlock that would represent it, which you can't do reliably
L1666[17:38:45] <gigaherz> the world doesn't store "blocks"
L1667[17:38:55] <gigaherz> it stores IBlockStates
L1668[17:39:05] <gigaherz> and as lex already said, block states do NOT translate into items
L1669[17:39:22] ⇨ Joins: KilRoYDK (~KilRoYDK@89.184.156.11)
L1670[17:39:27] <gigaherz> by default an item loses the state when broken, and turns into a generic ItemBlock
L1671[17:39:34] <gigaherz> but this behaviour is often overriden
L1672[17:39:58] ⇨ Joins: ASB2 (~ASB2@ool-44c5ad1e.dyn.optonline.net)
L1673[17:40:14] <gigaherz> consider the possibility that the idea is flawed
L1674[17:40:30] <gigaherz> (or at least your approach to realizing it)
L1675[17:40:53] <Genuine> If this is the case is there any way to check if a Block in the world has an associated ore dictionary name?
L1676[17:41:14] <Genuine> I submit I don't know how to do it without all this garbage in between.
L1677[17:41:15] <LexManos> Let me state this
L1678[17:41:21] <LexManos> Without any confusion
L1679[17:41:26] <LexManos> The answer is NO
L1680[17:41:26] <gigaherz> no, because when you break the block, it may drop ANYTHING
L1681[17:42:50] ⇦ Quits: KilRoYDK (~KilRoYDK@89.184.156.11) (Ping timeout: 198 seconds)
L1682[17:43:02] <Genuine> Assuming it's just a standard block that only drops itself.
L1683[17:43:25] <Genuine> I don't need a general abstract method for doing this with everything, just normal blocks.
L1684[17:44:05] *** manmaed is now known as manmaed|AFK
L1685[17:44:56] <gigaherz> there isn o such thing as a normal block
L1686[17:45:10] <gigaherz> an iron ore block, drops an iron ore ItemBlock
L1687[17:45:14] <gigaherz> but coal drops coal items
L1688[17:45:18] *** heldplayer is now known as heldplayer|off
L1689[17:45:19] <gigaherz> lapis drops MULTIPLE items
L1690[17:45:46] <gigaherz> signs don't exist as an ItemBlock at all, they have a special ItemSign object
L1691[17:45:50] <Genuine> Right, I'm only working with blocks that drop the ItemBlock of itself.
L1692[17:45:55] <gigaherz> chests lose their contents,
L1693[17:46:00] *** heldplayer|off is now known as heldplayer
L1694[17:46:09] <gigaherz> some blocks can be obtainedas an ItemBlock using silk touch
L1695[17:46:10] <gigaherz> others can't
L1696[17:46:33] <gigaherz> there's no easy, straightforward to do it
L1697[17:46:52] <gigaherz> +way
L1698[17:47:19] <gigaherz> you could add a messy hacky way that triesto use Item.fromBlock, and tests if the item can be silktouched, or any other kludge
L1699[17:47:22] ⇦ Quits: Vazkii (~Vazkii@a79-169-161-227.cpe.netcabo.pt) (Quit: Stop. Hentai time.)
L1700[17:48:12] ⇦ Quits: Lymia (~moe@momoko.lymiahugs.com) (Ping timeout: 194 seconds)
L1701[17:48:46] <Genuine> These are cases I don't need to deal with tbh, all the blocks I'm checking are only blocks that drop themselves, and if they weren't then I wouldn't need to do anything.
L1702[17:48:52] ⇦ Quits: MalkContent (MalkConten@p4FDCD507.dip0.t-ipconnect.de) (Quit: http://www.kiwiirc.com/ - A hand crafted IRC client)
L1703[17:49:59] <gigaherz> then kludge your way around by using either Item.fromBlock or querying the blocks drop list
L1704[17:52:46] *** Ordinastie is now known as Ordi|Away
L1705[17:52:49] ⇦ Quits: lexteam (uid59708@id-59708.highgate.irccloud.com) (Quit: Connection closed for inactivity)
L1706[17:53:16] ⇨ Joins: Lymia (~moe@momoko.lymiahugs.com)
L1707[17:53:39] ⇦ Quits: sciguyryan (~sciguyrya@80-254-76-171.dynamic.swissvpn.net) ()
L1708[17:54:04] *** alekso56 is now known as alekso56_off
L1709[17:56:05] ⇨ Joins: VikeStep (~VikeStep@CPE-58-165-35-99.lns1.lon.bigpond.net.au)
L1710[17:56:23] ⇨ Joins: parcel31u (~parcel31u@c-98-250-85-212.hsd1.mi.comcast.net)
L1711[17:57:20] <Genuine> gigaherz, Thanks for the help.
L1712[17:57:33] <Genuine> It's a mod I don't really feel like updating to 1.8 anyway tbh.
L1713[17:58:02] <Genuine> And Lex, concise as always.
L1714[17:58:10] ⇦ Quits: cpup (~cpup@32.218.113.33) (Ping timeout: 194 seconds)
L1715[18:00:25] ⇦ Quits: Maxetime1 (~Thunderbi@modemcable086.219-70-69.static.videotron.ca) (Read error: Connection reset by peer)
L1716[18:01:45] ⇨ Joins: MalkContent (MalkConten@p4FDCD507.dip0.t-ipconnect.de)
L1717[18:03:18] *** gratimax is now known as gratimax|away
L1718[18:03:21] <MalkContent> anybody got a clue what the int and boolean parameter of Item.onUpdate are?
L1719[18:03:32] <tterrag> MalkContent: slot, held
L1720[18:03:38] <tterrag> !!gm Item.onUpdate
L1721[18:03:40] <MCPBot_Reborn> === MC 1.8: net/minecraft/item/Item.onUpdate (alq.a) UNLOCKED ===
L1722[18:03:40] <MCPBot_Reborn> Name : a => func_77663_a => onUpdate
L1723[18:03:41] <MCPBot_Reborn> Descriptor : (Lamj;Laqu;Lwv;IZ)V => (Lnet/minecraft/item/ItemStack;Lnet/minecraft/world/World;Lnet/minecraft/entity/Entity;IZ)V
L1724[18:03:42] <MCPBot_Reborn> Comment : Called each tick as long the item is on a player inventory. Uses by maps to check if is on a player hand and update it's contents.
L1725[18:03:42] <MCPBot_Reborn> SRG Params : ItemStack p_77663_1_, World p_77663_2_, Entity p_77663_3_, I p_77663_4_, Z p_77663_5_
L1726[18:03:43] <MCPBot_Reborn> MCP Params : ItemStack stack, World worldIn, Entity entityIn, int itemSlot, boolean isSelected
L1727[18:03:44] <MCPBot_Reborn> Last Change: 2014-09-25 17:01:42.972590-04:00 (_bot_update_)
L1728[18:03:51] <tterrag> yep
L1729[18:04:01] *** gratimax|away is now known as gratimax
L1730[18:04:30] *** fry|sleep is now known as fry
L1731[18:04:48] *** Zidane is now known as Zidane|Away
L1732[18:05:41] <MalkContent> wat
L1733[18:05:51] <MalkContent> same thing with 1.7.10 didnt hold that info ^^
L1734[18:05:52] <MalkContent> ty
L1735[18:06:26] ⇨ Joins: cpup (~cpup@32.218.113.33)
L1736[18:06:53] *** Zidane|Away is now known as Zidane
L1737[18:10:05] *** Zidane is now known as Zidane|Away
L1738[18:10:30] ⇦ Quits: pixlepix (~localmaca@cpe-72-228-15-137.nycap.res.rr.com) (Quit: pixlepix)
L1739[18:15:11] *** Zidane|Away is now known as Zidane
L1740[18:15:15] <Genuine> Nice, well at least my client mods still 'just work'.
L1741[18:15:47] <Genuine> Change the package names of fml, change a couple or method calls, BAM! magic.
L1742[18:16:22] ⇦ Quits: cpup (~cpup@32.218.113.33) (Ping timeout: 194 seconds)
L1743[18:19:17] ⇦ Quits: xaero (xaero@ip70-162-11-251.ph.ph.cox.net) (Read error: Connection reset by peer)
L1744[18:19:24] ⇨ Joins: xaero (xaero@ip70-162-11-251.ph.ph.cox.net)
L1745[18:20:01] ⇨ Joins: pixlepix (~localmaca@cpe-72-228-15-137.nycap.res.rr.com)
L1746[18:22:03] ⇦ Quits: xaero (xaero@ip70-162-11-251.ph.ph.cox.net) (Read error: Connection reset by peer)
L1747[18:22:15] <MinecraftForgeBot> Project Forge build #1295:SUCCESS in 2 min 29 sec: http://ci.jenkins.minecraftforge.net/job/minecraftforge/1295/
L1748[18:22:16] <MinecraftForgeBot> rainwarrior: Removed leftover debug messages
L1749[18:22:35] ⇨ Joins: cpup (~cpup@32.218.113.33)
L1750[18:24:25] ⇨ Joins: xaero (xaero@ip70-162-11-251.ph.ph.cox.net)
L1751[18:24:53] <Genuine> GuiScreen.mouseClicked throws IOException now eh?
L1752[18:29:41] *** Riking is now known as Riking|away
L1753[18:32:43] *** Zidane is now known as Zidane|Away
L1754[18:33:07] ⇦ Quits: iceman11a (iceman11a@cpe-74-141-56-150.swo.res.rr.com) (Quit: Leaving)
L1755[18:34:00] ⇦ Quits: ASB2 (~ASB2@ool-44c5ad1e.dyn.optonline.net) (Read error: Connection reset by peer)
L1756[18:34:15] *** Zidane|Away is now known as Zidane
L1757[18:34:45] ⇨ Joins: The_Lone_Devil (tomoki@2001:41d0:52:300::e50)
L1758[18:35:29] *** Riking|away is now known as Riking
L1759[18:36:44] ⇨ Joins: moonrise (~hehehe@58.239.217.152)
L1760[18:37:56] <MalkContent> when I modified a slot of a container is there a way to just send a single update instead of running detect and send changes?
L1761[18:38:54] ⇦ Quits: cpup (~cpup@32.218.113.33) (Ping timeout: 378 seconds)
L1762[18:39:18] *** heldplayer is now known as heldplayer|off
L1763[18:44:55] ⇦ Quits: Noppes (~Noppes@82-168-212-152.ip.telfort.nl) (Read error: Connection reset by peer)
L1764[18:46:28] ⇨ Joins: ASB2 (~ASB2@ool-44c5ad1e.dyn.optonline.net)
L1765[18:48:38] *** nekosune is now known as nekosune_Away
L1766[18:48:41] ⇦ Quits: Szernex (~Szernex@194-166-195-32.adsl.highway.telekom.at) (Read error: Connection reset by peer)
L1767[18:50:18] *** Abrar|gone is now known as AbrarSyed
L1768[18:54:18] ⇦ Quits: Johannes13 (~Johannes@141.70.98.52) (Ping timeout: 378 seconds)
L1769[18:55:38] ⇨ Joins: ellipsis (~ellipsis@c-76-105-146-89.hsd1.or.comcast.net)
L1770[18:56:42] *** Ecu|Work is now known as Ecu
L1771[18:56:53] ⇨ Joins: cpup (~cpup@32.218.113.33)
L1772[18:56:58] ⇦ Quits: Hidendra (~Hidendra@rip.in.peace.mcstats.org) (Quit: Bye!)
L1773[18:57:45] ⇨ Joins: Hidendra (~Hidendra@rip.in.peace.mcstats.org)
L1774[18:59:17] ⇦ Quits: Giratina548 (~Giratina5@107-209-128-138.lightspeed.mssnks.sbcglobal.net) (Quit: It's not a bug it's a feature.)
L1775[19:00:41] ⇦ Quits: cpup (~cpup@32.218.113.33) (Ping timeout: 198 seconds)
L1776[19:01:14] ⇨ Joins: minecreatr (~minecreat@uva-120-73.ResHall.Berkeley.EDU)
L1777[19:02:08] ⇦ Quits: Hidendra (~Hidendra@rip.in.peace.mcstats.org) (Client Quit)
L1778[19:03:57] ⇨ Joins: Kano (~Giratina5@107-209-128-138.lightspeed.mssnks.sbcglobal.net)
L1779[19:05:35] ⇨ Joins: cpup (~cpup@32.218.113.33)
L1780[19:06:57] ⇨ Joins: Hidendra (~Hidendra@rip.in.peace.mcstats.org)
L1781[19:12:07] *** Jake_Evans is now known as Jake_Away
L1782[19:13:07] ⇦ Quits: Hidendra (~Hidendra@rip.in.peace.mcstats.org) (Quit: Bye!)
L1783[19:13:25] ⇦ Quits: Kano (~Giratina5@107-209-128-138.lightspeed.mssnks.sbcglobal.net) (Quit: It's not a bug it's a feature.)
L1784[19:13:27] ⇦ Quits: TheFjong (~TheFjong|@3e6b1460.rev.stofanet.dk) (Read error: Connection reset by peer)
L1785[19:14:50] ⇨ Joins: Hidendra (~Hidendra@rip.in.peace.mcstats.org)
L1786[19:14:52] ⇦ Quits: cpup (~cpup@32.218.113.33) (Ping timeout: 194 seconds)
L1787[19:16:14] ⇦ Quits: Kokoro_Neko (~androirc@174-135-29-96.res.bhn.net) (Ping timeout: 189 seconds)
L1788[19:23:47] ⇦ Quits: SirWilli (~SirWilli@95.91.235.58) (Quit: SirWilli)
L1789[19:24:05] *** Cazzar|Away is now known as Cazzar
L1790[19:25:01] ⇨ Joins: cpup (~cpup@32.218.113.33)
L1791[19:25:27] <VikeStep> I got a comment on a modding tutorial video of mine on how to use ASM Bytecode Manipulation with only MCP (No Forge/FML). I didn't realise people modded with only MCP
L1792[19:28:19] ⇨ Joins: KilRoYDK (~KilRoYDK@89.184.156.11)
L1793[19:30:00] <LexManos> they do, but its silly
L1794[19:30:06] <LexManos> esp if they wanna patch in
L1795[19:30:10] ⇨ Joins: ElgarL (~ElgarL@cpc6-hawk15-2-0-cust537.18-1.cable.virginm.net)
L1796[19:31:38] ⇦ Quits: KilRoYDK (~KilRoYDK@89.184.156.11) (Ping timeout: 189 seconds)
L1797[19:31:49] <MalkContent> do they willfully not use forge? or are they just unaware
L1798[19:32:19] <LexManos> bit of both
L1799[19:33:46] *** luacs|off is now known as luacs1998
L1800[19:33:54] <MalkContent> *shrugs* welp. as for the former ones: to each their own i guess
L1801[19:33:56] ⇦ Quits: cpup (~cpup@32.218.113.33) (Ping timeout: 194 seconds)
L1802[19:34:51] ⇨ Joins: RANKSHANK (~Michael@CPE-121-218-193-48.lnse4.cht.bigpond.net.au)
L1803[19:36:11] ⇨ Joins: Kokoro_Neko (~androirc@174-135-29-96.res.bhn.net)
L1804[19:37:31] ⇨ Joins: cpup (~cpup@32.218.113.33)
L1805[19:37:49] ⇨ Joins: Mitchellbrine (uid38456@id-38456.uxbridge.irccloud.com)
L1806[19:38:06] ⇦ Quits: Lymia (~moe@momoko.lymiahugs.com) (Ping timeout: 200 seconds)
L1807[19:38:20] <MalkContent> hrm. need a new oredict entry "dyeable" or even an interface
L1808[19:39:59] *** OndraSter is now known as OndraSter|off
L1809[19:40:39] <MalkContent> nvm. was just stupid.
L1810[19:41:39] *** Techokami is now known as Techokami|Off
L1811[19:46:33] ⇦ Quits: Annysia (~Annysia@c-73-48-42-144.hsd1.mo.comcast.net) (Ping timeout: 378 seconds)
L1812[19:47:48] ⇦ Quits: pugi (~pugi@host-091-097-083-234.ewe-ip-backbone.de) (Ping timeout: 194 seconds)
L1813[19:47:52] ⇨ Joins: pugi (~pugi@host-091-097-066-159.ewe-ip-backbone.de)
L1814[19:49:53] *** Cazzar is now known as Cazzar|Away
L1815[19:53:26] ⇦ Quits: cpup (~cpup@32.218.113.33) (Ping timeout: 194 seconds)
L1816[19:56:57] ⇨ Joins: cpup (~cpup@32.218.113.33)
L1817[19:59:36] <ollieread> VikeStep: some people don't even use forge or mcp
L1818[20:00:09] <fry> Some people don't even mod minecraft! :P
L1819[20:01:25] ⇦ Parts: RANKSHANK (~Michael@CPE-121-218-193-48.lnse4.cht.bigpond.net.au) ())
L1820[20:02:25] ⇦ Quits: MalkContent (MalkConten@p4FDCD507.dip0.t-ipconnect.de) (Quit: http://www.kiwiirc.com/ - A hand crafted IRC client)
L1821[20:03:27] *** Quetzi is now known as Quetzi|off
L1822[20:03:40] * Illyohs Slaps fry
L1823[20:03:47] <Illyohs> Dont you ever say that
L1824[20:05:46] ⇨ Joins: Naiten (Naiten@77.35.175.4)
L1825[20:07:48] *** AbrarSyed is now known as Abrar|gone
L1826[20:08:38] ⇦ Quits: Lathanael|Away (~Lathanael@p549704FA.dip0.t-ipconnect.de) (Ping timeout: 198 seconds)
L1827[20:10:04] ⇨ Joins: Lathanael|Away (~Lathanael@p54971388.dip0.t-ipconnect.de)
L1828[20:10:53] ⇦ Quits: Kashike (~kashike@is.the.leader.of.the.kitteh.club) (Ping timeout: 198 seconds)
L1829[20:15:36] ⇨ Joins: Kashike (~kashike@is.the.leader.of.the.kitteh.club)
L1830[20:16:24] ⇦ Quits: Delaxarnyazer (~Delaxarny@ip5653e53d.direct-adsl.nl) (Ping timeout: 194 seconds)
L1831[20:16:28] *** gratimax is now known as gratimax|away
L1832[20:16:58] ⇨ Joins: Horf (~Horfius@c-50-177-126-199.hsd1.nh.comcast.net)
L1833[20:17:16] ⇦ Quits: Horfius (~Horfius@c-50-177-126-199.hsd1.nh.comcast.net) (Ping timeout: 194 seconds)
L1834[20:18:21] ⇨ Joins: Delax|Away (~Delaxarny@ip5653e53d.direct-adsl.nl)
L1835[20:18:43] *** Delax|Away is now known as Delaxarnyazer
L1836[20:19:53] *** Horf is now known as Horfius
L1837[20:20:22] ⇨ Joins: Lymia (~moe@108-205-143-75.lightspeed.rcsntx.sbcglobal.net)
L1838[20:24:20] ⇦ Quits: KGS (~KGS@nl107-187-53.student.uu.se) (Quit: Leaving)
L1839[20:31:39] ⇦ Quits: parcel31u (~parcel31u@c-98-250-85-212.hsd1.mi.comcast.net) (Read error: Connection reset by peer)
L1840[20:32:08] ⇦ Quits: cpup (~cpup@32.218.113.33) (Ping timeout: 189 seconds)
L1841[20:32:29] *** The_Lone_Devil is now known as TLD|AFK
L1842[20:37:11] ⇨ Joins: cpup (~cpup@32.218.113.33)
L1843[20:37:25] ⇦ Quits: Kokoro_Neko (~androirc@174-135-29-96.res.bhn.net) (Remote host closed the connection)
L1844[20:38:01] ⇨ Joins: Kokoro_Neko (~androirc@174-135-29-96.res.bhn.net)
L1845[20:39:52] *** Riking is now known as Riking|away
L1846[20:40:24] ⇦ Quits: pixlepix (~localmaca@cpe-72-228-15-137.nycap.res.rr.com) (Quit: pixlepix)
L1847[20:41:02] ⇦ Quits: Kashike (~kashike@is.the.leader.of.the.kitteh.club) (Ping timeout: 198 seconds)
L1848[20:41:38] *** Riking|away is now known as Riking
L1849[20:44:08] ⇨ Joins: Kashike (~kashike@is.the.leader.of.the.kitteh.club)
L1850[20:47:01] ⇦ Quits: Kashike (~kashike@is.the.leader.of.the.kitteh.club) (Excess Flood)
L1851[20:47:26] *** gratimax|away is now known as gratimax
L1852[20:47:46] <acegiak> how do I get a list of all the tileentities in a world? getentities doesn't seem to return tileentities
L1853[20:49:06] ⇨ Joins: Kashike (~kashike@is.the.leader.of.the.kitteh.club)
L1854[20:49:58] ⇦ Quits: cpup (~cpup@32.218.113.33) (Ping timeout: 200 seconds)
L1855[20:52:07] <LexManos> the helll would you do that for?
L1856[20:53:19] ⇦ Quits: Kashike (~kashike@is.the.leader.of.the.kitteh.club) (Excess Flood)
L1857[20:53:57] <acegiak> LexManos: I'm making skulls act like mobspawners?
L1858[20:54:15] <LexManos> Don't ping me
L1859[20:54:28] <LexManos> and doing it in the way you're doing it seems like a horrible idea
L1860[20:55:10] ⇨ Joins: Kashike (~kashike@is.the.leader.of.the.kitteh.club)
L1861[20:55:10] ⇨ Joins: cpup (~cpup@32.218.113.33)
L1862[20:55:33] <acegiak> excuse you, I was responding to your question. is there a better way to do make mobs occasionally spawn around a block?
L1863[20:56:10] <tterrag> acegiak: don't take that tone when you didn't read the topic
L1864[20:56:51] *** acegiak was kicked by LexManos (No, Excuse you. Read the rules and don't be a dick. Making mobs spawn randomly around tile entites is easy, just replace the tile entity or do any of the plethora of other options.))
L1865[20:57:33] ⇦ Quits: Kashike (~kashike@is.the.leader.of.the.kitteh.club) (Excess Flood)
L1866[20:58:52] ⇦ Quits: ElgarL (~ElgarL@cpc6-hawk15-2-0-cust537.18-1.cable.virginm.net) (Ping timeout: 194 seconds)
L1867[21:03:12] *** Abrar|gone is now known as AbrarSyed
L1868[21:04:49] *** BIT[Away] is now known as theoriginalbit
L1869[21:05:14] ⇨ Joins: sww1235 (~sww1235@news063183.halls.colostate.edu)
L1870[21:07:06] ⇦ Quits: cpup (~cpup@32.218.113.33) (Ping timeout: 194 seconds)
L1871[21:12:06] ⇨ Joins: advtech (~advtech@pool-96-235-5-11.pitbpa.east.verizon.net)
L1872[21:12:11] ⇦ Parts: advtech (~advtech@pool-96-235-5-11.pitbpa.east.verizon.net) ())
L1873[21:13:02] ⇨ Joins: cpup (~cpup@32.218.113.33)
L1874[21:17:09] ⇨ Joins: KilRoYDK (~KilRoYDK@89.184.156.11)
L1875[21:20:02] ⇦ Quits: cpup (~cpup@32.218.113.33) (Ping timeout: 200 seconds)
L1876[21:20:46] ⇦ Quits: KilRoYDK (~KilRoYDK@89.184.156.11) (Ping timeout: 200 seconds)
L1877[21:22:39] ⇦ Quits: Captain_Shadows (~Thunderbi@208.92.78.142) (Quit: See ya)
L1878[21:23:19] ⇨ Joins: Lex_ (~Lex@2601:7:180:c900:2c1b:cbd8:5565:f021)
L1879[21:23:19] MineBot sets mode: +o on Lex_
L1880[21:23:22] ⇨ Joins: cpup (~cpup@32.218.113.33)
L1881[21:24:14] ⇦ Quits: LexLaptop (~LexManos@2601:7:180:c900:bd59:8c22:7201:9e1) (Ping timeout: 198 seconds)
L1882[21:24:41] ⇦ Quits: LexManos (~Lex@2601:7:180:c900:2c1b:cbd8:5565:f021) (Ping timeout: 198 seconds)
L1883[21:26:12] *** theoriginalbit is now known as BIT[Away]
L1884[21:28:03] ⇨ Joins: Devin_Mobile (uid44396@id-44396.highgate.irccloud.com)
L1885[21:37:06] ⇦ Quits: cpup (~cpup@32.218.113.33) (Ping timeout: 378 seconds)
L1886[21:37:19] <Rallias> How can I make my gradle depend on a file not in maven for jenkins?
L1887[21:41:26] <Mitchellbrine> I really don't like to work with entities, but do you know how to make entities that extend EntityAnimal have AI
L1888[21:41:29] <matthewprenger> Rallias, make a directory called 'libs' in the root of your project. all jars in there will be on the classpath
L1889[21:41:38] <Mitchellbrine> I added the AI in the constructor, made AI enabled
L1890[21:41:42] <Mitchellbrine> But nothing is happening
L1891[21:41:55] ⇨ Joins: cpup (~cpup@32.218.113.33)
L1892[21:42:07] <Rallias> matthewprenger, Yeah, I get that part, but I'm trying to build from jenkins and I don't want to distribute the libs/ folder on github.
L1893[21:42:32] ⇨ Joins: Six-One-Three (webchat@blk-89-209-224.eastlink.ca)
L1894[21:42:44] <matthewprenger> ahh, could keep it on the jenkins server somewhere. then have a script that copies it to /libs at build time
L1895[21:43:11] <Illyohs> is was going to say ivy pattern but that works to :P
L1896[21:43:47] <AbrarSyed> Rallias, what file is this that only exists on jenkins?
L1897[21:44:28] <Rallias> AbrarSyed, At the moment, I'm depping on Thaumcraft and Redstone Arsenal.
L1898[21:44:47] <AbrarSyed> RA can be grabbed via an ivy trick...
L1899[21:44:54] <AbrarSyed> ask mathew about that...
L1900[21:45:17] <AbrarSyed> thaumcraft.... there has been pressure on azanor...... id say just ship it in your repo
L1901[21:45:35] ⇨ Joins: IAMASB2 (~ASB2@ool-44c5ad1e.dyn.optonline.net)
L1902[21:45:40] <progwml6> AbrarSyed there is a way to add stuff from curse as maven now
L1903[21:45:52] <Illyohs> you could do a scrpit in jenkens as well
L1904[21:46:06] <Rallias> progwml6, You know I've been looking for information on how to do that for the last fucking 3 months, right?
L1905[21:46:07] <AbrarSyed> progwml6, so they have said... I havent gotten details on how though
L1906[21:46:27] <progwml6> its only been around a few weeks
L1907[21:46:31] <matthewprenger> progwml6, problem is it requires your CF api token for access
L1908[21:46:31] *** gratimax is now known as gratimax|away
L1909[21:46:34] <matthewprenger> so its annoying
L1910[21:46:36] <progwml6> it does yes
L1911[21:46:41] <progwml6> idk why they did that
L1912[21:46:44] ⇦ Quits: ASB2 (~ASB2@ool-44c5ad1e.dyn.optonline.net) (Ping timeout: 198 seconds)
L1913[21:46:44] <matthewprenger> my way doesn't :P
L1914[21:46:58] <matthewprenger> https://gist.github.com/matthewprenger/2772a516fae6069d6bb4
L1915[21:47:08] <matthewprenger> Rallias, ^
L1916[21:48:34] <Rallias> hmm.
L1917[21:50:14] <Rallias> So... maven...
L1918[21:52:07] <Rallias> How do I go about it with maven?
L1919[21:52:57] <matthewprenger> uhh Zeldo showed me a few weeks ago but I forget. I know they're working on a documentation site for all this stuff
L1920[21:53:03] <matthewprenger> prolly have to poke him about it
L1921[21:55:56] <Rallias> :/ And of course with the ivy trick I can't put + as the version.
L1922[21:57:24] <tterrag> shouldn't do that anyhow
L1923[21:57:31] <matthewprenger> ^
L1924[21:58:43] <AbrarSyed> yeah apperantly its "deprecated"
L1925[21:59:11] *** Riking is now known as Riking|away
L1926[21:59:23] <Rallias> "shouldn't do this, shouldn't do that" God damn it... sometimes I'm going to do whatever the fuck I feel like and deal with conformation later.
L1927[22:00:51] <Genuine> Can someone link me to a project that has gradle building the dev and src jars as well?
L1928[22:01:06] <Genuine> Or just name one.
L1929[22:01:17] <Rallias> buildcraft probably
L1930[22:01:21] <Genuine> Thanks.
L1931[22:01:22] <matthewprenger> Genuine, https://github.com/MCServerTools/ServerTools-CORE/blob/develop/gradle/1-jars.gradle#L1-L16
L1932[22:01:55] <Genuine> That looks super easy.
L1933[22:01:58] <Genuine> THanks.
L1934[22:02:09] <AbrarSyed> https://github.com/AbrarSyed/SecretRoomsMod-forge/blob/master/build.gradle#L82-L110
L1935[22:02:13] <AbrarSyed> awww
L1936[22:02:16] <matthewprenger> :P
L1937[22:02:23] <AbrarSyed> you beat me becuase I had to make a quick commit to drop the copyCHicken task
L1938[22:02:34] <AbrarSyed> https://github.com/AbrarSyed/SecretRoomsMod-forge/commit/2a6399d2d4460038674c045073cd6432622dde2c
L1939[22:02:39] <AbrarSyed> ^ less than a minute ago...
L1940[22:02:41] <matthewprenger> be warned though, deobf jars can break with mcp snapshot versions being different
L1941[22:03:04] <AbrarSyed> ^
L1942[22:03:09] * AbrarSyed needs to get on that...
L1943[22:03:34] *** Jake_Away is now known as Jake_Evans
L1944[22:05:07] <Genuine> matthewprenger, For sure.
L1945[22:06:54] ⇦ Quits: cpup (~cpup@32.218.113.33) (Ping timeout: 194 seconds)
L1946[22:07:37] ⇦ Quits: pugi (~pugi@host-091-097-066-159.ewe-ip-backbone.de) ()
L1947[22:09:42] <Genuine> Nice, works like a charm.
L1948[22:09:54] <Genuine> I guess I should probably document my code now :/
L1949[22:10:06] <Genuine> Or I don't have any excuse not to at least.
L1950[22:12:53] *** Jake_Evans is now known as Jake_Away
L1951[22:13:22] ⇨ Joins: cpup (~cpup@32.218.113.33)
L1952[22:14:31] ⇨ Joins: Kashike (~kashike@is.the.leader.of.the.kitteh.club)
L1953[22:15:32] ⇦ Quits: orthoplex64 (~orthoplex@cpe-68-206-247-199.satx.res.rr.com) (Ping timeout: 189 seconds)
L1954[22:15:55] *** Lex_ is now known as LexManos
L1955[22:16:30] ⇦ Quits: megamit (~megamit@94.14.48.228) (Ping timeout: 200 seconds)
L1956[22:19:54] ⇦ Quits: cpup (~cpup@32.218.113.33) (Ping timeout: 194 seconds)
L1957[22:24:06] ⇨ Joins: Wastl2 (~Wastl2@f052018059.adsl.alicedsl.de)
L1958[22:26:50] ⇦ Quits: Cojo (~Cojo@wvf6054rh.rh.ncsu.edu) (Quit: Leaving)
L1959[22:27:15] ⇦ Quits: Six-One-Three (webchat@blk-89-209-224.eastlink.ca) (Ping timeout: 186 seconds)
L1960[22:28:12] *** Illyohs is now known as Illy|WoW
L1961[22:28:26] ⇨ Joins: cpup (~cpup@32.218.113.33)
L1962[22:33:02] ⇨ Joins: chbachman (~chbachman@c-73-45-124-6.hsd1.il.comcast.net)
L1963[22:34:33] *** Mraof is now known as Mrowf
L1964[22:35:21] *** gratimax|away is now known as gratimax
L1965[22:35:58] *** Riking|away is now known as Riking
L1966[22:39:11] ⇦ Quits: cpup (~cpup@32.218.113.33) (Ping timeout: 189 seconds)
L1967[22:43:55] ⇨ Joins: cpup (~cpup@32.218.113.33)
L1968[22:45:24] *** gratimax is now known as gratimax|away
L1969[22:45:25] <Unh0ly_Tigg> chrome's flash player plugin, why you suddenly crash? :/
L1970[22:46:37] ⇦ Quits: killjoy (~killjoy@aolclient-66-26-10-51.aol.ec.res.rr.com) (Quit: Leaving)
L1971[22:47:31] *** gratimax|away is now known as gratimax
L1972[22:48:01] ⇦ Quits: Brokkoli (~Brokkoli@d215125.adsl.hansenet.de) (Quit: Die Sprache der Politik ist daf�r gemacht, dass L�gen wahr klingen und das T�ten angemessen wirkt. (George Orwell))
L1973[22:49:08] ⇦ Quits: Girafi (Girafi@0x555178eb.adsl.cybercity.dk) ()
L1974[22:55:05] <mallrat208> That's been giving me no small amount of grief lately
L1975[22:56:28] ⇦ Quits: Lathanael|Away (~Lathanael@p54971388.dip0.t-ipconnect.de) (Ping timeout: 200 seconds)
L1976[22:57:19] ⇦ Quits: minecreatr (~minecreat@uva-120-73.ResHall.Berkeley.EDU) (Quit: Leaving)
L1977[22:57:53] ⇨ Joins: Lathanael|Away (~Lathanael@p54970B23.dip0.t-ipconnect.de)
L1978[22:58:26] ⇦ Quits: cpup (~cpup@32.218.113.33) (Ping timeout: 189 seconds)
L1979[23:03:02] ⇦ Quits: gigaherz (gigaherz@236.Red-79-152-126.dynamicIP.rima-tde.net) (Remote host closed the connection)
L1980[23:03:51] ⇨ Joins: cpup (~cpup@32.218.113.33)
L1981[23:05:24] <tterrag> from my CS teacher's website http://puu.sh/fdJJR.png
L1982[23:05:32] <tterrag> I can tell this might be a bit of an old web page :D
L1983[23:05:56] ⇨ Joins: KilRoYDK (~KilRoYDK@89.184.156.11)
L1984[23:09:18] ⇦ Quits: KilRoYDK (~KilRoYDK@89.184.156.11) (Ping timeout: 194 seconds)
L1985[23:09:23] <xaero> it's a testament to either that the course is very good foundational/theoretical course that hasn't changed much/passed the test time, or the contents are just /slightly/ behind the times ;)
L1986[23:10:13] <clienthax> how many points do i get for this :P, [05:09:26 ERROR]: Unable to determine registrant mod for uk.co.haxyshideout.noflyzone.events.EventListener@1da57ba1. Thi
L1987[23:10:13] <clienthax> s is a critical error and should be impossible
L1988[23:10:19] ⇦ Quits: Ecu (~Nayr@184-155-121-160.cpe.cableone.net) (Read error: Connection reset by peer)
L1989[23:12:11] ⇦ Quits: Kokoro_Neko (~androirc@174-135-29-96.res.bhn.net) (Ping timeout: 189 seconds)
L1990[23:15:01] ⇨ Joins: mikeprimm_ (~mikeprimm@cpe-70-116-51-5.austin.res.rr.com)
L1991[23:15:10] ⇦ Quits: cpup (~cpup@32.218.113.33) (Ping timeout: 200 seconds)
L1992[23:21:29] *** TTFTCUTS is now known as TTFT|Away
L1993[23:22:11] ⇨ Joins: cpup (~cpup@32.218.113.33)
L1994[23:26:55] *** sww1235 is now known as sww1235|away
L1995[23:26:57] ⇨ Joins: Kokoro_Neko (~androirc@174-135-29-96.res.bhn.net)
L1996[23:27:02] *** sww1235|away is now known as sww1235
L1997[23:28:38] ⇨ Joins: mezz_ (~quassel@2601:9:6b00:9e0:354e:66f5:ea47:87d2)
L1998[23:29:47] ⇦ Quits: mezz (~quassel@2601:9:6b00:9e0:2462:f214:1cbd:110c) (Ping timeout: 198 seconds)
L1999[23:30:23] *** Cazzar|Away is now known as Cazzar
L2000[23:32:32] ⇦ Quits: cpup (~cpup@32.218.113.33) (Ping timeout: 189 seconds)
L2001[23:32:57] <tterrag> xaero: it's microcomputing, so no, not much has changed
L2002[23:33:02] ⇦ Quits: chbachman (~chbachman@c-73-45-124-6.hsd1.il.comcast.net) (Quit: My MacBook Pro has gone to sleep. ZZZzzz…)
L2003[23:33:06] <tterrag> no one has revolutionized boolean logic in the last 50 years or so
L2004[23:33:25] <tterrag> clienthax: none, it's not impossible and happens quite often
L2005[23:33:33] <tterrag> I see it almost every launch
L2006[23:33:41] <clienthax> wha?
L2007[23:34:36] *** Zidane is now known as Zidane|Away
L2008[23:37:12] ⇨ Joins: cpup (~cpup@32.218.113.33)
L2009[23:37:53] ⇦ Quits: Devin_Mobile (uid44396@id-44396.highgate.irccloud.com) (Quit: Connection closed for inactivity)
L2010[23:41:40] *** luacs1998 is now known as luacs|off
L2011[23:44:22] ⇨ Joins: Devin_Mobile (uid44396@id-44396.highgate.irccloud.com)
L2012[23:47:03] ⇦ Quits: Horfius (~Horfius@c-50-177-126-199.hsd1.nh.comcast.net) (Quit: Leaving)
L2013[23:47:07] ⇦ Quits: auenf (David@171.72.233.220.static.exetel.com.au) (Read error: Connection reset by peer)
L2014[23:47:51] ⇨ Joins: auenf (David@171.72.233.220.static.exetel.com.au)
L2015[23:48:29] ⇦ Quits: auenf (David@171.72.233.220.static.exetel.com.au) (Read error: Connection reset by peer)
L2016[23:49:02] ⇦ Quits: cpup (~cpup@32.218.113.33) (Ping timeout: 189 seconds)
L2017[23:49:15] ⇨ Joins: auenf (David@171.72.233.220.static.exetel.com.au)
L2018[23:50:10] *** AbrarSyed is now known as Abrar|gone
L2019[23:52:18] ⇦ Quits: auenf (David@171.72.233.220.static.exetel.com.au) (Remote host closed the connection)
L2020[23:53:03] ⇨ Joins: auenf (David@171.72.233.220.static.exetel.com.au)
L2021[23:53:24] ⇦ Quits: auenf (David@171.72.233.220.static.exetel.com.au) (Read error: Connection reset by peer)
L2022[23:53:32] ⇨ Joins: cpup (~cpup@32.218.113.33)
L2023[23:54:07] ⇨ Joins: auenf (David@171.72.233.220.static.exetel.com.au)
L2024[23:54:42] ⇦ Quits: auenf (David@171.72.233.220.static.exetel.com.au) (Read error: Connection reset by peer)
L2025[23:55:25] ⇨ Joins: auenf (David@171.72.233.220.static.exetel.com.au)
L2026[23:58:15] *** dmillerw is now known as dmillerw[OFF]
L2027[23:58:17] ⇦ Quits: auenf (David@171.72.233.220.static.exetel.com.au) (Remote host closed the connection)
L2028[23:59:03] ⇨ Joins: auenf (David@171.72.233.220.static.exetel.com.au)
L2029[23:59:16] ⇦ Quits: auenf (David@171.72.233.220.static.exetel.com.au) (Read error: Connection reset by peer)
L2030[23:59:59] ⇨ Joins: auenf (David@171.72.233.220.static.exetel.com.au)
Next>> Scroll to Top