[TUT] Criando um Simples Streamer..
#1

[TUT] Criando Simples Streamer

Olб a Todos Primeiramente vou fazer um Breve introduзгo de como Criar um Simples Sistema de Streamer neste Tutorial vamos nos Basear em Objetos espero que gostem..

Resumindo:

Streamer mais conhecido como Stream sгo o que colocam em Jogos normalmente usados para Carregarem quando um player chega perto do Local para pesar Menos o Jogo e nгo ter que Rodar vбrios Objetos de uma Ъnica vez, entгo aparecendo o que foi usado no Streamer..

Porque:

Bom Atualmente a Versгo mais usada 0.3a tem um Limite de Objetos de '200' esse Limite nгo й bom para quem tem Servidor que Ocupam bastante Objetos,Arenas,Stunts ou atй Drift e outros.
Por Padrгo esses objetos Sгo criados idependente se O Player estб em Los Santos e O Objeto esta em San Fiero, por isso foi criado e tiveram e idйia de criar o Streamer que й Praticamente vбrias Arrays Floats (Nъmeros Decimais) para Armazenar as Coordenadas dos Objetos,assim checando, quando o player chegasse perto de um Tal Ponto o Objeto й Criado,caso contrбrio destruido,assim nunca fazendo '200' objetos de uma vez sу, e sim Ultilizando a Tйcnica de Stream que eu Falei Acima..

Cуdigos:
Bom Primeiramente coloquem ao Topo de Seu Projeto:
pawn Код:
#define ATUALIZAR_OBJETOS 800
#define DISTANCIA 100 //-- Distancia para Cria-los
forward ChecarObjetos();
forward AtualizarObjetos();
EXPLICAЗГO:
ATUALIZAR_OBJETOS 800 -> Tempo para Atualizar & Checar Objetos (Milisegundos)
forward -> Definir Public Responsбvel pela Criaзгo dos Objetos

Agora Logo em OnFilterScriptInit/GameModeInit:
pawn Код:
SetTimer("ChecarObjetos",ATUALIZAR_OBJETOS,true);
EXPLICAЗГO:
SetTimer -> Inicia Tempo para Atualizar & Checar Objetos (Milisegundos)
ChecarObjetos -> Public Responsбvel pela Criaзгo dos Objetos
true -> Indica que O Timer Deve se Repetir
ATUALIZAR_OBJETOS -> Indica que O Timer Deve repetir-se a cada 800 Seg (Definido Anteriormente)

Vamos Definir a Array do Objeto:

pawn Код:
new object;
Finalmente vamos a Public Mais importante de Todas a que checarб e Realizarб a Criaзгo dos Objetos:
Final de Seu Projeto:
pawn Код:
public AtualizarObjetos()
{
    for(new all = 0; all <= MAX_PLAYERS; ++ all)
    {
        if(IsPlayerConnected(all))
        {
            if(PlayerToPoint(DISTANCIA,all,2001.195679,1547.113892,14.283400)) return object = CreatePlayerObject( all, 2587, 2001.195679, 1547.113892, 14.283400, 0, 0, 96 );
            DestroyPlayerObject(all,object );
        }
    }
    return 1;
}
Final do Projeto a Funзгo que Calcula as Distancias:
pawn Код:
stock PlayerToPoint(Float:radi, playerid, Float:x, Float:y, Float:z)
{
    if(IsPlayerConnected(playerid))
    {
         new Float:oldposx, Float:oldposy, Float:oldposz;
         new Float:tempposx, Float:tempposy, Float:tempposz;
         GetPlayerPos(playerid, oldposx, oldposy, oldposz);
         tempposx = (oldposx -x);
         tempposy = (oldposy -y);
         tempposz = (oldposz -z);
         if (((tempposx < radi) && (tempposx > -radi)) && ((tempposy < radi) && (tempposy > -radi)) && ((tempposz < radi) && (tempposz > -radi)))
         {
             return 1;
         }
     }
     return 0;
}
TERMINANDO A EXPLICAЗГO:
stock PlayerToPoint = Essa funзгo serб a que calcularб a Distancia entre o Player e O Objeto
for(new all = 0;... Este Serб o Loop que pegara Todos o Nъmeros de Slots Possiveis
if(IsPlayerConnected(all)) = Essa funзгo verifica os Player conectados para nгo criar Objetos para Player Inexistente,Evitando de Lagar o Server..

if(PlayerToPoint(DISTANCIA,all,2001.195679,1547.11 3892,14.283400)) return object = CreatePlayerObject( all, 2587, 2001.195679, 1547.113892, 14.283400, 0, 0, 96 );
DestroyPlayerObject(all,object );



Esse Cуdigo verifica se o Player esta perto do Objeto,Caso estiver Perto Retorna Criando Objeto,Caso esta Longe Destroi Objeto..

FIM

Se ainda tiverem dъvidas de como Criar vбrios Objetos sem precisar tudo Isso,nгo excite em pedir
Reply


Messages In This Thread
[TUT] Criando um Simples Streamer.. - by ipsBruno - 15.08.2010, 22:49
Re: [TUT] Criando um Simples Streamer.. - by Canabis - 15.08.2010, 23:51
Re: [TUT] Criando um Simples Streamer.. - by ipsBruno - 16.08.2010, 00:32
Re: [TUT] Criando um Simples Streamer.. - by Canabis - 16.08.2010, 00:41
Re: [TUT] Criando um Simples Streamer.. - by ipsBruno - 16.08.2010, 00:47
Re: [TUT] Criando um Simples Streamer.. - by LeLeTe - 16.08.2010, 00:56
Re: [TUT] Criando um Simples Streamer.. - by Kasura - 16.08.2010, 01:12
Re: [TUT] Criando um Simples Streamer.. - by Canabis - 16.08.2010, 03:18
Re: [TUT] Criando um Simples Streamer.. - by ipsBruno - 16.08.2010, 16:12
Re: [TUT] Criando um Simples Streamer.. - by DartakousLien - 16.08.2010, 18:05

Forum Jump:


Users browsing this thread: 1 Guest(s)