/pn - DIALOG_STYLE_INPUT Problem

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
  • Hey,
    will eine Art /pn machen, doch so ganz komm ich da nicht mit hin...


    Code
    if(strcmp("/pn",cmdtext) == 0)
    	{
    	    ShowPlayerDialog(playerid,pn,DIALOG_STYLE_INPUT,"Privates Nachrichtenmenu","Gebe bitte die ID des Empfängers ein!","Weiter","GTA:WC DM");
    		return 1;
    	}


    if(dialogid == pn)
    {
    new pnid,message[128];
    pnid = strval(inputtext);
    ShowPlayerDialog(playerid,message,DIALOG_STYLE_INPUT,"Nachricht:","Senden","GTA:WC DM");

    if(dialogid == message)
    {
    new message[128],str[128],absender[MAX_PLAYER_NAME],empfaenger[MAX_PLAYER_NAME],pID;//469
    GetPlayerName(pID,empfaenger,sizeof(empfaenger));//470
    GetPlayerName(playerid,absender,sizeof(absender));
    strmid(message,inputtext,0,strlen(inputtext),255);
    format(str,128,"Du hast eine Nachricht von %s: %s",message,absender);
    SendClientMessage(pID,FarbeGruen,str);
    }
    }


    C:\Dokumente und Einstellungen\Peter Pan\Desktop\Server\gamemodes\blablablabla.pwn(268) : warning 204: symbol is assigned a value that is never used: "playertextid"
    C:\Dokumente und Einstellungen\Peter Pan\Desktop\Server\gamemodes\blablablabla.pwn(310) : warning 202: number of arguments does not match definition
    C:\Dokumente und Einstellungen\Peter Pan\Desktop\Server\gamemodes\blablablabla.pwn(311) : warning 202: number of arguments does not match definition
    C:\Dokumente und Einstellungen\Peter Pan\Desktop\Server\gamemodes\blablablabla.pwn(392) : warning 235: public function lacks forward declaration (symbol "duellstart")
    C:\Dokumente und Einstellungen\Peter Pan\Desktop\Server\gamemodes\blablablabla.pwn(463) : error 001: expected token: "-identifier-", but found "-integer value-"
    C:\Dokumente und Einstellungen\Peter Pan\Desktop\Server\gamemodes\blablablabla.pwn(465) : warning 202: number of arguments does not match definition
    C:\Dokumente und Einstellungen\Peter Pan\Desktop\Server\gamemodes\blablablabla.pwn(469) : error 001: expected token: "-identifier-", but found "-integer value-"
    C:\Dokumente und Einstellungen\Peter Pan\Desktop\Server\gamemodes\blablablabla.pwn(470) : error 017: undefined symbol "pID"
    C:\Dokumente und Einstellungen\Peter Pan\Desktop\Server\gamemodes\blablablabla.pwn(470) : error 017: undefined symbol "empfaenger"
    C:\Dokumente und Einstellungen\Peter Pan\Desktop\Server\gamemodes\blablablabla.pwn(470) : error 029: invalid expression, assumed zero
    C:\Dokumente und Einstellungen\Peter Pan\Desktop\Server\gamemodes\blablablabla.pwn(470) : fatal error 107: too many error messages on one line


    Compilation aborted.Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase



    6 Errors.

  • Am besten machst du ein Stock.


    stock PN(playerid, key[])
    {

    new pID[MAX_PLAYER_NAME],sender[MAX_PLAYER_NAME],string[128];
    pID = key;
    GetPlayerName(playerid, sender,sizeof(sender));
    format(string,sizeof(string),"Du hast eine Nachricht von %s: %s",sender,string);
    SendClientMessage(pID,FARBE,string);
    return 1; }


    Hab das jetzt geschrieben, kA ob das geht :D


    dann machst du beim Dialog "PN(playerid,inputtext);"

  • Nein, da wo du deine Nachricht gemacht hast



    new pnid,message[128]; pnid = strval(inputtext); ShowPlayerDialog(playerid,message,DIALOG_STYLE_INPUT,"Nachricht:","Senden","GTA:WC DM"); if(dialogid == message) { new message[128],str[128],absender[MAX_PLAYER_NAME],empfaenger[MAX_PLAYER_NAME],pID;//469 GetPlayerName(pID,empfaenger,sizeof(empfaenger));//470 GetPlayerName(playerid,absender,sizeof(absender)); strmid(message,inputtext,0,strlen(inputtext),255); format(str,128,"Du hast eine Nachricht von %s: %s",message,absender); SendClientMessage(pID,FarbeGruen,str);


    Das machst du alles weg und machst da


    PN(playerid,inputtext);

  • C:\Dokumente und Einstellungen\Peter Pan\Desktop\Server\gamemodes\blablablabla.pwn(268) : warning 204: symbol is assigned a value that is never used: "playertextid"
    C:\Dokumente und Einstellungen\Peter Pan\Desktop\Server\gamemodes\blablablabla.pwn(310) : warning 202: number of arguments does not match definition
    C:\Dokumente und Einstellungen\Peter Pan\Desktop\Server\gamemodes\blablablabla.pwn(311) : warning 202: number of arguments does not match definition
    C:\Dokumente und Einstellungen\Peter Pan\Desktop\Server\gamemodes\blablablabla.pwn(392) : warning 235: public function lacks forward declaration (symbol "duellstart")
    C:\Dokumente und Einstellungen\Peter Pan\Desktop\Server\gamemodes\blablablabla.pwn(622) : warning 225: unreachable code
    C:\Dokumente und Einstellungen\Peter Pan\Desktop\Server\gamemodes\blablablabla.pwn(631) : warning 213: tag mismatch
    C:\Dokumente und Einstellungen\Peter Pan\Desktop\Server\gamemodes\blablablabla.pwn(639) : warning 213: tag mismatch
    C:\Dokumente und Einstellungen\Peter Pan\Desktop\Server\gamemodes\blablablabla.pwn(619) : warning 204: symbol is assigned a value that is never used: "playertextid"
    C:\Dokumente und Einstellungen\Peter Pan\Desktop\Server\gamemodes\blablablabla.pwn(1473) : error 047: array sizes do not match, or destination array is too small
    C:\Dokumente und Einstellungen\Peter Pan\Desktop\Server\gamemodes\blablablabla.pwn(1476) : error 035: argument type mismatch (argument 1)
    C:\Dokumente und Einstellungen\Peter Pan\Desktop\Server\gamemodes\blablablabla.pwn(1478) : warning 203: symbol is never used: "ping"
    Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase



    2 Errors.


    stock PN(playerid, key[])
    {


    new pID[MAX_PLAYER_NAME],sender[MAX_PLAYER_NAME],string[128];
    pID = key;//Zeile 1473
    GetPlayerName(playerid, sender,sizeof(sender));
    format(string,sizeof(string),"Du hast eine Nachricht von %s: %s",sender,string);
    SendClientMessage(pID,FARBE,string);//Zeile 1476
    return 1;
    }

  • Du sollst da deine Farbe rein machen omg?!


    Nicht C&P machen, schon selber ausfüllen


    edit:// hm moment.. mach mal das MAX_PLAYER_NAME hinterm PID weg ..

  • oben hab ich schon geschrieben mach mal hinterm pID das MAX_PLAYER_NAME weg ..

  • Letzter Error, danke soweit erstmal:
    C:\Dokumente und Einstellungen\Peter Pan\Desktop\Server\gamemodes\gtawcdmvdrei.pwn(1473) : error 006: must be assigned to an array
    pID = key;


    mhh. :o

  • mach das mal so


    key = pID;


    oder wenn das nicht funktioniert


    new pID[128];


    pID = key;

  • do.de - Domain-Offensive - Domains für alle und zu super Preisen

  • Alter wenn man keine Ahnung hat soll mans lassen ^^


    Sehr Intelligent den Inputtext als Empfänger zu verwenden (pID = key;).


    stock SendPNMessage(sender,to,COLOR,text[])
    {
    if(!IsPlayerConnected(to))return SendClientMessage(sender,Am besten rot,"Dieser Spieler ist nicht online!");
    new name[2][MAX_PLAYER_NAME],string[512];
    GetPlayerName(sender, name[0], MAX_PLAYER_NAME);
    GetPlayerName(to, name[1], MAX_PLAYER_NAME);
    format(string,sizeof(string),"Nachricht von %s: %s",name [0],text);
    SendClientMessage(to,COLOR,string);
    format(string,sizeof(string),"Nachricht erfolgreich an %s geschickt: %s",name [1],text);
    SendClientMessage(sender,COLOR,string);
    return 1;
    }




    /Edit, Name im Quellcode groß geschrieben, aber Variable als name definiert

    Einmal editiert, zuletzt von RG_ ()

  • Achso, habe das so verstanden das man die ID in den input schreibt habe es dann auch so gemacht , nur habe halt die NAchricht vergessen xD