if(newTarget === null )
Es wird nicht null, sondern undefined zurückgegeben, wenn der Spieler mit der ID nicht gefunden wurde.
Siehe: https://wiki.rage.mp/index.php?title=Pool::at
Ergo so schreiben.
if(newTarget === null )
Es wird nicht null, sondern undefined zurückgegeben, wenn der Spieler mit der ID nicht gefunden wurde.
Siehe: https://wiki.rage.mp/index.php?title=Pool::at
Ergo so schreiben.
So zum Beispiel:
ocmd:rod(playerid)
{
if(!IsPlayerInArea(playerid,-1019.7507,2421.9194,-934.8757,2583.4988))return SendClientMessage(playerid,COLOR_RED,"Du bist in keinem Angel gebiet");
if(GetPVarInt(playerid,"ONFISHING") != 0) return SendClientMessage(playerid,COLOR_RED,"Du Angelst bereits");
if(!IsPlayerAtJobCar(playerid, 1)) return SendClientMessage(playerid,COLOR_RED,"Bist an keinem dafür vorgesehenem Fahrzeug!");
if(GetPlayerState(playerid) != PLAYER_STATE_ONFOOT) return SendClientMessage(playerid,COLOR_RED,"Du stehst nicht auf Boot");
if(GetPVarFloat(playerid,"FISHCARRY") > 200000.0) return SendClientMessage(playerid,COLOR_RED,"Du trägst zuviel Fisch bei dir Verkaufe erst welchen");
freeze(playerid);
SetPlayerAttachedObject(playerid,0, 18632,6,0.1,0.04,0.025,0.0,180.0,180.0, 1.0, 1.0, 1.0, 0xFF00FF00);
ApplyAnimation(playerid,"SWORD", "sword_IDLE",4.1,1, 0, 0,1,0, 1);
SetPVarInt(playerid,"ONFISHING",1);
SendClientMessage(playerid,COLOR_YELLO,"*Du wirfst deine Angel aus*");
SetTimerEx("FishingTimer",10000,0,"i",playerid);
return 1;
}
stock IsPlayerAtJobCar(playerid, jobID) {
for(new i,Float:x,Float:y, Float:z; i<sizeof(jCars); i++)
{
if(jCars[i][jc_jobid] != jobID) continue;
GetVehiclePos(jCars[i][jc_cid],x,y,z);
if(IsPlayerInRangeOfPoint(playerid,5.0,x,y,z)) return 1;
}
return 0;
}
Alles anzeigen
PS: Die richtige Angel Animation ist ApplyAnimation(playerid,!"SAMP",!"FishingIdle",4.1,0,0,0,1,-1,1); Musst den Spieler dafür auch nicht freezen! Das wird über die Animation gemacht (so kann er sich nicht bewegen, aber die Kamera noch bewegen!).
Ahoi, ich wollte fragen wie man den Befehl so schreibt dass man wenn man z.B. /kick eingibt dass man als Parameter auch den Namen des Spielers angeben kann.
Einfach sscanf(params,"u",pID) verwenden, also das "u" sorgt dafür, dass sowohl Spielername, als auch playerid verwendet werden kann.
sscanf sucht dann direkt, ob es einen Spieler mit diesem Namen gibt und übergibt die playerid von dem Spieler an pID (in diesem Beispiel).
Kaliber Weißt du eventuell weiter?
Na klar, sry, war den ganzen Tag unterwegs. Schaue nur ab und an am Handy vorbei, das darüber zu erklären ist aber nur mäßig spaßig.
Also das kannst du einfach so machen:
new Float:x,Float:y,Float:a,veh=GetPlayerVehicleID(playerid);
GetVehicleZAngle(veh,a);
x = floatsin(-a,degrees)/2.0;
y = floatcos(-a,degrees)/2.0;
SetVehicleVelocity(veh,x,y,0);
Je nachdem wie stark der Boost sein soll, kannst natürlich auch die /2.0 entfernen und *2.0 o.ä. machen
Jetzt habe die abfrage so allerdings funktioniert es nicht er führt die anmiation nicht aus,
Lösche mal die Zeile aus der Funktion:
if(!GetPlayerVehicleID(playerid))return 0;
Musst lernen, was ein print-Debug ist. printe dir jeweils, was die Funktionen zurückgeben und schau, wo der Code hängen bleibt, dann weißt du was passiert.
new i=strfind(text,word),j=i+strlen(word)-1; text[i++]='[';
while(i<j){text[i]='F'[i++]} //Zeile die gemeint ist
text[j]='];
Was versuchst du denn damit zu erreichen? text wird später doch gar nicht mehr verwendet?!
Aus diesem Grund kannst es eigentlich löschen.
Ich denke ursprünglich sollte das wohl das Wort extrahieren, welches im Text erkannt wurde...
Da kann man dann auch einfach direkt word ausgeben, da dies ja quasi das Wort ist, welches im Text gefunden wurde.
Syntaktisch ist das was da steht halt komplett falsch.
text[i]='F'[i++] //Da fehlt das ;...da macht das 'F' keinen Sinn..das ist einfach Müll, was da steht :D
text[j]=']; // Da fehlt das Ende von '
Aber wie gesagt, lösch es einfach.
Verstehe die Aufregung nicht so ganz.
Aber wie Blöd muss man sein, auch den Namen vom Skript zu nennen für das man keine Rechte hat
Dabei spielt der ja absolut keine Rolle..man hätte sonst was sagen können...
Und ich wette die Leute, die sich darauf melden, haben dann das Skript und drehen es dem Nächsten Kevin an...
Ahoi, wollte fragen ob es möglich ist Drive Bys zu deaktiviern.
Ahoi, ja das ist möglich.
Mit Hilfe von OnPlayerStateChange kannst du überprüfen, ob die Person Fahrer oder Beifahrer ist und dann kannst du einfach SetPlayerArmedWeapon nutzen und somit die Waffe aus der Hand nehmen, so dass kein Driveby möglich ist.
Öffne mal deine Files in Pawno und schau, ob dort das richtig angezeigt wird
Vermutlich nicht, dann musst du mit Notepad++ solange spielen, bis es dort richtig angezeigt wird
Vielleicht nutz mal unter OnGameModeInit: mysql_set_charset("utf8");
Öffne es mal mit Notepad++ konvertiere zu ANSI...
Manchmal wird die Kodierung zwar auf ANSI gestellt, aber es wird dann nicht mehr konvertiert, weswegen die Unicodezeichen dann trotzdem bleiben und dass dann einfach nur dieser Zeichengulasch rauskommt.
Hier, da wird gezeigt, wie du die Kodierung anzeigen und ändern kannst in Sublime: https://professor-falken.com/d…rchivo-en-sublime-text-3/
Und für Pawn wird eben nicht UTF-8 genutzt, sondern ANSI.
Das ist der Grund, warum es da meist zu Problemen und Fehlern kommt.
Alternativ ist es auch möglich mit Notepad++ unter "Kodierung" > "Konvertiere zu ANSI" zu nutzen.
Welche IDE nutzt du denn zum Programmieren?
Das liegt an einer falschen Kodierung.
Evtl SA:MP auch mal als Admin starten
Evtl auf Windows 7 oooder mal nur bei der gta_sa.exe den Kompatibilitätsmodus ändern.
Hatte sowas auch schon mal, irgendeine Kombi hat meistens geklappt.
Evtl hilft dir YouTube:
oder
Eventuell den Kompatibilitätsmodus auf XP setzen.
Kein Wunder das und keine ausserirdischen kontaktiert haben bis jetzt.
Ohhh, da bist du wohl nur nicht up 2 date:
Lieber Querdenker, statt Leerdenker, kleiner Mann
Mashallah, da wurde ich komplett hopps genommen
wirklich wie NPCs aus GTA 4 rumlaufen
GTA 4?! Übertreib mal nicht...maximal GTA 2. Wie diese Passanten, die entweder auf und ab gelaufen sind oder wenn iwo iwas war, schreiend im Kreis gelaufen sind
Ich glaube
Und ich glaube fast, dass du nicht verstanden hast, was Satire ist. Wobei Querdenker das ja eigentlich schon per Definition sind.
Hier nochmal ein paar Highlights: