package Ġcom . mine in aby ss . guild s . menus Ċ Ċ import Ġandroidx . compose . runtime . Composable Ċ import Ġandroidx . compose . runtime . derived State Of Ċ import Ġandroidx . compose . runtime . getValue Ċ import Ġcom . mine in aby ss . gui y . components . Grid Ċ import Ġcom . mine in aby ss . gui y . gui y Plugin Ċ import Ġcom . mine in aby ss . gui y . modifiers . Modifier Ċ import Ġcom . mine in aby ss . gui y . modifiers . at Ċ import Ġcom . mine in aby ss . gui y . modifiers . click able Ċ import Ġcom . mine in aby ss . gui y . modifiers . size Ċ import Ġcom . mine in aby ss . helpers . Title Item Ċ import Ġcom . mine in aby ss . helpers . head Ċ import Ġcom . mine in aby ss . helpers . ui . Universal Scre ens Ċ import Ġcom . mine in aby ss . helpers . ui . comp os ables . Button Ċ import Ġcom . mine in aby ss . id of r ont . items . edit Item Meta Ċ import Ġcom . mine in aby ss . id of r ont . messaging . error Ċ import Ġcom . mine in aby ss . mine in aby ss . core . A by ss Context Ċ import Ġcom . mine in aby ss . mine in aby ss . data . Guild Join Type Ċ import Ġcom . mine in aby ss . mine in aby ss . data . Players Ċ import Ġcom . mine in aby ss . mine in aby ss . extensions .* Ċ import Ġnet . w es jd . an vil gui . An vil GUI Ċ import Ġorg . bukkit . Bu kkit Ċ import Ġorg . bukkit . Chat Color .* Ċ import Ġorg . bukkit . Material Ċ import Ġorg . bukkit . inventory . ItemStack Ċ import Ġorg . jetbrains . ex posed . sql . and Ċ import Ġorg . jetbrains . ex posed . sql . select Ċ import Ġorg . jetbrains . ex posed . sql . transactions . transaction Ċ Ċ @ Composable Ċ fun ĠGuild UIS cope . Guild Member List Screen () Ġ{ ĊĠĠĠ ĠManage Guild Members Button ( Modifier . at ( 1 , Ġ 1 )) ĊĠĠĠ ĠInv ite To Guild Button ( Modifier . at ( 7 , Ġ 0 )) ĊĠĠĠ ĠToggle Guild Join Type Button ( Modifier . at ( 8 , Ġ 1 )) ĊĠĠĠ ĠManage Guild Join Requests Button ( Modifier . at ( 8 , Ġ 0 )) ĊĠĠĠ ĠBack Button ( Modifier . at ( 2 , Ġguild Level Ġ+ Ġ 1 )) Ċ } Ċ Ċ @ Composable Ċ fun ĠGuild UIS cope . Manage Guild Members Button ( modifier : ĠModifier ) Ġ{ ĊĠĠĠ Ġ// TODO Ġmove Ġtransaction Ġinto Ġhelper Ġfunction ĊĠĠĠ Ġval Ġplayers Ġ= Ġtransaction ( A by ss Context . db ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġplayer Row Ġ= ĠP layers . select Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠP layers . player UUID Ġeq Ġplayer . unique Id ĊĠĠĠĠĠĠĠ Ġ}. single () ĊĊĠĠĠĠĠĠĠ Ġval Ġguild Id Ġ= Ġplayer Row [ Players . guild Id ] ĊĊĠĠĠĠĠĠĠ ĠP layers . select Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ( Players . guild Id Ġeq Ġguild Id ) Ġand ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ( Players . player UUID Ġne q Ġplayer . unique Id ) ĊĠĠĠĠĠĠĠ Ġ}. map Ġ{ Ġrow Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ ĠPair ( row [ Players . guild Rank ], ĠBu kkit . get Offline Player ( row [ Players . player UUID ])) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĠĠĠ ĠGrid ( modifier . size ( 5 , Ġguild Level )) Ġ{ ĊĠĠĠĠĠĠĠ Ġplayers . sorted By Ġ{ Ġit . first Ġ}. forEach Ġ{ Ġ( rank , Ġmember ) Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ ĠButton ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmember . head ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ"$ G OLD $ ITAL IC ${ member . name }", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ"$ YELLOW ${ BOLD } Guild ĠRank : Ġ$ YELLOW $ ITAL IC ${ member . get Guild Rank () }", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠModifier . click able Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġnav . open ( Guild Screen . Member Options ( member )) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ Ċ @ Composable Ċ fun ĠGuild UIS cope . Invite To Guild Button ( modifier : ĠModifier ) Ġ{ ĊĠĠĠ Ġif Ġ( player . get Guild Join Type () Ġ== ĠGuild Join Type . Request ) Ġ{ ĊĠĠĠĠĠĠĠ Ġplayer . error (" Your Ġguild Ġis Ġin Ġ' Request - only ' Ġmode .") ĊĠĠĠĠĠĠĠ Ġplayer . error (" Change Ġit Ġto Ġ' Any ' Ġor Ġ' Invite - only ' Ġmode Ġto Ġinvite Ġothers .") ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġval Ġguild Invite Paper Ġ= ĠItemStack ( Material . P AP ER ). edit Item Meta Ġ{ ĊĠĠĠĠĠĠĠ Ġset DisplayName ("$ BLUE ${ ITAL IC } Player name ") ĊĠĠĠĠĠĠĠ Ġset Custom Model Data ( 1 ) ĊĠĠĠ Ġ} ĊĠĠĠ ĠButton ( ĊĠĠĠĠĠĠĠ ĠTitle Item . of ("${ YELLOW } Invite ĠPlayer Ġto ĠGuild "), ĊĠĠĠĠĠĠĠ Ġmodifier . size ( 1 , Ġ 1 ). click able Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġnav . open ( Universal Scre ens . An vil ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠAn vil GUI . Builder () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. title (": guild _ invite :") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. item Left ( guild Invite Paper ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. plugin ( gui y Plugin ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. onClose Ġ{ Ġnav . back () Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. onComplete Ġ{ Ġplayer , Ġinv ited Player : ĠString Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġplayer . invite Player To Guild ( inv ited Player ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠAn vil GUI . Response . close () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ)) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ) Ċ } Ċ Ċ @ Composable Ċ fun ĠGuild UIS cope . Manage Guild Join Requests Button ( modifier : ĠModifier ) Ġ{ ĊĠĠĠ Ġval Ġrequest Amount Ġ= Ġplayer . getNumberOf Guild Requests () ĊĠĠĠ Ġval Ġplural Ġ= Ġrequest Amount Ġ!= Ġ 1 ĊĠĠĠ Ġif Ġ( player . has Guild Request ()) Ġ{ ĊĠĠĠĠĠĠĠ ĠButton ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠTitle Item . of ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ"${ DARK _ GREEN } Manage ĠGuild ĠJoin ĠRequests ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ"$ YELLOW ${ ITAL IC } There Ġ${ if Ġ( plural ) Ġ" are " Ġelse Ġ" is "} Ġcurrently Ġ$ G OLD $ BOLD $ request Amount Ġ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ"$ YELLOW ${ ITAL IC } join - request ${ if Ġ( plural ) Ġ" s " Ġelse Ġ"" } Ġfor Ġyour Ġguild ." ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ/* ĠIcon Ġthat Ġnot ifies Ġplayer Ġthere Ġare Ġnew Ġinv ites Ġ*/ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġmodifier . click able Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġnav . open ( Guild Screen . Join Request List ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠ ĠButton ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠTitle Item . of ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ"$ DARK _ GREEN ${ STR IK ETH ROUGH } Manage ĠGuild ĠJoin ĠRequests ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ"$ RED ${ ITAL IC } There Ġare Ġcurrently Ġno Ġ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ"$ RED ${ ITAL IC } join - requests Ġfor Ġyour Ġguild ." ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} Ċ Ċ } Ċ Ċ @ Composable Ċ fun ĠGuild UIS cope . Toggle Guild Join Type Button ( modifier : ĠModifier ) Ġ{ ĊĠĠĠ Ġval Ġjoin Type Ġby Ġderived State Of Ġ{ Ġplayer . get Guild Join Type () Ġ} ĊĠĠĠ ĠButton ( ĊĠĠĠĠĠĠĠ ĠTitle Item . of ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ"${ DARK _ GREEN } Toggle ĠGuild ĠJoin ĠType ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ"${ YELLOW } Currently Ġplayers Ġcan Ġjoin Ġvia : Ġ$ G OLD $ ITAL IC $ join Type ", ĊĠĠĠĠĠĠĠ Ġ), ĊĠĠĠĠĠĠĠ Ġ/* ĠCustom ĠIcon Ġfor Ġ" dark eren ed " Ġout Ġicon Ġindicating Ġno Ġinv ites Ġ*/ ĊĠĠĠĠĠĠĠ Ġmodifier . click able Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġplayer . change Guild Join Type () ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ) Ċ } Ċ