Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <a_samp>
- #include <a_mysql>
- #include <zcmd>
- #include <sscanf2>
- #define sql_host "localhost"
- #define sql_user "root"
- #define sql_data "serveris"
- #define sql_pass ""
- #define DIALOG_MESSENGER 0
- #define DIALOG_MESSENGER1 1
- #define DIALOG_MESSENGER2 2
- #define DIALOG_MESSENGER3 3
- #define DIALOG_MESSENGER4 4
- #define DIALOG_MESSENGER5 5
- #define DIALOG_MESSENGER6 6
- #define RANDOM(%0,%1) (random(%1-(%0))+%0)
- #define isnull(%1) ((!(%1[0])) || (((%1[0]) == '\1') && (!(%1[1]))))
- enum _playerdata
- {
- bool:havephone,
- bool:inmessengergroup,
- messengergroupid,
- bool:invitedingroup,
- invitedgroupid
- }
- new playerdata[MAX_PLAYERS][_playerdata];
- main()
- {
- print("on");
- }
- public OnGameModeInit()
- {
- SetGameModeText("0.0.1");
- AddPlayerClass(0, 1958.3783, 1343.1572, 15.3746, 269.1425, 0, 0, 0, 0, 0, 0);
- mysql_debug(true);
- mysql_connect(sql_host, sql_user, sql_data, sql_pass);
- if(mysql_ping() > 0) print("connected to mysql database!");
- else print("cant connect to mysql database!");
- return 1;
- }
- public OnGameModeExit()
- {
- return 1;
- }
- public OnPlayerRequestClass(playerid, classid)
- {
- return 1;
- }
- public OnPlayerConnect(playerid)
- {
- return 1;
- }
- public OnPlayerDisconnect(playerid, reason)
- {
- return 1;
- }
- public OnPlayerSpawn(playerid)
- {
- loadplayer(playerid);
- return 1;
- }
- public OnPlayerDeath(playerid, killerid, reason)
- {
- return 1;
- }
- public OnVehicleSpawn(vehicleid)
- {
- return 1;
- }
- public OnVehicleDeath(vehicleid, killerid)
- {
- return 1;
- }
- public OnPlayerText(playerid, text[])
- {
- return 1;
- }
- public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
- {
- return 1;
- }
- public OnPlayerExitVehicle(playerid, vehicleid)
- {
- return 1;
- }
- public OnPlayerStateChange(playerid, newstate, oldstate)
- {
- return 1;
- }
- public OnPlayerEnterCheckpoint(playerid)
- {
- return 1;
- }
- public OnPlayerLeaveCheckpoint(playerid)
- {
- return 1;
- }
- public OnPlayerEnterRaceCheckpoint(playerid)
- {
- return 1;
- }
- public OnPlayerLeaveRaceCheckpoint(playerid)
- {
- return 1;
- }
- public OnRconCommand(cmd[])
- {
- return 1;
- }
- public OnPlayerRequestSpawn(playerid)
- {
- return 1;
- }
- public OnObjectMoved(objectid)
- {
- return 1;
- }
- public OnPlayerObjectMoved(playerid, objectid)
- {
- return 1;
- }
- public OnPlayerPickUpPickup(playerid, pickupid)
- {
- return 1;
- }
- public OnVehicleMod(playerid, vehicleid, componentid)
- {
- return 1;
- }
- public OnVehiclePaintjob(playerid, vehicleid, paintjobid)
- {
- return 1;
- }
- public OnVehicleRespray(playerid, vehicleid, color1, color2)
- {
- return 1;
- }
- public OnPlayerSelectedMenuRow(playerid, row)
- {
- return 1;
- }
- public OnPlayerExitedMenu(playerid)
- {
- return 1;
- }
- public OnPlayerInteriorChange(playerid, newinteriorid, oldinteriorid)
- {
- return 1;
- }
- public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
- {
- return 1;
- }
- public OnRconLoginAttempt(ip[], password[], success)
- {
- return 1;
- }
- public OnPlayerUpdate(playerid)
- {
- return 1;
- }
- public OnPlayerStreamIn(playerid, forplayerid)
- {
- return 1;
- }
- public OnPlayerStreamOut(playerid, forplayerid)
- {
- return 1;
- }
- public OnVehicleStreamIn(vehicleid, forplayerid)
- {
- return 1;
- }
- public OnVehicleStreamOut(vehicleid, forplayerid)
- {
- return 1;
- }
- public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
- {
- new query[128];
- switch(dialogid)
- {
- case DIALOG_MESSENGER:
- {
- if(response)
- {
- switch(listitem)
- {
- case 0: messengergui(playerid, 2);
- case 1: messengergui(playerid, 3);
- }
- }
- }
- case DIALOG_MESSENGER1:
- {
- if(response)
- {
- switch(listitem)
- {
- case 0, 1: messengergui(playerid, 1);
- case 2: messengergui(playerid, 4);
- case 3: messengergui(playerid, 7);
- case 4: messengergui(playerid, 6);
- case 5: messengergui(playerid, 5);
- }
- }
- }
- case DIALOG_MESSENGER2:
- {
- if(response)
- {
- if(isnull(inputtext))
- {
- SendClientMessage(playerid, -1, "• Grupes pavadinimas turi but sudarytas is raidziu arba skaiciu!");
- messengergui(playerid, 2);
- return 1;
- }
- playerdata[playerid][messengergroupid] = RANDOM(1000, 9999);
- playerdata[playerid][inmessengergroup] = true;
- format(query, sizeof(query), "INSERT INTO `messenger_groups` (msngr_id, name, owner) VALUES ('%i', '%s', '%s')", playerdata[playerid][messengergroupid], inputtext, playername(playerid));
- mysql_query(query);
- format(query, sizeof(query), "UPDATE `players` SET messengergroupid = '%i', inmessengergroup = '%i' WHERE name = '%s'", playerdata[playerid][messengergroupid], playerdata[playerid][inmessengergroup], playername(playerid));
- mysql_query(query);
- mysql_free_result();
- messengergui(playerid, 1);
- printf("CREATED MESSENGER GROUP %s[%i] OWNER %s", inputtext, playerdata[playerid][messengergroupid], playername(playerid));
- }
- else messengergui(playerid, 0);
- }
- case DIALOG_MESSENGER3:
- {
- if(response)
- {
- if(isnull(inputtext))
- {
- SendClientMessage(playerid, -1, "• Grupes pavadinimas turi but sudarytas is raidziu arba skaiciu!");
- messengergui(playerid, 4);
- return 1;
- }
- format(query, sizeof(query), "UPDATE `messenger_groups` SET name = '%s' WHERE msngr_id = '%i'", inputtext, playerdata[playerid][messengergroupid]);
- mysql_query(query);
- messengergui(playerid, 1);
- }
- else messengergui(playerid, 1);
- }
- case DIALOG_MESSENGER4:
- {
- if(response)
- {
- format(query, sizeof(query), "DELETE FROM `messenger_groups` WHERE msngr_id = '%i'", playerdata[playerid][messengergroupid]);
- mysql_query(query);
- mysql_free_result();
- format(query, sizeof(query), "UPDATE `players` SET messengergroupid = 0, inmessengergroup = 0 WHERE name = '%s'", playername(playerid));
- mysql_query(query);
- mysql_free_result();
- playerdata[playerid][messengergroupid] = 0;
- playerdata[playerid][inmessengergroup] = false;
- SendClientMessage(playerid, -1, "• Istrynei Messenger grupe!");
- messengergui(playerid, 0);
- }
- else messengergui(playerid, 1);
- }
- case DIALOG_MESSENGER5:
- {
- if(response)
- {
- format(query, sizeof(query), "UPDATE `players` SET messengergroupid = 0, inmessengergroup = 0 WHERE name = '%s'", playername(playerid));
- mysql_query(query);
- mysql_free_result();
- playerdata[playerid][messengergroupid] = 0;
- playerdata[playerid][inmessengergroup] = false;
- SendClientMessage(playerid, -1, "• Isejai is Messenger grupes!");
- messengergui(playerid, 0);
- }
- else messengergui(playerid, 1);
- }
- }
- return 1;
- }
- public OnPlayerClickPlayer(playerid, clickedplayerid, source)
- {
- return 1;
- }
- // functions
- stock playername(playerid)
- {
- new name[MAX_PLAYER_NAME];
- GetPlayerName(playerid, name, MAX_PLAYER_NAME);
- return name;
- }
- stock loadplayer(playerid)
- {
- new query[128], fetch[16];
- format(query, sizeof(query), "SELECT * FROM `players` WHERE name = '%s'", playername(playerid));
- mysql_query(query);
- mysql_store_result();
- mysql_retrieve_row();
- mysql_fetch_field_row(fetch, "havephone");
- playerdata[playerid][havephone] = !!strval(fetch);
- mysql_fetch_field_row(fetch, "inmessengergroup");
- playerdata[playerid][inmessengergroup] = !!strval(fetch);
- mysql_fetch_field_row(fetch, "messengergroupid");
- playerdata[playerid][messengergroupid] = strval(fetch);
- printf("loaded %s", playername(playerid));
- }
- stock messengergui(playerid, gui_id)
- {
- new info[200], resultline[200], name[50], owner[24], total;
- switch(gui_id)
- {
- case 0: ShowPlayerDialog(playerid, DIALOG_MESSENGER, DIALOG_STYLE_LIST, "{ffffff}Messenger:: Grupes", "- Sukurti nauja grupe\n- Informacija apie Messenger grupes", "o", "x");
- case 1:
- {
- format(info, sizeof(info), "SELECT `name`, `owner` FROM `messenger_groups` WHERE msngr_id = %i", playerdata[playerid][messengergroupid]);
- mysql_query(info);
- mysql_store_result();
- if(mysql_fetch_row_format(resultline)) sscanf(resultline,"p<|>s[50]s[24]", name, owner);
- if(!strcmp(owner, playername(playerid))) owner = "Savininkas";
- else owner = "Narys";
- format(info, sizeof(info), "SELECT COUNT(messengergroupid) FROM players WHERE messengergroupid = %i", playerdata[playerid][messengergroupid]);
- mysql_query(info);
- total = mysql_num_rows();
- mysql_store_result();
- format(info, sizeof(info), "{ffffff}Pavadinimas\t{ffffff}Pasnekovu skaicius\t{ffffff}Statusas grupeje\n{ffffff}%s\t%i\t%s\n \n- Keisti grupes pavadinima\n- Perziureti grupes narius\n- Iseiti is grupes\n- Istrinti grupe", name, total, owner);
- ShowPlayerDialog(playerid, DIALOG_MESSENGER1, DIALOG_STYLE_TABLIST_HEADERS, "{ffffff}Messenger:: Grupes", info, "o", "x");
- }
- case 2: ShowPlayerDialog(playerid, DIALOG_MESSENGER2, DIALOG_STYLE_INPUT, "{ffffff}Messenger:: Grupes", "{ffffff}Noredamas sukurti nauja Messenger grupe, pirmiausiai turi sugalvoti jos pavadinima:", "o", "x");
- case 3:
- {
- if(!playerdata[playerid][invitedingroup] && playerdata[playerid][invitedgroupid] < 999)
- {
- SendClientMessage(playerid, -1, "• Tu neesi pakviestas i jokia Messenger grupe!");
- messengergui(playerid, 0);
- }
- else
- {
- // INFORMACIJA APIE MESSENGERIO GRUPES
- }
- }
- case 4: ShowPlayerDialog(playerid, DIALOG_MESSENGER3, DIALOG_STYLE_INPUT, "{ffffff}Messenger:: Grupes", "{ffffff}Irasykite grupes nauja pavadinima:", "o", "x");
- case 5: ShowPlayerDialog(playerid, DIALOG_MESSENGER4, DIALOG_STYLE_MSGBOX, "{ffffff}Messenger:: Grupes", "{ffffff}Ar tikrai norite istrinti grupe?", "o", "x");
- case 6: ShowPlayerDialog(playerid, DIALOG_MESSENGER5, DIALOG_STYLE_MSGBOX, "{ffffff}Messenger:: Grupes", "{ffffff}Ar tikrai norite iseiti is grupes?", "o", "x");\
- case 7:
- {
- for(new i = 0, size = GetPlayerPoolSize(); i <= size; i ++)
- {
- if(playerdata[playerid][messengergroupid] == playerdata[i][messengergroupid])
- {
- format(info, sizeof(info), "%s\n", playername(i));
- }
- }
- ShowPlayerDialog(playerid, DIALOG_MESSENGER6, DIALOG_STYLE_LIST, "{ffffff}Messenger:: Grupes", info, "o", "x");
- }
- }
- }
- stock SendMessageToMessengerGroup(playerid, GroupID, text[])
- {
- new msg[128];
- for(new i = 0, size = GetPlayerPoolSize(); i <= size; i ++)
- {
- if(playerdata[i][messengergroupid] == GroupID)
- {
- format(msg, sizeof(msg), "{ffffff} [MESSENGER GRUPE] %s: %s", playername(playerid), text);
- SendClientMessage(i, -1, msg);
- }
- }
- return 1;
- }
- // cmommands
- cmd(messenger, playerid, params[])
- {
- if(playerdata[playerid][havephone] && playerdata[playerid][inmessengergroup] && playerdata[playerid][messengergroupid] > 999)
- messengergui(playerid, 1);
- else
- messengergui(playerid, 0);
- return 1;
- }
- cmd(invitetogroup, playerid, params[])
- {
- new id, query[128];
- if(sscanf(params, "u", id)) return SendClientMessage(playerid, -1, "• /invitetogroup [NAME]");
- if(!playerdata[playerid][inmessengergroup] && playerdata[playerid][messengergroupid] < 999) return SendClientMessage(playerid, -1, "• Tu neesi jokioje grupeje!");
- playerdata[id][inmessengergroup] = true;
- playerdata[id][messengergroupid] = playerdata[playerid][messengergroupid];
- format(query, sizeof(query), "UPDATE `players` SET inmessengergroup = '%i', messengergroupid = '%i'", playerdata[id][inmessengergroup], playerdata[id][messengergroupid]);
- mysql_query(query);
- mysql_free_result();
- SendClientMessage(playerid, -1, "• Jus esate pakviestas i grupe!");
- return 1;
- }
- cmd(sendmessage, playerid, params[])
- {
- if(isnull(params)) return SendClientMessage(playerid, -1, "/sendmessage [text]");
- SendMessageToMessengerGroup(playerid, playerdata[playerid][messengergroupid], params);
- return 1;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement