package Ġcom . ch att riggers . ct js . minecraft . wrappers . objects . inventory . action Ċ Ċ import Ġcom . ch att riggers . ct js . minecraft . wrappers . Client Ċ import Ġcom . ch att riggers . ct js . minecraft . wrappers . Player Ċ import Ġcom . ch att riggers . ct js . minecraft . wrappers . objects . inventory . Inventory Ċ import Ġcom . ch att riggers . ct js . utils . kotlin . External Ċ Ċ //# if ĠMC > 1 0 8 0 9 Ċ // $$ Ġimport Ġcom . ch att riggers . ct js . utils . kotlin . M CC lick Type Ċ //# endif Ċ Ċ @ External Ċ abstract Ġclass ĠAction ( var Ġslot : ĠInt , Ġvar Ġwindow Id : ĠInt ) Ġ{ ĊĠĠĠ Ġfun Ġset Slot ( slot : ĠInt ) Ġ= Ġapply Ġ{ ĊĠĠĠĠĠĠĠ Ġthis . slot Ġ= Ġslot ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġset Window Id ( window Id : ĠInt ) Ġ= Ġapply Ġ{ ĊĠĠĠĠĠĠĠ Ġthis . window Id Ġ= Ġwindow Id ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġabstract Ġfun Ġcomplete () ĊĊĠĠĠ Ġ// # if ĠMC <= 1 0 8 0 9 ĊĠĠĠ Ġprotected Ġfun Ġdo Click ( button : ĠInt , Ġmode : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠ Ġ// # else ĊĠĠĠĠĠĠĠ Ġ// $$ Ġprotected Ġfun Ġdo Click ( button : ĠInt , Ġmode : ĠM CC lick Type ) Ġ{ ĊĠĠĠĠĠĠĠ Ġ// # endif ĊĠĠĠĠĠĠĠ ĠClient . getM inecraft (). player Controller . window Click ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġwindow Id , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġslot , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġbutton , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġmode , ĊĠĠĠĠĠĠĠĠĠĠĠ ĠPlayer . getPlayer () ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġ/** ĊĠĠĠĠĠĠĠĠ Ġ* ĠCreates Ġa Ġnew Ġaction . ĊĠĠĠĠĠĠĠĠ Ġ* ĠThe ĠInventory Ġmust Ġbe Ġa Ġcontainer , Ġsee Ġ{@ link ĠInventory # is Container ()}. ĊĠĠĠĠĠĠĠĠ Ġ* ĠThe Ġslot Ġcan Ġbe Ġ- 9 9 9 Ġfor Ġoutside Ġof Ġthe Ġgui ĊĠĠĠĠĠĠĠĠ Ġ* ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ param Ġinventory Ġthe Ġinventory Ġto Ġcomplete Ġthe Ġaction Ġon ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ param Ġslot Ġthe Ġslot Ġto Ġcomplete Ġthe Ġaction Ġon ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ param Ġtype String Ġthe Ġtype Ġof Ġaction Ġto Ġdo Ġ( CLICK , ĠDR AG , ĠDROP , ĠKEY ) ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ return Ġthe Ġnew Ġaction ĊĠĠĠĠĠĠĠĠ Ġ*/ ĊĠĠĠĠĠĠĠ Ġ@ Jvm Static ĊĠĠĠĠĠĠĠ Ġfun Ġof ( inventory : ĠInventory , Ġslot : ĠInt , Ġtype String : ĠString ) Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠ Ġwhen Ġ( Type . valueOf ( type String . uppercase ())) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠType . CLICK Ġ-> ĠClick Action ( slot , Ġinventory . getWindow Id ()) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠType . DR AG Ġ-> ĠDrag Action ( slot , Ġinventory . getWindow Id ()) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠType . KEY Ġ-> ĠKey Action ( slot , Ġinventory . getWindow Id ()) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠType . DROP Ġ-> ĠDrop Action ( slot , Ġinventory . getWindow Id ()) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġenum Ġclass ĠType Ġ{ ĊĠĠĠĠĠĠĠ ĠC LIC K , ĠDR AG , ĠKEY , ĠDROP ĊĠĠĠ Ġ} Ċ } Ċ