package Ġdev . tric ht . lun aris Ċ Ċ import Ġdev . tric ht . lun aris . com . path of ex ile . Path Of Ex ile API Ċ import Ġdev . tric ht . lun aris . com . path of ex ile . item transformer . Item Transformer Ċ import Ġdev . tric ht . lun aris . com . path of ex ile . middleware . Mod Value Range Middleware Ċ import Ġdev . tric ht . lun aris . com . path of ex ile . middleware . Pseudo Mods Middleware Ċ import Ġdev . tric ht . lun aris . com . path of ex ile . middleware . Trade Middleware Ċ import Ġdev . tric ht . lun aris . info . po e prices . Po e Prices API Ċ import Ġdev . tric ht . lun aris . item . Item Grab ber Ċ import Ġdev . tric ht . lun aris . listeners . Listener Stack Ċ import Ġdev . tric ht . lun aris . ninja . po e . Po e N inja Item Resolver Ċ import Ġdev . tric ht . lun aris . util . Error Util Ċ import Ġdev . tric ht . lun aris . util . Properties Ċ import Ġdev . tric ht . lun aris . util . System Tray Ċ import Ġdev . tric ht . lun aris . util . platform . windows . Vulkan Fullscreen Fixer Ċ import Ġjavafx . application . Platform Ċ import Ġdev . tric ht . lun aris . util . Platform Ġas ĠL Platform Ċ import Ġorg . j native hook . Global Screen Ċ import Ġorg . slf 4 j . LoggerFactory Ċ import Ġjava . awt . AW T Exception Ċ import Ġjava . awt . Robot Ċ import Ġjava . util .* Ċ import Ġjava . util . logging . Level Ċ import Ġjava . util . logging . Logger Ċ import Ġjavax . swing . UI Manager ĊĊ Ċ class ĠL un aris Ġprivate Ġconstructor () Ġ{ ĊĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġprivate Ġval Ġlog Ġ= ĠLoggerFactory . getLogger ( L un aris :: class . java ) ĊĊĠĠĠĠĠĠĠ Ġ@ Jvm Static ĊĠĠĠĠĠĠĠ Ġfun Ġmain ( args : ĠArray < String >) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtry Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// Ġ 0 . 4 . 0 Ġadded ĠF XML Ġfrom ĠJava FX Ġwhich Ġrequires Ġthe Ġscripting Ġengine Ġj mod ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠClass . forName (" javax . script . Script Engine ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġcatch Ġ( e : ĠClass NotFoundException ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠError Util . show Error Dialog And Exit (" Please Ġmanually Ġdownload Ġthe Ġlatest Ġrelease . ĠYou 're Ġrunning Ġa Ġversion Ġthat Ġcan Ġnot Ġbe Ġauto - updated .") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// ĠDisable Ġlogging Ġfrom Ġj native hook Ġ( logs Ġevery Ġkey stroke Ġor Ġmouse Ġmovement ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġlogger Ġ= ĠLogger . getLogger ( Global Screen :: class . java . get Package (). name ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġlogger . level Ġ= ĠLevel . WARNING ĊĠĠĠĠĠĠĠĠĠĠĠ Ġlogger . use Parent Handlers Ġ= Ġfalse ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtry Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠUI Manager . set Look And Feel ( UI Manager . getSystem Look And Feel ClassName ()) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġcatch Ġ( e : ĠException ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġlog . warn (" Could Ġnot Ġset ĠSystem ĠLook Ġand ĠFeel , Ġfalling Ġback Ġto Ġdefault .") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠ ĠL un aris () ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġinit Ġ{ ĊĠĠĠĠĠĠĠ Ġvar Ġpath Of Ex ile API : ĠPath Of Ex ile API ? Ġ= Ġnull ĊĠĠĠĠĠĠĠ Ġtry Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġpath Of Ex ile API Ġ= ĠPath Of Ex ile API () ĊĠĠĠĠĠĠĠ Ġ} Ġcatch Ġ( e : ĠException ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġlog . error (" Failed Ġtalking Ġto Ġpath of ex ile . com ", Ġe ) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠError Util . show Error Dialog And Exit (" Couldn 't Ġtalk Ġwith Ġpath of ex ile . com , Ġperhaps Ġdown Ġfor Ġmaintenance ?") ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġtry Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠProperties . load () ĊĠĠĠĠĠĠĠ Ġ} Ġcatch Ġ( e : ĠException ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠError Util . show Error Dialog And Exit (" Unable Ġto Ġcreate Ġsetup Ġproperties Ġfile Ġfor Ġsettings , Ġtry Ġrunning Ġas Ġadministrator .") ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ ĠSystem Tray . setup () ĊĠĠĠĠĠĠĠ Ġval Ġpo e Prices API Ġ= ĠPo e Prices API () ĊĊĠĠĠĠĠĠĠ Ġsetup Item Transformer Middleware () ĊĠĠĠĠĠĠĠ ĠProperties . addProperty Listener (" trade _ search .( .* )") Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġlog . debug (" Refresh ing Ġitem Ġtransformer Ġmiddleware ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġsetup Item Transformer Middleware () ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġvar Ġrobot : ĠRobot ? Ġ= Ġnull ĊĠĠĠĠĠĠĠ Ġtry Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġrobot Ġ= ĠRobot () ĊĠĠĠĠĠĠĠ Ġ} Ġcatch Ġ( e : ĠA WT Exception ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġlog . error (" Failed Ġto Ġinitialize Ġ", Ġe ) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠError Util . show Error Dialog And Exit (" Failed Ġto Ġinitialize ĠL un aris .") ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġval Ġitem Resolver Ġ= ĠPo e N inja Item Resolver () ĊĠĠĠĠĠĠĠ Ġval Ġitem Grab ber Ġ= ĠItem Grab ber ( item Resolver ) ĊĊĠĠĠĠĠĠĠ ĠProperties . addProperty Listener ( Properties . LE AG UE ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġitem Resolver . refresh () ĊĠĠĠĠĠĠĠĠĠĠĠ ĠSystem Tray . select League ( Properties . getProperty ( Properties . LE AG UE )) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ ĠProperties . addProperty Listener ( Properties . PO E SESS ID ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġpath Of Ex ile API ?. sessionId Ġ= Ġ ĠProperties . getProperty ( Properties . PO E SESS ID ) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġsetup V ul can Fix () ĊĠĠĠĠĠĠĠ ĠProperties . addProperty Listener (" general . vul can _ fix ") Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġsetup V ul can Fix () ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ ĠListener Stack (). start Listeners ( item Grab ber , Ġrobot , Ġpath Of Ex ile API , Ġpo e Prices API ) ĊĊĠĠĠĠĠĠĠ Ġ// ĠFor Ġsome Ġreason Ġthe ĠJava FX Ġthread Ġwill Ġcompletely Ġstop Ġafter Ġclosing ĊĠĠĠĠĠĠĠ Ġ// Ġthe Ġfirst Ġtooltip . ĠSetting Ġthis Ġwill Ġprevent Ġthat Ġfrom Ġhappening . ĊĠĠĠĠĠĠĠ ĠPlatform . set Implicit Exit ( false ) ĊĠĠĠĠĠĠĠ Ġlog . debug (" Ready !") ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġsetup Item Transformer Middleware () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġtrade Middleware ArrayList Ġ= ĠArrayList < Trade Middleware >() ĊĠĠĠĠĠĠĠ Ġif Ġ( Properties . getProperty (" trade _ search . pseudo _ mods ", Ġ" 1 ") Ġ== Ġ" 1 ") Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtrade Middleware ArrayList . add ( Pseudo Mods Middleware ()) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġif Ġ( Properties . getProperty (" trade _ search . range _ search ", Ġ" 1 ") Ġ== Ġ" 1 ") Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtrade Middleware ArrayList . add ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠMod Value Range Middleware ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠInteger . parseInt ( Properties . getProperty (" trade _ search . range _ search _ percentage ", Ġ" 2 0 ")), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠProperties . getProperty (" trade _ search . range _ search _ only _ min ", Ġ" 1 ") Ġ!= Ġ" 1 " ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ ĠItem Transformer . set Middleware ( trade Middleware ArrayList ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġsetup V ul can Fix () Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ( L Platform . is Windows ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( Properties . getProperty (" general . vul can _ fix ", Ġ" 0 ") Ġ== Ġ" 1 ") Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠVulkan Fullscreen Fixer . fix Fullscreen (); ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠVulkan Fullscreen Fixer . remove Hook (); ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ }