Hast bei dem Teil vom else if in SetTimerEx hinten wieder eine 0 geschrieben, dabei müsste es eine 1 sein ![]()
[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
-
-
Hallo ich habe ein Problem,
Wen ich etwas auswähle werde ich sofort wieder gefreezt warum?
Code
Alles anzeigenFunction OnPlayerSelectedMenuRow(playerid, row) { new Menu:CurrentMenu = GetPlayerMenu(playerid); if(CurrentMenu == Stadthalle) { switch(row) { case 0: { ShowArbeitsamt(playerid); UnfreezePlayer(playerid); } case 1: { if(PlayerInfo[playerid][pPerso] == 0) { SendClientMessage(playerid, COLOR_LIGHTBLUE, "* Du hast einen Personalausweis ausgestellt bekommen, nutze /stats!"); PlayerInfo[playerid][pPerso] = 1; UnfreezePlayer(playerid); } else if(PlayerInfo[playerid][pPerso] == 1) { SendClientMessage(playerid, COLOR_LIGHTBLUE, "* Du hast bereits einen Personalausweis."); UnfreezePlayer(playerid); } } } } -
Wen ich etwas auswähle werde ich sofort wieder gefreezt warum?
Lass mich raten du wählst mit enter aus?

Diese alten Menüs muss man mit Leertaste bestätigen, nutze doch lieber schönere Dialoge: http://wiki.sa-mp.com/wiki/ShowPlayerDialog
-
Lass mich raten du wählst mit enter aus?
Diese alten Menüs muss man mit Leertaste bestätigen, nutze doch lieber schönere Dialoge: http://wiki.sa-mp.com/wiki/ShowPlayerDialogWerde auch mit Leertaste gefreezt.
Die Job Auswahl ist Mit ShowPlayerDialog

-
Werde auch mit Leertaste gefreezt.
Dann failt da etwas mit deinem Menü.
printe dir doch mal alles aus..menüid..row etc, dann siehst du ja, wieso er nicht das aufruft was du möchtest

-
Steht da noch mehr im Log?
Leider nicht, Nein. -
Leider nicht, Nein.
Heißt ja, dass keine Cache existiert. Also rufst du die Funktion auf, bevor irgendein Query durchgeführt wurde oder nach dem du die cache löscht bzw. gar nicht cached.
- Würde ich jetzt mal vermuten.
-
Alles anzeigen
Da gibt es viele Möglichkeiten, hier mal ein paar:
1. Möglichkeit:
Cif(PlayerInfo[playerid][pCarlic] == 1) SendClientMessage(playerid,-1,"Führerschein {00FF00}bestanden!"); else SendClientMessage(playerid,-1,"Führerschein {FF0000}noch nicht bestanden!");2. Möglichkeit:
SendClientMessage(playerid,-1,(PlayerInfo[playerid][pCarlic])?("Führerschein {00FF00}bestanden!"):("Führerschein {FF0000}noch nicht bestanden!"));3. Möglichkeit:
new tmp[][]={"{00FF00}bestanden!", "{FF0000}noch nicht bestanden!"};format(string,sizeof(string),"Führerschein %s",tmp[PlayerInfo[playerid][pCarlic]]);SendClientMessage(playerid,-1,string);

-> 1 Methode kannte ich, standart Code.
-> 2 Methode kenn ich auch, aber wollte mal fragen man diese "bezeichnen" kann ?:)
-> 3 Methode kenn ich nun, ist ganz interessant
-
-> 2 Methode kenn ich auch, aber wollte mal fragen man diese "bezeichnen" kann ?:)
Das ist der sogenannte ternary Operator.
Zu deutsch auch oft Fragezeichen Doppelpunkt Operator
-
Wie bekomme ich das hin das ich nur für die 2 LSPD Sultan/Cheetah fahrzeug nur den Befehl ucl nutzen kann? hab es so versucht:
ocmd:ucl(playerid, params[])
{
new vID = 560,415;
if(vID == 560))
{
new 1Attachment = CreateObject(19620,0.0,0.0,0.0,0.0,0.0,0.0); //Bessere Sultan sirene
AttachObjectToVehicle(1Attachment, GetPlayerVehicleID(playerid), 0.000000, 0.000000, 0.879999, 0.000000, 0.000000, 0.000000 ); //Bessere Sultan sirene
}
else(vID == 415))
{
new 2Attachment = CreateObject(19620,0.0,0.0,0.0,0.0,0.0,0.0); //Bessere Cheetah Sirene
AttachObjectToVehicle(2Attachment, GetPlayerVehicleID(playerid), 0.000000, 0.000000, 0.589999, 0.000000, 0.000000, 0.000000 ); //Bessere Cheetah Sirene
}
return 1;
}aber dabei kommt das hier raus:
C:\Users\Dusti\Desktop\SA-MP Server\gamemodes\Virtual-Reallife.pwn(3617) : error 001: expected token: "-identifier-", but found "-integer value-"
C:\Users\Dustin\Desktop\SA-MP Server\gamemodes\Virtual-Reallife.pwn(3618) : error 029: invalid expression, assumed zero
C:\Users\Dustin\Desktop\SA-MP Server\gamemodes\Virtual-Reallife.pwn(3620) : error 001: expected token: "-identifier-", but found "1"
C:\Users\Dustin\Desktop\SA-MP Server\gamemodes\Virtual-Reallife.pwn(3621) : error 029: invalid expression, assumed zero
C:\Users\Dustin\Desktop\SA-MP Server\gamemodes\Virtual-Reallife.pwn(3621) : error 017: undefined symbol "Attachment"
C:\Users\Dustin\Desktop\SA-MP Server\gamemodes\Virtual-Reallife.pwn(3621) : error 029: invalid expression, assumed zero
C:\Users\Dustin\Desktop\SA-MP Server\gamemodes\Virtual-Reallife.pwn(3621) : fatal error 107: too many error messages on one lineCompilation aborted.Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase
7 Errors.
-
Achte doch mal auf die Klammern auf den if-Abfragen xD
Und was machst du bei new...ich glaube du willst da eher sowas machen:
new vID = GetVehicleModel(GetPlayerVehicleID(playerid));
#Handy
-
Steht da noch mehr im Log?

