Author Topic: FRU basics  (Read 300 times)

Melissa

  • Head Moderator
  • Junior Member
  • *
  • Posts: 77
  • Mapper; Student scripter
  • Location: Malaysia
    • View Profile
FRU basics
« on: »
This suggestion is only for Devil.Devil/He is needed to read and do these suggestions.

FRU Basics:

Skin: 285 (Make new class or replace with SWAT if possible.)
Weapons:


Ammo: 1

Ammo: 2000

Ammo: 500

Ammo: 2500

Ammo: 3000

Ammo: 500

Condition in map: Invisible. [You cannot see any player with FRU class in the map.]
Condition of player name as FRU officer: Visible. [You still can see player name as FRU officer.]
FRU officer color: Maroon [You can see the FRU officer in maroon color.]

Gear refill:

Code: [Select]
new frugearrefill;
public OnGameModeInit ()
frugearrefill = CreatePickup(1277, 23, -2269.2222, 1940.9963, 1.6946, 0);

Code: [Select]
public OnPlayerPickUpPickup ()
{
    if(pickupid==frugearrefill)
    {
    GivePlayerWeapon(playerid, 24, 200);
    GivePlayerWeapon(playerid, 27, 100);
    GivePlayerWeapon(playerid, 29, 500);
    GivePlayerWeapon(playerid, 31, 500);
    GivePlayerWeapon(playerid, 34, 50);
    SetPlayerArmor(playerid, 100);
    SetPlayerHealth(playerid, 100);
    SendClientMessage(playerid, 0xFFFFFF, "{FFFFFF}Weapons successfully {FF0000}equipped {FFFFFF}.");
    }
}

NOTE: ANYONE ELSE EXCEPT SHEPSTER,DEVIL OR OTHER SERVER SCRIPTER(S) ARE STRICTLY FORBIDDEN TO STEAL MY SCRIPTS UNLESS WITH MY PERMISSION.REMEMBER,IF YOU STOLE THEM WITHOUT MY PERMISSION,TRUST ME,YOUR LIFE WILL GET SUFFER UNTIL YOU DIE.

Commands:
/taze [ID] - Tazes a criminal.
/cuff [ID] - Cuffs a player.
/ar [ID] - Arrests a criminal.
/pu [ID] - Asks the player to pull over.
/search [ID] - Searches the player.
/opengates - Opens the base gates.
/closegates - Closes the base gates.
/m [Message] - Megaphone.
@ [Message] - Police radio.
/o [Message] - FRU radio.


Taze function:
Code: [Select]
#define dcmd(%1,%2,%3) if (!strcmp((%3)[1], #%1, true, (%2)) && ((((%3)[(%2) + 1] == '\0') && (dcmd_%1(playerid, ""))) || (((%3)[(%2) + 1] == ' ') && (dcmd_%1(playerid, (%3)[(%2) + 2]))))) return 1
//-------------- EDIT BELOW THIS LINE --------------
#define COLOR_KILLED 0x880000FF //The color, when a player gets killed by tazing
#define COLOR_ERROR 0xFF0000AA //The color of the message, when an error occurs
#define COLOR_MSG 0x00FFFFFF //Color of general messages
#define STUNNED_TIME 4 //The time in seconds the stun lasts
#define ANTISPAM 5 //The minimum allowed time between /taze commands
//-----------------NO NEED TO EDIT BELOW THIS LINE ---------------------

new stunned[MAX_PLAYERS];
new tazetime[MAX_PLAYERS];

stock ReturnPlayerName(ID)
{
new name[25];
GetPlayerName(ID, name, 25);
return name;
}

stock Float:GetDistanceBetweenPlayers(p1,p2)
{
new Float:x1,Float:y1,Float:z1,Float:x3,Float:y3,Float:z3;
if (!IsPlayerConnected(p1) || !IsPlayerConnected(p2))
{
return -1.00;
}
GetPlayerPos(p1,x1,y1,z1);
GetPlayerPos(p2,x3,y3,z3);
return floatsqroot(floatpower(floatabs(floatsub(x3,x1)),2)+floatpower(floatabs(floatsub(y3,y1)),2)+floatpower(floatabs(floatsub(z3,z1)),2));
}

forward stuntimer(taze);
forward tazetimer(i);

dcmd_taze(playerid, params[])
{
new taze = strval(params);
if(!strlen(params))
{
SendClientMessage(playerid, COLOR_ERROR, "USAGE: /taze [ID]");
}
else
{
if(IsPlayerConnected(taze))
{
if(GetDistanceBetweenPlayers(playerid, taze) <= 6)
{
if(tazetime[playerid] == 0)
{
new tehtaze = random(5);
if(tehtaze == 1 || tehtaze == 2 || tehtaze == 3 || tehtaze == 4)
{
new string[256], Float:thlth;
format(string, sizeof(string), "%s (%i) has tazed you.",ReturnPlayerName(playerid), playerid);
SendClientMessage(taze, COLOR_MSG, string);
format(string, sizeof(string), "You have tazed %s (%i).",ReturnPlayerName(taze), taze);
SendClientMessage(playerid, COLOR_MSG, string);
GetPlayerHealth(taze, thlth);
new Float:tehtaze3 = thlth-15-random(30);
SetPlayerHealth(taze, tehtaze3);
if(thlth < tehtaze3)
{
format(string, sizeof(string), "%s (%i) has been tazed to death", ReturnPlayerName(taze), taze);
SendClientMessageToAll(COLOR_KILLED, string);
}
else
{
SendClientMessage(taze, COLOR_MSG, "You are stunned for a while.");
TogglePlayerControllable(taze, 0);
stunned[taze] = 1;
tazetime[playerid] = 1;
SetTimerEx("tazetimer", ANTISPAM*1000, 0, "i", playerid);
SetTimerEx("stuntimer", STUNNED_TIME*1000, 0, "i", taze);
}
}
else
{
new string[256], Float:phlth;
format(string, sizeof(string), "%s (%i) has accidentally held the tazer the wrong way and tazed himself",ReturnPlayerName(playerid), playerid);
SendClientMessage(taze, COLOR_MSG, string);
SendClientMessage(playerid, COLOR_MSG, "You accidentally held the tazer the wrong way and tazed yourself");
GetPlayerHealth(playerid, phlth);
new Float:tehtaze2 = phlth-25-random(30);
SetPlayerHealth(playerid, tehtaze2);
if(phlth < tehtaze2)
{
format(string, sizeof(string), "%s (%i) has been tazed to death",ReturnPlayerName(playerid), playerid);
SendClientMessageToAll(COLOR_KILLED, string);
}
else
{
SendClientMessage(playerid, COLOR_MSG, "You are stunned for a while.");
TogglePlayerControllable(playerid, 0);
stunned[playerid] = 1;
SetTimerEx("stuntimer", STUNNED_TIME*1000, 0, "i", playerid);
SetTimerEx("tazetimer", ANTISPAM*1000, 0, "i", playerid);
tazetime[playerid] = 1;
}
}
}
else
{
SendClientMessage(playerid, COLOR_MSG, "Please wait before tazing someone again!");
}
}
else
{
new string[256];
format(string, sizeof(string), "%s (%i) is not close enough to taze!", ReturnPlayerName(taze), taze);
}
}
else
{
SendClientMessage(playerid, COLOR_MSG, "That player is not connected!");
}
}
return 1;
}

public OnPlayerCommandText(playerid, cmdtext[])
{
dcmd(taze, 4, cmdtext);
return 0;
}

public stuntimer(taze)
{
stunned[taze] = 0;
TogglePlayerControllable(taze, 1);
SendClientMessage(taze, COLOR_MSG, "You have recovered from the tazer-shock");
}
public tazetimer(i)
{
tazetime[i] = 0;
}

FRU Radio Function: Make it same as Police Radio but only for FRU officers.


Other things: Devil,set the gates only allowed for FRU,set the weapon / armor / health refill for FRU,FRU entry/exit to base only for FRU and set the virtual world to base to 1337 and set back to virtual world to base back to 0.
« Last Edit: by Melissa »



Share on Facebook Share on Twitter


Admin

  • Server Owner
  • Full Member
  • *
  • Posts: 191
  • Location: Slovenia
    • View Profile
you forgot cop cmd /detain that put the suspect in the vehicle :D
IG STATUS;COPS AND ROBBERS

Name; [SONA]Shepster
Status; Regular Player
Work; CIA
CIA Rank; LEADER
Admin; 1337
Friends; Devil_Hunter, CoDeZ, James_Coral, Melissa

Melissa

  • Head Moderator
  • Junior Member
  • *
  • Posts: 77
  • Mapper; Student scripter
  • Location: Malaysia
    • View Profile
I don't need /detain nor /dropoff commands in FRU clan. :D




Admin

  • Server Owner
  • Full Member
  • *
  • Posts: 191
  • Location: Slovenia
    • View Profile
if you don't want that two cmds fine :D
IG STATUS;COPS AND ROBBERS

Name; [SONA]Shepster
Status; Regular Player
Work; CIA
CIA Rank; LEADER
Admin; 1337
Friends; Devil_Hunter, CoDeZ, James_Coral, Melissa

Devil Hunter

  • Co-Owner
  • Full Member
  • *
  • Posts: 192
  • Kabooooom
  • Location: Pakistan
    • View Profile
