@Chilco: You are using two different versions of shoebill-common. Make sure that the version you use in the pom.xml matches with the one in the resources.yml.
|
eventManagerNode.registerHandler(PlayerTextEvent.class, (e) -> {
e.disallow();
});
package ru.samp_net;
import java.util.ArrayList;
import java.util.List;
import net.gtaun.shoebill.event.menu.MenuSelectedEvent;
import net.gtaun.shoebill.object.Menu;
import net.gtaun.util.event.EventManager;
import net.gtaun.util.event.EventManagerNode;
/**
*
* @author Philipp Khlupin
*/
public class MenuController {
@FunctionalInterface
public static interface SelectMenuEvent {
public void onSelect(MenuSelectedEvent event);
}
private static EventManagerNode eventManagerNode;
private static List<Menu> menuList;
private static List<SelectMenuEvent> eventList;
public static void init(EventManager rootEventManager) {
eventManagerNode = rootEventManager.createChildNode();
menuList = new ArrayList<>();
eventList = new ArrayList<>();
setupEventHandlers();
}
public static void createMenuHandler(Menu menu, SelectMenuEvent event) {
menuList.add(menu);
eventList.add(event);
}
private static void setupEventHandlers() {
eventManagerNode.registerHandler(MenuSelectedEvent.class, (event) -> onSelectMenu(event));
}
public static void destroy() {
menuList.clear();
}
private static synchronized void onSelectMenu(MenuSelectedEvent event) {
SelectMenuEvent menuEvent;
for (int i = 0; i < menuList.size(); i++) {
if (event.getMenu().getId() == menuList.get(i).getId()) {
menuEvent = eventList.get(i);
menuEvent.onSelect(event);
menuList.remove(i);
eventList.remove(i);
return;
}
}
}
}
protected void onEnable() throws Throwable {
EventManager eventManager = getEventManager();
//...
MenuController.init(eventManager);
//...
}
private void drawMenu(RolePlayer rolePlayer) {
Menu menu = SampObjectManager.get().createMenu("Choose skin", 1, 50.0f, 160.0f, 110.0f, 0.0f);
menu.setColumnHeader(0, "Choose skin");
menu.addItem(0, ">> Next");
menu.addItem(0, "<< Previous");
menu.addItem(0, "Done");
menu.show(rolePlayer.getPlayer());
MenuController.createMenuHandler(menu, (event) -> {
switch (event.getRow()) {
case 1:
// Show next skin
drawMenu(rolePlayer);
break;
case 2:
// Show previous skin
drawMenu(rolePlayer);
break;
default:
// Save changes
break;
}
});
}
@Override
public boolean onPlayerKeyStateChange(int playerId, int keys, int oldKeys) {
try {
Player player = sampObjectStore.getPlayer(playerId);
PlayerKeyStateChangeEvent event = new PlayerKeyStateChangeEvent(player, new PlayerKeyStateImpl(player, oldKeys));
rootEventManager.dispatchEvent(event, player);
return event.getResponse() > 0;
} catch (Throwable e) {
e.printStackTrace();
return false;
}
}
<dependency> <groupId>com.******.guava</groupId> <artifactId>guava</artifactId> <version>19.0</version> </dependency>
runtimes: - ... - com.******.guava:guava:19.0
<dependency> <groupId>org.hibernate</groupId> <artifactId>hibernate-entitymanager</artifactId> <version>5.2.2.Final</version> </dependency>
[22:41:26][ERROR][err] javax.persistence.PersistenceException: No Persistence provider for EntityManager named newventuras [22:41:26][ERROR][err] at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:61) [22:41:26][ERROR][err] at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:39) [22:41:26][ERROR][err] at ch.leadrian.samp.newventuras.NewVenturas.onEnable(NewVenturas.java:26) [22:41:26][ERROR][err] at net.gtaun.shoebill.resource.Resource.enable(Resource.java:91) [22:41:26][ERROR][err] at net.gtaun.shoebill.resource.ResourceManagerImpl.loadGamemode(ResourceManagerImpl.java:179) [22:41:26][ERROR][err] at net.gtaun.shoebill.resource.ResourceManagerImpl.loadAllResource(ResourceManagerImpl.java:62) [22:41:26][ERROR][err] at net.gtaun.shoebill.ShoebillImpl.loadPluginsAndGamemode(ShoebillImpl.java:289) [22:41:26][ERROR][err] at net.gtaun.shoebill.ShoebillImpl.access$100(ShoebillImpl.java:47) [22:41:26][ERROR][err] at net.gtaun.shoebill.ShoebillImpl$1.onAmxLoad(ShoebillImpl.java:233) [22:41:26][ERROR][err] at net.gtaun.shoebill.samp.SampCallbackManagerImpl$1.lambda$null$80(SampCallbackManagerImpl.java:60) [22:41:26][ERROR][err] at net.gtaun.shoebill.util.TryUtils.tryTo(TryUtils.java:21) [22:41:26][ERROR][err] at net.gtaun.shoebill.util.TryUtils.tryTo(TryUtils.java:14) [22:41:26][ERROR][err] at net.gtaun.shoebill.samp.SampCallbackManagerImpl$1.lambda$onAmxLoad$81(SampCallbackManagerImpl.java:60) [22:41:26][ERROR][err] at java.util.stream.ForEachOps$ForEachOp$OfRef.accept(Unknown Source) [22:41:26][ERROR][err] at java.util.stream.ReferencePipeline$2$1.accept(Unknown Source) [22:41:26][ERROR][err] at java.util.concurrent.ConcurrentLinkedQueue$CLQSpliterator.forEachRemaining(Unknown Source) [22:41:26][ERROR][err] at java.util.stream.AbstractPipeline.copyInto(Unknown Source) [22:41:26][ERROR][err] at java.util.stream.AbstractPipeline.wrapAndCopyInto(Unknown Source) [22:41:26][ERROR][err] at java.util.stream.ForEachOps$ForEachOp.evaluateSequential(Unknown Source) [22:41:26][ERROR][err] at java.util.stream.ForEachOps$ForEachOp$OfRef.evaluateSequential(Unknown Source) [22:41:26][ERROR][err] at java.util.stream.AbstractPipeline.evaluate(Unknown Source) [22:41:26][ERROR][err] at java.util.stream.ReferencePipeline.forEach(Unknown Source) [22:41:26][ERROR][err] at net.gtaun.shoebill.samp.SampCallbackManagerImpl$1.onAmxLoad(SampCallbackManagerImpl.java:60)
SA-MP Dedicated Server ---------------------- v0.3.7-R2, ©2005-2015 SA-MP Team [16:58:17] filterscripts = "" (string) [16:58:17] [16:58:17] Server Plugins [16:58:17] -------------- [16:58:17] Loading plugin: Shoebill [16:58:17] Failed. [16:58:17] Loaded 0 plugins. [16:58:17] [16:58:17] Filterscripts [16:58:17] --------------- [16:58:17] Loaded 0 filterscripts. [16:58:17] Number of vehicle models: 0