Este plugin consiste en lanzar una ronda de evento al iniciar una ronda que da un premio en "pts" (o su moneda), al que haya matado mas durante dicho evento, es adaptable a cualquier modo que tenga algún sistema "x/y".
Es obligatorio modificar la variable "pts[33]" por su variable de su sistema o removerlo en caso de tener algo relacionado por natives.
v1.0 (Linea 13 & 46)
v1.1 (Linea 11 & 63)
Es obligatorio modificar la variable "pts[33]" por su variable de su sistema o removerlo en caso de tener algo relacionado por natives.
v1.0 (Linea 13 & 46)
v1.1 (Linea 11 & 63)
Codigo
v1.1
Código PHP:
/* Plugin generated by AMXX-Studio */
#include <amxmodx>
new bool:fRoundActive
new g_iMaxPlayers, g_iCreateHud[2], g_iName[33], Frags[33], iIndex, Bonus
/* Supongamos que tu moneda sea "pts" */
new pts[33]
/* ================================== */
#define MIN 1 // Minimo de "pts"
#define MAX 2 // Maximo de "pts"
#define LIMIT 100 // Limite de "pts"
#define PLAYERS 6 // Jugadores necesitados
#define TASK 56465
public plugin_init()
{
register_plugin("OsweRRR", "1.1", "Ronda de evento")
register_event("HLTV", "Round_Start", "a", "1=0", "2=0")
register_logevent("RoundEnd", 2, "1=Round_End")
register_event("DeathMsg", "RegisterDeath", "a")
g_iMaxPlayers = get_maxplayers();
g_iCreateHud[0] = CreateHudSyncObj();
g_iCreateHud[1] = CreateHudSyncObj();
}
public RegisterDeath()
{
new k = read_data(1)
new v = read_data(2)
if(!is_user_connected(k) || is_user_connected(v) && k == v)
return
if(fRoundActive)
Frags[k] += 1
}
public RoundEnd()
{
if(fRoundActive)
{
remove_task(TASK)
fRoundActive = false
if(equali(g_iName, "Nadie"))
{
Bonus = 0
client_print(0, print_chat, "Nadie pudo ganar la ronda de evento.")
}
else
{
pts[iIndex] += Bonus // <- Suponiendo que tu moneda es "pts"
client_print(0, print_chat, "%s Gano el evento y se lleva el premio de %d pts.", g_iName, Bonus)
Bonus = 0
arrayset(Frags, 0, 33)
}
}
if(get_playersnum() < PLAYERS)
return
new i[2]
i[0] = random_num(0, 3)
i[1] = random_num(0, 3)
if(i[0] == i[1])
fRoundActive = true
}
public Round_Start()
{
if(task_exists(TASK))
{
fRoundActive = false
remove_task(TASK)
}
if(fRoundActive)
{
Bonus = 0
arrayset(Frags, 0, 33)
set_task(1.0, "HudEvent", TASK, .flags="b")
client_print(0, print_chat, "Inicio la ronda de evento, Ganas si tienes mas asesinatos.")
}
}
public HudEvent()
{
for(new i = 1; i <= g_iMaxPlayers; i++)
{
if(!is_user_connected(i))
continue;
if(Frags[iIndex] <= Frags[i])
iIndex = i
}
get_user_name(iIndex, g_iName, charsmax(g_iName))
if(Bonus < LIMIT)
Bonus += random_num(MIN, MAX)
if(Frags[iIndex] == 0)
format(g_iName, charsmax(g_iName), "Nadie")
set_hudmessage(0, 255, 0, -1.0, 0.02, 1, 6.0, 1.0)
ShowSyncHudMsg(0, g_iCreateHud[0], "Jugador que esta Ganando")
set_hudmessage(255, 255, 255, -1.0, 0.05, 0, 6.0, 1.0)
ShowSyncHudMsg(0, g_iCreateHud[1], "[Frags: %i] @ %s^nPremio: %d pts.", Frags[iIndex], g_iName, Bonus)
}
Código PHP:
/* Plugin generated by AMXX-Studio */
#include <amxmodx>
#include <fun>
#include <cstrike>
new bool:fRoundActive
new g_iMaxPlayers, g_iCreateHud[2], g_iName[33], Frags, iIndex, Bonus
/* Supongamos que tu moneda sea "pts" */
new pts[33]
/* ================================== */
const TASK = 56465
public plugin_init()
{
register_plugin("OsweRRR", "1.0", "Ronda de evento")
register_event("HLTV", "Round_Start", "a", "1=0", "2=0")
register_logevent("RoundEnd", 2, "1=Round_End")
g_iMaxPlayers = get_maxplayers();
g_iCreateHud[0] = CreateHudSyncObj();
g_iCreateHud[1] = CreateHudSyncObj();
}
public RoundEnd()
{
if(fRoundActive)
{
remove_task(TASK)
fRoundActive = false
if(equali(g_iName, "Nadie"))
{
Bonus = 0
client_print(0, print_chat, "Nadie pudo ganar la ronda de evento.")
}
else
{
pts[iIndex] += Bonus // <- Suponiendo que tu moneda es "pts"
client_print(0, print_chat, "%s Gano el evento y se lleva el premio de %d pts.", g_iName, Bonus)
Bonus = 0
}
}
if(get_playersnum() < 6)
return
new i[2]
i[0] = random_num(0, 3)
i[1] = random_num(0, 3)
if(i[0] == i[1])
{
fRoundActive = true
for(new i = 1; i <= g_iMaxPlayers; i++)
{
if(!is_user_connected(i))
continue;
set_user_frags(i, 0)
cs_set_user_deaths(i, 0)
set_user_frags(i, 0)
cs_set_user_deaths(i, 0)
}
}
}
public Round_Start()
{
if(task_exists(TASK))
{
fRoundActive = false
remove_task(TASK)
}
if(fRoundActive)
{
Bonus = 0
set_task(1.0, "HudEvent", TASK, .flags="b")
client_print(0, print_chat, "Inicio la ronda de evento, Ganas si tienes mas asesinatos.")
}
}
public HudEvent()
{
for(new i = 1; i <= g_iMaxPlayers; i++)
{
if(!is_user_connected(i))
continue;
if(get_user_frags(iIndex) <= get_user_frags(i))
iIndex = i
}
Frags = get_user_frags(iIndex)
get_user_name(iIndex, g_iName, charsmax(g_iName))
Bonus += random_num(1, 5)
if(Frags == 0)
format(g_iName, charsmax(g_iName), "Nadie")
set_hudmessage(0, 255, 0, -1.0, 0.02, 1, 6.0, 1.0)
ShowSyncHudMsg(0, g_iCreateHud[0], "Jugador que esta Ganando")
set_hudmessage(255, 255, 255, -1.0, 0.05, 0, 6.0, 1.0)
ShowSyncHudMsg(0, g_iCreateHud[1], "[Frags: %i] @ %s^nPremio: %d pts.", Frags, g_iName, Bonus)
}
Feliz navidad
(18/11/2014, 05:47 PM)Neeeeeeeeeel.- escribió: Por qué necesitan una guía para todo? Meté mano y que salga lo que salga... es la mejor forma de aprender.
(16/05/2016, 11:08 PM)kikizon2 escribió: No cabe duda que tienen mierda en vez de cerebro, par de pendejos v: