2525import org .geysermc .cumulus .form .SimpleForm ;
2626import org .geysermc .cumulus .response .SimpleFormResponse ;
2727
28- import java .util .Optional ;
28+ import java .util .List ;
2929
3030public class SimpleFormMenu extends FormMenu <SimpleForm , SimpleFormResponse , SimpleForm .Builder > {
3131 private static final ComponentProviderBuilder <SimpleForm , SimpleFormResponse , SimpleForm .Builder > builder = new ComponentProviderBuilder <>();
@@ -34,19 +34,27 @@ public class SimpleFormMenu extends FormMenu<SimpleForm, SimpleFormResponse, Sim
3434 builder .register (SimpleButtonComponentProvider ::new , "button" , "" );
3535 }
3636
37- private final String content ;
37+ private final StringBuilder content = new StringBuilder () ;
3838
3939 public SimpleFormMenu (FormSender sender , Config config ) {
4040 super (sender , config );
4141
42- content = Optional .ofNullable (MapUtils .getIfFound (menuSettings , "content" ))
43- .map (Object ::toString )
44- .orElse ("" );
42+ Object source = MapUtils .getIfFound (menuSettings , "content" );
43+ if (source == null ) {
44+ return ;
45+ }
46+ if (source instanceof List <?>) {
47+ for (Object item : (List <?>) source ) {
48+ content .append (item .toString ()).append ("\n " );
49+ }
50+ return ;
51+ }
52+ content .append (source );
4553 }
4654
4755 @ Override
4856 protected SimpleForm .Builder createFormBuilder (Player player ) {
49- return SimpleForm .builder ().content (StringReplacerApplier .replace (content , player .getUniqueId (), this ));
57+ return SimpleForm .builder ().content (StringReplacerApplier .replace (content . toString () , player .getUniqueId (), this ));
5058 }
5159
5260 @ Override
0 commit comments