Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <a_samp>
- #include <YSI\y_commands>
- #include <YSI\y_master>
- strtok(const string[], &index)
- {
- new length = strlen(string);
- while ((index < length) && (string[index] <= ' '))
- {
- index++;
- }
- new offset = index;
- new result[20];
- while ((index < length) && (string[index] > ' ') && ((index - offset) < (sizeof(result) - 1)))
- {
- result[index - offset] = string[index];
- index++;
- }
- result[index - offset] = EOS;
- return result;
- }
- stock IsVehicleDriven(vehicleid)
- {
- for (new i = 0; i < MAX_PLAYERS; i++) // For each player i
- {
- if (IsPlayerInVehicle(i, vehicleid)) // Is player i in our vehicle?
- {
- if (GetPlayerVehicleSeat(i) == 0) // Is he a driver?
- return i;
- }
- }
- return -1;
- }
- stock IsVehicleDrivenByPlayer(vehicleid, playerid)
- {
- if (IsPlayerInVehicle(playerid, vehicleid)) // Is player playerid in our vehicle?
- {
- if (GetPlayerVehicleSeat(playerid) == 0) // Is he a driver?
- return 1;
- }
- return 0;
- }
- new remoteplanted[MAX_PLAYERS] = 0;
- new car;
- new vehStatus = IsVehicleDriven(car);
- public OnFilterScriptInit()
- {
- AddStaticVehicle(579, 2043.7872, 1343.8685, 10.6719, 285.0782, 0, 1);
- }
- public OnFilterScriptExit()
- { return 1;
- }
- new Float:X, Float:Y, Float:Z;
- YCMD:rigbomb(playerid, params[])
- {
- // Command Parameter Strings
- new string1[10], string2[10], idx;
- format(string1, 10, strtok(params, idx));
- format(string2, 10, strtok(params, idx));
- // Onto parameters...
- if(strcmp(string1, "help", true, 4) == 0)
- {
- SendClientMessage(playerid, 0xFFFFFFFF, "| - RIGBOMB HELP - You need to be in a car to use certain commands.");
- SendClientMessage(playerid, 0xFFFFFFFF, "Timer bomb: /rigbomb timer [seconds]");
- SendClientMessage(playerid, 0xFFFFFFFF, "Remote bomb: /rigbomb remote [plant/detonate]");
- SendClientMessage(playerid, 0xFFFFFFFF, "Speed bomb: /rigbomb speed [speed threshold]");
- SendClientMessage(playerid, 0xFFFFFFFF, "Chemical bomb: /rigbomb chemical [plant/detonate]");
- }
- else if(strcmp(string1, "timer", true, 5) == 0)
- {
- if(!IsPlayerInAnyVehicle(playerid))
- {
- SendClientMessage(playerid, 0xFF0000AA,"You need to be in a car to use this command.");
- return 1;
- }
- // COMMAND
- SendClientMessage(playerid, 0xFF0000AA,"WIP: Timer");
- return 1;
- }
- else if(strcmp(string1, "remote", true, 6) == 0)
- {
- if(strlen(string2) == 0) return SendClientMessage(playerid, 0xFF0000AA, "Error: Insufficient Parameters");
- if(strcmp(string2, "plant", true, 5) == 0)
- {
- if(!IsPlayerInAnyVehicle(playerid))
- {
- SendClientMessage(playerid, 0xFF0000AA,"You need to be in a car to use this command.");
- return 1;
- }
- // COMMAND
- car = GetPlayerVehicleID(playerid);
- remoteplanted[playerid] = 1;
- SendClientMessage(playerid, 0x6DDC00FF,"Remote bomb planted: Stay clear.");
- return 1;
- }
- if(strcmp(string2, "detonate", true, 8) == 0)
- {
- if(remoteplanted[playerid] == 1)
- {
- if (vehStatus == -1)
- {
- GetVehiclePos(car, X, Y, Z);
- CreateExplosion(X, Y, Z, 2, 10.0);
- CreateExplosion(X, Y, Z, 2, 10.0);
- CreateExplosion(X, Y, Z, 4, 10.0);
- DestroyVehicle(car);
- remoteplanted[playerid] = 0;
- return 1;
- }
- else
- {
- new player = vehStatus;
- // playerid "player" drives the vehicle
- GetVehiclePos(car, X, Y, Z);
- CreateExplosion(X, Y, Z, 2, 10.0);
- CreateExplosion(X, Y, Z, 2, 10.0);
- CreateExplosion(X, Y, Z, 4, 10.0);
- SetVehicleHealth(car, 1);
- remoteplanted[playerid] = 0;
- for (new i = 0; i < MAX_PLAYERS; i++)
- {
- if (IsPlayerInVehicle(i, car))
- {
- SetPlayerHealth(i, 0);
- return 1;
- }
- }
- }
- SendClientMessage(playerid, 0xFF0000AA,"String confirmation: Detonate");
- remoteplanted[playerid] = 0;
- return 1;
- }
- else
- {
- SendClientMessage(playerid, 0xFF0000AA,"There is no bomb ready for detonation.");
- return 1;
- }
- }
- }
- else if(strcmp(string1, "speed", true, 5) == 0)
- {
- if(!IsPlayerInAnyVehicle(playerid))
- {
- SendClientMessage(playerid, 0xFF0000AA,"You need to be in a car to use this command.");
- return 1;
- }
- // COMMAND
- SendClientMessage(playerid, 0xFF0000AA,"WIP: Speed");
- return 1;
- }
- else if(strcmp(string1, "chemical", true, 8) == 0)
- {
- if(strlen(string2) == 0) return SendClientMessage(playerid, 0xFF0000AA, "Error: Insufficient Parameters");
- if(strcmp(string2, "plant", true, 5) == 0)
- {
- if(!IsPlayerInAnyVehicle(playerid))
- {
- SendClientMessage(playerid, 0xFF0000AA,"You need to be in a car to use this command.");
- return 1;
- }
- // COMMAND
- SendClientMessage(playerid, 0xFF0000AA,"String confirmation: Plant");
- return 1;
- }
- if(strcmp(string2, "detonate", true, 8) == 0)
- {
- SendClientMessage(playerid, 0xFF0000AA,"String confirmation: Detonate");
- return 1;
- }
- }
- return 1;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement