Weil OnPlayerStateChange und OnDialogResponse Callbacks sind, du kannst dir in einem Tutorial die Einzelheiten ansehen.
http://wiki.sa-mp.com/wiki/OnPlayerStateChange
http://wiki.sa-mp.com/wiki/OnDialogResponse
Viel Glück
Weil OnPlayerStateChange und OnDialogResponse Callbacks sind, du kannst dir in einem Tutorial die Einzelheiten ansehen.
http://wiki.sa-mp.com/wiki/OnPlayerStateChange
http://wiki.sa-mp.com/wiki/OnDialogResponse
Viel Glück
Müll wie gesagt das ist OnPlayerStateChange und OnDialogResponse mach das Radio weg und schreib public davor
Sprich
public OnPlayerStateChange(...)
public OnDialogResponse(...)
Verstanden?
Das ist wahrscheinlich OnPlayerStateChange, mach den Define weg und schreib's um
Wozu hast du dann diese merkwürdige Funktion...
Sonst lösch doch die #define
Dann geht auch der Warning weg
Auch wenn's als erledigt gilt, was bitte ist OnRadioPlayerStateChange?
Die Funktion gibt es im Normalen nicht...
Benutzt du Plugins oder so?
z.B. so
new i = 0;
while(i < MAX_VEHICLES)
{
if(!IstEinCopCar(i) && !IstEinSchießmichtot &&&&&&&&&)
{Erstellen;}
i++;
}
irgendwie so
Ganz einfach:
Du erstellst eine globale Variable/Array mit der Größe von MAX_VEHICLES.
Diesem Array weißt du den Wert "false" zu, da es noch kein Fahrzeug gab.
Beim Erstellen wirds true usw..
Es gibt nur einen großen Nachteil an der Sache, hat man Fahrzeuge, die nicht mit CreateVehicle erstellt wurden, sprich die ID nicht returnen, nützt das Ganze nichts
Daher wäre die Sache mit dem Alternativen abfragen schon ganz sinnvoll...
Eine Lösung wäre folgende:
new vSlotUsed[MAX_VEHICLES] = { false, ... }; // Global
Beim Erstellen dann
vSlotUsed[vehicleid] = true;
beim Löschen / Sterben etc. pp.
vSlotUsed[vehicleid] = false;
Ne andere Lösung fällt mir momentan nicht ein, außer sämtliche Alternativen abfragen, also obs z.B. ein Autohauscar ist oder ein Policecar oder was auch immer
MfG
Alles anzeigen
Ich glaube VehID ist der Model oder? änder es am besten zu vehModel
dann:
Autohaeuser[v][VehID] = CreateVehicle(Autohaeuser[v][VehModel], Autohaeuser[v][SpawnX], Autohaeuser[v][SpawnY], Autohaeuser[v][SpawnZ], Autohaeuser[v][SpawnAngel], 6, 7, 0);
SetVehicleNumberPlate(Autohaeuser[v][VehID], str);
SetVehicleToRespawn(Autohaeuser[v][VehID]);
Unsinn
Bei Respawn und NumberPlate wird nach der VehicleID gefragt, nicht nach der ModelID, also war das so schon richtig
Eine automatische Updatefunktion der Natives, Eigenen Funktionen, Enums, Defines und PVars wäre auch ganz nett, und außerdem wenn ich SetPVarInt z.B. eingebe, werden manchmal keine PVar Vorschläge gezeigt...
Wäre auch noch zu verbessern
MfG
Hi leutz...
Ich habe mit dem Pawnfox - Editor folgende Includes mitgezogen, die mit im Paket waren, nun würde ich gerne wissen, was das für Includes sind, denn ich kann sie nirgends finden...
DynamicLists und pf_test
Wäre sehr verbunden, über Informationen...
MfG NicoAiko
schick mal den codeschnipsel vom anmelden
vllt kann ich dir da helfen
Speicherst du evtl. Positionen? wenn ja, ist der Z Punkt vllt ziemlich hoch?
Ansonsten wüsste ich jetzt auch nicht genau, was da falsch sein könnte...
Bist du evtl. in einem Interior gewesen und vergessen diese beim Exit wieder auf 0 zu setzen?
wenn es ein anderer währe, dann würd keiner was sagen
Aber er hatte den selben gehabt und das war das was einen irretiert hat
Ich stimme dir in dem Punkt zu, jedoch muss deswegen keine Sperre des Avatars gemacht werden, sondern ich denke ein Hinweis hätte durchaus gereicht.
MfG
Nun, ich muss sagen, die Angehensweise war falsch, es wäre besser, wenn Android ihm eine PN geschickt hätte in der stehen würde: "Bitte ändere deinen Avatar etwas ab, da es eine Verwechslungsgefahr besteht."
Ich halte es für nicht berechtigt, ihm eine Sperre deswegen zu geben, da es nicht seine Absicht war, Trooper zu immitieren.
@iBeavis
Dich könnte ich teils für |-|auke halten, da der Avatar sehr ähnlich aussieht, das ist meiner Meinung nach dasselbe...
Fazit:
Ich finde, die Sperre sollte weggemacht werden und der Avatar nur abgeändert werden, wenn ihm Trooper als Vorbild dient, wieso sollte er nicht so einen ähnlichen Avatar benutzen?
MfG NicoAiko
Edit: Text geändert
Verstehe danke
Tja man lernt nie aus was?
Ich hätte da mal ne Frage
Ich habe folgende Funktion erstellt:
Benutzt habe ich sie folgendermaßen:
if(IsUmlaut("Täst")) print("Stimmt");
else print("Stimmt nicht");
Raus kommt natürlich "Stimmt", aber die Funktion printet etwas komisches...
stock IsUmlaut(const string[]) // Function by NicoAiko
{
new length = strlen(string);
for(new i = 0; i < length; i++)
{
printf("%s",string[i]);
if(string[i] == 'ß' || string[i] == 'ä' || string[i] == 'ö' || string[i] == 'ü' || string[i] == 'Ä' || string[i] == 'Ö' || string[i] == 'Ü' || string[i] == 'à'
|| string[i] == 'á' || string[i] == 'â' || string[i] == 'ò' || string[i] == 'ó' || string[i] == 'ô' || string[i] == 'é' || string[i] == 'è' || string[i] == 'ê'
|| string[i] == 'ì' || string[i] == 'í' || string[i] == 'î' || string[i] == 'ú' || string[i] == 'ù' || string[i] == 'û') return true;
}
return false;
}
T
ä
Stimmt
raus kommt aber
Täst
äst
Stimmt
kann mir das einer erklären?
Dann wäre eine Million ein super Geschenk
Haha bei der ersten Frage wäre ich schon gescheitert hahaha
ich auch xDDDDDDDDDDDDD
Ich weiß nicht mal was molare und prämolare sind
das Pro - Upgrade für (noch) 30€