[size=32]Topicos:
[/size]
[list="box-sizing: border-box; margin-top: 0px; margin-bottom: 10px; list-style-type: decimal;"][*]Introduзгo[/size]
- c/c++
[*]Requerimentos
- Download
- Code::Blocks
- SampGdk
[*]Configuraзгo.
- Code::Blocks
- SampGdk
[*]Teste
- Source
[*]Crйditos
[/list]
[list="box-sizing: border-box; margin-bottom: 10px; color: rgb(51, 51, 51); font-family:"][*]Tуpico foi criado com o intuito de ajudar no desenvolvimento de projetos em IDE diferentes do Visual Studio. PS: O foco atual deste tutorial й para Linux. Porйm poderб haver uma versгo windows se alguйm quiser contribuir.
- Neste tуpico nгo irei ajudar pessoas sobre c/c++/etc.
[*]IDE Code::Blocks,Sampgdk e conhecimento bбsico em c/c++.
- Downloads necessбrios:
- CodeBlocks->http://www.codeblocks.org/downloads
[*]Configuraзгo
[list="box-sizing: border-box;"][*]CodeBlocks:
[list="box-sizing: border-box;"][*]File->New->Project.
[*]Selecione: Shared Library na aba projects.
[*]Clique em next -> escolha a linguagem c ou c++ -> escolha o titulo e etc. -> escolha o compilador, deixe GNU GCC COMPILER.(ou pule essa parte.)
[*]Quase Tudo pronto, Apenas precisamos configurar o compilador e fazer um link com o sampgdk. Vб em projetcs-> build options ->
[*]Nesta aba "Compile Setting", vб para "Compile Flags", lб existem vбrias opзхes para o compilador. Apenas irei mencionar as que eu uso para evitar ao mбximo o desnecessбrio. Marque a caixinha destas.
Aba Debug:
Produce debugging symbols [-g]
Aba Release:
Produce debugging symbols [-g]
[*]Pronto feito. O compilador estб pronto. Agora vamos fazer o link.
Neste mesmo lugar, terб uma aba "linker settings". Clique em "add" e apenas adicione isto "sampgdk". sem aspas.
[*]Terminamos a parte do IDE.
[/list]
[*]Sampgdk:
[list="box-sizing: border-box;"][*]Baixe a ultima versгo normal(Nгo baixe static.) do tipo .sh.
[*]Abra o terminal. use o comando cd e vб atй o diretуrio onde estб o .sh.
[*]Faзa o login como sudo. (comando -> "sudo su", depois a senha)
[*]Agora digite isso -> "sh sampgdk-x.y.z-Linux.sh --prefix=/usr/local" onde x.y.z й a versгo.(coloque para qual versгo vocк baixou.). Apуs isso aperte enter.
[*]Aceite as condiзхes por apertando "y" + enter, Depois pressione "Q" e por fim, aperte "y" + enter para instalar na pasta default.
[/list]
[/list]
[*]Teste:
Source helloworld.cpp by Zeex.
PHP код:
- Código:
#include <sampgdk/a_players.h>
#include <sampgdk/a_samp.h>
#include <sampgdk/core.h>
#include <sampgdk/plugin.h>
#include <cstdio>
static ThisPlugin teste;
PLUGIN_EXPORT bool PLUGIN_CALL OnGameModeInit() {
ServerLog::Printf("------------------------------------------\n");
ServerLog::Printf(" Plugin Carregado com sucesso. \n");
ServerLog::Printf("------------------------------------------\n");
return true;
}
PLUGIN_EXPORT unsigned int PLUGIN_CALL Supports() {
return SUPPORTS_VERSION | SUPPORTS_PROCESS_TICK;
}
PLUGIN_EXPORT bool PLUGIN_CALL Load(void **ppData) {
return teste.Load(ppData) >= 0;
}
PLUGIN_EXPORT void PLUGIN_CALL Unload() {
teste.Unload();
}
PLUGIN_EXPORT void PLUGIN_CALL ProcessTick() {
teste.ProcessTimers();
}
- Volte para o code::blocks, copie e cole este source no seu source(".cpp"). Apуs isso, apenas apertar "ctrl" + "f9" para construir o plugin (.so). Agora estб pronto, basta configurar na pasta do seu servidor e o server.cfg que ele irб carregar e funcionar perfeitamente.
[*]Notas Finais:
- Como foi dito no comeзo, este tutorial apenas foi feito para linux. Porque? Linux й foda, sу isso.
- Bom... mas vai ter outro para windows? Nгo sei. se eu conseguir emular o compilador + ide eu poderia atй fazer a versгo windows, ou atй mesmo se alguйm quiser colaborar com alguma coisa. Enfim, para quem quiser tentar no windows, bastar instalar o compilador MinGW, definir como compilador principal no code::blocks e ao invйs de baixar o sampgdk .sh que й para linux, baixe o .exe e instale na pasta do sistema. feito isso, na criaзгo do projeto, mude, escolha "DLL" e depois й apenas seguir os outros passos que deve funcionar.
- Alguns devem estar se perguntando sobre o porque de nгo usar o ".def". No linux, nгo й necessбrio. pois o GCC/G++ funciona de forma diferente do VC++. Isto й bom, pois nгo deverб precisar do ".def" caso tentar usar o "MinGW", como explicado acima.
- Ultima nota, Eu tentarei adicionar hoje a noite outro IDE, Geany. Programa й em portuguкs, simples e direto.
[*]Crйditos:
- Todos os direitos estгo reservados aos seus devidos criadores.
[/list]
PSS: Aceito sugestхes/erros/crнticas e etc.
Creditos: Leonardo1434 (Zuriki)