Raised This Month: $51 Target: $400
 12% 

[ZP][TUT] Clases de Zombies por Nivel


  
 
 
Thread Tools Display Modes
Author Message
Kiske
Veteran Member
Join Date: May 2009
Old 11-07-2009 , 15:44   [ZP][TUT] Clases de Zombies por Nivel
#1

ATENCIÓN: No doy más soporte a esto y probablemente esté desactualizado y genere errores!



Tutorial: Agregar Niveles a las Clases de Zombies.
Descripcion: Les enseñare a Restringir los Zombies a traves de Niveles.
Tiempo Estimado en Hacerlo: De 15 a 20 Minutos.
Notas:
Reemplazar todas las "variable_de_nivel" por su Variable.
Si tu variable de Nivel, es "g_playerlevel", entonces reemplazas "variable_de_nivel" por "g_playerlevel[id]"

1. Abrimos el Zombie Plague.

2.
Buscamos la siguiente linea:
PHP Code:
// Zombie Classes vars 

3.
Agregamos lo siguiente:
PHP Code:
new g_zclass_lvl[MAX_ZOMBIE_CLASSSES

4.
Buscamos la siguiente linea:
PHP Code:
public show_menu_zclass(id

5.
En donde dice:
PHP Code:
for (class = ZCLASSES_STARTID; class < min(ZCLASSES_STARTID+7g_zclass_i); class++) 
Agregamos lo siguiente:
PHP Code:
if (variable_de_nivel[id] >= g_zclass_lvl[class])
        {
            if (class == 
g_zombieclassnext[id])
                
len += formatex(menu[len], sizeof menu len"\d%d. %s %s^n", class-ZCLASSES_STARTID+1g_zclass_name[class], g_zclass_info[class])
            else
                
len += formatex(menu[len], sizeof menu len"\r%d.\w %s\y %s^n", class-ZCLASSES_STARTID+1g_zclass_name[class], g_zclass_info[class])
        }
        else
            
len += formatex(menu[len], sizeof menu len"\r%d.\d %s %s\r (Nivel Requerido: %d)^n", class-ZCLASSES_STARTID+1g_zclass_name[class], g_zclass_info[class], g_zclass_lvl[class]) 
Nos quedaria asi:
PHP Code:
// 1-7. Class List
    
for (class = ZCLASSES_STARTID; class < min(ZCLASSES_STARTID+7g_zclass_i); class++)
    {
        if (
variable_de_nivel[id] >= g_zclass_lvl[class])
        {
            if (class == 
g_zombieclassnext[id])
                
len += formatex(menu[len], sizeof menu len"\d%d. %s %s^n", class-ZCLASSES_STARTID+1g_zclass_name[class], g_zclass_info[class])
            else
                
len += formatex(menu[len], sizeof menu len"\r%d.\w %s\y %s^n", class-ZCLASSES_STARTID+1g_zclass_name[class], g_zclass_info[class])
        }
        else
            
len += formatex(menu[len], sizeof menu len"\r%d.\d %s %s\r (Nivel Requerido: %d)^n", class-ZCLASSES_STARTID+1g_zclass_name[class], g_zclass_info[class], g_zclass_lvl[class])
    } 

6.
Buscamos la siguiente linea:
PHP Code:
public menu_zclass(idkey

7.
En donde dice:
PHP Code:
// Store selection for the next infection
    
g_zombieclassnext[id] = ZCLASSES_SELECTION;
    
    
// Show selected zombie class info and stats
    
zp_colored_print(id"^x04[ZP]^x01 %L: %s"id"ZOMBIE_SELECT"g_zclass_name[g_zombieclassnext[id]])
    
zp_colored_print(id"^x04[ZP]^x01 %L: %d %L: %d %L: %d %L: %d%%"id"ZOMBIE_ATTRIB1"g_zclass_hp[g_zombieclassnext[id]], id"ZOMBIE_ATTRIB2"g_zclass_spd[g_zombieclassnext[id]],
    
id"ZOMBIE_ATTRIB3"floatround(g_zclass_grav[g_zombieclassnext[id]]*800), id"ZOMBIE_ATTRIB4"floatround(g_zclass_kb[g_zombieclassnext[id]]*100))
    
    return 
PLUGIN_HANDLED
Reemplazamos todo eso, por esto:
PHP Code:
if (variable_de_nivel[id] >= g_zclass_lvl[ZCLASSES_SELECTION])
    {
        
// Store selection for the next infection
        
g_zombieclassnext[id] = ZCLASSES_SELECTION;
        
        
// Show selected zombie class info and stats
    
zp_colored_print(id"^x04[ZP]^x01 %L: %s"id"ZOMBIE_SELECT"g_zclass_name[g_zombieclassnext[id]])
    
zp_colored_print(id"^x04[ZP]^x01 %L: %d %L: %d %L: %d %L: %d%%"id"ZOMBIE_ATTRIB1"g_zclass_hp[g_zombieclassnext[id]], id"ZOMBIE_ATTRIB2"g_zclass_spd[g_zombieclassnext[id]],
    
id"ZOMBIE_ATTRIB3"floatround(g_zclass_grav[g_zombieclassnext[id]]*800), id"ZOMBIE_ATTRIB4"floatround(g_zclass_kb[g_zombieclassnext[id]]*100))
    }
    else
    {
        
zp_colored_print(id"^x04[ZP]^x01 No tenes Nivel suficiente para elegir esta Clase de Zombie. [Nivel Requerido: %d]"g_zclass_lvl[ZCLASSES_SELECTION])
        return 
PLUGIN_HANDLED;
    }
    
    return 
PLUGIN_HANDLED

8.
Buscamos la siguiente linea:
PHP Code:
public native_register_zombie_class(const name[], const info[], const model[], const clawmodel[], hpspeedFloat:gravityFloat:knockback

9.
Adentro de esa Native, editamos lo siguiente:
El titulo:
PHP Code:
public native_register_zombie_class(const name[], const info[], const model[], const clawmodel[], hpspeedFloat:gravityFloat:knockback
-->
PHP Code:
public native_register_zombie_class(const name[], const info[], const model[], const clawmodel[], hpspeedFloat:gravityFloat:knockbacklevel
Abajo de donde dice:
PHP Code:
g_zclass_kb[g_zclass_i] = knockback 
Agregamos:
PHP Code:
g_zclass_lvl[g_zclass_i] = level 

10.
Abrimos el zombieplague.inc y editamos la linea:
PHP Code:
native zp_register_zombie_class(const name[], const info[], const model[], const clawmodel[], hpspeedFloat:gravityFloat:knockback
-->
PHP Code:
native zp_register_zombie_class(const name[], const info[], const model[], const clawmodel[], hpspeedFloat:gravityFloat:knockbacklevel
11. Listo, terminamos, ahora para elegir que Nivel queres que tenga cada Zombie, hay que editar una ultima cosa.

12.
Abrimos nuestro Plugin que contengan las Clases de Zombies.

13.
En la parte de los STATS del Zombie:
PHP Code:
new const zclass1_name[] = { "Classic Zombie" }
new const 
zclass1_info[] = { "=Balanced=" }
new const 
zclass1_model[] = { "zombie_source" }
new const 
zclass1_clawmodel[] = { "v_knife_zombie.mdl" }
const 
zclass1_health 1800
const zclass1_speed 190
const Float:zclass1_gravity 1.0
const Float:zclass1_knockback 1.0 
Hay que agregarle lo siguiente:
PHP Code:
new const zclass1_name[] = { "Classic Zombie" }
new const 
zclass1_info[] = { "=Balanced=" }
new const 
zclass1_model[] = { "zombie_source" }
new const 
zclass1_clawmodel[] = { "v_knife_zombie.mdl" }
const 
zclass1_health 1800
const zclass1_speed 190
const Float:zclass1_gravity 1.0
const Float:zclass1_knockback 1.0
const zclass1_level 

14. Por ultimo hay que editar el Registro de la Clase de Zombie.
Buscamos en ese mismo Plugin lo siguiente:
PHP Code:
zp_register_zombie_class(zclass1_namezclass1_infozclass1_modelzclass1_clawmodelzclass1_healthzclass1_speedzclass1_gravityzclass1_knockback
Y la reemplazamos por esto:
PHP Code:
zp_register_zombie_class(zclass1_namezclass1_infozclass1_modelzclass1_clawmodelzclass1_healthzclass1_speedzclass1_gravityzclass1_knockbackzclass1_level
15. El ultimo paso es Compilar y fijarse si todo anda correctamente.
Si queres que el Zombie no tenga Restriccion, pones que el Nivel requerido, sea el 0.


Nota2: Si tenes alguna DUDA, PROBLEMA o ERROR (Mientras no sea ESTUPIDO), postealo y te lo respondere lo mas rapido posible.

Nota3: Con esto que di aca, es mas que facil hacer las Clases Humanas de una forma mucho mas Corta y Sencilla, solo es cuestion de pensar y razonar.
__________________


Last edited by Kiske; 03-02-2014 at 09:04.
Kiske is offline
Send a message via Skype™ to Kiske
intoxicadooo
Veteran Member
Join Date: Mar 2009
Location: Argentina, Misiones
Old 11-07-2009 , 15:48   Re: [ES][ZP][TUT] Clases de Zombies por Nivel
#2

gracias kiske, yo lo hacia de una forma media feita, que era la de restringir armas xd!
__________________
Intoxicadooo // G^nXa
Steam:gonxa_capostrike
Msn: [email protected]
intoxicadooo is offline
Send a message via MSN to intoxicadooo
GusS15
Veteran Member
Join Date: Oct 2009
Location: Venezuela, Caracas
Old 11-07-2009 , 15:53   Re: [ES][ZP][TUT] Clases de Zombies por Nivel
#3

buen tuto kiske +k para vos

ahorita lo pruebo
GusS15 is offline
Send a message via MSN to GusS15
lucas_7_94
Leche Loco
Join Date: Mar 2009
Location: Argentina
Old 11-07-2009 , 15:53   Re: [ES][ZP][TUT] Clases de Zombies por Nivel
#4

Buen tutorial .

Segui asi Kiske.
__________________
ATWWMH - MiniDuels
Madness is like gravity, just need a little push.
lucas_7_94 is offline
Send a message via Skype™ to lucas_7_94
Raddish
BANNED
Join Date: Jul 2008
Location: Argentina
Old 11-07-2009 , 15:53   Re: [ES][ZP][TUT] Clases de Zombies por Nivel
#5

es muy en bandeja pero esta muy bueno +k
Raddish is offline
Kiske
Veteran Member
Join Date: May 2009
Old 11-07-2009 , 15:56   Re: [ES][ZP][TUT] Clases de Zombies por Nivel
#6

Quote:
Originally Posted by Raddish View Post
es muy en bandeja pero esta muy bueno +k
Si no es en bandeja entonces no tendria el PREFIX "TUT"
__________________

Kiske is offline
Send a message via Skype™ to Kiske
Raddish
BANNED
Join Date: Jul 2008
Location: Argentina
Old 11-07-2009 , 16:02   Re: [ES][ZP][TUT] Clases de Zombies por Nivel
#7

PHP Code:
g_zclass_lvl[g_zclass_i] = Lvl 
Lvl es la variable de mi nivel.. me tira error

Quote:
Welcome to the AMX Mod X 1.8.1-300 Compiler.
Copyright (c) 1997-2006 ITB CompuPhase, AMX Mod X Team

C:\Documents and Settings\CrisS\Escritorio\pstudio-0.8.3\temp369.sma(7235 -- 7239) : error 006: must be assigned to an array

1 Error.

Compilation Time: 3,60 sec
Alguna idea?, puse nivel level lvl pero tira el mismo error u.u
Raddish is offline
AfteR.
Veteran Member
Join Date: Dec 2008
Location: λ
Old 11-07-2009 , 16:02   Re: [ES][ZP][TUT] Clases de Zombies por Nivel
#8

Buen Tut.

Te daria karma pero ya sabemos que no sirve xd
AfteR. is offline
Old 11-07-2009, 16:04
metallicawOw
This message has been deleted by metallicawOw. Reason: --->
Raddish
BANNED
Join Date: Jul 2008
Location: Argentina
Old 11-07-2009 , 16:06   Re: [ES][ZP][TUT] Clases de Zombies por Nivel
#9

PHP Code:
    g_zclass_lvl[g_zclass_i] = level 
Asi es

Kiske arregla esta parte

PHP Code:
g_zclass_lvl[g_zclass_i] = lvl 
Por

PHP Code:
g_zclass_lvl[g_zclass_i] = nivel 


ya que registras , nivel en la native
Raddish is offline
nicolazo103
Veteran Member
Join Date: Jan 2009
Location: I have no fu*** idea
Old 11-07-2009 , 17:15   Re: [ES][ZP][TUT] Clases de Zombies por Nivel
#10

Te recomendaria que le agregues comentarios de para que sirve cada cosa, asi es mas facil aprender. NO me fije muy muy bien, pero por lo que vi esta bien igual no lo voy a usar porque no me gustan los lvls era solo por revisar los tut -.-"
__________________
Why do they send babies to fight me? -Heavy

nicolazo103 is offline
 



Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT -4. The time now is 22:51.


Powered by vBulletin®
Copyright ©2000 - 2024, vBulletin Solutions, Inc.
Theme made by Freecode