SSGamers - 10 Anos online por você.

Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.

2 participantes

[Tutorial] » OTIMIZAÇÕES DE LOOPINGS

Weslley_Script
Weslley_Script
SS - Fundador
SS - Fundador


Steam Steam : WeslleySSGames
Zello : WeslleySSGames
Mensagens : 9464
Moedas : 1025828
Data de inscrição : 06/10/2011
Idade : 26
Localização : Brasil

[Tutorial] » OTIMIZAÇÕES DE LOOPINGS Empty [Tutorial] » OTIMIZAÇÕES DE LOOPINGS

Mensagem por Weslley_Script Qui 26 Ago 2021 - 18:06

Recentemente percebi que não existem bons tópicos de dicas para otimizações na linguagem Pawn.
Decidi criar esse tópico, para que quem souber, possa responder aqui com a sua contribuição.


Bom, lá vai a minha: Otimização de Loop's

Código:
Código:
// A INCLUDE a_samp.inc NATURALMENTE DEFINE QUE O MAXIMO DE JOGADORES QUE O SAMP SUPORTA É 1000(MIL) SLOTS
// E SE VOCÊ NÃO REDEFINIR O MAXIMO DE PLAYERS OU USAR OUTRA FORMA DE LOOP, EM GRANDE ESCALA O SERVIDOR IRÁ LAGAR E DAR RT.

//VAMOS LÁ
#include <a_samp> //include base
#include <foreach> //include para loops/listas


//INICIALMENTE, PARA CRIAR UM LOOP PARA TODOS OS JORADORES, FAZEMOS DESSA FORMA:
for(new i; i < MAX_PLAYERS; i++) //Esse loop é executado 1000 vezes, em todos os slots(Mesmo que o slot não tenha ninguém conectado)
{
    SetPlayerHealth(i, 100.0); //Essa função seta para todos os jogadores a vida para 100(Máximo).
}

//A INCLUDE FOREACH FAZ ATÉ QUE MELHOR, ELA APENAS EXECUTA EM JOGADORES CONECTADOS:
foreach(new i: Players)//Se tiver 100 slots, mas 30 jogadores conectados, ele só ira executar 30x(Nos Conectados)
{
    SetPlayerHealth(i, 100.0);//Essa função seta para todos os jogadores a vida para 100(Máximo).
}


//Créditos: nilat_


Considerações Importantes:
- O Foreach usa a include YSI do Y_Less, caso não tenha: Link
- Include Foreach: Link



[Tutorial] » OTIMIZAÇÕES DE LOOPINGS D07Xwqb
[Tutorial] » OTIMIZAÇÕES DE LOOPINGS Yjab9HN
leonsx
leonsx
--> Postador Médio
--> Postador Médio


Mensagens : 54
Moedas : 497
Data de inscrição : 12/11/2020
Idade : 20

[Tutorial] » OTIMIZAÇÕES DE LOOPINGS Empty Re: [Tutorial] » OTIMIZAÇÕES DE LOOPINGS

Mensagem por leonsx Dom 29 Ago 2021 - 10:15

@Weslley_Script escreveu:Recentemente percebi que não existem bons tópicos de dicas para otimizações na linguagem Pawn.
Decidi criar esse tópico, para que quem souber, possa responder aqui com a sua contribuição.


Bom, lá vai a minha: Otimização de Loop's

Código:
Código:
// A INCLUDE a_samp.inc NATURALMENTE DEFINE QUE O MAXIMO DE JOGADORES QUE O SAMP SUPORTA É 1000(MIL) SLOTS
// E SE VOCÊ NÃO REDEFINIR O MAXIMO DE PLAYERS OU USAR OUTRA FORMA DE LOOP, EM GRANDE ESCALA O SERVIDOR IRÁ LAGAR E DAR RT.

//VAMOS LÁ
#include <a_samp> //include base
#include <foreach> //include para loops/listas


//INICIALMENTE, PARA CRIAR UM LOOP PARA TODOS OS JORADORES, FAZEMOS DESSA FORMA:
for(new i; i < MAX_PLAYERS; i++) //Esse loop é executado 1000 vezes, em todos os slots(Mesmo que o slot não tenha ninguém conectado)
{
    SetPlayerHealth(i, 100.0); //Essa função seta para todos os jogadores a vida para 100(Máximo).
}

//A INCLUDE FOREACH FAZ ATÉ QUE MELHOR, ELA APENAS EXECUTA EM JOGADORES CONECTADOS:
foreach(new i: Players)//Se tiver 100 slots, mas 30 jogadores conectados, ele só ira executar 30x(Nos Conectados)
{
    SetPlayerHealth(i, 100.0);//Essa função seta para todos os jogadores a vida para 100(Máximo).
}


//Créditos: nilat_


Considerações Importantes:
- O Foreach usa a include YSI do Y_Less, caso não tenha: Link
- Include Foreach: Link
Código:
    for (new i = 0, j = GetPlayerPoolSize(); i <= j; i++)
    {
        //...
    }

Tenha um bom dia study

    Data/hora atual: Sab 27 Nov 2021 - 6:10