... warum?
Weil deine Abfrage falsch ist, schreib sie so:
if(400 <= strval(inputtext) <= 611)
mfg. ![]()
... warum?
Weil deine Abfrage falsch ist, schreib sie so:
if(400 <= strval(inputtext) <= 611)
mfg. ![]()
Aber ist ja auch unnötigen wenn Man Float:Float:123.12 hat?
Hast du eig meinen Text gelesen? ![]()
macht aber in diesem Fall gar keinen Sinn, da es schon Floats sind
mfg. ![]()
ausserdem müssen die Floats: weg wenn du das anwendest die müssen nur bei der Variablendeklarieung hinb!
Naja "müssen" sie nicht.
Damit würde er nur die Floats in Floats casten. Grundsätzlich kann man das machen, macht aber in diesem Fall gar keinen Sinn, da es schon Floats sind ![]()
Aber bei Integer Variablen z.B. ist dies eine gute Methode:
printf("%f",Float:0); //Output: 0.000000
mf. ![]()
Du hast so wie ich das gesehen habe die Z-Angel vergessen
Ja in der Tat, dass hat er, allerdings ist das kein Tag mismatch Error, sondern wäre nur ein warning 202: number of arguments does not match definition ![]()
mfg. ![]()
Hey. Ich weiß nicht wo hier ein Tag missmatch ist.
Eine Zeile wäre von Vorteil ![]()
//Edit:
Foat:X,Float:Y,Float:Z
Du hast bei dem X Foat: geschrieben und das gibt es nichts..lösch überall das Foat bzw Float ![]()
Aber hier einige Tipps & Möglichkeiten:
GetPlayerPos(playerid, Float:X,Float:Y,Float:Z);
Die Variablen sind schon Floats, in den Funktionen wo du sie verwendest musst du den Tag nicht nocheinmal angeben außer du willst sie casten ![]()
carid = GetPlayerVehicleID(playerid);
Wofür diese Zeile...du machst mit dem Wert doch nichts? ![]()
vehCar[carid] = true;
Vielleicht ist vehCar kein boolean?
strval(inputtext)
Du solltest oben erstmal abfragen ob er überhaupt einen inputtext eingegeben hat...falls man sich mal verklickt oder so..zudem würde dann CreateVehicle einen Fehler ausgeben, also checken ob die modelid von dem Fahrzeug im validen Bereich liegt (400 - 611) ![]()
mfg. ![]()
Wie könnte man das machen, wenn man alle Waffen abfragen will?
Halt wenn man irgendeine Waffe hat, dass dann irgendeine Nachricht kommt?
So könntest du das machen:
new Waffen[13][2],tmp[27 + 32];
for (new i; i<13; i++) {
GetPlayerWeaponData(playerid, i, Waffen[i][0], Waffen[i][1]);
if(Waffen[i][0] <= 0) continue;
GetWeaponName(Waffen[i][0],tmp,32);
format(tmp,sizeof tmp,"Der Spieler besitzt eine %s!",tmp);
SendClientMessage(playerid,Rot,tmp);
}
mfg. ![]()
Die Nachricht kommt nicht, obwohl ich die Waffe besitze
Warum machst du es nicht einfach so?
new Waffen[13][2];
for (new i; i < 13; i++) {
GetPlayerWeaponData(playerid, i, Waffen[i][0], Waffen[i][1]);
if(Waffen[i][0] == 24) return SendClientMessage(playerid,Rot,"Du besitzt eine Deagle!");
}
mfg. ![]()
SERVER: Unknown Command.
Dann sind die String Größen falsch...wie groß ist denn die Variable String...bzw AH_Typ ? ...schraubs halt mal hoch auf 64 die Variable data...auch im format dann...
mfg. ![]()
Vielleicht weil du 52.272x eine Variable mit 200 Cells und dann noch 726x eine Variable mit 256 Celles erstellst...und das den Server einfach überlastet?! ![]()
Wenn du mit MySQL arbeitest, wieso nutzt du dann .ini Dateien?! ![]()
Mach doch keine halbe Sachen, sondern benutze in dieser Hinsicht ruhig MySQL oder SQLite.
Probiere es mal so, da ist die Auslastung wesentlich geringer:
if(!strcmp("/sellcars0",cmd,true)) {
new WERT[4],data[32],tmp[11];
for(new i=1; i<726; i++) {
format(string, sizeof(string), "cars/%dAutoNR0.ini", i);
if(!fexist(string)) continue;
format(data,32,dini_Get(string,"AH_Typ")),WERT[0] = strval( data );
for(new e = 1; e<72; e++){
if(WERT[0] != Autoverkauf[e][ModelID]) continue;
valstr(tmp,i);
WERT[1] = mysql_GetInt("users", "Bank", "SQLid", tmp);
WERT[2] = Autoverkauf[e][CarPreis]+WERT[1];
mysql_SetInt("users","Bank",WERT[2],"SQLid",tmp);
}
}
SendClientMessage(playerid,COLOR_WHITE,"Fertig!");
return 1;
}
mfg. ![]()
Wie behebe ich das?
Nutzt du einen Command-Prozessor oder nur strcmp?
//Bei strcmp einfach so machen:
if(!strcmp(cmd,"Befehl",true)) //da einfach auf true setzen, dann ignoriert er die Groß&Kleinschreibung
mfg. ![]()
Habe einfach die Z Koordinate von der Ausgangsposition genommen , und setze sie dann nach dem Aufprall wieder dorthin ,.
Dir ist klar, wenn du z.B. auf einen Berg schlägst, dass dann der Ball im Berg ist ![]()
Interessant, hast du mal nach "Schlag / Golf" Animationen geschaut...wäre cool, wenn man das noch einfügen würde, das sähe authentischer aus ![]()
PS: Das mit dem "Loch-Bug" mach doch einfach das der Ball da stehen bleibt und der Timer gekillt wird für das Objekt, der überprüft ob es im Loch ist oder nicht.
Wie hast du es gemacht, dass die Z-Koordinate von dem Objekt immer am Boden bleibt, MapAndreas Plugin? ![]()
mfg. ![]()
Danke für die schnelle Antwort, ich dachte mir immer das OnPlayerRequestClass der F4 Modus ist?
Das ist er ja auch
Du willst doch auch diesen Auswahl Modus oder nicht?! ![]()
Ich habe diese ForceClassSelection(playerid); Funktion unter OnPlayerRquestClass gepackt und das geht leider nicht.
Das macht doch auch keinen Sinn, da ist er ja schließlich schon im Auswahl Modus drinnen, nur wenn er draußen ist musst du ihn in diesen Modus erst wieder "zwingen".
Könntest du mir vielleicht das ganze etwas erklären?
Schau dir doch mal die Wiki Seite an, da ist unten in Beispiel wie du den Spieler per CMD in diesen Auswahl Modus bringst, das machst du jetzt einfach nach dem Login bzw Register ![]()
mfg. ![]()
Nachdem registrieren bzw login einbinden?
Du musst den Spieler den Callback OnPlayerRequestClass aufrufen lassen, das machst du mit dieser Funktion:
http://wiki.sa-mp.com/wiki/ForceClassSelection
mfg. ![]()
Kann mir da einer weiterhelfen?
Dein Enum sollte so aussehen:
enum zoneinfo {
zone_name[MAX_NAME],
Float:zone_minx,
Float:zone_miny,
Float:zone_minz,
Float:zone_maxx,
Float:zone_maxy,
Float:zone_maxz
};
Einfach weil du keine zoneid hast ![]()
Zudem hast du nicht gleichmäßige TABs benutzt, schreibe oben in dein Script einfach:
#pragma tabsize 0
mfg. ![]()
Meine animation wird nicht ausgeführt...
1. Hast du sie mal "PreLoaden" lassen?
2. Mal einen Print-Debug gemacht, dass i auch deiner playerid entspricht?
mfg. ![]()
wozu brauche ich den string?
Na, du willst doch einen Namen in einer Variable speichern. Deshalb muss diese Variable ein String sein, sonst könntest du da keinen Namen drin speichern ![]()
mfg. ![]()
sizeof(SpielerInfo[playerid][pRPGNamen])
Das kann man nicht machen ![]()
Man kann nicht von einer multi-dimensionalen Variable durch den Operator sizeof die Größe herausfinden ![]()
Das sollte so aussehen:
format(SpielerInfo[playerid][pRPGNamen], MAX_PLAYER_NAME, inputtext);
mfg. ![]()
ob es überhaupt geht.
Sollte eigentlich gehen.
Probiere es doch einfach aus?
Also der Standard Wert von der Funktion beträgt 70.0 ... machs mal kleiner mal höher, dann hast du doch dein Resultat ![]()
mfg. ![]()