@[LnD]JustMe.77:
Sorry, aber das sind Anfängersachen.^^
new tmpobjid;
Das bin ich auch ![]()
@[LnD]JustMe.77:
Sorry, aber das sind Anfängersachen.^^
new tmpobjid;
Das bin ich auch ![]()
Ja, das kann ja sein, aber auch wenn hier viele gerne helfen (auch ich), solche Sachen sollte man aber vielleicht erstmal in Eigeninitiative lernen (das lehrt jedes Youtube Tutorial in den ersten Videos), denn das sind wirklich die Grundkenntnisse der Grundkenntnissen.
Ist aber auch eine andere Sache und gehört hier eigentlich auch nicht hin.
Ich habe mir gerade ein Befehl erstellt um zu sehen wie mein gemapptes Nachts aussieht, das Problem ist nur das der Befehl halt funktioniert aber nicht so wie ich möchte.
Mein Code sieht so aus:
if(!strcmp(cmdtext, "/settime 0", true))
SetPlayerTime(playerid, 0, 0); // Midnight
SendClientMessage(playerid,GELB,"Time set to Midnight");
return 1;
}
Das Problem ist der Befehl funktioniert auch wenn ich nur /settime eingebe oder so..
Ich weiß das ich irgendwo eine Zahl anhängen muss, aber wo ![]()
Mein Stats System Funtkioniert eig. aber es kommt bei Fraktion ein Punkt und bei IP eine 50.
ocmd:stats(playerid)
{
new string[128];
format(string, sizeof(string),"Name: %s\nLevel: %d\nFraktion: %s Rang: %d\n\nGeld: %d\nKills: %d Tode: %d\n\nAdminlevel: %i\nIP: %i",NamePlayer(playerid), SpielerInfo[playerid][pLevel],SpielerInfo[playerid][pFraktion],SpielerInfo[playerid][pRang],SpielerInfo[playerid][pGeld],SpielerInfo[playerid][pKills],SpielerInfo[playerid][pTode],SpielerInfo[playerid][pAdminlevel],SpielerInfo[playerid][pIP]);
ShowPlayerDialog(playerid,DIALOG_STATS,DIALOG_STYLE_MSGBOX, "Stats",string,"Ok","");
return 1;
}
@[LnD]JustMe.77:
if(!strcmp(cmdtext, "/settime", true))
{
if(!strcmp(cmdtext,"0",true))
{
SetPlayerTime(playerid, 0, 0); // Midnight
SendClientMessage(playerid,GELB,"Time set to Midnight");
}
return 1;
}
Ich weiß jetzt nicht ob das so mit der "0" klappt.
@FerienFreak:
Ist "SpielerInfo[playerid][pFraktion]" ein Integer oder ein String?
Kannst uns auch einfach mal dein Enum dazu zeigen.
ICy.:
Ne, ich bin mir sicher das dass damit nix zu tun hat, ich glaube eher ein Problem mit return 1 oder return 0, habe beides probiert doch das hilft nicht.
Ich habe außerdem vergessen zu erwähnen das jedes mal kommt "Time set to night" egal was für ein Befehl ich benutze, und das soll nicht passieren.
if(!strcmp(cmdtext, "/setday 3", true))
{
SendClientMessage(playerid,GELB,"Weather changed to extra sunny.");
SetWeather(0);
return 1;
}
if(!strcmp(cmdtext, "/settime", true))
SetPlayerTime(playerid, 0, 0); // Midnight
SendClientMessage(playerid,GELB,"Time set to Midnight");
return 1;
}
Was ich gerade sehe. Bekommst du eigentlich keinen Fehler?
Du hast nämlich eine Klammer vergessen.
if(!strcmp(cmdtext, "/settime", true))
SetPlayerTime(playerid, 0, 0); // Midnight
SendClientMessage(playerid,GELB,"Time set to Midnight");
return 1;
}
zu
if(!strcmp(cmdtext, "/settime", true))
{
SetPlayerTime(playerid, 0, 0); // Midnight
SendClientMessage(playerid,GELB,"Time set to Midnight");
return 1;
}
pIP muss erst mal ein String sein.
Sprich so: pIP[16],
Die Zeichenlänge 16 reicht.
Jetzt musst du gucken. Wie heißt das Array für dieses Enum?
enum fraktEnum{
Möglicherweise sind da zwei Preview Models übereinander gelegt worden, das könnte ich mir vorstellen.
Dann poste bitte den Code wenn du wieder am PC bist, ohne Code können wir dir nicht helfen, es weiß ja keiner was du am Code gemacht hast, bzw was da ist oder was fehlt.
Gute Nacht
Wenn ich die jetzt übereinander mache, wird nur ein andere Skin angezeigt? Könntest du mir bitte einen Beispiel geben?
-> Jetzt zum Crash problem: Es ist irgendwie verschwunden? ![]()
@FerienFreak:
Für das 1. Enum hast du doch das Array SpielerInfo.
Wie heißt das Array für das 2. Enum?
@[GeD]Max:
So wie ich das verstanden habe, sollst du nicht die TextDraws übereinander machen, sondern die sind möglicherweise schon übereinander. Laut Jeffry sollst du uns mal den Code schicken, was sicher sinnvoller ist ![]()
So ein Blödsinn von mir
- Falsch verstanden..
Mein derzeitiger Code:
if(clickedid == Textdraw6) // United States
{
PlayerTextDrawSetPreviewModel(playerid, Textdraw3[playerid], 287); // Mit das hier sol dann auch die M4 gezeigt werden
PlayerTextDrawShow(playerid, Textdraw3[playerid]);
ClearChat(playerid);
SendClientMessage(playerid, 0xFF0000FF,"[INFO] {FFFFFF}Sie haben {FF0000}United States {FFFFFF}als Team ausgewählt!");
gTeam[playerid] = TEAM_UNITEDSTATES;
if(mysql_CheckAccount(playerid) == 1)
{
SpielerInfo[playerid][pTeamAuswahl] = 1;
}
else if(mysql_CheckNoAccount(playerid) == 1)
{
NoSpielerInfo[playerid][pNoTeamAuswahl] = 1;
}
}
//....
Ja, du musst noch ein 2. TextDraw erstellen, auch mit den PreviewModel enthalten, und dort zeigst du dann die Model-ID 356 an. (356 ist die M4)
Versuch das mal, ansonsten melde dich noch einmal.
Jetzt wird zwar die M4 angezeigt, aber der skin der schon vorher drauf ist z.b. Army skin soll die M4 halten. also da mit der M4 stehen.
if(clickedid == Textdraw6) // United States
{
PlayerTextDrawSetPreviewModel(playerid, Textdraw3[playerid], 287);
PlayerTextDrawShow(playerid, Textdraw3[playerid]);
PlayerTextDrawSetPreviewModel(playerid, Textdrawdrei[playerid], 356);
PlayerTextDrawShow(playerid, Textdrawdrei[playerid]);
ClearChat(playerid);
SendClientMessage(playerid, 0xFF0000FF,"[INFO] {FFFFFF}Sie haben {FF0000}United States {FFFFFF}als Team ausgewählt!");
gTeam[playerid] = TEAM_UNITEDSTATES;
if(mysql_CheckAccount(playerid) == 1)
{
SpielerInfo[playerid][pTeamAuswahl] = 1;
}
else if(mysql_CheckNoAccount(playerid) == 1)
{
NoSpielerInfo[playerid][pNoTeamAuswahl] = 1;
}
}
//..
Ja, du musst die Koordinaten so abändern, dass die M4 an der Hand von den Armyskin ist.
@FerienFreak:
Für das 1. Enum hast du doch das Array SpielerInfo.
Wie heißt das Array für das 2. Enum?
@[GeD]Max:
So wie ich das verstanden habe, sollst du nicht die TextDraws übereinander machen, sondern die sind möglicherweise schon übereinander. Laut Jeffry sollst du uns mal den Code schicken, was sicher sinnvoller ist
So ein Blödsinn von mir- Falsch verstanden..
new fInfo[][fraktEnum] = {
{"Zivilist", 0.0, 0.0, 0.0, 0.0, 0, 0, WEIß},
{"LSPD", 1526.4583,-1677.8275,5.8906, 266.6004, 0, 0, BLAU},
{"Ordnungsamt", 0.0, 0.0, 0.0, 0.0, 0, 0, BABYBLAU}
};
@FerienFreak:
ocmd:stats(playerid)
{
new string[256];
format(string, sizeof(string),"Name: %s\nLevel: %d\nFraktion: %s Rang: %d\n\nGeld: %d\nKills: %d Tode: %d\n\nAdminlevel: %i\nIP: %i",NamePlayer(playerid), SpielerInfo[playerid][pLevel],fInfo[SpielerInfo[playerid][pFraktion]][f_name],SpielerInfo[playerid][pRang],SpielerInfo[playerid][pGeld],SpielerInfo[playerid][pKills],SpielerInfo[playerid][pTode],SpielerInfo[playerid][pAdminlevel],SpielerInfo[playerid][pIP]);
ShowPlayerDialog(playerid,DIALOG_STATS,DIALOG_STYLE_MSGBOX, "Stats",string,"Ok","");
return 1;
}
So.
pIP haste zum String gemacht, nech?
#edit:
Habe den String mal etwas erhöht ![]()
Kann mir einer sagen, wie ich hier strcat benutze?
new query[950 + MAX_PLAYER_NAME],Tag,Monat,Jahr,Stunde,Minute,Sekunde;
getdate(Tag,Monat,Jahr);
gettime(Stunde,Minute,Sekunde);
format(query,sizeof(query),"d.d.%d - d:d:%d",Tag,Monat,Jahr,Stunde,Minute,Sekunde);
mysql_format(DBHandle, query, sizeof(query),"INSERT INTO `Accounts` (`pName`, `pPasswort`, `pAlter`, `pGeschlecht`, `pAdminlevel`, `pBanned`, `pBargeld`, `pKontoguthaben`, `pLastLogin`, `pRegDatum`, `pVersuche`, `pLeben`) VALUES ('%e','%e','%d','%d','%d','%d','0','0','%s','%s','%d','100.0')",Spieler[playerid][pName],inputtext,Spieler[playerid][pAlter],Spieler[playerid][pGeschlecht],Spieler[playerid][pAdminlevel],Spieler[playerid][pBanned],query,query,Spieler[playerid][pWrongPass],Spieler[playerid][pLeben]);
mysql_tquery(DBHandle, query, "", "");
Spieler[playerid][pLogged] = true;
SpawnPlayer(playerid);
return 1;
bekomme in der mysql_format Zeile ein Fehler error 075: input line too long (after substitutions)
Brauchst du gar nicht, kannst es auch so kürzen.
mysql_format(DBHandle, query, sizeof(query),"INSERT INTO `Accounts` (`pName`, `pPasswort`, `pAlter`, `pGeschlecht`, `pAdminlevel`, `pBanned`, `pBargeld`, `pKontoguthaben`, `pLastLogin`, `pRegDatum`, `pVersuche`, `pLeben`) VALUES ('%e','%e','%d','%d','%d','%d','0','0','%s','%s','%d','100.0')",
Spieler[playerid][pName],inputtext,Spieler[playerid][pAlter],Spieler[playerid][pGeschlecht],Spieler[playerid][pAdminlevel],Spieler[playerid][pBanned],query,query,Spieler[playerid][pWrongPass],Spieler[playerid][pLeben]);