14.03.2011, 22:06
bem hj eu tava olhando aki os topic e achei um filter script assim
que faria os tapetes de prego furar o pneu,mas qualquer um pode colocar,mas eu queria so para cop,alguem pode me ajuda a adptar esse sistema no meu sistema de prego, o comando vo por ai do meu sistema
Код:
#define FILTERSCRIPT #include <a_samp> #define TireDano(%1,%2,%3,%4) %1 | (%2 << 1) | (%3 << 2) | (%4 << 3) new Tapete, Float:xx, Float:yy, Float:zz; forward PlayerToPoint(Float:radi, playerid, Float:x, Float:y, Float:z); forward Pneu(playerid); public PlayerToPoint(Float:radi, playerid, Float:x, Float:y, Float:z) { if(IsPlayerConnected(playerid)) { new Float:oldposx, Float:oldposy, Float:oldposz; new Float:tempposx, Float:tempposy, Float:tempposz; GetPlayerPos(playerid, oldposx, oldposy, oldposz); tempposx = (oldposx -x); tempposy = (oldposy -y); tempposz = (oldposz -z); // printf("DEBUG: X:%f Y:%f Z:%f",posx,posy,posz); if (((tempposx < radi) && (tempposx > -radi)) && ((tempposy < radi) && (tempposy > -radi)) && ((tempposz < radi) && (tempposz > -radi))) { return 1; } } return 0; } public OnFilterScriptInit() { print("\n--------------------------------------"); print(" Tapede Load By: [FeK]Higor"); print("--------------------------------------\n"); SetTimer("Pneu",199,1); return 1; } public Pneu(playerid) { new Dano[4]; if (IsPlayerInAnyVehicle(playerid)) { if (PlayerToPoint(5.0, playerid,xx,yy,zz)) { GetVehicleDamageStatus(GetPlayerVehicleID(playerid), Dano[0], Dano[1], Dano[2], Dano[3]); UpdateVehicleDamageStatus(GetPlayerVehicleID(playerid), Dano[0], Dano[1], Dano[2], TireDano(1, 1, 1, 1)); GameTextForPlayer(playerid,"~w~Pneu Furado :)",6000,1); } } } public OnPlayerCommandText(playerid, cmdtext[]) { if (strcmp("/criartapete", cmdtext, true, 10) == 0) { GetPlayerPos(playerid,xx,yy,zz); Tapete = CreateObject(2899, xx, yy, zz, 0, 0,0); GameTextForPlayer(playerid,"~w~Tapede criado :)",6000,1); return 1; } if (strcmp("/deletartapete", cmdtext, true, 10) == 0) { DestroyObject(Tapete); GameTextForPlayer(playerid,"~w~Tapede Deletado",6000,1); return 1; } return 0; }
Код:
if(strcmp(cmdtext, "/Prego", true)==0 || strcmp(cmdtext, "/pr2", true)==0) { if (PlayerInfo[playerid][pMembro] != 1 && PlayerInfo[playerid][pLider] != 1 && PlayerInfo[playerid][pMembro] != 2 && PlayerInfo[playerid][pLider] != 2 && PlayerInfo[playerid][pMembro] != 17 && PlayerInfo[playerid][pLider] != 17 && PlayerInfo[playerid][pMembro] != 25 && PlayerInfo[playerid][pLider] != 25) return SendClientMessage(playerid, COLOR_GREY, "Voce nao e COP!"); if (PlayerInfo[playerid][pRoadPregos] != 0) return SendClientMessage(playerid, COLOR_GREY, "Vocк sу pode implantar 1 prego por hora, /rp - para remover existente."); new Float:X, Float:Y, Float:Z, Float:A; GetPlayerPos(playerid, X, Y, Z); GetPlayerFacingAngle(playerid, A); PlayerInfo[playerid][pRoadPregos] = CreateObject(2892, X, Y, Z-1, 0.0, 0.0, A+180); SetPlayerPos(playerid, X, Y, Z); GameTextForPlayer(playerid, "~w~Pregos ~r~Criados", 5000, 5); SendClientMessage(playerid, COLOR_GREEN, "Pregos Implantados... Use /rb Para Remover e Poder Criar Mais!."); GetPlayerName(playerid, sendername, sizeof(sendername)); format(string, sizeof(string), "Estado: Um prego foi bem plantado por %s, e estб marcada por um checkpoint no Mapa.", sendername); for(new i = 0; i < MAX_PLAYERS; i++) { if(IsPlayerConnected(i)) { if(PlayerInfo[i][pMembro] == 1 || PlayerInfo[i][pLider] == 1) { SetPlayerCheckpoint(playerid, X, Y, Z-10, 1.0); SendClientMessage(i, TEAM_BLUE_COLOR, string); if (PlayerInfo[i][pCargo] >= 5 && PlayerInfo[i][pMembro] || PlayerInfo[i][pLider] == 1) { SendClientMessage(i, COLOR_YELLOW, "Voce pode remover todos os pregos usando /rmpr"); } } } } return 1; }
Код:
if(strcmp(cmdtext, "/removerpregos", true)==0 || strcmp(cmdtext, "/rp", true)==0) { if (IsACop(playerid)) { if (PlayerInfo[playerid][pCargo] < 1) { SendClientMessage(playerid, COLOR_GREY, "Vocк precisa no minimo cargo 1 para poder remover os pregos!"); return 1; } if (PlayerInfo[playerid][pRoadblock] == 0) { SendClientMessage(playerid, COLOR_GREY, "Vocк retirou seu prego!"); return 1; } } RemoveRoadblock(playerid); SendClientMessage(playerid, COLOR_GREEN, "Prego removid1o com suscesso."); return 1; }