Code von dem Dialog, also unter OnDialogResponse wird dir anscheinend immer wieder der Dialog aufgerufen..
Nein, dann wäre er weg

if(dialogid == DIALOG_HELP)
{
if(response == 0)
{
}
if(response == 1)
{
if(listitem == 0)
{
ShowPlayerDialog(playerid,DIALOG_HELP,DIALOG_STYLE_LIST,"Allgemeines","{1BD8FF}Allgemein: {FFFFFF}/regeln | /skin [ID] | /info \n{1BD8FF}Allgemein: {FFFFFF}/credits | /admins | /nameson/off | /speedo | /world \n{1BD8FF}Support: {FFFFFF}/ticket | /support | /report \n{1BD8FF}Animationen: {FFFFFF}/animlist | /stopanim \n{1BD8FF}Chat: {FFFFFF}/b | /m | /r | /me | /do | /s | /lr | /fl | /o \n","Danke","Zurück");
}
if(listitem == 1)
{
ShowPlayerDialog(playerid,DIALOG_HELP1,DIALOG_STYLE_MSGBOX,"Police Department","{1BD8FF}Als Police Officer: {FFFFFF}/taschenlampe | /tazer | /removeitems","Abbrechen","Zurück");
}
if(listitem == 2)
{
ShowPlayerDialog(playerid,DIALOG_HELP2,DIALOG_STYLE_MSGBOX,"Zivilist","{1BD8FF}Als Zivilist: {FFFFFF}InBearbeitung","Abbrechen","Zurück");
}
}
}
if(dialogid == DIALOG_HELP)
{
if(response == 0)
{
ShowPlayerDialog(playerid, DIALOG_HELP, DIALOG_STYLE_LIST, "Befehle", "Allgemeines\nPolice Department\nZivilist\n", "Danke", "Abbrechen");
}
if(response == 1)
{
}
}
if(dialogid == DIALOG_HELP2)
{
if(response == 0)
{
ShowPlayerDialog(playerid, DIALOG_HELP, DIALOG_STYLE_LIST, "Befehle", "Allgemeines\nPolice Department\nZivilist\n", "Danke", "Abbrechen");
}
if(response == 1)
{
}
}
if(dialogid == DIALOG_HELP3)
{
if(response == 0)
{
ShowPlayerDialog(playerid, DIALOG_HELP, DIALOG_STYLE_LIST, "Befehle", "Allgemeines\nPolice Department\nZivilist\n", "Danke", "Abbrechen");
}
if(response == 1)
{
}
} -
Hey unswa habe ich das problem mit Ipleomax sein Textdraw editor dass ich ein Auto mache aber im Script ist es der CJ ?
-
Hey unswa habe ich das problem mit Ipleomax sein Textdraw editor dass ich ein Auto mache aber im Script ist es der CJ ?
Ohne Code keine Hilfe