This suggestion is only for Devil.Devil/He is needed to read and do these suggestions.

FRU Basics:

Skin: 285 (Make new class or replace with SWAT if possible.)
Weapons:


Ammo: 1

Ammo: 2000

Ammo: 500

Ammo: 2500

Ammo: 3000

Ammo: 500

Condition in map: Invisible. [You cannot see any player with FRU class in the map.]
Condition of player name as FRU officer: Visible. [You still can see player name as FRU officer.]
FRU officer color: Maroon [You can see the FRU officer in maroon color.]

Gear refill:

Code: [Select]
new frugearrefill;
public OnGameModeInit ()
frugearrefill = CreatePickup(1277, 23, -2269.2222, 1940.9963, 1.6946, 0);

Code: [Select]
public OnPlayerPickUpPickup ()
{
    if(pickupid==frugearrefill)
    {
    GivePlayerWeapon(playerid, 24, 200);
    GivePlayerWeapon(playerid, 27, 100);
    GivePlayerWeapon(playerid, 29, 500);
    GivePlayerWeapon(playerid, 31, 500);
    GivePlayerWeapon(playerid, 34, 50);
    SetPlayerArmor(playerid, 100);
    SetPlayerHealth(playerid, 100);
    SendClientMessage(playerid, 0xFFFFFF, "{FFFFFF}Weapons successfully {FF0000}equipped {FFFFFF}.");
    }
}

NOTE: ANYONE ELSE EXCEPT SHEPSTER,DEVIL OR OTHER SERVER SCRIPTER(S) ARE STRICTLY FORBIDDEN TO STEAL MY SCRIPTS UNLESS WITH MY PERMISSION.REMEMBER,IF YOU STOLE THEM WITHOUT MY PERMISSION,TRUST ME,YOUR LIFE WILL GET SUFFER UNTIL YOU DIE.

Commands:
/taze [ID] - Tazes a criminal.
/cuff [ID] - Cuffs a player.
/ar [ID] - Arrests a criminal.
/pu [ID] - Asks the player to pull over.
/search [ID] - Searches the player.
/opengates - Opens the base gates.
/closegates - Closes the base gates.
/m [Message] - Megaphone.
@ [Message] - Police radio.
/o [Message] - FRU radio.


Taze function:
Code: [Select]
#define dcmd(%1,%2,%3) if (!strcmp((%3)[1], #%1, true, (%2)) && ((((%3)[(%2) + 1] == '\0') && (dcmd_%1(playerid, ""))) || (((%3)[(%2) + 1] == ' ') && (dcmd_%1(playerid, (%3)[(%2) + 2]))))) return 1
//-------------- EDIT BELOW THIS LINE --------------
#define COLOR_KILLED 0x880000FF //The color, when a player gets killed by tazing
#define COLOR_ERROR 0xFF0000AA //The color of the message, when an error occurs
#define COLOR_MSG 0x00FFFFFF //Color of general messages
#define STUNNED_TIME 4 //The time in seconds the stun lasts
#define ANTISPAM 5 //The minimum allowed time between /taze commands
//-----------------NO NEED TO EDIT BELOW THIS LINE ---------------------

new stunned[MAX_PLAYERS];
new tazetime[MAX_PLAYERS];

stock ReturnPlayerName(ID)
{
new name[25];
GetPlayerName(ID, name, 25);
return name;
}

stock Float:GetDistanceBetweenPlayers(p1,p2)
{
new Float:x1,Float:y1,Float:z1,Float:x3,Float:y3,Float:z3;
if (!IsPlayerConnected(p1) || !IsPlayerConnected(p2))
{
return -1.00;
}
GetPlayerPos(p1,x1,y1,z1);
GetPlayerPos(p2,x3,y3,z3);
return floatsqroot(floatpower(floatabs(floatsub(x3,x1)),2)+floatpower(floatabs(floatsub(y3,y1)),2)+floatpower(floatabs(floatsub(z3,z1)),2));
}

forward stuntimer(taze);
forward tazetimer(i);

