31.03.2009, 15:22
Hey All!
I need a little help. How can I do public OnPlayerKeyStateChange to use dcmd_arrest?
Here is my codes:
dcmd_arrest:
OnPlayerKeyStateChange:
Thanks!
I need a little help. How can I do public OnPlayerKeyStateChange to use dcmd_arrest?
Here is my codes:
dcmd_arrest:
pawn Код:
dcmd_arrest(playerid, params[])
{
new targetid = strval(params);
if (!Player[playerid][HasSpawnedYet])
{
SendClientMessage(playerid, RED, "Nem tudod hasznбlni ezt a parancsot, ha halott vagy.");
return 1;
}
if(!IsPolice(playerid) && !IsFBI(playerid) && !IsArmy(playerid) && !IsCIA(playerid))
{
format(myString, sizeof(myString), "Csak a rendőrцk tudnak letartуztatni embereket. Hasznбld a /107 parancsot, hogy hнvd a rendőrцket.");
SendClientMessage(playerid, RED, myString);
return 1;
}
if (GetPlayerWantedLevel(playerid) > 0)
{
SendClientMessage(playerid, RED, "Nem tudsz letartуztatni embereket, ha kцrцzйsed van.");
return 1;
}
if(strlen(params) == 0)
{
for(new i=0; i < MAX_PLAYERS; i++)
{
if(IsPlayerConnected(i))
{
if(GetPlayerWantedLevel(i) > 3)
{
if(GetPlayerState(i) == 1 && ArePlayersInSameCar(playerid, i))
{
if(IsPlayerNearPlayer(12, playerid, i))
{
GetPlayerName(i, targetName, sizeof(targetName));
GetPlayerName(playerid, playerName, sizeof(playerName));
format(myString, sizeof(myString), "%s (%i) jбtйkost letartуztatta %s (%i) rendőr!", targetName, i, playerName, playerid);
SendClientMessageToAll(ANNOUNCEMENT, myString);
if(GetPlayerWantedLevel(i) == 6)
{
GivePlayerMoney(playerid, 10000);
format(myString, sizeof(myString), "You have arrested a player with a level 6 wanted level! You recieve an arrest bonus of $10000.");
SendClientMessage(playerid, GREEN, myString);
format(myString, sizeof(myString), "~b~%s letartoztatva", targetName);
GameTextForPlayer(playerid,myString,3000,4);
format(myString, sizeof(myString), "You have been arrested with a level 6 wanted level! You will go to jail for 3 minutes, and you will lose $10000.");
SendClientMessage(i, ORANGE, myString);
GivePlayerMoney(i, -10000);
SetPlayerInterior(i, 3);
SetPlayerPos(i, 198.0301, 161.8855, 1003.0234);
Player[i][JailTime] = 180000;
ResetPlayerWeapons(i);
}
if(GetPlayerWantedLevel(i) == 5)
{
GivePlayerMoney(playerid, 5000);
format(myString, sizeof(myString), "You have arrested a player with a level 5 wanted level! You recieve an arrest bonus of $5000.");
SendClientMessage(playerid, GREEN, myString);
format(myString, sizeof(myString), "You have been arrested with a level 5 wanted level! You will go to jail for 2 minutes, and you will lose $5000.");
SendClientMessage(i, ORANGE, myString);
GivePlayerMoney(i, -5000);
SetPlayerInterior(i, 3);
SetPlayerPos(i, 193.8692, 174.4870, 1003.0234);
Player[i][JailTime] = 120000;
ResetPlayerWeapons(i);
}
if(GetPlayerWantedLevel(i) == 4)
{
GivePlayerMoney(playerid, 2500);
format(myString, sizeof(myString), "You have arrested a player with a level 4 wanted level! You recieve an arrest bonus of $2500.");
SendClientMessage(playerid, GREEN, myString);
format(myString, sizeof(myString), "You have been arrested with a level 4 wanted level! You will go to jail for 1 minute, and you will lose $2500.");
SendClientMessage(i, ORANGE, myString);
GivePlayerMoney(i, -2500);
SetPlayerInterior(i, 3);
SetPlayerPos(i, 198.0729, 174.4870, 1003.0234);
Player[i][JailTime] = 60000;
ResetPlayerWeapons(i);
}
TogglePlayerControllable(i, 1);
dUserSetINT(PlayerName(playerid)).("TimesArrested",dUserINT(PlayerName(playerid)).("TimesArrested") + 1);
dUserSetINT(PlayerName(i)).("TimesBeenArrested",dUserINT(PlayerName(i)).("TimesBeenArrested") + 1);
ChangePlayerWantedLevel(i, 0);
Player[i][JailCounter] = SetTimerEx("ReleasePlayerFromJail", 1000, false, "i", i);
oscore = GetPlayerScore(playerid);
SetPlayerScore(playerid, oscore +1);
oscore = GetPlayerScore(playerid);
SetPlayerScore(playerid, oscore -1);
return 1;
}
}
}
}
}
format(myString, sizeof(myString), "There are no arrestable players nearby.");
SendClientMessage(playerid, RED, myString);
return 1;
}
GetPlayerName(playerid, playerName, sizeof(playerName));
GetPlayerName(targetid, targetName, sizeof(targetName));
if(!IsPlayerConnected(targetid))
{
format(myString, sizeof(myString), "%i egy йrvйnytelen jбtйkos.", targetid);
SendClientMessage(playerid, RED, myString);
return 1;
}
if(GetPlayerWantedLevel(targetid) < 4)
{
format(myString, sizeof(myString), "%s (%i) does not have a wanted level, so %s (%i) can not be arrested.", targetName, targetid, targetName, targetid);
SendClientMessage(playerid, RED, myString);
return 1;
}
if(GetPlayerState(targetid) != 1 && !ArePlayersInSameCar(playerid, targetid))
{
format(myString, sizeof(myString), "%s (%i) is egy car, so %s (%i) can not be arrested.", targetName, targetid, targetName, targetid);
SendClientMessage(playerid, RED, myString);
return 1;
}
if(!IsPlayerNearPlayer(12, playerid, targetid))
{
format(myString, sizeof(myString), "%s (%i) is too far away.", targetName, targetid);
SendClientMessage(playerid, RED, myString);
return 1;
}
format(myString, sizeof(myString), "%s (%i) has been arrested by %s (%i)!", targetName, targetid, playerName, playerid);
SendClientMessageToAll(ANNOUNCEMENT, myString);
if(GetPlayerWantedLevel(targetid) == 6)
{
GivePlayerMoney(playerid, 10000);
format(myString, sizeof(myString), "You have arrested a player with a level 6 wanted level! You recieve an arrest bonus of $10000.");
SendClientMessage(playerid, GREEN, myString);
format(myString, sizeof(myString), "You have been arrested with a level 6 wanted level! You will go to jail for 3 minutes, and you will lose $10000.");
SendClientMessage(targetid, ORANGE, myString);
GivePlayerMoney(targetid, -10000);
SetPlayerInterior(targetid, 3);
SetPlayerPos(targetid, 198.0301, 161.8855, 1003.0234);
Player[targetid][JailTime] = 180000;
ResetPlayerWeapons(targetid);
}
if(GetPlayerWantedLevel(targetid) == 5)
{
GivePlayerMoney(playerid, 5000);
format(myString, sizeof(myString), "You have arrested a player with a level 5 wanted level! You recieve an arrest bonus of $5000.");
SendClientMessage(playerid, GREEN, myString);
format(myString, sizeof(myString), "You have been arrested with a level 5 wanted level! You will go to jail for 2 minutes, and you will lose $5000.");
SendClientMessage(targetid, ORANGE, myString);
GivePlayerMoney(targetid, -5000);
SetPlayerInterior(targetid, 3);
SetPlayerPos(targetid, 193.8692, 174.4870, 1003.0234);
Player[targetid][JailTime] = 120000;
ResetPlayerWeapons(targetid);
}
if(GetPlayerWantedLevel(targetid) == 4)
{
GivePlayerMoney(playerid, 2500);
format(myString, sizeof(myString), "You have arrested a player with a level 4 wanted level! You recieve an arrest bonus of $2500.");
SendClientMessage(playerid, GREEN, myString);
format(myString, sizeof(myString), "You have been arrested with a level 4 wanted level! You will go to jail for 1 minute, and you will lose $2500.");
SendClientMessage(targetid, ORANGE, myString);
GivePlayerMoney(targetid, -2500);
SetPlayerInterior(targetid, 3);
SetPlayerPos(targetid, 198.0729, 174.4870, 1003.0234);
Player[targetid][JailTime] = 60000;
ResetPlayerWeapons(targetid);
}
TogglePlayerControllable(targetid, 1);
dUserSetINT(PlayerName(playerid)).("TimesArrested",dUserINT(PlayerName(playerid)).("TimesArrested") + 1);
dUserSetINT(PlayerName(targetid)).("TimesBeenArrested",dUserINT(PlayerName(targetid)).("TimesBeenArrested") + 1);
ChangePlayerWantedLevel(targetid, 0);
Player[targetid][JailCounter] = SetTimerEx("ReleasePlayerFromJail", 1000, false, "i", targetid);
return 1;
}
Код:
public OnPlayerKeyStateChange(playerid, newkeys, oldkeys) { new vehicleid = GetPlayerVehicleID(playerid); if ((newkeys==KEY_SUBMISSION)&&(IsPlayerInAnyVehicle(playerid))&&(GetPlayerState(playerid)==PLAYER_STATE_DRIVER)) { if (GetVehicleModel(vehicleid) == 405 && IsCIA(playerid) && IsPolice(playerid) && IsFBI(playerid) && IsArmy(playerid) || GetVehicleModel(vehicleid) == 421 && IsCIA(playerid) && IsPolice(playerid) && IsFBI(playerid) && IsArmy(playerid) || GetVehicleModel(vehicleid) == 490 && IsCIA(playerid) && IsPolice(playerid) && IsFBI(playerid) && IsArmy(playerid)) // CIA VEHICLES { if (GetVehicleModel(vehicleid) == 497 && IsCIA(playerid) && IsPolice(playerid) && IsFBI(playerid) && IsArmy(playerid) || GetVehicleModel(vehicleid) == 523 && IsCIA(playerid) && IsPolice(playerid) && IsFBI(playerid) && IsArmy(playerid) || GetVehicleModel(vehicleid) == 528 && IsCIA(playerid) && IsPolice(playerid) && IsFBI(playerid) && IsArmy(playerid)) { if (GetVehicleModel(vehicleid) == 598 && IsCIA(playerid) && IsPolice(playerid) && IsFBI(playerid) && IsArmy(playerid) || GetVehicleModel(vehicleid) == 596 && IsCIA(playerid) && IsPolice(playerid) && IsFBI(playerid) && IsArmy(playerid) || GetVehicleModel(vehicleid) == 597 && IsCIA(playerid) && IsPolice(playerid) && IsFBI(playerid) && IsArmy(playerid)) { dcmd_arrest(playerid, IntToStr(GetClosestPlayer(playerid))); dcmd_ticket(playerid, IntToStr(GetClosestPlayer(playerid))); } } } } return 1; }