Guest User

Untitled

a guest
Mar 8th, 2013
27
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 8.08 KB | None | 0 0
  1. Function OnPlayerDeath(playerid, killerid, reason)
  2. {
  3. M_OnPlayerDeath(playerid,killerid,reason);
  4. new name[MAX_PLAYER_NAME];
  5. new string[256];
  6. PlayerInfo[playerid][pInvWeapon] = 0;
  7. PlayerInfo[playerid][pInvAmmo] = 0;
  8. PlayerInfo[playerid][pInvWeapon2] = 0;
  9. PlayerInfo[playerid][pInvAmmo2] = 0;
  10. FrakMatsHolding[playerid] = 0;
  11. new playercash;
  12. new victimteam;
  13. new killerteam;
  14. if(PlayerInfo[playerid][pLevel] > 2 && KHSperre[playerid] == 0 && PlayerInfo[playerid][pJailed] == 0 && PlayerInfo[playerid][pGangJailed] == 0 && PlayerPaintballing[playerid] == 0)
  15. {
  16. PlayerInfo[playerid][pTot] = 1;
  17. new Float:pX,Float:pY,Float:pZ;
  18. GetPlayerPos(playerid, pX, pY, pZ);
  19. TotenKopf[playerid] = CreatePickup(1254,1, pX, pY, pZ);
  20. SetPlayerPos(playerid,PlayerInfo[playerid][pTx],PlayerInfo[playerid][pTy],PlayerInfo[playerid][pTz]);
  21. PlayerInfo[playerid][pTx] = pX;
  22. PlayerInfo[playerid][pTy] = pY;
  23. PlayerInfo[playerid][pTz] = pZ;
  24. }
  25. if(killerid != INVALID_PLAYER_ID)
  26. {
  27. PlayerInfo[killerid][pKills]++;
  28. PlayerInfo[playerid][pDeaths]++;
  29. format(ALLSTRING,sizeof(ALLSTRING),"Du wurdest von %s getötet",PlayerName[killerid]);
  30. SendClientMessage(playerid,Rot,ALLSTRING);
  31. format(ALLSTRING,sizeof(ALLSTRING),"Du hast %s getötet",PlayerName[playerid]);
  32. SendClientMessage(killerid,Rot,ALLSTRING);
  33. }
  34. for(new i = 0; i < GetMaxPlayers(); i++)
  35. {
  36. if(PlayerInfo[i][pMember] == 4 || PlayerInfo[i][pLeader] == 4)
  37. {
  38. format(ALLSTRING,sizeof(ALLSTRING),"Der Spieler %s ist gestorben und muss wiederbelebt werden",PlayerName[playerid]);
  39. SendClientMessage(i,Rot,ALLSTRING);
  40. SetPlayerCheckpoint(i,PlayerInfo[playerid][pTx],PlayerInfo[playerid][pTy],PlayerInfo[playerid][pTz],5.0);
  41. }
  42. }
  43. if(IstEinZivilist(killerid) || IstEinZivilist(playerid))
  44. {
  45. if(ZiviDM == 1)
  46. {
  47. if(killerid != INVALID_PLAYER_ID)
  48. {
  49. SendClientMessage(playerid, COLOR_GRAD1, "Zivilisten dürfen kein Deathmatch machen!");
  50. HackShieldKick(killerid,"Zivilisten Deathmatch");
  51. }
  52. }
  53. }
  54. if(gPlayerUsingLoopingAnim[playerid])
  55. {
  56. gPlayerUsingLoopingAnim[playerid] = 0;
  57. TextDrawHideForPlayer(playerid,txtAnimHelper);
  58. }
  59. if(BlindFold[playerid] == 1)
  60. {
  61. BlindFold[playerid] = 0;
  62. }
  63. if(PlayerInfo[playerid][pMundTape] == 1)
  64. {
  65. PlayerInfo[playerid][pMundTape] = 0;
  66. }
  67. InCargo[playerid] = 0; InLevi[playerid] = 0; InEnfo[playerid] = 0;
  68. if(IsBlacklist[playerid]==1)
  69. {
  70. ClearBlack(playerid);
  71. IsBlacklist[playerid]=0;
  72. }
  73. //=======================
  74. victimteam = gTeam[playerid];
  75. killerteam = gTeam[killerid];
  76. gPlayerSpawned[playerid] = 0;
  77. GetPlayerName(playerid, name, sizeof(name));
  78. PlayerInfo[playerid][pLocal] = 255;
  79. if(killerid != 255)
  80. if(reason == 38)
  81. {
  82. new kstring[128];
  83. new kickname[MAX_PLAYER_NAME];
  84. if(IsPlayerConnected(killerid))
  85. {
  86. GetPlayerName(killerid, kickname, sizeof(kickname));
  87. format(string, 256, "Warnung: [%d]%s hat einen Spieler mit einer Minigun gekillt. ACHTUNG [CheatVerdacht].",killerid,kickname);
  88. AdminNachricht(Farbe_Gelb,string,1);
  89. printf("%s", kstring);
  90. }
  91. }
  92. for(new i; i<sizeof(Gebiete); i++)
  93. {
  94. GangZoneHideForPlayer(playerid,Gebiet[i]);//Für wenn das Gebiet versteckt werden soll.... und welches Gebiet
  95. }
  96. new caller = Mobile[playerid];
  97. if(caller != 255)
  98. {
  99. if(caller < 255)
  100. {
  101. SendClientMessage(caller, COLOR_GRAD2, " Die Verbindung wurde unterbrochen....");
  102. CellTime[caller] = 0;
  103. CellTime[playerid] = 0;
  104. Mobile[caller] = 255;
  105. }
  106. Mobile[playerid] = 255;
  107. CellTime[playerid] = 0;
  108. }
  109. ClearCrime(playerid);
  110. if(PlayerPaintballing[playerid] != 0)
  111. {
  112. PlayerPaintballKills[killerid] ++;
  113. if(PlayerPaintballKills[killerid] > PaintballWinnerKills)
  114. {
  115. new killer[MAX_PLAYER_NAME];
  116. PaintballWinner = killerid;
  117. PaintballWinnerKills = PlayerPaintballKills[killerid];
  118. GetPlayerName(killerid, killer, sizeof(killer));
  119. for(new i = 0; i < GetMaxPlayers(); i++)
  120. {
  121. if(IsPlayerConnected(i))
  122. {
  123. if(PlayerPaintballing[i] != 0)
  124. {
  125. format(string, sizeof(string), "* %s ist mit %d Kills in Führung.",killer,PaintballWinnerKills);
  126. SendClientMessage(i, Weiss, string);
  127. }
  128. }
  129. }
  130. }
  131. return 1;
  132. }
  133. if(IsPlayerInGebiet(playerid) > -1)//Ob der gestorbene in einem GF gebiet war
  134. {
  135. new zone = IsPlayerInGebiet(playerid) ;//Übergibt die Zoneid
  136. if(Gebiete[zone][gOn] == 1)//Ob dort Gangfight läuft
  137. {
  138. if(PlayerInfo[playerid][pLeader]==Gebiete[zone][gOwner] ||PlayerInfo[playerid][pMember]==Gebiete[zone][gOwner])//Ob der Tote in der Besitzer Fraktion ist
  139. {
  140. if(PlayerInfo[killerid][pLeader] == Gebiete[zone][gAngreifer] || PlayerInfo[killerid][pMember] == Gebiete[zone][gAngreifer])//Ob der Mörder in der Gegnrischer Partei ist.
  141. {
  142. Gebiete[zone][gStand2] ++;//Dann bekommen die Gegner Punkte
  143. GameTextForPlayer(killerid,"~b~Gangfight Kill",2000,1);
  144. }
  145. }
  146. if(PlayerInfo[playerid][pLeader]==Gebiete[zone][gAngreifer] ||PlayerInfo[playerid][pMember]==Gebiete[zone][gAngreifer])//Siehe oben nur umgekehrt.. :P
  147. {
  148. if(PlayerInfo[killerid][pLeader] == Gebiete[zone][gOwner] || PlayerInfo[killerid][pMember] == Gebiete[zone][gOwner])
  149. {
  150. Gebiete[zone][gStand1] ++;
  151. GameTextForPlayer(killerid,"~b~Gangfight Kill",2000,1);
  152. }
  153. }
  154. }
  155. }
  156. if(victimteam >= 4)
  157. {
  158. if(IsPlayerConnected(killerid))
  159. {
  160. new slice = 100;
  161. playercash = GetPlayerMoney(playerid);
  162. if(gTeam[killerid] != 2 && PlayerInfo[killerid][pMember] != 7) { WantedPoints[killerid] += 2; } //+ 2 wanted points
  163.  
  164. if (IsPlayerInFrac(killerid,4) || ((gTeam[killerid]) == 3 && civnokill) || (gTeam[killerid] == gTeam[playerid] && gTeam[playerid] != 4))
  165. {
  166. slice = 0;
  167. }
  168. if (((gTeam[killerid]) != 4) && ((gTeam[killerid]) == gTeam[playerid]))//no team kill
  169. {
  170. slice = 0;
  171. }
  172. if (playercash > 0)
  173. {
  174. GivePlayerMoney(playerid, -slice);
  175. }
  176. else
  177. {
  178. slice = slice+500;
  179. }
  180. GivePlayerMoney(killerid, slice);
  181. PlayerPlaySound(killerid, 1083, 0.0, 0.0, 0.0);
  182. if (((gTeam[killerid]) == 3) && reason != 49 && PlayerInfo[killerid][pJailed] == 0 && !IsPlayerInArea(killerid, 560.538, -724.0283, 875.8406, -362.0141))
  183. {
  184. SetPlayerCriminal(killerid,255, "Vorsätzlicher Mord");
  185. }
  186. else if (((gTeam[killerid]) == 3) && reason == 49)
  187. {
  188. SetPlayerCriminal(killerid,255, "Fahrerflucht");
  189. }
  190. }
  191. }
  192. else if (victimteam == 2)
  193. {
  194. if(IsPlayerConnected(killerid))
  195. {
  196. if (gTeam[killerid] >= 3)
  197. {
  198. WantedPoints[killerid] += 2; //+ 2 wanted points
  199. if(reason != 49)
  200. {
  201. SetPlayerCriminal(killerid,255, "Vorsätzlicher Mord");
  202. }
  203. else if (reason == 49)
  204. {
  205. SetPlayerCriminal(killerid,255, "Fahrerflucht");
  206. }
  207. }
  208. if(gTeam[killerid] >= 5 && SafeTime[playerid] <= 0)
  209. {
  210. WantedPoints[killerid]+=2;
  211. }
  212. }
  213. }
  214. else if (victimteam == 3)
  215. {
  216. if(IsPlayerConnected(killerid))
  217. {
  218. // Civ kill
  219. if ((gTeam[killerid]) == 2 || PlayerInfo[killerid][pMember] == 7){ }
  220. else
  221. {
  222. WantedPoints[killerid] += 2;
  223. }
  224. if (((gTeam[killerid]) >= 3 || IsPlayerInFrac(killerid,4)) && reason != 49)
  225. {
  226. SetPlayerCriminal(killerid,255, "Vorsätzlicher Mord");
  227. }
  228. else if (((gTeam[killerid]) >= 3 || (gTeam[killerid]) == 1) && reason == 49)
  229. {
  230. SetPlayerCriminal(killerid,255, "Fahrerflucht");
  231. }
  232. }
  233. }
  234. else if (victimteam == 1)
  235. {
  236. if(IsPlayerConnected(killerid))
  237. {
  238. if (((gTeam[killerid]) == 4) && reason != 49)
  239. {
  240. SetPlayerCriminal(killerid,255, "Vorsätzlicher Mord");
  241. }
  242. else if (((gTeam[killerid]) == 3) && reason == 49)
  243. {
  244. SetPlayerCriminal(killerid,255, "Fahrerflucht");
  245. }
  246. }
  247. }
  248. if (victimteam >= 3 && WantedPoints[playerid] > 0 && killerteam == 2)
  249. {
  250. SetPlayerFree(playerid,killerid, "Gekillt");
  251. }
  252. killerid = INVALID_PLAYER_ID;
  253. SetPlayerColor(playerid,COLOR_GRAD2);
  254. return 1;
  255. }
Advertisement
Add Comment
Please, Sign In to add comment