Vielleicht ist "ROT" bereits in einer deiner Includes definiert
Beiträge von VAM
-
-
Benutz mal das als Rot 0xD90000FF
-
Hast du auch "ROT" richtig definiert?
Oder such mal halt im Script nach SetPlayerColor ob wo anders noch etwas gesetzt wird.
-
-
-
loose indentation, du sollst es nicht 1 zu 1 reinkopieren, du musst schon die Klammern richtig hinsetzen etc. / Code richtig hin moven.
-
Alles Klar, danke dir vielmals, klappt wunderbar!
Schönen Abend noch.
-
Habenoch eine Frage wegen dem Tod durch Cop mit Wanteds.
Man landet normal im Knast etc, jedoch verschwinden die Wanteds nicht / Textdraw verschwindet nicht.
Hier der Code wenn man mit Wanteds stirbt :
Code
Alles anzeigenif(killerid!=INVALID_PLAYER_ID) { if(pInfo[killerid][fraktion]==2 || pInfo[killerid][fraktion]==3) { if(GetPlayerWantedLevel(playerid)!=0) { new string[128]; new string2[128]; format(string,sizeof(string),"* Du wurdest von Polizist %s getötet.",PlayerName(killerid)); format(string2,sizeof(string2),"* Du bist nun im Gefängnis und musst %d bezahlen.",GetPlayerWantedLevel(playerid)*1000); SendClientMessage(playerid, DROT, string); SendClientMessage(playerid, DROT, string); SendClientMessage(playerid, DROT, "* Tippe /time um zu sehen wie lange du noch sitzen musst."); pInfo[playerid][inknast]=1; pInfo[playerid][knasttime]=GetPlayerWantedLevel(playerid) * minprowanted; pInfo[killerid][payday]+=1500; ac_GivePlayerMoney(playerid, -GetPlayerWantedLevel(playerid)*1000); SetPlayerWantedLevel(playerid,0); } } }
Wieso werden die Wanteds nicht gelöscht?
-
-
Also /su :
Code
Alles anzeigenocmd:su(playerid,params[]) { if(pInfo[playerid][fraktion]!=2 && pInfo[playerid][fraktion]!=3 && pInfo[playerid][fraktion]!=4 && !IsAdmin(playerid,3))return noaccess new pid,wam,str[222],str3[128]; if(sscanf(params,"uis",pid,wam,str))return SendClientMessage(playerid,WEIß,"Verwendung: /su (SpielerID) (Wanteds) (Grund)"); if(!PlayerOnline(pid))return SendClientMessage(playerid,GRAU,"Der Spieler ist nicht erreichbar."); if(wam==0)return SendClientMessage(playerid, GRAU, "Ungültiges Wantedlevel!"); if(pInfo[playerid][fraktion]==2){ if(pDuty[playerid]!=1)return SendClientMessage(playerid,ROT,"Du bist nicht im Dienst."); } if(pInfo[pid][fraktion]==2 && pInfo[pid][fraktion]==3)return SendClientMessage(playerid,ROT, "Du kannst einem Polizisten keine Wanteds eintragen!"); //if(pInfo[playerid][fraktion]!=2 && pInfo[playerid][fraktion]!=3 && pInfo[playerid][frang]<2)return SendClientMessage(playerid,GRAU,"Dein Rang reicht nicht aus!"); //if(pInfo[playerid][fraktion]!=4 && pInfo[playerid][frang]<2)return SendClientMessage(playerid,GRAU,"Dein Rang reicht nicht aus!"); new str1[123]; format(str1,sizeof(str1),"Du hast ein Verbrechen begangen ( %s ). Zeuge : %s",str,PlayerName(playerid),wam); SetPlayerWantedLevel(pid,wam); pInfo[playerid][verbrechen]++; SendClientMessage(pid,DROT,str1); new winfo[128]; format(winfo,sizeof(winfo),"Dein aktuelles Wantedlevel: %i",GetPlayerWantedLevel(pid)); SendClientMessage(pid,GELB,winfo); SendClientMessage(playerid,HBLAU,"Du hast dem angegebenen Spieler die Wantedstufen eingetragen. Unter /wanteds kannst du jederzeit sehen wer Wanteds hat."); format(str3,sizeof(str3),"* Meldung: Verdächtiger %s, Verbrechen: %s.",PlayerName(pid),str); new logstr[128]; format(logstr,sizeof(logstr),"LSPD %s gab dem Spieler %s %d Wanteds. Grund: %s", PlayerName(playerid), PlayerName(pid), wam, str); AddLog("log_lspd.txt",logstr); for(new i=0; i<GetMaxPlayers(); i++) { if(!IsPlayerConnected(i))continue; if(pInfo[i][fraktion]!=2 && pInfo[i][fraktion]!=3)continue; if(IsPlayerStreamedIn(i, pid))continue; DeletePlayer3DTextLabel(i, WantedLabel[i][pid]); WantedStreamedIn[i][pid]=0; } for(new i=0; i<GetMaxPlayers(); i++) { if(pInfo[i][fraktion]!=2 && pInfo[i][fraktion]!=3)continue; SendClientMessage(i,0x6699FF,str3); } return 1; }
Und /clear :Code
Alles anzeigenocmd:clear(playerid,params[]) { if(pInfo[playerid][fraktion]!=2 && pInfo[playerid][fraktion]!=3 && pInfo[playerid][fraktion]!=4 && !IsAdmin(playerid,3))return noaccess new pid,wam; if(sscanf(params,"iu",wam,pid))return SendClientMessage(playerid,WEIß,"Verwendung: /clear (Anzahl) (SpielerID)"); if(!PlayerOnline(pid))return SendClientMessage(playerid,GRAU,"Dieser Spieler existiert nicht."); //if(pInfo[playerid][fraktion]!=4 && pInfo[playerid][frang]<2)return SendClientMessage(playerid,GRAU,"Dein Rang reicht nicht aus!"); if(GetPlayerWantedLevel(pid)<=0)return SendClientMessage(playerid,GRAU,"Der Spieler hat keine Wanteds."); SendClientMessage(playerid,GRUEN,"Du hast die Akte des Spielers gesäubert!"); new str1[123]; format(str1,sizeof(str1),"* Beamte %s hat deine Akte gesäubert, %i Wanteds sind gelöscht.",PlayerName(playerid),wam); SetPlayerWantedLevel(pid,-wam); SendClientMessage(pid,HBLAU,str1); if(GetPlayerWantedLevel(pid)==0) { for(new i=0; i<GetMaxPlayers(); i++) { if(!IsPlayerConnected(i))continue; if(WantedStreamedIn[i][pid]!=1)continue; DeletePlayer3DTextLabel(i, WantedLabel[i][pid]); WantedStreamedIn[i][pid]=0; } } new logstr[128]; format(logstr,sizeof(logstr),"LSPD %s löschte %d Wanteds von Verbrecher %s.", PlayerName(playerid), wam,PlayerName(pid)); AddLog("log_lspd.txt",logstr); return 1; }
Davor ging es ja perfekt die beiden Befehle.
-
Das mit dem Tod klappt jetzt,wird richtig addiert, jedoch ist die Wantedvergabe durch /su im Eimer.
Also z.B /su [Spieler] [Anzahl 1] [Grund : Test]
Immer wiederholt jedoch bleiben die Wanteds bei 1 immer und verdoppeln sich nicht.
Und wenn ich 1 Wanted habe, mache ich /clear [Spieler] [Anzahl 1] geht es ins Minus also -1 statt 0 bzw. TextDrawHide...
-
Hey,
ich habe eine Frage.
Ich habe eine SetPlayerWantedLevel Funktion mit Textdraw-Wanted.Hier der Stock für SetPlayerWantedLevel :
Code
Alles anzeigenstock SetPlayerWantedLevelEx(playerid, wtd) { wanteds[playerid]+=wtd; if(wanteds[playerid]==0) { PlayerTextDrawHide(playerid, WantedTd[playerid]); PlayerTextDrawHide(playerid, SternTd[playerid]); for(new i=0; i<GetMaxPlayers(); i++) { if(!IsPlayerConnected(i))continue; if(WantedStreamedIn[i][playerid]==1) DeletePlayer3DTextLabel(i, WantedLabel[i][playerid]); WantedStreamedIn[i][playerid]=0; } } else { new str[50]; format(str,sizeof(str), "%d",wanteds[playerid]); PlayerTextDrawSetString(playerid, WantedTd[playerid],str); PlayerTextDrawShow(playerid, WantedTd[playerid]); PlayerTextDrawShow(playerid, SternTd[playerid]); } return 1; }
Wenn man mit /su Wanteds vergibt, klappt alles normal.Jedoch habe ich bei OnPlayerDeath 2 automatische Wanteds hinzugefügt was allerdings nicht so gut klappt.
Wenn ich jemanden töte mit 0 Wanteds kriege ich normale 2 Wanteds, jedoch beim nächsten Kill verdoppeln sich die Wanteds von 2 auf 6 und dann von 6 auf 14 etc.Hier dazu der Code bei OPD :
Codeif(pInfo[killerid][fraktion]!=2 && pInfo[killerid][fraktion]!=3) SetPlayerWantedLevel(killerid, GetPlayerWantedLevel(killerid)+2);
Weiß einer vielleicht wieso das sich so komisch multipliziert?
-
Code
format(string, sizeof(string), "* Admin %s hat sich ein Fahrzeug (ID: %i) gespawnt.", name, vID); for(new i=0; i<MAX_PLAYERS; i++) { if(!IsPlayerConnected(i))continue; if(!IsPlayerAnAdmin(i, 1))continue; SendClientMessage(i, COLOR_ORANGE, string); }
Beim format, "name", hast du auch dafür eine Variable für den Spielernamen etc? Müsste ja z.B mit einer Variable dann "name(playerid)" sein...
-
Sind die Klammern wirklich so hin gesetzt wie im Code?
-
Wäre dir sehr verbunden
-
// Push
Suche nur noch ein Anticheat für alle möglichen Vehicle-Hacks ( Vehicle-Teleport / Carshoot / Warp Into Vehicle etc. )
-
Je weniger Müll auf dem Server ist, desto besser läuft alles.
Definiere bitte "weniger Müll".
z.B der Server SDM -> hat eine Hitbox die sehr nah am Skin ist ( Lagshot 0.3x ).Dahingegen hat iLoveDM eine Lagshot-Hitbox die sehr weiter entfernt ist.
Deswegen liegt es nicht am Ping. -
Hey,
ich weiß nicht ob dies funktioniert, jedoch merkt man auf verschiedenen Server die lagcompoff also Lagshot benutzen, dass die Hitbox sehr verschieden ist.
Bei dem einem Server ist die Hitbox sehr nah am Skin, bei dem anderen sehr weit entfernt.
Kann man dies irgendwie genauer einstellen?
Wenn nein, an was liegt das , dass die Hitboxen verschieden sind?
-
Hey,
seit dem ich den Bug behoben habe , dass man keine Nachrichten etc kriegt, kriege ich jetzt einen Spam sobald ich getötet werde.
Da ich /timestamp aktiviert habe, sehe ich dass die Chatfarbe Dunkelrot ist, welches vielleicht an der Anti-SDM Funktion liegen könnte
Jedoch erkenne ich nichts was ich vielleicht vergessen habe?
Hier mein Code :
Code
Alles anzeigenpublic OnPlayerDeath(playerid, killerid, reason) { SetPVarInt(playerid, "ImHaus", -1); spv(playerid,"Carrying",0); spv(playerid,"Grabbed",0); spv(playerid,"Cuffed",0); //************************************************************************* //Tot-Position abfragen & speichern new Float:ppos[3]; GetPlayerPos(playerid, ppos[0], ppos[1], ppos[2]); pTotPos[playerid][0]=ppos[0]; pTotPos[playerid][1]=ppos[1]; pTotPos[playerid][2]=ppos[2]; //************************************************************************* //Bank-System abbrechen (wenn) und Fahrschule ebenso IstInBank[playerid]=false; if(InFahrschule[playerid]) { SetVehicleToRespawn(JobCar[playerid]); JobCar[playerid]=INVALID_VEHICLE_ID; FahrschulCP[playerid]=0; InFahrschule[playerid]=false; } //************************************************************************ if(killerid!=INVALID_PLAYER_ID) { if(pInfo[playerid][HatContract]==1 && pInfo[killerid][fraktion]==10) { new str[128]; pInfo[playerid][HatContract]=0; pInfo[playerid][ContractMoney]=0; SendClientMessage(playerid, GELB, "Du wurdest von einem Auftragskiller getötet, da ein Kopfgeld auf dich ausgesetzt war. Bitte reiche keine Beschwerde ein."); ac_GivePlayerMoney(killerid,GetPVarInt(playerid,"ContractMoney"));//Giving killer id money for(new i = 0; i < MAX_PLAYERS; i++) { if(pInfo[i][fraktion]==10) { format(str,sizeof(str),"<< Hitman %s hat den Auftrag ausgeführt und %s für %i$ getötet. >>",PlayerName(killerid),PlayerName(playerid),GetPVarInt(playerid,"ContractMoney")); SendClientMessage(i, GELB, str); } } } } //In Animation if(InAnim[playerid]==1) { InAnim[playerid]=0; StopLoopingAnim(playerid); TextDrawHideForPlayer(playerid,txtAnimHelper); } if(killerid!=INVALID_PLAYER_ID) { new str[128]; if(pInfo[killerid][fraktion]==0) { format(str,sizeof(str),"[ANTI-SDM] %s wurde von Zivilist %s getötet! (/tv)",PlayerName(playerid),PlayerName(killerid)); } for(new i = 0; i < MAX_PLAYERS; i++) { if(!IsAdmin(i,1)) { SendClientMessage(playerid,DROT, str); } } } if(killerid!=INVALID_PLAYER_ID) { if(pInfo[killerid][fraktion]==7 && pInfo[playerid][fraktion]==8) { GameTextForPlayer(killerid, "~g~GANGWARKILL",3000,3); } } //Gang-War Kill System for(new i=0; i<sizeof(GangZoneInfo); i++) { if(!IsPlayerInGangZone(killerid, i))continue; if(!GangZoneInfo[i][inwar])continue; for(new gw=0; gw<sizeof(GangWarInfo); gw++) { if(GangWarInfo[gw][zoneid]!=i)continue; if(killerid!=INVALID_PLAYER_ID) { if(pInfo[killerid][fraktion]==GangWarInfo[gw][angreifer])GangWarInfo[gw][kills_angreifer]++; else if(pInfo[killerid][fraktion]==GangZoneInfo[i][gzowner])GangWarInfo[gw][kills_owner]++; GameTextForPlayer(killerid, "~g~GANGZONEKILL", 3000, 3); GameTextForPlayer(playerid, "~r~GANGZONEKILL",3000, 3); break; } } break; } //Anrufen abbrechen if(isAmTelen[playerid]) { if(Call_Anrufer[playerid]!=-1) { if(PlayerOnline(Call_Anrufer[playerid])) { SendClientMessage(Call_Anrufer[playerid],GRAU,"Du hörst nur noch ein Rauschen am anderen Ende der Leitung..."); isAmTelen[Call_Anrufer[playerid]]=0; Call_Anrufer[playerid]=-1; } } else if(Call_Anrufen[playerid]!=-1) { if(PlayerOnline(Call_Anrufen[playerid])) { SendClientMessage(Call_Anrufen[playerid],GRAU,"Du hörst nur noch ein Rauschen am anderen Ende der Leitung..."); isAmTelen[Call_Anrufen[playerid]]=0; Call_Anrufen[playerid]=-1; pInfo[playerid][handykarte]-=gpv(playerid,"MussTeleZahlen"); } } isAmTelen[playerid]=0; } if(killerid!=INVALID_PLAYER_ID) { if(PlayerOnline(killerid)) { if(pInfo[killerid][fraktion]==2 || pInfo[killerid][fraktion]==3) { if(Robber[playerid]==1) { Robber[playerid]=0; BankIsRobbed=0; BankRobbed=1; new str[128]; format(str,sizeof(str),"* Der Bankräuber %s wurde vom Beamten %s getötet. Der Bankraub ist gescheitert.",PlayerName(playerid), PlayerName(killerid)); SendClientMessageToAll(HBLAU,str); SetTimer("BankRobReset", 10800*1000, false); } } } } if(Robber[playerid]==1) { Robber[playerid]=0; BankIsRobbed=0; BankRobbed=1; new str[128]; format(str,sizeof(str),"* Der Bankräuber %s wurde getötet. Der Bankraub ist gescheitert.",PlayerName(playerid), PlayerName(killerid)); SendClientMessageToAll(HBLAU,str); SetTimer("BankRobReset", 10800*1000, false); } /* //Wanteds geben if(PlayerOnline(killerid)) { if(pInfo[killerid][fraktion]!=2 && pInfo[killerid][fraktion]!=3) SetPlayerWantedLevelEx(killerid, GetPlayerWantedLevel(killerid)+2); if(pInfo[killerid][fraktion]!=2 && pInfo[killerid][fraktion]!=3) SendClientMessage(killerid, DROT, "Du hast ein Verbrechen begangen ( Mord ), Zeuge : Niemand"); new infostr[128]; format(infostr,sizeof(infostr),"Dein Wantedlevel: %d", wanteds[killerid]); if(pInfo[killerid][fraktion]!=2 && pInfo[killerid][fraktion]!=3) SendClientMessage(killerid, GELB, infostr); new meldung[128], zne[64]; GetPlayer3DZone(killerid, zne, sizeof(zne)); format(meldung,sizeof(meldung),"* Meldung: Verdächtiger %s, Verbrechen: Mord in %s.",PlayerName(killerid), zne); for(new i=0; i<GetMaxPlayers(); i++) { if(!PlayerOnline(i))continue; if(pInfo[i][fraktion]!=2 && pInfo[i][fraktion]!=3)continue; if(pInfo[killerid][fraktion]!=2 && pInfo[killerid][fraktion]!=3) SendClientMessage(i, 0x8080FFFF, meldung); } } */ if(killerid!=INVALID_PLAYER_ID) { if(PlayerOnline(killerid)) { new str[128]; format(str,sizeof(str),"Du hast %s getötet.",PlayerName(playerid)); SendClientMessage(killerid, 0x009B00FF, str); } } if(PlayerOnline(playerid)) { new str[128]; format(str,sizeof(str),"Du wurdest von %s getötet.",PlayerName(killerid)); SendClientMessage(playerid, 0xCC0000FF, str); } //Taxi Fahrer if(IsTaxi[playerid]==1) { SetVehicleToRespawn(JobCar[playerid]); Delete3DTextLabel(vehicle3Dtext[JobCar[playerid]]); IsTaxi[playerid]=0; TaxiKosten[playerid]=0; TaxiSitz[playerid][0]=0; TaxiSitz[playerid][1]=0; TaxiSitz[playerid][2]=0; Taxameter[playerid][0]=0; Taxameter[playerid][1]=0; Taxameter[playerid][2]=0; TaxiSekunden[playerid][0]=0; TaxiSekunden[playerid][1]=0; TaxiSekunden[playerid][2]=0; } new count=0; for(new i=0; i<GetMaxPlayers(); i++) { if(!PlayerOnline(i))continue; if(pInfo[i][fraktion]!=5)continue; count++; } pInfo[playerid][tot]=1; if(count>3)pInfo[playerid][totsek]=180; else pInfo[playerid][totsek]=60; new basic_floats; GetPlayerPos(playerid,x,y,z); new str[230],Hour, Minute, Second,zeuge[10*MAX_PLAYER_NAME+20], zcount=0; for(new i=0; i<GetMaxPlayers(); i++) { if(!PlayerOnline(i))continue; if(!IsPlayerInRangeOfPoint(i,20.0,x,y,z))continue; if(GetPlayerState(playerid)==PLAYER_STATE_SPECTATING)continue; if(i==playerid || i==killerid)continue; zcount++; if(zcount<2)format(zeuge,sizeof(zeuge),"%s",PlayerName(i)); else format(zeuge,sizeof(zeuge),"%s / %s",zeuge, PlayerName(i)); } gettime(Hour, Minute, Second); format(str,sizeof(str),"† %s †\n%02d:%02d:%02d\nZeuge: %s", PlayerName(playerid),Hour, Minute, Second,zeuge); if(killerid!=INVALID_PLAYER_ID && pInfo[killerid][fraktion]==2)format(str,sizeof(str),"† %s †\n%02d:%02d:%02d", PlayerName(playerid),Hour, Minute, Second,zeuge); TotLabel[playerid]=Create3DTextLabel(str,WEIß,x,y,z,6.0, GetPlayerVirtualWorld(playerid),0); TotPickup[playerid]=CreatePickup(1254,1,x,y,z,-1); //Mode dem Killer hinzu setzen und wenn er wanteds hat, in den Knast. //Und dem player die Tode hinzu setzen if(killerid!=INVALID_PLAYER_ID && killerid != playerid && AdminDuty[killerid]==0) { pInfo[killerid][morde]++; } if(killerid!=INVALID_PLAYER_ID) { if(pInfo[killerid][fraktion]==2 || pInfo[killerid][fraktion]==3) { if(GetPlayerWantedLevel(playerid)!=0) { pInfo[playerid][inknast]=1; pInfo[playerid][knasttime]=GetPlayerWantedLevel(playerid) * minprowanted; pInfo[killerid][payday]+=1500; FrakInfo[pInfo[playerid][fraktion]][kasse]-=1500; ac_GivePlayerMoney(playerid, -GetPlayerWantedLevel(playerid)*1000); SetPlayerWantedLevel(playerid,0); } } } pInfo[playerid][tode]++; return 1; }
// Fehler gefunden, tut mir Leid.
-
Hey,
ich suche ein Anticheat-Filterscript welches per Dialog einstellbar sein sollte ( An/Ausschalten als RCON etc. )
Das Filterscript sollte wirklich die meisten Cheats erkennen wie z.B :
- Waffen Hack + Ammo
- S0beit Flying ( Schwimmanimation )
- Teleport-Hack
- WarpIntoVehicle-Hack
- Carshoot Hack
- Ghostmode Hack
- Fakespeed/Kill Hack
Sprich alle verfügbaren Cheats die den Spielspaß sehr stark beeinflussen kann.
Ich würde gerne auf einem Testserver dies anschauen.Bezahlung: 10-30 Euro
Bezahlungsart : Paysafecard
Mittelsmann : Ja