Raised This Month: $ Target: $400
 0% 

[duda]como se usa el for?


  
 
 
Thread Tools Display Modes
Author Message
lauty17
Member
Join Date: Nov 2010
Old 08-03-2011 , 08:02   [duda]como se usa el for?
#1

hola todos yo toy estudiando c++ pero tengo una duda al aplicarlo en pawn
quiero crear un zp por lvls (ya cree muchos pero es para mejorar)

bue aca va mi duda
new const NIVELES[4000] = { aca quisiera usar un for porque no da escrivir 4000 niveles }

por las dudas quien no save q es un for. un for repite algo una cantidad deseada de veces

sino se usa un for y hay q usar una forma matematica alguien me diria quiero hacer q pida en nivel 1 -->0 ammos
en nivel 2 ---->1000 ammos
en nivel 3 ---->2000 ammos osea 1000 del nivel 2 mas otro 1000
lauty17 is offline
!Morte
Veteran Member
Join Date: May 2010
Old 08-03-2011 , 10:13   Re: [duda]como se usa el for?
#2

Usa un macro, es mucho mas sencillo y consume menos.

PHP Code:
#define NEXT_LEVEL( %1 )                     ( 1000 * %1 ) // Cada nivel cuesta 1000 AP's mas

// Y se usaria asi
NEXT_LEVELNivelid ] ) 
__________________
First Zombie Class
[ZP] Zombie Class: Houndeye Zombie
Quote:
Originally Posted by lucas_7_94 View Post
tenes que saber pawn antes de intentar hacer algo digno.
!Morte is offline
Send a message via MSN to !Morte Send a message via Skype™ to !Morte
lauty17
Member
Join Date: Nov 2010
Old 08-03-2011 , 10:33   Re: [duda]como se usa el for?
#3

es q todavia no llege a eso en la escuela ;P
usando esto
#define NEXT_LEVEL( %1 ) ( 1000 * %1 ) // Cada nivel cuesta 1000 AP's mas

// Y se usaria asi
NEXT_LEVEL( Nivel[ id ] )

no tengo q hacer esto?

new const NIVELES[4000] = ?

aparte donde antes usaba la constante niveles ahora la remplazo por NEXT_LEVEL o por Nivel[id]

otra pregunta nivel[id] es la variable de nivel?(osea remplazo por la variable q uso yo?)
lauty17 is offline
!Morte
Veteran Member
Join Date: May 2010
Old 08-03-2011 , 10:39   Re: [duda]como se usa el for?
#4

El macro reemplaza tu forma fea de hacer niveles , osea el NIVELES[4000] ...

Y en donde dice Nivel[id] lo reemplazas por el array para los niveles tuyo.
__________________
First Zombie Class
[ZP] Zombie Class: Houndeye Zombie
Quote:
Originally Posted by lucas_7_94 View Post
tenes que saber pawn antes de intentar hacer algo digno.
!Morte is offline
Send a message via MSN to !Morte Send a message via Skype™ to !Morte
xhiino
Senior Member
Join Date: Oct 2009
Location: santiasko
Old 08-03-2011 , 21:36   Re: [duda]como se usa el for?
#5

Te explico el for


Mira

PHP Code:
for(new i=0i<100i++) // for(creamos variable ; Que requiere el for ( en este caso ser mayor a 100 ; aumentamos de 1 en 1 la variable
{
client_print(id,print_chat" este es el mensaje numero %d"i// aqui enviamos 101 mensajes a la id  cada mensaje tiene el valor de i

ahora solo tienes que aplicarlo en tu plugin
__________________
xhiino is offline
Send a message via MSN to xhiino
fearAR
Veteran Member
Join Date: Oct 2010
Old 08-04-2011 , 09:42   Re: [duda]como se usa el for?
#6

Lo q va a hacer el for es pasar de 1 en 1 o 10 en 10 depende el decremento, incremento, potenciamiento, etc que le des si es que no se cumple lo debido, entonces estarias ademas de q no es conveniente no es fiable, y es al pedo ya que al consumir mas no se trabaja asi, el loop mayoritariamente sirve para el tomo de datos en la forma que se necesite mostrarlos o verificar en 2 o mas celdas a la misma vez.

Es asi que si, es convenible usar un macro, o si vamos a ser quisquillosos, es mejor realizar la cuenta sin un macro, aunque para ser mas ordenadito utilizar el macro es mucho mejor.

PHP Code:
/* Es solo un ejemplo, crea tu propio macro, basandote en ecuaciones matematicas, usando raices, potencias, sumas, restas, dividendos, lo q se te ocurra ( Solamente para ser mas dinamico en cuanto a la toma de AP's requeridos ) */
#define macro_level( %1 )               ( ( %1 * 100 ) / power( %1, 2 ) )

// Y para usarlo al momento de la toma de AP's requeridos:

if( g_exp[id] >= macro_level(g_level]id]) )
{
              
/* chirinchirin chin... */

La otra forma es crear una funcion publica que returne el valor necesario y listo, asi:

PHP Code:
public next_xp(variable)
{
          new 
nextxp = ( ( variable 100 ) / powervariable) );

          return 
nextxp;
}

// Al momento de usarlo...

if( g_xp[id] >= next_xp(g_level[id]) )
{
           
/* 1 2 3 4 5 6 */

Y de la forma con array...

PHP Code:
#define MAXIMO_DE_NIVELES            10

new NextXPs[MAXIMO_DE_NIVELES] =
{
          
1506001000150050006000700080009000
};

// Al momento de usarlo...


if( g_xp[id] >= NextXPs[g_level[id]] && g_level[id] < MAXIMO_DE_NIVELES )
{
           
/* 5122321313 */

Es asi que todas se usan es posible que haya mas maneras pero todas deriban en lo mismo el tomo de datos, no es necesario un for, en tu caso el for yo lo usaria por ejemplo si quieres crear un menu o algo que requiera el reseteo de datos en una variable tipo celdas ( array ), o simplemente para imprimirlo en pantalla.

PHP Code:
#define MAX_ACCESORIOS 5

new szAccesorios[MAX_ACCESORIOS][] = 
{
     
"Globo",
     
"Anillo",
     
"Cuadrado",
     
"Rectángulo",
     
"Circulo"
};

new 
RequiredLevels[MAX_ACCESORIOS] = 
{
        
05030010005000
};

public 
menuid )
{
         new 
szNum[8], menu_index menu_create"Menu 1.0""menu_handler" );

         for( new 
MAX_ACCESORIOS x++ )
         {
                
num_to_strxszNumsizeof szNum );

                
menu_additemmenu_indexszAccesorios[x], szNum);
         }
 
         
menu_displayidmenu_index);
}

public 
menu_handleridmenu_indexitem )
{
                if( 
item == MENU_EXIT
               {
                       
menu_destroy(menu_index);
                       return 
PLUGIN_HANDLED;
               }

               static 
iAccessiData[6], iName[64], iCallback;
           
menu_item_getinfo(menuequipoitemiAccessiData5iName63iCallback);

               if( 
g_level[id] < RequiredLevels[g_level[id]]) return PLUGIN_HANDLED;
           
               
/* Si no pepe */

               
return PLUGIN_HANDLED;

Saludos.
__________________
~~~~ NPC AI ~~~~

[ Pathfinding - OK ]
[ Citizen AI - OK ]
[ Handle Weapons - --- ]
fearAR is offline
Send a message via MSN to fearAR
 



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 23:12.


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