Hi Leute
ich hab mal wieder eine Frage
wie Scripte ich Fraktionsränge
hab in der Suchfunktion schon geschaut aber nichts gescheites gefunden
[SAMMELTHREAD] Kleine Scripting Fragen
- Rafelder
- Unerledigt
Dein Problem konnte durch einen User gelöst werden? Bedank dich bei ihm indem du seinen Beitrag als Hilfreich markierst sowie einen Daumen oben dalässt
Wichtiger Hinweis: Bitte ändert nicht manuell die Schriftfarbe auf schwarz sondern belasst es bei der Standardeinstellung. Somit tragt ihr dazu bei dass euer Text auch bei Verwendung unseren dunklen Forenstils noch lesbar ist!
Tipp: Ihr wollt längere Codeausschnitte oder Logfiles bereitstellen? Benutzt unseren eigenen PasteBin-Dienst Link
-
-
switch (Case)
Ränge im Case benennen von 1-6 (oder wie auch immer)
Und denn kannst du damit Abfragen ob der Rang == 1, == 2 etc. ist
MFG
Hab auch noch ne Frage:
ShowPlayerDialog(EinladungID,-1,DIALOG_STYLE_MSGBOX," ", " ", " ", " ");
Wird der Dialog dadurch geschlossen? -
Alles anzeigen
new Handbremse[vehicleid];
Nun machst du einen Befehl wo du dann die Variable (Handbremse[vehicleid]) auf 1 stellst.
Dann lässt du die Position von dem Fahrzeug zwischen speichern mit GetPlayerPos(playerid,..) dann lässt du diese in einer Variable zwischen speichern.
So, dann machst du in einem Timer eine Abfrage ob die Variable (Handbremse[vehicleid]) gleich eins ist, wenn Ja dann machst du ne Abfrage (IsVehicleInRangeOfPoint).
Und wenn die Position nicht die Position hat, die du zwischen gespeichert hast, dann lässt du das Fahrzeug wieder dort hin porten
stock IsVehicleInRangeOfPoint(vehicleid,Float:radi,Float:x,Float:y,Float:z)
{
if(IsValidVehicle(vehicleid))
{
new Float:oldposx,Float:oldposy,Float:oldposz,Float:tempposx,Float:tempposy,Float:tempposz;
GetVehiclePos(vehicleid,oldposx,oldposy,oldposz);
tempposx = (oldposx -x);
tempposy = (oldposy -y);
tempposz = (oldposz -z);
if(((tempposx < radi) && (tempposx > -radi)) && ((tempposy < radi) && (tempposy > -radi)) && ((tempposz < radi) && (tempposz > -radi)))
{
return 1;
}
return 0;
}
return 1;
}/edit Damit du die Funktion 'IsValidVehicle(vehicleid)' verwenden kannst musst du das oben im Script deklarieren: native IsValidVehicle(vehicleid);
Benutz statt einen Timer lieber: http://wiki.sa-mp.com/wiki/OnUnoccupiedVehicleUpdate -
public countdown()
{
new String2[256];
second++;
format(String2, sizeof(String2), "Zeit: %d:%d",Mini,second);
TextDrawSetString(Textdraw7, String2);
[b] if (second <= 9)
{
format(String2, sizeof(String2), "Zeit: %d:0%d",Mini,second);
TextDrawSetString(Textdraw7, String2);
}[/b]
if (second == 59)
{
second = 0;
Mini += 1;
}
if(Mini <= 9)
{
format(String2, sizeof(String2), "Zeit: 0%d:%d",Mini,second);
TextDrawSetString(Textdraw7, String2);
}
return 1;
}Warum wird bei der markiertenzeile vor den Sekunden keine 0 angesetzt?

-
Alles anzeigen
public countdown()
{
new String2[256];
second++;
format(String2, sizeof(String2), "Zeit: %d:%d",Mini,second);
TextDrawSetString(Textdraw7, String2);
[b] if (second <= 9)
{
format(String2, sizeof(String2), "Zeit: %d:0%d",Mini,second);
TextDrawSetString(Textdraw7, String2);
}[/b]
if (second == 59)
{
second = 0;
Mini += 1;
}
if(Mini <= 9)
{
format(String2, sizeof(String2), "Zeit: 0%d:%d",Mini,second);
TextDrawSetString(Textdraw7, String2);
}
return 1;
}Warum wird bei der markiertenzeile vor den Sekunden keine 0 angesetzt?

