sábado, 4 de dezembro de 2010

[PAWN] SA-MP 0.3c E as Novidades.

Bom, eu já baixei o SA-MP 0.3c. Eu posso dizer uma coisa. É a melhor versão de todas. Posso dizer que quando o 0.3a chegou, todos ficaram até mesmo assustados com a função de dialogos sendo implantada. Mas a galera do sa-mp developers fez mais agora. A volta do SetVehicleNumberPlate();!
Na minha opinião, é a melhor função possível e imaginavel dentro do pawn! Ela muda sua placa, podendo fazer um carro só seu. Mas atenção, as placas só mudam depois que você respawna o carro.
Juro que fiquei muito feliz depois que ver a função mais legal do pawn voltando a ativa no SA-MP.
Entre outras coisas, agora só será possível grudar apenas 1 objeto em cada player.

Bom, veja o que mudou (em inglês) aqui: Aqui '-'

segunda-feira, 29 de novembro de 2010

[PAWN] Mudando o nome do GAMEMODE

Olá. Mudar o nome do gamemode é facil. Vá em OnGameModeInit() e procure por "Blank Script". Não tire as aspas, onde está Blank Script, coloque o nome do seu gamemode. Facil assim.

domingo, 28 de novembro de 2010

[PAWN] Fazendo mapas

Bom, pra fazer mapas, eu uso um programa especifico, na verdade, é um outro client Multi Player. o MTA Race 1.1 .
Você instala ele. com o pacote completo. Agora vá a pasta onde vc instalou, mods. Vai ter uma pasta chamada editor, troque o nome pra map_editor e entre na pasta. Crie uma pasta chamada maps, e pronto, seu map editor estará funcionando. Mas agora, como passar pro game mode?

Simples, vá em MTA>Mods>map_editor>Maps> ai vai ter seumap.map

Vá em http://gtamap.delux-host.com/converter/ e selecione a opção Pawn for SA:MP. Agora, clique em procurar, ou search, como estiver, e coloque onde estiver o seumap.map . Agora aparecerá lá em baixo

CreateObject....... Isso, você vai colocar depois de tudo no OnGameModeInit()

. Simples , agora , seu server tem mapas feitos por você!

[PAWN] Fazendo mensagens entrada e saida

Coisa bem simples também galera. Pode ser difícil de entender, mas depois que entender é só alegria.

OnPlayerConnect(playerid)
{
new pName[MAX_PLAYER_NAME],string[1024];// Cria as arrays (eu coloco string 1024 para ter folga)
GetPlayerName(playerid,pname,sizeof(pname));//Pega o nome do player e transforma na variável pName (lembrando que tudo no pawno identifica maiusculo e minúsculo.)
format(string,sizeof(string),"%s Entrou no Servidor",pname);
SendClientMessageToAll(0xFF0000AA,string);
}
OnPlayerDisconnect(playerid)
{
new pName[MAX_PLAYER_NAME],string[1024];
GetPlayerName(playerid,pname,sizeof(pname));
format(string,sizeof(string),"%s saiu do servidor",pname);
SendClientMessageToAll(0xFF0000AA,string);
}

Facil não é mesmo??

[PAWN] Como fazer um comando de Suicidio

Bom, é simples, alguns podem até estar imaginando um bixo de 7 cabeças, mas não é.

if(!strcmp(cmdtext, "/morrer", true)==0) // Quando o player digitar /morrer
{
SetPlayerHealth(playerid,-1); // Deixará a vida do player -1 (morte instantânea)
}

Muito bem, é isso.

[PAWN]Fazendo o player nascer com armas e dinheiro

Oi. Vou explicar como fazer o player nascer com armas e dinheiro sempre que nascer.

Bom, pra isso, é essencial nós fazermos um anti-glitcher, que seria previnir que o player ganhe muito dinheiro só morrendo e nascendo.

Primeiro, depois dos #include faça:

new Spawnado[MAX_PLAYERS];

Em OnPlayerConnect(playerid)

Spawnado = 0;

Agora vamos em OnPlayerSpawn(playerid)

if(Spawnado[playerid] == 0)
{
GivePlayerMoney(playerid,10000);//Dar 10k quando entrar
GivePlayerWeapon(playerid,21,500);//Dá um colt 45 com 500 balas quando entrar
Spawnado[playerid] = 1]
}
if(Spawnado[playerid] == 1)
{
SendClientMessage(playerid,0xFF0000,"Você já nasceu uma vez, não ganhará nem dinheiro nem armas.");//Manda a mensagem que o player não ganhará nenhuma arma nem dinheiro.
}

Simples não?

[PAWN] Colocando Comentários

No ultimo post , vocês devem ter percebido que eu coloquei //Instruções em cada função.
Essa função serve para dar um comentário à algo
Por exemplo:

public Trololo()//Comentarios aqui....


É util para fazer GMs que vão ser destinados a estudos dos novatos.

É isso

[PAWN] Criando sistema de level simples

Bom, pra começar, vamos fazer a array.

new Level[MAX_PLAYERS];

Agora vamos fazer o forward, que é o tempo que o player vai demorar pra ganhar o level.

forward Levelup(playerid);

Agora, no final do Gamemode coloque:

public Levelup(playerid)
{
if(Level[playerid] < 100) // Aqui significa - if ( Se ) Level Menor que 100, o player pode ganhar level.
{
Level[playerid]++ // ++ = +1 level
}
if(Level[playerid] == 100)
{
SendClientMessage(playerid,0xFF0000,"Você chegou no nível MÁXIMO!! Parabéns!");//Ai ele para de ganhar level no nivel 100
}
return 1
}


Agora, no OnGameModeInit()

SetTimer("Levelup",600000,true);//A cada 10 minutos o player ganha um level, você pode mudar isso, 600000ms (milisegundos).

[PAWN] Limitando zona de chat

Bom, vou ensinar como limitar até onde as mensagens escritas no T vão chegar.

Vai ter o :

OnGameModeInit()
{

Depois disso, coloque:

LimitGlobalChatRadius(ZONA);

Isso da zona é importante, zona = Metros Proporcionais ao GTA

Eu deixo em 40. Mas você pode colocar quanto quiser.

É isso. =D

[PAWN]Programação Básica

Olá. Sou novato em PAWN. Estou começando a me aprofundar, e tudo que eu for aprendendo, eu postarei aqui, para ajudar todo mundo que tem duvidas na liguagem usada em SA-MP.