Szerző Téma: Dialogba írt szöveg megjelenítése textdrawként!  (Megtekintve 1078 alkalommal)

Dialogba írt szöveg megjelenítése textdrawként!
« Dátum: 2014. június 19. - 20:57:22 »
0 Show voters
Sziasztok!
Azt szeretném megoldani hogy pl OnPlayerSpawnnál bejönne egy dialog és abba lehetne írni szöveget ha meg rámegyek pl a tovább gombra akkor amit a dialogba írtam szöveget azt megjeleníteni textdraw formában valahol a képernyõn.
Levezetés:
Bejön egy dialog ha lespawnol a játékos-->Belelehet írni egy szöveget-->Rámegyünk a tovább gombra-->Amit beírtunk szöveget azt megjeleníti a szerver textdraw formába a képernyõn valahol.
Próbáltam érthetõ lenni remélem értitek :D
Elõre is köszönöm a segítséget! :)
Szerkesztetem a kérdésemet mer rosszul írtam le azt amit szerettem volna kéri!
Elnézéseteket kérem!
« Utoljára szerkesztve: 2014. június 20. - 19:28:05 írta Jim Toretto »

Nem elérhető Dfoglalo

  • 4069
  • Globális Moderátor
    • Profil megtekintése
Dialogba írt szöveg megjelenítése textdrawként!
« Válasz #1 Dátum: 2014. június 20. - 10:45:47 »
0 Show voters
Ezt keresed:
 
PlayerTextDrawTextSize
SelectTextDraw
CancelSelectTextDraw
PlayerTextDrawTextSize
TextDrawSetString

