Multi oameni vor sa stie cum creezi un plugin folosind Microsoft Visual C++ 2008/2010. Unii oameni cred ca este greu dar defapt este simplu
Voi explica pas cu pas cum se creeaza un plugin.
Lucruri de stiut inainte sa incepi
Trebuie sa instalezi Microsoft Visual C++.
Trebuie sa ai experienta in pawno pentru a intelege unele lucruri.
SA-MP Software Development Kit (SDK).
Cum?
Deschide Microsoft Visual C++ (2008/2010 version).
Dute la "File" apasa pe "New" si alege "Project".
Vei vedea un dialog.
Alege "Win32 Project", scrie un nume si apoi apasa "OK" pentru a continua.
Va aparea urmatorul dialog
Apasa "Next" pentru a continua.
In urmatorul dialog trebuie sa selectezi "DLL" apoi apasa butonul "Finish".
Apasa pe "View" si alege "Other windows" apoi apasa "Solution explorer")
Dupa cum vezi am numit proiectul "Test". Apasa click pe "Test" la "Solution explorer" si alege "Properties".
Vei vedea urmatorul dialog.
In dreapta, click pe "Linker" apoi alege "Input" . "Module Definition File" este numele proiectului apoi apasa "OK".
ute inapoi la "solution explorer" si apasa click dreapta pe pe numele proiectului tau apoi alege "Add", si apoi apasa click "New Item".
In urmatorul dialog, alege "C++ File (.cpp)" si jos la "Name" scrii ce scrii la "Module Definition File" (in step 11). apoi apasa "Add".
Apasa click dreapta pe numele proiectului tau, alege "Add" si apasa "New Item" iar.
Apoi faci la fel, alegi"C++ File (.cpp)" dar acum, scrii la "Name" numele care lai ales inainte dar acu cu extensia ".cpp" . Apoi apasa "Add".
cum vei vedea 2 tabele: "YourProjectName.def" si "YourProjectName.cpp".
Deschide"YourProjectName.def" si da paste paste la urmatorul cod:
Acum deschide "YourProjectName.cpp" si copie urmatorul cod:
Dute inapoi la " Solution explorer" si apasa click dreapta pe numele proiectului tau , alege "Add", si da click pe "New Filter". Acum vei vedea ca s-a creat un nou fisiel. Schimbai numele cu "SDK".
Da extract la fisierul "SDK" si il downloadezi in "Documents/Visual Studio 2010/Projects/YourProjectName/".
Dute la "Solution explorer" si da click dreapta pe "SDK" pe care l-ai creat si apasa"Add", apoi da click pe "Existing Item".
un dialog va aparea, acum cauta folderul in care ai descarcat "SDK" si alege "amxplugin.cpp".
Acum apasa F7 pentru compilare.
Vei gasi fisierul .dll in folderul de Degug.
Crearea unui native
Adauga asta undeva prin scriptul tau .cpp:
Dute la:
Adauga "{ "YourNativeNameHere", YourNativeNameHere }", asa:
Compileaza si dute la folderul Debug-ului.
Alege fisierul .dll si scrie asta in fisierul serverului tau (.pwn).
Creaza un .pwn si adauga "native YourNativeNameHere();" in script. Si folosestel sub "OnFilterScriptInit".
Iti deschizi serverul, si ar trebui sa se printeze ca: "Mi-am facut primul plugin :)".
Asta este doar baza. Acum iti poti crea propriile pluginuri!
NOTE: Daca vrei sa creezi un native cu parametri, poti folosi "params[]" incepand de la index 1.
P.S:Acest tutorial nu este facut de mine , dar de aici am invatat eu cat de cat
Sursa
Voi explica pas cu pas cum se creeaza un plugin.
Lucruri de stiut inainte sa incepi
Trebuie sa instalezi Microsoft Visual C++.
Trebuie sa ai experienta in pawno pentru a intelege unele lucruri.
SA-MP Software Development Kit (SDK).
Cum?
Deschide Microsoft Visual C++ (2008/2010 version).
Dute la "File" apasa pe "New" si alege "Project".
Vei vedea un dialog.
Alege "Win32 Project", scrie un nume si apoi apasa "OK" pentru a continua.
Va aparea urmatorul dialog
Apasa "Next" pentru a continua.
In urmatorul dialog trebuie sa selectezi "DLL" apoi apasa butonul "Finish".
Apasa pe "View" si alege "Other windows" apoi apasa "Solution explorer")
Dupa cum vezi am numit proiectul "Test". Apasa click pe "Test" la "Solution explorer" si alege "Properties".
Vei vedea urmatorul dialog.
In dreapta, click pe "Linker" apoi alege "Input" . "Module Definition File" este numele proiectului apoi apasa "OK".
ute inapoi la "solution explorer" si apasa click dreapta pe pe numele proiectului tau apoi alege "Add", si apoi apasa click "New Item".
In urmatorul dialog, alege "C++ File (.cpp)" si jos la "Name" scrii ce scrii la "Module Definition File" (in step 11). apoi apasa "Add".
Apasa click dreapta pe numele proiectului tau, alege "Add" si apasa "New Item" iar.
Apoi faci la fel, alegi"C++ File (.cpp)" dar acum, scrii la "Name" numele care lai ales inainte dar acu cu extensia ".cpp" . Apoi apasa "Add".
cum vei vedea 2 tabele: "YourProjectName.def" si "YourProjectName.cpp".
Deschide"YourProjectName.def" si da paste paste la urmatorul cod:
- Cod:
EXPORTS
Supports
Load
Unload
AmxLoad
AmxUnload
Acum deschide "YourProjectName.cpp" si copie urmatorul cod:
- Cod:
#include "../SDK/plugin.h"
typedef void
(*logprintf_t)(char* format, ...)
;
logprintf_t
logprintf
;
void
**ppPluginData
;
extern void
*pAMXFunctions
;
PLUGIN_EXPORT bool PLUGIN_CALL Load(void **ppData)
{
pAMXFunctions = ppData[PLUGIN_DATA_AMX_EXPORTS];
logprintf = (logprintf_t)ppData[PLUGIN_DATA_LOGPRINTF];
return 1;
}
PLUGIN_EXPORT void PLUGIN_CALL Unload()
{
}
AMX_NATIVE_INFO projectNatives[] =
{
{ 0, 0 }
};
PLUGIN_EXPORT unsigned int PLUGIN_CALL Supports()
{
return SUPPORTS_VERSION | SUPPORTS_AMX_NATIVES;
}
PLUGIN_EXPORT int PLUGIN_CALL AmxLoad(AMX *amx)
{
return amx_Register(amx, projectNatives, -1);
}
PLUGIN_EXPORT int PLUGIN_CALL AmxUnload(AMX *amx)
{
return AMX_ERR_NONE;
}
Dute inapoi la " Solution explorer" si apasa click dreapta pe numele proiectului tau , alege "Add", si da click pe "New Filter". Acum vei vedea ca s-a creat un nou fisiel. Schimbai numele cu "SDK".
Da extract la fisierul "SDK" si il downloadezi in "Documents/Visual Studio 2010/Projects/YourProjectName/".
Dute la "Solution explorer" si da click dreapta pe "SDK" pe care l-ai creat si apasa"Add", apoi da click pe "Existing Item".
un dialog va aparea, acum cauta folderul in care ai descarcat "SDK" si alege "amxplugin.cpp".
Acum apasa F7 pentru compilare.
Vei gasi fisierul .dll in folderul de Degug.
Crearea unui native
Adauga asta undeva prin scriptul tau .cpp:
- Cod:
static cell AMX_NATIVE_CALL YourNativeNameHere(AMX *amx, cell *params)
{
logprintf("Mi-am creat primul meu plugin )");
return 1;
}
Dute la:
- Cod:
AMX_NATIVE_INFO projectNatives[] =
{
{ 0, 0 }
};
Adauga "{ "YourNativeNameHere", YourNativeNameHere }", asa:
- Cod:
AMX_NATIVE_INFO projectNatives[] =
{
{ "YourNativeNameHere", YourNativeNameHere } // In primul array, scrii numele native-ului care il vei folosi in PAWN. In prima parte, scrii numele in fisierul .cpp .
};
Compileaza si dute la folderul Debug-ului.
Alege fisierul .dll si scrie asta in fisierul serverului tau (.pwn).
Creaza un .pwn si adauga "native YourNativeNameHere();" in script. Si folosestel sub "OnFilterScriptInit".
- Cod:
#include <a_samp>
native YourNativeNameHere();
public OnFilterScriptInit()
{
YourNativeNameHere();
return 1;
}
Iti deschizi serverul, si ar trebui sa se printeze ca: "Mi-am facut primul plugin :)".
Asta este doar baza. Acum iti poti crea propriile pluginuri!
NOTE: Daca vrei sa creezi un native cu parametri, poti folosi "params[]" incepand de la index 1.
P.S:Acest tutorial nu este facut de mine , dar de aici am invatat eu cat de cat
Sursa