06.07.2013, 02:43
(
Последний раз редактировалось Coe1; 09.07.2013 в 15:56.
)
Olб,
Bom, aqui neste tуpico irei criar um simples tutorial de como criar um sistema de skin com a include mSelection. Creio que ela seja boa tanto como para servidor RP/G tanto para MATA-MATA.
Demo:
http://prntscr.com/1dsw4g
Vocк pode usar esse sistema como exemplo e aprimorar para seu servidor, utilizando ele como um menu para binco / zip com cada um menu com um tipo de skin.
Bom, atravйs de um post do @iMega eu decidi atualizar o tutorial.
Vamos lб..
No arquivo skins.txt ou o arquivo de seu nome que vocк colocou й possнvel colocar outros objetos.
Como Ex: Rodas, aerofуlios, veнculos e etc..
Existe algumas formas de colocar o arquivo, que sгo essas:
MODELID Rotaзгo:X Rotaзгo:Y Rotaзгo:Z
Ex:
Se vocк colocar dessa forma acima, nгo irб funcionar. Isso quer dizer que na hora de mostrar o menu, ele nгo serб mostrado.
A forma correta seria:
Conclusгo: 1: http://prntscr.com/1efby4
Vamos ao segundo exemplo que seria o menu de rodas.
rodas.txt:
Conclusгo: http://prntscr.com/1efd4j
Vejam que na imagem ficou o CJ, porque no caso abaixo do modelid 1082 eu deixei um espaзo em "branco" que no caso foi considerado como " 0 " que o ID da skin do CJ.
@Crйditos
mSelection - d0 tуpico: mSelection 1.1
Tуpico - Coe1.
O script/exemplo utilizado para explicar as funзхes й de autoria do D0. ( O script encontra-se no tуpico da include. )
Crнticas ? Pode falar para que o prуximo tуpico saia melhor.
Obrigado.
@Tуpico atualizado.
Bom, aqui neste tуpico irei criar um simples tutorial de como criar um sistema de skin com a include mSelection. Creio que ela seja boa tanto como para servidor RP/G tanto para MATA-MATA.
Demo:
http://prntscr.com/1dsw4g
Vocк pode usar esse sistema como exemplo e aprimorar para seu servidor, utilizando ele como um menu para binco / zip com cada um menu com um tipo de skin.
pawn Код:
#include <a_samp> // nгo hб oque explicar.
#include <mSelection> // include que utilizaremos para fazer o sistema de skin
#include <ZCMD> // Processador de comandos utilizado no sistema
new skinlist = mS_INVALID_LISTID;
public OnFilterScriptInit()
{ // abrindo a chave
skinlist = LoadModelSelectionMenu("skins.txt"); // nesta funзгo quando o sistema for iniciado ele irб carregar oque ta dentro da skins.txt
return 1; // na skin.txt localiza em scriptfiles vocк pode Adicionar / retirar o ID de skin que vocк quiser, assim fazendo do seu jeito.
} // fechando a chave
CMD:skin(playerid) // comando /skin para mostrar o menu
{ // abrindo a chave do cmd
ShowModelSelectionMenu(playerid, skinlist, "Menu de Skin"); // aqui mostrarб o menu de skin e em "Menu de Skin" vocк bota o nome desejado para aparecer como titulo
return 1; // retornando o comando. Sem ele virб a mensage
} // fechamento da chave do cmd
public OnPlayerModelSelection(playerid, response, listid, modelid) // public da include MSelection, esta public quando vocк clicar em um item serб executada uma funзгo.
{//abrimento da chave da public
if(listid == skinlist) // essa й a listid da skinlist ( skinlist = LoadModelSelectionMenu("skin.txt");
{//chave aberta
if(response)
if(GetPlayerMoney(playerid) >= 500) // essa funзгo irб checar se o dinheiro do player й maior ou igual a 500 se nгo executarб o else abaixo
{//abre chave
SendClientMessage(playerid, -1, "[ > ] Vocк optou por uma nova skin"); // se a funзгo acima for executada o servidor enviarб esta mensagem ao player dizendo que ele comprou a skin
GivePlayerMoney(playerid, -500); // Essa funзгo irб retirar $500 do player quando ele clicar na skin desejada
SetPlayerSkin(playerid, modelid); // Aqui irб setar a skin do player quando ele comprar ela.
}//fecha chave
else
{//abre chave
SendClientMessage(playerid, 0xFF0000FF, " [ x ] Vocк precisa de $500 para obter uma nova skin");//se o player nao tiver 500$ esse else enviarб essa mensagem ao player
}// fecha chave
else SendClientMessage(playerid, 0xFF0000FF, "[ x ] Vocк decidiu fechar o menu de skin.");// quando o player clicar em Cancelar para fechar o menu, o server enviarб esta mensagem ao player.
return 1;// retornando true/verdadeiro
}//chave fechada
return 1; // retornando true/verdadeiro
}//fechamento da chave da public
Vamos lб..
No arquivo skins.txt ou o arquivo de seu nome que vocк colocou й possнvel colocar outros objetos.
Como Ex: Rodas, aerofуlios, veнculos e etc..
Existe algumas formas de colocar o arquivo, que sгo essas:
MODELID Rotaзгo:X Rotaзгo:Y Rotaзгo:Z
Ex:
pawn Код:
1000 0.0
1000 0.0 0.1 0.2
1000
A forma correta seria:
pawn Код:
1000
1000 0.0 0.1 0.2
1000
pawn Код:
1000: // ID do objeto / veнculo / componente
0.0: // Rotaзгo X
0.1: // Rotaзгo Y
0.2: // Rotaзгo Z
rodas.txt:
pawn Код:
1073 0.0 .0 90.0
1074 0.0 .0 90.0
1075 0.0 .0 90.0
1076 0.0 .0 90.0
1077 0.0 .0 90.0
1078 0.0 .0 90.0
1079 0.0 .0 90.0
1080 0.0 .0 90.0
1081 0.0 .0 90.0
1082 0.0 .0 90.0
// Vejam o exemplo na imagem abaixo se vocкs deixarem essa linha vazia.
Vejam que na imagem ficou o CJ, porque no caso abaixo do modelid 1082 eu deixei um espaзo em "branco" que no caso foi considerado como " 0 " que o ID da skin do CJ.
@Crйditos
mSelection - d0 tуpico: mSelection 1.1
Tуpico - Coe1.
O script/exemplo utilizado para explicar as funзхes й de autoria do D0. ( O script encontra-se no tуpico da include. )
Crнticas ? Pode falar para que o prуximo tуpico saia melhor.
Obrigado.
@Tуpico atualizado.