[ZP] Sistema de Rangos
#1
Sistema de rangos por (levels)

pueden ser por. "frags, exp, niveles, ammopacks, puntos, en fin POR LO QUE SU IMAGINACION LES DICTE"

todo en el Php

Código PHP:
#include <amxmodx> // Obviamente.
// definimos el plugin autor version balblablalblalbla
new const PLUGIN[] = "Sistema de Rangos" // balbalblalbla
new const VERSION[] = "0.0000001" // lel
new const AUTHOR[] = "amxmodx" // LOL

new g_rangos[33// la variable de los RANGOS
new const costorango[33][] = { 110203050100 // donde se almacena el COSTO de el Rango para el siguiente rango ya sea en "frags, exp, niveles, ammopacks, puntos, en fin POR LO QUE SU IMAGINACION LES DICTE"
new const RANGOS[][] = { "Rango1""Rango2""Rango3""Rango4""Rango5""Rango6" // los nombres de los rangos segun el rango que poseas valga la redudancia

public plugin_init()
{
    
register_plugin(PLUGINVERSIONAUTHOR// blablalbalblabla
}

public 
client_putinserver(id)
{
    
g_rango[id] = // pones el rango en (0 & false) para que cuando entres seas rango 1
}

Ahora donde subes de lvl (EL public donde checkea si tenes sufiencientes "ammopacks. exp. frags que se yo te sube el nivel" pones

checkrango
(id)

public 
checkrango(id)
{
    while (
TuVariableDeLevelsExpAmmopacks[id] >= costorango[g_rango[id]]) // cuando es mayor o igual al Nivel,Exp,Ammopacks Necesarios para el otro rango.
    
{
        
g_rango[id]++ // Aumenta de rango
        
client_print(id"Felicidades Eres Rango: %s"RANGOS[g_rango[id]]) // Le decimos con un mensaje el rango que posee.
    
}

Tenes una pentium 4.. ami no me engañas
Responder
#2
Código PHP:
while (TuVariableDeLevelsExpAmmopacks[id] >= costorango[g_rango[id]])
// y
new const costorango[33][] = { 110203050100 
--->
Código PHP:
while (TuVariableDeLevelsExpAmmopacks[id] >= costorango[g_rango[id]] && g_rango[id] <= sizeof RANGOS)
// y
new costorango[sizeof RANGOS] = { 110203050100 
(19/06/2014, 11:08 PM)01011001 escribió: No tiene niveles infinitos, llega hasta 2147483648 (Y despues hace un integer overflow)

(19/06/2014, 11:08 PM)[R]ak escribió: Mis conocimientos aumentaron un 500% con este post
Responder
#3
Saca el client_print del while
[TUT] Carnage

Fight

"El limite de los backdoors de gente q sabe programar como nostros lo impone nuestra maldad interior y creeme q soy muy malo en el interior"

Anónimo
Responder
#4
no quiero decir nada pero almenos da creditos a im author Guiño
#include <amxmodx> // Include necesario

new const PLUGIN[] = "Rangos (FORMA DECENTE)" // Definimos el plugin
new const VERSION[] = "0.1" // Definimos la version
new const AUTHOR[] = "Im Author" // Definimos el autor

new g_rango[33] // Almacena los rangos
new const cost_rango[] = { 1, 5 } // Los niveles de los rangos
new const RANGOS[][] = { "Scrapter", "Scripter" } // Los nombres de los rangos

public plugin_init()
{
register_plugin(PLUGIN, VERSION, AUTHOR) // Registramos el plugin - version - autor
}

public client_putinserver(id)
g_rango[id] = 0 // Seteamos el rango 0 al entrar al sv

/* Cuando sube de nivel mandamos el:

checkrango(id)*/

public checkrango(id)
{
while (g_level[id] >= cost_rango[g_rango[id]]) // Hacemos un chequeo que cuando sea mayor o igual al nivel necesario
{
g_rango[id]++ // Aumenta de rango
client_print(id, "Avanzaste al rango: %s", RANGOS[g_rango[id]]) // Le mandamos un mensajito para el rango al que subio.
}
}
Responder
#5
Pon el conde en php
[TUT] Carnage

Fight

"El limite de los backdoors de gente q sabe programar como nostros lo impone nuestra maldad interior y creeme q soy muy malo en el interior"

Anónimo
Responder
#6
Código PHP:
enum _:rango rangos_nombre[64], nivel_requerido }

new const 
rangos[][rango] =  
{
    {
"Rango 1"1},
    {
"Rango 2"2},
    {
""9999// Fix  
}

// en el public donde checkean sus niveles
while(g_level[id] >= rangos[g_rangos[id] + 1][nivel_requerido] && g_rangos[id] < rangos_maximos)
{
    
g_rangos[id]++
    
client_print(idprint_chat "Felicitaciones has ascendido al rango: %s"rangos[g_rangos[id]][rangos_nombre]); 
}

// en el hud donde muestran los datos a los players
show_hudmessage(id"[Rango: %s]"rangos[g_rangos[id]][rangos_nombre]) 

nada del otro mundo... pero ha alguien le puede servir.
Responder
#7
(05/05/2014, 10:08 PM)mongito100 escribió: Saca el client_print del while
Porq? lel
Tenes una pentium 4.. ami no me engañas
Responder
#8
(06/05/2014, 11:36 PM)alangomez2 escribió:
(05/05/2014, 10:08 PM)mongito100 escribió: Saca el client_print del while
Porq? lel

Tan simple como por q si sube 2 o mas rangos a la vez se mostraria el msj varias veces, tambien para @3mcy daimon't
[TUT] Carnage

Fight

"El limite de los backdoors de gente q sabe programar como nostros lo impone nuestra maldad interior y creeme q soy muy malo en el interior"

Anónimo
Responder
#9
mil veces he dicho como tienen que hacer el print al subir nivel.
(17/04/2015, 03:36 PM)Neeeeeeeeeel.- escribió: No se va a volver a conectar a internet en toda su puta vida... nadie sube porno a mi foro y vive para contarlo.
Responder
#10
Yo lo quiero poner para que suba rango por ammo packs pero no me funciona miren como lo hice


[code]#include <amxmodx> // Include necesario

new const PLUGIN[] = "Rangos (FORMA DECENTE)" // Definimos el plugin
new const VERSION[] = "0.1" // Definimos la version
new const AUTHOR[] = "Im Author" // Definimos el autor

new g_rango[33] // Almacena los rangos
new const cost_rango[] = { 1, 5 } // Los niveles de los rangos
new const RANGOS[][] = { "Scrapter", "Scripter" } // Los nombres de los rangos

public plugin_init()
{
register_plugin(PLUGIN, VERSION, AUTHOR) // Registramos el plugin - version - autor
}

public client_putinserver(id)
g_rango[id] = 0 // Seteamos el rango 0 al entrar al sv

/* Cuando sube de nivel mandamos el:

checkrango(id)*/

public checkrango(id)
{
while (g_ammopacks[id] >= cost_rango[g_rango[id]]) // Hacemos un chequeo que cuando sea mayor o igual al nivel necesario
{
g_rango[id]++ // Aumenta de rango
client_print(id, "Avanzaste al rango: %s", RANGOS[g_rango[id]]) // Le mandamos un mensajito para el rango al que subio.
}


Y no me sirvio alguien me da una ayuda o me dice como lo pongo por ammo packs ?
Nobato-Aprendiendo Nothingdohere 1%
Responder
#11
(11/10/2014, 04:29 PM)Savonis escribió: Yo lo quiero poner para que suba rango por ammo packs pero no me funciona miren como lo hice


[code]#include <amxmodx> // Include necesario

new const PLUGIN[] = "Rangos (FORMA DECENTE)" // Definimos el plugin
new const VERSION[] = "0.1" // Definimos la version
new const AUTHOR[] = "Im Author" // Definimos el autor

new g_rango[33] // Almacena los rangos
new const cost_rango[] = { 1, 5 } // Los niveles de los rangos
new const RANGOS[][] = { "Scrapter", "Scripter" } // Los nombres de los rangos

public plugin_init()
{
register_plugin(PLUGIN, VERSION, AUTHOR) // Registramos el plugin - version - autor
}

public client_putinserver(id)
g_rango[id] = 0 // Seteamos el rango 0 al entrar al sv

/* Cuando sube de nivel mandamos el:

checkrango(id)*/

public checkrango(id)
{
while (g_ammopacks[id] >= cost_rango[g_rango[id]]) // Hacemos un chequeo que cuando sea mayor o igual al nivel necesario
{
g_rango[id]++ // Aumenta de rango
client_print(id, "Avanzaste al rango: %s", RANGOS[g_rango[id]]) // Le mandamos un mensajito para el rango al que subio.
}


Y no me sirvio alguien me da una ayuda o me dice como lo pongo por ammo packs ?

lo adaptaste dentro del zp? de no ser asi deberias de usar las natives

Pd: borra tu firma da risa no creo que lleves ni 0.001%

pd2: usa etiquetas php
[Imagen: bvpq9q-6.png]

NO DOY AYUDA VIA MENSAJE PRIVADO

* Si requieres algún servicio de pago puedes contactarme vía MP o en mi facebook
Responder
#12
Tienes mucha razon kikizon :/ soy nobato y nose casi nada X.X
Nobato-Aprendiendo Nothingdohere 1%
Responder


Salto de foro:


Usuarios navegando en este tema: 1 invitado(s)