Advertisement
Guest User

Cod sistem war

a guest
Aug 29th, 2015
134
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pawn 4.98 KB | None | 0 0
  1. CMD:attack(playerid, params[])
  2. {
  3.     if(gPlayerLogged[playerid] == 0) return SendClientMessage(playerid, COLOR_LIGHTRED, "Nu esti logat!");
  4.     if(!IsAMember(playerid)) return SCM(playerid,COLOR_WHITE,"{FFB870}Error: Nu esti membru intr-o mafie.");
  5.     SetPlayerVirtualWorld(playerid, 1);
  6.     if(PlayerInfo[playerid][pRank] < 7) return SCM(playerid,TEAM_AZTECAS_COLOR,"Error: Nu esti leaderul mafiei");
  7.     new hours; gettime(hours); if(hours < 16 || hours > 23) return SCM(playerid, 0xAE1801FF, "Info: {FFFFFF}Poti utiliza aceasta comanda doar intre orele 18:00-23:00!");
  8.     new turf,faction,string[100],sendername[MAX_PLAYER_NAME];
  9.     for(new i = 1; i <= sizeof(TurfInfo); i++)
  10.     {
  11.         if(IsPlayerInTurf(playerid, i) == 1)
  12.         {
  13.             turf = i;
  14.             break;
  15.         }
  16.     }
  17.     GetPlayerName(playerid, sendername, sizeof(sendername));
  18.     if(turf == 0) return SCM(playerid, TEAM_AZTECAS_COLOR, "Error: Nu esti pe un teritoriu.");
  19.     faction = PlayerInfo[playerid][pMember];
  20.     if(TurfInfo[turf][zOwned] == faction) return SCM(playerid, TEAM_AZTECAS_COLOR, "Error: Nu-ti poti ataca propriul teritoriu.");
  21.     if(WarInfo[turf][wAttacker] != 0) return SCM(playerid, TEAM_AZTECAS_COLOR, "Error: Teritoriul acesta este deja atacat.");
  22.     if(InWar[faction] == 1) return SCM(playerid, TEAM_AZTECAS_COLOR, "Error: Este deja un war activ.");
  23.     if(InWar[TurfInfo[turf][zOwned]] == 1) return SCM(playerid, TEAM_AZTECAS_COLOR, "Error: Aceasta mafie are deja un razboi");
  24.     WarInfo[turf][wTime] = 900;
  25.     WarInfo[turf][wAttacker] = faction;
  26.     WarInfo[turf][wFaction] = TurfInfo[turf][zOwned];
  27.     format(string,sizeof(string),"War: %s (%s) ataca teritoriul %d detinut de %s",sendername,NumeFactiune(WarInfo[turf][wAttacker]),turf,NumeFactiune(TurfInfo[turf][zOwned]));
  28.     SendFamilyMessage(faction,TEAM_AZTECAS_COLOR,string);
  29.     format(string,sizeof(string),"War: Teritoriu ID: %d, Timp ramas: %s",turf,CalculeazaTimp(WarInfo[turf][wTime]));
  30.     SendFamilyMessage(faction,TEAM_AZTECAS_COLOR,string);
  31.     format(string,sizeof(string),"War: Teritoriu ID: %d, Timp ramas: %s",turf,CalculeazaTimp(WarInfo[turf][wTime]));
  32.     SendFamilyMessage(TurfInfo[turf][zOwned],TEAM_AZTECAS_COLOR,string);
  33.     worstscoreat[turf] = 0;
  34.     worstmemberat[turf] = 999;
  35.     bestscoreat[turf] = 0;
  36.     bestmemberat[turf] = 999;
  37.     worstscoredf[turf] = 0;
  38.     worstmemberdf[turf] = 999;
  39.     bestscoredf[turf] = 0;
  40.     bestmemberdf[turf] = 999;
  41.     InWar[TurfInfo[turf][zOwned]] = 1;
  42.     InWar[faction] = 1;
  43.     return 1;
  44. } // comanda /attack
  45.  
  46. new fpm,fkm;
  47.         fpm = PlayerInfo[playerid][pMember];
  48.         fkm = PlayerInfo[killerid][pMember];
  49.         for(new turf = 1; turf < sizeof(TurfInfo); turf++)
  50.         {
  51.             if(IsPlayerInTurf(playerid, turf) && IsPlayerInTurf(killerid, turf))
  52.             {
  53.                 if(IsAMember(playerid) && IsAMember(killerid))
  54.                 {
  55.                     if(WarInfo[turf][wFaction] == fpm && WarInfo[turf][wAttacker] == fkm || WarInfo[turf][wFaction] == fkm && WarInfo[turf][wAttacker] == fpm)
  56.                     {
  57.                         if(fkm == WarInfo[turf][wAttacker] || fkm == WarInfo[turf][wFaction])
  58.                         {
  59.                             WarScoreF[fkm][turf] += 1.0;
  60.                         }
  61.                         ucideri[killerid][turf] ++;
  62.                         decese[playerid][turf] ++;
  63.                         if(PlayerInfo[killerid][pMember] == WarInfo[turf][wAttacker])
  64.                         {
  65.                             if(ucideri[killerid][turf] > bestscoreat[turf])
  66.                             {
  67.                                 bestscoreat[turf] = ucideri[killerid][turf];
  68.                                 bestmemberat[turf] = killerid;
  69.                             }
  70.                         }
  71.                         if(PlayerInfo[killerid][pMember] == WarInfo[turf][wFaction])
  72.                         {
  73.                             if(ucideri[killerid][turf] > bestscoredf[turf])
  74.                             {
  75.                                 bestscoredf[turf] = ucideri[killerid][turf];
  76.                                 bestmemberdf[turf] = killerid;
  77.                             }
  78.                         }
  79.                         if(PlayerInfo[playerid][pMember] == WarInfo[turf][wAttacker])
  80.                         {
  81.                             if(decese[playerid][turf] > worstscoreat[turf])
  82.                             {
  83.                                 worstscoreat[turf] = decese[playerid][turf];
  84.                                 worstmemberat[turf] = playerid;
  85.                             }
  86.                         }
  87.                         if(PlayerInfo[playerid][pMember] == WarInfo[turf][wFaction])
  88.                         {
  89.                             if(decese[playerid][turf] > worstscoredf[turf])
  90.                             {
  91.                                 worstscoredf[turf] = decese[playerid][turf];
  92.                                 worstmemberdf[turf] = playerid;
  93.                             }
  94.                         }
  95.                         format(string, sizeof(string), "War: {FFFFFF}L-ai omorat pe %s si ai primit 1.000$! (Turf ID: %d)",GetName(playerid),turf);
  96.                         SCM(killerid, 0xAE1801FF, string);
  97.                         GivePlayerCash(killerid,1000);
  98.                         Update(killerid,pCashx);
  99.                         format(string, sizeof(string), "War: {FFFFFF}Ai fost omorat de %s! (Turf ID: %d)",GetName(killerid),turf);
  100.                         SCM(playerid, 0xAE1801FF, string);
  101.                         return 1;
  102.                     }
  103.                 }
  104.             }
  105.         } // codul de la onPlayerDeath
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement