Os propongo una solución para arreglar el bug el cual permitía revivir siendo espectador y arruinar la experiencia a los demás, cuya solución temporal anula el uso del revivir a cambio de puntos, de una forma mas elegante.
He creado un sencillo plugin que detecta cuando un usuario spawnea (revive), comprueba si es espectador, y en tal caso, lo mata. No afecta a los CT ni T.
Con la implementación de este plugin se podría recuperar la compra del revivir en la tienda y así dar mas uso a los puntos.
Dejo adjunto el CÓDIGO FUENTE, y añado el código también al post.
Si teneis alguna duda o sugerencia de como mejorarlo dejadmela aqui abajo, por supuesto.
#include <amxmodx>
#include <amxmisc>
#include <hamsandwich>
public plugin_init() {
register_plugin("Anti Spec Bug", "1.0", "ojalamorirme")
RegisterHam(Ham_Spawn, "player", "fwPlayerSpawnPost", 1) // Registra el evento de spawnear
}
public fwPlayerSpawnPost(id){
if(get_user_team(id) == 3){ // Comprueba si el jugador está en el equipo de espectadores
user_silentkill(id) // El usuario es asesinado por el servidor sin loguearlo en el registro de muertes (esquina superior derecha)
client_print(id, print_chat,"[DG] Lo siento, no puedes revivir siendo espectador!");
}
return PLUGIN_HANDLED;
}
antispecbug.sma