Nein, nur der X Wert, plus die Größe natürlich.
TextDrawTextSize(Textdraw0 , 537.333435, 20.0);
So zum Beispiel für das erste Textdraw.
Nein, nur der X Wert, plus die Größe natürlich.
TextDrawTextSize(Textdraw0 , 537.333435, 20.0);
So zum Beispiel für das erste Textdraw.
Ich kann es auch nur abschätzen. Probieren musst du es selbst.
Du nimmst einfach die erste Koordinate, machst die +50 und schreibst das als erstes bei TextDrawTextSize hin. Als zweites dann 20 oder so.
TextDrawTextSize(Textdraw1 , 375.666656, 20.0);
Das ist eben eine Probiererei.
Schau mal, hier das du ein Beispiel, wie es komplett auszusehen hat:
http://wiki.sa-mp.com/wiki/OnPlayerClickTextDraw
Damit solltest du klar kommen.
Mahlzeit zusammen, ich stehe mal wieder etwas auf dem Schlauch. Ich möchte ganz gerne wenn ein Fahrzeug explodiert, dass dieses an einer bestimmten Stelle spawnt und nicht am normalen Spawnort. So sieht es in etwa aus:
forward vehicledeath(vehicleid);
public OnVehicleDeath(vehicleid, killerid){
SetTimer("vehicledeath",5000,false);
return 1;
}
public vehicledeath(vehicleid){
SetVehiclePos(vehicleid, 1171.9113,1333.4581,10.5169);
SetVehicleHealth(vehicleid, 400.0);
}
Nun ist halt das Problem, dass die vehicleid von OnVehicleDeath nicht in die public-Funktion vehicledeath übertragen wird. Wie würdet ihr das lösen? Ansonsten würde ich eine neue Variable erstellen namens "lastvehicledeath" oder so und würde darin die vehicleid speichern und dann bei vehicledeath auslesen. Gibt es eine andere Lösung? Danke!
SetTimer("vehicledeath",5000,false);
zu:
SetTimerEx("vehicledeath",5000,false,"d",vehicleid);
Danke dafür!
Eigentlich bin ich ja nicht so einer der sich alles erbettelt sondern versucht es erst selbst, aber bei meinem jetzigen Vorhaben habe ich leider überhaupt keine Erfahrung. Und ich glaube Du lauerst schon auf die nächste Frage hier im Thread, oder Jeffry?
Also: Ich möchte ganz gerne beim OnGameModeExit alle Vehicle-Positions in der Datenbank aktualisieren. Sprich ich benötige eine Schleife, die jedes einzelne Vehicle aufruft, die Vehicle-Position abfragt und diese wiederrum in der Datenbank speichert. Leider sind Schleifen für mich in pawno neu, in PHP würde ich das noch hinbekommen.
Wenn Dir gerade langweilig ist, magst Du mir vielleicht ein kleines Example schreiben? Würde mich freuen.
Und noch was: Wann wird OnGameModeExit aufgerufen? Nur beim GMX oder auch wenn ich die Konsole schließe? Ich danke dir vielmals.
//EDIT:
Warte mal, ich glaube ich habe meine Frage schon selbst beantwortet:
for(new i=1;i<=MAX_VEHICLES;i++)
{
DestroyVehicle(i);
}
Habe ich gerade gefunden. So werden alle Vehicles entfernt. Damit werde ich wohl weiterkommen
//EDIT2:
So, leider habe ich nun folgendes Problem: Wenn ich /test eingebe werden alle Fahrzeuge in der Datenbank geupdated. Schön und gut, jedoch haben dann alle Fahrzeuge die gleiche Position. Und zwar die Position vom letzten DB-Eintrag. Zum Glück bin ich Profi und hab mir vorher ein Backup von der Tabelle gemacht.
if(strcmp(cmdtext, "/test", true) == 0)
{
for(new i=1;i<=MAX_VEHICLES;i++){
new query[128], Float:vehx, Float:vehy, Float:vehz, Float:angle;
GetVehiclePos(i, vehx, vehy, vehz);
GetVehicleZAngle(i, angle);
format(query, 128, "UPDATE `vehicles` SET `posx` = '%f', `posy` = '%f', `posz` = '%f', `floatx` = '%f' WHERE `id` = '%i'", vehx, vehy, vehz, angle, i);
mysql_query(query);
}
return 1;
}
Jemand eine Idee?
Mensch Jeffry, das hat schon wieder funktioniert... Samma, wielange scriptest Du schon? Ist ja unglaublich was Du alles drauf hast.
Und ja, ich verzeihe Dir das Du Bundesliga geguckt hast.
Mensch Jeffry, das hat schon wieder funktioniert... Samma, wielange scriptest Du schon? Ist ja unglaublich was Du alles drauf hast.
Und ja, ich verzeihe Dir das Du Bundesliga geguckt hast.
Über 5 Jahre, allerdings war das doch eine Kleinigkeit.
Danke.
Kurze frage zu switch case und checkpoints.
wieso kann icht checkpoints im switch case nicht nutzen ? Müsste ich die cp variablen mit const deklarieren ?
public OnPlayerEnterDynamicCP(playerid, checkpointid)
{
switch(checkpointid)
{
case LVPDEntryECP: // error 008: must be a constant expression; assumed zero
{
if(!IsPlayerInAnyVehicle(playerid))
{
SetPlayerInterior(playerid,3);
SetPlayerPos(playerid,289.5062,170.0043,1007.1794);
SetPlayerFacingAngle(playerid,12.2594);
SetCameraBehindPlayer(playerid);
}
}
}
}
In switch und case können nur fest vorgegebene Werte geprüft werden.
Variable Werte, wie sie in normalen Variablen zu finden sind, können so nicht geprüft werden.
const wird dir auch nicht helfen, da du const nur zur Initialisierung einen Wert geben kannst.
also muss ich wohl alles mit if else if machen ok thx
Bin gerade am überlegen, welche Variante besser ist:
switch(listitem){
case 0: {
SendClientMessage(playerid,deine_farbe,"Du hast auf das 1. Listitem geklickt!");
}
case 1: {
SendClientMessage(playerid,deine_farbe,"Du hast auf das 2. Listitem geklickt!");
}
case 2: {
SendClientMessage(playerid,deine_farbe,"Du hast auf das 3. Listitem geklickt!");
}
}
if(listitem == 0){
SendClientMessage(playerid,deine_farbe,"Du hast auf das 1. Listitem geklickt!");
}
if(listitem == 1){
SendClientMessage(playerid,deine_farbe,"Du hast auf das 2. Listitem geklickt!");
}
if(listitem == 2){
SendClientMessage(playerid,deine_farbe,"Du hast auf das 3. Listitem geklickt!");
}
Habe die beiden Varianten aus einem Dialogtut her. Was meint ihr? Also ich würde zweiteres vorziehen da übersichtlicher. Oder gibt es hier sogar funktionelle Unterschiede?
Die "switch & case"-Variante läuft schneller als die If-Variante. Natürlich bemerkst du das bei den 3 Abfragen nicht.
Letztendlich ist das deine Entscheidung.
Abend,
Bekomme bei folgendem Code den Fehler: Error 050: invalid range
Habe das bereits gegoogelt; keine Lösung gefunden.
Hoffe, man kann das lesen. Handykamera ist innen dreckig, komm ich nicht zum saubermachen drann.
Der Fehler wird in dem zentrierten Codeblock ausgegeben.
- raven
# handy
dreh die range mal um
case 80 .. 100:
case 50 .. 79:
Warum kann nicht alles so eine simple Lösung haben?^^
Danke, funktioniert.
Hat jemand eventuell die richtigen Koordinaten für das Einkaufswagen object.
( SetPlayerAttachedObject )