Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <a_samp>
- #include <dini>
- #define CODES_FILE "Codes.ini"
- #define DIALOG_ID_CODE 100
- #define EXTRA_CASH 10000
- #define MINIGUN_AMMO 100000
- new string[30];
- new str[128];
- new const charset[] = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";
- public OnFilterScriptInit()
- {
- print("\n--------------------------------------");
- print(" Codes and Prizes ");
- print("--------------------------------------\n");
- }
- public OnFilterScriptExit()
- {
- print("\n--------------------------------------");
- print(" Codes and Prizes ");
- print("--------------------------------------\n");
- }
- public OnGameModeInit()
- {
- if(!fexist(CODES_FILE))
- dini_Create(CODES_FILE);
- }
- public OnPlayerCommandText(playerid, cmdtext[])
- {
- new cmd[256], tmp[256], idx;
- cmd = strtok(cmdtext,idx);
- if(!strcmp(cmd, "/CreateCode", true) && IsPlayerAdmin(playerid))
- {
- tmp = strtok(cmdtext,idx);
- if(!strlen(tmp))
- {
- SendClientMessage(playerid, 0xffee00ff, "USAGE: /CreateCode [Type]");
- SendClientMessage(playerid, 0xffee00ff, "Type 1: Extra Cash.");
- SendClientMessage(playerid, 0xffee00ff, "Type 2: Minigun.");
- SendClientMessage(playerid, 0xffee00ff, "Type 3: Rhino.");
- return SendClientMessage(playerid, 0xffee00ff, "Type 4: Vehicle Speed.");
- }
- do
- {
- for(new i; i < 15; i++)
- string[i] = charset[RandomEx(0, sizeof(charset) - 1)];
- }
- while(dini_Isset(CODES_FILE, string));
- dini_IntSet(CODES_FILE, string, strval(tmp));
- format(str, sizeof(str), "The Code: %s\nType: %s\nRemember To Write Down The Code!", string, GetCodeType(strval(tmp)));
- return ShowPlayerDialog(playerid, DIALOG_ID_CODE, DIALOG_STYLE_MSGBOX, "Prize Code Created!", str, "OK", "OK");
- }
- if(!strcmp(cmd, "/UseCode", true))
- {
- tmp = strtok(cmdtext,idx);
- if(!strlen(tmp))return SendClientMessage(playerid, 0xffee00ff, "USAGE: /UseCode [Code]");
- if(!dini_Isset(CODES_FILE, tmp))return SendClientMessage(playerid, 0xFF0000FF, "ERROR: The Code You Have Entered Doesn't Exist.");
- if(!dini_Int(CODES_FILE, tmp))return SendClientMessage(playerid, 0xFF0000FF, "ERROR: The Code You Have Entered Is Already Used.");
- switch(dini_Int(CODES_FILE, tmp))
- {
- case 1: GivePlayerMoney(playerid, EXTRA_CASH);
- case 2: GivePlayerWeapon(playerid, WEAPON_MINIGUN, MINIGUN_AMMO);
- case 3:
- {
- new Float:Pos[4], RhinoID;
- GetPlayerPos(playerid, Pos[0], Pos[1], Pos[2]);
- GetPlayerFacingAngle(playerid, Pos[3]);
- RhinoID = CreateVehicle(432, Pos[0], Pos[1], Pos[2], Pos[3], -1, -1, -1);
- PutPlayerInVehicle(playerid, RhinoID, 0);
- }
- case 4:
- {
- if(!IsPlayerInAnyVehicle(playerid))return SendClientMessage(playerid, 0xFF0000FF, "ERROR: This Code Requires Vehicle.");
- new Float:Pos[3], Dv, Multiple;
- GetVehicleVelocity(GetPlayerVehicleID(playerid), Pos[0], Pos[1], Pos[2]);
- Multiple = ((50 + Dv * 100) / (Dv * 100));
- SetVehicleVelocity(GetPlayerVehicleID(playerid), Pos[0] * Multiple, Pos[1] * Multiple, Pos[2] * Multiple);
- }
- }
- format(str, sizeof(str), "You Have Used The Code And Got: %s.", GetCodeType(dini_Int(CODES_FILE,tmp)));
- SendClientMessage(playerid, 0x009900ff, str);
- return dini_IntSet(CODES_FILE, tmp, 0);
- }
- return 0;
- }
- stock GetCodeType(num)
- {
- new type[50];
- switch(num)
- {
- case 1: type = "Extra Cash";
- case 2: type = "Minigun";
- case 3: type = "Rhino";
- case 4: type = "Vehicle Speed";
- }
- return type;
- }
- RandomEx(min, max)
- return random(max - min) + min;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement