Solo usuarios registrados pueden comentar y agradecer, Logueate o Registrate

Autor Topic: Monitor de FPS en Pantalla Código Básico.  (Visto 5079 veces)

0 Miembros and 1 Guest are viewing this topic.

Offline takumi12 Posteado: March 05, 2020, 11:59:44 AM | Modificado: March 19, 2020, 01:53:09 AM by takumi12

  • MAESTRO

  • US. DE HONOR

  • LEYENDA

  • Php Coder
  • +11 puntos por ventas
  • *
  • *
  • Rank: Puto amo
  • Posts: 1.310
  • Gracias recibida: 39649
  • mx
 sueno

ahí les va perros.
un Código simple pero Inquebrantable xD  cool2





Creditos: ME [takumi12]

NO DOY SOPORTE PARA ESTO YA QUE ME MANDAN MENSAJE TRAS MENSAJE PARA SOLUCIONAR UN MAL ACOMODO DE CÓDIGO .-., EL CÓDIGO ES MUY BÁSICO Y CUMPLE SU FUNCIÓN, SOLO ES CUESTIÓN DE ACOMODAR EL CÓDIGO CORRECTAMENTE


Las offset no se crea, ni se destruye, solo se transforma

Gracias:

Skollcl, icodeapps, Xysad, RedFields, Xingaw, beta1234, iNoNiCk30, ezesosa, OBBY, stopk, p0zejk, joaovithor1, jeffzkie69, S!ngle, pedornela, brendow, kielrgz, skhirtlo, Ryzenn, Look, BRAYANMF93, BDCAM, unico, Zeus, leotta45, djkaku, llZeuzll, sebadotero, fer73, CreateMu, nescafe, guibrooly, leoferrarezi, usersa, myway, gaaraenixmu, Shaper, xlockee, 2str0kE, MDDM, goliloco, wuachukeik, Franco2022, Ajru10, th3matu22, douglera21, nofeara, tamoio, Nakamura, andredeco, awebravo, MichaelxD, carper, ruojing, Beelzebub, glmmlg, zodiacddos, Robins, whisky123, ziza, z33zaza, chauttc, nhatphai21996vn, Natsu, Hoangsy99, danillodsd, linkvas12, LuciferXT, Sovereign, zodiacobr, T-LEGENDARY, frenzo2009, StevenDX, RAGNAR111, backerchen, xzl4w, xtestx, besiktas, Trote, lemon, Phoenix666, vitrex, lucas123, kama, jhahernandezcas, Ifreat, -MitSuki-, rando, reinalldo, vnshell, neeck1234, asdasdasd, idpnguyeni, juniorcgr, shaharx4, Dieguinho, thienthan1117, nhanphu200, tiendoanit, ailsoncost, darkroh, osvaldo1811, deathsquad, plyn, PachoRasta, fabilus, vltmxkcldh, dark, admkolla, npt.formu, azpirin4, nguqua, weverton233, Storkl, roxtste, jorge2016, vltmxhf, Noximus, PhantomKr, alefmello166, waltervg91, isaac400, MsotoC, victormvw, LuisGaming, jlvs_8912, ์Nightz, lcthesecond, GabrielDevel, calabocajea, nonnan005, erickmalfoy, dami2214, Censored, Jean LR, chechu131, harry130, Templario89, DemonLove, leilo2000, Plate98, alexfy, Aguila, realman, KratoZZ, dark32, Higgs, smallz170, luch3x0013, darkalves2, argenis788, Josue8A, drakonusjs, fallsmu, guigonvg, Kosh, demmian2, haziel, fengyun52894, Genilson23, carlosx1302, jocameaz, juniorb, sannea, DIOSES, boncha, romariols, walkeny, ofignacio, 423646802, darck, ddoadm, elmaxis1, Denis Alves, mediodas20, Mph1405, dhaomao, mustx1, leones55, GabrielDev, muf2p, hiep, cepo, saske98, xz18786628, comelon666, thunwa1, mlegion, cualquier1, reonu, museven, draco425, Yan Carlos, k12leito, jeronemo, universalmu4, pquintal, Azzlaer, Marceliin, muarce, reveage, ALCONMU, seedmaker, danviphd, LeeHenry, Saldivar, Mupsychi-97D, away337159, Almdar, davidneyrab, AZURE, DeilanSasame, koito89, boris160, boris160, Seya, iggfree, becoloko, jkmbaby, Aisu, yhoon, Iямαηɗαɗ ☠, Liaon, ProNexT, boylasd, fivqt, msousay, agastin10, KhongGianOL, kksky, christoferdz, higlans, dsw_pool, Pasa_Pal_Fondo, mrhung95, emersonx13, Felipe0211, beibei, Sweng, duodie, DangeR, Rastacode, 161012, artem, kemokemo21, oleas14, caxco93, dahouzi, modaxd, Cartman, herjuni, AGLG123, JavixFer, dainam, kaisudo, Supremo, n0tee, SbaGomez, ZTMarkz, lostcross, gauyeutho, kind, gacon201294, Odisk, mkjklm123, c4nhsatcodong, Keko, mavine, 6atters, cobyzero, luciferlg, Lude, Fanta91, RafaMaster, alexytoo, BeckerIbero, digimoncik, zehel62, dreamboy7, gredy, juan1997, judakiss21, zeruskill, Nexus, GX_KYO, tangyi90, dizzys, ConejoMalo, mastermcy, Vitaminka, sagat202, dlawls662, jhonhy, muzic25, samsunggon, manowwan1, Pyke, onlinezajzaj, LTP Team, fabianm, SaintZeus, laulinh2, zlethanhlong, fer1992, Yasser, trkgncmg, Daniel@, Wendigo, MaxVoll, Chupulum, axeman192, malke, 183358, knight.php, cri0, Crowley, spartacus, andreyzz, TzCr4ck, RafhaelSouza, stark98, Lil Kid, kaiocnx, Peluuca, NasLy, ZabiinoOo, Shaman, djagripnos, dasgrid, unnamedsk1, Karuritoku, davidrcj, melo920, Kapocha33, kayito, FuriaG, esteban

Offline TzCr4ck #1 Posteado: March 05, 2020, 06:29:34 PM | Modificado: March 05, 2020, 09:33:20 PM by TzCr4ck

  • 0 puntos por ventas
  • *
  • Rank: Liga mayor
  • Posts: 185
  • Gracias recibida: 55
  • ve
Hola @takumi12, gracias por compartir, tengo 1 duda:

1.- Esta parte del código:

gInterface.lastReport = GetTickCount();
gInterface.frameCount = 0;

Dices que va "en main al iniciar dentro de la función principal", pero específicamente donde es eso en el source? disculpa mi ignorancia.

Gracias de antemano.


Offline kayito #2 Posteado: March 05, 2020, 07:18:40 PM

  • MAESTRO

  • C++ Coder
  • 0 puntos por ventas
  • *
  • Rank: Puto amo
  • Posts: 1.035
  • Gracias recibida: 15037
  • ar
Tengo 2 preguntas:

1.- Esta parte del código:

gInterface.lastReport = GetTickCount();
gInterface.frameCount = 0;

Dices que va "en main al iniciar dentro de la función principal", pero específicamente donde es eso en el source? disculpa mi ignorancia.

2.- Este código está completo? es decir, no necesita parte del código de @kayito http://tuservermu.com.ve/index.php?topic=29079.0

Gracias de antemano.

Mi código es sólo para mostrar el ping o mejor dicho el RTT , como le llaman. Eso sumado a esto, te quedaría como lo tiene él


Offline TzCr4ck #3 Posteado: March 05, 2020, 07:24:31 PM | Modificado: March 05, 2020, 09:31:53 PM by TzCr4ck

  • 0 puntos por ventas
  • *
  • Rank: Liga mayor
  • Posts: 185
  • Gracias recibida: 55
  • ve
Tengo 2 preguntas:

1.- Esta parte del código:

gInterface.lastReport = GetTickCount();
gInterface.frameCount = 0;

Dices que va "en main al iniciar dentro de la función principal", pero específicamente donde es eso en el source? disculpa mi ignorancia.

2.- Este código está completo? es decir, no necesita parte del código de @kayito http://tuservermu.com.ve/index.php?topic=29079.0

Gracias de antemano.

Mi código es sólo para mostrar el ping o mejor dicho el RTT , como le llaman. Eso sumado a esto, te quedaría como lo tiene él

Ok no había entendido, gracias


Offline laulinh2 #4 Posteado: March 06, 2020, 01:57:38 AM

  • 0 puntos por ventas
  • *
  • Rank: Usuario activo
  • Posts: 65
  • Gracias recibida: 12
  • vn
Hi bro, you use source Update 13?


Offline takumi12 #5 Posteado: March 06, 2020, 04:33:50 AM | Modificado: March 06, 2020, 04:53:53 AM by takumi12

  • MAESTRO

  • US. DE HONOR

  • LEYENDA

  • Php Coder
  • +11 puntos por ventas
  • *
  • *
  • Rank: Puto amo
  • Posts: 1.310
  • Gracias recibida: 39649
  • mx
Hi bro, you use source Update 13?

si para cualquier source y cualquier update! exacto yo uso up13  cool2


Las offset no se crea, ni se destruye, solo se transforma

Offline laulinh2 #6 Posteado: March 06, 2020, 05:57:11 AM

  • 0 puntos por ventas
  • *
  • Rank: Usuario activo
  • Posts: 65
  • Gracias recibida: 12
  • vn
Hi bro, you use source Update 13?

si para cualquier source y cualquier update! exacto yo uso up13  cool2
Sem sem me, but i error bug exp bar don't work, how to fix?


Offline jhonhy #7 Posteado: March 06, 2020, 07:22:46 AM

  • 0 puntos por ventas
  • *
  • Rank: Destacado
  • Posts: 83
  • Gracias recibida: 195
  • br
if (this->MiniMapCheck() || this->CombinedChecks() )
{
   return;
}

can share these two functions?


Offline takumi12 #8 Posteado: March 06, 2020, 08:03:31 AM | Modificado: March 30, 2021, 04:55:11 PM by ZabiinoOo

  • MAESTRO

  • US. DE HONOR

  • LEYENDA

  • Php Coder
  • +11 puntos por ventas
  • *
  • *
  • Rank: Puto amo
  • Posts: 1.310
  • Gracias recibida: 39649
  • mx
if (this->MiniMapCheck() || this->CombinedChecks() )
{
   return;
}

can share these two functions?

Code: [Select]
bool Interface::MiniMapCheck()
{
if (this->CheckWindow(Inventory) ||
this->CheckWindow(CashShop) ||
this->CheckWindow(ChaosBox) ||
this->CheckWindow(Character) ||
this->CheckWindow(CommandWindow) ||
this->CheckWindow(ExpandInventory) ||
this->CheckWindow(ExpandWarehouse) ||
this->CheckWindow(FullMap) ||
this->CheckWindow(GensInfo) ||
this->CheckWindow(Guild) ||
this->CheckWindow(NPC_Dialog) ||
this->CheckWindow(NPC_Julia) ||
this->CheckWindow(NPC_Titus) ||
this->CheckWindow(OtherStore) ||
this->CheckWindow(Party) ||
this->CheckWindow(PetInfo) ||
this->CheckWindow(Shop) ||
this->CheckWindow(SkillTree) ||
this->CheckWindow(Store) ||
this->CheckWindow(Trade) ||
this->CheckWindow(FriendList) ||
this->CheckWindow(FastMenu) ||
this->CheckWindow(MuHelper) ||
this->CheckWindow(Quest) ||
this->CheckWindow(Lugard) ||
this->CheckWindow(Jerint) ||
this->CheckWindow(GoldenArcher1) ||
this->CheckWindow(GoldenArcher2) ||
this->CheckWindow(LuckyCoin1) ||
this->CheckWindow(LuckyCoin2) ||
this->CheckWindow(NPC_Duel) ||
this->CheckWindow(NPC_Devin) ||
this->CheckWindow(GuardNPC) ||
this->CheckWindow(SeniorNPC) ||
this->CheckWindow(GuardNPC2) ||
this->CheckWindow(CastleGateSwitch) ||
this->CheckWindow(CatapultNPC) ||
this->CheckWindow(CreateGuild) ||
this->CheckWindow(Warehouse))
return true;
return false;
}

Code: [Select]
bool Interface::CombinedChecks()
{
if ((this->CheckWindow(Inventory)
&& this->CheckWindow(ExpandInventory)
&& this->CheckWindow(Store)) ||
(this->CheckWindow(Inventory)
&& this->CheckWindow(Warehouse)
&& this->CheckWindow(ExpandWarehouse)) ||
(this->CheckWindow(Inventory)
&& this->CheckWindow(Character)
&& this->CheckWindow(Store)))
return true;
return false;
}


Las offset no se crea, ni se destruye, solo se transforma

Gracias:


Offline TzCr4ck #9 Posteado: March 19, 2020, 12:18:31 AM

  • 0 puntos por ventas
  • *
  • Rank: Liga mayor
  • Posts: 185
  • Gracias recibida: 55
  • ve
