package Ġcom . w yn n lab . min est om . items Ċ Ċ import Ġcom . w yn n lab . min est om . commands . Sub command Ċ import Ġcom . w yn n lab . min est om . items . Item Command . getItem Builder Ċ import Ġcom . w yn n lab . min est om . player At Least 2 Ċ import Ġnet . min est om . server . command . builder . arguments . Argument Type Ċ import Ġnet . min est om . server . entity . Player Ċ Ċ object ĠItem Meta Command Ġ: ĠSub command (" meta ") Ġ{ ĊĠĠĠ Ġinit Ġ{ ĊĠĠĠĠĠĠĠ Ġcondition Ġ= Ġplayer At Least 2 ĊĊĠĠĠĠĠĠĠ Ġadd Syntax ({ Ġsender , Ġctx Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġitem Builder Ġ= ĠgetItem Builder ( sender Ġas ĠPlayer ) Ġ?: Ġreturn @ add Syntax ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġr arity Ġ= Ġctx . get < R arity >(" value ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġitem Builder . r arity Ġ= Ġr arity ĊĠĠĠĠĠĠĠĠĠĠĠ Ġsender . item In Main Hand Ġ= Ġitem Builder . item For ( sender ) ĊĠĠĠĠĠĠĠ Ġ}, ĠArgument Type . Literal (" r arity "), ĠArgument Type . Enum (" value ", ĠR arity :: class . java )) ĊĊĠĠĠĠĠĠĠ Ġadd Syntax ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ{ Ġsender , Ġctx Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġitem Builder Ġ= ĠgetItem Builder ( sender Ġas ĠPlayer ) Ġ?: Ġreturn @ add Syntax ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġfield Ġ= Ġctx . get < String >(" skill ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġvalue Ġ= Ġctx . get < Int >(" value ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠSkill Requirements :: class . java . getField ( field ). set ( item Builder . skill Requirements , Ġvalue ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġsender . item In Main Hand Ġ= Ġitem Builder . item For ( sender ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ}, ĠArgument Type . Literal (" skill - req "), ĠArgument Type . Word (" skill "). from ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" strength ", Ġ" dex ter ity ", Ġ" int elligence ", Ġ" defense ", Ġ" ag ility " ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ), ĠArgument Type . Integer (" value ") ĊĠĠĠĠĠĠĠ Ġ) ĊĊĠĠĠĠĠĠĠ Ġadd Syntax ({ Ġsender , Ġctx Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġitem Builder Ġ= ĠgetItem Builder ( sender Ġas ĠPlayer ) Ġ?: Ġreturn @ add Syntax ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( item Builder Ġ! is ĠItem Builder . Weapon ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġwarn Wrong Type ( sender ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn @ add Syntax ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġspeed Ġ= Ġctx . get < Attack Speed >(" value ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġitem Builder . attack Speed Ġ= Ġspeed ĊĠĠĠĠĠĠĠĠĠĠĠ Ġsender . item In Main Hand Ġ= Ġitem Builder . item For ( sender ) ĊĠĠĠĠĠĠĠ Ġ}, ĠArgument Type . Literal (" attack - speed "), ĠArgument Type . Enum (" value ", ĠAttack Speed :: class . java )) ĊĊĠĠĠĠĠĠĠ Ġadd Syntax ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ{ Ġsender , Ġctx Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġitem Builder Ġ= ĠgetItem Builder ( sender Ġas ĠPlayer ) Ġ?: Ġreturn @ add Syntax ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( item Builder Ġ! is ĠItem Builder . Weapon ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġwarn Wrong Type ( sender ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn @ add Syntax ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġfield Ġ= Ġctx . get < String >(" element ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġvalue Ġ= Ġctx . get < net . min est om . server . utils . math . Int Range >(" value ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠDamage :: class . java . getField ( field ). set ( item Builder . damage , Ġvalue . minimum .. value . maximum ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġsender . item In Main Hand Ġ= Ġitem Builder . item For ( sender ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ}, ĠArgument Type . Literal (" damage "), ĠArgument Type . Word (" element "). from ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" neutral ", Ġ" earth ", Ġ" th under ", Ġ" water ", Ġ" fire ", Ġ" air " ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ), ĠArgument Type . Int Range (" value ") ĊĠĠĠĠĠĠĠ Ġ) ĊĊĠĠĠĠĠĠĠ Ġadd Syntax ({ Ġsender , Ġctx Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġitem Builder Ġ= ĠgetItem Builder ( sender Ġas ĠPlayer ) Ġ?: Ġreturn @ add Syntax ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( item Builder Ġ! is ĠItem Builder . Def ense ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġwarn Wrong Type ( sender ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn @ add Syntax ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġhealth Ġ= Ġctx . get < Int >(" value ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġitem Builder . health Ġ= Ġhealth ĊĠĠĠĠĠĠĠĠĠĠĠ Ġsender . item In Main Hand Ġ= Ġitem Builder . item For ( sender ) ĊĠĠĠĠĠĠĠ Ġ}, ĠArgument Type . Literal (" health "), ĠArgument Type . Integer (" value ")) ĊĊĠĠĠĠĠĠĠ Ġadd Syntax ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ{ Ġsender , Ġctx Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġitem Builder Ġ= ĠgetItem Builder ( sender Ġas ĠPlayer ) Ġ?: Ġreturn @ add Syntax ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( item Builder Ġ! is ĠItem Builder . Def ense ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġwarn Wrong Type ( sender ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn @ add Syntax ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġfield Ġ= Ġctx . get < String >(" element ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġvalue Ġ= Ġctx . get < Int >(" value ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠDef ense :: class . java . getField ( field ). set ( item Builder . defense , Ġvalue ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġsender . item In Main Hand Ġ= Ġitem Builder . item For ( sender ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ}, ĠArgument Type . Literal (" defense "), ĠArgument Type . Word (" element "). from ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" earth ", Ġ" th under ", Ġ" water ", Ġ" fire ", Ġ" air " ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ), ĠArgument Type . Integer (" value ") ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġwarn Wrong Type ( sender : ĠPlayer ) Ġ= Ġsender . sendMessage (" Â§ c This Ġitem Ġdoes Ġnot Ġhave Ġthis Ġproperty ") Ċ }