Teleport per Dialog geht nicht

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
  • Hallo Communuty,


    ich habe versucht ein kleines Dynamisches und einfaches Teleportsystem für Admins zu Creaieren.
    Es scheiterte an dem problem das ich mich(id = 0) zuerst versuche zu jemand anderen zu porten (id=1) aber dahin komme und anschlissend versuche mich zu mir selber zu porten ich aber zu id 1 komme


    hier der Code



    new Float:X,Float:Y,Float:Z,pID;
    clickedid = pID;
    GetPlayerPos(pID,Float:X,Float:Y,Float:Z);
    SetPlayerInterior(playerid,GetPlayerInterior(pID));
    SetPlayerPosFindZ(playerid,Float:X+1,Float:Y,Float:Z);
    new nachricht[129];
    format(nachricht,sizeof(nachricht),"ADMCMD: Du hast dich zu %s Teleportiert.",SpielerName(clickedid));
    SendClientMessage(playerid,CL_HROT,nachricht);
    new nachricht2[127];
    format(nachricht2,sizeof(nachricht2),"ADMCMD: Admin %s hat sich zu dir Teleportiert. ",SpielerName(playerid));
    SendClientMessage(pID,CL_HROT,nachricht2);
    printf("ID=%i",clickedid);

    return 1;


    Danke im vorraus


    zudem habe ich keine errors und warnings

  • Nach diesem Code ist pID und clickedid IMMER 0, da pID keinen Wert zugewiesen wird.
    Also was du sagst und was dein Code sagt widerspricht sich. Ich glaube dem Code und sage, du wirst immer zu ID 0 teleportiert.


    Wenn, dann sollte es so sein:
    pID = clickedid;

  • ja die clickedid wird ja aus dem public OnPlayerClickPlayer(playerid, clickedplayerid, source)
    {
    if(sInfo[playerid][alevel]==0)return 1;
    new name[MAX_PLAYER_NAME];
    GetPlayerName(playerid,name,sizeof(name));
    ShowPlayerDialog(playerid,DIALOG_CLICK_FROM_ADMIN,DIALOG_STYLE_LIST,name,"Goto\nGethere\nKick\nBan\nHealth","OK","Abbrechen");
    clickedid = clickedplayerid;
    return 1;
    }


    genommen und gespeichert wenn das dann funktioniert?

  • Oben


    Bei deinem new clickedid
    "new clickedid zu new clickedid[MAX_PLAYERS];"


    //Bei OnPlayerClickPlayer
    dann "clickedid = clickedplayerid;" zu clickedid[playerid] = clickedplayerid;


    und bei deinem Teleport dialog


    "pID = clickedid";


    zu


    "pID = clickedid[playerid]";



    Hoffe Jeffry hat nichts dagegen ;(


    Ps. Gehe noch lernen. Bis Morgen ;)

  • Beitrag von ChristianW ()

    Dieser Beitrag wurde gelöscht, Informationen über den Löschvorgang sind nicht verfügbar.