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