Hola @takumi12 , gracias por compartir, tengo este problema y quisiera saber si me puedes dar una ayuda.

Estoy colocando todo perfectamente donde va (desde mi punto de vista) pero al entrar al servidor se me pierde parte de la interfaz y no me muestra los FPS, que estoy haciendo mal?



Offline takumi12 #10 Posteado: March 19, 2020, 02:04:24 AM

  • MAESTRO

  • US. DE HONOR

  • LEYENDA

  • Php Coder
  • +11 puntos por ventas
  • *
  • *
  • Rank: Puto amo
  • Posts: 1.310
  • Gracias recibida: 39649
  • mx
Hola @takumi12 , gracias por compartir, tengo este problema y quisiera saber si me puedes dar una ayuda.

Estoy colocando todo perfectamente donde va (desde mi punto de vista) pero al entrar al servidor se me pierde parte de la interfaz y no me muestra los FPS, que estoy haciendo mal?



estas colocando mal el llamado de la función, ya que desde la imagen que adjuntas se nota el mal llamado de la función el ejemplo claro es que estas llamando primero el monitor de fps, y luego llamas la barra semitransparente.

por eso el monitor de fps queda atras y el cuadro semitransparente queda adelante de todo, en primer lugar deberías hacer el llamado de esta forma

Code: [Select]
gInterface.guiMonitore();   // primero la barra negra
gInterface.UPDATE_FPS(); //después el monitoreo de los fotogramas

todo ese código haz el llamado desde la función principal de interface

work()


puedes hacerlo desde el inicio o hasta el final del código que ya contiene, prueba desde donde dejas de perder la parte de la interfaz que muestras, ya que el código funciona correctamente, no puedo decirte con exactitud como llamarlo ya que desde mi source es diferente, genero el llamado de una manera distinta ya que tengo mas funciones que pueden perjudicar la interfaz.

una manera diferente de ejecutar sería con una función similar a work pero independiente para no afectar el llamado de la interfaz porque me imagino que los que usan interfaz custom tienen el mismo problema, así que ahí les va



Las offset no se crea, ni se destruye, solo se transforma

Offline TzCr4ck #11 Posteado: March 19, 2020, 04:05:05 AM

  • 0 puntos por ventas
  • *
  • Rank: Liga mayor
  • Posts: 185
  • Gracias recibida: 55
  • ve
Hola @takumi12 , gracias por compartir, tengo este problema y quisiera saber si me puedes dar una ayuda.

Estoy colocando todo perfectamente donde va (desde mi punto de vista) pero al entrar al servidor se me pierde parte de la interfaz y no me muestra los FPS, que estoy haciendo mal?



estas colocando mal el llamado de la función, ya que desde la imagen que adjuntas se nota el mal llamado de la función el ejemplo claro es que estas llamando primero el monitor de fps, y luego llamas la barra semitransparente.

por eso el monitor de fps queda atras y el cuadro semitransparente queda adelante de todo, en primer lugar deberías hacer el llamado de esta forma

Code: [Select]
gInterface.guiMonitore();   // primero la barra negra
gInterface.UPDATE_FPS(); //después el monitoreo de los fotogramas

todo ese código haz el llamado desde la función principal de interface

work()


puedes hacerlo desde el inicio o hasta el final del código que ya contiene, prueba desde donde dejas de perder la parte de la interfaz que muestras, ya que el código funciona correctamente, no puedo decirte con exactitud como llamarlo ya que desde mi source es diferente, genero el llamado de una manera distinta ya que tengo mas funciones que pueden perjudicar la interfaz.

una manera diferente de ejecutar sería con una función similar a work pero independiente para no afectar el llamado de la interfaz porque me imagino que los que usan interfaz custom tienen el mismo problema, así que ahí les va
 

