[英]Type mismatch: cannot convert from element type Object to Player
這是代碼。 不知道怎么了。 發生在說
for (Player players : World.getPlayers()) {
if (cmd[0].equalsIgnoreCase("ticket")) {
if (player.getRights() > 0) {
if (World.getTicketList().size() == 0) {
player.getPackets().sendGameMessage("No one needs help so sit back and relax.");
return true;
}
String username = World.getTicketList().get(0).toString();
Player p2 = World.getPlayer(username);
player.setNextWorldTile(p2);
p2.getPackets().sendGameMessage("Please ask your question to " + Misc.formatPlayerNameForDisplay(player.getUsername()) + ".");
World.remoteTicket(username.toLowerCase());
return true;
}
if (World.getTicketList().contains(player.getUsername().toLowerCase())) {
player.getPackets().sendGameMessage("You already submitted a ticket.", true);
return true;
}
World.addToTicket(player.getUsername());
player.getPackets().sendGameMessage("Your ticket has been submitted. Your ticket number is " + World.getTicketId(player.getUsername()) + 1 + ".");
player.getPackets().sendGameMessage("Make sure that you are not in a PvP area..");
String username = World.getTicketList().get(0).toString();
for (Player players : World.getPlayers()) {
if (player.getRights() > 0) {
players.getPackets().sendGameMessage(Misc.formatPlayerNameForDisplay(player.getUsername()) + " has issued a assistance request.", true);
}
}
return true;
}
}
編輯:
這是getPlayers的代碼
public static final EntityList getPlayers() {
return players;
}
確保World.getPlayers()返回的任何內容都實現java.lang.Iterable
問題在for循環中。 更改為
for (Object player : World.getPlayers()) {
if (((Player)player).getRights() > 0)
players.getPackets().sendGameMessage(Misc.formatPlayerNameForDisplay(player.getUsername())+" has issued a assistance request.", true);
}
}
那應該工作。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.