Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <sampgdk/a_objects.h>
- #include <sampgdk/a_players.h>
- #include <sampgdk/a_samp.h>
- #include <sampgdk/a_vehicles.h>
- #include <sampgdk/core.h>
- #include <sampgdk/plugin.h>
- int AText[MAX_PLAYERS];
- int AText0;
- int AText1;
- int AText2;
- int AText3;
- int AText4;
- int AText5;
- int AText6;
- int AText7;
- int AText8;
- int AText9;
- int AText10;
- typedef void (*logprintf_t)(char* format, ...);
- //#pragma comment(lib, "C:/Program Files (x86)/sampgdk 3.1/lib/sampgdk3.lib") // musst die bibiliothek noch linken ;)
- logprintf_t logprintf;
- cell AMX_NATIVE_CALL SendClientMessageForInt(AMX* amx, cell* params)
- {
- int index = NULL;
- cell *addr = NULL;
- amx_GetAddr(amx, params[2], &addr);
- amx_StrLen(addr, &index);
- char* message = new char[index];
- amx_GetString(message, addr, 0, index);
- for(int i = NULL;i<MAX_PLAYERS;i++)
- {
- if(params[3] >= params[4] && params[3] <= params[5]) { SendClientMessage(i,params[1],message); }
- }
- return 1;
- }
- cell AMX_NATIVE_CALL SendClientMessageForPVar(AMX* amx, cell* params)
- {
- int index = NULL;
- cell *addr = NULL;
- amx_GetAddr(amx, params[2], &addr);
- amx_StrLen(addr, &index);
- char* message = new char[index];
- amx_GetString(message, addr, 0, index);
- amx_GetAddr(amx, params[3], &addr);
- amx_StrLen(addr, &index);
- char* pvar = new char[index];
- amx_GetString(pvar, addr, 0, index);
- for(int i = NULL;i<MAX_PLAYERS;i++)
- {
- if(GetPVarInt(i,pvar) >= params[4] && GetPVarInt(i,pvar) <= params[5]) { SendClientMessage(i,params[1],message); }
- }
- return 1;
- }
- cell AMX_NATIVE_CALL SetJetpackForAll(AMX* amx, cell* params)
- {
- for(int i = NULL;i<MAX_PLAYERS;i++)
- {
- if(!IsPlayerConnected(i))continue;
- if(params[2] == 1) { SetPlayerSpecialAction(i,SPECIAL_ACTION_USEJETPACK); }
- if(params[2] == 0) { ClearAnimations(i, 1); }
- }
- return 1;
- }
- cell AMX_NATIVE_CALL SetJetpackForPlayer(AMX* amx, cell* params)
- {
- if(params[2] == 0)return ClearAnimations(params[1], 1);
- return SetPlayerSpecialAction(params[1],SPECIAL_ACTION_USEJETPACK);
- }
- cell AMX_NATIVE_CALL GetADialogID(AMX* amx, cell* params)
- {
- return AText[params[1]];
- }
- cell AMX_NATIVE_CALL ReturnADialogStatus(AMX* amx, cell* params)
- {
- if(params[1] == AText6) { return 1; }
- if(params[1] == AText7) { return 2; }
- if(params[1] == AText8) { return 3; }
- if(params[1] == AText9) { return 4; }
- return 0;
- }
- cell AMX_NATIVE_CALL LoadADialog(AMX* amx, cell* params)
- {
- AText0 = TextDrawCreate(543.000000, 136.000000, "_");
- TextDrawBackgroundColor(AText0, 255);
- TextDrawFont(AText0, 1);
- TextDrawLetterSize(AText0, (float)0.830000, (float)24.000000);
- TextDrawColor(AText0, -1);
- TextDrawSetOutline(AText0, 0);
- TextDrawSetProportional(AText0, 1);
- TextDrawSetShadow(AText0, 1);
- TextDrawUseBox(AText0, 1);
- TextDrawBoxColor(AText0, 136);
- TextDrawTextSize(AText0, 130.000000, 80.000000);
- AText1 = TextDrawCreate(527.000000, 150.000000, "_");
- TextDrawBackgroundColor(AText1, 255);
- TextDrawFont(AText1, 1);
- TextDrawLetterSize(AText1, 0.500000, 18.000000);
- TextDrawColor(AText1, -1);
- TextDrawSetOutline(AText1, 0);
- TextDrawSetProportional(AText1, 1);
- TextDrawSetShadow(AText1, 1);
- TextDrawUseBox(AText1, 1);
- TextDrawBoxColor(AText1, 255);
- TextDrawTextSize(AText1, 143.000000, 0.000000);
- AText2 = TextDrawCreate(154.000000, 327.000000, "1");
- TextDrawBackgroundColor(AText2, 255);
- TextDrawFont(AText2, 0);
- TextDrawLetterSize(AText2, (float)0.700000, (float)1.899999);
- TextDrawColor(AText2, -1);
- TextDrawSetOutline(AText2, 0);
- TextDrawSetProportional(AText2, 1);
- TextDrawSetShadow(AText2, 1);
- TextDrawUseBox(AText2, 1);
- TextDrawBoxColor(AText2, 255);
- TextDrawTextSize(AText2, 169.000000, 0.000000);
- AText3 = TextDrawCreate(278.000000, 327.000000, "2");
- TextDrawBackgroundColor(AText3, 255);
- TextDrawFont(AText3, 0);
- TextDrawLetterSize(AText3, (float)0.700000, (float)1.899999);
- TextDrawColor(AText3, -1);
- TextDrawSetOutline(AText3, 0);
- TextDrawSetProportional(AText3, 1);
- TextDrawSetShadow(AText3, 1);
- TextDrawUseBox(AText3, 1);
- TextDrawBoxColor(AText3, 255);
- TextDrawTextSize(AText3, 297.000000, 0.000000);
- AText4 = TextDrawCreate(356.000000, 327.000000, "3");
- TextDrawBackgroundColor(AText4, 255);
- TextDrawFont(AText4, 0);
- TextDrawLetterSize(AText4, (float)0.700000, (float)1.899999);
- TextDrawColor(AText4, -1);
- TextDrawSetOutline(AText4, 0);
- TextDrawSetProportional(AText4, 1);
- TextDrawSetShadow(AText4, 1);
- TextDrawUseBox(AText4, 1);
- TextDrawBoxColor(AText4, 255);
- TextDrawTextSize(AText4, 373.000000, -3.000000);
- AText5 = TextDrawCreate(493.000000, 327.000000, "4");
- TextDrawBackgroundColor(AText5, 255);
- TextDrawFont(AText5, 0);
- TextDrawLetterSize(AText5, (float)0.700000, (float)1.899999);
- TextDrawColor(AText5, -1);
- TextDrawSetOutline(AText5, 0);
- TextDrawSetProportional(AText5, 1);
- TextDrawSetShadow(AText5, 1);
- TextDrawUseBox(AText5, 1);
- TextDrawBoxColor(AText5, 255);
- TextDrawTextSize(AText5, 511.000000, -3.000000);
- AText6 = TextDrawCreate(150.000000, 170.000000, "1.)");
- TextDrawBackgroundColor(AText6, 255);
- TextDrawFont(AText6, 1);
- TextDrawLetterSize(AText6, 0.500000, 1.000000);
- TextDrawColor(AText6, -1);
- TextDrawSetOutline(AText6, 0);
- TextDrawSetProportional(AText6, 1);
- TextDrawSetShadow(AText6, 1);
- AText7 = TextDrawCreate(150.000000, 200.000000, "2.)");
- TextDrawBackgroundColor(AText7, 255);
- TextDrawFont(AText7, 1);
- TextDrawLetterSize(AText7, 0.500000, 1.000000);
- TextDrawColor(AText7, -1);
- TextDrawSetOutline(AText7, 0);
- TextDrawSetProportional(AText7, 1);
- TextDrawSetShadow(AText7, 1);
- AText8 = TextDrawCreate(150.000000, 233.000000, "3.)");
- TextDrawBackgroundColor(AText8, 255);
- TextDrawFont(AText8, 1);
- TextDrawLetterSize(AText8, 0.500000, 1.000000);
- TextDrawColor(AText8, -1);
- TextDrawSetOutline(AText8, 0);
- TextDrawSetProportional(AText8, 1);
- TextDrawSetShadow(AText8, 1);
- AText9 = TextDrawCreate(150.000000, 272.000000, "4.)");
- TextDrawBackgroundColor(AText9, 255);
- TextDrawFont(AText9, 1);
- TextDrawLetterSize(AText9, 0.500000, 1.000000);
- TextDrawColor(AText9, -1);
- TextDrawSetOutline(AText9, 0);
- TextDrawSetProportional(AText9, 1);
- TextDrawSetShadow(AText9, 1);
- AText10 = TextDrawCreate(255.000000, 118.000000, "Titel");
- TextDrawBackgroundColor(AText10, 255);
- TextDrawFont(AText10, 2);
- TextDrawLetterSize(AText10, 0.500000, 1.500000);
- TextDrawColor(AText10, -1);
- TextDrawSetOutline(AText10, 0);
- TextDrawSetProportional(AText10, 1);
- TextDrawSetShadow(AText10, 1);
- TextDrawUseBox(AText10, 1);
- TextDrawBoxColor(AText10, 255);
- TextDrawTextSize(AText10, 410.000000, 0.000000);
- TextDrawSetSelectable(AText6,true);
- TextDrawSetSelectable(AText7,true);
- TextDrawSetSelectable(AText8,true);
- TextDrawSetSelectable(AText9,true);
- return 1;
- }
- cell AMX_NATIVE_CALL ShowADialog(AMX* amx, cell* params)
- {
- //ShowADialog(playerid, stringueberschrift,string1, string2, string3, string4, COLORCODE(Interger));
- //sechs Bis neun = Antworte
- int index = NULL;
- cell *addr = NULL;
- amx_GetAddr(amx, params[3], &addr);
- amx_StrLen(addr, &index);
- char* ueberschrift = new char[index];
- amx_GetString(ueberschrift, addr, 0, index);
- amx_GetAddr(amx, params[4], &addr);
- amx_StrLen(addr, &index);
- char* eins = new char[index];
- amx_GetString(eins, addr, 0, index);
- amx_GetAddr(amx, params[5], &addr);
- amx_StrLen(addr, &index);
- char* zwei = new char[index];
- amx_GetString(zwei, addr, 0, index);
- amx_GetAddr(amx, params[6], &addr);
- amx_StrLen(addr, &index);
- char* drei = new char[index];
- amx_GetString(drei, addr, 0, index);
- amx_GetAddr(amx, params[7], &addr);
- amx_StrLen(addr, &index);
- char* vier = new char[index];
- amx_GetString(vier, addr, 0, index);
- AText[params[1]] = params[2];
- TextDrawSetString(AText6,eins);
- TextDrawSetString(AText7,zwei);
- TextDrawSetString(AText8,drei);
- TextDrawSetString(AText9,vier);
- TextDrawSetString(AText10,ueberschrift);
- TextDrawShowForPlayer(params[1],AText0);
- TextDrawShowForPlayer(params[1],AText1);
- TextDrawShowForPlayer(params[1],AText2);
- TextDrawShowForPlayer(params[1],AText3);
- TextDrawShowForPlayer(params[1],AText4);
- TextDrawShowForPlayer(params[1],AText5);
- TextDrawShowForPlayer(params[1],AText6);
- TextDrawShowForPlayer(params[1],AText7);
- TextDrawShowForPlayer(params[1],AText8);
- TextDrawShowForPlayer(params[1],AText9);
- TextDrawShowForPlayer(params[1],AText10);
- SelectTextDraw(params[1], params[8]);
- return 1;
- }
- cell AMX_NATIVE_CALL HideADialog(AMX* amx, cell* params)
- {
- TextDrawHideForPlayer(params[1],AText0);
- TextDrawHideForPlayer(params[1],AText1);
- TextDrawHideForPlayer(params[1],AText2);
- TextDrawHideForPlayer(params[1],AText3);
- TextDrawHideForPlayer(params[1],AText4);
- TextDrawHideForPlayer(params[1],AText5);
- TextDrawHideForPlayer(params[1],AText6);
- TextDrawHideForPlayer(params[1],AText7);
- TextDrawHideForPlayer(params[1],AText8);
- TextDrawHideForPlayer(params[1],AText9);
- TextDrawHideForPlayer(params[1],AText10);
- CancelSelectTextDraw(params[1]);
- return 1;
- }
- PLUGIN_EXPORT unsigned int PLUGIN_CALL Supports()
- {
- return SUPPORTS_VERSION | SUPPORTS_AMX_NATIVES;
- }
- PLUGIN_EXPORT bool PLUGIN_CALL Load(void **ppPluginData)
- {
- sampgdk_initialize_plugin(ppPluginData);
- logprintf = (logprintf_t) ppPluginData[PLUGIN_DATA_LOGPRINTF];
- logprintf(" * Dialog plugin by Arendium was loaded.");
- return true;
- }
- PLUGIN_EXPORT void PLUGIN_CALL Unload()
- {
- logprintf(" * Test plugin was unloaded Max Players: %d");
- }
- AMX_NATIVE_INFO PluginNatives[] =
- {
- {"HideADialog",HideADialog},
- {"ShowADialog",ShowADialog},
- {"ReturnADialogStatus",ReturnADialogStatus},
- {"GetADialogID",GetADialogID},
- {"LoadADialog",LoadADialog},
- {"SetJetpackForPlayer",SetJetpackForPlayer},
- {"SetJetpackForAll",SetJetpackForAll},
- {"SendClientMessageForPVar",SendClientMessageForPVar},
- {"SendClientMessageForInt",SendClientMessageForPVar},
- {0, 0}
- };
- PLUGIN_EXPORT int PLUGIN_CALL AmxLoad( AMX *amx )
- {
- return amx_Register(amx, PluginNatives, -1);
- }
- PLUGIN_EXPORT int PLUGIN_CALL AmxUnload( AMX *amx )
- {
- return AMX_ERR_NONE;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement