Juegomania
Bienvenido de nuevo al foro, ¡Que la pases bien =)!

Agregar Synapsis al [ZP]

Ver el tema anterior Ver el tema siguiente Ir abajo

Agregar Synapsis al [ZP]

Mensaje por sebas el Dom Ene 03, 2010 5:39 pm

Hola, ahora les voy a
enseñar como agregarle el modo Synapsis al zombie plague. Todos los
links los voy a dejar alfinal dela pag, con 3 mirror, rapid, o mega.

Lo primero es agarrar el archivo zombie_plague40.sma.


Buscamos






// Game modes
enum
{
MODE_NONE = 0,
MODE_INFECTION,
MODE_NEMESIS,
MODE_SURVIVOR,
MODE_SWARM,
MODE_MULTI,
MODE_PLAGUE
}








Y le agregamos un MODE_ mas, osea en nuestro
caso si queremos agregarle el synapsis, y ay que agregarle la coma al
MODE_PLAGUE, le ponemos







MODE_SYNAPSIS








Quedaria:






// Game modes
enum
{
MODE_NONE = 0,
MODE_INFECTION,
MODE_NEMESIS,
MODE_SURVIVOR,
MODE_SWARM,
MODE_MULTI,
MODE_PLAGUE,
MODE_SYNAPSIS
}








ahora vamos a






// Game Vars








Y abajo de







new g_nemround // nemesis round








le ponemos







new g_synapsisround // synapsis round
new Float:g_teams_i // delay between Team Change messages








eso seria para despues convocarlo en otras opciones

ahora vamos a

[PHP]// CVAR pointers[PHP]

y despues del texto







cvar_nvgcolor[3], cvar_nemnvgcolor[3], cvar_humnvgcolor[3], cvar_flashcolor[3],








ponemos







cvar_synapsis,cvar_synapsischance,cvar_synapsisminplayers,cvar_synapsisratio








eso agrega los cvar, osea por ejemplo un cvar es sv_airaccelerate 100
ahora vamos a






// Admin commands








y abajo de







register_concmd("zp_survivor", "cmd_survivor", ACCESS_FLAG, " - Turn someone into a Survivor")








Ponemos







register_concmd("zp_synapsis", "cmd_synapsis", ACCESS_FLAG, " - Start synapsis Mode")








eso seria la funcion de zp_synapsis, osea cuando le den a
zp_synapsis va a empezar la ronda synapsis, pero el cmd_synapsis que
es, es la funcion que va a realizar zp_synapsis, pero que despues se
configura, sigamos

abajo de







// CVARS - Survivor








y abajo de

// CVARS - Survivor






cvar_surv = register_cvar("zp_surv_enabled", "1")
cvar_survchance = register_cvar("zp_surv_chance", "20")
cvar_survminplayers = register_cvar("zp_surv_min_players", "0")
cvar_survhp = register_cvar("zp_surv_health", "0")
cvar_survbasehp = register_cvar("zp_surv_base_health", "0")
cvar_survspd = register_cvar("zp_surv_speed", "230")
cvar_survgravity = register_cvar("zp_surv_gravity", "1.25")
cvar_survglow = register_cvar("zp_surv_glow", "1")
cvar_survaura = register_cvar("zp_surv_aura", "1")
cvar_survpainfree = register_cvar("zp_surv_painfree", "1")
cvar_survignorefrags = register_cvar("zp_surv_ignore_frags", "1")
cvar_survignoreammo = register_cvar("zp_surv_ignore_rewards", "1")
cvar_survweapon = register_cvar("zp_surv_weapon", "weapon_m249")








agregamos los cvars del synapsis







// CVARS - Synapsis Mode
cvar_synapsis = register_cvar("zp_synapsis_enabled", "1")
cvar_synapsischance = register_cvar("zp_synapsis_chance", "20")
cvar_synapsisminplayers = register_cvar("zp_synapsis_min_players", "9")
cvar_synapsisratio = register_cvar("zp_synapsis_ratio", "0.5")








ahora vamos a






// New round starting








y abajo de







g_plagueround = false








agregamos que la verdad no se para que sirve , pero se que se tiene que poner xd







g_synapsisround = false








ahora vamos a







// zp_survivor [target]








abajo de






// zp_survivor [target]
public cmd_survivor(id, level, cid)
{
// Check for access flag
if (!cmd_access(id, level, cid, 2))
return
PLUGIN_HANDLED;

// Retrieve arguments
static arg[32], player
read_argv
(1, arg, sizeof arg - 1)
player = cmd_target(id, arg, CMDTARGET_ONLY_ALIVE | CMDTARGET_ALLOW_SELF)

// Invalid target
if (!player) return PLUGIN_HANDLED;

// Target not allowed to be survivor
if (!allowed_survivor(player))
{
client_print(id, print_console, "[ZP] %L", id, "CMD_NOT")
return
PLUGIN_HANDLED;
}

command_survivor(id, player)

return
PLUGIN_HANDLED;
}








