@Override
/**
* La ruleta rusa. A petición de [-BIKUTORU-].
* Formato de llamada: !ruleta (sin argumentos)
*/
public void ruleta (String channel, String sender, String [] args) {
if (sender.compareToIgnoreCase("fiber-") == 0) return;
try {
final int CARGADOR = 6;
ruletaDB.update(channel, sender, bala.nextInt(CARGADOR)!=0);
int puntos = ruletaDB.queryPuntos(channel, sender); // puntos -> los de la tirada actual: +1 ó 0.
int record = ruletaDB.queryRecord(channel, sender); // récord -> Disparos consecutivos con vida. Récord absoluto.
// Implementar turnos.
if (puntos == 0) {
sendMessage(channel, colourNick(sender) +fg(NORMAL)+ " dispara con miedo la pistola... " +fg(RED)+ "BANG!!!!!!");
sendMessage(channel, "Los sesos de " + colourNick(sender) + fg(NORMAL) +
" están desparramados por todo el canal " + colourNick(channel) + fg(NORMAL) + ".");
} else {
String recordman = ruletaDB.queryRecord(channel); // Debería devolver un objeto (String, int)
int recordCanal = ruletaDB.queryRecord(channel, recordman);
sendMessage(channel, colourNick(sender) + fg(NORMAL) + " dispara la pistola con decisión... "
+ fg(GREEN) + " CLICK!");
sendMessage(channel, colourNick(sender) + fg(NORMAL) +" sigue con vida tras " + fg(GREEN) + puntos + fg(NORMAL) +
" disparo" + (puntos > 1 ? "s" : "") + " / Récord: " + fg(GREEN) + record + fg(NORMAL) +
" / Récord de " + colourNick(channel) + ": " + colourNick(recordman) + fg(NORMAL) + ": " +
fg(GREEN) + recordCanal + fg(NORMAL) + ".");
// estenick sigue con vida tras nn disparos / Récord: nn / Récord #futuros-opciones: estenick nn.
}
} catch (SQLException e) {
sendMessage(channel, "El árbitro se ha dado cuenta de que la pistola estaba trucada y ¡declara la prueba nula!");
sendError(e, sender, null);
}
}