Was für Errors, muss man euch alles aus der Nase ziehen?
[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
-
-
C:\Games\GTA San Andreas\Selfmade\pawno\selfmade.pwn(390) : error 029: invalid expression, assumed zero
C:\Games\GTA San Andreas\Selfmade\pawno\selfmade.pwn(390) : error 029: invalid expression, assumed zero
C:\Games\GTA San Andreas\Selfmade\pawno\selfmade.pwn(390) : error 029: invalid expression, assumed zero
C:\Games\GTA San Andreas\Selfmade\pawno\selfmade.pwn(390) : fatal error 107: too many error messages on one lineCompilation aborted.Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase
4 Errors.
-
Die entsprechende Zeile dazu bitte auch noch.
-
if(!IsPlayerInVehicle(playerid,5) || if(!IsPlayerInVehicle(playerid,6) || if(!IsPlayerInVehicle(playerid,7) || if(!IsPlayerInVehicle(playerid,8) || if(!IsPlayerInVehicle(playerid,9) || if(!IsPlayerInVehicle(playerid,10)) return SendClientMessage(playerid,Rot,"Du bist in keinem Truck!");
-
Ok im /v Befehl hab ich es geschaft aber wie mach ich das , das er gleich sofort wieder Nitro machen kann und nicht warten muss und das damit alle autos nitro haben verstehe ich immer noch nicht ganz ?!
Suche das immer noch
Suche das immer noch -
Jeweils überall das "if" weglassen.
Ausser beim ersten IsPlayerInVehicle.lg
-
C:\Games\GTA San Andreas\Selfmade\pawno\selfmade.pwn(390) : error 001: expected token: ")", but found "return"
C:\Games\GTA San Andreas\Selfmade\pawno\selfmade.pwn(390) : error 033: array must be indexed (variable "-unknown-")
C:\Games\GTA San Andreas\Selfmade\pawno\selfmade.pwn(390) : error 036: empty statement
C:\Games\GTA San Andreas\Selfmade\pawno\selfmade.pwn(390) : fatal error 107: too many error messages on one lineCompilation aborted.Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase
4 Errors.
if(!IsPlayerInVehicle(playerid,5) || (!IsPlayerInVehicle(playerid,6) || (!IsPlayerInVehicle(playerid,7) || (!IsPlayerInVehicle(playerid,8) || (!IsPlayerInVehicle(playerid,9) || (!IsPlayerInVehicle(playerid,10)) return SendClientMessage(playerid,Rot,"Du bist in keinem Truck!");
-
Tagchen,
habe gerade mal mein /ahelp geupdatet, so das Admins mit der Stufe 1 nur ihre Befehle sehen, Admins 2 eine Erweiterung sehen, Admins 3 ... usw.Das Ganze funktioniert, aber nur zur Hälfte.
Bin ich bspw. Admin 5, zeigt es mir von jedem Adminlevel die Befehle an, warum?Spoiler anzeigen if(strcmp(cmdtext, "/ahelp", true) == 0)
{
for(new i = 0; i < MAX_PLAYERS; i++)
{
if(IstSpielerEinAdmin(i, 1))
{
SendClientMessage(playerid,ROT,"----------------------------------------------------------------------------------------------------------------");
SendClientMessage(playerid,ROT,"• Alle gängigen Adminbefehle sind hier aufgelistet!");
SendClientMessage(playerid,Rot,"STUFE 1: /kick /spawn");
SendClientMessage(playerid,ROT,"Goto: /goto /gotop");
SendClientMessage(playerid,ROT,"----------------------------------------------------------------------------------------------------------------");
}
if(IstSpielerEinAdmin(i,2))
{
SendClientMessage(playerid,ROT,"----------------------------------------------------------------------------------------------------------------");
SendClientMessage(playerid,ROT,"• Alle gängigen Adminbefehle sind hier aufgelistet!");
SendClientMessage(playerid,Rot,"STUFE 1: /kick /spawn");
SendClientMessage(playerid,ROT,"Goto: /goto");
SendClientMessage(playerid,ROT,"STUFE 2: /o (/ooc)");
SendClientMessage(playerid,ROT,"----------------------------------------------------------------------------------------------------------------");
}
if(IstSpielerEinAdmin(i,3))
{
SendClientMessage(playerid,ROT,"----------------------------------------------------------------------------------------------------------------");
SendClientMessage(playerid,ROT,"• Alle gängigen Adminbefehle sind hier aufgelistet!");
SendClientMessage(playerid,Rot,"STUFE 1: /kick /spawn");
SendClientMessage(playerid,ROT,"Goto: /goto");
SendClientMessage(playerid,ROT,"STUFE 2: /o (/ooc)");
SendClientMessage(playerid,ROT,"STUFE 3: /gotop");
SendClientMessage(playerid,ROT,"----------------------------------------------------------------------------------------------------------------");
}
if(IstSpielerEinAdmin(i,4))
{
SendClientMessage(playerid,ROT,"----------------------------------------------------------------------------------------------------------------");
SendClientMessage(playerid,ROT,"• Alle gängigen Adminbefehle sind hier aufgelistet!");
SendClientMessage(playerid,Rot,"STUFE 1: /kick /spawn");
SendClientMessage(playerid,ROT,"Goto: /goto");
SendClientMessage(playerid,ROT,"STUFE 2: /o (/ooc)");
SendClientMessage(playerid,ROT,"STUFE 3: /gotop");
SendClientMessage(playerid,ROT,"STUFE 4: /ban /makeleader /setskin");
SendClientMessage(playerid,ROT,"----------------------------------------------------------------------------------------------------------------");
}
if(IstSpielerEinAdmin(i,5))
{
SendClientMessage(playerid,ROT,"----------------------------------------------------------------------------------------------------------------");
SendClientMessage(playerid,ROT,"• Alle gängigen Adminbefehle sind hier aufgelistet!");
SendClientMessage(playerid,Rot,"STUFE 1: /kick /spawn");
SendClientMessage(playerid,ROT,"Goto: /goto");
SendClientMessage(playerid,ROT,"STUFE 2: /o (/ooc)");
SendClientMessage(playerid,ROT,"STUFE 3: /gotop");
SendClientMessage(playerid,ROT,"STUFE 4: /ban /makeleader /setskin");
SendClientMessage(playerid,ROT,"STUFE 5: /gmx");
SendClientMessage(playerid,ROT,"----------------------------------------------------------------------------------------------------------------");
}
}
return 1;
} -
wozu ne i schleife?
playerid reicht -
Hatte ich vorher auch, ging genauso wenig.
Spoiler anzeigen if(strcmp(cmdtext, "/ahelp", true) == 0)
{
if(IstSpielerEinAdmin(playerid, 1))
{
SendClientMessage(playerid,ROT,"----------------------------------------------------------------------------------------------------------------");
SendClientMessage(playerid,ROT,"• Alle gängigen Adminbefehle sind hier aufgelistet!");
SendClientMessage(playerid,Rot,"STUFE 1: /kick /spawn");
SendClientMessage(playerid,ROT,"Goto: /goto /gotop");
SendClientMessage(playerid,ROT,"----------------------------------------------------------------------------------------------------------------");
}
if(IstSpielerEinAdmin(playerid,2))
{
SendClientMessage(playerid,ROT,"----------------------------------------------------------------------------------------------------------------");
SendClientMessage(playerid,ROT,"• Alle gängigen Adminbefehle sind hier aufgelistet!");
SendClientMessage(playerid,Rot,"STUFE 1: /kick /spawn");
SendClientMessage(playerid,ROT,"Goto: /goto");
SendClientMessage(playerid,ROT,"STUFE 2: /o (/ooc)");
SendClientMessage(playerid,ROT,"----------------------------------------------------------------------------------------------------------------");
}
if(IstSpielerEinAdmin(playerid,3))
{
SendClientMessage(playerid,ROT,"----------------------------------------------------------------------------------------------------------------");
SendClientMessage(playerid,ROT,"• Alle gängigen Adminbefehle sind hier aufgelistet!");
SendClientMessage(playerid,Rot,"STUFE 1: /kick /spawn");
SendClientMessage(playerid,ROT,"Goto: /goto");
SendClientMessage(playerid,ROT,"STUFE 2: /o (/ooc)");
SendClientMessage(playerid,ROT,"STUFE 3: /gotop /gethere");
SendClientMessage(playerid,ROT,"----------------------------------------------------------------------------------------------------------------");
}
if(IstSpielerEinAdmin(playerid,4))
{
SendClientMessage(playerid,ROT,"----------------------------------------------------------------------------------------------------------------");
SendClientMessage(playerid,ROT,"• Alle gängigen Adminbefehle sind hier aufgelistet!");
SendClientMessage(playerid,Rot,"STUFE 1: /kick /spawn");
SendClientMessage(playerid,ROT,"Goto: /goto");
SendClientMessage(playerid,ROT,"STUFE 2: /o (/ooc)");
SendClientMessage(playerid,ROT,"STUFE 3: /gotop");
SendClientMessage(playerid,ROT,"STUFE 4: /ban /makeleader /setskin");
SendClientMessage(playerid,ROT,"----------------------------------------------------------------------------------------------------------------");
}
if(IstSpielerEinAdmin(playerid,5))
{
SendClientMessage(playerid,ROT,"----------------------------------------------------------------------------------------------------------------");
SendClientMessage(playerid,ROT,"• Alle gängigen Adminbefehle sind hier aufgelistet!");
SendClientMessage(playerid,Rot,"STUFE 1: /kick /spawn");
SendClientMessage(playerid,ROT,"Goto: /goto");
SendClientMessage(playerid,ROT,"STUFE 2: /o (/ooc)");
SendClientMessage(playerid,ROT,"STUFE 3: /gotop");
SendClientMessage(playerid,ROT,"STUFE 4: /ban /makeleader /setskin");
SendClientMessage(playerid,ROT,"STUFE 5: /gmx");
SendClientMessage(playerid,ROT,"----------------------------------------------------------------------------------------------------------------");
}
return 1;
} -
Hab noch 2 kleine Problemchen.
1:
Wenn ich im Deathmatch bin und ein Gegner wirft einen Molotowcocktail auf mich dann brenne ich bei ihm aber ich selber sehe die Flammen nicht
und bekomme auch kein Leben abgezogen. Das ist irgendwie unsync. Wie kann man das beheben?2:
Bei SetPlayerPosFindZ werde ich immer unter die Erde gesetzt. Also FindZ klappt nicht.
Hatte das schon so:SetPlayerPosFindZ(playerid, fX, fY, fZ+2);
oder so:
SetPlayerPosFindZ(playerid, fX, fY, fZ);
new Float:x, Float:y, Float:z;
GetPlayerPos(playerid,x,y,z);
SetPlayerPos(playerid,x,y,z+1);Hat einer eine Lösung?
-
Moin
Bin derzeit dabei pawn zu lernen und hab diesbezüglich ein kleines Anliegen: Ich möchte das ich mich mit dem Befehl /heal im LSPD in einem Bestimmten Punkt bzw in einem bestimmten Raum auf 100 HP healen lassen kann. Wenn ich nicht in dem Raum im LSPD bin soll eine Meldung kommen das ich mich nicht im Gunshop befinde. Ansonsten soll eine Meldung kommen die besagt, das ich mich ausgerüstet habe.
Wenn ich jetzt aber /heal eingebe, kommen zwar die richtigen Meldungen, ich werde aber gehealt wenn ich mich nicht in dem Raum im LSPD befinde. Und wenn ich mich in dem Raum befinde werde ich nicht gehealt.
So, hier der Code:
if (strcmp("/heal", cmdtext, true, 10) ==0)
{
{
if(IsPlayerInRangeOfPoint(playerid,10,256.2878,75.3668,1003.6406)) SendClientMessage(playerid,ROT,"Du hast dich ausgerüstet");
SetPlayerHealth(playerid,100);
return 1;
}if(!IsPlayerInRangeOfPoint(playerid,10,256.2878,75.3668,1003.6406)) SendClientMessage(playerid,ROT,"Du bist nicht im Gunshop");
return 1;
}mfg
-
if (strcmp("/heal", cmdtext, true, 10) ==0)
{
if(IsPlayerInRangeOfPoint(playerid,10,256.2878,75.3668,1003.6406))
{
SendClientMessage(playerid,ROT,"Du hast dich ausgerüstet");
SetPlayerHealth(playerid,100);
}
else
{
SendClientMessage(playerid,ROT,"Du bist nicht im Gunshop");
}
return 1;
} -
Morgen, bin gerade mal dabei einen kleinen Text über meine sogenannten Nutzfahrzeuge zu machen,
klappt wunderschön, jedoch nur bei Fahrzeug 1.vehicle_id = nutzfahrzeug[1<23];
nutzfahrzeugtext[vehicle_id] = Create3DTextLabel( "Nutzfahrzeug", ROT, 0.0, 0.0, 0.0, 20.0, 0, 1 );
Attach3DTextLabelToVehicle(nutzfahrzeugtext[vehicle_id] , vehicle_id, 0.0, 0.0, 2.0);
new nutzfahrzeug[24];
new Text3D:nutzfahrzeugtext[MAX_VEHICLES],vehicle_id;Mein Problem ist mehr oder weniger, eigentlich mehr diese Zeile, denn ich weiß nicht was ich in die [ ] schreiben soll.
vehicle_id = nutzfahrzeug[1<23];//e: Anzahl der Nutzfahrzeuge hinzugefügt, falls diese benötigt wird.
-
if (strcmp("/heal", cmdtext, true, 10) ==0)
{
if(IsPlayerInRangeOfPoint(playerid,10,256.2878,75.3668,1003.6406))
{
SendClientMessage(playerid,ROT,"Du hast dich ausgerüstet");
SetPlayerHealth(playerid,100);
}
else
{
SendClientMessage(playerid,ROT,"Du bist nicht im Gunshop");
}
return 1;
}Danke, geht nun
Möchte nun zusätzlich den Befehl "/dienst" mit einbringen, wenn derjenige den Befehl in einer bestimmten Range eingibt, soll die Namensfarbe in Pink geändert werden und eine Meldung an alle Spieler erfolgen, das Person x nun im Dienst ist. Das mit der Namensfarbe funktioniert auch, nur sobald ich den Befehl eingebe kommt in der Meldung nur "Beamter ist im Dienst", wo eigentlich der Name dazwischen sollte.
if (strcmp("/dienst", cmdtext, true, 10) ==0)
{
if(IsPlayerInRangeOfPoint(playerid,10,256.2878,75.3668,1003.6406))
{
new name2,string[128];
name2 = GetPlayerName(playerid,string,sizeof(string));
format(string, sizeof(string), "Beamter %s ist nun im Dienst", name2);
SendClientMessageToAll(ROT,string);
SetPlayerColor(playerid,PINK);
}
else
{
SendClientMessage(playerid,PINK,"Du bist nicht im Umkleideraum");
}
return 1;}
Und wie bringe ich das mit ein wenn die Farbe wieder auf die vorherige Farbe zurückgesetzt wird wenn er den selben Befehl nochmal eingibt?
mfg
-
Ich mal wieder...
Joa also ich möchte gern meinen Skin in meiner Spielerdatei speichern ... alles gut und schön, funktioniert aber nicht.
Laden des Skins:
SetPlayerSkin(playerid,dini_Int(Spielerdatei,"Skin"));
Speichern des Skins:
GetPlayerSkin(playerid),dini_IntSet(Spielerdatei,"Skin",GetPVarInt(playerid,"Skin"));Ich weiß das irgendwas fehlt, aber ich weiß nicht was...
[SAMMELTHREAD] Kleine Scripting Fragen ((Nicht vergessen, Problem besteht weiterhin))
-
Mr.DubStep: SpielerSpeichern:
new SkinID;
SkinID = GetPlayerSkin(playerid); //über GetPlayerName
dini_IntSet(Playerdatei, "Skin", SkinID);Versuchs mal so
-
Hm okay, speichern tut es den nun, jedoch laden nicht. :s
SetPlayerSkin(playerid,dini_Int(Spielerdatei,"Skin")); -
Wo soll der geladene Skin denn zur Verfügung stehen? Bei der ClassSelection oder soll der Skin gesetzt werden wenn er spawnt?
-
Der Skin den der User als letztes hatte, der soll gespeichert werden. Nach einem Login soll er wieder mit dem Skin spawnen...