Zaloguj się by uzyskać pełen dostęp. Nie masz jeszcze konta? Założ je już teraz w kilka sekund.
GTAONLINE.PL
Tematy otagowane jako: dialog
1. [INCLUDE] Advanced Dialog Pages b
[color=orange]Witajcie. Chcia?bym Wam przedstawi? napisan? przeze mnie bibliotek?, kt?ra umo?liwia utworzenie stron w dialogach. Pracuj?c w SA-MP na pewno wielu z Was zderzy?o si? z limitami. Jednym z limit?w jest maksymalna ilo?? znak?w w jednym dialogu. Jest to dosy? oczywiste - w ka?dym j?zyku programistycznym lub oprogramowaniu wyst?puj? limity. Stworzenie stron w dialogach dla SA-MP sta?o si? bardzo wygodne na wielu popularnych serwerach. Jako i? na forum znajdowa?y si? ju? podobne biblioteki, niestety nie w pe?ni by?y funkcjonalne - a to z powodu braku pomys?u na kalkulacje stron dla dialog?w. Postanowi?em zakodzi? w?asn? bibliotek? ze stronami w dialogach podczas, gdy tworzy?em sw?j w?asny projekt. By?o to dla mnie naprawd? bardzo wa?ne, poniewa? chcia?em zmie?ci? wiele rzeczy w dialogu, a limit mi na to nie pozwala?.
Przejd?my do sedna sprawy. Biblioteka zosta?a napisana ju? dawno temu, umiejscowiona zosta?a na moim githubie. [/color]
Dzia?anie jej jest bardzo proste, poniewa? jedyne co musimy wykona? to podpi?? [color=green]bibliotek? pod sw?j skrypt lub map? oraz doda? dialog.[/color]

Stylizowanie przycisk?w w dialogu/zmiana nazw - to wszystko konfigurujesz ty!
[i]> Pami?taj o tym, ?e ta biblioteka wymaga YSI wydanych od Y_Lessa. Wszystko znajdziesz na moim githubie.
[/i]
Gdy podpi??e? moj? bibliotek? do twojego skryptu lub mapy przyst?p do stworzenia dialogu ze stronami. Mo?esz stworzy? go za pomoc? linijki i kilku parametr?w.
[pawn]
ShowPlayerDialogPa...
2. Pobieranie z MySQL do dialog
Cze??, ubolewam si? z pobieraniem informacji z bazy danych.
Ot?? chcia?bym pobra? sobie z bazy list? os?b, kt?rzy s? w tabeli.
Wszystko ?adnie pi?knie, ale gdy robi? tak:
Pawn
if(listitem == 0)
            {
                new 
index 0;
                
format(query256"SELECT * FROM pomoc_drogowa");
                
mysql_query(query);
                
mysql_store_result();
                while(
mysql_fetch_row(query"|"))
                {
                    
sscanf(query"p<|>ds[24]s[50]ddd",
                        
PomocDrogowa[index][dUID],
                        
PomocDrogowa[index][dNick],
                        
PomocDrogowa[index][dRanga],
                        
PomocDrogowa[index][dSkin],
                        
PomocDrogowa[index][dWyplata],
                        
PomocDrogowa[index][dSzef]);
                    
format(strsizeof(str), "%sn"PomocDrogowa[index][dNick]);
                }
                
mysql_free_result();
                
ShowPlayerDialog(playeridD_MENU_LISTADIALOG_STYLE_LIST"Lista pracownikow [PD]"str"Edytuj""Anuluj");
            }

To nie do?? ?e dialog otworz? tylko raz i p??niej za Chiny go nie otworz?,
dopiero po restarcie serwera, to jeszcze wczytuje si? tylko jedna osoba,
kt?ra jest ostatnia w tabeli (ma najwi?ksze UID).

Ma ktos jakis pomys? jak mo?na to zrobi? ?
3. Pobieranie danych z tabeli (mysql) i wklejanie ich do dialog
Witam chcialbym sie zapyta? w jaki spos?b zrobic aby pobiera? dane z mysql(w moim wypadku towary, ich id, dostepnosc i takie tam) i wkleic je do dialogu?
Dziekuje za wszystkie odpowiedzi.
4. Dialog nie działa
Witam, dlaczego ten dialog nie dzia?a ?? Pr?bowa?em, kombinowa?em ale nie chce dzia?a?
[pawn]
//GORA SKRYPTU
#define D_SALONPRIV 17
#define D_SALONPRIVSPORTOWE 198
#define D_SALONPRIVSALONOWE 199
#define D_PRIVPANELPOJAZDY 200

[/pawn]
[pawn]
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
if(dialogid == D_SALONPRIV)
{
if(response == 1)
{
switch(listitem)
{
case 0:
{
new PrivcarydialogS[][] =
{
"NazwatPredkosctCenan",
"Infernust246km/ht180000$n",
"Phoenixt190km/ht85000$n",
"ZR-350t207km/ht98500$n",
"Buffalot207km/ht95500$n",
"Sultant188km/ht72325$n",
"Cheetaht214km/ht130412$n"
};
new longstrings[1500];
for(new d; d < sizeof PrivcarydialogS; d++) strcat(longstrings, PrivcarydialogS[d][0]);
ShowPlayerDialog(playerid, D_SALONPRIVSPORTOWE, DIALOG_STYLE_TABLIST_HEADERS, "{96ff91}Salon Prywatnych Pojazdow", longstrings, "Kup!", "Wyjdz");
}
case 1:
{
new PrivcarydialogSA[][] =
{
"NazwatPredkosctCenan",
"Flasht183km/ht65000$n",
"Elegt193km/ht70000$n",
"Stratumt171km/ht72450$n"
};
new longstringsa[1500];
for(new i; i < sizeof PrivcarydialogSA; i++) strcat(longstringsa, PrivcarydialogSA[i][0]);
ShowPlayerDialog...
5. Dialog logowania
Witam, w jaki spos?b mog? zrobi?, aby po wpisaniu has?a do Dialogu, serwer sprawdza?, czy wpisane has?o jest zgodne z baz? danych, czy wgl co? wpisa??

Prosz? o pomoc.

:piwo: :piwo:
6. [INNE] Salon Samochodowy Dialog
Witam Chcia?bym doda? wi?cej dialog?w miejsc na pojazdy bo mam dwie linijki ale chce doda? wi?cej:

kod:


http://pastebin.com/FKaX3KvS




:piwo: :look:
7. [INNE] Dialog Gui
Witam mam problem , wi?c chce doda? do tego kodu ?eby zabiera?o 3000$ i jak kto? nie ma tyle pieni?dzy to ?eby pisa?o nie masz pieni?dzy!


kod:

http://pastebin.com/GutBn9cj




Dzi?ki , :piwo: :roll:
8. [DM] Dialog GUI nie działa?
No wi?c zacz??em pisa? gamemoda 4fun. Chcia?em doda? system rejestracji y_ini z poradnika i tu nast?pi? problem.

Oto kod:

Kod:


else if(dialogid == 2)
{

if ( !response ) return Kick ( playerid );
if( response )
{
if(udb_hash(inputtext) == PlayerInfo[playerid][pPass])
{
INI_ParseFile(UserPath(playerid), "LoadUser_%s", .bExtra = true, .extra = playerid);
SendClientMessage(playerid, COLOR_WHITE , "* Zalogowano");
Zalogowany[playerid] = 1;
}
else
{
ShowPlayerDialog(playerid, 2, DIALOG_STYLE_PASSWORD, ""C_WHITE"* Logowanie","Zaloguj si?", "Login", "Cancel");
}
}

}


Ot?? Dialog "ShowPlayerDialog(playerid, 2, DIALOG_STYLE_PASSWORD, blabla..." z jakiego? dziwnego powodu po prostu nie dzia?a. Oboj?tnie co wpisz? i klikn?, zamyka si? on w og?le nie wywo?uj?c publica OnDialogResponse.

Dodam, ?e ka?dy inny dialog gui dzia?a prawid?owo. Jedynie z tym jest problem.

Czy kto? wie co tu jest grane? :shock:
9. [INNE] jak zrobic te nowy Dialog ktora dodali w 0.3x
siema,

widzialem gdzies taki nowoczesny dialog ktory chyba dodali dopiero w 0.3x dam wam screena moglby mi ktos powiedziec jak cos podobnego zrobic ??



za pomoc piwko + respekt
10. [INNE] Dialog
Witam.

Mam kod:
Kod:

case 0:
{
if(!response) return 1;

new i = pHouse[playerid];

GivePlayerMoney(playerid, floatround(HouseInfo[i][hCost] * 0.75));
format(HouseInfo[i][hOwner], 40, "#");
format(HouseInfo[i][hName], 40, "Dom na sprzeda?");

format(strx, sizeof strx, "UPDATE `house` SET `owner` = '#', `name` = 'Dom na sprzeda?!', `time` = '0' WHERE `id` = '%d'", HouseInfo[i][hID]);
mysql_query(strx);
format(strx, sizeof strx, "* {00AAFF}Dom na sprzeda?!{FFFFFF} *nn{FFAA00}Cena: %dnID: %d", HouseInfo[i][hCost], i);
Update3DTextLabelText(HouseInfo[i][hLabel], -1, strx);

pHouse[playerid] = -1;
ExitHousePlayer(playerid, i);
InfoBox(playerid, "{FFFFFF}Dom zosta? sprzedany!");
return 1;
}

I trzeba co? zmieni? tam gdzie jest case 0: bo to jest kod z innej mapki a ja chce do swojej i mam takie b??dy:


Cytat:

warning 217: loose indentation
error 014: invalid statement; not in switch
warning 215: expression has no effect
error 001: expected token: ";", but found ":"
error 029: invalid expression, assumed zero
fatal error 107: too many error messages on one line


Licz? na pomoc.
11. [INNE] Dialog w liście.
Cze??,

mo?ecie da? mi przyk?ad odpowiedzi na DIALOG_STYLE_LIST.
Chodzi mi o OnDialogResponse bo mi to nie wychodzi.

M?j kod :

Kod:

if(dialogid == 10)
{
if(response == 1)
{
switch(listitem)
{
case 0:

ShowPlayerDialog(playerid, 11, DIALOG_STYLE_LIST,""servname" - Produkty Budowlane" "DrewnonCeg?ynBetonnCementnReszta Wkr?tce", "Wybierz","Anuluj");

case 1:
{
ShowPlayerDialog(playerid, 12, DIALOG_STYLE_LIST,""servname" - Produkty Gastronomiczne", "BananynJab?kanPomara?czenMas?oMlekonReszta Wkr?tce","Wybierz","Anuluj");
}
case 2:
{
if(PlayerInfo[playerid][pVip] != 1) return SCM(playerid, CZERWONY, " Nie jeste? Vipem");
ShowPlayerDialog(playerid, 13, DIALOG_STYLE_LIST,""servname" - Dla Vip?w", "MarihuananLodynKrowy","Wybierz","Anuluj");
}
}
}
}
12. [DM] Dialog
Witam!

Zrobi?em dialog: wybieranie broni na spawnie gracza.
Chcia?bym ?eby ten dialog pokazywa? si? tylko raz
na spawnie po wej?ciu na serwer a pokazuje si? na okr?g?o.

Prosz? o pomoc
stawiam :piwo:
13. [GF] Dialog
Cze?? zrobi?em taki kod ,ale chcia?bym dorobi? komend? do tego a dok?adniej :

informacj? OKIENKA:
Kod:

ShowPlayerDialog(playerid, 0, DIALOG_STYLE_MSGBOX, "Dynamiczny", "System obiektown/downobj - Obiekt leci w d??n1/upobj - Obiekt leci w g?re.n2/inxobj - Obiekt rusza si? w praw? strone.n3/inxobj2 - Obiekt rusza si? w lewa strone.n4/ /inyobj - Obiekt rusza si? do przodun.n5/ /inyobj2 - Obiekt rusza si? do ty?u.n6/ /tp-toobj - Teleport do obiektu.n7/destroyobj - Usun obiekt./nn", "Ok");


A
Kod:

if(strcmp(cmdtext, "/aobiekt", true) == 0 && IsPlayerAdmin(playerid)) {


Mog? normalnie po??czy? ? Chyba ,?e kto? ma inny / lepszy pomys? jak to zrobi? b?dzie nagroda.
14. [DM] Dialog Style Password
Kod:

C:UsersVaazDesktopStreetgamemodesPSS.pwn(2761) : error 017: undefined symbol "DIALOG_STYLE_PASSWORD"



Chcia?em sobie zmieni? rejestracje ?eby nie by?o wida? has?a i mam takie co?
Trzeba jakie? nowe include ? Jak tak to jak mo?ecie to dajcie linka z g?ry dzi?ki