/* ĠCopyright Ġ( c ) Ġ 2 0 2 0 ĠDe fl ated Pick le Ġunder Ġthe ĠMIT Ġlicense Ġ*/ Ċ Ċ package Ġcom . def lated pickle . bug magic . api . client . util . extension Ċ Ċ import Ġnet . minecraft . client . renderer . Gl StateManager Ċ import Ġnet . minecraft . client . renderer . Tes sell ator Ċ import Ġnet . minecraft . client . renderer . vertex . Default Vertex Formats Ċ import Ġnet . minecraft . entity . Entity Ċ import Ġnet . minecraft . util . math . Block Pos Ċ import Ġnet . minecraft . util . math . Vec 3 d Ċ import Ġorg . lwjgl . opengl . GL 1 1 Ċ import Ġorg . lwjgl . util . Readable Color Ċ Ċ /** Ċ Ġ* ĠDraw s Ġa Ġline Ġfrom Ġan Ġ[ Vec 3 d ] Ġto Ġa Ġtarget Ġ[ Vec 3 d ], Ġusing Ġa Ġ[ Readable Color ] Ċ Ġ*/ Ċ fun ĠTes sell ator . draw Line ( ĊĠĠĠ Ġstart : ĠVec 3 d , ĊĠĠĠ Ġtarget : ĠVec 3 d , ĊĠĠĠ Ġcolour : ĠRead able Color Ċ ) Ġ{ ĊĠĠĠ ĠGL 1 1 . gl Push Attrib ( GL 1 1 . GL _ CURRENT _ BIT ) ĊĊĠĠĠ ĠGl StateManager . disable Texture 2 D () ĊĊĠĠĠ ĠGl StateManager . color ( ĊĠĠĠĠĠĠĠ Ġcolour . red Ġ/ Ġ 2 5 5 f , ĊĠĠĠĠĠĠĠ Ġcolour . green Ġ/ Ġ 2 5 5 f , ĊĠĠĠĠĠĠĠ Ġcolour . blue Ġ/ Ġ 2 5 5 f , ĊĠĠĠĠĠĠĠ Ġcolour . alpha Ġ/ Ġ 2 5 5 f ĊĠĠĠ Ġ) ĊĊĠĠĠ Ġthis . buffer . begin ( GL 1 1 . GL _ LINES , ĠDefault Vertex Formats . POSITION ) ĊĠĠĠ Ġthis . buffer . pos ( 0 . 0 , Ġ 0 . 0 , Ġ 0 . 0 ). end Vertex () ĊĠĠĠ Ġthis . buffer . pos ( ĊĠĠĠĠĠĠĠ Ġtarget . x Ġ- Ġstart . x , ĊĠĠĠĠĠĠĠ Ġtarget . y Ġ- Ġstart . y , ĊĠĠĠĠĠĠĠ Ġtarget . z Ġ- Ġstart . z ĊĠĠĠ Ġ). end Vertex () ĊĊĠĠĠ Ġthis . draw () ĊĊĠĠĠ ĠGl StateManager . enable Texture 2 D () ĊĊĠĠĠ ĠGL 1 1 . gl Pop Attrib () Ċ } Ċ Ċ /** Ċ Ġ* ĠDraw s Ġa Ġline Ġfrom Ġan Ġ[ T ] Ġto Ġa Ġtarget Ġ[ Vec 3 d ], Ġusing Ġa Ġ[ Readable Color ] Ċ Ġ*/ Ċ fun ĠTes sell ator . draw Line ( ĊĠĠĠ Ġentity : ĠEntity , ĊĠĠĠ Ġtarget : ĠVec 3 d , ĊĠĠĠ Ġcolour : ĠRead able Color Ċ ) Ġ{ ĊĠĠĠ Ġthis . draw Line ( Vec 3 d ( entity . pos X , Ġentity . pos Y , Ġentity . pos Z ), Ġtarget , Ġcolour ) Ċ } Ċ Ċ /** Ċ Ġ* ĠDraw s Ġa Ġline Ġfrom Ġan Ġ[ T ] Ġto Ġa Ġtarget Ġ[ Block Pos ], Ġusing Ġa Ġ[ Readable Color ] Ċ Ġ*/ Ċ fun ĠTes sell ator . draw Line ( ĊĠĠĠ Ġentity : ĠEntity , ĊĠĠĠ Ġtarget : ĠBlockPos , ĊĠĠĠ Ġcolour : ĠRead able Color Ċ ) Ġ{ ĊĠĠĠ Ġthis . draw Line ( ĊĠĠĠĠĠĠĠ ĠVec 3 d ( entity . pos X , Ġentity . pos Y , Ġentity . pos Z ), ĊĠĠĠĠĠĠĠ ĠVec 3 d ( target . x Ġ+ Ġ 0 . 5 , Ġtarget . y . toDouble (), Ġtarget . z . toDouble () Ġ+ Ġ 0 . 5 ), ĊĠĠĠĠĠĠĠ Ġcolour ĊĠĠĠ Ġ) Ċ } Ċ Ċ /** Ċ Ġ* ĠDraw s Ġa Ġline Ġfrom Ġan Ġ[ Vec 3 d ] Ġto Ġa Ġtarget Ġ[ Block Pos ], Ġusing Ġa Ġ[ Readable Color ] Ċ Ġ*/ Ċ fun ĠTes sell ator . draw Line ( ĊĠĠĠ Ġstart : ĠVec 3 d , ĊĠĠĠ Ġtarget : ĠBlockPos , ĊĠĠĠ Ġcolour : ĠRead able Color Ċ ) Ġ{ ĊĠĠĠ Ġthis . draw Line ( ĊĠĠĠĠĠĠĠ Ġstart , ĊĠĠĠĠĠĠĠ ĠVec 3 d ( target . x Ġ+ Ġ 0 . 5 , Ġtarget . y . toDouble (), Ġtarget . z Ġ+ Ġ 0 . 5 ), ĊĠĠĠĠĠĠĠ Ġcolour ĊĠĠĠ Ġ) Ċ } Ċ