-
Aber der ist einfach nur standart iwie ?
Ich habe es mit dem Infernus und wenn ich es Exportiere geht es nicht dann kommt der Code wo ich alles einstellen müssteCodeTextdraw10[playerid] = CreatePlayerTextDraw(playerid, 625.008056, 274.166534, "LD_SPAC:white"); PlayerTextDrawLetterSize(playerid, Textdraw10[playerid], 0.094641, 13.391645); PlayerTextDrawTextSize(playerid, Textdraw10[playerid], -60.907722, 88.666679); PlayerTextDrawAlignment(playerid, Textdraw10[playerid], 1); PlayerTextDrawColor(playerid, Textdraw10[playerid], -1); PlayerTextDrawUseBox(playerid, Textdraw10[playerid], true); PlayerTextDrawBoxColor(playerid, Textdraw10[playerid], 255); PlayerTextDrawSetShadow(playerid, Textdraw10[playerid], 0); PlayerTextDrawSetOutline(playerid, Textdraw10[playerid], 0); PlayerTextDrawFont(playerid, Textdraw10[playerid], 5); -
Wo hast du den ?
[wiki]PlayerTextDrawSetPreviewModel[/wiki] da wird dann jedes Objekt als Bild anngezeigt.
-
Alles anzeigen
if(dialogid == DIALOG_HELP)
{
if(response == 0)
{
ShowPlayerDialog(playerid, DIALOG_HELP, DIALOG_STYLE_LIST, "Befehle", "Allgemeines\nPolice Department\nZivilist\n", "Danke", "Abbrechen");
}
if(response == 1)
{
}
}
if(dialogid == DIALOG_HELP2)
{
if(response == 0)
{
ShowPlayerDialog(playerid, DIALOG_HELP, DIALOG_STYLE_LIST, "Befehle", "Allgemeines\nPolice Department\nZivilist\n", "Danke", "Abbrechen");
}
if(response == 1)
{
}
}
if(dialogid == DIALOG_HELP3)
{
if(response == 0)
{
ShowPlayerDialog(playerid, DIALOG_HELP, DIALOG_STYLE_LIST, "Befehle", "Allgemeines\nPolice Department\nZivilist\n", "Danke", "Abbrechen");
}
if(response == 1)
{
}
}
if(dialogid == DIALOG_HELP)
{
if(response == 0)
{
}
if(response == 1)
{
if(listitem == 0)
{
ShowPlayerDialog(playerid,DIALOG_HELP,DIALOG_STYLE_LIST,"Allgemeines","{1BD8FF}Allgemein: {FFFFFF}/regeln | /skin [ID] | /info \n{1BD8FF}Allgemein: {FFFFFF}/credits | /admins | /nameson/off | /speedo | /world \n{1BD8FF}Support: {FFFFFF}/ticket | /support | /report \n{1BD8FF}Animationen: {FFFFFF}/animlist | /stopanim \n{1BD8FF}Chat: {FFFFFF}/b | /m | /r | /me | /do | /s | /lr | /fl | /o \n","Danke","Zurück");
}
if(listitem == 1)
{
ShowPlayerDialog(playerid,DIALOG_HELP1,DIALOG_STYLE_MSGBOX,"Police Department","{1BD8FF}Als Police Officer: {FFFFFF}/taschenlampe | /tazer | /removeitems","Abbrechen","Zurück");
}
if(listitem == 2)
{
ShowPlayerDialog(playerid,DIALOG_HELP2,DIALOG_STYLE_MSGBOX,"Zivilist","{1BD8FF}Als Zivilist: {FFFFFF}InBearbeitung","Abbrechen","Zurück");
}
}
} -
Wo hast du den ?
[wiki]PlayerTextDrawSetPreviewModel[/wiki] da wird dann jedes Objekt als Bild anngezeigt.
Das Problem ist ja dass ich es in dem Editor so mit dem Infernus erstelle und er dann aber das nicht richtig exportiert sondern mit CJ Skin
-
Das Problem ist ja dass ich es in dem Editor so mit dem Infernus erstelle und er dann aber das nicht richtig exportiert sondern mit CJ Skin
Wir haben es begriffen, nachdem du es 3x geschrieben hast, da gibt es wohl einen Fehler im Filterscript, dass kann ja gut sein.
Aber du kannst doch einfach die Funktion die schon gepostet wurde einfügen und da die id 411 für den Infernus verwenden und fertig.
-