Gracias por la ayuda, hice todo tal cual, pero al momento de entrar al server y seleccionar el PJ, el cliente se cierra :( alguna idea?


Offline takumi12 #12 Posteado: March 19, 2020, 04:26:36 AM

  • MAESTRO

  • US. DE HONOR

  • LEYENDA

  • Php Coder
  • +11 puntos por ventas
  • *
  • *
  • Rank: Puto amo
  • Posts: 1.310
  • Gracias recibida: 39649
  • mx
Hola @takumi12 , gracias por compartir, tengo este problema y quisiera saber si me puedes dar una ayuda.

Estoy colocando todo perfectamente donde va (desde mi punto de vista) pero al entrar al servidor se me pierde parte de la interfaz y no me muestra los FPS, que estoy haciendo mal?



estas colocando mal el llamado de la función, ya que desde la imagen que adjuntas se nota el mal llamado de la función el ejemplo claro es que estas llamando primero el monitor de fps, y luego llamas la barra semitransparente.

por eso el monitor de fps queda atras y el cuadro semitransparente queda adelante de todo, en primer lugar deberías hacer el llamado de esta forma

Code: [Select]
gInterface.guiMonitore();   // primero la barra negra
gInterface.UPDATE_FPS(); //después el monitoreo de los fotogramas

todo ese código haz el llamado desde la función principal de interface

work()


puedes hacerlo desde el inicio o hasta el final del código que ya contiene, prueba desde donde dejas de perder la parte de la interfaz que muestras, ya que el código funciona correctamente, no puedo decirte con exactitud como llamarlo ya que desde mi source es diferente, genero el llamado de una manera distinta ya que tengo mas funciones que pueden perjudicar la interfaz.

una manera diferente de ejecutar sería con una función similar a work pero independiente para no afectar el llamado de la interfaz porque me imagino que los que usan interfaz custom tienen el mismo problema, así que ahí les va
 

Gracias por la ayuda, hice todo tal cual, pero al momento de entrar al server y seleccionar el PJ, el cliente se cierra :( alguna idea?

si lo que subí no te funciona de alguna manera es porque tengas algo trabajando mal que te este generando el cierre al agregar el work2, en ese caso prueba la primera opción de mover los iniciadores del monitor dentro de la función
Code: [Select]
work(){
//todo mi código que ya esta dentro//
//iniciarcuadritonegrotransparente
//iniciarmonitorfps y/o ping
}
usa esa secuencia o intercambialas
Code: [Select]
work(){

//iniciarcuadritonegrotransparente
//iniciarmonitorfps y/o ping
//todo mi código que ya esta dentro//
}

de alguna manera es complicado explicartelo ya que la posición de inicializar una función depende en que parte la coloques.
ya que se inicializan como en una lista
1.-
2.-
3.-
todo esto es sugestión, la otra es crear una clase muy por aparte e inicializarla desde el main.cpp
existen muchas maneras posibles que son correctas para inicializarla, pero todo depende de como la trabajes


Las offset no se crea, ni se destruye, solo se transforma

Gracias:


Offline kind #13 Posteado: March 19, 2020, 05:01:52 PM

  • C++ Coder
  • 0 puntos por ventas
  • *
  • Rank: Experto
  • Posts: 153
  • Gracias recibida: 1852
  • ar
@takumi12 a la funcion de dibujo podes agregarle esto debajo, para volver al modo normal digamos.

debajo de: pGLSwitchBlend();
Agregar:
pGLSwitch();
glColor3f(1.0, 1.0, 1.0);

Muy practico el codigo. Gracias por compartirlo.

Gracias:


Offline TzCr4ck #14 Posteado: March 20, 2020, 06:39:03 AM

  • 0 puntos por ventas
  • *
  • Rank: Liga mayor
  • Posts: 185
  • Gracias recibida: 55
  • ve
@takumi12 a la funcion de dibujo podes agregarle esto debajo, para volver al modo normal digamos.

debajo de: pGLSwitchBlend();
Agregar:
pGLSwitch();
glColor3f(1.0, 1.0, 1.0);

Muy practico el codigo. Gracias por compartirlo.

Muchas gracias amigo, solo me faltaba esto <3 Ahora si funciona correctamente todo.


Offline takumi12 #15 Posteado: March 20, 2020, 02:13:47 PM

  • MAESTRO

  • US. DE HONOR

  • LEYENDA

  • Php Coder
  • +11 puntos por ventas
  • *
  • *
  • Rank: Puto amo
  • Posts: 1.310
  • Gracias recibida: 39649
  • mx
@takumi12 a la funcion de dibujo podes agregarle esto debajo, para volver al modo normal digamos.

debajo de: pGLSwitchBlend();
Agregar:
pGLSwitch();
glColor3f(1.0, 1.0, 1.0);

Muy practico el codigo. Gracias por compartirlo.

MUY BUENA NO LA HABÍA TOMADO EN CUENTA, COMO LA TRABAJO DE OTRA FORMA PERO MUY BUENA PARA COMPLEMENTAR EL CÓDIGO PARA TODOS LOS USUARIOS.


Las offset no se crea, ni se destruye, solo se transforma

Offline modaxd #16 Posteado: March 21, 2020, 04:57:56 PM

  • 0 puntos por ventas
  • *
  • Rank: Sup. destacado
  • Posts: 118
  • Gracias recibida: 1035
  • es
Sacame de dudas aqui en esta parte Takumi
en : gInterface.lastReport = GetTickCount();
      gInterface.frameCount = 0;

Ya que dices: en main al iniciar dentro de la función principal


Offline takumi12 #17 Posteado: March 22, 2020, 12:19:47 AM

  • MAESTRO

  • US. DE HONOR

  • LEYENDA

  • Php Coder
  • +11 puntos por ventas
  • *
  • *
  • Rank: Puto amo
  • Posts: 1.310
  • Gracias recibida: 39649
  • mx
Sacame de dudas aqui en esta parte Takumi
en : gInterface.lastReport = GetTickCount();
      gInterface.frameCount = 0;

Ya que dices: en main al iniciar dentro de la función principal

cual es la duda? para mi eso es suficiente para saber en que parte va, la función principal es donde se inicializan todos los procesos
MAIN.CPP
Code: [Select]
extern "C" _declspec(dllexport) void EntryProc() // OK    <- aquí función principal .-.
{
if(gProtect.ReadMainFile("Licencia") == 0)
{
MessageBox(0,"Licencia not found or invalid!","Error",MB_OK | MB_ICONERROR);
ExitProcess(0);
}
//FPS Y LATENCIA
gInterface.lastReport = GetTickCount();
gInterface.frameCount = 0;

}


Las offset no se crea, ni se destruye, solo se transforma

Online spartacus #18 Posteado: April 11, 2020, 09:52:02 PM

  • 0 puntos por ventas
  • *
  • Rank: Puto amo
  • Posts: 241
  • Gracias recibida: 97
  • cl
Descubrí que cuando agrego esto al final de la función void Interface::guiMonitore() , ocurre el error de imagen
pGLSwitch();
glColor3f(1.0, 1.0, 1.0);
si comento las dos líneas, el problema anterior resuelve más, este otro problema ya aparece


Pero noté que cuando abro una ventana el error desaparece.


si comento las dos líneas, el problema anterior resuelve más, este otro problema ya aparece


Offline axeman192 #19 Posteado: April 21, 2020, 10:19:35 AM | Modificado: May 01, 2020, 04:01:34 AM by axeman192

  • 3D Maker
  • 0 puntos por ventas
  • *
  • Rank: Puto amo
  • Posts: 287
  • Gracias recibida: 11888
  • vn
Sugiero una forma.
Eliminar este código de interface.cpp:
Code: [Select]
/*void Interface::guiMonitore(){
if (this->MiniMapCheck() || this->CombinedChecks() )
{
return;
}
pSetBlend(true);
glColor4f((GLfloat)0.0, (GLfloat)0.0, (GLfloat)0.0, (float)0.8);
pDrawBarForm(495.0, 0.0, 150.0, 20.0, 0.0f, 0);
pGLSwitchBlend();
}*/
Code: [Select]
//gInterface.guiMonitore();
Abra CustomRankUser.cpp
Eliminar este código de CustomRankUser.cpp:
Code: [Select]
//if(*(BYTE*)(ViewportAddress+0xE) == 0 && gProtect.m_MainInfo.RankUserOnlyOnSafeZone != 0)
//{
//continue;
//}
Finalmente busca:
Code: [Select]
pGetPosFromAngle(&Angle, &PosX, &PosY);
// ---
PosX -= 42;
// ---
Poner debajo de ellos:

Resultados. (Cualquiera con una mejor manera puede contribuir.)


Solo usuarios registrados pueden comentar y agradecer, Logueate o Registrate


 

Related Topics

  Subject / Started by Replies Last post
7 Replies
7982 Views
Last post May 14, 2019, 11:00:40 PM
by xaxx10
4 Replies
1175 Views
Last post March 28, 2019, 05:09:52 PM
by ⚡ Zeus ⚡
0 Replies
1527 Views
Last post December 18, 2019, 02:07:13 AM
by tedateamos
0 Replies
736 Views
Last post September 24, 2020, 10:15:36 AM
by cobyzero
4 Replies
393 Views
Last post March 15, 2022, 12:46:58 AM
by pikachu