package Ġworld . greg s . void ps . engine . client . instruction . handle Ċ Ċ import Ġworld . greg s . void ps . engine . client . instruction . Instruction Handler Ċ import Ġworld . greg s . void ps . engine . client . instruction . Interface Handler . get Interface Item Ċ import Ġworld . greg s . void ps . engine . client . ui . interact . Interface On Interface Ċ import Ġworld . greg s . void ps . engine . entity . character . player . Player Ċ import Ġworld . greg s . void ps . engine . sync Ċ import Ġworld . greg s . void ps . network . in struct . Interact Interface Item Ċ Ċ /** Ċ Ġ* Ġ@ author ĠJ acob ĠR h iel Ġ< jacob . rh iel @ gmail . com > Ċ Ġ* Ġ@ created ĠJun Ġ 2 0 , Ġ 2 0 2 1 Ċ Ġ*/ Ċ class ĠInterface On Interface Option Handler Ġ: ĠInstruction Handler < Interact Interface Item >() Ġ{ ĊĊĠĠĠ Ġoverride Ġfun Ġvalidate ( player : ĠPlayer , Ġinstruction : ĠInter act Interface Item ) Ġ= Ġsync Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġ( from ItemId , Ġto ItemId , Ġfrom Slot , Ġto Slot , Ġfrom Interface Id , Ġfrom Component Id , Ġto Interface Id , Ġto Component Id ) Ġ= Ġinstruction ĊĊĠĠĠĠĠĠĠ Ġval Ġ( from Id , Ġfrom Component , Ġfrom Item , Ġfrom Container ) Ġ= Ġget Interface Item ( player , Ġfrom Interface Id , Ġfrom Component Id , Ġfrom ItemId , Ġfrom Slot ) Ġ?: Ġreturn @ sync ĊĠĠĠĠĠĠĠ Ġval Ġ( to Id , Ġto Component , Ġto Item , Ġto Container ) Ġ= Ġget Interface Item ( player , Ġto Interface Id , Ġto Component Id , Ġto ItemId , Ġto Slot ) Ġ?: Ġreturn @ sync ĊĊĠĠĠĠĠĠĠ Ġplayer . events . emit ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠInterface On Interface ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfrom Item , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġto Item , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfrom Slot , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġto Slot , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfrom Id , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfrom Component , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġto Id , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġto Component , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfrom Container , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġto Container ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} Ċ Ċ }