Ahora la segunda parte porque no entra... ejej =)



Última edición por sebas el Dom Ene 03, 2010 5:45 pm, editado 1 vez

_________________

sebas
Admin
Admin

Mensajes : 105
Puntos : 130
Fecha de inscripción : 22/12/2009
Edad : 19
Localización : Buenos Aires, Arg

HP
HP:
100/100  (100/100)

http://juegomania.superforo.net

Volver arriba Ir abajo

2da parte Agregarle el modo synapsis al [ZP]

Mensaje por sebas el Dom Ene 03, 2010 5:42 pm

ahora vamos a







// New round starting








y abajo de







g_plagueround = false








agregamos que la verdad no se para que sirve , pero se que se tiene que poner xd






g_synapsisround = false








ahora vamos a







// zp_survivor [target]








abajo de







// zp_survivor [target]
public cmd_survivor(id, level, cid)
{
// Check for access flag
if (!cmd_access(id, level, cid, 2))
return
PLUGIN_HANDLED;

// Retrieve arguments
static arg[32], player
read_argv
(1, arg, sizeof arg - 1)
player = cmd_target(id, arg, CMDTARGET_ONLY_ALIVE | CMDTARGET_ALLOW_SELF)

// Invalid target
if (!player) return PLUGIN_HANDLED;

// Target not allowed to be survivor
if (!allowed_survivor(player))
{
client_print(id, print_console, "[ZP] %L", id, "CMD_NOT")
return
PLUGIN_HANDLED;
}

command_survivor(id, player)

return
PLUGIN_HANDLED;
}








agregamos la funcion de la que hable antes, osea el cmd







// zp_synapsis
public cmd_synapsis(id, level, cid)
{
// Check for access flag
if (!cmd_access(id, level, cid, 1))
return
PLUGIN_HANDLED;

// Swarm mode not allowed
if (!allowed_swarm())
{
client_print(id, print_console, "[ZP] %L", id, "CMD_NOT")
return
PLUGIN_HANDLED;
}

command_synapsis(id)

return
PLUGIN_HANDLED;
}








ahora vamos a







// Round start forward








y abajo de







ExecuteForward(g_fwRoundStart, g_fwDummyResult, MODE_SURVIVOR, forward_id);
}








agregamos lo que seria lo que tiene que hacer cuando se activa el
modo, por ejemplo en el modo assasin tiene que elegir a alguien en modo
assasin y al resto ponerlos de humanos, o en el modo Nemesis, sabe que
tiene que elegir un Nemesis, el resto humanos, hacer sonar un sonido,
poner un cartel de mensaje en el medio que lo puedan ver todos, y asi,
bueno

agregamos







else if ((mode == MODE_NONE && (!preventconsecutive || g_lastmode != MODE_SYNAPSIS) && random_num(1, get_pcvar_num(cvar_synapsischance)) == get_pcvar_num(cvar_synapsis) && floatround((iPlayersnum-2)*get_pcvar_float(cvar_synapsisratio), floatround_ceil) >= 1 && iPlayersnum >= get_pcvar_num(cvar_synapsisminplayers)) || mode == MODE_SYNAPSIS)
{
//Synapsis mode
g_plagueround = true
g_synapsisround
= true

// Turn 3 into a nemesis
id = fnGetRandomAlive(random_num(1, iPlayersnum))
zombieme(id, 0, 1, 0)
id = fnGetRandomAlive(random_num(1, iPlayersnum))
if (!
g_nemesis[id])
{
zombieme(id, 0, 1, 0)
}
else
{
id = fnGetRandomAlive(random_num(1, iPlayersnum))
zombieme(id, 0, 1, 0)
}
if (!
g_nemesis[id])
{
zombieme(id, 0, 1, 0)
}
else
{
id = fnGetRandomAlive(random_num(1, iPlayersnum))
zombieme(id, 0, 1, 0)
}
// Finish

// Turn 6 into survivor
if (!g_nemesis[id])
{
humanme(id, 1) //1er survi
}
id = fnGetRandomAlive(random_num(1, iPlayersnum))
if (!
g_nemesis[id])
{
humanme(id, 1) //1er survi
}
id = fnGetRandomAlive(random_num(1, iPlayersnum))
if (!
g_nemesis[id])
{
humanme(id, 1) //1er survi
}
id = fnGetRandomAlive(random_num(1, iPlayersnum))
if (!
g_nemesis[id])
{
humanme(id, 1) //1er survi
}
id = fnGetRandomAlive(random_num(1, iPlayersnum))
if (!
g_nemesis[id])
{
humanme(id, 1) //1er survi
}
id = fnGetRandomAlive(random_num(1, iPlayersnum))
if (!
g_nemesis[id])
{
humanme(id, 1) //1er survi
}
// Finish
for (id = 1; id <= g_maxplayers; id++)
{
// Only those of them who arent zombies or survivor
if (!is_user_alive(id) || g_nemesis[id] )
continue
// Remove previous tasks
remove_task(id+TASK_TEAM)
fm_set_user_team(id, CS_TEAM_CT)
set_task(0.1+g_teams_i, "fm_set_user_team_msg", id+TASK_TEAM)
g_teams_i += 0.1; // increase teams task counter
}
// Play plague sound
PlaySound(sound_plague[random_num(0, sizeof sound_plague -1)]);

// Show Plague HUD notice
set_hudmessage(0, 50, 200, -1.0, 0.17, 1, 0.0, 5.0, 1.0, 1.0, -1)
ShowSyncHudMsg(0, g_MsgSync, "%L", LANG_PLAYER, "NOTICE_SYNAPSIS")

// Round start forward
ExecuteForward(g_fwRoundStart, g_fwDummyResult, MODE_SYNAPSIS, 0);
}