dcmd_taze(playerid, params[])
{
new taze = strval(params);
if(!strlen(params))
{
SendClientMessage(playerid, COLOR_ERROR, "USAGE: /taze [ID]");
}
else
{
if(IsPlayerConnected(taze))
{
if(GetDistanceBetweenPlayers(playerid, taze) <= 6)
{
if(tazetime[playerid] == 0)
{
new tehtaze = random(5);
if(tehtaze == 1 || tehtaze == 2 || tehtaze == 3 || tehtaze == 4)
{
new string[256], Float:thlth;
format(string, sizeof(string), "%s (%i) has tazed you.",ReturnPlayerName(playerid), playerid);
SendClientMessage(taze, COLOR_MSG, string);
format(string, sizeof(string), "You have tazed %s (%i).",ReturnPlayerName(taze), taze);
SendClientMessage(playerid, COLOR_MSG, string);
GetPlayerHealth(taze, thlth);
new Float:tehtaze3 = thlth-15-random(30);
SetPlayerHealth(taze, tehtaze3);
if(thlth < tehtaze3)
{
format(string, sizeof(string), "%s (%i) has been tazed to death", ReturnPlayerName(taze), taze);
SendClientMessageToAll(COLOR_KILLED, string);
}
else
{
SendClientMessage(taze, COLOR_MSG, "You are stunned for a while.");
TogglePlayerControllable(taze, 0);
stunned[taze] = 1;
tazetime[playerid] = 1;
SetTimerEx("tazetimer", ANTISPAM*1000, 0, "i", playerid);
SetTimerEx("stuntimer", STUNNED_TIME*1000, 0, "i", taze);
}
}
else
{
new string[256], Float:phlth;
format(string, sizeof(string), "%s (%i) has accidentally held the tazer the wrong way and tazed himself",ReturnPlayerName(playerid), playerid);
SendClientMessage(taze, COLOR_MSG, string);
SendClientMessage(playerid, COLOR_MSG, "You accidentally held the tazer the wrong way and tazed yourself");
GetPlayerHealth(playerid, phlth);
new Float:tehtaze2 = phlth-25-random(30);
SetPlayerHealth(playerid, tehtaze2);
if(phlth < tehtaze2)
{
format(string, sizeof(string), "%s (%i) has been tazed to death",ReturnPlayerName(playerid), playerid);
SendClientMessageToAll(COLOR_KILLED, string);
}
else
{
SendClientMessage(playerid, COLOR_MSG, "You are stunned for a while.");
TogglePlayerControllable(playerid, 0);
stunned[playerid] = 1;
SetTimerEx("stuntimer", STUNNED_TIME*1000, 0, "i", playerid);
SetTimerEx("tazetimer", ANTISPAM*1000, 0, "i", playerid);
tazetime[playerid] = 1;
}
}
}
else
{
SendClientMessage(playerid, COLOR_MSG, "Please wait before tazing someone again!");
}
}
else
{
new string[256];
format(string, sizeof(string), "%s (%i) is not close enough to taze!", ReturnPlayerName(taze), taze);
}
}
else
{
SendClientMessage(playerid, COLOR_MSG, "That player is not connected!");
}
}
return 1;
}

public OnPlayerCommandText(playerid, cmdtext[])
{
dcmd(taze, 4, cmdtext);
return 0;
}

public stuntimer(taze)
{
stunned[taze] = 0;
TogglePlayerControllable(taze, 1);
SendClientMessage(taze, COLOR_MSG, "You have recovered from the tazer-shock");
}
public tazetimer(i)
{
tazetime[i] = 0;
}

FRU Radio Function: Make it same as Police Radio but only for FRU officers.


Other things: Devil,set the gates only allowed for FRU,set the weapon / armor / health refill for FRU,FRU entry/exit to base only for FRU and set the virtual world to base to 1337 and set back to virtual world to base back to 0.

i am not available at home and donno when will i return :( and if u know scripting so much then u can just take the sfcrrpg gm and make urself a class and do what ever u want and then give it to shep and if u are gonna do that dont forget to change the websites to www.gangzone.smfnew.com and all the sfcrrpg to [sona]
Name: )DeViL.HuNteR(
Status: Co- Owner
Friends: NO Friends :D

Melissa

  • Head Moderator
  • Junior Member
  • *
  • Posts: 77
  • Mapper; Student scripter
  • Location: Malaysia
    • View Profile
As my member title says,I'm only a student scripter,which means I'm still studying how to script.I got the taze system from SA-MP forums,copied and pasted in pawno,just gonna check if there were some bugs,etc.
I will try my best to script my clan.




Devil Hunter

  • Co-Owner
  • Full Member
  • *
  • Posts: 192
  • Kabooooom
  • Location: Pakistan
    • View Profile
As my member title says,I'm only a student scripter,which means I'm still studying how to script.I got the taze system from SA-MP forums,copied and pasted in pawno,just gonna check if there were some bugs,etc.
I will try my best to script my clan.

i am just out for an unknown time, idk when will i return, now i am one my phone no pc or laptop to script
Name: )DeViL.HuNteR(
Status: Co- Owner
Friends: NO Friends :D

Devil Hunter

  • Co-Owner
  • Full Member
  • *
  • Posts: 192
  • Kabooooom
  • Location: Pakistan
    • View Profile
scripting started from today.
if u have more things to tell, then go on.
else lock this topic
Name: )DeViL.HuNteR(
Status: Co- Owner
Friends: NO Friends :D