wo ist sie denn Markiert? -
@alaSka:
Teste mal das
public countdown()
{
new string[50];
second ++;
if(second > 59)
{
Mini ++;
second = 0;
}
format(string, sizeof(string), "Zeit: %02d:%02d",Mini,second);
TextDrawSetString(Textdraw7, string);
TextDrawShowForAll(Textdraw7);
return 1;
} -
Dank dir.
In welcher Bedeutung steht nun %02d wenn ich fragen darf? -
wenn die Zahl 1 ist wird sie als 01 dargestellt
ist sie dann 10 wird sie als 10 dargestelltDas bewirkt, das bei einer einzelnen Zahl (1-9) eine 0 vorsteht
-
C:\Users\iTz_Flo\Desktop\Test\Test\pawno\include\streamer.inc(297) : warning 202: number of arguments does not match definition
C:\Users\iTz_Flo\Desktop\Test\Test\pawno\include\streamer.inc(304) : error 025: function heading differs from prototype
Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase1 Error.
297: SetObjectMaterial(wand, 0, 11471, "des_wtownmain", "des_shingles", 0);
304: CreateObject(1502, -87.11, -1560.02, 2.32, 0.00, 0.00, 44.46);
kann mir jemand helfen?
-
Alles anzeigen
public countdown()
{
new String2[256];
second++;
format(String2, sizeof(String2), "Zeit: %d:%d",Mini,second);
TextDrawSetString(Textdraw7, String2);
[b] if (second <= 9)
{
format(String2, sizeof(String2), "Zeit: %d:0%d",Mini,second);
TextDrawSetString(Textdraw7, String2);
}[/b]
if (second == 59)
{
second = 0;
Mini += 1;
}
if(Mini <= 9)
{
format(String2, sizeof(String2), "Zeit: 0%d:%d",Mini,second);
TextDrawSetString(Textdraw7, String2);
}
return 1;
}Warum wird bei der markiertenzeile vor den Sekunden keine 0 angesetzt?

Wenn dich der Fehler noch interessiert:
Die Sekunde ist kleiner gleich 9, eine Null wird vor die Sekunde gesetzt.
Wenn jetzt die Minute (mini) aber auch kleiner gleich 9 ist wird der String überschrieben und nur vor die Minute eine Null geschrieben. -
Wenn dich der Fehler noch interessiert:
Die Sekunde ist kleiner gleich 9, eine Null wird vor die Sekunde gesetzt.
Wenn jetzt die Minute (mini) aber auch kleiner gleich 9 ist wird der String überschrieben und nur vor die Minute eine Null geschrieben.Stimmt, danke. Muss lernen auf solche Sachen zu achten.. Unnötig hier zu posten im Ernst. Logische Schlussfolgerungen = -1
-
Wie kann ich durch einen Query mehrere Sachen auslesen?
Zum Beispiel alles Felder mit dem Inhalt "shoxinat0r" und dann dementsprechend mehrere Werte auslesen?
bzw. wie gebe ich das wieder? Der Query ist mir bekannt. -
shoxinat0r
Ich mach das so um es als Muster zu werten
format(query, 128,"SELECT * FROM `DTKeys` WHERE `Kennzeichen` = '%s'", VehicleData[vid][Kennzeichen]);
mysql_query(query, (-1), (0), SQL);
mysql_store_result(SQL);
new rows = mysql_num_rows(SQL);
for(new i; i < rows; i++)
{
mysql_fetch_row(Inhalt,"|",SQL);
mysql_fetch_field("userid",Titel,SQL);
format(query, 128, "• %s", GetUserName(strval(Titel)));
SendClientMessage(playerid, cGreen, query);
}
mysql_free_result(SQL);
In den Fall werden mir alle namen angezeigt die das Kennzeichen XYZ haben -
-
Ich probiers hier noch mal ..
Sers Leute ich habe einen Timer der durch einen ein Sekunden timer aufgerufen wird.SetTimer("countdown",1000,false);
public countdown()
{
new string[64];
new timeMss = ( GetTickCount() - racestart );
new minuten2 = (timeMss/60000);
timeMss -= (minuten2 * 60000);
new sekunden2 = (timeMss/1000);
format(string, sizeof(string), "Zeit: %02d:%02d",minuten2,sekunden2);
TextDrawSetString(Textdraw7, string);
TextDrawShowForAll(Textdraw7);
return 1;
}Jetzt überspringt er sehr oft eine Sekunde und läuft so nicht mehr flüssig jede Sekunde. Was soll ich tun? Wenn ich den 1 Sek Timer raus nehme, kann ich ja nicht mehr aktuallisieren außer vielleicht jede Sekunde Textdraw neu aufzumachen!?
-
Magst du mir diesen Teil noch einmal erläutern?

Jomysql_fetch_row(Inhalt,"|",SQL);
Holt alles was gefunden wird, da SELECT *
mysql_fetch_field("userid",Titel,SQL);
Ich hole mir den Wert userid und setze den in den wert Titel (SQL ist bei mir die Connection)
format(query, 128, "• %s", GetUserName(strval(Titel)));
Sende den Namen, Da ich mit userid arbeite, habe ich eine Extra funktion für den Namen
SendClientMessage(playerid, cGreen, query);
Sollte klar sein//e
Was mir gerade noch einfaällt, ist wenn du das BlueG plugin nutzen solltest (was ich ja nicht hoffe :D)
Musst du die Funktion
mysql_fetch_row
in die machen:
mysql_fetch_row_format
Fofern er sagt das die Funktion nicht exestiert
-
-
new schild2;
schild2 = CreateObject(3335, 1329.5, -1162.6999511719, 22.799999237061, 0.00, 0.00, 0.00);
SetObjectMaterial(schild2,0,4006,"Willkommen auf RDM","Arial",0);wo ist der fehler?
-
Alles anzeigen
new schild2;
schild2 = CreateObject(3335, 1329.5, -1162.6999511719, 22.799999237061, 0.00, 0.00, 0.00);
SetObjectMaterial(schild2,0,4006,"Willkommen auf RDM","Arial",0);wo ist der fehler?
http://wiki.sa-mp.com/wiki/SetObjectMaterialText_DEIch glaub das wolltest du benutzen?
MFG

-
Ich will keinen Link ich will wissen was falsch ist .