quedaria







// Round start forward
ExecuteForward(g_fwRoundStart, g_fwDummyResult, MODE_SURVIVOR, forward_id);
}
else if ((
mode == MODE_NONE && (!preventconsecutive || g_lastmode != MODE_SYNAPSIS) && random_num(1, get_pcvar_num(cvar_synapsischance)) == get_pcvar_num(cvar_synapsis) && floatround((iPlayersnum-2)*get_pcvar_float(cvar_synapsisratio), floatround_ceil) >= 1 && iPlayersnum >= get_pcvar_num(cvar_synapsisminplayers)) || mode == MODE_SYNAPSIS)
{
//Synapsis mode
g_plagueround = true
g_synapsisround
= true

// Turn 3 into a nemesis
id = fnGetRandomAlive(random_num(1, iPlayersnum))
zombieme(id, 0, 1, 0)
id = fnGetRandomAlive(random_num(1, iPlayersnum))
if (!
g_nemesis[id])
{
zombieme(id, 0, 1, 0)
}
else
{
id = fnGetRandomAlive(random_num(1, iPlayersnum))
zombieme(id, 0, 1, 0)
}
if (!
g_nemesis[id])
{
zombieme(id, 0, 1, 0)
}
else
{
id = fnGetRandomAlive(random_num(1, iPlayersnum))
zombieme(id, 0, 1, 0)
}
// Finish

// Turn 6 into survivor
if (!g_nemesis[id])
{
humanme(id, 1) //1er survi
}
id = fnGetRandomAlive(random_num(1, iPlayersnum))
if (!
g_nemesis[id])
{
humanme(id, 1) //1er survi
}
id = fnGetRandomAlive(random_num(1, iPlayersnum))
if (!
g_nemesis[id])
{
humanme(id, 1) //1er survi
}
id = fnGetRandomAlive(random_num(1, iPlayersnum))
if (!
g_nemesis[id])
{
humanme(id, 1) //1er survi
}
id = fnGetRandomAlive(random_num(1, iPlayersnum))
if (!
g_nemesis[id])
{
humanme(id, 1) //1er survi
}
id = fnGetRandomAlive(random_num(1, iPlayersnum))
if (!
g_nemesis[id])
{
humanme(id, 1) //1er survi
}
// Finish
for (id = 1; id <= g_maxplayers; id++)
{
// Only those of them who arent zombies or survivor
if (!is_user_alive(id) || g_nemesis[id] )
continue
// Remove previous tasks
remove_task(id+TASK_TEAM)
fm_set_user_team(id, CS_TEAM_CT)
set_task(0.1+g_teams_i, "fm_set_user_team_msg", id+TASK_TEAM)
g_teams_i += 0.1; // increase teams task counter
}
// Play plague sound
PlaySound(sound_plague[random_num(0, sizeof sound_plague -1)]);

// Show Plague HUD notice
set_hudmessage(0, 50, 200, -1.0, 0.17, 1, 0.0, 5.0, 1.0, 1.0, -1)
ShowSyncHudMsg(0, g_MsgSync, "%L", LANG_PLAYER, "NOTICE_SYNAPSIS")

// Round start forward
ExecuteForward(g_fwRoundStart, g_fwDummyResult, MODE_SYNAPSIS, 0);
}








