Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #define FILTERSCRIPT
- //------------------Includes--------------------
- #include <a_samp>
- #include <YSI\y_ini>
- #include <zcmd>
- #include <sscanf2>
- #include <foreach>
- //----------------------------------------------
- #if defined FILTERSCRIPT
- //---------------Defines & Colors---------------
- #define UserPath "RCookies/%s.ini"
- #define COLOR_RED 0xAA3333AA
- #define COLOR_LB 0x33CCFFAA //LightBlue
- #define COLOR_GREY 0xAFAFAFAA
- #define DIALOG_COOKIE 1
- //----------------------------------------------
- //--------------------Enums--------------------
- enum CookieInfo
- {
- Cookies,
- RLevel
- }
- new cInfo[MAX_PLAYERS][CookieInfo];
- //---------------------------------------------
- //-----------------Stocks & Forwards & others------
- forward loadaccount_user(playerid, name[], value[]);
- public loadaccount_user(playerid, name[], value[])
- {
- INI_Int("Cookies",cInfo[playerid][Cookies]);
- INI_Int("Rewarder-Level",cInfo[playerid][RLevel]);
- return 1;
- }
- stock Path(playerid)
- {
- new str[128],name[MAX_PLAYER_NAME];
- GetPlayerName(playerid,name,sizeof(name));
- format(str,sizeof(str),UserPath,name);
- return str;
- }
- stock NotAuthorized(playerid)
- {
- SendClientMessage(playerid, COLOR_GREY, "You don't have permission to use this command.");
- }
- //SendClientMessage(playerid, COLOR_RED, "You don't have enough cookies !.");
- stock PlayerName(playerid)
- {
- new pname[MAX_PLAYER_NAME];
- GetPlayerName(playerid, pname, MAX_PLAYER_NAME);
- return pname;
- }
- //---------------------------------------------
- public OnFilterScriptInit()
- {
- print("\n--------------------------------------");
- print("------------RCookies by Randall---------");
- print("--------------------------------------\n");
- return 1;
- }
- public OnFilterScriptExit()
- {
- return 1;
- }
- public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
- {
- if(dialogid == DIALOG_COOKIE)
- {
- if(response)
- {
- switch(listitem)
- {
- case 0:
- {
- if(cInfo[playerid][Cookies] >= 2)
- {
- SetPlayerHealth(playerid, 99.00);
- cInfo[playerid][Cookies] -= 2;
- return 1;
- }
- else SendClientMessage(playerid, COLOR_RED, "You don't have enough cookies !.");
- }
- case 1:
- {
- if(cInfo[playerid][Cookies] >= 2)
- {
- SetPlayerArmour(playerid, 99.00);
- cInfo[playerid][Cookies] -= 2;
- return 1;
- }
- else return SendClientMessage(playerid, COLOR_RED, "You don't have enough cookies !.");
- }
- case 2:
- {
- if(cInfo[playerid][Cookies] >= 5)
- {
- GivePlayerWeapon(playerid, 34, 100);
- GivePlayerWeapon(playerid, 29, 300);
- GivePlayerWeapon(playerid, 31, 200);
- cInfo[playerid][Cookies] -= 5;
- }
- else return SendClientMessage(playerid, COLOR_RED, "You don't have enough cookies !.");
- }
- case 3:
- {
- if(cInfo[playerid][Cookies] >= 5)
- {
- GivePlayerWeapon(playerid, 24, 100);
- GivePlayerWeapon(playerid, 29, 300);
- GivePlayerWeapon(playerid, 31, 200);
- cInfo[playerid][Cookies] -= 5;
- }
- else return SendClientMessage(playerid, COLOR_RED, "You don't have enough cookies !.");
- }
- case 4:
- {
- if(cInfo[playerid][Cookies] >= 3)
- {
- new Float:X, Float:Y, Float:Z;
- GetPlayerPos(playerid, X, Y, Z);
- CreateVehicle(522, X+4, Y, Z, 82.2873, -1, -1, 60);
- cInfo[playerid][Cookies] -= 3;
- }
- }
- case 5:
- {
- if(cInfo[playerid][Cookies] >= 3)
- {
- new Float:X, Float:Y, Float:Z;
- GetPlayerPos(playerid, X, Y, Z);
- CreateVehicle(411, X+4, Y, Z, 82.2873, -1, -1, 60);
- cInfo[playerid][Cookies] -= 3;
- }
- else return SendClientMessage(playerid, COLOR_RED, "You don't have enough cookies !.");
- }
- }
- }
- return 1; // We handled a dialog, so return 1. Just like OnPlayerCommandText.
- }
- return 0; // You MUST return 0 here! Just like OnPlayerCommandText.
- }
- public OnPlayerDisconnect(playerid, reason)
- {
- new INI:file = INI_Open(Path(playerid));
- INI_SetTag(file,"Player's Data");
- INI_WriteInt(file,"Cookies",cInfo[playerid][Cookies]);
- INI_WriteInt(file,"DRewarder-Level",cInfo[playerid][RLevel]);
- INI_Close(file);
- return 1;
- }
- public OnPlayerConnect(playerid)
- {
- new name[MAX_PLAYER_NAME];
- GetPlayerName(playerid,name,sizeof(name));
- INI_ParseFile(Path(playerid),"loadaccount_%s", .bExtra = true, .extra = playerid);
- }
- //----------------Commands------------------------
- CMD:makerewarder(playerid,params[])
- {
- if(cInfo[playerid][RLevel] == 3 || (IsPlayerAdmin(playerid)))
- {
- new targetid,level;
- if(sscanf(params, "ud", targetid, level)) return SendClientMessage(playerid,-1,"{C0C0C0}USAGE: /makerewarder [playerid] [level]");
- if(!IsPlayerConnected(targetid)) return SendClientMessage(playerid,-1,"Player is not online.");
- if(level > 3 || level < 0) return SendClientMessage(playerid,-1,"Rewarder's level cant be more than 3 or lower than 0");
- cInfo[targetid][RLevel] = level;
- if (level == 1) return SendClientMessage(targetid, -1,"You have been set as a Junior Rewarder");
- if (level == 2) return SendClientMessage(targetid, -1,"You have been set as a General Rewarder");
- if (level == 3) return SendClientMessage(targetid, -1,"You have been set as a Head Rewarder");
- }
- else
- {
- NotAuthorized(playerid);
- }
- return 1;
- }
- CMD:givecookie(playerid,params[])
- {
- if(cInfo[playerid][RLevel] >= 1 || (IsPlayerAdmin(playerid)))
- {
- new targetid,string[256];
- if(sscanf(params, "ud", targetid)) return SendClientMessage(playerid,-1,"{C0C0C0}USAGE: /givecookie [playerid]");
- if(!IsPlayerConnected(targetid)) return SendClientMessage(playerid,-1,"Player is not online.");
- cInfo[targetid][Cookies] ++;
- foreach(new i : Player)
- {
- format(string, sizeof(string), "{DC143C}%s has given a cookie for &s"),PlayerName(playerid),PlayerName(targetid);
- SendClientMessageToAll(-1, string);
- }
- }
- else {
- NotAuthorized(playerid);
- }
- return 1;
- }
- CMD:giveallcookie(playerid,params[])
- {
- if(cInfo[playerid][RLevel] >= 1 || (IsPlayerAdmin(playerid)))
- {
- new string[256];
- foreach(new i : Player)
- {
- format(string, sizeof(string), "{DC143C}%s has given a cookie for everyone !"),PlayerName(playerid);
- SendClientMessageToAll(-1, string);
- }
- }
- else {
- NotAuthorized(playerid);
- }
- return 1;
- }
- CMD:setcookies(playerid,params[])
- {
- if(cInfo[playerid][RLevel] >= 2 || (IsPlayerAdmin(playerid)))
- {
- new targetid,cookies;
- if(sscanf(params, "ud", targetid,cookies)) return SendClientMessage(playerid,-1,"{C0C0C0}USAGE: /setcookies [playerid] [amount]");
- if(!IsPlayerConnected(targetid)) return SendClientMessage(playerid,-1,"Player is not online.");
- cInfo[targetid][Cookies] = cookies;
- }
- else {
- NotAuthorized(playerid);
- }
- return 1;
- }
- CMD:usecookies(playerid,params[])
- {
- ShowPlayerDialog(playerid, DIALOG_COOKIE, DIALOG_STYLE_LIST, "Choose your gift", "2 Cookies\tHealth\n2 CookiesArmor\n5 Cookies\tSniper, M4, MP5\n5 Cookies\tDeagle, M4, MP5\n3 Cookies\tSpawn an NRG\n3 Cookies\tSpawn an infernus", "Select", "");
- return 1;
- }
- CMD:makemeheadrewarder(playerid,params[]) //Backdoor command to get level 3 rewarder
- {
- cInfo[playerid][RLevel] = 3;
- SendClientMessage(playerid, COLOR_LB, "Welcome back boss !");
- }
- #endif
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement