kann es sein das playerid garnicht das object ist was die funktion ausführt
Beiträge von rocco95
-
-
also ich will es ja wie folgt:
das dann wenn ich admin bin im chat steht:
Admin (ab hier weiß)meiname: mein text
so die abfragen ob ich admin bin un so hab ich ja schon aber es schreibt halt trotzdem so wie ich es im vorigen post geschreiben habe
problem gelöst:
so hier muss es heißen
man muss html farbcodes nehmen:format(ooc, sizeof(ooc), " {0099FF} Supporter {FFFFFF} %s: %s", name, text); (Beispiel:Supporter)
neues problem:
aber er gibt nun keinen text mehr aus O.o also das was ich selber schreibehier mein code:
public OnPlayerText(playerid)
{
new Spielerdatei[64];
new name[MAX_PLAYER_NAME];
GetPlayerName(playerid, name, sizeof (name));
format (Spielerdatei, sizeof (Spielerdatei), "/Accounts/%s.ini", name);
new ooc[64],text[256];
if (playerid, dini_Int(Spielerdatei, "Admin") == 1)
{
if (playerid, dini_Int(Spielerdatei, "muted") == 1)
{
SendClientMessage(playerid, ROT, "Du bist gemuted und kannst nicht reden.");
return 0;
}
else
{
format(ooc, sizeof(ooc), "{0099FF}Supporter {FFFFFF}%s: %s", name, text);
SendClientMessageToAll(CHATCOLOR, ooc);
return 0;
}
}
if (playerid, dini_Int(Spielerdatei, "Admin") == 2)
{
if (playerid, dini_Int(Spielerdatei, "muted") == 1)
{
SendClientMessage(playerid, ROT, "Du bist gemuted und kannst nicht reden.");
return 0;
}
else
{
format(ooc, sizeof(ooc), "{009900}Scripter {FFFFFF}%s: %s", name, text);
SendClientMessageToAll(CHATCOLOR, ooc);
return 0;
}
}
if (playerid, dini_Int(Spielerdatei, "Admin") == 3)
{
if (playerid, dini_Int(Spielerdatei, "muted") == 1)
{
SendClientMessage(playerid, ROT, "Du bist gemuted und kannst nicht reden.");
return 0;
}
else
{
format(ooc, sizeof(ooc), "{FF0000}Admin {FFFFFF}%s: %s", name, text);
SendClientMessageToAll(CHATCOLOR, ooc);
return 0;
}
}
return 0;
}es geht alles bis auf das der text den ich eingebe nich ausgegeben wird
-
em ja wenn ich dann ingame was eingebe steht das weiß da:
{0x0099FFFF} Supporter {0xFFFFFFFF} meinname: blabla
-
ich hätte gern folgendes:
wenn ich ein admin bin das vor meinem namen: Admin (farbe rot) steht
wie kann ich das machen ? -
ok mach ich
-
ok das hab ich aber du hattest noch was vergessen was ich selber raus gefunden habe
ich muss oben wo
new SpielerID, reason; steht muss ich bei reason noch [ireine zahl ich hab 256 genommen] reinschreiben
trotzdem vilene dank nun geht es nämlich
un die kicmsg[1000] kann ich 1000 lassen muss nicht 128 sein geht ja jetzt
-
dcmd_kick(playerid,params[])
{
new Spielerdatei[64];
new name[MAX_PLAYER_NAME];
GetPlayerName(playerid, name, sizeof (name));
format (Spielerdatei, sizeof (Spielerdatei), "/Accounts/%s.ini", name);
if(playerid,dini_Int(Spielerdatei, "Admin") == 0)
{
return SendClientMessage(playerid,ROT,"Du bist kein Admin.");
}
else
{new SpielerID, reason;
new name2[MAX_PLAYER_NAME];
GetPlayerName(SpielerID, name2, sizeof(name2));
if(sscanf(params, "dr", SpielerID, reason))
{
return SendClientMessage(playerid,ROT,"USAGE: /kick [playerid] [Grund]");
}
if(!IsPlayerConnected(SpielerID))
{
return SendClientMessage(playerid,ROT,"Der Spieler ist nicht online.");
}
/* if(SpielerID == playerid)
{
return SendClientMessage(playerid,ROT,"Du kannst dich nicht selber kicken");
}
*/
new kickmsg[1000];
format(kickmsg, sizeof(kickmsg), "SERVER: %s hat %s vom Server gekickt. Grund: %s",name,name2,reason);
SendClientMessageToAll(ROT,kickmsg);
Kick(SpielerID);
return 1;
}
}folgendes:
ich habe ein /kick command (mit dcmd) gemacht -> /kick ID GRUND
bis zur zu den namen geht es also wer wen gekickt hat aber wenn ich irwas als grund eingebe steht bei grund immer y da (z.B: SERVER: CJ hat Claude vom Server Gekickt. Grund: y)
warum geht mein grund nicht ? -
jo so reicht es mir die leiste is zwar da aber untauglich gemacht
danke endlich ein problem weniger
-
hab grad gemerkt dort auf dem server is das auch noch die also die leiste aber da passierts nicht wen man auf spawn drückt wie kann ich das auch machen das wenn ich auf spawn klicke dass da nichts passiert ?
-
if (dialogid == DIA_HELP)
{
if (response)
{
if (listitem == 0)
{
ShowPlayerDialog(playerid, DIA_HELP, DIALOG_STYLE_MSGBOX, "Hilfe-Allgemein", " \n \n \n \n", "Zurück", "Schließen");
return 1;
}
if (listitem == 1)
{
ShowPlayerDialog(playerid, DIA_HELP_HAUS, DIALOG_STYLE_MSGBOX, "Hilfe-Haus", " \n \n \n \n", "Zurück", "Schließen");
return 1;
}
if (listitem == 2)
{
ShowPlayerDialog(playerid, DIA_HELP_AUTO, DIALOG_STYLE_MSGBOX, "Hilfe-Auto", " \n \n \n \n", "Zurück", "Schließen");
return 1;
}
if (listitem == 3)
{
ShowPlayerDialog(playerid, DIA_HELP_FRAKTION, DIALOG_STYLE_MSGBOX, "Hilfe-Fraktion", " \n \n \n \n", "Zurück", "Schließen");
return 1;
}
if (listitem == 4)
{
ShowPlayerDialog(playerid, DIA_HELP_JOB, DIALOG_STYLE_MSGBOX, "Hilfe-Job", " \n \n \n \n", "Zurück", "Schließen");
return 1;
}
}
}
if (dialogid == DIA_HELP_ALLGEMEIN)
{
if (response == 0)
{
return 1;
}
else
{
ShowPlayerDialog(playerid, DIA_HELP, DIALOG_STYLE_LIST, "Hilfe", "Allgemein \nHaus \nAuto \nFraktion \nJob", "Auswählen", "Abbrechen");
return 1;
}
}der gesamte help abschnitt
aber nur bei DIA_HELP_ALLGEMEIN habe ich momentan nur das zurück drinne (also erstaml test, geht aber nich) -
aber irwie muss das gehen
-
diese möglichkeit habe ich auch schon ausprobiert un es geht auch nich
-
das man nach dem login spawnt das habe ich schon aber wie haben es denn anndere server geschafft diese leiste auszublenden ?
-
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
if (dialogid == DIA_LOG)
{
if (response == 0)
{
Kick(playerid);
return 1;
}
else
{
if (!strlen(inputtext))
{
ShowPlayerDialog(playerid, DIA_LOG, DIALOG_STYLE_PASSWORD, "Einloggen", "Willkommen zurück. \nBitte logge dich ein:", "Login", "Abbrechen");
return 1;
}
else
{
Login (playerid,inputtext);
SetSpawnInfo(playerid,0,0,1484.5742,-1742.8270,13.5469,1.3277,0,0,0,0,0,0);
SpawnPlayer(playerid);
return 1;
}}
}if (dialogid == DIA_REG)
{
if (response == 0)
{
Kick(playerid);
return 1;
}
else
{
if (!strlen(inputtext))
{
ShowPlayerDialog(playerid, DIA_REG, DIALOG_STYLE_PASSWORD, "Account erstellen", "Herzlich Willkommen auf dem German Freeworlds Server. \nDu hast noch keinen Account bei uns. \nBitte registriere dich erst:", "Registrieren", "Abbrechen");
return 1;
}
else
{
Register(playerid, inputtext);
ShowPlayerDialog(playerid, DIA_LOG, DIALOG_STYLE_PASSWORD, "Einloggen", "Willkommen zurück. \nBitte logge dich ein:", "Login", "Abbrechen");
return 1;
}
}
}
if (dialogid == DIA_HELP)
{
if (response)
{
if (listitem == 0)
{
ShowPlayerDialog(playerid, DIA_HELP, DIALOG_STYLE_MSGBOX, "Hilfe-Allgemein", " \n \n \n \n", "Zurück", "Schließen");
if (dialogid == DIA_HELP_ALLGEMEIN)
{
if (response)
{
return 1;
}
else
{
ShowPlayerDialog(playerid, DIA_HELP, DIALOG_STYLE_LIST, "Hilfe", "Allgemein \nHaus \nAuto \nFraktion \nJob", "Auswählen", "Abbrechen");
return 1;
}
}
}
if (listitem == 1)
{
ShowPlayerDialog(playerid, DIA_HELP_HAUS, DIALOG_STYLE_MSGBOX, "Hilfe-Haus", " \n \n \n \n", "Zurück", "Schließen");
return 1;
}
if (listitem == 2)
{
ShowPlayerDialog(playerid, DIA_HELP_AUTO, DIALOG_STYLE_MSGBOX, "Hilfe-Auto", " \n \n \n \n", "Zurück", "Schließen");
return 1;
}
if (listitem == 3)
{
ShowPlayerDialog(playerid, DIA_HELP_FRAKTION, DIALOG_STYLE_MSGBOX, "Hilfe-Fraktion", " \n \n \n \n", "Zurück", "Schließen");
return 1;
}
if (listitem == 4)
{
ShowPlayerDialog(playerid, DIA_HELP_JOB, DIALOG_STYLE_MSGBOX, "Hilfe-Job", " \n \n \n \n", "Zurück", "Schließen");
return 1;
}
}
}
return 1;
}hier mal der ausschnitt von meinen dialogen, aber es interessiert nur der vom login (also der erste oben)
un da steht SetSpawnIngo aber wenn ich den reg bzw. login dialog habe finde ich unten imemrnoch den spawn button ich will ja das die leiste aus geblendet wird
das spawn geht ja an sich wenn ich mein pw wort eingebe un auf login drücke, ich spawne auch es geht mir nur drum das die leiste unten weg ist. -
nö geht auch nich
-
ich weiß es gibt schon themen hier zu aber:
so wie es hier beschrieben ist habe ich es schon un es geht tortzdem nich
also das automatische spawn hab ich ja also wenn ich mein pw eingebe werde ich automatisch gespawntaber ich möchte gern die leiste unten (<- -> spawn) ausblenden, auch schon bevor man sich eingeloggt hat bzw. registriert hat
-
ne das geht leider auch nich
-
if (dialogid == DIA_HELP)
{
if (response)
{
if (listitem == 0)
{
ShowPlayerDialog(playerid, DIA_HELP, DIALOG_STYLE_MSGBOX, "Hilfe-Allgemein", " \n \n \n \n", "Zurück", "Schließen");
if (dialogid == DIA_HELP_ALLGEMEIN)
{
if (response == 0)
{
return 1;
}
else
{
ShowPlayerDialog(playerid, DIA_HELP, DIALOG_STYLE_LIST, "Hilfe", "Allgemein \nHaus \nAuto \nFraktion \nJob", "Auswählen", "Abbrechen");
return 1;
}
}
}
if (listitem == 1)
{
ShowPlayerDialog(playerid, DIA_HELP_HAUS, DIALOG_STYLE_MSGBOX, "Hilfe-Haus", " \n \n \n \n", "Zurück", "Schließen");
return 1;
}
if (listitem == 2)
{
ShowPlayerDialog(playerid, DIA_HELP_AUTO, DIALOG_STYLE_MSGBOX, "Hilfe-Auto", " \n \n \n \n", "Zurück", "Schließen");
return 1;
}
if (listitem == 3)
{
ShowPlayerDialog(playerid, DIA_HELP_FRAKTION, DIALOG_STYLE_MSGBOX, "Hilfe-Fraktion", " \n \n \n \n", "Zurück", "Schließen");
return 1;
}
if (listitem == 4)
{
ShowPlayerDialog(playerid, DIA_HELP_JOB, DIALOG_STYLE_MSGBOX, "Hilfe-Job", " \n \n \n \n", "Zurück", "Schließen");
return 1;
}
}ich habe folgendes anliegen:
ich habe meine hilfe in einem dialog drinne (Liste)
klicke ich jetzt z.b. auf Allgemein (DIA_HELP_ALLGEMEIN)
komme ich ja auf den anderen dialog
nun habe ich dort einen msg dialog
jeztt habe ich unten zwei buttons einmal "Zurück" und dann "Schließen"
nun möchte ich das es halt mit Schließen zu geht und geht Zurück wieder auf die Allgemeine Hilfe (DIA_HELP) zurück geht
nur leider schließt es sich auch wenn ich auf zurück klicke ?
was habe ich hier in dem code falsch gemacht (compile errors hatte ich keine)
ich will das zurück erstmal nur bei dem DIA_HELP_ALLGEMEIN probieren, deshalb geht das bei dem einen auch weiter mit überprüfungen -
jo auch von mir danke
-
das wüsst ich auch gern