ahora vamos a







// Admin Command. zp_survivor








y abajo de







// Admin Command. zp_survivor
command_survivor(id, player)
{
static
name1[32], name2[32]
get_user_name(id, name1, sizeof name1 - 1)
get_user_name(player, name2, sizeof name2 - 1)

// Show activity?
switch (get_pcvar_num(cvar_showactivity))
{
case
1: client_print(0, print_chat, "ADMIN - %s %L", name2, LANG_PLAYER, "CMD_SURVIVAL")
case
2: client_print(0, print_chat, "ADMIN %s - %s %L", name1, name2, LANG_PLAYER, "CMD_SURVIVAL")
}

// Log to Zombie Plague log file?
if (get_pcvar_num(cvar_logcommands))
{
static
logdata[100], authid[32], ip[16]
get_user_authid(id, authid, sizeof authid - 1)
get_user_ip(id, ip, sizeof ip - 1, 1)
formatex(logdata, sizeof logdata - 1, "ADMIN %s <%s><%s> - %s %L (Players: %d/%d)", name1, authid, ip, name2, LANG_SERVER,"CMD_SURVIVAL", fnGetPlaying(), g_maxplayers)
log_to_file("zombieplague.log", logdata)
}

// Turn into a Survivor
remove_task(TASK_MAKEZOMBIE)
make_a_zombie(MODE_SURVIVOR, player)
}








le agregamos el comando al admin osea lo que tiene que acer al el escribir zp_synapsis







// Admin Command: zp_synapsis
command_synapsis(id)
{
static
name1[32]
get_user_name(id, name1, sizeof name1 - 1)

// Show activity?
switch (get_pcvar_num(cvar_showactivity))
{
case
1: client_print(0, print_chat, "ADMIN - %L", LANG_PLAYER, "CMD_SYNAPSIS")
case
2: client_print(0, print_chat, "ADMIN %s - %L", name1, LANG_PLAYER, "CMD_SYNAPSIS")
}

// Log to Zombie Plague log file?
if (get_pcvar_num(cvar_logcommands))
{
static
logdata[100], authid[32], ip[16]
get_user_authid(id, authid, sizeof authid - 1)
get_user_ip(id, ip, sizeof ip - 1, 1)
formatex(logdata, sizeof logdata - 1, "ADMIN %s <%s><%s> - %L (Players: %d/%d)", name1, authid, ip, LANG_SERVER, "CMD_SWARM", fnGetPlaying(), g_maxplayers)
log_to_file("zombieplague.log", logdata)
}

// Call Swarm Mode
remove_task(TASK_MAKEZOMBIE)
make_a_zombie(MODE_SYNAPSIS, 0)
}








ahora vamos a







// Give the survivor a bright light








y cambiamos






if (get_pcvar_num(cvar_survaura)) set_pev(id, pev_effects, pev(id, pev_effects) | EF_BRIGHTLIGHT)








por







if (!g_synapsisround)
{
if (
get_pcvar_num(cvar_survaura)) set_pev(id, pev_effects, pev(id, pev_effects) | EF_BRIGHTLIGHT)
}









Descargas:

Rapidshare:
Zombie_Plague40.sma

Megaupload:
Zombie_Plague40.sma

_________________

sebas
Admin
Admin

Mensajes : 105
Puntos : 130
Fecha de inscripción : 22/12/2009
Edad : 19
Localización : Buenos Aires, Arg

HP
HP:
100/100  (100/100)

http://juegomania.superforo.net

Volver arriba Ir abajo

Re: Agregar Synapsis al [ZP]

Mensaje por mati12 el Lun Ene 18, 2010 2:50 pm

oh muchas gracias no sabia qe habia qe hacer tantas cosas xD

mati12

Mensajes : 53
Puntos : 75
Fecha de inscripción : 02/01/2010
Localización : Boulogne

HP
HP:
90/100  (90/100)

Volver arriba Ir abajo

Re: Agregar Synapsis al [ZP]

Mensaje por flames18 el Miér Abr 20, 2011 12:43 am

muy buen tuto me ayudaste lo estaba buscando a este mod jeje king

flames18

Mensajes : 1
Puntos : 0
Fecha de inscripción : 13/04/2011

Volver arriba Ir abajo

Re: Agregar Synapsis al [ZP]

Mensaje por Contenido patrocinado Hoy a las 11:05 am


Contenido patrocinado


Volver arriba Ir abajo

Ver el tema anterior Ver el tema siguiente Volver arriba

- Temas similares

 
Permisos de este foro:
No puedes responder a temas en este foro.