Dialogba írt szöveg megjelenítése textdrawként!
« Válasz #2 Dátum: 2014. június 20. - 12:58:19 »
0 Show voters
Ezzel nem adtál választ a kérdésemre :(

Nem elérhető Wes

  • 335
    • Profil megtekintése
Dialogba írt szöveg megjelenítése textdrawként!
« Válasz #3 Dátum: 2014. június 20. - 17:24:05 »
0 Show voters
Dehogynem, te azt kérdezted hogyan lehetne megoldani, ezek függvény használatával lehet megoldani a problémád.

Dialogba írt szöveg megjelenítése textdrawként!
« Válasz #4 Dátum: 2014. június 20. - 18:21:03 »
0 Show voters
Egy példa scriptet kérhetek ? :D
Mer ezekbõl nem tudtam összetenni :(

Dupla hozzászólás automatikusan összefûzve. ( 2014. június 20. - 19:14:46 )

Am rosszúl fogalmaztam  :wall:
Úgy akarom ha egy szöveget dialogba beleírok és pl rámegyek hogy tovább akkor amit oda beírtam szöveget azt textdrawként jelenítse meg a képernyõn valahol.
« Utoljára szerkesztve: 2014. június 20. - 19:14:46 írta Jim Toretto »

Nem elérhető KovaNovik

  • 1121
  • KovaNovik
    • Profil megtekintése
Dialogba írt szöveg megjelenítése textdrawként!
« Válasz #5 Dátum: 2014. június 20. - 20:12:33 »
0 Show voters
OnDialogResponse eljárásnál az inputtextre állítsd a textdrawod értékét.
TextDrawSetString(TextDrawod, inputtext);

Nem elérhető BackUP

  • 908
    • Profil megtekintése
Dialogba írt szöveg megjelenítése textdrawként!
« Válasz #6 Dátum: 2014. június 20. - 20:27:20 »
0 Show voters
PMbe kérted, itt van:
 
#include <a_samp>
#invlude <fixchars>
new PlayerText:kiiras[MAX_PLAYERS];
#define dialog 555 // csak hogy a módban semmivel se ütközzön.
#define aaaaf ShowPlayerDialog(playerid, dialog, DIALOG_STYLE_INPUT, \"Szöveg\",\"Írj be valami finomságot, amita képernyõ allján látni akarsz!\",\"Választ\",\"\") // ide írtam neked, hogyha át szeretnéd írni, csak egy helyen kell!
#define aaaafHIBA ShowPlayerDialog(playerid, dialog, DIALOG_STYLE_INPUT, \"Szöveg\",\"Muszáj beírnod, enélkül nem mehetsz tovább! (max 128 karakter)\",\"Választ\",\"\") // ez ugyanaz, csak akkor adja elõ ha elgépelt valamit
public OnFilterScriptInit() { return 1; }
public OnFilterScriptExit() { return 1; }
public OnPlayerSpawn(playerid)
{
    aaaaf;
    kiiras[playerid] = CreatePlayerTextDraw(playerid, 260.000000, 433.000000, \" \");
PlayerTextDrawBackgroundColor(playerid, kiiras[playerid], 255);
PlayerTextDrawFont(playerid, kiiras[playerid], 3);
PlayerTextDrawLetterSize(playerid, kiiras[playerid], 0.509999, 1.200000);
PlayerTextDrawColor(playerid, kiiras[playerid], -1);
PlayerTextDrawSetOutline(playerid, kiiras[playerid], 0);
PlayerTextDrawSetProportional(playerid, kiiras[playerid], 1);
PlayerTextDrawSetShadow(playerid, kiiras[playerid], 2);
PlayerTextDrawShow(playerid, kiiras[playerid]);
return 1;
}
public OnPlayerDeath(playerid) { PlayerTextDrawHide(playerid, kiiras[playerid]); return 1; }
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
switch(dialogid)
{
    case dialog:
    {
        if(!response) return aaaafHIBA;
        if(response)
        {
            if(!strlen(inputtext)) return aaaafHIBA;
      new str[128];
      format(str, sizeof(str), \"%s\", inputtext);
      PlayerTextDrawSetString(playerid, kiiras[playerid], str);
      PlayerTextDrawShow(playerid, kiiras[playerid]);
        }
    }
}
return 1;
}

 
Teszteltem, mûködik. Hogyha a fixchars-t kiveszed akkor nem lehet ékezetet írni. (a fórumon megtalálod azt az incet)

Dialogba írt szöveg megjelenítése textdrawként!
« Válasz #7 Dátum: 2014. június 21. - 08:23:54 »
0 Show voters
És pont ahogy szerettem volna :D
Köszönöm BackUP! :)

Dialogba írt szöveg megjelenítése textdrawként!
« Válasz #8 Dátum: 2014. június 23. - 11:39:54 »
0 Show voters
Próbáltam a módba tenni és ezt írja ki:
 
error 036: empty statement

 
OnPlayerClickTextdrawhoz tettem így nézki:
Mód elején ez:
#define aaaaf ShowPlayerDialog(playerid,1,DIALOG_STYLE_PASSWORD,\"{00A5FF}Bejelentkezés\",\"{FFFFFF}Köszöntelek a szerveren!\\nTe már regisztrálva vagy!\\nKérlek írd be a jelszavad a belépéshez!\",\"Belépek\",\"\");

 

public OnPlayerClickTextDraw(playerid, Text:clickedid)
{
        if(_:clickedid != 65535)
        {
                if(clickedid == Belepes5)//mmmmmmmmmmBEJELENTKEZÉSmmmmmmm
                {
                              aaaaf;
             kiiras[playerid] = CreatePlayerTextDraw(playerid, 260.000000, 433.000000, \" \");
              PlayerTextDrawBackgroundColor(playerid, kiiras[playerid], 255);
              PlayerTextDrawFont(playerid, kiiras[playerid], 3);
              PlayerTextDrawLetterSize(playerid, kiiras[playerid], 0.509999, 1.200000);
              PlayerTextDrawColor(playerid, kiiras[playerid], -1);
              PlayerTextDrawSetOutline(playerid, kiiras[playerid], 0);
              PlayerTextDrawSetProportional(playerid, kiiras[playerid], 1);
              PlayerTextDrawSetShadow(playerid, kiiras[playerid], 2);
              PlayerTextDrawShow(playerid, kiiras[playerid]);
                                TextDrawHideForPlayer(playerid, Belepes5);
                              TextDrawShowForPlayer(playerid, Belepes7);
                              return 1;
                }
                return 1;
        }
        return 0;
}

 
A hibát a 7. sorba találta.
aaaafHIBA cuccot azért nem tettem be mert a belépés eleve úgy van megcsinálva hogy kénytelen beírni valamit. De mégis mi az amit elrontottam ? :(

Nem elérhető BackUP

  • 908
    • Profil megtekintése
Dialogba írt szöveg megjelenítése textdrawként!
« Válasz #9 Dátum: 2014. június 23. - 13:46:15 »
0 Show voters
Amikor a definiálod az \'aaaaf\'-t, akkor fent a mód tetején a kék szöveg mögött töröld ki a pontosvesszõt[;]. Mert amikor használod, így fordítja le:
 
ShowPlayerDialog(playerid,1,DIALOG_STYLE_PASSWORD,\"{00A5FF}Bejelentkezés\",\"{FFFFFF}Köszöntelek a szerveren!\\nTe már regisztrálva vagy!\\nKérlek írd be a jelszavad a belépéshez!\",\"Belépek\",\"\");;

Dialogba írt szöveg megjelenítése textdrawként!
« Válasz #10 Dátum: 2014. június 23. - 15:31:01 »
0 Show voters
És valóba :D
Thx :)

 

SimplePortal 2.3.7 © 2008-2024, SimplePortal