Nein = ist eine Zuweisung und == ist eine Abfrage, hier wird der Spieler
bei den Skins in das Team... zugewiesen .
[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
-
-
achso und wie kann ich dann die skins bestimmten Fraktionen zuweisen?
-
if(...)
{
//Was passieren soll wen übereinstimmt
}
else
{
//Was wenn nicht
} -
Noch ein Problem:
public OnPlayerCommandText(playerid, cmdtext[])
{
if (strcmp("/Taxiauf", cmdtext, true, 10) == 0)
{MoveObject(TaxiTor,-2017.8112792969,47.752044677734,33.187118530273);
}return 0;
}Soll eigendlich das Tor bewegen
Fehler:
error 001: expected token: ",", but found ";"
error 029: invalid expression, assumed zero
error 029: invalid expression, assumed zeroachja und das:
#define TaxiTor CreateObject(980, -2016.7271728516, 59.319431304932, 31.773805618286, 0, 353, 268.69067382813);halt die Definition fürs tor..
-
public OnPlayerCommandText(playerid, cmdtext[])
{
if (strcmp("/Taxiauf", cmdtext, true, 10) == 0)
{MoveObject(TaxiTor,-2017.8112792969,47.752044677734,33.187118530273),
}return 0;
}probier mal so...
aber iwas mit deinem koordinaten stimmt nicht glaub ich^^
-
immer noch der selbe Fehler , was komisch is weil ja gar kein ; mehr da is Oo
-
Hast die Geschwindigkeit vergessen
MoveObject(TaxiTor,-2017.8112792969,47.752044677734,33.187118530273,2.0);
und der sagt er findet ein ; anstatt eines , weil er die geschwindigkeit sucht, aber nur das ; findet.
Also brauchst du, wenn du Geschwindigkeit drin hast am ende ein ;
-
immer noch das selbe -.-
-
Wieso bekomm ich hier Warnings:
TextDrawSetString(PlayerInfoLine[playerid],"Forum: %s",ForumAdresse);
new ForumAdresse[25] = "www.Legendary-Forum.tk";ZitatC:\Dokumente und Einstellungen\Anwender\Desktop\gf_alex2.pwn(8214) : warning 202: number of arguments does not match definition
Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhaseHeader size: 17004 bytes
Code size: 3269364 bytes
Data size: 27130224 bytes
Stack/heap size: 16384 bytes; estimated max. usage=5497 cells (21988 bytes)
Total requirements:30432976 bytes1 Warning.
Bei Forum: %s sollte dann das wo bei ForumAdresse angegeben ist erscheinen :o
-
Wieso bekomm ich hier Warnings:
TextDrawSetString(PlayerInfoLine[playerid],"Forum: %s",ForumAdresse);
new ForumAdresse[25] = "www.Legendary-Forum.tk";Bei Forum: %s sollte dann das wo bei ForumAdresse angegeben ist erscheinen :o
Weil du den String erst formatieren musst. Erst dann kannst du ihn dem TextDraw zuweisen
format(string, sizeof(string), "Forum: www.Legendary-Forum.tk");
TextDrawSetString(PlayerInfoLine[playerid],string); -
-
Wie macht man nochmal nen Kleiderladen mit der tollen auswahl wo man auf die Pfeile drücken kann?
-
Folgendes Problem...ich man mich in der .ini zum admin doch sobald ich den server bertret ist mein adminlevel weg
public OnPlayerConnect(playerid)
{
new playername[16],string[32];
GetPlayerName(playerid,playername,sizeof(playername));
format(string,sizeof(string),"/Spieler/%s.ini",playername); // %s steht für einen String. In unserem Fall playername also dem NAmen vom SPieler also würde der STring bei mir heiße Tirus.ini
if(dini_Exists(string)) // Fragt ab ob die Datei string existiert string ist in unserem FAll : "[namevomspieler].ini"
{
new paydayzeit = dini_Int(string, "zeitseitpayday"); // Lädt in der Datei des Spielers das was unter zeitseitpayday gespeichert ist und speichert es in der Variable paydayzeit.
new spielzeitinsgesamt = dini_Int(string, "spielzeit"); // Lädt in der Datei des Spielers das was unter spielzeit gespeichert ist und speichert es in der Variable spielzeitinsgesamt.pSincePayday[playerid] = paydayzeit; // ändert die pSincePAyday variable um zu dem was wir gespeichert haben (bzw. erst noch kommt im Tut)
pPlaytime[playerid] = spielzeitinsgesamt; // Das gleiche wie darüber nur mit anderen Variablen}
else // die Datei existiert nicht
{
dini_Create(string);// Erstellt die Datei mit dem Namen "[namevomspieler].ini"
}
pimerday[playerid] = SetTimerEx("pimer",60000,1,"i",playerid);
//Hier fangen wir mit dem Login / Register [GUI] an, von BlackFox_UD
//Hierfür benötigen wir Dini das wird oben definiert.
new pname[MAX_PLAYERS],accFormat[80]; //Hier werden die einzelnen Variablen erstellt!
GetPlayerName(playerid,pname,sizeof pname); //Hier wird der Variable pname der Spielername zugewiesen.
format(logintext,128,"Herzlich Willkommen : [%s]\n\nBitte Logge dich nun ein:", pname); //Hier wird ein Logintext definiert, der den Namen des Spielers ausgibt [%s]
format(registertext,128,"Herzlich Willkommen : [%s]\n\nBitte Registriere dich nun:", pname); //Hier wird ein Registertext definiert, der den Namen des Spielers ausgibt [%s]
format(accFormat,sizeof accFormat,"%s.ini",pname); //Hier wird die Datei ausgelesen NAME.datei [%s] ist der Name.
if(fexist(accFormat)) //Wenn ein Account existiert dann...
{
ShowPlayerDialog(playerid,DIALOG_LOGIN,1,"Login System",logintext,"Weiter","Abbrechen"); //Dann passiert dieses hier.
}
else
{
ShowPlayerDialog(playerid,DIALOG_REG,1,"Register System",registertext,"Weiter","Abbrechen"); //Wenn nicht, dan passiert dieses hier
}
return 1;
}public OnPlayerDisconnect(playerid, reason)
{
KillTimer(pimerday[playerid]);
/*Nun gehen wir hierhin in das Callback OnPlayerDisconnect, und speichern die Daten des Spielers,
damit er sie beim nächsten Login wieder hat, und kein anderer Spieler sie hat. Deshalb müssen
wir auch noch überprüfen ob der Spieler eingeloggt ist oder nicht!*/
new pname[MAX_PLAYERS],accFormat[128]; //Hier werden wieder die Variablen erstellt!
GetPlayerName(playerid,pname,sizeof pname); //Hier wird wieder der Name in pname gespeichert!
format(accFormat,sizeof accFormat,"/Spieler/%s.ini",pname); //Hier wird geprüft ob die Datei NAME.datei existiert
if(fexist(accFormat) && PlayerInfo[playerid][eingeloggt]) //Hier wird gecheckt, ob die Datei exisitert, und der Spieler eingeloggt ist
{ //Wenn ja dann
dini_IntSet(accFormat,"wanted",PlayerInfo[playerid][pwanted]); //speicher die Wanteds
dini_IntSet(accFormat,"zeitseitpayday", pSincePayday[playerid]);// setzt in der Datei des Spielers zeitseitpayday auf das gleiche wie pSincePayday.
dini_IntSet(accFormat,"spielzeit", pPlaytime[playerid]);// setzt in der Datei des Spielers Spielzeit auf das gleiche wie pPlaytime.
dini_IntSet(accFormat,"pleader",PlayerInfo[playerid][pleader]);
dini_IntSet(accFormat,"pteam",PlayerInfo[playerid][pteam]);
dini_IntSet(accFormat,"padmin",PlayerInfo[playerid][padmin]);
dini_IntSet(accFormat,"skin",PlayerInfo[playerid][pskin]); //Speichere den Skin
dini_FloatSet(accFormat,"lastx",PlayerInfo[playerid][lastx]); //Speichere die X Koordinate
dini_FloatSet(accFormat,"lasty",PlayerInfo[playerid][lasty]); //Speichere die Y Koordinate
dini_FloatSet(accFormat,"lastz",PlayerInfo[playerid][lastz]); //Speichere die Z Koordinate
} //Wenn nicht dann
PlayerInfo[playerid][pteam] = 0;
PlayerInfo[playerid][pleader] = 0;
PlayerInfo[playerid][eingeloggt] = 0; //Wird der Spieler ausgeloggt!
PlayerInfo[playerid][pwanted] = 0; //Wird wanted auf 0 gesetzt
PlayerInfo[playerid][pskin] = 0;
PlayerInfo[playerid][padmin] = 0; //Wird der Skin auf 0 gesetzt
PlayerInfo[playerid][lastx] = (0.0); //Wird die X Koordinate auf 0 gesetzt
PlayerInfo[playerid][lasty] = (0.0); //...
PlayerInfo[playerid][lastz] = (0.0); //...
return 1;
}woran liegt es?
-
Taucht auf wenn man auf Funktionen zugreift die nicht vorhanden sind, oft bei Plugins
-
Das lag bei mir mal daran, dass ich ne falsche Version von nem Plugin hatte. Aber wenn du keine Plugins benutzt. Vielleicht hast du nicht die aktuellste Server Version drauf?
-
Ich weiß nicht ob das hierrein gehört aber naja.
Ich würde gern einen /suchen befehl machen der nur in bestimmten Interriors geht und womit mann nach 10Sekunden Zufällige waffen findet wie Deagle,Sniper usw.
Wäre das möglich? -
ja es ist möglich.
Mach einfach ein neues Command, ne Abfrage mit GetPlayerInterior(playerid) und dann starte nen Timer der dem Spieler ne Waffe gibt. -
Kann mann auch abfragen ob der Spieler in einem bestimmten Interrior ist?
Oder kann man nur abfragen ob der Spieler in einem anderen ist? -
GetPlayerInterior fragt doch ab in welchem Interior der Spieler sich befindet ...
-
@vakuenz
#define TaxiTor CreateObject(980, -2016.7271728516, 59.319431304932, 31.773805618286, 0, 353, 268.69067382813);
sowas hab ich noch nie gesehen xDDD
new taxitor;
TaxiTor = CreateObject(980, -2016.7271728516, 59.319431304932, 31.773805618286, 0, 353, 268.69067382813);
edit: glaube is beides möglich -
Als irgendwie geht dass bei mir nicht denn ich kann es überall machen und ich kriege die Waffen immer sofort und nicht nach 10Sekunden .