Nesse tutorial vou ensinar como criar um sistema de presentes com comando através do console, uma ótima forma de entregar um premio de algum evento ou até mesmo a entrega de um item VIP por exemplo.
Ir para "SQLManager.java"
Pesquise por: RS.getString("enemy"),
Tem 3 linhas iguais essas em SQL, coloque esse code em baixo de todos:
Agora vá para "Compte.java"
Pesquise por: private Map<Integer, ArrayList<HDV.HdvEntry>> _hdvsItems;
Coloque abaixo:
Pesquise por:
public boolean isMuted() {
return this._mute;
}
Coloque abaixo:
"Vá para Action.java"
procure por case 103 se tiver nas suas action ou se não apenas coloque na sequencia:
Agora vamos criar o comando no console, um para você mandar o presente para o player e outro para mandar algo para o server todo.
"Vá para Commands.java"
O código foi baseado no Mustemu e está funcional.
Compile o projeto e crie a tabela "cadeau" em accounts.
é só criar na tabela clickando em Design Table
coloca na tabela cadeau assim
Imagem:
[Tens de ter uma conta e sessão iniciada para poderes visualizar esta imagem]
Ir para "SQLManager.java"
Pesquise por: RS.getString("enemy"),
Tem 3 linhas iguais essas em SQL, coloque esse code em baixo de todos:
- Código:
RS.getInt("cadeau"));
public static void ATUALIZAR_PRESENTE(Compte cuenta) {
String baseQuery = "UPDATE accounts SET `cadeau` = 0 WHERE `guid` = ?;";
try {
PreparedStatement p = newTransact(baseQuery, othCon);
p.setInt(1, cuenta.get_GUID());
p.executeUpdate();
closePreparedStatement(p);
} catch (SQLException e) {
System.out.println("SQL ERROR: " + e.getMessage());
System.out.println("Query: " + baseQuery);
e.printStackTrace();
}
Agora vá para "Compte.java"
Pesquise por: private Map<Integer, ArrayList<HDV.HdvEntry>> _hdvsItems;
Coloque abaixo:
- Código:
private int _cadeau;
Pesquise por:
public boolean isMuted() {
return this._mute;
}
Coloque abaixo:
- Código:
public int getCadeau() {
return this._cadeau;
}
public void setCadeau() {
this._cadeau = 0;
}
public void setCadeau(int cadeau) {
this._cadeau = cadeau;
}
"Vá para Action.java"
procure por case 103 se tiver nas suas action ou se não apenas coloque na sequencia:
- Código:
case 104:
int item = Integer.parseInt(this.args);
perso.get_compte().setCadeau(item);
SocketManager.GAME_SEND_MESSAGE(perso, "Você recebeu um presente na sua conta!", Ancestra.CONFIG_MOTD_COLOR);
break;
Agora vamos criar o comando no console, um para você mandar o presente para o player e outro para mandar algo para o server todo.
"Vá para Commands.java"
- Código:
if (command.equalsIgnoreCase("PRESENTE")) {
int regalo = 0;
try {
regalo = Integer.parseInt(infos[1]); } catch (Exception localException21) {
}
Personnage objetivo = this._perso;
if (infos.length > 2) {
objetivo = World.getPersoByName(infos[2]);
if (objetivo == null) {
str = "O personagem não está conectado.";
SocketManager.GAME_SEND_CONSOLE_MESSAGE_PACKET(this._out, str);
return;
}
}
objetivo.get_compte().setCadeau(regalo);
SocketManager.GAME_SEND_CONSOLE_MESSAGE_PACKET(this._out, "Você entregou " + regalo + " à " + objetivo.get_name());
} else if (command.equalsIgnoreCase("PRESENTEALL")) {
int regalo = 0;
try {
regalo = Integer.parseInt(infos[1]); } catch (Exception localException22) {
}
for (Personnage pj : World.getOnlinePersos()) {
pj.get_compte().setCadeau(regalo);
}
SocketManager.GAME_SEND_CONSOLE_MESSAGE_PACKET(this._out, "Você entregou " + regalo + " à todos os jogadores online.");
O código foi baseado no Mustemu e está funcional.
Compile o projeto e crie a tabela "cadeau" em accounts.
é só criar na tabela clickando em Design Table
coloca na tabela cadeau assim
- Código:
name : cadeau
type : varchar
length : 255
Imagem:
[Tens de ter uma conta e sessão iniciada para poderes visualizar esta imagem]