Ich will gerne wissen, wie man Zonen macht, wo man keine Wanteds kriegt, z.B wenn man bei der Pershing Sqaure (am LSPD) einen tötet, sollte man keine Wanteds kriegen.
Wie geht das?
Ich will gerne wissen, wie man Zonen macht, wo man keine Wanteds kriegt, z.B wenn man bei der Pershing Sqaure (am LSPD) einen tötet, sollte man keine Wanteds kriegen.
Wie geht das?
Bin mir zwar nicht sicher obs geht, aber ich würde einfach bei OnPlayerDeath mit IsPlayerInRangeOfPoint abfragen..
Edit: Guck dir vllt. auch mal http://wiki.sa-mp.com/wiki/GangZoneCreate an.
hmm man könnte es mal mit IsPlayerInRangeOfPoint versuchen, aber dann wär's keine Zone nur am Pershing Square sondern eben so eine Runde Zone ums LSPD drum herum
Poste mal dein OnPlayerDeath
Edit: man ey immer einer vor mir
Nicht mit :
IsPlayerInRangeOfPoint
Da Das ein Kreis ist
Mach es Lieber hier mit.
stock IsPlayerInArea(playerid, Float:minx, Float:miny, Float:maxx, Float:maxy)
{
new Float:x, Float:y, Float:z;
GetPlayerPos(playerid, x, y, z);
if (x > minx && x < maxx && y > miny && y < maxy) return 1;
return 0;
}
Alles anzeigenNicht mit :
IsPlayerInRangeOfPoint
Da Das ein Kreis ist
Mach es Lieber hier mit.
stock IsPlayerInArea(playerid, Float:minx, Float:miny, Float:maxx, Float:maxy)
{
new Float:x, Float:y, Float:z;
GetPlayerPos(playerid, x, y, z);
if (x > minx && x < maxx && y > miny && y < maxy) return 1;
return 0;
}
und dann?
Versuch es mit IsPlayerInArea, entweder nimmst du den Code vom Vorgänger - oder lädst dir eine Include uf.inc mit vielen Funktionien inkl. diese runter: uf.inc Download
Editierung: Eine weitere Möglichkeit, wo die höhe der Zone auch eine Vorraussetzung ist, wäre IsPlayerInCube - diese Funktion findest du auch im Useful Functions Include (uf.inc Download).
hast recht. wenn dus nicht eingebaut bekommst poste trotzdem mal dein onplayerdeath
public OnPlayerDeath(playerid, killerid, reason){
M_OnPlayerDeath(playerid,killerid,reason); new name[MAX_PLAYER_NAME]; new string[256]; new playercash; new victimteam; new Float:px,Float:py,Float:pz; new killerteam; InCargo[playerid] = 0; InLevi[playerid] = 0; if((AtRegestration[playerid] == 0 && PlayerPaintballing[playerid] == 0) && FirstSpawn[playerid] == 0) { PlayerInfo[playerid][pTot] = 1; new Float:pX,Float:pY,Float:pZ; GetPlayerPos(playerid, pX, pY, pZ); TotenKopf[playerid][0] = CreatePickup(1254,1, pX, pY, pZ); PlayerInfo[playerid][pTx] = pX; PlayerInfo[playerid][pTy] = pY; PlayerInfo[playerid][pTz] = pZ; GetPlayerName(playerid, name, sizeof(name)); SendClientMessage(playerid,COLOR_LIGHTBLUE, "Du wurdest schwer verletzt ins Krankenhaus gebracht!");// SendClientMessage(playerid,COLOR_LIGHTBLUE, "Möchtest du einen Arzt?(/needmedic)"); if(GetPlayerInterior(playerid) == 0) { for(new i=0; i<max_players; i++)="" {="" if(playerinfo[i][pmember]="=" 4="" ||="" playerinfo[i][pleader]="=" 4)="" sendclientmessage(i,color_lightblue,"[funk:]eine="" person="" wurde="" als="" schwer="" verletzt="" gemeldet!");="" sendclientmessage(i,color_lightblue,"achtung="" eine="" schwerverletzt="" sendclientmessage(i,color_lightblue,"die="" position="" auf="" dem="" hud="" markiert!(="" rmarker="" zum="" löschen)");="" setplayercheckpoint(i,playerinfo[playerid][ptx],playerinfo[playerid][pty],playerinfo[playerid][ptz],5.0);="" }="" if(firstspawn[playerid]="=" 1)="" firstspawn[playerid]="0;" }
victimteam = gTeam[playerid]; killerteam = gTeam[killerid]; gPlayerSpawned[playerid] = 0; GetPlayerName(playerid, name, sizeof(name)); PlayerInfo[playerid][pLocal] = 255; GetPlayerPos(playerid, px, py, pz); if(killerid != 255) if(reason == 38) { new kstring[128]; new kickname[MAX_PLAYER_NAME]; if(IsPlayerConnected(killerid)) { GetPlayerName(killerid, kickname, sizeof(kickname)); format(string, 256, "Warnung: [%d]%s hat einen Spieler mit einer Minigun gekillt. ACHTUNG [CheatVerdacht].",killerid,kickname); ABroadCast(COLOR_YELLOW,string,1); printf("%s", kstring); } } if (gPlayerCheckpointStatus[playerid] > 4 && gPlayerCheckpointStatus[playerid] < 11) { DisablePlayerCheckpoint(playerid); gPlayerCheckpointStatus[playerid] = CHECKPOINT_NONE; } new caller = Mobile[playerid]; if(caller != 255) { if(caller < 255) { SendClientMessage(caller, COLOR_GRAD2, " Die Verbindung wurde unterbrochen...."); CellTime[caller] = 0; CellTime[playerid] = 0; Mobile[caller] = 255; } Mobile[playerid] = 255; CellTime[playerid] = 0; } ClearCrime(playerid); if(PlayerPaintballing[playerid] != 0) { PlayerPaintballKills[killerid] ++; if(PlayerPaintballKills[killerid] > PaintballWinnerKills) { new killer[MAX_PLAYER_NAME]; PaintballWinner = killerid; PaintballWinnerKills = PlayerPaintballKills[killerid]; GetPlayerName(killerid, killer, sizeof(killer)); for(new i = 0; i < MAX_PLAYERS; i++) { if(IsPlayerConnected(i)) { if(PlayerPaintballing[i] != 0) { format(string, sizeof(string), "* %s ist mit %d Kills in Führung.",killer,PaintballWinnerKills); SendClientMessage(i, COLOR_WHITE, string); } } } } return 1; } if(IsBlacklist[playerid]==1) { ClearBlack(playerid); IsBlacklist[playerid]=0; } if(GettingCK[playerid] < 999 || OnCK[playerid] < 999) { if(IsPlayerConnected(killerid)) { if(GettingCK[killerid] < 999 || OnCK[playerid] < 999) { new killer[MAX_PLAYER_NAME]; new dier[MAX_PLAYER_NAME]; GetPlayerName(playerid, dier, sizeof(dier)); GetPlayerName(killerid, killer, sizeof(killer)); format(string, sizeof(string), "* %s hat deinen Charakter gesperrt, du kannst nun mit diesem Charakter nicht mehr Spielen.",killer); SendClientMessage(playerid, COLOR_LIGHTRED, string); format(string, sizeof(string), "** %s hat den Spieler %s erledigt**",killer,dier); CKLog(string); PlayerInfo[playerid][pCK] = 1; if(GettingCK[playerid] < 999) { GettingCK[playerid] = 999; } else if(OnCK[playerid] < 999) { OnCK[playerid] = 999; } if(GettingCK[killerid] < 999) { GettingCK[killerid] = 999; } else if(OnCK[killerid] < 999) { OnCK[killerid] = 999; } KickPlayer[playerid] = 1; } } } if(PlayerInfo[playerid][pHeadValue] > 0) { if(IsPlayerConnected(killerid)) { if(PlayerInfo[killerid][pMember] == 8 || PlayerInfo[killerid][pLeader] == 8) { if(GoChase[killerid] == playerid) { ConsumingMoney[killerid] = 1; new killer[MAX_PLAYER_NAME]; GetPlayerName(killerid, killer, sizeof(killer)); GivePlayerMoney(killerid, PlayerInfo[playerid][pHeadValue]); format(string,128,"<< Hitman %s hat den Auftrag an %s erfüllt und bekommt: $%d >>",killer,name,PlayerInfo[playerid][pHeadValue]); SendFamilyMessage(8, COLOR_YELLOW, string); PlayerInfo[playerid][pHeadValue] = 0; GotHit[playerid] = 0; GetChased[playerid] = 999; GoChase[killerid] = 999; } } } } if(victimteam >= 4) { if(IsPlayerConnected(killerid)) { new slice = 100; //$100 playercash = GetPlayerMoney(playerid); if(gTeam[killerid] != 2 && PlayerInfo[killerid][pMember] != 7) { WantedPoints[killerid] += 2; } //+ 2 wanted points if(SafeTime[playerid] <= 0) { if(gTeam[killerid] != gTeam[playerid]) { if(GetPlayerState(killerid) == 1) { PlayerInfo[killerid][pKills] = PlayerInfo[killerid][pKills] + 2; } else { PlayerInfo[killerid][pKills]++; } PlayerInfo[playerid][pKills]--; } } if (((gTeam[killerid]) == 1) || ((gTeam[killerid]) == 3 && civnokill) || (gTeam[killerid] == gTeam[playerid] && gTeam[playerid] != 4)) { slice = 0; } if (((gTeam[killerid]) != 4) && ((gTeam[killerid]) == gTeam[playerid]))//no team kill { slice = 0; } if (playercash > 0) { GivePlayerMoney(playerid, -slice); } else { slice = slice+500; } GivePlayerMoney(killerid, slice); PlayerPlaySound(killerid, 1083, 0.0, 0.0, 0.0); if (((gTeam[killerid]) == 3) && reason != 49) { SetPlayerCriminal(killerid,255, "Vorsätzlicher Mord"); } else if (((gTeam[killerid]) == 3) && reason == 49) { SetPlayerCriminal(killerid,255, "Fahrerflucht"); } } } else if (victimteam == 2) { if(IsPlayerConnected(killerid)) { // Cop kill PlayerInfo[playerid][pKills]--; if (gTeam[killerid] == 2)//cops kill cop { PlayerPlaySound(killerid, 1084, 0.0, 0.0, 0.0); GivePlayerMoney(killerid, -suecost); GivePlayerMoney(playerid, suecost+100);//+100pays hospital bill } if (gTeam[killerid] >= 3) { WantedPoints[killerid] += 2; //+ 2 wanted points if(reason != 49) { SetPlayerCriminal(killerid,255, "Vorsätzlicher Mord"); } else if (reason == 49) { SetPlayerCriminal(killerid,255, "Fahrerflucht"); } } if(gTeam[killerid] >= 5 && SafeTime[playerid] <= 0) { if(GetPlayerState(killerid) == 1) { PlayerInfo[killerid][pKills] = PlayerInfo[killerid][pKills]+2; } else { PlayerInfo[killerid][pKills]++; } WantedPoints[killerid]+=2; } } } else if (victimteam == 3) { if(IsPlayerConnected(killerid)) { // Civ kill if ((gTeam[killerid]) == 2 || PlayerInfo[killerid][pMember] == 7)//cops kill civ { if(WantedLevel[playerid] < 1) { PlayerPlaySound(killerid, 1084, 0.0, 0.0, 0.0); GivePlayerMoney(killerid, -suecost); GivePlayerMoney(playerid, suecost+100);//+100pays hospital bill } } else { WantedPoints[killerid] += 2; } if (((gTeam[killerid]) >= 3 || (gTeam[killerid]) == 1) && reason != 49) { SetPlayerCriminal(killerid,255, "Vorsätzlicher Mord"); } else if (((gTeam[killerid]) >= 3 || (gTeam[killerid]) == 1) && reason == 49) { SetPlayerCriminal(killerid,255, "Fahrerflucht"); } } } else if (victimteam == 1) { if(IsPlayerConnected(killerid)) { // Civ kill if ((gTeam[killerid]) == 2)//cops kill civ { PlayerPlaySound(killerid, 1084, 0.0, 0.0, 0.0); GivePlayerMoney(killerid, -suecost); GivePlayerMoney(playerid, suecost+100);//+100pays hospital bill } else if ((gTeam[killerid]) == 1)//med kill civ { PlayerPlaySound(killerid, 1084, 0.0, 0.0, 0.0); GivePlayerMoney(killerid, -suecost); GivePlayerMoney(playerid, suecost+100);//+100pays hospital bill } if (((gTeam[killerid]) == 4) && reason != 49) { SetPlayerCriminal(killerid,255, "Vorsätzlicher Mord"); } else if (((gTeam[killerid]) == 3) && reason == 49) { SetPlayerCriminal(killerid,255, "Fahrerflucht"); } } } if (victimteam >= 3 && WantedPoints[playerid] > 0 && killerteam == 2) { SetPlayerFree(playerid,killerid, "Gekillt"); } killerid = INVALID_PLAYER_ID; SetPlayerColor(playerid,COLOR_GRAD2); return 1;}
Aber wie mache ich das, dass er keine Wanteds kriegt? Ich kapiere hier 0, sry bin noch Noob
Brauche noch Hilfe.
Die formatierung deines Beitrages geht meistens, wenn du nicht den Quellcode Editor benutzt in den Eimer. Desshalb verwende bitte immer bei posten von mehrzeiligen Code Ausschnitten den Quellcode Editor, anstatt dem WYSIWYG Editor (What you see, is what you get > Was du siehst, ist was du bekommst). Um es dir grafisch darzulegen, wie dein Post im WYSIWYG Editor und Quellcode Editor aussieht - habe ich folgende Grafik erstellt: » Klick mich «. Dies ist nur ein Hinweis, ich hoffe nächstes mal erinnerst du dich beim posten daran.
Nachdem du dies erledigt hat, kann ich dir gerne weiter helfen. Ich habe dieses Thema abboniert, somit musst du mir keine Benachrichtigung (ICQ; PN o.ä.) zukommen lassen, da ich automatische eine Benachrichtigung erhalten, sobald du o. jemd. anders in diesem Thema antwortet.
Achte in Zukunft auf Doppelposts. Der 1. DP wurde schon verwarnt, lernst du etwa nicht daraus?