Pregunta de n00b. Cual es el scope de los parametros en los procesos?

Started by JaViS, September 25, 2017, 05:56:23 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

JaViS

Pues eso, estoy un poco oxidado y ya no recuerdo si los argumentos declarados en los procesos son variables locales o privadas. Hay alguna forma de declarar parametros con scope publico?


Saludos!
Working on Anarkade. A couch multiplayer 2D shooter.

l1nk3rn3l


import "mod_say"

local
   int hola=0;
   
   my_x,my_y;
end


process pepe(x,y )
begin
   my_x = x;
   my_y = y;

   hola += 20 + x + y;
   
   loop
    frame;
   end
end   

process pepe2()
begin
   hola +=50;
   
   loop   
    frame;
   end   
end   


Process Main()
private
unsigned int ga = 255;
unsigned int r = 255, g = 255, b = 255;
unsigned int a = 255;
char * rgba;
idpepe, idpepe2, idpepe3;


Begin
    idpepe= pepe(1,2);   
   idpepe2 =   pepe2();
   idpepe3 =   pepe(5,6);
   
   
   say("var hola " + idpepe.hola  ); //global var from process pepe
   say("var hola2 " + idpepe2.hola  ); //global var from process pepe
   
   say("pepex " + idpepe.my_x + " pepey "+  idpepe.my_y ); //global var from process pepe
   say("pepe3x " + idpepe3.my_x + " pepe3y "+  idpepe3.my_y ); //global var from process pepe
   
End

JaViS

Working on Anarkade. A couch multiplayer 2D shooter.

Drumpi

¡Qué forma de complicarse con la respuesta! :D

Las variables de la declaración del proceso pueden ser locales o privadas (y públicas, si no recuerdo mal). Si la variable existe (es decir, se usa una local como X o ALPHA) se asigna a ella, de lo contrario se genera una variable privada con dicho nombre y dicho valor.
Como siempre, las privadas no se tienen acceso desde fuera.
Las locales se declaran una vez y cada proceso tiene la suya y se puede acceder mediante el id del proceso (idproceso.variablelocal = loquesea, ejemplo, la X e Y de cada proceso).
Las globales se declaran una vez, son únicas y se accede desde cualquier parte.
Y la Públicas son variables privadas que se pueden acceder desde otros procesos como si fueran locales.
Hala, como con 1001 procesos sólo va a 9 FPS, vamos a meterle 32 veces más, a ver si revienta.
(Drumpi epic moment)

JaViS

Working on Anarkade. A couch multiplayer 2D shooter.

Drumpi

¡¡Se complique el código que se complique, ponte after-BIT-e!!

Lo siento, he dormido 4 horas y ya es muy tarde ^^U
Hala, como con 1001 procesos sólo va a 9 FPS, vamos a meterle 32 veces más, a ver si revienta.
(Drumpi epic moment)